| @@ -108,7 +108,7 @@ public class WxMicroPayController extends BaseController { | |||||
| WxPayOrder record = new WxPayOrder(); | WxPayOrder record = new WxPayOrder(); | ||||
| record.updateTenantInfo(user); | record.updateTenantInfo(user); | ||||
| record.setOrderId(EnumComposeOrder.getPayOrderId(order)); | |||||
| record.setOrderId(order.getComposeOrderId()); | |||||
| record.setAuthCode(authCode); | record.setAuthCode(authCode); | ||||
| record.setPayAmount(order.getPayment()); | record.setPayAmount(order.getPayment()); | ||||
| record.setIp(ipStr); | record.setIp(ipStr); | ||||
| @@ -59,6 +59,7 @@ public class PosServiceImpl implements PosService { | |||||
| private final WxCouponMerchantMapper couponMerchantMapper; | private final WxCouponMerchantMapper couponMerchantMapper; | ||||
| private final WxCouponMapper couponMapper; | private final WxCouponMapper couponMapper; | ||||
| private final WxMerchantMapper merchantMapper; | 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) { | Long posPayOrderId, Integer neuPaymentAmount, Date neuPosPayOrderTime, String posPayOrderNo) { | ||||
| // 1. insert into PayOrder | // 1. insert into PayOrder | ||||
| WxPayOrder payOrderQ = new WxPayOrder(); | WxPayOrder payOrderQ = new WxPayOrder(); | ||||
| payOrderQ.setOrderId(EnumComposeOrder.getPayOrderId(order)); | |||||
| payOrderQ.setOrderId(order.getComposeOrderId()); | |||||
| payOrderQ.updateTenantInfo(merchantBUser); | payOrderQ.updateTenantInfo(merchantBUser); | ||||
| List<WxPayOrder> payOrderList = payOrderMapper.findList(payOrderQ); | List<WxPayOrder> payOrderList = payOrderMapper.findList(payOrderQ); | ||||
| WxPayOrder payOrder = null; | WxPayOrder payOrder = null; | ||||
| @@ -2111,7 +2112,7 @@ public class PosServiceImpl implements PosService { | |||||
| payOrder.updateTenantInfo(merchantBUser); | payOrder.updateTenantInfo(merchantBUser); | ||||
| payOrder.setCUserId(memId); | payOrder.setCUserId(memId); | ||||
| payOrder.setBUserId(merchantBUser.getId()); | payOrder.setBUserId(merchantBUser.getId()); | ||||
| payOrder.setOrderId(EnumComposeOrder.getPayOrderId(order)); | |||||
| payOrder.setOrderId(order.getComposeOrderId()); | |||||
| payOrder.setCreateTime(curDate); | payOrder.setCreateTime(curDate); | ||||
| payOrder.setUpdateTime(curDate); | payOrder.setUpdateTime(curDate); | ||||
| payOrder.setPayTimeStart(curDate); | payOrder.setPayTimeStart(curDate); | ||||
| @@ -2197,7 +2198,7 @@ public class PosServiceImpl implements PosService { | |||||
| // 1. insert into PayOrder | // 1. insert into PayOrder | ||||
| WxPayOrder payOrderQ = new WxPayOrder(); | WxPayOrder payOrderQ = new WxPayOrder(); | ||||
| payOrderQ.updateTenantInfo(buUser); | payOrderQ.updateTenantInfo(buUser); | ||||
| payOrderQ.setOrderId(EnumComposeOrder.getPayOrderId(order)); | |||||
| payOrderQ.setOrderId(order.getComposeOrderId()); | |||||
| List<WxPayOrder> payOrderList = payOrderMapper.findList(payOrderQ); | List<WxPayOrder> payOrderList = payOrderMapper.findList(payOrderQ); | ||||
| WxPayOrder payOrder = null; | WxPayOrder payOrder = null; | ||||
| if (null == payOrderList || payOrderList.size()<=0) { | if (null == payOrderList || payOrderList.size()<=0) { | ||||
| @@ -2210,7 +2211,7 @@ public class PosServiceImpl implements PosService { | |||||
| payOrder.updateTenantInfo(buUser); | payOrder.updateTenantInfo(buUser); | ||||
| payOrder.setCUserId(memId); | payOrder.setCUserId(memId); | ||||
| payOrder.setBUserId(buUser.getId()); | payOrder.setBUserId(buUser.getId()); | ||||
| payOrder.setOrderId(order.getId()); | |||||
| payOrder.setOrderId(order.getComposeOrderId()); | |||||
| payOrder.setCreateTime(curDate); | payOrder.setCreateTime(curDate); | ||||
| payOrder.setUpdateTime(curDate); | payOrder.setUpdateTime(curDate); | ||||
| payOrder.setPayTimeStart(curDate); | payOrder.setPayTimeStart(curDate); | ||||
| @@ -2273,7 +2274,7 @@ public class PosServiceImpl implements PosService { | |||||
| // 1. insert into PayOrder | // 1. insert into PayOrder | ||||
| WxPayOrder payOrderQ = new WxPayOrder(); | WxPayOrder payOrderQ = new WxPayOrder(); | ||||
| payOrderQ.updateTenantInfo(buUser); | payOrderQ.updateTenantInfo(buUser); | ||||
| payOrderQ.setOrderId(order.getId()); | |||||
| payOrderQ.setOrderId(order.getComposeOrderId()); | |||||
| List<WxPayOrder> payOrderList = payOrderMapper.findList(payOrderQ); | List<WxPayOrder> payOrderList = payOrderMapper.findList(payOrderQ); | ||||
| WxPayOrder payOrder = null; | WxPayOrder payOrder = null; | ||||
| if (null == payOrderList || payOrderList.size()<=0) { | if (null == payOrderList || payOrderList.size()<=0) { | ||||
| @@ -2285,7 +2286,7 @@ public class PosServiceImpl implements PosService { | |||||
| payOrder.setTenantId(buUser.getTenantId()); | payOrder.setTenantId(buUser.getTenantId()); | ||||
| payOrder.updateTenantInfo(buUser); | payOrder.updateTenantInfo(buUser); | ||||
| payOrder.setCUserId(memId); | payOrder.setCUserId(memId); | ||||
| payOrder.setOrderId(EnumComposeOrder.getPayOrderId(order)); | |||||
| payOrder.setOrderId(order.getComposeOrderId()); | |||||
| payOrder.setCreateTime(curDate); | payOrder.setCreateTime(curDate); | ||||
| payOrder.setUpdateTime(curDate); | payOrder.setUpdateTime(curDate); | ||||
| payOrder.setPayTimeStart(curDate); | payOrder.setPayTimeStart(curDate); | ||||
| @@ -2350,7 +2351,7 @@ public class PosServiceImpl implements PosService { | |||||
| WxPayOrder payOrderQ = new WxPayOrder(); | WxPayOrder payOrderQ = new WxPayOrder(); | ||||
| payOrderQ.updateTenantInfo(refundOrder); | payOrderQ.updateTenantInfo(refundOrder); | ||||
| payOrderQ.setCUserId(refundOrder.getCUserId()); | payOrderQ.setCUserId(refundOrder.getCUserId()); | ||||
| payOrderQ.setOrderId(EnumComposeOrder.getPayOrderId(refundOrder)); | |||||
| payOrderQ.setOrderId(refundOrder.getComposeOrderId()); | |||||
| payOrderQ.setPayOrderStatus(EnumPayStatus.PAY_STATUS_SUCCESS.getCode()); | payOrderQ.setPayOrderStatus(EnumPayStatus.PAY_STATUS_SUCCESS.getCode()); | ||||
| payOrderQ.setPosPayOrderId(posPayOrderId); | payOrderQ.setPosPayOrderId(posPayOrderId); | ||||
| @@ -2374,7 +2375,7 @@ public class PosServiceImpl implements PosService { | |||||
| refundPayOrder.setTenantId(buUser.getTenantId()); | refundPayOrder.setTenantId(buUser.getTenantId()); | ||||
| refundPayOrder.updateTenantInfo(buUser); | refundPayOrder.updateTenantInfo(buUser); | ||||
| refundPayOrder.setCUserId(memId); | refundPayOrder.setCUserId(memId); | ||||
| refundPayOrder.setOrderId(refundOrder.getId()); | |||||
| refundPayOrder.setOrderId(refundOrder.getComposeOrderId()); | |||||
| refundPayOrder.setCreateTime(curDate); | refundPayOrder.setCreateTime(curDate); | ||||
| refundPayOrder.setUpdateTime(curDate); | refundPayOrder.setUpdateTime(curDate); | ||||
| refundPayOrder.setRefundTimeStart(curDate); | refundPayOrder.setRefundTimeStart(curDate); | ||||
| @@ -2434,6 +2435,17 @@ public class PosServiceImpl implements PosService { | |||||
| throw new MallinkException(ErrorCode.POS_ORDER_HAD_SYNCED); | throw new MallinkException(ErrorCode.POS_ORDER_HAD_SYNCED); | ||||
| } | } | ||||
| final IdWorker idWorker = IdWorker.get(); | 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(); | Long orderId = idWorker.nextId(); | ||||
| WxOrder order = new WxOrder(); | WxOrder order = new WxOrder(); | ||||
| @@ -2455,7 +2467,7 @@ public class PosServiceImpl implements PosService { | |||||
| order.setPosOrderId(posOrderId); | order.setPosOrderId(posOrderId); | ||||
| order.setPosOrderCreateTime(posOrderTime.getTime()); | order.setPosOrderCreateTime(posOrderTime.getTime()); | ||||
| order.setPosOrderCreateSn(orderCreateSn); | order.setPosOrderCreateSn(orderCreateSn); | ||||
| order.setComposeOrderId(0L); | |||||
| order.setComposeOrderId(border.getId()); | |||||
| order.setComposeOrderType(EnumComposeOrder.SINGLE.getCode()); | order.setComposeOrderType(EnumComposeOrder.SINGLE.getCode()); | ||||
| order.setCouponNumber(1); | order.setCouponNumber(1); | ||||
| try { | try { | ||||
| @@ -2518,6 +2530,19 @@ public class PosServiceImpl implements PosService { | |||||
| // 3. 创建退款订单 | // 3. 创建退款订单 | ||||
| final IdWorker idWorker = IdWorker.get(); | 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(); | Long orderId = idWorker.nextId(); | ||||
| WxOrder order = new WxOrder(); | WxOrder order = new WxOrder(); | ||||
| @@ -2539,7 +2564,7 @@ public class PosServiceImpl implements PosService { | |||||
| order.setPosOrderCreateTime(posOrderTime.getTime()); | order.setPosOrderCreateTime(posOrderTime.getTime()); | ||||
| order.setPosOrderCreateSn(orderCreateSn); | order.setPosOrderCreateSn(orderCreateSn); | ||||
| order.setOrderNumber(orderQ.getOrderNumber()); | order.setOrderNumber(orderQ.getOrderNumber()); | ||||
| order.setComposeOrderId(0L); | |||||
| order.setComposeOrderId(border.getId()); | |||||
| order.setComposeOrderType(EnumComposeOrder.SINGLE.getCode()); | order.setComposeOrderType(EnumComposeOrder.SINGLE.getCode()); | ||||
| order.setCouponNumber(1); | order.setCouponNumber(1); | ||||
| @@ -280,7 +280,7 @@ public class OrderExpiringSchedule { | |||||
| public boolean wxPaySuccess(WxOrder order,boolean autoReHandle,EnumPayWay payWay) throws MallinkException, Exception { | public boolean wxPaySuccess(WxOrder order,boolean autoReHandle,EnumPayWay payWay) throws MallinkException, Exception { | ||||
| WxPayOrder payOrderq = new WxPayOrder(); | WxPayOrder payOrderq = new WxPayOrder(); | ||||
| payOrderq.setOrderId(EnumComposeOrder.getPayOrderId(order)); | |||||
| payOrderq.setOrderId(order.getComposeOrderId()); | |||||
| payOrderq.setTenantId(order.getTenantId()); | payOrderq.setTenantId(order.getTenantId()); | ||||
| List<WxPayOrder> payorderlist = wxPayOrderMapper.findList(payOrderq); | List<WxPayOrder> payorderlist = wxPayOrderMapper.findList(payOrderq); | ||||
| if (null == payorderlist || payorderlist.size() <=0 ) { | if (null == payorderlist || payorderlist.size() <=0 ) { | ||||
| @@ -422,7 +422,7 @@ public class OrderExpiringSchedule { | |||||
| WxPayOrder payOrderQ = new WxPayOrder(); | WxPayOrder payOrderQ = new WxPayOrder(); | ||||
| payOrderQ.updateTenantInfo(order); | payOrderQ.updateTenantInfo(order); | ||||
| payOrderQ.setCUserId(order.getCUserId()); | payOrderQ.setCUserId(order.getCUserId()); | ||||
| payOrderQ.setOrderId(EnumComposeOrder.getPayOrderId(order)); | |||||
| payOrderQ.setOrderId(order.getComposeOrderId()); | |||||
| //payOrderQ.setPayOrderStatus(EnumPayStatus.PAY_STATUS_SUCCESS.getCode()); | //payOrderQ.setPayOrderStatus(EnumPayStatus.PAY_STATUS_SUCCESS.getCode()); | ||||
| WxPayOrder payOrder = null; | WxPayOrder payOrder = null; | ||||
| @@ -38,10 +38,6 @@ public enum EnumComposeOrder { | |||||
| return message; | return message; | ||||
| } | } | ||||
| public static Long getPayOrderId(WxOrder order) { | |||||
| return order.getComposeOrderId(); | |||||
| } | |||||
| //是单个支付还是组合支付 | //是单个支付还是组合支付 | ||||
| public static boolean isSingle(Integer type) { | public static boolean isSingle(Integer type) { | ||||
| if (type.intValue() == SINGLE.getCode().intValue()) { | if (type.intValue() == SINGLE.getCode().intValue()) { | ||||
| @@ -1944,7 +1944,7 @@ public class WxCouponOrderServiceImpl implements WxCouponOrderService { | |||||
| WxPayOrder payOrder = null; | WxPayOrder payOrder = null; | ||||
| WxPayOrder payOrderQ = new WxPayOrder(); | WxPayOrder payOrderQ = new WxPayOrder(); | ||||
| payOrderQ.updateTenantInfo(couponOrder); | payOrderQ.updateTenantInfo(couponOrder); | ||||
| payOrderQ.setOrderId(EnumComposeOrder.getPayOrderId(order)); | |||||
| payOrderQ.setOrderId(order.getComposeOrderId()); | |||||
| payOrderQ.setPayOrderStatus(EnumPayStatus.PAY_STATUS_SUCCESS.getCode()); | payOrderQ.setPayOrderStatus(EnumPayStatus.PAY_STATUS_SUCCESS.getCode()); | ||||
| List<WxPayOrder> payList = wxPayOrderMapper.selectList(new QueryWrapper(payOrderQ)); | List<WxPayOrder> payList = wxPayOrderMapper.selectList(new QueryWrapper(payOrderQ)); | ||||
| if (payList.size() > 0) { | if (payList.size() > 0) { | ||||
| @@ -876,6 +876,19 @@ public class WxOrderServiceImpl implements WxOrderService { | |||||
| int payment = totalFee.multiply(new BigDecimal(100)).intValue(); | int payment = totalFee.multiply(new BigDecimal(100)).intValue(); | ||||
| final IdWorker idWorker = IdWorker.get(); | 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(); | Long orderNumber = idWorker.nextId(); | ||||
| // body | // body | ||||
| @@ -895,9 +908,10 @@ public class WxOrderServiceImpl implements WxOrderService { | |||||
| record.setDetail(bodyStr); | record.setDetail(bodyStr); | ||||
| record.setCreateDate(curr); | record.setCreateDate(curr); | ||||
| record.setUpdateDate(curr); | record.setUpdateDate(curr); | ||||
| record.setComposeOrderId(0L); | |||||
| record.setComposeOrderId(order.getId()); | |||||
| record.setComposeOrderType(EnumComposeOrder.SINGLE.getCode()); | record.setComposeOrderType(EnumComposeOrder.SINGLE.getCode()); | ||||
| record.setCouponNumber(1); | record.setCouponNumber(1); | ||||
| try { | try { | ||||
| // 保存订单 | // 保存订单 | ||||
| @@ -934,6 +948,19 @@ public class WxOrderServiceImpl implements WxOrderService { | |||||
| Date curr = new Date(); | Date curr = new Date(); | ||||
| final IdWorker idWorker = IdWorker.get(); | 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(); | Long orderNumber = idWorker.nextId(); | ||||
| // body | // body | ||||
| @@ -956,7 +983,7 @@ public class WxOrderServiceImpl implements WxOrderService { | |||||
| record.setDetail(bodyStr); | record.setDetail(bodyStr); | ||||
| record.setCreateDate(curr); | record.setCreateDate(curr); | ||||
| record.setUpdateDate(curr); | record.setUpdateDate(curr); | ||||
| record.setComposeOrderId(0L); | |||||
| record.setComposeOrderId(order.getId()); | |||||
| record.setComposeOrderType(EnumComposeOrder.SINGLE.getCode()); | record.setComposeOrderType(EnumComposeOrder.SINGLE.getCode()); | ||||
| record.setCouponNumber(1); | record.setCouponNumber(1); | ||||
| @@ -976,6 +1003,19 @@ public class WxOrderServiceImpl implements WxOrderService { | |||||
| Date curr = new Date(); | Date curr = new Date(); | ||||
| final IdWorker idWorker = IdWorker.get(); | 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(); | Long orderNumber = idWorker.nextId(); | ||||
| // body | // body | ||||
| @@ -997,7 +1037,7 @@ public class WxOrderServiceImpl implements WxOrderService { | |||||
| record.setDetail(bodyStr); | record.setDetail(bodyStr); | ||||
| record.setCreateDate(curr); | record.setCreateDate(curr); | ||||
| record.setUpdateDate(curr); | record.setUpdateDate(curr); | ||||
| record.setComposeOrderId(0L); | |||||
| record.setComposeOrderId(order.getId()); | |||||
| record.setComposeOrderType(EnumComposeOrder.SINGLE.getCode()); | record.setComposeOrderType(EnumComposeOrder.SINGLE.getCode()); | ||||
| record.setCouponNumber(1); | record.setCouponNumber(1); | ||||
| try { | try { | ||||
| @@ -1037,7 +1077,7 @@ public class WxOrderServiceImpl implements WxOrderService { | |||||
| try { | try { | ||||
| WxPayOrder payOrderQ = new WxPayOrder(); | WxPayOrder payOrderQ = new WxPayOrder(); | ||||
| payOrderQ.updateTenantInfo(order); | payOrderQ.updateTenantInfo(order); | ||||
| payOrderQ.setOrderId(EnumComposeOrder.getPayOrderId(order)); | |||||
| payOrderQ.setOrderId(order.getComposeOrderId()); | |||||
| payOrderQ.setPayOrderStatus(EnumPayStatus.PAY_STATUS_SUCCESS.getCode()); | payOrderQ.setPayOrderStatus(EnumPayStatus.PAY_STATUS_SUCCESS.getCode()); | ||||
| payOrder = wxPayOrderMapper.selectOne(new QueryWrapper(payOrderQ)); | payOrder = wxPayOrderMapper.selectOne(new QueryWrapper(payOrderQ)); | ||||
| } catch (Exception e) { | } catch (Exception e) { | ||||
| @@ -475,7 +475,7 @@ public class WxPayOrderServiceImpl implements WxPayOrderService { | |||||
| Date currentDate = new Date(); | Date currentDate = new Date(); | ||||
| WxPayOrder pq = new WxPayOrder(); | WxPayOrder pq = new WxPayOrder(); | ||||
| pq.updateTenantInfo(order); | pq.updateTenantInfo(order); | ||||
| pq.setOrderId(EnumComposeOrder.getPayOrderId(order)); | |||||
| pq.setOrderId(order.getComposeOrderId()); | |||||
| List<WxPayOrder> list = wxPayOrderMapper.findList(pq); | List<WxPayOrder> list = wxPayOrderMapper.findList(pq); | ||||
| String payOrderNo = ""; | String payOrderNo = ""; | ||||
| if (list.size() <= 0) { | if (list.size() <= 0) { | ||||
| @@ -1107,7 +1107,7 @@ public class WxPayOrderServiceImpl implements WxPayOrderService { | |||||
| private void doCouponPayOrder(WxMerchantBUser user, WxPayOrder record, WxOrder order,EnumPayWay payWay) { | private void doCouponPayOrder(WxMerchantBUser user, WxPayOrder record, WxOrder order,EnumPayWay payWay) { | ||||
| // B端收银台核销券处理 | // B端收银台核销券处理 | ||||
| WxPayOrder payOrderQ = new WxPayOrder(); | WxPayOrder payOrderQ = new WxPayOrder(); | ||||
| payOrderQ.setOrderId(EnumComposeOrder.getPayOrderId(order)); | |||||
| payOrderQ.setOrderId(order.getComposeOrderId()); | |||||
| payOrderQ.setCUserId(record.getCUserId()); | payOrderQ.setCUserId(record.getCUserId()); | ||||
| payOrderQ.setPayFrom(EnumPayFrom.INSIDE_B.getCode()); | payOrderQ.setPayFrom(EnumPayFrom.INSIDE_B.getCode()); | ||||
| payOrderQ.setPayOrderStatus(EnumPayStatus.PAY_STATUS_WAIT.getCode()); | payOrderQ.setPayOrderStatus(EnumPayStatus.PAY_STATUS_WAIT.getCode()); | ||||
| @@ -1118,7 +1118,7 @@ public class WxPayOrderServiceImpl implements WxPayOrderService { | |||||
| try { | try { | ||||
| WxPayOrder payOrderCoupon = new WxPayOrder(); | WxPayOrder payOrderCoupon = new WxPayOrder(); | ||||
| payOrderCoupon.setId(unPayOrder.getId()); | payOrderCoupon.setId(unPayOrder.getId()); | ||||
| payOrderCoupon.setOrderId(EnumComposeOrder.getPayOrderId(order)); | |||||
| payOrderCoupon.setOrderId(order.getComposeOrderId()); | |||||
| payOrderCoupon.setPayOrderStatus(EnumPayStatus.PAY_STATUS_SUCCESS.getCode()); | payOrderCoupon.setPayOrderStatus(EnumPayStatus.PAY_STATUS_SUCCESS.getCode()); | ||||
| wxPayOrderMapper.updateById(payOrderCoupon); | wxPayOrderMapper.updateById(payOrderCoupon); | ||||
| } catch (Exception e) { | } catch (Exception e) { | ||||
| @@ -33,6 +33,7 @@ import org.apache.commons.lang3.StringUtils; | |||||
| import org.slf4j.Logger; | import org.slf4j.Logger; | ||||
| import org.slf4j.LoggerFactory; | import org.slf4j.LoggerFactory; | ||||
| import org.springframework.beans.factory.annotation.Autowired; | import org.springframework.beans.factory.annotation.Autowired; | ||||
| import org.springframework.context.annotation.Lazy; | |||||
| import org.springframework.stereotype.Service; | import org.springframework.stereotype.Service; | ||||
| import org.springframework.transaction.annotation.Propagation; | import org.springframework.transaction.annotation.Propagation; | ||||
| import org.springframework.transaction.annotation.Transactional; | import org.springframework.transaction.annotation.Transactional; | ||||
| @@ -58,6 +59,7 @@ public class WxRefundOrderServiceImpl implements WxRefundOrderService { | |||||
| @Autowired | @Autowired | ||||
| WxPayAccountMapper wxPayAccountMapper; | WxPayAccountMapper wxPayAccountMapper; | ||||
| @Lazy | |||||
| @Autowired | @Autowired | ||||
| WxOrderService wxOrderService; | WxOrderService wxOrderService; | ||||
| @@ -88,6 +90,9 @@ public class WxRefundOrderServiceImpl implements WxRefundOrderService { | |||||
| @Autowired | @Autowired | ||||
| PayServiceFactory payServiceFactory; | PayServiceFactory payServiceFactory; | ||||
| @Autowired | |||||
| WxBatchOrderMapper wxBatchOrderMapper; | |||||
| private boolean isMerchantOrder(WxOrder wxOrder, Long merchantId) { | private boolean isMerchantOrder(WxOrder wxOrder, Long merchantId) { | ||||
| if (wxOrder.getType().equals(EnumOrderType.COUPON.getCode())) { | if (wxOrder.getType().equals(EnumOrderType.COUPON.getCode())) { | ||||
| WxCoupon wxCoupon = wxCouponMapper.selectById(wxOrder.getProductId(),wxOrder.getTenantId()); | WxCoupon wxCoupon = wxCouponMapper.selectById(wxOrder.getProductId(),wxOrder.getTenantId()); | ||||
| @@ -179,7 +184,7 @@ public class WxRefundOrderServiceImpl implements WxRefundOrderService { | |||||
| WxPayOrder payOrderQ = new WxPayOrder(); | WxPayOrder payOrderQ = new WxPayOrder(); | ||||
| payOrderQ.updateTenantInfo(wxCouponOrder); | payOrderQ.updateTenantInfo(wxCouponOrder); | ||||
| payOrderQ.setCUserId(wxOrder.getCUserId()); | payOrderQ.setCUserId(wxOrder.getCUserId()); | ||||
| payOrderQ.setOrderId(EnumComposeOrder.getPayOrderId(wxOrder)); | |||||
| payOrderQ.setOrderId(wxOrder.getComposeOrderId()); | |||||
| payOrderQ.setPayOrderStatus(EnumPayStatus.PAY_STATUS_SUCCESS.getCode()); | payOrderQ.setPayOrderStatus(EnumPayStatus.PAY_STATUS_SUCCESS.getCode()); | ||||
| WxPayOrder payOrder = null; | WxPayOrder payOrder = null; | ||||
| @@ -212,6 +217,17 @@ public class WxRefundOrderServiceImpl implements WxRefundOrderService { | |||||
| Date currentDate = new Date(); | 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 | // 创建 refund Order | ||||
| WxOrder rOrder = new WxOrder(); | WxOrder rOrder = new WxOrder(); | ||||
| rOrder.setId(refundOrderId); | rOrder.setId(refundOrderId); | ||||
| @@ -235,7 +251,7 @@ public class WxRefundOrderServiceImpl implements WxRefundOrderService { | |||||
| rOrder.setOrderStatus(EnumOrderStatus.ORDER_STATUS_PENDING_REFUND.getCode()); | rOrder.setOrderStatus(EnumOrderStatus.ORDER_STATUS_PENDING_REFUND.getCode()); | ||||
| rOrder.setCreateDate(currentDate); | rOrder.setCreateDate(currentDate); | ||||
| rOrder.setUpdateDate(currentDate); | rOrder.setUpdateDate(currentDate); | ||||
| rOrder.setComposeOrderId(wxOrder.getComposeOrderId()); | |||||
| rOrder.setComposeOrderId(order.getId()); | |||||
| rOrder.setComposeOrderType(wxOrder.getComposeOrderType()); | rOrder.setComposeOrderType(wxOrder.getComposeOrderType()); | ||||
| rOrder.setCouponNumber(wxOrder.getCouponNumber()); | rOrder.setCouponNumber(wxOrder.getCouponNumber()); | ||||
| try { | try { | ||||
| @@ -373,6 +389,17 @@ public class WxRefundOrderServiceImpl implements WxRefundOrderService { | |||||
| Date currentDate = new Date(); | 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 | // 创建 refund Order | ||||
| WxOrder rOrder = new WxOrder(); | WxOrder rOrder = new WxOrder(); | ||||
| rOrder.setId(refundOrderId); | rOrder.setId(refundOrderId); | ||||
| @@ -383,12 +410,13 @@ public class WxRefundOrderServiceImpl implements WxRefundOrderService { | |||||
| if (payType == EnumPayType.PAY_B_REFUND) { | if (payType == EnumPayType.PAY_B_REFUND) { | ||||
| rOrder.setProductId(bUserId); //B端发起退款后存B端用户ID在此 | rOrder.setProductId(bUserId); //B端发起退款后存B端用户ID在此 | ||||
| } | } | ||||
| rOrder.setPayVendor(wxOrder.getPayVendor()); | |||||
| rOrder.setPaymentType(payType.getCode()); | rOrder.setPaymentType(payType.getCode()); | ||||
| rOrder.setPayment(wxOrder.getPayment()); | rOrder.setPayment(wxOrder.getPayment()); | ||||
| rOrder.setOrderStatus(EnumOrderStatus.ORDER_STATUS_PENDING_REFUND.getCode()); | rOrder.setOrderStatus(EnumOrderStatus.ORDER_STATUS_PENDING_REFUND.getCode()); | ||||
| rOrder.setCreateDate(currentDate); | rOrder.setCreateDate(currentDate); | ||||
| rOrder.setUpdateDate(currentDate); | rOrder.setUpdateDate(currentDate); | ||||
| rOrder.setComposeOrderId(0L); | |||||
| rOrder.setComposeOrderId(order.getId()); | |||||
| rOrder.setComposeOrderType(EnumComposeOrder.SINGLE.getCode()); | rOrder.setComposeOrderType(EnumComposeOrder.SINGLE.getCode()); | ||||
| rOrder.setCouponNumber(1); | rOrder.setCouponNumber(1); | ||||
| try { | try { | ||||
| @@ -402,7 +430,7 @@ public class WxRefundOrderServiceImpl implements WxRefundOrderService { | |||||
| WxPayOrder payOrderQ = new WxPayOrder(); | WxPayOrder payOrderQ = new WxPayOrder(); | ||||
| payOrderQ.updateTenantInfo(wxOrder); | payOrderQ.updateTenantInfo(wxOrder); | ||||
| payOrderQ.setCUserId(wxOrder.getCUserId()); | payOrderQ.setCUserId(wxOrder.getCUserId()); | ||||
| payOrderQ.setOrderId(EnumComposeOrder.getPayOrderId(wxOrder)); | |||||
| payOrderQ.setOrderId(wxOrder.getComposeOrderId()); | |||||
| payOrderQ.setPayOrderStatus(EnumPayStatus.PAY_STATUS_SUCCESS.getCode()); | payOrderQ.setPayOrderStatus(EnumPayStatus.PAY_STATUS_SUCCESS.getCode()); | ||||
| WxPayOrder payOrder = null; | WxPayOrder payOrder = null; | ||||
| @@ -624,7 +652,7 @@ public class WxRefundOrderServiceImpl implements WxRefundOrderService { | |||||
| WxPayOrder payOrderQ = new WxPayOrder(); | WxPayOrder payOrderQ = new WxPayOrder(); | ||||
| payOrderQ.updateTenantInfo(wxOrder); | payOrderQ.updateTenantInfo(wxOrder); | ||||
| payOrderQ.setCUserId(wxOrder.getCUserId()); | payOrderQ.setCUserId(wxOrder.getCUserId()); | ||||
| payOrderQ.setOrderId(EnumComposeOrder.getPayOrderId(wxOrder)); | |||||
| payOrderQ.setOrderId(wxOrder.getComposeOrderId()); | |||||
| //payOrderQ.setPayOrderStatus(EnumPayStatus.PAY_STATUS_SUCCESS.getCode()); | //payOrderQ.setPayOrderStatus(EnumPayStatus.PAY_STATUS_SUCCESS.getCode()); | ||||
| WxPayOrder payOrder = null; | WxPayOrder payOrder = null; | ||||