Browse Source

Merge branch 'release_toaliyun_real_202301' of https://git.malls.iformall.com/server/formallProject into release_toaliyun_real

release_toaliyun_real
xhxu 3 years ago
parent
commit
7859cdcdb3
8 changed files with 67 additions and 56 deletions
  1. +13
    -8
      mallinkSchedule/src/main/java/com/iformall/schedule/OrderExpiringSchedule.java
  2. +2
    -1
      mallinkService/src/main/java/com/iformall/enums/EnumOrderStatus.java
  3. +2
    -2
      mallinkService/src/main/java/com/iformall/service/impl/WxMsgConfigServiceImpl.java
  4. +40
    -28
      mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java
  5. +3
    -10
      mallinkService/src/main/java/com/iformall/service/impl/WxPayOrderServiceImpl.java
  6. +5
    -5
      mallinkService/src/main/resources/mapper/WxOrderMapper.xml
  7. +1
    -1
      mallinkService/src/main/resources/mapper/WxPropertyContractMapper.xml
  8. +1
    -1
      mallinkService/src/main/resources/mapper/WxRentContractMapper.xml

+ 13
- 8
mallinkSchedule/src/main/java/com/iformall/schedule/OrderExpiringSchedule.java View File

@@ -168,14 +168,6 @@ public class OrderExpiringSchedule {

// 拼团取消
WxOrder order = new WxOrder();
// order.setOrderStatus(EnumOrderStatus.ORDER_STATUS_COOPERATING_UNPAID.getCode());
// wxOrderMapper.selectList(new QueryWrapper(order)).stream().forEach(o -> {
// try {
// proxy.orderGroupExpired((WxOrder) o,true,true,payWay);
// } catch (Exception e) {
// logger.error("拼团取消失败" + e.getMessage());
// }
// });
Date groupExpireDate = new Date(curDate.getTime() - NORMAL_TIME_OUT );
dateMap.put("type", EnumOrderType.COUPON.getCode());
dateMap.put("endDate", groupExpireDate);
@@ -260,6 +252,19 @@ public class OrderExpiringSchedule {
}
});
}
//此处是订单已取消,但是已支付成功的,仅需退款(取消的时候退过一次库存。此状态退款回调不会再回滚库存)
order.setOrderStatus(EnumOrderStatus.ORDER_STATUS_OVERTIME_PAID_REFUND.getCode());
_orderList = wxOrderMapper.selectList(new QueryWrapper(order));
if (null != _orderList && _orderList.size() > 0) {
_orderList.stream().forEach(o -> {
try {
proxy.returnMoney((WxOrder) o,payWay);
} catch (Exception e) {
logger.error("参团失败退款失败" + e.getMessage());
}
});
}
}
@Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class})


+ 2
- 1
mallinkService/src/main/java/com/iformall/enums/EnumOrderStatus.java View File

@@ -28,7 +28,8 @@ public enum EnumOrderStatus {
ORDER_STATUS_COOPERATING_UNPAID(15, "拼团待付款"),//占库存
ORDER_STATUS_COOPERATING_BREAK(16, "拼团取消"),
ORDER_STATUS_COOPERATING_SCHEDU_REFUND(99,"订单定时状态-需要返款和回滚库存,无需再次查询真实支付状态"),
ORDER_STATUS_COOPERATING_COMPLETE_REFUND(98,"拼团完成会更新未支付的为此状态,未有效的订单统一置成该状态")
ORDER_STATUS_COOPERATING_COMPLETE_REFUND(98,"拼团完成会更新未支付的为此状态,未有效的订单统一置成该状态"),
ORDER_STATUS_OVERTIME_PAID_REFUND(97,"订单已取消.订单超时前打开收银台,超时后输入密码进行支付,此时仅需要退款")
;
public static EnumOrderStatus getEnum(Integer code) {


+ 2
- 2
mallinkService/src/main/java/com/iformall/service/impl/WxMsgConfigServiceImpl.java View File

@@ -58,9 +58,9 @@ public class WxMsgConfigServiceImpl implements WxMsgConfigService {
WxMsgConfig wxMsgConfig = new WxMsgConfig();
wxMsgConfig.updateTenantInfo(tenantInfo);
wxMsgConfig.setSmsChannel(EnumSMSChannel.ALIYUN.getCode());
wxMsgConfig.setTotal((long) 100000);
wxMsgConfig.setTotal((long) 5000);
wxMsgConfig.setRecharge((long) 0);
wxMsgConfig.setRemains((long) 100000);
wxMsgConfig.setRemains((long) 5000);
wxMsgConfig.setReminderstatus(0);
wxMsgConfigMapper.insert(wxMsgConfig);
}


+ 40
- 28
mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java View File

@@ -740,6 +740,7 @@ public class WxOrderServiceImpl implements WxOrderService {

statusS.add(EnumOrderStatus.ORDER_STATUS_COOPERATING_SCHEDU_REFUND.getCode());
statusS.add(EnumOrderStatus.ORDER_STATUS_COOPERATING_COMPLETE_REFUND.getCode());
statusS.add(EnumOrderStatus.ORDER_STATUS_OVERTIME_PAID_REFUND.getCode());

orderQ.setStatusS(statusS);
WxCoupon couponQ = new WxCoupon();
@@ -2021,33 +2022,44 @@ public class WxOrderServiceImpl implements WxOrderService {
logger.error("用户不存在, userId: " + updateOrder.getCUserId());
throw new MallinkException(ErrorCode.USER_IS_EMPTY);
}
// 已支付,更新支付时间
WxOrder updateT = new WxOrder();
updateT.setId(updateOrder.getId());
updateT.setPaymentTime(currentDate);
updateT.updateTenantInfo(updateOrder);
//拼团到此处为已完成状态
if (updateOrder.getOrderGroupId().equals(0L)) {
updateT.setOrderStatus(EnumOrderStatus.ORDER_STATUS_PAYMENT_SUCCESS.getCode());
} else {
// 拼团设为已完成状态
updateT.setOrderStatus(EnumOrderStatus.ORDER_STATUS_COOPERATING_COMPLETE.getCode());
}
updateT.setUpdateDate(currentDate);
int ret = 0;
try {
ret = wxOrderMapper.updateById(updateT);
} catch (Exception e) {
logger.error("订单更新失败:" + e.getMessage());
throw new MallinkException(ErrorCode.ORDER_UPDATE_ERR);
}

// 创建couponOrder
try {
return createCouponOrder(currentDate,updateOrder, user, coupon, null,null,null,null,null,null);
} catch (Exception e) {
logger.error("创建券包:" + e.getMessage());
throw new MallinkException(ErrorCode.COUPON_ORDER_SAVE_ERR);
// 如果订单状态此时已经被超时取消
WxOrder order = wxOrderMapper.selectById(updateOrder.getId(), updateOrder.getTenantId());
if (order.getOrderStatus().equals(EnumOrderStatus.ORDER_STATUS_OVERTIME_CANCEL.getCode()) || order.getOrderStatus().equals(EnumOrderStatus.ORDER_STATUS_PRESS_OVERTIME.getCode())
|| order.getOrderStatus().equals(EnumOrderStatus.ORDER_STATUS_COOPERATING_BREAK.getCode())) {
order.setOrderStatus(EnumOrderStatus.ORDER_STATUS_OVERTIME_PAID_REFUND.getCode());
order.setUpdateDate(currentDate);
wxOrderMapper.updateById(order);
return null;
}else {
// 已支付,更新支付时间
WxOrder updateT = new WxOrder();
updateT.setId(updateOrder.getId());
updateT.setPaymentTime(currentDate);
updateT.updateTenantInfo(updateOrder);
//拼团到此处为已完成状态
if (updateOrder.getOrderGroupId().equals(0L)) {
updateT.setOrderStatus(EnumOrderStatus.ORDER_STATUS_PAYMENT_SUCCESS.getCode());
} else {
// 拼团设为已完成状态
updateT.setOrderStatus(EnumOrderStatus.ORDER_STATUS_COOPERATING_COMPLETE.getCode());
}
updateT.setUpdateDate(currentDate);
int ret = 0;
try {
ret = wxOrderMapper.updateById(updateT);
} catch (Exception e) {
logger.error("订单更新失败:" + e.getMessage());
throw new MallinkException(ErrorCode.ORDER_UPDATE_ERR);
}
// 创建couponOrder
try {
return createCouponOrder(currentDate,updateOrder, user, coupon, null,null,null,null,null,null);
} catch (Exception e) {
logger.error("创建券包:" + e.getMessage());
throw new MallinkException(ErrorCode.COUPON_ORDER_SAVE_ERR);
}
}
}

@@ -2302,7 +2314,7 @@ public class WxOrderServiceImpl implements WxOrderService {
public int updateOrderStatus(WxOrder updateOrder, EnumOrderStatus enumOrderStatus) {
Date currentDate = new Date();
WxOrder oldOrder = wxOrderMapper.selectById(updateOrder.getId(),updateOrder.getTenantId());
if (!oldOrder.getOrderStatus().equals(enumOrderStatus.getCode())) {
if ((!oldOrder.getOrderStatus().equals(enumOrderStatus.getCode())) && (!oldOrder.getOrderStatus().equals(EnumOrderStatus.ORDER_STATUS_OVERTIME_PAID_REFUND.getCode()))) {
// 状态已更新,库存不退回, 保证不会多退
switch (enumOrderStatus) {
case ORDER_STATUS_OVERTIME_CANCEL: // 支付取消,库存退回


+ 3
- 10
mallinkService/src/main/java/com/iformall/service/impl/WxPayOrderServiceImpl.java View File

@@ -958,17 +958,10 @@ public class WxPayOrderServiceImpl implements WxPayOrderService {
// 普通券, 修改订单状态
try {
WxCouponOrder couponOrder = wxOrderService.couponOrderSuccess(order);

// try {
// WxAppinfo appinfo = wxAppinfoService.getCAppInfo(order,EnumPayWay.getEnum(record.getPayVendor()).getPlat());
// //订单同步
// payServiceFactory.getPayAdapterService(record.getPayVendor()).payOrderPush(appinfo, order, record, wxCoupon);
// }catch (Exception e) {
// logger.error("doOthersAfterPaySuccess----error"+e.getMessage());
// }

try{
orderFactory.getOrderAdapterService(record.getComposeOrder()).doOthersAfterPaySuccess(order, record,couponOrder);
if (null != couponOrder) {
orderFactory.getOrderAdapterService(record.getComposeOrder()).doOthersAfterPaySuccess(order, record,couponOrder);
}
}catch (Exception e) {
logger.error("doOthersAfterPaySuccess----error"+e.getMessage());
}


+ 5
- 5
mallinkService/src/main/resources/mapper/WxOrderMapper.xml View File

@@ -339,7 +339,7 @@
o.compose_order_type,o.compose_order_id,o.`coupon_number`,o.`freight_price`,o.`shipping_type`,o.`shipping_address`,o.parent_order_id,o.ext_param
from wx_order o
where o.order_status in (0,1,2,3,4,5)
where o.order_status in (0,1,2,3,4,5,97)
<if test="cUserId != null">
and o.c_user_id = #{cUserId}
</if>
@@ -799,7 +799,7 @@
c.title,cubi.`name` c_user_name,cubi.phone,o.create_date,2 attribute from wx_order o
left join wx_c_user_basic_info cubi on o.c_user_id=cubi.id
left join wx_coupon c on o.product_id=c.id
where c.type in (1,2,3,4,5,6,10,50,51,66) and o.order_status in(0,1,2,3,4,5)
where c.type in (1,2,3,4,5,6,10,50,51,66) and o.order_status in(0,1,2,3,4,5,97)
<if test=" null != tenantId and '' != tenantId">
and o.`tenant_id` = #{tenantId}
</if>
@@ -812,7 +812,7 @@
c.title,cubi.`name` c_user_name,cubi.phone,o.create_date,6 attribute from wx_order o
left join wx_c_user_basic_info cubi on o.c_user_id=cubi.id
left join wx_coupon c on o.product_id=c.id
where c.type = 11 and o.order_status in(0,1,2,3,4,5)
where c.type = 11 and o.order_status in(0,1,2,3,4,5,97)
<if test=" null != tenantId and '' != tenantId">
and o.`tenant_id` = #{tenantId}
</if>
@@ -824,7 +824,7 @@
c.title,cubi.`name` c_user_name,cubi.phone,o.create_date,7 attribute from wx_order o
left join wx_c_user_basic_info cubi on o.c_user_id=cubi.id
left join wx_coupon c on o.product_id=c.id
where c.type = 12 and o.order_status in(0,1,2,3,4,5)
where c.type = 12 and o.order_status in(0,1,2,3,4,5,97)
<if test=" null != tenantId and '' != tenantId">
and o.`tenant_id` = #{tenantId}
</if>
@@ -1139,7 +1139,7 @@
where c_user_id = #{cUserId}
and parent_order_id = 0
and (`type` = 0 or `type` = 4)
and order_status in (0,1,2,3,4,5)
and order_status in (0,1,2,3,4,5,97)
and `tenant_id` = #{tenantId}
<if test=" null != parentTenantId and '' != parentTenantId">
and `parent_tenant_id` = #{parentTenantId}


+ 1
- 1
mallinkService/src/main/resources/mapper/WxPropertyContractMapper.xml View File

@@ -72,7 +72,7 @@
<if test=" null != price ">and `price` = #{price}</if>
<if test=" null != rentalStartDate ">and `rental_start_date` = #{rentalStartDate}</if>
<if test=" null != rentalEndDate ">and `rental_end_date` = #{rentalEndDate}</if>
<if test=" null != outDateNofity ">and out_date_notify_phone is not null and out_date_notify_phone != '' and and out_date_notify_days is not null and out_date_notify_days &gt; 0 and rental_end_date &lt;= NOW()</if>
<if test=" null != outDateNofity ">and out_date_notify_phone is not null and out_date_notify_phone != '' and and out_date_notify_days is not null and out_date_notify_days &gt; 0 </if>
<if test=" null != signDate ">and `sign_date` = #{signDate}</if>
<if test=" null != receivePeriod ">and `receive_period` = #{receivePeriod}</if>
<if test=" null != tenantId and '' != tenantId">


+ 1
- 1
mallinkService/src/main/resources/mapper/WxRentContractMapper.xml View File

@@ -156,7 +156,7 @@
<if test=" null != price and '' != price">and `price` = #{price}</if>
<if test=" null != rentalStartDate and '' != rentalStartDate">and `rental_start_date` = #{rentalStartDate}</if>
<if test=" null != rentalEndDate and '' != rentalEndDate">and `rental_end_date` = #{rentalEndDate}</if>
<if test=" null != outDateNofity ">and out_date_notify_phone is not null and out_date_notify_phone != '' and out_date_notify_days is not null and out_date_notify_days &gt; 0 and rental_end_date &lt;= NOW()</if>
<if test=" null != outDateNofity ">and out_date_notify_phone is not null and out_date_notify_phone != '' and out_date_notify_days is not null and out_date_notify_days &gt; 0 </if>
<if test=" null != signDate and '' != signDate">and `sign_date` = #{signDate}</if>
<if test=" null != receivePeriod and '' != receivePeriod">and `receive_period` = #{receivePeriod}</if>
<if test=" null != tenantId and '' != tenantId">


Loading…
Cancel
Save