Parcourir la source

fix bug

release_toaliyun_real
lin il y a 4 ans
Parent
révision
4b4572f989
6 fichiers modifiés avec 17 ajouts et 13 suppressions
  1. +6
    -2
      mallinkCApi/src/main/java/com/iformall/controller/WxOrderController.java
  2. +1
    -1
      mallinkService/src/main/java/com/iformall/domain/po/WxBatchOrder.java
  3. +1
    -1
      mallinkService/src/main/java/com/iformall/service/WxOrderService.java
  4. +4
    -4
      mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java
  5. +1
    -1
      mallinkService/src/main/java/com/iformall/service/order/OrderAdapterService.java
  6. +4
    -4
      mallinkService/src/main/java/com/iformall/service/order/impl/batch/BaseBatchOrderAdapterService.java

+ 6
- 2
mallinkCApi/src/main/java/com/iformall/controller/WxOrderController.java Voir le fichier

@@ -152,9 +152,13 @@ public class WxOrderController extends BaseController {
List<PlatPushOrderSaveDto> list = new ArrayList<>(); List<PlatPushOrderSaveDto> list = new ArrayList<>();
PlatPushOrderSaveDto dto = new PlatPushOrderSaveDto(); PlatPushOrderSaveDto dto = new PlatPushOrderSaveDto();
//TODO 从抖音推送的订单中取信息,每个订单里面有extParam,用来放第三方平台匹配的参数信息
/**
* TODO 从抖音推送的订单中取信息,每个订单里面有extParam,用来放第三方平台匹配的参数信息
* 注意,wx_batch_order中要存allExtParam, wx_order,wx_coupon_order中存储每个订单的参数信息,需要自己根据总参数信息进行拆分
*/
list.add(dto); list.add(dto);
return wxOrderService.platPushSaveOrder(false,EnumComposeOrder.ONE_NUMBER_ORDER_BATCH,list,memberId,getPayWay(),getTenantInfo());
String allExtParam = "{}";
return wxOrderService.platPushSaveOrder(false,EnumComposeOrder.ONE_NUMBER_ORDER_BATCH,allExtParam,list,memberId,getPayWay(),getTenantInfo());
} }


+ 1
- 1
mallinkService/src/main/java/com/iformall/domain/po/WxBatchOrder.java Voir le fichier

@@ -43,7 +43,7 @@ public class WxBatchOrder extends TenantEntity {
@io.swagger.annotations.ApiModelProperty(value = "EnumYesOrNo是否抖音poi订单", name = "isTtPoiOrder") @io.swagger.annotations.ApiModelProperty(value = "EnumYesOrNo是否抖音poi订单", name = "isTtPoiOrder")
private Integer isTtPoiOrder; private Integer isTtPoiOrder;
@io.swagger.annotations.ApiModelProperty(value = "额外参数", name = "extParam")
@io.swagger.annotations.ApiModelProperty(value = "额外参数,总参数", name = "extParam")
private String extParam; private String extParam;


@TableField(exist = false) @TableField(exist = false)


+ 1
- 1
mallinkService/src/main/java/com/iformall/service/WxOrderService.java Voir le fichier

@@ -247,7 +247,7 @@ public interface WxOrderService {
ResultData composeSaveOrder(boolean allowUnPayOrder,EnumComposeOrder composeOrderType,List<OrderComposeSaveDto> composeOrderSaveDto,Long cUserId,EnumPayWay payWay,TenantEntity tenantEntity); ResultData composeSaveOrder(boolean allowUnPayOrder,EnumComposeOrder composeOrderType,List<OrderComposeSaveDto> composeOrderSaveDto,Long cUserId,EnumPayWay payWay,TenantEntity tenantEntity);
//平台推送订单,如抖音支付2.0 //平台推送订单,如抖音支付2.0
ResultData platPushSaveOrder(boolean allowUnPayOrder,EnumComposeOrder composeOrderType,List<PlatPushOrderSaveDto> platPushOrderList,Long cUserId,EnumPayWay payWay,TenantEntity tenantEntity);
ResultData platPushSaveOrder(boolean allowUnPayOrder,EnumComposeOrder composeOrderType,String allExtParam,List<PlatPushOrderSaveDto> platPushOrderList,Long cUserId,EnumPayWay payWay,TenantEntity tenantEntity);


void sendInsideOrderPushMsg(TenantEntity tenantEntity,Long composeOrderId); void sendInsideOrderPushMsg(TenantEntity tenantEntity,Long composeOrderId);




+ 4
- 4
mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java Voir le fichier

@@ -2769,7 +2769,7 @@ public class WxOrderServiceImpl implements WxOrderService {
RedisTemplate<String, WxCUserBasicInfo> cUserBasicInfoRedisTemplate; RedisTemplate<String, WxCUserBasicInfo> cUserBasicInfoRedisTemplate;
@Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class}) @Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class})
public WxComposeOrder savePlatPushOrderForCoupon(TenantEntity tenantEntity,boolean allowUnPayOrder,EnumComposeOrder composeOrderType,WxCUserBasicInfo user,List<PlatPushOrderSaveDto> platPushOrderList,EnumPayWay payWay) {
public WxComposeOrder savePlatPushOrderForCoupon(TenantEntity tenantEntity,boolean allowUnPayOrder,EnumComposeOrder composeOrderType,WxCUserBasicInfo user,String allExtParam,List<PlatPushOrderSaveDto> platPushOrderList,EnumPayWay payWay) {
WxOrderServiceImpl proxy = (WxOrderServiceImpl) AopContext.currentProxy(); WxOrderServiceImpl proxy = (WxOrderServiceImpl) AopContext.currentProxy();
// 防止同一用户重复下单,1秒内 // 防止同一用户重复下单,1秒内
String key = new StringBuilder().append("savePlatPushOrder:").append(user.getId()).toString(); String key = new StringBuilder().append("savePlatPushOrder:").append(user.getId()).toString();
@@ -2782,7 +2782,7 @@ public class WxOrderServiceImpl implements WxOrderService {


OrderAdapterService orderAdapterService = orderFactory.getOrderAdapterService(composeOrderType.getCode()); OrderAdapterService orderAdapterService = orderFactory.getOrderAdapterService(composeOrderType.getCode());
//从这里开始,就需要锁住渠道的价格,不能修改 //从这里开始,就需要锁住渠道的价格,不能修改
WxComposeOrder composeOrder = orderAdapterService.createDBMainOrderByPushOrder(tenantEntity,user, platPushOrderList, payWay);
WxComposeOrder composeOrder = orderAdapterService.createDBMainOrderByPushOrder(tenantEntity,user, allExtParam,platPushOrderList, payWay);
Date orderDate = new Date(); Date orderDate = new Date();
WxOrder lastOrder = null; WxOrder lastOrder = null;
for (int i = 0 ; i < platPushOrderList.size(); i ++) { for (int i = 0 ; i < platPushOrderList.size(); i ++) {
@@ -3398,7 +3398,7 @@ public class WxOrderServiceImpl implements WxOrderService {
} }
@Override @Override
public ResultData platPushSaveOrder(boolean allowUnPayOrder,EnumComposeOrder composeOrderType,List<PlatPushOrderSaveDto> platPushOrderList,Long cUserId,EnumPayWay payWay,TenantEntity tenantEntity) {
public ResultData platPushSaveOrder(boolean allowUnPayOrder,EnumComposeOrder composeOrderType,String allExtParam,List<PlatPushOrderSaveDto> platPushOrderList,Long cUserId,EnumPayWay payWay,TenantEntity tenantEntity) {
try { try {
if (null == platPushOrderList || platPushOrderList.size() <= 0 ) { if (null == platPushOrderList || platPushOrderList.size() <= 0 ) {
return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(),"无商品信息"); return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(),"无商品信息");
@@ -3422,7 +3422,7 @@ public class WxOrderServiceImpl implements WxOrderService {
} }
WxOrderServiceImpl proxy = (WxOrderServiceImpl) AopContext.currentProxy(); WxOrderServiceImpl proxy = (WxOrderServiceImpl) AopContext.currentProxy();
try { try {
WxComposeOrder order = proxy.savePlatPushOrderForCoupon(tenantEntity,allowUnPayOrder,composeOrderType,wxCUserBasicInfo, platPushOrderList, payWay);
WxComposeOrder order = proxy.savePlatPushOrderForCoupon(tenantEntity,allowUnPayOrder,composeOrderType,wxCUserBasicInfo, allExtParam,platPushOrderList, payWay);
return new ResultData(order); return new ResultData(order);
} catch (MallinkException e) { } catch (MallinkException e) {
logger.error("saveOrderForCoupon error.",e); logger.error("saveOrderForCoupon error.",e);


+ 1
- 1
mallinkService/src/main/java/com/iformall/service/order/OrderAdapterService.java Voir le fichier

@@ -22,7 +22,7 @@ public interface OrderAdapterService {
WxComposeOrder createDBMainOrder(TenantEntity tenantEntity,WxCUserBasicInfo user,int payment,EnumPayWay payWay); WxComposeOrder createDBMainOrder(TenantEntity tenantEntity,WxCUserBasicInfo user,int payment,EnumPayWay payWay);
//第三方平台推送过来的订单 //第三方平台推送过来的订单
WxComposeOrder createDBMainOrderByPushOrder(TenantEntity tenantEntity,WxCUserBasicInfo user,List<PlatPushOrderSaveDto> platPushOrderList,EnumPayWay payWay);
WxComposeOrder createDBMainOrderByPushOrder(TenantEntity tenantEntity,WxCUserBasicInfo user,String allExtParam,List<PlatPushOrderSaveDto> platPushOrderList,EnumPayWay payWay);
/** /**
* 获取支付时商品名称,供服务商API使用 * 获取支付时商品名称,供服务商API使用


+ 4
- 4
mallinkService/src/main/java/com/iformall/service/order/impl/batch/BaseBatchOrderAdapterService.java Voir le fichier

@@ -95,7 +95,7 @@ public abstract class BaseBatchOrderAdapterService implements OrderAdapterServic
} }
@Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class}) @Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class})
protected WxComposeOrder createDBMainOrderForPushOrders(TenantEntity tenantEntity,WxCUserBasicInfo user,List<PlatPushOrderSaveDto> platPushOrderList,EnumPayWay payWay,EnumComposeOrder composeOrderType) {
protected WxComposeOrder createDBMainOrderForPushOrders(TenantEntity tenantEntity,WxCUserBasicInfo user,String allExtParam,List<PlatPushOrderSaveDto> platPushOrderList,EnumPayWay payWay,EnumComposeOrder composeOrderType) {
int payment = 0; int payment = 0;
Map<Long,WxCouponChannel> couponChannelMap = new HashMap<Long,WxCouponChannel>(); Map<Long,WxCouponChannel> couponChannelMap = new HashMap<Long,WxCouponChannel>();
for (PlatPushOrderSaveDto ocsd : platPushOrderList) { for (PlatPushOrderSaveDto ocsd : platPushOrderList) {
@@ -109,11 +109,11 @@ public abstract class BaseBatchOrderAdapterService implements OrderAdapterServic
couponChannelMap.put(wxCouponChannel.getId(), wxCouponChannel); couponChannelMap.put(wxCouponChannel.getId(), wxCouponChannel);
} }
return createDBMainOrder(tenantEntity, user, payment, payWay, composeOrderType,couponChannelMap);
return createDBMainOrder(tenantEntity, user, payment, allExtParam,payWay, composeOrderType,couponChannelMap);
} }
@Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class}) @Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class})
protected WxComposeOrder createDBMainOrder(TenantEntity tenantEntity,WxCUserBasicInfo user,int payment,String extParam,EnumPayWay payWay,EnumComposeOrder composeOrderType,Map<Long,WxCouponChannel> couponChannelMap) {
protected WxComposeOrder createDBMainOrder(TenantEntity tenantEntity,WxCUserBasicInfo user,int payment,String allExtParam,EnumPayWay payWay,EnumComposeOrder composeOrderType,Map<Long,WxCouponChannel> couponChannelMap) {
//判断是否poi订单 //判断是否poi订单
Integer isTtPoiOrder = null; Integer isTtPoiOrder = null;
try{ try{
@@ -133,7 +133,7 @@ public abstract class BaseBatchOrderAdapterService implements OrderAdapterServic
order.setOrderType(composeOrderType.getCode()); order.setOrderType(composeOrderType.getCode());
order.setIsTtPoiOrder(isTtPoiOrder); order.setIsTtPoiOrder(isTtPoiOrder);
order.setCreateDate(new Date()); order.setCreateDate(new Date());
order.setExtParam(extParam);
order.setExtParam(allExtParam);
wxBatchOrderMapper.insert(order); wxBatchOrderMapper.insert(order);
WxComposeOrder composeOrder = new WxComposeOrder(order.getId(), composeOrderType.getCode(), payment); WxComposeOrder composeOrder = new WxComposeOrder(order.getId(), composeOrderType.getCode(), payment);
composeOrder.updateTenantInfo(tenantEntity); composeOrder.updateTenantInfo(tenantEntity);


Chargement…
Annuler
Enregistrer