Explorar o código

会员添加历史数据字段

刘俊驰 hai 4 meses
pai
achega
70c4cf1d1e

+ 10 - 4
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/VipCardRecordServiceImpl.java

@@ -511,7 +511,6 @@ public class VipCardRecordServiceImpl extends ServiceImpl<VipCardRecordDao, VipC
 
 
         EVipType addVipType = addVipCardRecord.getVipType();
-
         Date now = new Date();
         Date startDate = now;
         // 没有会员信息
@@ -564,13 +563,20 @@ public class VipCardRecordServiceImpl extends ServiceImpl<VipCardRecordDao, VipC
                 if (vipCardRecord.getStartTime().before(now)) {
                     VipCardRecord record = JSON.parseObject(JSON.toJSONString(vipCardRecord), VipCardRecord.class);
                     record.setStartTime(vipCardRecord.getStartTime());
-                    record.setEndTime(addTime(new Date(),PeriodEnum.DAY,-1,1));
+                    record.setEndTime(addTime(now,PeriodEnum.DAY,-1,1));
                     record.setEfficientFlag(true);
+                    if (record.getStartTime().after(record.getEndTime())) {
+                        record.setEfficientFlag(false);
+                    }
                     record.setDeductionStatus(EDeductionStatus.EXPIRED);
                     record.setDisplayFlag(false);
                     record.setVersion(2);
                     save(record);
-                    vipCardRecord.setStartTime(addTime(new Date(),PeriodEnum.DAY,0,0));
+                    if (newRecord.getStartTime().after(now)) {
+                        vipCardRecord.setStartTime(addTime(now,PeriodEnum.DAY,0,0));
+                    } else {
+                        vipCardRecord.setStartTime(addTime(now,PeriodEnum.DAY,1,0));
+                    }
                 }
 
                 VipCardRecord record = new VipCardRecord();
@@ -657,7 +663,7 @@ public class VipCardRecordServiceImpl extends ServiceImpl<VipCardRecordDao, VipC
         vipCardRecord.setEndTime(addTime(record.getEndTime(), PeriodEnum.DAY, -days,1));
         vipCardRecord.setDeductionBy(result.getCreateBy());
         vipCardRecord.setDeductionStatus(EDeductionStatus.DEDUCT);
-        if (record.getStartTime().after(record.getEndTime())) {
+        if (record.getStartTime().after(vipCardRecord.getEndTime())) {
             vipCardRecord.setEfficientFlag(false);
         }
         this.updateById(vipCardRecord);

+ 2 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/wrapper/VipCardRecordWrapper.java

@@ -244,6 +244,8 @@ public class VipCardRecordWrapper {
         @ApiModelProperty("会员类型 VIP,SVIP")
         private EVipType vipType;
 
+        @ApiModelProperty("版本")
+        private Integer version;
 
         @ApiModelProperty("订单号")
         private String orderNo;

+ 2 - 1
cooleshow-user/user-biz/src/main/resources/config/mybatis/VipCardRecordMapper.xml

@@ -191,6 +191,7 @@
         select t.id_,
         t.user_id_,
         t.order_no_,
+        t.version_,
         t.source_type_,
         t.client_type_,
         t.vip_type_,
@@ -224,7 +225,7 @@
                 and t.vip_type_ = #{param.vipType}
             </if>
             <if test="param.deductionStatus != null">
-                and t.deduction_status_ = #{param.deductionStatus}
+                and t.deduction_status_ = #{param.deductionStatus} and t.version_ = 2
             </if>
             <if test="param.keyword != null and param.keyword != ''">
                 and (t1.username_ like CONCAT('%', #{param.keyword}, '%')