Explorar o código

fix 考试地点

he2802 %!s(int64=3) %!d(string=hai) anos
pai
achega
fc0d93deae

+ 23 - 2
zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/service/impl/ClassGradeUserServiceImpl.java

@@ -829,7 +829,7 @@ public class ClassGradeUserServiceImpl extends ServiceImpl<ClassGradeUserMapper,
             classPeriodUserVos.setExamPending(classPeriodUserVos.getExamNum()-classPeriodUserVos.getExamPass()-classPeriodUserVos.getExamCheat());
             //當前班級學員審核狀態 -1不可审核 0待審  1未通过 2通过
             Integer gradePeriodStatus = 0; //班级里的审核状态字段,保持一致 0 未通过 1通过 2待审核 -1 不可审核
-            if(Validator.isEmpty(classPeriodStudentVo.getSecAllNum())||classPeriodStudentVo.getSecAllNum()==0){
+            /*if(Validator.isEmpty(classPeriodStudentVo.getSecAllNum())||classPeriodStudentVo.getSecAllNum()==0){
                 //空课程
                 classPeriodStudentVo.setAllStatus(-1);
                 gradePeriodStatus = -1;
@@ -849,7 +849,10 @@ public class ClassGradeUserServiceImpl extends ServiceImpl<ClassGradeUserMapper,
                     classPeriodStudentVo.setAllStatus(-1);
                     gradePeriodStatus = -1;
                 }
-            }
+            }*/
+            classPeriodStudentVo.setAllStatus(changePeriodStatus(classPeriodStudentVo.getPeriodStatus()));
+
+
 
             //更新班级学时状态l
             /*if(!gradePeriodStatus.equals(classPeriodStudentVo.getPeriodStatus())){
@@ -909,6 +912,24 @@ public class ClassGradeUserServiceImpl extends ServiceImpl<ClassGradeUserMapper,
         return classPeriodStudentVos;
     }
 
+    private Integer changePeriodStatus(Long gradePeriodStatus){
+        //當前班級學員審核狀態 -1不可审核 0待審  1未通过 2通过
+        //班级里的审核状态字段,保持一致 0 未通过 1通过 2待审核 -1 不可审核
+        if(gradePeriodStatus==0){
+            return 1;
+        }
+        else if(gradePeriodStatus==1){
+            return 2;
+        }
+        else if(gradePeriodStatus==2){
+            return 0;
+        }
+        else if(gradePeriodStatus==-1){
+            return -1;
+        }
+        return -100;
+    }
+
     @Override
     public List<UserPeriodExportVo> listUserStudyRecord(ClassGradeUserQueryBo bo) {
         //学习记录

+ 18 - 4
zhongzheng-system/src/main/java/com/zhongzheng/modules/order/service/impl/OrderServiceImpl.java

@@ -12,6 +12,8 @@ import com.zhongzheng.common.utils.DateUtils;
 import com.zhongzheng.common.utils.ServletUtils;
 import com.zhongzheng.modules.base.service.IProfileTpService;
 import com.zhongzheng.modules.base.service.IShoppingCartService;
+import com.zhongzheng.modules.course.service.ICourseBusinessService;
+import com.zhongzheng.modules.course.vo.CourseBusinessVo;
 import com.zhongzheng.modules.goods.domain.Goods;
 import com.zhongzheng.modules.goods.service.IGoodsService;
 import com.zhongzheng.modules.grade.bo.ClassGradeQueryBo;
@@ -95,6 +97,9 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
     @Autowired
     private IShoppingCartService iShoppingCartService;
 
+    @Autowired
+    private ICourseBusinessService iCourseBusinessService;
+
     @Autowired
     private RedisCache redisCache;
 
@@ -263,7 +268,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
                 redisLockEntity.setLockKey(RedisLockEntity.KEY_LOCK_GRADE);
                 redisLockEntity.setRequestId(requestId);
                 if(redisCache.lock(redisLockEntity)){
-                    arrangeGrade(goods.getGoodsName(),goods.getGoodsId(),orderGoods.getOrderGoodsId(),gradeId,add.getUserId(),out_trade_no);
+                    arrangeGrade(goods.getGoodsName(),goods.getGoodsId(),orderGoods.getOrderGoodsId(),gradeId,add.getUserId(),out_trade_no,goods.getBusinessId());
                     redisCache.unlockLua(redisLockEntity);
                 }
                 iOrderGoodsService.updateById(orderGoods);
@@ -362,7 +367,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
                 redisLockEntity.setLockKey(RedisLockEntity.KEY_LOCK_GRADE);
                 redisLockEntity.setRequestId(requestId);
                 if(redisCache.lock(redisLockEntity)){
-                    arrangeGrade(goods.getGoodsName(),goods.getGoodsId(),orderGoods.getOrderGoodsId(),gradeId,add.getUserId(),out_trade_no);
+                    arrangeGrade(goods.getGoodsName(),goods.getGoodsId(),orderGoods.getOrderGoodsId(),gradeId,add.getUserId(),out_trade_no,goods.getBusinessId());
                     redisCache.unlockLua(redisLockEntity);
                 }
                 iOrderGoodsService.updateById(orderGoods);
@@ -557,7 +562,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
      * @param gradeId
      * @return
      */
-    public boolean arrangeGrade(String goodsName,Long goodsId,Long orderGoodsId,Long gradeId,Long userId,String orderSn){
+    public boolean arrangeGrade(String goodsName,Long goodsId,Long orderGoodsId,Long gradeId,Long userId,String orderSn,Long businessId){
         //查询该学员有没有有效期内同商品班级 有就不允许添加
        /* Integer classNum = baseMapper.selectUserClass(goodsId,userId);
         if (classNum > 0){
@@ -615,10 +620,19 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
         }
 
         //创建新班级
+        CourseBusinessVo businessVo = iCourseBusinessService.queryById(businessId);
+        boolean isConfigTp = false; //商品是否有配置选班模板
+        if(Validator.isNotEmpty(businessVo)&&Validator.isNotEmpty(businessVo.getTemplateStatus())&&businessVo.getTemplateStatus()==1){
+            isConfigTp = true;
+        }
         ClassGrade classGrade = new ClassGrade();
         classGrade.setStudentUpper(ClassGrade.INIT_UPPER); //上限300
         classGrade.setCreateTime(DateUtils.getNowTime());
-        classGrade.setLearningStatus(2);//待定
+        if(isConfigTp){
+            classGrade.setLearningStatus(2);//待定
+        }else{
+            classGrade.setLearningStatus(1);//即刻
+        }
         classGrade.setUpdateTime(DateUtils.getNowTime());
         classGrade.setStatus(1);
         String gradeCode = ServletUtils.getEncoded("BJ");

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

@@ -217,21 +217,23 @@ public class UserSubscribeServiceImpl extends ServiceImpl<UserSubscribeMapper, U
         if (System.currentTimeMillis()/1000 > time){
             throw new CustomException("当前选择的考试时间已过期,请重新预约,选择未过期考试时间");
         }
-        ExamApplyQueryBo queryTimeBo = new ExamApplyQueryBo();
-        queryTimeBo.setApplyId(bo.getApplyId());
-        queryTimeBo.setStartTime(bo.getApplySiteStartTime().replace("-", ":"));
-        queryTimeBo.setEndTime(bo.getApplySiteEndTime().replace("-", ":"));
-        queryTimeBo.setExamTime(bo.getApplySiteExamTime());
-        queryTimeBo.setApplySiteAddress(bo.getApplySiteAddress());
-        //考点已申报人数
-        Long sitePeopleNum = examApplyMapper.sitePeopleNum(queryTimeBo);
-        String siteTimeJson = examApplyMapper.siteTimeJson(queryTimeBo);
-        if (Validator.isEmpty(siteTimeJson)) {
-            throw new CustomException("考点数据错误");
-        }
-        int num = findPeopleNum(queryTimeBo,siteTimeJson);
-        if(num==-1||num<=sitePeopleNum){
-            throw new CustomException("考点人数已满");
+        if(Validator.isNotEmpty(bo.getApplySiteAddress())){
+            ExamApplyQueryBo queryTimeBo = new ExamApplyQueryBo();
+            queryTimeBo.setApplyId(bo.getApplyId());
+            queryTimeBo.setStartTime(bo.getApplySiteStartTime().replace("-", ":"));
+            queryTimeBo.setEndTime(bo.getApplySiteEndTime().replace("-", ":"));
+            queryTimeBo.setExamTime(bo.getApplySiteExamTime());
+            queryTimeBo.setApplySiteAddress(bo.getApplySiteAddress());
+            //考点已申报人数
+            Long sitePeopleNum = examApplyMapper.sitePeopleNum(queryTimeBo);
+            String siteTimeJson = examApplyMapper.siteTimeJson(queryTimeBo);
+            if (Validator.isEmpty(siteTimeJson)) {
+                throw new CustomException("考点数据错误");
+            }
+            int num = findPeopleNum(queryTimeBo,siteTimeJson);
+            if(num==-1||num<=sitePeopleNum){
+                throw new CustomException("考点人数已满");
+            }
         }
         validEntityBeforeSave(add);
         add.setSubscribeStatus(1);