| @@ -108,7 +108,7 @@ public class WxMicroPayController extends BaseController { | |||
| WxPayOrder record = new WxPayOrder(); | |||
| record.updateTenantInfo(user); | |||
| record.setOrderId(EnumComposeOrder.getPayOrderId(order)); | |||
| record.setOrderId(order.getComposeOrderId()); | |||
| record.setAuthCode(authCode); | |||
| record.setPayAmount(order.getPayment()); | |||
| record.setIp(ipStr); | |||
| @@ -59,6 +59,7 @@ public class PosServiceImpl implements PosService { | |||
| private final WxCouponMerchantMapper couponMerchantMapper; | |||
| private final WxCouponMapper couponMapper; | |||
| private final WxMerchantMapper merchantMapper; | |||
| private final WxBatchOrderMapper wxBatchOrderMapper; | |||
| /** | |||
| @@ -2037,50 +2038,50 @@ public class PosServiceImpl implements PosService { | |||
| } | |||
| } | |||
| /** | |||
| * 支付订单-会员折扣 | |||
| * @param merchantBUser | |||
| * @param order | |||
| * @param memId | |||
| * @param posPayOrderId | |||
| * @param neuPaymentAmount | |||
| * @param neuPosPayOrderTime | |||
| */ | |||
| public WxPayOrder payOrderFromMemDiscount( | |||
| WxMerchantBUser merchantBUser, | |||
| WxOrder order, Long memId, | |||
| Long posPayOrderId, Integer neuPaymentAmount, Date neuPosPayOrderTime) { | |||
| Date curDate = new Date(); | |||
| final IdWorker idWorker = IdWorker.get(); | |||
| WxPayOrder payOrder = new WxPayOrder(); | |||
| payOrder.setId(idWorker.nextId()); | |||
| payOrder.updateTenantInfo(merchantBUser); | |||
| payOrder.setCUserId(memId); | |||
| payOrder.setOrderId(EnumComposeOrder.getPayOrderId(order)); | |||
| payOrder.setCreateTime(curDate); | |||
| payOrder.setUpdateTime(curDate); | |||
| payOrder.setPayTimeStart(curDate); | |||
| payOrder.setPayTimeEnd(curDate); | |||
| payOrder.setPayOrderNo(String.valueOf(payOrder.getId())); | |||
| payOrder.setPayAmount(neuPaymentAmount); | |||
| payOrder.setPayVendor(EnumPayWay.PAY_WAY_POS_NEU.getCode()); | |||
| payOrder.setPayOrderStatus(EnumPayStatus.PAY_STATUS_SUCCESS.getCode()); | |||
| payOrder.setShare(EnumPayShare.NO.getCode()); | |||
| payOrder.setPosPayOrderId(posPayOrderId); | |||
| payOrder.setPosPayOrderTime(neuPosPayOrderTime.getTime()); | |||
| /// TODO | |||
| /// setPosPaymentType(EnumNeuPosPamentType.MEM_DISCOUNT.getCode()); | |||
| payOrder.setPosPayDes("POS会员折扣支付"); | |||
| int sqlRow = payOrderMapper.insert(payOrder); | |||
| if (sqlRow != 1) { | |||
| logger.error("pay order insert error: " + payOrder.toString()); | |||
| throw new MallinkException(ErrorCode.DB_FAIL); | |||
| } | |||
| return payOrder; | |||
| } | |||
| // /** | |||
| // * 支付订单-会员折扣 | |||
| // * @param merchantBUser | |||
| // * @param order | |||
| // * @param memId | |||
| // * @param posPayOrderId | |||
| // * @param neuPaymentAmount | |||
| // * @param neuPosPayOrderTime | |||
| // */ | |||
| // public WxPayOrder payOrderFromMemDiscount( | |||
| // WxMerchantBUser merchantBUser, | |||
| // WxOrder order, Long memId, | |||
| // Long posPayOrderId, Integer neuPaymentAmount, Date neuPosPayOrderTime) { | |||
| // Date curDate = new Date(); | |||
| // final IdWorker idWorker = IdWorker.get(); | |||
| // | |||
| // WxPayOrder payOrder = new WxPayOrder(); | |||
| // payOrder.setId(idWorker.nextId()); | |||
| // payOrder.updateTenantInfo(merchantBUser); | |||
| // payOrder.setCUserId(memId); | |||
| // payOrder.setOrderId(order.getComposeOrderId()); | |||
| // payOrder.setCreateTime(curDate); | |||
| // payOrder.setUpdateTime(curDate); | |||
| // payOrder.setPayTimeStart(curDate); | |||
| // payOrder.setPayTimeEnd(curDate); | |||
| // payOrder.setPayOrderNo(String.valueOf(payOrder.getId())); | |||
| // payOrder.setPayAmount(neuPaymentAmount); | |||
| // payOrder.setPayVendor(EnumPayWay.PAY_WAY_POS_NEU.getCode()); | |||
| // payOrder.setPayOrderStatus(EnumPayStatus.PAY_STATUS_SUCCESS.getCode()); | |||
| // payOrder.setShare(EnumPayShare.NO.getCode()); | |||
| // payOrder.setPosPayOrderId(posPayOrderId); | |||
| // payOrder.setPosPayOrderTime(neuPosPayOrderTime.getTime()); | |||
| // /// TODO | |||
| // /// setPosPaymentType(EnumNeuPosPamentType.MEM_DISCOUNT.getCode()); | |||
| // payOrder.setPosPayDes("POS会员折扣支付"); | |||
| // | |||
| // int sqlRow = payOrderMapper.insert(payOrder); | |||
| // if (sqlRow != 1) { | |||
| // logger.error("pay order insert error: " + payOrder.toString()); | |||
| // throw new MallinkException(ErrorCode.DB_FAIL); | |||
| // } | |||
| // return payOrder; | |||
| // | |||
| // } | |||
| /** | |||
| * 支付订单-优惠券 | |||
| @@ -2098,7 +2099,7 @@ public class PosServiceImpl implements PosService { | |||
| Long posPayOrderId, Integer neuPaymentAmount, Date neuPosPayOrderTime, String posPayOrderNo) { | |||
| // 1. insert into PayOrder | |||
| WxPayOrder payOrderQ = new WxPayOrder(); | |||
| payOrderQ.setOrderId(EnumComposeOrder.getPayOrderId(order)); | |||
| payOrderQ.setOrderId(order.getComposeOrderId()); | |||
| payOrderQ.updateTenantInfo(merchantBUser); | |||
| List<WxPayOrder> payOrderList = payOrderMapper.findList(payOrderQ); | |||
| WxPayOrder payOrder = null; | |||
| @@ -2111,7 +2112,7 @@ public class PosServiceImpl implements PosService { | |||
| payOrder.updateTenantInfo(merchantBUser); | |||
| payOrder.setCUserId(memId); | |||
| payOrder.setBUserId(merchantBUser.getId()); | |||
| payOrder.setOrderId(EnumComposeOrder.getPayOrderId(order)); | |||
| payOrder.setOrderId(order.getComposeOrderId()); | |||
| payOrder.setCreateTime(curDate); | |||
| payOrder.setUpdateTime(curDate); | |||
| payOrder.setPayTimeStart(curDate); | |||
| @@ -2197,7 +2198,7 @@ public class PosServiceImpl implements PosService { | |||
| // 1. insert into PayOrder | |||
| WxPayOrder payOrderQ = new WxPayOrder(); | |||
| payOrderQ.updateTenantInfo(buUser); | |||
| payOrderQ.setOrderId(EnumComposeOrder.getPayOrderId(order)); | |||
| payOrderQ.setOrderId(order.getComposeOrderId()); | |||
| List<WxPayOrder> payOrderList = payOrderMapper.findList(payOrderQ); | |||
| WxPayOrder payOrder = null; | |||
| if (null == payOrderList || payOrderList.size()<=0) { | |||
| @@ -2210,7 +2211,7 @@ public class PosServiceImpl implements PosService { | |||
| payOrder.updateTenantInfo(buUser); | |||
| payOrder.setCUserId(memId); | |||
| payOrder.setBUserId(buUser.getId()); | |||
| payOrder.setOrderId(order.getId()); | |||
| payOrder.setOrderId(order.getComposeOrderId()); | |||
| payOrder.setCreateTime(curDate); | |||
| payOrder.setUpdateTime(curDate); | |||
| payOrder.setPayTimeStart(curDate); | |||
| @@ -2273,7 +2274,7 @@ public class PosServiceImpl implements PosService { | |||
| // 1. insert into PayOrder | |||
| WxPayOrder payOrderQ = new WxPayOrder(); | |||
| payOrderQ.updateTenantInfo(buUser); | |||
| payOrderQ.setOrderId(order.getId()); | |||
| payOrderQ.setOrderId(order.getComposeOrderId()); | |||
| List<WxPayOrder> payOrderList = payOrderMapper.findList(payOrderQ); | |||
| WxPayOrder payOrder = null; | |||
| if (null == payOrderList || payOrderList.size()<=0) { | |||
| @@ -2285,7 +2286,7 @@ public class PosServiceImpl implements PosService { | |||
| payOrder.setTenantId(buUser.getTenantId()); | |||
| payOrder.updateTenantInfo(buUser); | |||
| payOrder.setCUserId(memId); | |||
| payOrder.setOrderId(EnumComposeOrder.getPayOrderId(order)); | |||
| payOrder.setOrderId(order.getComposeOrderId()); | |||
| payOrder.setCreateTime(curDate); | |||
| payOrder.setUpdateTime(curDate); | |||
| payOrder.setPayTimeStart(curDate); | |||
| @@ -2350,7 +2351,7 @@ public class PosServiceImpl implements PosService { | |||
| WxPayOrder payOrderQ = new WxPayOrder(); | |||
| payOrderQ.updateTenantInfo(refundOrder); | |||
| payOrderQ.setCUserId(refundOrder.getCUserId()); | |||
| payOrderQ.setOrderId(EnumComposeOrder.getPayOrderId(refundOrder)); | |||
| payOrderQ.setOrderId(refundOrder.getComposeOrderId()); | |||
| payOrderQ.setPayOrderStatus(EnumPayStatus.PAY_STATUS_SUCCESS.getCode()); | |||
| payOrderQ.setPosPayOrderId(posPayOrderId); | |||
| @@ -2374,7 +2375,7 @@ public class PosServiceImpl implements PosService { | |||
| refundPayOrder.setTenantId(buUser.getTenantId()); | |||
| refundPayOrder.updateTenantInfo(buUser); | |||
| refundPayOrder.setCUserId(memId); | |||
| refundPayOrder.setOrderId(refundOrder.getId()); | |||
| refundPayOrder.setOrderId(refundOrder.getComposeOrderId()); | |||
| refundPayOrder.setCreateTime(curDate); | |||
| refundPayOrder.setUpdateTime(curDate); | |||
| refundPayOrder.setRefundTimeStart(curDate); | |||
| @@ -2434,6 +2435,17 @@ public class PosServiceImpl implements PosService { | |||
| throw new MallinkException(ErrorCode.POS_ORDER_HAD_SYNCED); | |||
| } | |||
| final IdWorker idWorker = IdWorker.get(); | |||
| WxBatchOrder border =new WxBatchOrder(); | |||
| border.setId(idWorker.nextId()); | |||
| border.setCUserId(memId); | |||
| border.updateTenantInfo(merchantBUser); | |||
| border.setPayment(posAmount); | |||
| border.setPayVendor(EnumPayWay.PAY_WAY_POS_NEU.getCode()); | |||
| border.setOrderType(EnumComposeOrder.SINGLE.getCode()); | |||
| border.setCreateDate(new Date()); | |||
| wxBatchOrderMapper.insert(border); | |||
| Long orderId = idWorker.nextId(); | |||
| WxOrder order = new WxOrder(); | |||
| @@ -2455,7 +2467,7 @@ public class PosServiceImpl implements PosService { | |||
| order.setPosOrderId(posOrderId); | |||
| order.setPosOrderCreateTime(posOrderTime.getTime()); | |||
| order.setPosOrderCreateSn(orderCreateSn); | |||
| order.setComposeOrderId(0L); | |||
| order.setComposeOrderId(border.getId()); | |||
| order.setComposeOrderType(EnumComposeOrder.SINGLE.getCode()); | |||
| order.setCouponNumber(1); | |||
| try { | |||
| @@ -2518,6 +2530,19 @@ public class PosServiceImpl implements PosService { | |||
| // 3. 创建退款订单 | |||
| final IdWorker idWorker = IdWorker.get(); | |||
| WxBatchOrder border =new WxBatchOrder(); | |||
| border.setId(idWorker.nextId()); | |||
| border.setCUserId(memId); | |||
| border.updateTenantInfo(buUser); | |||
| border.setPayment(orderAmount); | |||
| border.setPayVendor(EnumPayWay.PAY_WAY_POS_NEU.getCode()); | |||
| border.setOrderType(EnumComposeOrder.SINGLE.getCode()); | |||
| border.setCreateDate(new Date()); | |||
| wxBatchOrderMapper.insert(border); | |||
| Long orderId = idWorker.nextId(); | |||
| WxOrder order = new WxOrder(); | |||
| @@ -2539,7 +2564,7 @@ public class PosServiceImpl implements PosService { | |||
| order.setPosOrderCreateTime(posOrderTime.getTime()); | |||
| order.setPosOrderCreateSn(orderCreateSn); | |||
| order.setOrderNumber(orderQ.getOrderNumber()); | |||
| order.setComposeOrderId(0L); | |||
| order.setComposeOrderId(border.getId()); | |||
| order.setComposeOrderType(EnumComposeOrder.SINGLE.getCode()); | |||
| order.setCouponNumber(1); | |||
| @@ -280,7 +280,7 @@ public class OrderExpiringSchedule { | |||
| public boolean wxPaySuccess(WxOrder order,boolean autoReHandle,EnumPayWay payWay) throws MallinkException, Exception { | |||
| WxPayOrder payOrderq = new WxPayOrder(); | |||
| payOrderq.setOrderId(EnumComposeOrder.getPayOrderId(order)); | |||
| payOrderq.setOrderId(order.getComposeOrderId()); | |||
| payOrderq.setTenantId(order.getTenantId()); | |||
| List<WxPayOrder> payorderlist = wxPayOrderMapper.findList(payOrderq); | |||
| if (null == payorderlist || payorderlist.size() <=0 ) { | |||
| @@ -422,7 +422,7 @@ public class OrderExpiringSchedule { | |||
| WxPayOrder payOrderQ = new WxPayOrder(); | |||
| payOrderQ.updateTenantInfo(order); | |||
| payOrderQ.setCUserId(order.getCUserId()); | |||
| payOrderQ.setOrderId(EnumComposeOrder.getPayOrderId(order)); | |||
| payOrderQ.setOrderId(order.getComposeOrderId()); | |||
| //payOrderQ.setPayOrderStatus(EnumPayStatus.PAY_STATUS_SUCCESS.getCode()); | |||
| WxPayOrder payOrder = null; | |||
| @@ -38,14 +38,6 @@ public enum EnumComposeOrder { | |||
| return message; | |||
| } | |||
| public static Long getPayOrderId(WxOrder order) { | |||
| if (order.getComposeOrderType().intValue() == SINGLE.getCode().intValue()) { | |||
| return order.getId(); | |||
| }else { | |||
| return order.getComposeOrderId(); | |||
| } | |||
| } | |||
| //是单个支付还是组合支付 | |||
| public static boolean isSingle(Integer type) { | |||
| if (type.intValue() == SINGLE.getCode().intValue()) { | |||
| @@ -1944,7 +1944,7 @@ public class WxCouponOrderServiceImpl implements WxCouponOrderService { | |||
| WxPayOrder payOrder = null; | |||
| WxPayOrder payOrderQ = new WxPayOrder(); | |||
| payOrderQ.updateTenantInfo(couponOrder); | |||
| payOrderQ.setOrderId(EnumComposeOrder.getPayOrderId(order)); | |||
| payOrderQ.setOrderId(order.getComposeOrderId()); | |||
| payOrderQ.setPayOrderStatus(EnumPayStatus.PAY_STATUS_SUCCESS.getCode()); | |||
| List<WxPayOrder> payList = wxPayOrderMapper.selectList(new QueryWrapper(payOrderQ)); | |||
| if (payList.size() > 0) { | |||
| @@ -876,6 +876,19 @@ public class WxOrderServiceImpl implements WxOrderService { | |||
| int payment = totalFee.multiply(new BigDecimal(100)).intValue(); | |||
| final IdWorker idWorker = IdWorker.get(); | |||
| WxBatchOrder order =new WxBatchOrder(); | |||
| order.setId(idWorker.nextId()); | |||
| order.setCUserId(user.getId()); | |||
| order.updateTenantInfo(wxMerchant); | |||
| order.setPayment(payment); | |||
| order.setPayVendor(payWay.getCode()); | |||
| order.setOrderType(EnumComposeOrder.SINGLE.getCode()); | |||
| order.setCreateDate(new Date()); | |||
| wxBatchOrderMapper.insert(order); | |||
| Long orderNumber = idWorker.nextId(); | |||
| // body | |||
| @@ -895,9 +908,10 @@ public class WxOrderServiceImpl implements WxOrderService { | |||
| record.setDetail(bodyStr); | |||
| record.setCreateDate(curr); | |||
| record.setUpdateDate(curr); | |||
| record.setComposeOrderId(0L); | |||
| record.setComposeOrderId(order.getId()); | |||
| record.setComposeOrderType(EnumComposeOrder.SINGLE.getCode()); | |||
| record.setCouponNumber(1); | |||
| try { | |||
| // 保存订单 | |||
| @@ -934,6 +948,19 @@ public class WxOrderServiceImpl implements WxOrderService { | |||
| Date curr = new Date(); | |||
| final IdWorker idWorker = IdWorker.get(); | |||
| WxBatchOrder order =new WxBatchOrder(); | |||
| order.setId(idWorker.nextId()); | |||
| order.setCUserId(user.getId()); | |||
| order.updateTenantInfo(wxMerchant); | |||
| order.setPayment(payment); | |||
| order.setPayVendor(EnumPayWay.PAY_WAY_WECHAT_MA.getCode()); | |||
| order.setOrderType(EnumComposeOrder.SINGLE.getCode()); | |||
| order.setCreateDate(new Date()); | |||
| wxBatchOrderMapper.insert(order); | |||
| Long orderNumber = idWorker.nextId(); | |||
| // body | |||
| @@ -956,7 +983,7 @@ public class WxOrderServiceImpl implements WxOrderService { | |||
| record.setDetail(bodyStr); | |||
| record.setCreateDate(curr); | |||
| record.setUpdateDate(curr); | |||
| record.setComposeOrderId(0L); | |||
| record.setComposeOrderId(order.getId()); | |||
| record.setComposeOrderType(EnumComposeOrder.SINGLE.getCode()); | |||
| record.setCouponNumber(1); | |||
| @@ -976,6 +1003,19 @@ public class WxOrderServiceImpl implements WxOrderService { | |||
| Date curr = new Date(); | |||
| final IdWorker idWorker = IdWorker.get(); | |||
| WxBatchOrder order =new WxBatchOrder(); | |||
| order.setId(idWorker.nextId()); | |||
| order.setCUserId(cUserId); | |||
| order.updateTenantInfo(merchant); | |||
| order.setPayment(payment); | |||
| order.setPayVendor(EnumPayWay.PAY_WAY_PREPAIDCARD.getCode()); | |||
| order.setOrderType(EnumComposeOrder.SINGLE.getCode()); | |||
| order.setCreateDate(new Date()); | |||
| wxBatchOrderMapper.insert(order); | |||
| Long orderNumber = idWorker.nextId(); | |||
| // body | |||
| @@ -997,7 +1037,7 @@ public class WxOrderServiceImpl implements WxOrderService { | |||
| record.setDetail(bodyStr); | |||
| record.setCreateDate(curr); | |||
| record.setUpdateDate(curr); | |||
| record.setComposeOrderId(0L); | |||
| record.setComposeOrderId(order.getId()); | |||
| record.setComposeOrderType(EnumComposeOrder.SINGLE.getCode()); | |||
| record.setCouponNumber(1); | |||
| try { | |||
| @@ -1037,7 +1077,7 @@ public class WxOrderServiceImpl implements WxOrderService { | |||
| try { | |||
| WxPayOrder payOrderQ = new WxPayOrder(); | |||
| payOrderQ.updateTenantInfo(order); | |||
| payOrderQ.setOrderId(EnumComposeOrder.getPayOrderId(order)); | |||
| payOrderQ.setOrderId(order.getComposeOrderId()); | |||
| payOrderQ.setPayOrderStatus(EnumPayStatus.PAY_STATUS_SUCCESS.getCode()); | |||
| payOrder = wxPayOrderMapper.selectOne(new QueryWrapper(payOrderQ)); | |||
| } catch (Exception e) { | |||
| @@ -475,7 +475,7 @@ public class WxPayOrderServiceImpl implements WxPayOrderService { | |||
| Date currentDate = new Date(); | |||
| WxPayOrder pq = new WxPayOrder(); | |||
| pq.updateTenantInfo(order); | |||
| pq.setOrderId(EnumComposeOrder.getPayOrderId(order)); | |||
| pq.setOrderId(order.getComposeOrderId()); | |||
| List<WxPayOrder> list = wxPayOrderMapper.findList(pq); | |||
| String payOrderNo = ""; | |||
| if (list.size() <= 0) { | |||
| @@ -1107,7 +1107,7 @@ public class WxPayOrderServiceImpl implements WxPayOrderService { | |||
| private void doCouponPayOrder(WxMerchantBUser user, WxPayOrder record, WxOrder order,EnumPayWay payWay) { | |||
| // B端收银台核销券处理 | |||
| WxPayOrder payOrderQ = new WxPayOrder(); | |||
| payOrderQ.setOrderId(EnumComposeOrder.getPayOrderId(order)); | |||
| payOrderQ.setOrderId(order.getComposeOrderId()); | |||
| payOrderQ.setCUserId(record.getCUserId()); | |||
| payOrderQ.setPayFrom(EnumPayFrom.INSIDE_B.getCode()); | |||
| payOrderQ.setPayOrderStatus(EnumPayStatus.PAY_STATUS_WAIT.getCode()); | |||
| @@ -1118,7 +1118,7 @@ public class WxPayOrderServiceImpl implements WxPayOrderService { | |||
| try { | |||
| WxPayOrder payOrderCoupon = new WxPayOrder(); | |||
| payOrderCoupon.setId(unPayOrder.getId()); | |||
| payOrderCoupon.setOrderId(EnumComposeOrder.getPayOrderId(order)); | |||
| payOrderCoupon.setOrderId(order.getComposeOrderId()); | |||
| payOrderCoupon.setPayOrderStatus(EnumPayStatus.PAY_STATUS_SUCCESS.getCode()); | |||
| wxPayOrderMapper.updateById(payOrderCoupon); | |||
| } catch (Exception e) { | |||
| @@ -33,6 +33,7 @@ import org.apache.commons.lang3.StringUtils; | |||
| import org.slf4j.Logger; | |||
| import org.slf4j.LoggerFactory; | |||
| import org.springframework.beans.factory.annotation.Autowired; | |||
| import org.springframework.context.annotation.Lazy; | |||
| import org.springframework.stereotype.Service; | |||
| import org.springframework.transaction.annotation.Propagation; | |||
| import org.springframework.transaction.annotation.Transactional; | |||
| @@ -58,6 +59,7 @@ public class WxRefundOrderServiceImpl implements WxRefundOrderService { | |||
| @Autowired | |||
| WxPayAccountMapper wxPayAccountMapper; | |||
| @Lazy | |||
| @Autowired | |||
| WxOrderService wxOrderService; | |||
| @@ -88,6 +90,9 @@ public class WxRefundOrderServiceImpl implements WxRefundOrderService { | |||
| @Autowired | |||
| PayServiceFactory payServiceFactory; | |||
| @Autowired | |||
| WxBatchOrderMapper wxBatchOrderMapper; | |||
| private boolean isMerchantOrder(WxOrder wxOrder, Long merchantId) { | |||
| if (wxOrder.getType().equals(EnumOrderType.COUPON.getCode())) { | |||
| WxCoupon wxCoupon = wxCouponMapper.selectById(wxOrder.getProductId(),wxOrder.getTenantId()); | |||
| @@ -179,7 +184,7 @@ public class WxRefundOrderServiceImpl implements WxRefundOrderService { | |||
| WxPayOrder payOrderQ = new WxPayOrder(); | |||
| payOrderQ.updateTenantInfo(wxCouponOrder); | |||
| payOrderQ.setCUserId(wxOrder.getCUserId()); | |||
| payOrderQ.setOrderId(EnumComposeOrder.getPayOrderId(wxOrder)); | |||
| payOrderQ.setOrderId(wxOrder.getComposeOrderId()); | |||
| payOrderQ.setPayOrderStatus(EnumPayStatus.PAY_STATUS_SUCCESS.getCode()); | |||
| WxPayOrder payOrder = null; | |||
| @@ -212,6 +217,17 @@ public class WxRefundOrderServiceImpl implements WxRefundOrderService { | |||
| Date currentDate = new Date(); | |||
| WxBatchOrder order =new WxBatchOrder(); | |||
| order.setId(idWorker.nextId()); | |||
| order.setCUserId(wxOrder.getCUserId()); | |||
| order.updateTenantInfo(wxCouponOrder); | |||
| order.setPayment(wxOrder.getPayment()); | |||
| order.setPayVendor(wxOrder.getPayVendor()); | |||
| order.setOrderType(wxOrder.getComposeOrderType()); | |||
| order.setCreateDate(new Date()); | |||
| wxBatchOrderMapper.insert(order); | |||
| // 创建 refund Order | |||
| WxOrder rOrder = new WxOrder(); | |||
| rOrder.setId(refundOrderId); | |||
| @@ -235,7 +251,7 @@ public class WxRefundOrderServiceImpl implements WxRefundOrderService { | |||
| rOrder.setOrderStatus(EnumOrderStatus.ORDER_STATUS_PENDING_REFUND.getCode()); | |||
| rOrder.setCreateDate(currentDate); | |||
| rOrder.setUpdateDate(currentDate); | |||
| rOrder.setComposeOrderId(wxOrder.getComposeOrderId()); | |||
| rOrder.setComposeOrderId(order.getId()); | |||
| rOrder.setComposeOrderType(wxOrder.getComposeOrderType()); | |||
| rOrder.setCouponNumber(wxOrder.getCouponNumber()); | |||
| try { | |||
| @@ -373,6 +389,17 @@ public class WxRefundOrderServiceImpl implements WxRefundOrderService { | |||
| Date currentDate = new Date(); | |||
| WxBatchOrder order =new WxBatchOrder(); | |||
| order.setId(idWorker.nextId()); | |||
| order.setCUserId(wxOrder.getCUserId()); | |||
| order.updateTenantInfo(wxOrder); | |||
| order.setPayment(wxOrder.getPayment()); | |||
| order.setPayVendor(wxOrder.getPayVendor()); | |||
| order.setOrderType(EnumComposeOrder.SINGLE.getCode()); | |||
| order.setCreateDate(new Date()); | |||
| wxBatchOrderMapper.insert(order); | |||
| // 创建 refund Order | |||
| WxOrder rOrder = new WxOrder(); | |||
| rOrder.setId(refundOrderId); | |||
| @@ -383,12 +410,13 @@ public class WxRefundOrderServiceImpl implements WxRefundOrderService { | |||
| if (payType == EnumPayType.PAY_B_REFUND) { | |||
| rOrder.setProductId(bUserId); //B端发起退款后存B端用户ID在此 | |||
| } | |||
| rOrder.setPayVendor(wxOrder.getPayVendor()); | |||
| rOrder.setPaymentType(payType.getCode()); | |||
| rOrder.setPayment(wxOrder.getPayment()); | |||
| rOrder.setOrderStatus(EnumOrderStatus.ORDER_STATUS_PENDING_REFUND.getCode()); | |||
| rOrder.setCreateDate(currentDate); | |||
| rOrder.setUpdateDate(currentDate); | |||
| rOrder.setComposeOrderId(0L); | |||
| rOrder.setComposeOrderId(order.getId()); | |||
| rOrder.setComposeOrderType(EnumComposeOrder.SINGLE.getCode()); | |||
| rOrder.setCouponNumber(1); | |||
| try { | |||
| @@ -402,7 +430,7 @@ public class WxRefundOrderServiceImpl implements WxRefundOrderService { | |||
| WxPayOrder payOrderQ = new WxPayOrder(); | |||
| payOrderQ.updateTenantInfo(wxOrder); | |||
| payOrderQ.setCUserId(wxOrder.getCUserId()); | |||
| payOrderQ.setOrderId(EnumComposeOrder.getPayOrderId(wxOrder)); | |||
| payOrderQ.setOrderId(wxOrder.getComposeOrderId()); | |||
| payOrderQ.setPayOrderStatus(EnumPayStatus.PAY_STATUS_SUCCESS.getCode()); | |||
| WxPayOrder payOrder = null; | |||
| @@ -624,7 +652,7 @@ public class WxRefundOrderServiceImpl implements WxRefundOrderService { | |||
| WxPayOrder payOrderQ = new WxPayOrder(); | |||
| payOrderQ.updateTenantInfo(wxOrder); | |||
| payOrderQ.setCUserId(wxOrder.getCUserId()); | |||
| payOrderQ.setOrderId(EnumComposeOrder.getPayOrderId(wxOrder)); | |||
| payOrderQ.setOrderId(wxOrder.getComposeOrderId()); | |||
| //payOrderQ.setPayOrderStatus(EnumPayStatus.PAY_STATUS_SUCCESS.getCode()); | |||
| WxPayOrder payOrder = null; | |||
| @@ -52,10 +52,11 @@ public class SingleOrderAdapterService extends BaseBatchOrderAdapterService { | |||
| @Override | |||
| public WxComposeOrder getComposeOrder(Long mainOrderId, String tenantId) { | |||
| //mainOrderId(WxBatchOrder的id) 和 wxOrder的id一致 | |||
| WxComposeOrder corder = super.getComposeOrder(mainOrderId, tenantId, EnumComposeOrder.SINGLE); | |||
| WxOrder wxOrder = wxOrderMapper.selectById(mainOrderId, tenantId); | |||
| corder.setSingleOrder(wxOrder); | |||
| List<WxOrder> orders = super.getChildOrders(corder, tenantId, EnumComposeOrder.SINGLE); | |||
| if (null != orders && orders.size() > 0 ) { | |||
| corder.setSingleOrder(orders.get(0)); | |||
| } | |||
| return corder; | |||
| } | |||
| @@ -1277,10 +1277,10 @@ | |||
| <select id="findIdsListHasConditons" parameterType="com.iformall.domain.po.WxCoupon" resultType="Long"> | |||
| select c.id | |||
| from wx_coupon c | |||
| where o.`tenant_id` = #{tenantId} and c.conditions is not null | |||
| where c.`tenant_id` = #{tenantId} and c.conditions is not null | |||
| /*and JSON_EXTRACT(c.conditions, '$.type') = 1*/ | |||
| <if test=" null != parentTenantId and '' != parentTenantId"> | |||
| and o.`parent_tenant_id` = #{parentTenantId} | |||
| and c.`parent_tenant_id` = #{parentTenantId} | |||
| </if> | |||
| </select> | |||