he2802 3 年 前
コミット
5e59ef0a65

+ 5 - 5
zhongzheng-system/src/main/java/com/zhongzheng/modules/course/service/impl/CourseServiceImpl.java

@@ -235,8 +235,8 @@ public class CourseServiceImpl extends ServiceImpl<CourseMapper, Course> impleme
             subjectStudyRecordQueryBo.setUserId(bo.getUserId());
             subjectStudyRecordQueryBo.setGradeId(goodsPeriodVo.getGradeId());
             //学时审核状态
-            List<SubjectStudyRecordVo> subjectStudyRecordVos = iUserStudyRecordService.listSubject(subjectStudyRecordQueryBo);
-            if (!CollectionUtils.isEmpty(subjectStudyRecordVos)) {
+       //     List<SubjectStudyRecordVo> subjectStudyRecordVos = iUserStudyRecordService.listSubject(subjectStudyRecordQueryBo);
+            /*if (!CollectionUtils.isEmpty(subjectStudyRecordVos)) {
                 for (SubjectStudyRecordVo subjectStudyRecordVo : subjectStudyRecordVos) {
                     secLong = new BigDecimal(secLong.toString()).add(new BigDecimal(subjectStudyRecordVo.getSectionNum().toString())).longValue();
                     studyLong = new BigDecimal(studyLong.toString()).add(new BigDecimal(subjectStudyRecordVo.getRecordNum().toString())).longValue();
@@ -257,10 +257,10 @@ public class CourseServiceImpl extends ServiceImpl<CourseMapper, Course> impleme
                 }
             }else {
                 goodsPeriodVo.setPeriodStatus(-1L);
-            }
-            if (goodsPeriodVo.getRebuildNum() > 0){
+            }*/
+            /*if (goodsPeriodVo.getRebuildNum() > 0){
                 goodsPeriodVo.setPeriodStatus(3L);
-            }
+            }*/
         }
         return goodsPeriodVos;
     }

+ 26 - 5
zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/service/impl/UserPeriodServiceImpl.java

@@ -159,8 +159,27 @@ public class UserPeriodServiceImpl extends ServiceImpl<UserPeriodMapper, UserPer
         userUp.setAuditUserName(SecurityUtils.getUsername());
         userPeriodStatusService.updateById(userUp);
 
-        //判断是否已全部审核结束
         UserPeriodStatusVo userPeriodStatus = userPeriodStatusService.queryById(bo.getId());
+        UserPeriodVo userPeriodVo = this.queryById(userPeriodStatus.getPeriodId());
+        //更新班级学员信息
+        ClassGradeUserQueryBo classGradeUserQueryBo = new ClassGradeUserQueryBo();
+        classGradeUserQueryBo.setUserId(userPeriodVo.getUserId());
+        classGradeUserQueryBo.setGradeId(userPeriodVo.getGradeId());
+        classGradeUserQueryBo.setGoodsId(userPeriodVo.getGoodsId());
+        Integer gradePeriodStatus = iClassGradeUserService.updateUserPeriodStatus(classGradeUserQueryBo);
+        if(gradePeriodStatus==1){
+            //生成证书
+            iCertificateTpService.makeCertificatePhoto(classGradeUserQueryBo);
+        }
+        //通过或者不通过才发送消息
+        if(gradePeriodStatus==1||gradePeriodStatus==0){
+            sendPeriodSMS(bo);
+            sendPeriodSevenSMS(bo);
+        }
+
+
+        //判断是否已全部审核结束
+       /* UserPeriodStatusVo userPeriodStatus = userPeriodStatusService.queryById(bo.getId());
         UserPeriodVo userPeriodVo = this.queryById(userPeriodStatus.getPeriodId());
         LambdaQueryWrapper<UserPeriod> lqw = Wrappers.lambdaQuery();
         lqw.eq(userPeriodVo.getUserId() != null, UserPeriod::getUserId, userPeriodVo.getUserId());
@@ -239,7 +258,7 @@ public class UserPeriodServiceImpl extends ServiceImpl<UserPeriodMapper, UserPer
             List<ClassGradeUser> list1 = iClassGradeUserService.list(classGradeUser);
             iClassGradeUserService.update(classGradeUser1, classGradeUser);
         }
-
+*/
         return true;
     }
 
@@ -291,10 +310,12 @@ public class UserPeriodServiceImpl extends ServiceImpl<UserPeriodMapper, UserPer
         if(gradePeriodStatus==1){
             periodPass(classGradeUserQueryBo);
         }
-
         //发送消息
-        sendPeriodSMS(bo);
-        sendPeriodSevenSMS(bo);
+        if(gradePeriodStatus==1||gradePeriodStatus==0){
+            sendPeriodSMS(bo);
+            sendPeriodSevenSMS(bo);
+        }
+
         return true;
     }
 

+ 5 - 3
zhongzheng-system/src/main/resources/mapper/modules/course/CourseMapper.xml

@@ -371,6 +371,7 @@
             g.goods_id,
             g.goods_name,
             g.`year`,
+            cgu.period_status,
             (SELECT COUNT(1) FROM user_period up LEFT JOIN user_period_status ups on up.id = ups.period_id where up.goods_id = g.goods_id AND ups.period_status =1  and (ups.`status` =3 or ups.`status` =0) and up.grade_id = cgu.grade_id) as rebuild,
             (case WHEN (SELECT COUNT(1) FROM user_period up LEFT JOIN user_period_status ups on up.id = ups.period_id where up.goods_id = g.goods_id AND ups.period_status =1 and ups.`status` =0) >0 then 0 ELSE 1 end) as rebuild_status,
             cgu.grade_id,
@@ -378,8 +379,9 @@
             (SELECT COUNT(DISTINCT ubr.module_id,ubr.chapter_id,ubr.exam_id) FROM user_bank_record ubr LEFT JOIN class_grade_goods cgg on cgg.goods_id = ubr.goods_id where ubr.`status`=1 and ubr.report_status =1 and ubr.user_id =cgu.user_id and ubr.grade_id = cg.grade_id and ubr.current_status = 1) as record_num,
             (SELECT COUNT(up.id) FROM user_period up LEFT JOIN user_period_status ups on up.id = ups.period_id where
                 ups.`status` =1 and ups.period_status = 1 and up.goods_id=g.goods_id and up.user_id = cgu.user_id and up.type = 1) as pass,
-            (SELECT COUNT(up.id) FROM user_period up LEFT JOIN user_period_status ups on up.id = ups.period_id where
-                ups.`status` =3 and ups.period_status = 1 and up.goods_id=g.goods_id and up.user_id = cgu.user_id and up.type = 1 and up.grade_id = cgu.grade_id) as rebuildNum,
+
+             (select COUNT(up.id) from user_period up LEFT JOIN user_period_status ups on up.id=ups.period_id where up.goods_id = (SELECT cgg.goods_id FROM class_grade_goods cgg where cg.grade_id=cgg.grade_id) and up.grade_id = cgu.grade_id and up.user_id = cgu.user_id
+             and ups.period_status=0 and ups.`status`=0 and (SELECT COUNT(upss.id) from user_period_status upss where upss.id = ups.id and upss.period_status = 1 and upss.`status` = 2) > 0 ) as rebuildNum,
             (SELECT
                  COUNT(up.id) FROM user_period up LEFT JOIN user_period_status ups on up.id = ups.period_id where ups.`status`
                 =0 and ups.period_status = 1 and up.goods_id=g.goods_id and up.user_id = cgu.user_id and up.type = 1) as cheat,
@@ -402,7 +404,7 @@
         WHERE
             cgu.user_id =#{userId}
         AND cg.status=1 AND cgu.`status`=1 AND cgu.change_grade=0
-          AND  (unix_timestamp(now()) &lt; cg.class_end_time or cg.class_start_time is null)
+
         ORDER BY cgu.create_time DESC
     </select>