소스 검색

fix 前培名称重复

he2802 3 년 전
부모
커밋
4e8de7ed42

+ 11 - 2
zhongzheng-system/src/main/java/com/zhongzheng/modules/base/service/impl/CertificateTpServiceImpl.java

@@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.google.zxing.BarcodeFormat;
 import com.google.zxing.common.BitMatrix;
 import com.google.zxing.qrcode.QRCodeWriter;
+import com.zhongzheng.common.core.redis.RedisCache;
 import com.zhongzheng.common.exception.CustomException;
 import com.zhongzheng.common.utils.DateUtils;
 import com.zhongzheng.common.utils.ServletUtils;
@@ -54,6 +55,7 @@ import java.awt.image.BufferedImage;
 import java.io.*;
 import java.util.*;
 import java.util.List;
+import java.util.concurrent.TimeUnit;
 import java.util.stream.Collectors;
 
 /**
@@ -78,6 +80,9 @@ public class CertificateTpServiceImpl extends ServiceImpl<CertificateTpMapper, C
     @Autowired
     private IUserStudyRecordService iUserStudyRecordService;
 
+    @Autowired
+    private RedisCache redisCache;
+
 
     @Value("${certificate.host}")
     private String CERTIFICATE_HOST;
@@ -144,6 +149,12 @@ public class CertificateTpServiceImpl extends ServiceImpl<CertificateTpMapper, C
      */
     @Override
     public String makeCertificatePhoto(ClassGradeUserQueryBo bo) {
+        String key = "Certificate-"+bo.getGoodsId()+"-"+bo.getUserId();
+        Long value = redisCache.getCacheObject(key);
+        if(Validator.isNotEmpty(value)){
+            return "";
+        }
+        redisCache.setCacheObject(key,1L,1, TimeUnit.MINUTES);//1分钟
         if(Validator.isEmpty(bo.getUserId())||Validator.isEmpty(bo.getGradeId())||Validator.isEmpty(bo.getGoodsId())){
             throw new CustomException("数据错误");
         }
@@ -159,8 +170,6 @@ public class CertificateTpServiceImpl extends ServiceImpl<CertificateTpMapper, C
         //获取章列表
         List<CourseChapterVo> chapterList =  iClassGradeUserService.findChapterList(bo);
         UserVo userVo = iUserService.queryById(bo.getUserId());
-        System.out.println("培训开始时间");
-        System.out.println(studyRecordVo.getFirstStartTime());
         if(Validator.isNotEmpty(goodsVo.getCertificateIds())){
             String[] s = goodsVo.getCertificateIds().split(",");
             List<Long> tpIds = new ArrayList<>();

+ 21 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/exam/service/impl/ExamApplyServiceImpl.java

@@ -1,12 +1,15 @@
 package com.zhongzheng.modules.exam.service.impl;
 
 import cn.hutool.core.bean.BeanUtil;
+import cn.hutool.core.lang.Validator;
 import cn.hutool.core.util.StrUtil;
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
+import com.zhongzheng.common.exception.CustomException;
 import com.zhongzheng.common.utils.DateUtils;
 import com.zhongzheng.common.utils.ServletUtils;
+import com.zhongzheng.modules.course.domain.Course;
 import com.zhongzheng.modules.exam.bo.*;
 import com.zhongzheng.modules.exam.domain.ExamBefore;
 import com.zhongzheng.modules.exam.vo.*;
@@ -144,6 +147,9 @@ public class ExamApplyServiceImpl extends ServiceImpl<ExamApplyMapper, ExamApply
      */
     private void validEntityBeforeSave(ExamApply entity){
         //TODO 做一些数据校验,如唯一约束
+        if(checkNameUnique(entity)){
+            throw new CustomException("名称重复");
+        }
     }
 
     @Override
@@ -276,4 +282,19 @@ public class ExamApplyServiceImpl extends ServiceImpl<ExamApplyMapper, ExamApply
         }
         return examUserApplySiteVos;
     }
+
+    private boolean checkNameUnique(ExamApply entity) {
+        ExamApply info = getOne(new LambdaQueryWrapper<ExamApply>()
+                .eq(ExamApply::getApplyName,entity.getApplyName()).ne(ExamApply::getStatus,-1).last("limit 1"));
+        if (Validator.isNotNull(info)) {
+            if(Validator.isNotEmpty(entity.getApplyId())){
+                if(entity.getApplyId().longValue() != info.getApplyId().longValue()){
+                    return true;
+                }
+            }else{
+                return true;
+            }
+        }
+        return false;
+    }
 }

+ 21 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/exam/service/impl/ExamBeforeServiceImpl.java

@@ -1,12 +1,15 @@
 package com.zhongzheng.modules.exam.service.impl;
 
 import cn.hutool.core.bean.BeanUtil;
+import cn.hutool.core.lang.Validator;
 import cn.hutool.core.util.StrUtil;
 import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
+import com.zhongzheng.common.exception.CustomException;
 import com.zhongzheng.common.utils.DateUtils;
 import com.zhongzheng.common.utils.ServletUtils;
 import com.zhongzheng.modules.collect.domain.CollectBank;
 import com.zhongzheng.modules.exam.bo.*;
+import com.zhongzheng.modules.exam.domain.ExamApply;
 import com.zhongzheng.modules.exam.vo.ExamNumberGoodsVo;
 import org.springframework.stereotype.Service;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -133,6 +136,9 @@ public class ExamBeforeServiceImpl extends ServiceImpl<ExamBeforeMapper, ExamBef
      */
     private void validEntityBeforeSave(ExamBefore entity){
         //TODO 做一些数据校验,如唯一约束
+        if(checkNameUnique(entity)){
+            throw new CustomException("名称重复");
+        }
     }
 
     @Override
@@ -173,4 +179,19 @@ public class ExamBeforeServiceImpl extends ServiceImpl<ExamBeforeMapper, ExamBef
         ExamBeforeVo examBeforeVo = baseMapper.verifyExamBeforeVo(examBeforeQueryBo);
         return examBeforeVo;
     }
+
+    private boolean checkNameUnique(ExamBefore entity) {
+        ExamBefore info = getOne(new LambdaQueryWrapper<ExamBefore>()
+                .eq(ExamBefore::getBeforeName,entity.getBeforeName()).ne(ExamBefore::getStatus,-1).last("limit 1"));
+        if (Validator.isNotNull(info)) {
+            if(Validator.isNotEmpty(entity.getBeforeId())){
+                if(entity.getBeforeId().longValue() != info.getBeforeId().longValue()){
+                    return true;
+                }
+            }else{
+                return true;
+            }
+        }
+        return false;
+    }
 }

+ 3 - 3
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/service/impl/UserSubscribeServiceImpl.java

@@ -626,7 +626,7 @@ public class UserSubscribeServiceImpl extends ServiceImpl<UserSubscribeMapper, U
 
             String goodsName = baseMapper.selectGoodsName(userSubscribeImport.getCode());
             if (!goodsName.equals(userSubscribeImport.getGoodsName())) {
-                userSubscribeImport.setCause("商品名称错误");
+                userSubscribeImport.setCause("商品名称跟编码不匹配");
                 userSubscribeImports.add(userSubscribeImport);
                 continue;
             }
@@ -866,7 +866,7 @@ public class UserSubscribeServiceImpl extends ServiceImpl<UserSubscribeMapper, U
 
             String goodsName = baseMapper.selectGoodsName(userSubscribeImport.getCode());
             if (!goodsName.equals(userSubscribeImport.getGoodsName())) {
-                userSubscribeImport.setCause("商品名称错误");
+                userSubscribeImport.setCause("商品名称跟编码不匹配");
                 userSubscribeImports.add(userSubscribeImport);
                 continue;
             }
@@ -1184,7 +1184,7 @@ public class UserSubscribeServiceImpl extends ServiceImpl<UserSubscribeMapper, U
 
             String goodsName = baseMapper.selectGoodsName(userSubscribeImport.getCode());
             if (!goodsName.equals(userSubscribeImport.getGoodsName())) {
-                userSubscribeImport.setCause("商品名称错误");
+                userSubscribeImport.setCause("商品名称跟编码不匹配");
                 userSubscribeImports.add(userSubscribeImport);
                 continue;
             }