Pārlūkot izejas kodu

命题任务bug

xiaof 3 gadi atpakaļ
vecāks
revīzija
94c21e43d9

+ 10 - 0
distributed-print-business/src/main/java/com/qmth/distributed/print/business/bean/dto/ExamTaskDetailDto.java

@@ -36,6 +36,8 @@ public class ExamTaskDetailDto {
     @ApiModelProperty(value = "题卡制作方式:SELECT-选择已有题卡,SELF-自助创建,CUST-客户制卡")
     private MakeMethodEnum makeMethod;
 
+    private Integer setup;
+
     public String getId() {
         return id;
     }
@@ -219,4 +221,12 @@ public class ExamTaskDetailDto {
     public void setMakeMethod(MakeMethodEnum makeMethod) {
         this.makeMethod = makeMethod;
     }
+
+    public Integer getSetup() {
+        return setup;
+    }
+
+    public void setSetup(Integer setup) {
+        this.setup = setup;
+    }
 }

+ 1 - 1
distributed-print-business/src/main/java/com/qmth/distributed/print/business/mapper/ExamTaskMapper.java

@@ -29,7 +29,7 @@ public interface ExamTaskMapper extends BaseMapper<ExamTask> {
 
     List<BlurryUserDto> listUser(@Param("schoolId") Long schoolId, @Param("param") String param);
 
-    IPage<ExamTaskDto> listTaskApply(Page<ExamTaskDto> page, @Param("schoolId") Long schoolId, @Param("auditStatus") String auditStatus, @Param("reviewStatus") String reviewStatus, @Param("cardRuleId") Long cardRuleId, @Param("courseCode") String courseCode, @Param("paperNumber") String paperNumber, @Param("startTime") Long startTime, @Param("endTime") Long endTime, @Param("status") String status, @Param("userId") Long userId, @Param("orgIds") Set<Long> orgIds, @Param("userName") String userName);
+    IPage<ExamTaskDto> listTaskApply(Page<ExamTaskDto> page, @Param("schoolId") Long schoolId, @Param("auditStatus") String auditStatus, @Param("reviewStatus") String reviewStatus, @Param("cardRuleId") Long cardRuleId, @Param("courseCode") String courseCode, @Param("paperNumber") String paperNumber, @Param("startTime") Long startTime, @Param("endTime") Long endTime, @Param("userId") Long userId, @Param("orgIds") Set<Long> orgIds, @Param("userName") String userName);
 
     IPage<ExamTaskDto> listTaskReviewUnaudited(Page<ExamTaskDto> page, @Param("schoolId") Long schoolId, @Param("courseCode") String courseCode, @Param("paperNumber") String paperNumber, @Param("userId") Long userId, @Param("cardRuleId") Long cardRuleId, @Param("startTime") Long startTime, @Param("endTime") Long endTime, @Param("orgIds") Set<Long> orgIds, @Param("startCreateTime") Long startCreateTime, @Param("endCreateTime") Long endCreateTime, @Param("createName") String createName);
 

+ 3 - 3
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/ExamTaskServiceImpl.java

@@ -606,7 +606,7 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
         SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
         Set<Long> orgIds = teachcloudCommonService.listSubOrgIds(null);
         Page<ExamTaskDto> page = new Page<>(pageNumber, pageSize);
-        IPage<ExamTaskDto> examTaskDtoIPage = this.baseMapper.listTaskApply(page, schoolId, auditStatus, reviewStatus, cardRuleId, courseCode, paperNumber, startTime, endTime, ExamStatusEnum.STAGE.name(), sysUser.getId(), orgIds, userName);
+        IPage<ExamTaskDto> examTaskDtoIPage = this.baseMapper.listTaskApply(page, schoolId, auditStatus, reviewStatus, cardRuleId, courseCode, paperNumber, startTime, endTime, sysUser.getId(), orgIds, userName);
         return examTaskDtoIPage;
     }
 
@@ -864,7 +864,7 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
 
         // 更新examTask状态status
         ExamTask examTask = this.getById(examTaskDetail.getExamTaskId());
-        if (examTaskDetail.getOperateType().equals(ExamStatusEnum.SUBMIT.name())) {
+        /*if (examTaskDetail.getOperateType().equals(ExamStatusEnum.SUBMIT.name())) {
             if (Objects.isNull(examTask.getFlowId())) {
                 //TODO 这里以后要判断学校code来取流程key
                 examTask.setStatus(ExamStatusEnum.SUBMIT);
@@ -875,7 +875,7 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
                     examTask.setFlowId(Long.parseLong(processInstance.getId()));
                 }
             }
-        }
+        }*/
 
         UpdateWrapper<ExamTask> updateWrapper = new UpdateWrapper<>();
         updateWrapper.lambda()

+ 32 - 10
distributed-print-business/src/main/resources/mapper/ExamTaskMapper.xml

@@ -45,19 +45,25 @@
             a.start_time startTime,
             a.end_time endTime,
             CASE
-                WHEN a.user_id IS NULL THEN 'NEW'
-                WHEN a.status = 'DRAFT' THEN 'READY'
                 WHEN
                     a.status = 'SUBMIT'
-                        AND e.status != 'FINISH'
-                        AND e.status != 'END'
+                        AND (e.status = 'START'
+                        OR e.status = 'AUDITING')
+                THEN
+                    'AUDITING'
+                WHEN
+                    a.status = 'SUBMIT'
+                        AND e.status = 'REJECT'
                 THEN
-                    'SUBMIT'
+                    'REJECT'
                 WHEN
                     a.status = 'SUBMIT'
-                        AND e.status = 'FINISH'
+                        AND (e.status = 'FINISH'
+                            OR e.status is null)
                 THEN
-                'FINISH'
+                    'FINISH'
+                ELSE
+                    a.status
             END status,
             a.enable,
             a.create_id createId,
@@ -86,6 +92,20 @@
                 and a.enable = #{enable}
             </if>
             <if test="status != null and status != ''">
+                <choose>
+                    <when test="status == 'AUDITING'">
+                        and a.status = 'SUBMIT' AND (e.status = 'START' OR e.status = 'AUDITING')
+                    </when>
+                    <when test="status == 'REJECT'">
+                        and a.status = 'SUBMIT' AND e.status = 'REJECT'
+                    </when>
+                    <when test="status == 'FINISH'">
+                        and a.status = 'SUBMIT' AND (e.status = 'FINISH' OR e.status is null)
+                    </when>
+                    <otherwise>
+                        and a.status = #{status}
+                    </otherwise>
+                </choose>
                 and a.status = #{status}
             </if>
             <if test="cardRuleId != null and cardRuleId != ''">
@@ -167,7 +187,8 @@
             END reviewStatus,
             a.enable,
             a.create_id createId,
-            a.create_time createTime
+            a.create_time createTime,
+            e.setup
         FROM
             exam_task a
                 LEFT JOIN
@@ -180,7 +201,7 @@
             t_f_flow_approve e ON a.flow_id = e.flow_id
         <where>
             a.enable = true
-            and a.status = #{status}
+            and (a.status = 'STAGE' or (a.status = 'SUBMIT' and e.status = 'REJECT'))
             <if test="userId != null and userId != ''">
                 and a.user_id = #{userId}
             </if>
@@ -404,7 +425,8 @@
             WHEN - 1 THEN '全部通卡'
             ELSE e.name
             END cardRuleName,
-        f.make_method makeMethod
+            f.make_method makeMethod,
+            g.setup
         FROM
         exam_task a
             LEFT JOIN