فهرست منبع

支付链接bugfix

chao 3 سال پیش
والد
کامیت
d45c888f85

+ 2 - 1
backup.sql

@@ -54,7 +54,8 @@ ADD COLUMN `updateTime` varchar(50) DEFAULT NULL COMMENT '更新时间' AFTER `c
 -- =========== 超级会员S_VIP
 -- 修改 cm_order_pay_link 支付链接
 ALTER TABLE `cm_order_pay_link`
-    ADD COLUMN `vipRecordId` bigint(11) DEFAULT NULL COMMENT '会员购买记录Id' AFTER `orderId`;
+    ADD COLUMN `vipRecordId` bigint(11) DEFAULT NULL COMMENT '会员购买记录Id' AFTER `orderId`,
+    ADD COLUMN `vipMonth` bigint(11) DEFAULT NULL COMMENT '会员购买记录Id' AFTER `vipRecordId`;
 
 -- 修改 cm_discern_receipt,cm_receipt_order_relation 收款表
 ALTER TABLE `cm_discern_receipt`

+ 0 - 4
src/main/java/com/caimei365/order/model/vo/OrderPayLinkVo.java

@@ -25,10 +25,6 @@ public class OrderPayLinkVo implements Serializable {
      * 会员购买记录Id
      */
     private Integer vipRecordId;
-    /**
-     * 会员套餐id
-     */
-    private Integer vipId;
     /**
      * 会员套餐包月数
      */

+ 12 - 6
src/main/java/com/caimei365/order/service/impl/PayOrderServiceImpl.java

@@ -314,8 +314,12 @@ public class PayOrderServiceImpl implements PayOrderService {
         if (null != payLinkDto.getVipRecordId()) {
             // 获取会员套餐记录
             VipRecordBo record = payOrderMapper.getVipPackageRecord(payLinkDto.getVipRecordId());
-            orderPayLink.setVipId(record.getPackageId());
-            orderPayLink.setUnpaidAmount(record.getPrice());
+            // 获取会员套餐价格
+            Double price = payOrderMapper.getVipPackagePriceById(record.getPackageId());
+            // 超级会员套餐时长(月)
+            Integer mouth = payOrderMapper.getVipPackageDurationById(record.getPackageId());
+            orderPayLink.setVipMonth(mouth);
+            orderPayLink.setUnpaidAmount(price);
         } else {
             orderPayLink.setUnpaidAmount(payLinkDto.getUnpaidAmount());
         }
@@ -362,9 +366,12 @@ public class PayOrderServiceImpl implements PayOrderService {
         // 链接状态,0成功
         int code = 0;
         String userName = "";
+        // 链接类型:1订单,2超级会员
+        int type = 0;
         // 订单支付记录
         List<DiscernReceiptVo> discernReceiptList = null;
         if (null != orderPayLink.getOrderId()) {
+            type = 1;
             // 订单信息
             OrderVo order = orderCommonMapper.getOrderByOrderId(orderPayLink.getOrderId());
             // 支付记录
@@ -372,9 +379,7 @@ public class PayOrderServiceImpl implements PayOrderService {
             // 机构信息
             userName = baseMapper.getUserNameByUserId(order.getUserId());
         } else {
-            // 超级会员套餐时长(月)
-            Integer mouth = payOrderMapper.getVipPackageDurationById(orderPayLink.getVipId());
-            orderPayLink.setVipMonth(mouth);
+            type = 2;
             // 获取会员套餐记录
             VipRecordBo record = payOrderMapper.getVipPackageRecord(orderPayLink.getVipRecordId());
             // 机构信息
@@ -399,7 +404,8 @@ public class PayOrderServiceImpl implements PayOrderService {
         }
         SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
         String time = dateFormat.format(orderPayLink.getEffectiveTime());
-        Map<String, Object> map = new HashMap<>(3);
+        Map<String, Object> map = new HashMap<>(5);
+        map.put("type", type);
         map.put("orderPayLink", orderPayLink);
         map.put("userName", userName);
         map.put("code", code);

+ 2 - 2
src/main/resources/mapper/PayOrderMapper.xml

@@ -30,8 +30,8 @@
         WHERE userID = #{userId}
     </update>
     <insert id="insertOrderPayLink" keyColumn="id" keyProperty="id"  parameterType="com.caimei365.order.model.vo.OrderPayLinkVo" useGeneratedKeys="true">
-        INSERT INTO cm_order_pay_link (orderId, vipRecordId, linkLogo, unpaidAmount, generateTime, effectiveTime, payStatus, payType, delFlag)
-        VALUES (#{orderId}, #{vipRecordId}, #{linkLogo}, #{unpaidAmount}, #{generateTime}, #{effectiveTime}, #{payStatus}, #{payType}, #{delFlag})
+        INSERT INTO cm_order_pay_link (orderId, vipRecordId, vipMonth, linkLogo, unpaidAmount, generateTime, effectiveTime, payStatus, payType, delFlag)
+        VALUES (#{orderId}, #{vipRecordId}, #{vipMonth}, #{linkLogo}, #{unpaidAmount}, #{generateTime}, #{effectiveTime}, #{payStatus}, #{payType}, #{delFlag})
     </insert>
     <insert id="insertSplitAccount" keyColumn="id" keyProperty="id"  parameterType="com.caimei365.order.model.po.SplitAccountPo">
         INSERT INTO cm_split_account (orderId, productId, orderProductId,shopId, type, subUserNo, splitAccount,