admin
2021-05-25 99f0b2a145ec1615143a1108db2b581c4723ab93
service-vip/src/main/java/com/ks/vip/service/remote/VipCenterServiceImpl.java
@@ -79,18 +79,19 @@
    @Override
    @Transactional(rollbackFor = Exception.class)
    public void saveVipCenter(String uid, Long gradeId, Integer validDays, Long orderId) {
    public void saveVipCenter(String uid, Long gradeId, Integer validHours, Long orderId) {
        VipCenterRecord record = new VipCenterRecord();
        VipCenter vipCenter = vipCenterMapper.selectForUpdate(uid);
        if (vipCenter == null) {
            vipCenter=new VipCenter();
            Date startTime = new Date();
            Date endTime = DateUtil.plusDayDate(validDays, startTime);
            Date endTime = new Date(startTime.getTime() + 1000 * 60 * 60L * validHours);
            vipCenter.setUid(uid);
            vipCenter.setGradeId(gradeId);
            vipCenter.setStartTime(startTime);
            vipCenter.setEndTime(DateUtil.plusDayDate(validDays, new Date()));
            vipCenter.setEndTime(endTime);
            vipCenter.setCreateTime(new Date());
            vipCenterMapper.insertSelective(vipCenter);
@@ -104,10 +105,12 @@
            long nowTime = java.lang.System.currentTimeMillis();
            if (gradeId.longValue() == oldGradeId.longValue() && vipCenter.getEndTime().getTime() > nowTime) {
                // 上次会员还未已结束
                endTime = DateUtil.plusDayDate(validDays, vipCenter.getEndTime());
                record.setStartTime(endTime);
                endTime = new Date(vipCenter.getEndTime().getTime() + 1000 * 60 * 60L * validHours);
            } else {
                startTime = new Date();
                endTime = DateUtil.plusDayDate(validDays, startTime);
                record.setStartTime(startTime);
                endTime = new Date(startTime.getTime() + 1000 * 60 * 60L * validHours);
            }
            vipCenter.setStartTime(startTime);
            vipCenter.setEndTime(endTime);
@@ -115,7 +118,6 @@
            vipCenter.setUpdateTime(new Date());
            vipCenterMapper.updateByPrimaryKeySelective(vipCenter);
            record.setStartTime(new Date());
            record.setEndTime(endTime);
        }
@@ -123,6 +125,7 @@
        record.setUid(uid);
        record.setGradeId(gradeId);
        record.setCreateTime(new Date());
        record.setState(1);
        vipCenterRecordService.insertSelective(record);
    }