Commit 6e6221d8 by ping.wu

Merge branches 'feature/20211112_1元捐插件_wuping' and 'master' of…

Merge branches 'feature/20211112_1元捐插件_wuping' and 'master' of http://gitlab.freemud.com/order-group-application/order-group

# Conflicts:
#	order-application-service/src/main/java/cn/freemud/adapter/OrderAdapter.java
#	order-application-service/src/main/java/cn/freemud/controller/OrderController.java
parents c9b9a18c a8eb24ea
......@@ -131,7 +131,7 @@
<dependency>
<artifactId>assortment-data-manager</artifactId>
<groupId>com.freemud.sdk.api.assortment</groupId>
<version>5.5.27-RELEASE</version>
<version>5.5.31-RELEASE</version>
</dependency>
<dependency>
<groupId>cn.freemud.commons</groupId>
......
......@@ -23,6 +23,9 @@ import cn.freemud.entities.dto.order.CreateOrderAccountDto;
import cn.freemud.entities.dto.order.CreateOrderProductDto;
import cn.freemud.entities.dto.order.*;
import cn.freemud.entities.dto.pay.*;
import cn.freemud.entities.dto.pay.CombPayResponse;
import cn.freemud.entities.dto.pay.OrderPayResponse;
import cn.freemud.entities.dto.pay.UnifiedOrderCom;
import cn.freemud.entities.dto.promotion.OrderBeanRequest;
import cn.freemud.entities.dto.promotion.ShoppingCartGoodsResponse;
import cn.freemud.entities.dto.shoppingCart.ActivityDiscountsDto;
......@@ -3251,13 +3254,21 @@ public class OrderAdapter {
}
public UnifiedOrderRequest convent2UnifiedOrderRequest(OrderBeanV1 orderBean, PaymentRequest paymentRequest, Long amount, Integer cardAmount, String transId) {
return convent2UnifiedOrderRequest(orderBean, paymentRequest, amount, cardAmount, transId, null);
return convent2UnifiedOrderRequest(new UnifiedOrderCom(orderBean, paymentRequest, amount, cardAmount, transId, null));
}
/**
* 支付信息转换
*/
public UnifiedOrderRequest convent2UnifiedOrderRequest(OrderBeanV1 orderBean, PaymentRequest paymentRequest, Long amount, Integer cardAmount, String transId, String partnerPayOvertime) {
public UnifiedOrderRequest convent2UnifiedOrderRequest(UnifiedOrderCom com) {
OrderBeanV1 orderBean = com.getOrderBean();
PaymentRequest paymentRequest =com.getPaymentRequest();
Long amount = com.getAmount();
Integer cardAmount = com.getCardAmount();
String transId =com.getTransId();
String partnerPayOvertime = com.getPartnerPayOvertime();
UnifiedOrderRequest orderPayDto = new UnifiedOrderRequest();
orderPayDto.setPartnerId(orderBean.getCompanyId());
orderPayDto.setBody(paymentRequest.getPrincipalName());
......@@ -3265,7 +3276,7 @@ public class OrderAdapter {
orderPayDto.setStoreId(orderBean.getShopId());
orderPayDto.setTransId(transId);
orderPayDto.setOpenId(paymentRequest.getOpenId());
String businessDate = com.freemud.application.sdk.api.util.DateUtil.convert2String(new Date(), "yyyyMMdd");
String businessDate = DateUtil.convert2String(new Date(), "yyyyMMdd");
orderPayDto.setBusinessDate(businessDate);
orderPayDto.setAmount(amount);
orderPayDto.setUndisAmount(1L);
......@@ -3340,7 +3351,7 @@ public class OrderAdapter {
*
* @return
*/
private String getFoodOrderType(Integer orderType) {
public String getFoodOrderType(Integer orderType) {
//1=外卖 4=自提,5=堂食
//qr_order(店内扫码点餐),pre_order(预点到店自提),home_delivery (外送到家)
String foodOrderType;
......@@ -3401,6 +3412,7 @@ public class OrderAdapter {
orderInfo.setOrder_token(orderPayResponse.getThirdOrderToken());
createOrderResponseVo.setOrderInfo(orderInfo);
}
createOrderResponseVo.setOutTradeNo(orderPayResponse.getEndTransId());
return createOrderResponseVo;
}
......
......@@ -3,7 +3,7 @@ package cn.freemud.adapter;
import cn.freemud.base.util.DateUtil;
import cn.freemud.entities.Active;
import cn.freemud.entities.dto.delivery.WeixinDeliveryAddressDto;
import cn.freemud.entities.dto.order.FacePayResponseDto;
import cn.freemud.entities.dto.order.UnifiedPayResponseDto;
import cn.freemud.entities.dto.pay.PayOrderDto;
import cn.freemud.entities.dto.pay.PayProductDto;
import cn.freemud.entities.dto.pay.UnifiedOrderRequestDto;
......@@ -296,7 +296,7 @@ public class PointsMallOrderAdapter {
return userScoreRequest;
}
public void convent2CreateOrderResponseVo(CreateOrderResponseVo createOrderResponseVo, String appId, FacePayResponseDto response){
public void convent2CreateOrderResponseVo(CreateOrderResponseVo createOrderResponseVo, String appId, UnifiedPayResponseDto response){
createOrderResponseVo.setWxappId(appId);
createOrderResponseVo.setFmId(response.getFmId());
createOrderResponseVo.setPaySuccess(false);
......
......@@ -24,6 +24,7 @@ import cn.freemud.entities.vo.order.CreateCashierOrderVo;
import cn.freemud.entities.vo.order.CreateOrderInvoiceRequest;
import cn.freemud.entities.vo.order.OrderAppealVo;
import cn.freemud.entities.vo.order.GetInvoiceConfigRequest;
import cn.freemud.entities.vo.order.PaymentConfigVo;
import cn.freemud.handler.OrderReportJobHandler;
import cn.freemud.monitorcenter.tools.HealthUtil;
import cn.freemud.service.*;
......@@ -494,5 +495,17 @@ public class OrderController {
return orderservice.queryInvoiceConfig(request);
}
/**
* 一元捐插件获取支付配置
* @param createOrderVo
* @return
*/
@ApiAnnotation(logMessage = "paymentConfig")
@PostMapping("/paymentConfig")
public BaseResponse paymentConfig(@Validated @LogParams @RequestBody PaymentConfigVo createOrderVo) {
return orderAdapterService.getPaymentConfig(createOrderVo);
}
}
......@@ -71,4 +71,5 @@ public class CreatePrepayRequestDto {
private String channel;
private String sessionId;
}
......@@ -8,7 +8,7 @@ import java.util.List;
* All rights Reserved, Designed By www.freemud.cn
*
* @version V1.0
* @Title: FacePayResponseDto
* @Title: UnifiedPayResponseDto
* @Package cn.freemud.entities.dto.order
* @Description:
* @author: ping1.wu
......
......@@ -6,7 +6,7 @@ import lombok.Data;
* All rights Reserved, Designed By www.freemud.cn
*
* @version V1.0
* @Title: FacePayResponseDto
* @Title: UnifiedPayResponseDto
* @Package cn.freemud.entities.dto.order
* @Description:
* @author: ping1.wu
......@@ -15,7 +15,7 @@ import lombok.Data;
* 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目
*/
@Data
public class FacePayResponseDto {
public class UnifiedPayResponseDto {
private Integer resultCode;
private String resultMsg;
......@@ -34,4 +34,6 @@ public class FacePayResponseDto {
// private String payCode;
private String payOrder;
private String endTransId;
}
......@@ -61,6 +61,9 @@ public class CombPayResponse {
@ApiModelProperty(value = "间联单号")
private String transId;
//商户单号
private String endTransTradeNo;
//储值卡类型:0一次性卡(礼品卡),3重复使用卡(储值卡)")
private Integer cardType;
......
......@@ -89,6 +89,9 @@ public class OrderPayResponse {
*/
private String thirdOrderToken;
//商户订单号
private String endTransId;
@NoArgsConstructor
@Data
public static class PayOrderBean {
......
......@@ -15,8 +15,6 @@ public class PayOrderDto {
private String nonceStr;
private String sign;
private String timestamp;
private String signType;
......
package cn.freemud.entities.dto.pay;
import com.freemud.application.sdk.api.ordercenter.entities.v1.OrderBeanV1;
import com.freemud.application.sdk.api.ordercenter.response.orderInfo.OrderInfoReqs;
import com.freemud.sdk.api.assortment.order.request.order.PaymentRequest;
import lombok.Data;
@Data
public class UnifiedOrderCom {
private OrderInfoReqs orderInfo;
private String openId;
private Integer cashPrice;
private Long clientCode;
private String payTimeOutTime;
private OrderBeanV1 orderBean;
private PaymentRequest paymentRequest;
private Long amount;
private Integer cardAmount;
private String transId;
private String partnerPayOvertime;
public UnifiedOrderCom() {
}
public UnifiedOrderCom(OrderBeanV1 orderBean, PaymentRequest paymentRequest, Long amount, Integer cardAmount, String transId, String partnerPayOvertime) {
this.orderBean = orderBean;
this.paymentRequest = paymentRequest;
this.amount = amount;
this.cardAmount = cardAmount;
this.transId = transId;
this.partnerPayOvertime = partnerPayOvertime;
}
}
......@@ -13,6 +13,7 @@
package cn.freemud.entities.vo;
import cn.freemud.entities.ttpay.OrderInfo;
import cn.freemud.entities.vo.order.PlugInParameter;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
......@@ -68,4 +69,7 @@ public class CreateOrderResponseVo {
*/
private OrderInfo orderInfo;
//一元捐插件新增
private String outTradeNo;
}
......@@ -496,4 +496,5 @@ public class CreateOrderVo {
* 收货名姓名
*/
private String contactsName;
}
package cn.freemud.entities.vo.order;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotEmpty;
@Data
public class PaymentConfigVo {
@ApiModelProperty("会话Id")
@NotEmpty(message = "会话Id不能为空")
private String sessionId;
@ApiModelProperty("商户号")
@NotEmpty(message = "商户号不能为空")
private String partnerId;
}
package cn.freemud.entities.vo.order;
import lombok.Data;
@Data
public class PlugInParameter {
private String mchCode;
private String subMchCode;
}
......@@ -23,7 +23,7 @@ import cn.freemud.entities.dto.delivery.DeliveryBaseResponse;
import cn.freemud.entities.dto.delivery.GetDeliveryFlagRequest;
import cn.freemud.entities.dto.delivery.GetDeliveryFlagResponseDto;
import cn.freemud.entities.dto.order.BusinessDate;
import cn.freemud.entities.dto.order.FacePayResponseDto;
import cn.freemud.entities.dto.order.UnifiedPayResponseDto;
import cn.freemud.entities.dto.pay.PayOrderDto;
import cn.freemud.entities.dto.pay.PayProductDto;
import cn.freemud.entities.dto.pay.UnifiedOrderRequestDto;
......@@ -33,11 +33,7 @@ import cn.freemud.entities.dto.store.*;
import cn.freemud.entities.dto.user.CustomerPropertyBaseResponse;
import cn.freemud.entities.dto.user.GetSvcInfoByMemberIdResponseVo;
import cn.freemud.entities.dto.user.StatisticalScoreRequestVo;
import cn.freemud.entities.vo.CreateOrderResponseVo;
import cn.freemud.entities.vo.CreateOrderVo;
import cn.freemud.entities.vo.GetMemberCouponRequestVo;
import cn.freemud.entities.vo.SellCouponCreateOrderVo;
import cn.freemud.entities.vo.ShoppingCartInfoRequestVo;
import cn.freemud.entities.vo.*;
import cn.freemud.enums.*;
import cn.freemud.interceptor.ServiceException;
import cn.freemud.manager.StoreTableNumberManager;
......@@ -1438,7 +1434,7 @@ public class CheckOrder {
return foodOrderType;
}
public void convent2CreateOrderResponseVo(CreateOrderResponseVo createOrderResponseVo, String appId, FacePayResponseDto response){
public void convent2CreateOrderResponseVo(CreateOrderResponseVo createOrderResponseVo, String appId, UnifiedPayResponseDto response){
createOrderResponseVo.setWxappId(appId);
createOrderResponseVo.setFmId(response.getFmId());
createOrderResponseVo.setPaySuccess(false);
......
......@@ -7,6 +7,8 @@ import cn.freemud.constant.RedisLockKey;
import cn.freemud.entities.dto.ConfirmOrderDto;
import cn.freemud.entities.dto.order.CreateCashierOrderDto;
import cn.freemud.entities.vo.*;
import cn.freemud.entities.vo.order.PaymentConfigVo;
import cn.freemud.entities.vo.order.PlugInParameter;
import cn.freemud.enums.*;
import cn.freemud.interceptor.ServiceException;
import cn.freemud.management.service.handle.SaasOrderHandle;
......@@ -94,7 +96,7 @@ public class OrderAdapterServiceImpl {
@Autowired
private MCCafeOrderService mcCafeOrderService;
private UniversalOrderService universalOrderService;
// private UniversalOrderService universalOrderService;
@Autowired
private CreateOrderServiceFactory createOrderServiceFactory;
@Autowired
......@@ -129,6 +131,8 @@ public class OrderAdapterServiceImpl {
private ApolloVariableConfig apolloVariable;
@Autowired
private CashierOrderService cashierOrderService;
@Autowired
private PayServiceImpl payService;
//获取下单实现对象
private OrderFactoryService getCreateOrderBean(AssortmentCustomerInfoVo assortmentCustomerInfoVo,CreateOrderVo createOrderVo){
......@@ -364,4 +368,16 @@ public class OrderAdapterServiceImpl {
return ResponseUtil.error(ResponseResult.PARAMETER_MISSING);
}
public BaseResponse<PlugInParameter> getPaymentConfig(PaymentConfigVo createOrderVo){
AssortmentCustomerInfoVo assortmentCustomerInfoVo = assortmentCustomerInfoManager.getCustomerInfoByObject(createOrderVo.getSessionId());
if (assortmentCustomerInfoVo == null || StringUtils.isEmpty(assortmentCustomerInfoVo.getMemberId())) {
return ResponseUtil.error(ResponseResult.NOT_LOGIN);
}
//1元插件要返回参数
return ResponseUtil.success(payService.getPaymentAuth(createOrderVo.getPartnerId(),assortmentCustomerInfoVo.getWxAppId()));
}
}
......@@ -10,7 +10,7 @@ import cn.freemud.entities.Active;
import cn.freemud.entities.dto.BatchQueryActivityInfoRequestDto;
import cn.freemud.entities.dto.BatchQueryActivityInfoResponseDto;
import cn.freemud.entities.dto.delivery.WeixinDeliveryAddressDto;
import cn.freemud.entities.dto.order.FacePayResponseDto;
import cn.freemud.entities.dto.order.UnifiedPayResponseDto;
import cn.freemud.entities.dto.pay.UnifiedOrderRequestDto;
import cn.freemud.entities.dto.product.pointsmall.*;
import cn.freemud.entities.dto.user.CustomerPropertyBaseResponse;
......@@ -68,7 +68,6 @@ import org.springframework.stereotype.Component;
import java.math.BigDecimal;
import java.util.*;
import java.util.stream.Collectors;
@Component
public class PointsMallOrderServiceImpl implements PointsMallOrderService {
......@@ -199,7 +198,7 @@ public class PointsMallOrderServiceImpl implements PointsMallOrderService {
CreateOrderResponseVo createOrderResponseVo = new CreateOrderResponseVo();
createOrderResponseVo.setOid(orderCode);
//线上现金支付,创建预支付订单,唤起支付
com.freemud.application.sdk.api.base.BaseResponse<FacePayResponseDto> response = null;
com.freemud.application.sdk.api.base.BaseResponse<UnifiedPayResponseDto> response = null;
if (!Objects.equals(ExchangeTypeEnum.TYPE_1.getCode(), exchangeType) && cashPrice != null && cashPrice > 0) {
Long payClientCode = Long.parseLong(wxAppStore.getClientCode());
UnifiedOrderRequestDto requestDto = pointsMallOrderAdapter.convert2UnifiedOrderRequestDto(result, openId, cashPrice,
......
......@@ -12,7 +12,7 @@ import cn.freemud.constant.ResponseCodeConstant;
import cn.freemud.entities.Active;
import cn.freemud.entities.dto.*;
import cn.freemud.entities.dto.order.CreatePrepayRequestDto;
import cn.freemud.entities.dto.order.FacePayResponseDto;
import cn.freemud.entities.dto.order.UnifiedPayResponseDto;
import cn.freemud.entities.dto.pay.OrderPayResponse;
import cn.freemud.entities.dto.pay.PayOrderDto;
import cn.freemud.entities.dto.pay.UnifiedOrderRequestDto;
......@@ -475,7 +475,7 @@ public class SellCouponOrderServiceImpl implements OrderFactoryService {
CreateOrderResponseVo createOrderResponseVo = new CreateOrderResponseVo();
createOrderResponseVo.setOid(orderCode);
//线上现金支付,创建预支付订单,唤起支付
com.freemud.application.sdk.api.base.BaseResponse<FacePayResponseDto> response = null;
com.freemud.application.sdk.api.base.BaseResponse<UnifiedPayResponseDto> response = null;
Long payClientCode = Long.parseLong(wxAppStore.getClientCode());
//实际支付金额
Long cashPrice = createOrderRequest.getSettlementAmount();
......@@ -496,7 +496,7 @@ public class SellCouponOrderServiceImpl implements OrderFactoryService {
return ResponseUtil.success(createOrderResponseVo);
}
public void convent2CreateOrderResponseVo(OrderPayResponse createOrderResponseVo, String appId, FacePayResponseDto response){
public void convent2CreateOrderResponseVo(OrderPayResponse createOrderResponseVo, String appId, UnifiedPayResponseDto response){
createOrderResponseVo.setWxAppid(appId);
createOrderResponseVo.setFmId(response.getFmId());
// createOrderResponseVo.setEndTransId(response.getEndTransId());
......@@ -519,7 +519,7 @@ public class SellCouponOrderServiceImpl implements OrderFactoryService {
}
public void updatExtInfo(FacePayResponseDto response , String appId,CreatePrepayRequestDto createPrepayRequestDto){
public void updatExtInfo(UnifiedPayResponseDto response , String appId,CreatePrepayRequestDto createPrepayRequestDto){
OrderPayResponse createOrderResponseVo = new OrderPayResponse();
convent2CreateOrderResponseVo(createOrderResponseVo, appId,response);
BaseResponse baseEditResponse = payService.updateOrderInfo(createOrderResponseVo, createPrepayRequestDto.getOrderExtInfoDTO(), createPrepayRequestDto.getProductOrderBean(), LogThreadLocal.getTrackingNo());
......
......@@ -3,7 +3,7 @@ package cn.freemud.service.thirdparty;
import cn.freemud.annotations.LogIgnoreFeign;
import cn.freemud.constant.ResponseCodeKeyConstant;
import cn.freemud.entities.dto.order.FacePayRequestDto;
import cn.freemud.entities.dto.order.FacePayResponseDto;
import cn.freemud.entities.dto.order.UnifiedPayResponseDto;
import cn.freemud.entities.dto.order.InvoiceCreateResponse;
import cn.freemud.entities.dto.pay.InvoiceCreateRequest;
import cn.freemud.entities.dto.pay.UnifiedOrderRequestDto;
......@@ -36,7 +36,7 @@ public interface PaymentNewClient {
*/
@LogIgnoreFeign(logMessage="facePay",statusCodeFieldName= ResponseCodeKeyConstant.STATUS_CODE)
@PostMapping("paymentcenter/facePay")
com.freemud.application.sdk.api.base.BaseResponse<FacePayResponseDto> facePay(@RequestBody FacePayRequestDto orderPayDto);
com.freemud.application.sdk.api.base.BaseResponse<UnifiedPayResponseDto> facePay(@RequestBody FacePayRequestDto orderPayDto);
/**
......@@ -44,7 +44,7 @@ public interface PaymentNewClient {
*/
@LogIgnoreFeign(logMessage="unifiedOrder",statusCodeFieldName= ResponseCodeKeyConstant.STATUS_CODE)
@PostMapping("paymentcenter/unifiedOrder")
com.freemud.application.sdk.api.base.BaseResponse<FacePayResponseDto> unifiedOrder(@RequestBody UnifiedOrderRequestDto requestDto);
com.freemud.application.sdk.api.base.BaseResponse<UnifiedPayResponseDto> unifiedOrder(@RequestBody UnifiedOrderRequestDto requestDto);
@LogIgnoreFeign(logMessage="refundQuery")
@PostMapping("paymentcenter/refundQuery")
......@@ -61,7 +61,7 @@ public interface PaymentNewClient {
//线下付,储值卡/礼品卡支付
@LogIgnoreFeign(logMessage="codePay",statusCodeFieldName= ResponseCodeKeyConstant.STATUS_CODE)
@PostMapping("paymentcenter/codePay")
com.freemud.application.sdk.api.base.BaseResponse<FacePayResponseDto> codePay(@RequestBody FacePayRequestDto orderPayDto);
com.freemud.application.sdk.api.base.BaseResponse<UnifiedPayResponseDto> codePay(@RequestBody FacePayRequestDto orderPayDto);
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment