Browse Source

3.4.0 update

xiaofei 1 year ago
parent
commit
53ff3650fb
100 changed files with 953 additions and 3491 deletions
  1. 1 1
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/activiti/custom/listener/ProcessEventListener.java
  2. 10 0
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/bean/dto/ExamTaskDto.java
  3. 13 2
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/bean/dto/ExamTaskImportDto.java
  4. 5 14
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/bean/dto/initMarkData/ExamDetailCourseInitMarkDto.java
  5. 6 9
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/bean/params/BasicExamStudentParam.java
  6. 13 0
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/entity/ExamTaskTemp.java
  7. 13 0
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/entity/TBSyncTask.java
  8. 7 22
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/mapper/BasicExamStudentMapper.java
  9. 10 12
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/mapper/ConditionMapper.java
  10. 2 2
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/mapper/ExamCardMapper.java
  11. 2 1
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/mapper/ExamDetailMapper.java
  12. 7 13
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/mapper/ExamTaskMapper.java
  13. 0 20
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/mapper/TeachCourseMapper.java
  14. 1 16
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/BasicExamStudentService.java
  15. 2 2
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/BasicTeachClazzService.java
  16. 1 3
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/ConditionService.java
  17. 2 6
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/ExamCardService.java
  18. 2 1
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/ExamDetailService.java
  19. 1 0
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/ExamTaskDetailService.java
  20. 13 11
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/ExamTaskService.java
  21. 2 31
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/PrintCommonService.java
  22. 1 1
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/TBSyncTaskService.java
  23. 1 101
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/TeachCourseService.java
  24. 24 14
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/BasicExamStudentServiceImpl.java
  25. 3 4
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/BasicTeachClazzServiceImpl.java
  26. 11 22
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/ConditionServiceImpl.java
  27. 1 2
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/CourseDimensionServiceImpl.java
  28. 1 2
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/CourseTargetServiceImpl.java
  29. 1 2
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/CourseWeightServiceImpl.java
  30. 20 32
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/ExamCardServiceImpl.java
  31. 2 2
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/ExamDetailCourseServiceImpl.java
  32. 7 2
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/ExamDetailServiceImpl.java
  33. 9 0
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/ExamTaskDetailServiceImpl.java
  34. 53 63
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/ExamTaskServiceImpl.java
  35. 31 136
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/PrintCommonServiceImpl.java
  36. 2 3
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/TBSyncTaskServiceImpl.java
  37. 1 0
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/TBTaskPdfServiceImpl.java
  38. 1 2
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/TRBasicInfoServiceImpl.java
  39. 5 430
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/TeachCourseServiceImpl.java
  40. 1 0
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/templete/execute/AsyncCreatePdfTemplateService.java
  41. 0 34
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/templete/service/TaskLogicService.java
  42. 2 2
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/templete/service/impl/PdfTaskLogicServiceImpl.java
  43. 2 680
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/templete/service/impl/TaskLogicServiceImpl.java
  44. 4 4
      distributed-print-business/src/main/resources/mapper/BasicExamStudentMapper.xml
  45. 273 265
      distributed-print-business/src/main/resources/mapper/ConditionMapper.xml
  46. 17 13
      distributed-print-business/src/main/resources/mapper/ExamCardMapper.xml
  47. 5 3
      distributed-print-business/src/main/resources/mapper/ExamDetailCourseMapper.xml
  48. 22 9
      distributed-print-business/src/main/resources/mapper/ExamDetailMapper.xml
  49. 6 6
      distributed-print-business/src/main/resources/mapper/ExamStudentMapper.xml
  50. 48 97
      distributed-print-business/src/main/resources/mapper/ExamTaskMapper.xml
  51. 0 44
      distributed-print-business/src/main/resources/mapper/TeachCourseMapper.xml
  52. 0 13
      distributed-print/install/mysql/upgrade/3.3.3.sql
  53. 53 0
      distributed-print/install/mysql/upgrade/3.4.0.sql
  54. 0 60
      distributed-print/src/main/java/com/qmth/distributed/print/api/BasicCampusController.java
  55. 0 72
      distributed-print/src/main/java/com/qmth/distributed/print/api/BasicCollegeController.java
  56. 1 8
      distributed-print/src/main/java/com/qmth/distributed/print/api/BasicCourseController.java
  57. 5 6
      distributed-print/src/main/java/com/qmth/distributed/print/api/BasicExamStudentController.java
  58. 2 10
      distributed-print/src/main/java/com/qmth/distributed/print/api/ConditionController.java
  59. 6 11
      distributed-print/src/main/java/com/qmth/distributed/print/api/ExamCardController.java
  60. 2 2
      distributed-print/src/main/java/com/qmth/distributed/print/api/ExamPrintTaskController.java
  61. 19 39
      distributed-print/src/main/java/com/qmth/distributed/print/api/ExamTaskApplyController.java
  62. 30 64
      distributed-print/src/main/java/com/qmth/distributed/print/api/ExamTaskAuditController.java
  63. 16 36
      distributed-print/src/main/java/com/qmth/distributed/print/api/ExamTaskController.java
  64. 27 39
      distributed-print/src/main/java/com/qmth/distributed/print/api/ExamTaskQueryController.java
  65. 0 8
      distributed-print/src/main/java/com/qmth/distributed/print/api/SysController.java
  66. 8 22
      distributed-print/src/main/java/com/qmth/distributed/print/api/SysOrgController.java
  67. 3 7
      distributed-print/src/main/java/com/qmth/distributed/print/api/SysUserController.java
  68. 1 1
      distributed-print/src/main/java/com/qmth/distributed/print/api/TBSyncTaskController.java
  69. 0 103
      distributed-print/src/main/java/com/qmth/distributed/print/api/TeachCourseController.java
  70. 0 24
      distributed-print/src/main/java/com/qmth/distributed/print/api/mark/MarkScoreController.java
  71. 0 24
      distributed-print/src/main/java/com/qmth/distributed/print/api/mark/ScanPaperController.java
  72. BIN
      distributed-print/src/main/resources/temps/examTask.xlsx
  73. 0 96
      teachcloud-common/src/main/java/com/qmth/teachcloud/common/entity/BasicCampus.java
  74. 0 54
      teachcloud-common/src/main/java/com/qmth/teachcloud/common/entity/BasicCollege.java
  75. 11 1
      teachcloud-common/src/main/java/com/qmth/teachcloud/common/entity/BasicTeachClazz.java
  76. 0 12
      teachcloud-common/src/main/java/com/qmth/teachcloud/common/entity/SysOrg.java
  77. 0 1
      teachcloud-common/src/main/java/com/qmth/teachcloud/common/enums/SystemCodeEnum.java
  78. 0 28
      teachcloud-common/src/main/java/com/qmth/teachcloud/common/mapper/BasicCampusMapper.java
  79. 0 33
      teachcloud-common/src/main/java/com/qmth/teachcloud/common/mapper/BasicCollegeMapper.java
  80. 10 0
      teachcloud-common/src/main/java/com/qmth/teachcloud/common/mapper/BasicCourseMapper.java
  81. 1 1
      teachcloud-common/src/main/java/com/qmth/teachcloud/common/mapper/BasicStudentMapper.java
  82. 1 5
      teachcloud-common/src/main/java/com/qmth/teachcloud/common/mapper/SysUserMapper.java
  83. 0 51
      teachcloud-common/src/main/java/com/qmth/teachcloud/common/service/BasicCampusService.java
  84. 0 42
      teachcloud-common/src/main/java/com/qmth/teachcloud/common/service/BasicCollegeService.java
  85. 1 1
      teachcloud-common/src/main/java/com/qmth/teachcloud/common/service/BasicStudentService.java
  86. 3 7
      teachcloud-common/src/main/java/com/qmth/teachcloud/common/service/SysOrgService.java
  87. 2 4
      teachcloud-common/src/main/java/com/qmth/teachcloud/common/service/SysUserService.java
  88. 0 10
      teachcloud-common/src/main/java/com/qmth/teachcloud/common/service/TeachcloudCommonService.java
  89. 0 145
      teachcloud-common/src/main/java/com/qmth/teachcloud/common/service/impl/BasicCampusServiceImpl.java
  90. 0 123
      teachcloud-common/src/main/java/com/qmth/teachcloud/common/service/impl/BasicCollegeServiceImpl.java
  91. 33 44
      teachcloud-common/src/main/java/com/qmth/teachcloud/common/service/impl/BasicCourseServiceImpl.java
  92. 2 2
      teachcloud-common/src/main/java/com/qmth/teachcloud/common/service/impl/BasicStudentServiceImpl.java
  93. 24 8
      teachcloud-common/src/main/java/com/qmth/teachcloud/common/service/impl/SysOrgServiceImpl.java
  94. 5 38
      teachcloud-common/src/main/java/com/qmth/teachcloud/common/service/impl/SysUserServiceImpl.java
  95. 0 32
      teachcloud-common/src/main/java/com/qmth/teachcloud/common/service/impl/TeachcloudCommonServiceImpl.java
  96. 0 24
      teachcloud-common/src/main/resources/mapper/BasicCampusMapper.xml
  97. 0 33
      teachcloud-common/src/main/resources/mapper/BasicCollegeMapper.xml
  98. 15 0
      teachcloud-common/src/main/resources/mapper/BasicCourseMapper.xml
  99. 2 2
      teachcloud-common/src/main/resources/mapper/BasicStudentMapper.xml
  100. 3 4
      teachcloud-common/src/main/resources/mapper/SysUserMapper.xml

+ 1 - 1
distributed-print-business/src/main/java/com/qmth/distributed/print/business/activiti/custom/listener/ProcessEventListener.java

@@ -106,7 +106,7 @@ public class ProcessEventListener implements ActivitiEventListener, Serializable
                             //取命题老师ID
                             //取命题老师ID
                             SysUser sysUser = sysUserService.getById(((ExamTask) object).getUserId());
                             SysUser sysUser = sysUserService.getById(((ExamTask) object).getUserId());
                             try {
                             try {
-                                printCommonService.checkExamDataAndCreatePdfTask(((ExamTask) object).getSchoolId(), ((ExamTask) object).getExamId(), ((ExamTask) object).getCourseCode(), ((ExamTask) object).getPaperNumber(), sysUser);
+                                printCommonService.checkExamDataAndCreatePdfTask(((ExamTask) object).getSchoolId(), ((ExamTask) object).getExamId(), ((ExamTask) object).getCourseId(), ((ExamTask) object).getPaperNumber(), sysUser);
                             } catch (IOException e) {
                             } catch (IOException e) {
                                 throw ExceptionResultEnum.ERROR.exception("生成pdf失败");
                                 throw ExceptionResultEnum.ERROR.exception("生成pdf失败");
                             }
                             }

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

@@ -18,6 +18,8 @@ public class ExamTaskDto {
 
 
     private String id;
     private String id;
     private String paperNumber;
     private String paperNumber;
+    @JsonSerialize(using = ToStringSerializer.class)
+    private Long courseId;
     private String courseCode;
     private String courseCode;
     private String courseName;
     private String courseName;
     private String sequence;
     private String sequence;
@@ -148,6 +150,14 @@ public class ExamTaskDto {
         this.paperNumber = paperNumber;
         this.paperNumber = paperNumber;
     }
     }
 
 
+    public Long getCourseId() {
+        return courseId;
+    }
+
+    public void setCourseId(Long courseId) {
+        this.courseId = courseId;
+    }
+
     public String getCourseCode() {
     public String getCourseCode() {
         return courseCode;
         return courseCode;
     }
     }

+ 13 - 2
distributed-print-business/src/main/java/com/qmth/distributed/print/business/bean/dto/ExamTaskImportDto.java

@@ -12,11 +12,14 @@ public class ExamTaskImportDto {
     @NotNull
     @NotNull
     @ExcelNote(value = "课程名称")
     @ExcelNote(value = "课程名称")
     private String courseName;
     private String courseName;
+    @NotNull
+    @ExcelNote(value = "开课学院")
+    private String teachingRoomName;
     @ExcelNote(value = "试卷编号")
     @ExcelNote(value = "试卷编号")
     private String paperNumber;
     private String paperNumber;
-    @ExcelNote(value = "命题老师账号")
+    @ExcelNote(value = "命题老师号")
     private String userAccount;
     private String userAccount;
-    @ExcelNote(value = "命题老师名")
+    @ExcelNote(value = "命题老师名")
     private String userName;
     private String userName;
 
 
     public String getCourseCode() {
     public String getCourseCode() {
@@ -35,6 +38,14 @@ public class ExamTaskImportDto {
         this.courseName = courseName;
         this.courseName = courseName;
     }
     }
 
 
+    public String getTeachingRoomName() {
+        return teachingRoomName;
+    }
+
+    public void setTeachingRoomName(String teachingRoomName) {
+        this.teachingRoomName = teachingRoomName;
+    }
+
     public String getPaperNumber() {
     public String getPaperNumber() {
         return paperNumber;
         return paperNumber;
     }
     }

+ 5 - 14
distributed-print-business/src/main/java/com/qmth/distributed/print/business/bean/dto/initMarkData/ExamDetailCourseInitMarkDto.java

@@ -8,8 +8,7 @@ public class ExamDetailCourseInitMarkDto {
     private Long schoolId;
     private Long schoolId;
     private Long semesterId;
     private Long semesterId;
     private Long examId;
     private Long examId;
-    private String courseCode;
-    private String courseName;
+    private Long courseId;
     private String paperNumber;
     private String paperNumber;
     private String coursePaperId;
     private String coursePaperId;
     private String paperType;
     private String paperType;
@@ -43,20 +42,12 @@ public class ExamDetailCourseInitMarkDto {
         this.examId = examId;
         this.examId = examId;
     }
     }
 
 
-    public String getCourseCode() {
-        return courseCode;
+    public Long getCourseId() {
+        return courseId;
     }
     }
 
 
-    public void setCourseCode(String courseCode) {
-        this.courseCode = courseCode;
-    }
-
-    public String getCourseName() {
-        return courseName;
-    }
-
-    public void setCourseName(String courseName) {
-        this.courseName = courseName;
+    public void setCourseId(Long courseId) {
+        this.courseId = courseId;
     }
     }
 
 
     public String getPaperNumber() {
     public String getPaperNumber() {

+ 6 - 9
distributed-print-business/src/main/java/com/qmth/distributed/print/business/bean/params/BasicExamStudentParam.java

@@ -24,19 +24,16 @@ public class BasicExamStudentParam {
     @ApiModelProperty("学期id(必填)")
     @ApiModelProperty("学期id(必填)")
     @JsonSerialize(using = ToStringSerializer.class)
     @JsonSerialize(using = ToStringSerializer.class)
     @NotNull(message = "请选择学期")
     @NotNull(message = "请选择学期")
-    @Range(min = 1L, message = "请选择学期")
     private Long semesterId;
     private Long semesterId;
 
 
     @ApiModelProperty("考试id(必填)")
     @ApiModelProperty("考试id(必填)")
     @JsonSerialize(using = ToStringSerializer.class)
     @JsonSerialize(using = ToStringSerializer.class)
     @NotNull(message = "请选择考试")
     @NotNull(message = "请选择考试")
-    @Range(min = 1L, message = "请选择考试")
     private Long examId;
     private Long examId;
 
 
     @ApiModelProperty("课程代码(必填)")
     @ApiModelProperty("课程代码(必填)")
-    @NotNull(message = "请输入课程代码")
-    @Length(min = 1, message = "请输入课程代码")
-    private String courseCode;
+    @NotNull(message = "请选择课程")
+    private Long courseId;
 
 
     @ApiModelProperty("姓名(必填)")
     @ApiModelProperty("姓名(必填)")
     @NotNull(message = "请输入姓名")
     @NotNull(message = "请输入姓名")
@@ -104,12 +101,12 @@ public class BasicExamStudentParam {
         this.examId = examId;
         this.examId = examId;
     }
     }
 
 
-    public String getCourseCode() {
-        return courseCode;
+    public Long getCourseId() {
+        return courseId;
     }
     }
 
 
-    public void setCourseCode(String courseCode) {
-        this.courseCode = courseCode;
+    public void setCourseId(Long courseId) {
+        this.courseId = courseId;
     }
     }
 
 
     public String getStudentName() {
     public String getStudentName() {

+ 13 - 0
distributed-print-business/src/main/java/com/qmth/distributed/print/business/entity/ExamTaskTemp.java

@@ -48,6 +48,11 @@ public class ExamTaskTemp extends BaseEntity implements Serializable {
      */
      */
     @TableField("course_name")
     @TableField("course_name")
     private String courseName;
     private String courseName;
+    /**
+     * 开课学院
+     */
+    @TableField("teaching_room_name")
+    private String teachingRoomName;
     /**
     /**
      * 试卷编号
      * 试卷编号
      */
      */
@@ -88,6 +93,14 @@ public class ExamTaskTemp extends BaseEntity implements Serializable {
         this.batchNo = batchNo;
         this.batchNo = batchNo;
     }
     }
 
 
+    public String getTeachingRoomName() {
+        return teachingRoomName;
+    }
+
+    public void setTeachingRoomName(String teachingRoomName) {
+        this.teachingRoomName = teachingRoomName;
+    }
+
     public String getCourseCode() {
     public String getCourseCode() {
         return courseCode;
         return courseCode;
     }
     }

+ 13 - 0
distributed-print-business/src/main/java/com/qmth/distributed/print/business/entity/TBSyncTask.java

@@ -39,6 +39,11 @@ public class TBSyncTask extends BaseEntity implements Serializable {
     @TableField("exam_id")
     @TableField("exam_id")
     private Long examId;
     private Long examId;
 
 
+    @ApiModelProperty(value = "课程id")
+    @JsonSerialize(using = ToStringSerializer.class)
+    @TableField("course_id")
+    private Long courseId;
+
     @ApiModelProperty(value = "课程代码")
     @ApiModelProperty(value = "课程代码")
     @TableField("course_code")
     @TableField("course_code")
     private String courseCode;
     private String courseCode;
@@ -143,6 +148,14 @@ public class TBSyncTask extends BaseEntity implements Serializable {
         this.examId = examId;
         this.examId = examId;
     }
     }
 
 
+    public Long getCourseId() {
+        return courseId;
+    }
+
+    public void setCourseId(Long courseId) {
+        this.courseId = courseId;
+    }
+
     public String getCourseCode() {
     public String getCourseCode() {
         return courseCode;
         return courseCode;
     }
     }

+ 7 - 22
distributed-print-business/src/main/java/com/qmth/distributed/print/business/mapper/BasicExamStudentMapper.java

@@ -20,26 +20,11 @@ import java.util.List;
  */
  */
 public interface BasicExamStudentMapper extends BaseMapper<BasicExamStudent> {
 public interface BasicExamStudentMapper extends BaseMapper<BasicExamStudent> {
 
 
-    /**
-     * 分页查询
-     *
-     * @param schoolId        学校id
-     * @param semesterId      学期id
-     * @param examId          考试id
-     * @param courseCode      课程代码
-     * @param teacher         教师
-     * @param college         学院
-     * @param major           专业
-     * @param teachClazz      教学班
-     * @param examStudentInfo 考生信息(姓名/学号)
-     * @param dpr             数据权限
-     * @return 查询结果
-     */
     IPage<BasicExamStudentResult> findBasicExamStudentPage(@Param("iPage") Page<BasicExamStudentResult> iPage,
     IPage<BasicExamStudentResult> findBasicExamStudentPage(@Param("iPage") Page<BasicExamStudentResult> iPage,
-            @Param("schoolId") Long schoolId, @Param("semesterId") Long semesterId, @Param("examId") Long examId,
-            @Param("courseCode") String courseCode, @Param("teacher") String teacher, @Param("college") String college,
-            @Param("major") String major, @Param("teachClazz") String teachClazz,
-            @Param("examStudentInfo") String examStudentInfo, @Param("dpr") DataPermissionRule dpr);
+                                                           @Param("schoolId") Long schoolId, @Param("semesterId") Long semesterId, @Param("examId") Long examId,
+                                                           @Param("courseId") Long courseId, @Param("teacher") String teacher, @Param("college") String college,
+                                                           @Param("major") String major, @Param("teachClazz") String teachClazz,
+                                                           @Param("examStudentInfo") String examStudentInfo, @Param("dpr") DataPermissionRule dpr);
 
 
     /**
     /**
      * 列表查询
      * 列表查询
@@ -57,9 +42,9 @@ public interface BasicExamStudentMapper extends BaseMapper<BasicExamStudent> {
      * @return 查询结果
      * @return 查询结果
      */
      */
     List<BasicExamStudentResult> findBasicExamStudentList(@Param("schoolId") Long schoolId, @Param("semesterId") Long semesterId, @Param("examId") Long examId,
     List<BasicExamStudentResult> findBasicExamStudentList(@Param("schoolId") Long schoolId, @Param("semesterId") Long semesterId, @Param("examId") Long examId,
-            @Param("courseCode") String courseCode, @Param("teacher") String teacher, @Param("college") String college,
-            @Param("major") String major, @Param("teachClazz") String teachClazz, @Param("examStudentInfo") String examStudentInfo,
-            @Param("dpr") DataPermissionRule dpr);
+                                                          @Param("courseCode") String courseCode, @Param("teacher") String teacher, @Param("college") String college,
+                                                          @Param("major") String major, @Param("teachClazz") String teachClazz, @Param("examStudentInfo") String examStudentInfo,
+                                                          @Param("dpr") DataPermissionRule dpr);
 
 
     /**
     /**
      * 查询被绑定的考生字典
      * 查询被绑定的考生字典

+ 10 - 12
distributed-print-business/src/main/java/com/qmth/distributed/print/business/mapper/ConditionMapper.java

@@ -17,49 +17,47 @@ public interface ConditionMapper {
 
 
     List<BasicCourse> listCourse(@Param("semesterId") Long semesterId, @Param("examId") Long examId, @Param("enable") Boolean enable, @Param("printPlanIds") List<String> printPlanIds, @Param("dpr") DataPermissionRule dpr);
     List<BasicCourse> listCourse(@Param("semesterId") Long semesterId, @Param("examId") Long examId, @Param("enable") Boolean enable, @Param("printPlanIds") List<String> printPlanIds, @Param("dpr") DataPermissionRule dpr);
 
 
-    List<String> listPaperNumber(@Param("semesterId") Long semesterId, @Param("examId") Long examId, @Param("courseCode") String courseCode, @Param("printPlanIds") List<String> printPlanIds, @Param("dpr") DataPermissionRule dpr);
+    List<String> listPaperNumber(@Param("semesterId") Long semesterId, @Param("examId") Long examId, @Param("courseId") Long courseId, @Param("printPlanIds") List<String> printPlanIds, @Param("dpr") DataPermissionRule dpr);
 
 
     List<BasicCourse> listCourseForApply(@Param("examId") Long examId, @Param("userId") Long userId);
     List<BasicCourse> listCourseForApply(@Param("examId") Long examId, @Param("userId") Long userId);
 
 
     List<BasicCourse> listCourseForAudit(@Param("semesterId") Long semesterId, @Param("examId") Long examId, @Param("enable") Boolean enable);
     List<BasicCourse> listCourseForAudit(@Param("semesterId") Long semesterId, @Param("examId") Long examId, @Param("enable") Boolean enable);
 
 
-    List<String> listPaperNumberForApply(@Param("examId") Long examId, @Param("courseCode") String courseCode, @Param("userId") Long userId);
+    List<String> listPaperNumberForApply(@Param("examId") Long examId, @Param("courseId") Long courseId, @Param("userId") Long userId);
 
 
-    List<String> listPaperNumberAudit(@Param("semesterId") Long semesterId, @Param("examId") Long examId, @Param("courseCode") String courseCode);
+    List<String> listPaperNumberAudit(@Param("semesterId") Long semesterId, @Param("examId") Long examId, @Param("courseId") Long courseId);
 
 
     List<PrintPlanBrief> listPrintPlan(@Param("semesterId") Long semesterId, @Param("examId") Long examId, @Param("dpr") DataPermissionRule dpr);
     List<PrintPlanBrief> listPrintPlan(@Param("semesterId") Long semesterId, @Param("examId") Long examId, @Param("dpr") DataPermissionRule dpr);
 
 
     List<BasicCourse> listCourseForScore(@Param("semesterId") Long semesterId, @Param("examId") Long examId, @Param("status") String status, @Param("dpr") DataPermissionRule dpr);
     List<BasicCourse> listCourseForScore(@Param("semesterId") Long semesterId, @Param("examId") Long examId, @Param("status") String status, @Param("dpr") DataPermissionRule dpr);
 
 
-    List<BasicClazz> listClazz(@Param("semesterId") Long semesterId, @Param("examId") Long examId, @Param("courseCode") String courseCode, @Param("clazzName") String clazzName, @Param("dpr") DataPermissionRule dpr);
-
     List<PrintPlanBrief> listPrintPlanForClient(@Param("semesterId") Long semesterId, @Param("examId") Long examId, @Param("examDetailStatus") String[] examDetailStatus);
     List<PrintPlanBrief> listPrintPlanForClient(@Param("semesterId") Long semesterId, @Param("examId") Long examId, @Param("examDetailStatus") String[] examDetailStatus);
 
 
     List<BasicCourse> listCourseForPlanTask(@Param("semesterId") Long semesterId, @Param("examId") Long examId, @Param("printPlanIds") List<String> printPlanIds, @Param("dpr") DataPermissionRule dpr);
     List<BasicCourse> listCourseForPlanTask(@Param("semesterId") Long semesterId, @Param("examId") Long examId, @Param("printPlanIds") List<String> printPlanIds, @Param("dpr") DataPermissionRule dpr);
 
 
-    List<String> listPaperNumberPlanTask(@Param("semesterId") Long semesterId, @Param("examId") Long examId, @Param("printPlanIds") List<String> printPlanIds, @Param("courseCode") String courseCode, @Param("dpr") DataPermissionRule dpr);
+    List<String> listPaperNumberPlanTask(@Param("semesterId") Long semesterId, @Param("examId") Long examId, @Param("printPlanIds") List<String> printPlanIds, @Param("courseId") Long courseId, @Param("dpr") DataPermissionRule dpr);
 
 
     List<BasicCourse> listCourseForEntrance(@Param("examId") Long examId, @Param("userId") Long userId, @Param("status") String status);
     List<BasicCourse> listCourseForEntrance(@Param("examId") Long examId, @Param("userId") Long userId, @Param("status") String status);
 
 
-    List<String> listPaperNumberForEntrance(@Param("examId") Long examId, @Param("userId") Long userId, @Param("courseCode") String courseCode, @Param("status") String status);
+    List<String> listPaperNumberForEntrance(@Param("examId") Long examId, @Param("userId") Long userId, @Param("courseId") Long courseId, @Param("status") String status);
 
 
     List<BasicCourse> listCourseFromMarkPaper(@Param("examId") Long examId, @Param("dpr") DataPermissionRule dpr);
     List<BasicCourse> listCourseFromMarkPaper(@Param("examId") Long examId, @Param("dpr") DataPermissionRule dpr);
 
 
-    List<String> listPaperNumberFromMarkPaper(@Param("examId") Long examId, @Param("courseCode") String courseCode, @Param("dpr") DataPermissionRule dpr);
+    List<String> listPaperNumberFromMarkPaper(@Param("examId") Long examId, @Param("courseId") Long courseId, @Param("dpr") DataPermissionRule dpr);
 
 
     List<BasicCourse> listCourseFromExamTaskByCreateId(@Param("examId") Long examId, @Param("dpr") DataPermissionRule dpr);
     List<BasicCourse> listCourseFromExamTaskByCreateId(@Param("examId") Long examId, @Param("dpr") DataPermissionRule dpr);
     List<BasicCourse> listCourseFromExamTaskByUserId(@Param("examId") Long examId, @Param("dpr") DataPermissionRule dpr);
     List<BasicCourse> listCourseFromExamTaskByUserId(@Param("examId") Long examId, @Param("dpr") DataPermissionRule dpr);
 
 
-    List<String> listPaperNumberFromExamTaskByCreateId(@Param("examId") Long examId, @Param("courseCode") String courseCode, @Param("dpr") DataPermissionRule dpr);
-    List<String> listPaperNumberFromExamTaskByUserIdAndPass(@Param("examId") Long examId, @Param("courseCode") String courseCode, @Param("dpr") DataPermissionRule dpr);
+    List<String> listPaperNumberFromExamTaskByCreateId(@Param("examId") Long examId, @Param("courseId") Long courseId, @Param("dpr") DataPermissionRule dpr);
+    List<String> listPaperNumberFromExamTaskByUserIdAndPass(@Param("examId") Long examId, @Param("courseId") Long courseId, @Param("dpr") DataPermissionRule dpr);
 
 
     List<BasicCourse> listCourseForQuery(@Param("examId") Long examId, @Param("dpr") DataPermissionRule dpr);
     List<BasicCourse> listCourseForQuery(@Param("examId") Long examId, @Param("dpr") DataPermissionRule dpr);
 
 
-    List<String> listPaperNumberForQuery(@Param("examId") Long examId, @Param("courseCode") String courseCode, @Param("dpr") DataPermissionRule dpr);
+    List<String> listPaperNumberForQuery(@Param("examId") Long examId, @Param("courseId") Long courseId, @Param("dpr") DataPermissionRule dpr);
 
 
     List<BasicCourse> listCourseForApproveHistory(@Param("semesterId") Long semesterId, @Param("examId") Long examId, @Param("dpr") DataPermissionRule dpr);
     List<BasicCourse> listCourseForApproveHistory(@Param("semesterId") Long semesterId, @Param("examId") Long examId, @Param("dpr") DataPermissionRule dpr);
 
 
-    List<String> listPaperNumberForApproveHistory(@Param("semesterId") Long semesterId, @Param("examId") Long examId, @Param("courseCode") String courseCode, @Param("dpr") DataPermissionRule dpr);
+    List<String> listPaperNumberForApproveHistory(@Param("semesterId") Long semesterId, @Param("examId") Long examId, @Param("courseId") Long courseId, @Param("dpr") DataPermissionRule dpr);
 
 
     List<String> listPaperNumberForScore(@Param("semesterId") Long semesterId, @Param("examId") Long examId, @Param("status") String status, @Param("dpr") DataPermissionRule dpr);
     List<String> listPaperNumberForScore(@Param("semesterId") Long semesterId, @Param("examId") Long examId, @Param("status") String status, @Param("dpr") DataPermissionRule dpr);
 }
 }

+ 2 - 2
distributed-print-business/src/main/java/com/qmth/distributed/print/business/mapper/ExamCardMapper.java

@@ -21,9 +21,9 @@ public interface ExamCardMapper extends BaseMapper<ExamCard> {
 
 
     List<ExamCard> listGenericCard(@Param("schoolId") Long schoolId, @Param("type") String type, @Param("cardRuleId") Long cardRuleId);
     List<ExamCard> listGenericCard(@Param("schoolId") Long schoolId, @Param("type") String type, @Param("cardRuleId") Long cardRuleId);
 
 
-    List<ExamCard> listCustom(@Param("schoolId") Long schoolId, @Param("courseCode") String courseCode, @Param("type") String type, @Param("cardRuleId") Long cardRuleId);
+    List<ExamCard> listCustom(@Param("schoolId") Long schoolId, @Param("courseId") Long courseId, @Param("type") String type, @Param("cardRuleId") Long cardRuleId);
 
 
     IPage<ExamCard> listPage(@Param("page") Page<ExamCard> page, @Param("schoolId") Long schoolId, @Param("semesterId") Long semesterId, @Param("examId") Long examId, @Param("courseCode") String courseCode, @Param("paperNumber") String paperNumber, @Param("cardType") String cardType, @Param("title") String title, @Param("createMethod") String createMethod, @Param("enable") Boolean enable, @Param("createStartTime") Long createStartTime, @Param("createEndTime") Long createEndTime, @Param("dpr") DataPermissionRule dpr);
     IPage<ExamCard> listPage(@Param("page") Page<ExamCard> page, @Param("schoolId") Long schoolId, @Param("semesterId") Long semesterId, @Param("examId") Long examId, @Param("courseCode") String courseCode, @Param("paperNumber") String paperNumber, @Param("cardType") String cardType, @Param("title") String title, @Param("createMethod") String createMethod, @Param("enable") Boolean enable, @Param("createStartTime") Long createStartTime, @Param("createEndTime") Long createEndTime, @Param("dpr") DataPermissionRule dpr);
 
 
-    List<ExamCard> listCustomByExamStage(@Param("schoolId") Long schoolId, @Param("examId") Long examId, @Param("courseCode") String courseCode, @Param("paperNumber") String paperNumber, @Param("type") String type);
+    List<ExamCard> listCustomByExamStage(@Param("schoolId") Long schoolId, @Param("examId") Long examId, @Param("courseId") Long courseId, @Param("paperNumber") String paperNumber, @Param("type") String type);
 }
 }

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

@@ -32,7 +32,7 @@ public interface ExamDetailMapper extends BaseMapper<ExamDetail> {
                                       @Param("examId") Long examId,
                                       @Param("examId") Long examId,
                                       @Param("printPlanId") Long printPlanId,
                                       @Param("printPlanId") Long printPlanId,
                                       @Param("status") String status,
                                       @Param("status") String status,
-                                      @Param("courseCode") String courseCode,
+                                      @Param("courseId") Long courseId,
                                       @Param("paperNumber") String paperNumber,
                                       @Param("paperNumber") String paperNumber,
                                       @Param("examPlace") String examPlace,
                                       @Param("examPlace") String examPlace,
                                       @Param("examRoom") String examRoom,
                                       @Param("examRoom") String examRoom,
@@ -127,6 +127,7 @@ public interface ExamDetailMapper extends BaseMapper<ExamDetail> {
     int countMakeupUsedByExamIdAndPaperNumber(@Param("examId") Long examId, @Param("paperNumber") String paperNumber);
     int countMakeupUsedByExamIdAndPaperNumber(@Param("examId") Long examId, @Param("paperNumber") String paperNumber);
 
 
     List<ExamDetail> listByExamIdAndCourseCodeAndPaperNumber(@Param("schoolId") Long schoolId, @Param("examId") Long examId, @Param("courseCode") String courseCode, @Param("paperNumber") String paperNumber);
     List<ExamDetail> listByExamIdAndCourseCodeAndPaperNumber(@Param("schoolId") Long schoolId, @Param("examId") Long examId, @Param("courseCode") String courseCode, @Param("paperNumber") String paperNumber);
+    List<ExamDetail> listByExamIdAndCourseIdAndPaperNumber(@Param("schoolId") Long schoolId, @Param("examId") Long examId, @Param("courseId") Long courseId, @Param("paperNumber") String paperNumber);
 
 
     List<ExamDetailCourseInitMarkDto> listPrintFinishPackageCode(@Param("examId") Long examId, @Param("paperNumber") String paperNumber, @Param("paperType") String paperType);
     List<ExamDetailCourseInitMarkDto> listPrintFinishPackageCode(@Param("examId") Long examId, @Param("paperNumber") String paperNumber, @Param("paperType") String paperType);
 
 

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

@@ -27,17 +27,17 @@ import java.util.Set;
  */
  */
 public interface ExamTaskMapper extends BaseMapper<ExamTask> {
 public interface ExamTaskMapper extends BaseMapper<ExamTask> {
 
 
-    IPage<ExamTaskDto> listPage(Page<ExamTaskDto> page, @Param("schoolId") Long schoolId, @Param("semesterId") Long semesterId, @Param("examId") Long examId, @Param("enable") Boolean enable, @Param("status") String status, @Param("cardRuleId") Long cardRuleId, @Param("courseCode") String courseCode, @Param("paperNumber") String paperNumber, @Param("startTime") Long startTime, @Param("endTime") Long endTime, @Param("dpr") DataPermissionRule dpr, @Param("userName") String userName, @Param("createName") String createName);
+    IPage<ExamTaskDto> listPage(Page<ExamTaskDto> page, @Param("schoolId") Long schoolId, @Param("semesterId") Long semesterId, @Param("examId") Long examId, @Param("enable") Boolean enable, @Param("status") String status, @Param("courseId") Long courseId, @Param("paperNumber") String paperNumber, @Param("startTime") Long startTime, @Param("endTime") Long endTime, @Param("userName") String userName, @Param("dpr") DataPermissionRule dpr);
 
 
     List<BlurryUserDto> listUser(@Param("schoolId") Long schoolId, @Param("param") String param, @Param("orgIds") Set<Long> orgIds);
     List<BlurryUserDto> listUser(@Param("schoolId") Long schoolId, @Param("param") String param, @Param("orgIds") Set<Long> orgIds);
 
 
-    IPage<ExamTaskDto> listTaskApply(Page<ExamTaskDto> page, @Param("schoolId") Long schoolId, @Param("semesterId") Long semesterId, @Param("examId") Long examId, @Param("auditStatus") String auditStatus, @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("userName") String userName);
+    IPage<ExamTaskDto> listTaskApply(Page<ExamTaskDto> page, @Param("schoolId") Long schoolId, @Param("semesterId") Long semesterId, @Param("examId") Long examId, @Param("auditStatus") String auditStatus, @Param("courseId") Long courseId, @Param("paperNumber") String paperNumber, @Param("startTime") Long startTime, @Param("endTime") Long endTime, @Param("userId") Long userId, @Param("userName") String userName);
 
 
-    IPage<ExamTaskDto> listTaskReviewUnaudited(Page<ExamTaskDto> page, @Param("schoolId") Long schoolId, @Param("semesterId") Long semesterId, @Param("examId") Long examId, @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("startCreateTime") Long startCreateTime, @Param("endCreateTime") Long endCreateTime, @Param("createName") String createName, @Param("currentUserId") Long currentUserId);
+    IPage<ExamTaskDto> listTaskReviewUnaudited(Page<ExamTaskDto> page, @Param("schoolId") Long schoolId, @Param("semesterId") Long semesterId, @Param("examId") Long examId, @Param("courseId") Long courseId, @Param("paperNumber") String paperNumber, @Param("userId") Long userId, @Param("startTime") Long startTime, @Param("endTime") Long endTime, @Param("startCreateTime") Long startCreateTime, @Param("endCreateTime") Long endCreateTime, @Param("currentUserId") Long currentUserId);
 
 
-    IPage<ExamTaskDto> listTaskReviewAudited(Page<ExamTaskDto> page, @Param("schoolId") Long schoolId, @Param("semesterId") Long semesterId, @Param("examId") Long examId, @Param("reviewStatus") String reviewStatus, @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, @Param("currentUserId") Long currentUserId);
+    IPage<ExamTaskDto> listTaskReviewAudited(Page<ExamTaskDto> page, @Param("schoolId") Long schoolId, @Param("semesterId") Long semesterId, @Param("examId") Long examId, @Param("courseId") Long courseId, @Param("paperNumber") String paperNumber, @Param("userId") Long userId, @Param("startTime") Long startTime, @Param("endTime") Long endTime, @Param("orgIds") Set<Long> orgIds, @Param("startCreateTime") Long startCreateTime, @Param("endCreateTime") Long endCreateTime, @Param("currentUserId") Long currentUserId);
 
 
-    IPage<ExamTaskDetailDto> listTaskPaper(Page<ExamTaskDetailDto> page, @Param("schoolId") Long schoolId, @Param("semesterId") Long semesterId, @Param("examId") Long examId, @Param("courseCode") String courseCode, @Param("paperNumber") String paperNumber, @Param("startTime") Long startTime, @Param("endTime") Long endTime, @Param("dpr") DataPermissionRule dpr, @Param("containsQuestionTeacher") boolean containsQuestionTeacher, @Param("userId") Long userId, @Param("makeMethod") MakeMethodEnum makeMethod, @Param("cardRuleId") Long cardRuleId);
+    IPage<ExamTaskDetailDto> listTaskPaper(Page<ExamTaskDetailDto> page, @Param("schoolId") Long schoolId, @Param("semesterId") Long semesterId, @Param("examId") Long examId, @Param("courseId") Long courseId, @Param("paperNumber") String paperNumber, @Param("startTime") Long startTime, @Param("endTime") Long endTime, @Param("dpr") DataPermissionRule dpr, @Param("containsQuestionTeacher") boolean containsQuestionTeacher, @Param("userId") Long userId);
 
 
     List<RelatePaperDto> listPaperNumbers(@Param("schoolId") Long schoolId, @Param("courseCode") String courseCode, @Param("status") String status, @Param("dpr") DataPermissionRule dpr);
     List<RelatePaperDto> listPaperNumbers(@Param("schoolId") Long schoolId, @Param("courseCode") String courseCode, @Param("status") String status, @Param("dpr") DataPermissionRule dpr);
 
 
@@ -47,7 +47,7 @@ public interface ExamTaskMapper extends BaseMapper<ExamTask> {
 
 
     List<ExamTask> listExamTaskAuditExpire(@Param("startTime") Long startTime, @Param("endTime") Long endTime);
     List<ExamTask> listExamTaskAuditExpire(@Param("startTime") Long startTime, @Param("endTime") Long endTime);
 
 
-    List<ExamTaskDetailDto> listTaskPaper(@Param("schoolId") Long schoolId, @Param("semesterId") Long semesterId, @Param("examId") Long examId, @Param("courseCode") String courseCode, @Param("paperNumber") String paperNumber, @Param("cardRuleId") Long cardRuleId, @Param("makeMethod") MakeMethodEnum makeMethod, @Param("startTime") Long startTime, @Param("endTime") Long endTime, @Param("dpr") DataPermissionRule dpr, @Param("orgIds") Set<Long> orgIds, @Param("containsQuestionTeacher") boolean containsQuestionTeacher, @Param("userId") Long userId);
+    List<ExamTaskDetailDto> listTaskPaper(@Param("schoolId") Long schoolId, @Param("semesterId") Long semesterId, @Param("examId") Long examId, @Param("courseId") Long courseId, @Param("paperNumber") String paperNumber, @Param("startTime") Long startTime, @Param("endTime") Long endTime, @Param("dpr") DataPermissionRule dpr, @Param("orgIds") Set<Long> orgIds, @Param("containsQuestionTeacher") boolean containsQuestionTeacher, @Param("userId") Long userId);
 
 
     /**
     /**
      * 获取待办任务
      * 获取待办任务
@@ -58,14 +58,8 @@ public interface ExamTaskMapper extends BaseMapper<ExamTask> {
 
 
     /**
     /**
      * 根据流程状态查找命题任务
      * 根据流程状态查找命题任务
-     *
-     * @param schoolId
-     * @param courseCode
-     * @param paperNumber
-     * @param flowStatus
-     * @return
      */
      */
-    List<ExamTask> findExamTaskByFlowStatus(@Param("schoolId") Long schoolId, @Param("examId") Long examId, @Param("courseCode") String courseCode, @Param("paperNumber") String paperNumber, @Param("flowStatus") String flowStatus);
+    List<ExamTask> findExamTaskByFlowStatus(@Param("schoolId") Long schoolId, @Param("examId") Long examId, @Param("courseId") Long courseId, @Param("paperNumber") String paperNumber, @Param("flowStatus") String flowStatus);
 
 
     /**
     /**
      * 根据试卷编号查询考场详细数据集(印刷计划状态为‘PRINTING’、‘PRINTING_FINISH‘的)
      * 根据试卷编号查询考场详细数据集(印刷计划状态为‘PRINTING’、‘PRINTING_FINISH‘的)

+ 0 - 20
distributed-print-business/src/main/java/com/qmth/distributed/print/business/mapper/TeachCourseMapper.java

@@ -32,24 +32,4 @@ public interface TeachCourseMapper extends BaseMapper<TeachCourse> {
      */
      */
     IPage<TeachCourseResult> findTeachCoursePage(@Param("iPage") Page<TeachCourseResult> iPage,
     IPage<TeachCourseResult> findTeachCoursePage(@Param("iPage") Page<TeachCourseResult> iPage,
             @Param("examId") Long examId, @Param("courseName") String courseName, @Param("schoolId") Long schoolId, @Param("dpr") DataPermissionRule dpr);
             @Param("examId") Long examId, @Param("courseName") String courseName, @Param("schoolId") Long schoolId, @Param("dpr") DataPermissionRule dpr);
-
-    /**
-     * 教师团队分页查询
-     *
-     * @param iPage      分页参数
-     * @param leaderId   课程责任人id
-     * @param courseCode 课程编号
-     * @param userInfo   用户信息(姓名||工号)
-     * @return 分页结果
-     */
-    IPage<TeacherTeamResult> findTeacherTeamPage(@Param("iPage") Page<TeacherTeamResult> iPage, @Param("courseCode") String courseCode, @Param("leaderId") Long leaderId,
-            @Param("userInfo") String userInfo);
-
-    /**
-     * 根据机构id查询教师集合
-     *
-     * @param orgIdList orgIdList
-     * @return 教师查询集合
-     */
-    List<TeacherSelectResult> findTeacherByOrgIds(@Param("orgIdList") List<Long> orgIdList);
 }
 }

+ 1 - 16
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/BasicExamStudentService.java

@@ -23,22 +23,7 @@ import java.util.Map;
  */
  */
 public interface BasicExamStudentService extends IService<BasicExamStudent> {
 public interface BasicExamStudentService extends IService<BasicExamStudent> {
 
 
-    /**
-     * 分页查询
-     *
-     * @param semesterId      学期id
-     * @param examId          考试id
-     * @param courseCode      课程代码
-     * @param teacher         教师
-     * @param college         学院
-     * @param major           专业
-     * @param teachClazz      教学班
-     * @param examStudentInfo 考生信息(姓名/学号)
-     * @param pageNumber      分页页码
-     * @param pageSize        分页数量
-     * @return 查询结果
-     */
-    IPage<BasicExamStudentResult> page(Long semesterId, Long examId, String courseCode, String teacher,
+    IPage<BasicExamStudentResult> page(Long semesterId, Long examId, Long courseId, String teacher,
                                        String college, String major, String teachClazz, String examStudentInfo, int pageNumber, int pageSize);
                                        String college, String major, String teachClazz, String examStudentInfo, int pageNumber, int pageSize);
 
 
     /**
     /**

+ 2 - 2
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/BasicTeachClazzService.java

@@ -23,10 +23,10 @@ public interface BasicTeachClazzService extends IService<BasicTeachClazz> {
      * @param requestUser    请求人
      * @param requestUser    请求人
      * @param examId         考试id
      * @param examId         考试id
      * @param teachClazzName 教学班名称
      * @param teachClazzName 教学班名称
-     * @param courseCode     课程编号
+     * @param courseId     课程编号
      * @return 教学班
      * @return 教学班
      */
      */
-    BasicTeachClazz findOrCreateBasicTeachClazz(SysUser requestUser, Long examId, String courseCode, String teachClazzName);
+    BasicTeachClazz findOrCreateBasicTeachClazz(SysUser requestUser, Long examId, Long courseId, String teachClazzName);
 
 
     /**
     /**
      * 查询所有加血版
      * 查询所有加血版

+ 1 - 3
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/ConditionService.java

@@ -20,12 +20,10 @@ public interface ConditionService {
 
 
     List<BasicCourse> listCourse(Long semesterId, Long examId, Boolean enable, List<String> printPlanId);
     List<BasicCourse> listCourse(Long semesterId, Long examId, Boolean enable, List<String> printPlanId);
 
 
-    List<String> listPaperNumber(Long semesterId, Long examId, String courseCode, List<String> printPlanId);
+    List<String> listPaperNumber(Long semesterId, Long examId, Long courseId, List<String> printPlanId);
 
 
     List<PrintPlanBrief> listPrintPlan(Long semesterId, Long examId, String source);
     List<PrintPlanBrief> listPrintPlan(Long semesterId, Long examId, String source);
 
 
-    List<BasicClazz> listClazz(Long semesterId, Long examId, String courseCode, String clazzName);
-
     List<SysOrg> listCollege();
     List<SysOrg> listCollege();
 
 
     List<BasicTeachClazzResult> listBasicTeachClazz(Long examId, String courseCode, String clazzName);
     List<BasicTeachClazzResult> listBasicTeachClazz(Long examId, String courseCode, String clazzName);

+ 2 - 6
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/ExamCardService.java

@@ -23,7 +23,7 @@ public interface ExamCardService extends IService<ExamCard> {
 
 
     Map<String, String> saveExamCard(ExamCardParams examCardParams) throws Exception;
     Map<String, String> saveExamCard(ExamCardParams examCardParams) throws Exception;
 
 
-    List<ExamCard> listSelectCard(String courseCode, Long examId, String paperNumber);
+    List<ExamCard> listSelectCard(Long examId, Long courseId, String paperNumber);
 
 
     IPage<ExamCard> listPage(Long semesterId, Long examId, String courseCode, String paperNumber, String cardType, String title, String createMethod, Boolean enable, Long createStartTime, Long createEndTime, Integer pageNumber, Integer pageSize);
     IPage<ExamCard> listPage(Long semesterId, Long examId, String courseCode, String paperNumber, String cardType, String title, String createMethod, Boolean enable, Long createStartTime, Long createEndTime, Integer pageNumber, Integer pageSize);
 
 
@@ -33,12 +33,8 @@ public interface ExamCardService extends IService<ExamCard> {
 
 
     /**
     /**
      * 题卡复制
      * 题卡复制
-     *
-     * @param id         被复制的题卡id
-     * @param courseCode 复制后的题卡所绑定的课程编号
-     * @return 复制后的题卡id
      */
      */
-    Long copyCard(Long id, String courseCode);
+    Long copyCard(Long id, Long courseId);
 
 
     void convertImage(Long id);
     void convertImage(Long id);
 
 

+ 2 - 1
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/ExamDetailService.java

@@ -50,7 +50,7 @@ public interface ExamDetailService extends IService<ExamDetail> {
      */
      */
     double calculateTotalPackages(Long printPlanId);
     double calculateTotalPackages(Long printPlanId);
 
 
-    IPage<PrintTaskDto> listPrintTask(Long semesterId, Long examId, Long printPlanId, String status, String courseCode, String paperNumber, String examPlace, String examRoom, Long examStartTime, Long examEndTime, Long printStartTime, Long printEndTime, Long printHouseId, Integer pageNumber, Integer pageSize);
+    IPage<PrintTaskDto> listPrintTask(Long semesterId, Long examId, Long printPlanId, String status, Long courseId, String paperNumber, String examPlace, String examRoom, Long examStartTime, Long examEndTime, Long printStartTime, Long printEndTime, Long printHouseId, Integer pageNumber, Integer pageSize);
 
 
     PrintTaskTotalDto taskTotalData(Long semesterId, Long examId, Long printPlanId, String status, String courseCode, String paperNumber, String examPlace, String examRoom, Long examStartTime, Long examEndTime, Long printStartTime, Long printEndTime, Long printHouseId);
     PrintTaskTotalDto taskTotalData(Long semesterId, Long examId, Long printPlanId, String status, String courseCode, String paperNumber, String examPlace, String examRoom, Long examStartTime, Long examEndTime, Long printStartTime, Long printEndTime, Long printHouseId);
 
 
@@ -196,6 +196,7 @@ public interface ExamDetailService extends IService<ExamDetail> {
     List<Map> listStudentByExamDetailCourseId(Long schoolId, Long examDetailCourseId, String ticketNumber, String type);
     List<Map> listStudentByExamDetailCourseId(Long schoolId, Long examDetailCourseId, String ticketNumber, String type);
 
 
     List<ExamDetail> listByCourseCodeAndPaperNumber(Long schoolId, Long examId, String courseCode, String paperNumber);
     List<ExamDetail> listByCourseCodeAndPaperNumber(Long schoolId, Long examId, String courseCode, String paperNumber);
+    List<ExamDetail> listByCourseIdAndPaperNumber(Long schoolId, Long examId, Long courseId, String paperNumber);
 
 
     boolean taskNormal(ExamDetail examDetail);
     boolean taskNormal(ExamDetail examDetail);
 
 

+ 1 - 0
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/ExamTaskDetailService.java

@@ -67,6 +67,7 @@ public interface ExamTaskDetailService extends IService<ExamTaskDetail> {
     boolean cancel(Long id, String cancelRemark);
     boolean cancel(Long id, String cancelRemark);
 
 
     ExamTaskDetail getByExamIdAndCourseCodeAndPaperNumber(Long examId, String courseCode, String paperNumber);
     ExamTaskDetail getByExamIdAndCourseCodeAndPaperNumber(Long examId, String courseCode, String paperNumber);
+    ExamTaskDetail getByExamIdAndCourseIdAndPaperNumber(Long examId, Long courseId, String paperNumber);
 
 
     void updateExposePaperType(Long examId, List<ExamDetailCourse> listByExamDetailId);
     void updateExposePaperType(Long examId, List<ExamDetailCourse> listByExamDetailId);
 }
 }

+ 13 - 11
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/ExamTaskService.java

@@ -35,7 +35,7 @@ import java.util.Map;
  */
  */
 public interface ExamTaskService extends IService<ExamTask> {
 public interface ExamTaskService extends IService<ExamTask> {
 
 
-    IPage<ExamTaskDto> list(Long semesterId, Long examId, Boolean enable, String status, Long cardRuleId, String courseCode, String paperNumber, Long startTime, Long endTime, String userName, String createName, Integer pageNumber, Integer pageSize);
+    IPage<ExamTaskDto> list(Long semesterId, Long examId, Boolean enable, String status, Long courseId, String paperNumber, Long startTime, Long endTime, String userName, Integer pageNumber, Integer pageSize);
 
 
     List<BlurryUserDto> listUser(String param);
     List<BlurryUserDto> listUser(String param);
 
 
@@ -55,15 +55,15 @@ public interface ExamTaskService extends IService<ExamTask> {
 
 
     List<ExamTask> saveBatch(ExamTask task);
     List<ExamTask> saveBatch(ExamTask task);
 
 
-    IPage<ExamTaskDto> listTaskApply(Long semesterId, Long examId, String auditStatus, Long cardRuleId, String courseCode, String paperNumber, Long startTime, Long endTime, String userName, Integer pageNumber, Integer pageSize);
+    IPage<ExamTaskDto> listTaskApply(Long semesterId, Long examId, String auditStatus, Long courseId, String paperNumber, Long startTime, Long endTime, String userName, Integer pageNumber, Integer pageSize);
 
 
-    IPage<ExamTaskDto> listTaskReviewUnaudited(Long semesterId, Long examId, String courseCode, String paperNumber, Long userId, Long cardRuleId, Long startTime, Long endTime, Long startCreateTime, Long endCreateTime, String createName, Integer pageNumber, Integer pageSize);
+    IPage<ExamTaskDto> listTaskReviewUnaudited(Long semesterId, Long examId, Long courseId, String paperNumber, Long userId, Long startTime, Long endTime, Long startCreateTime, Long endCreateTime, Integer pageNumber, Integer pageSize);
 
 
-    IPage<ExamTaskDto> listTaskReviewAudited(Long semesterId, Long examId, String reviewStatus, String courseCode, String paperNumber, Long userId, Long cardRuleId, Long startTime, Long endTime, Long startCreateTime, Long endCreateTime, String createName, Integer pageNumber, Integer pageSize);
+    IPage<ExamTaskDto> listTaskReviewAudited(Long semesterId, Long examId, Long courseId, String paperNumber, Long userId, Long startTime, Long endTime, Long startCreateTime, Long endCreateTime, Integer pageNumber, Integer pageSize);
 
 
     boolean taskReviewSave(ExamTaskReviewLog taskReviewLog) throws IOException;
     boolean taskReviewSave(ExamTaskReviewLog taskReviewLog) throws IOException;
 
 
-    IPage<ExamTaskDetailDto> listTaskPaper(Long semesterId, Long examId, String courseCode, String paperNumber, Long startTime, Long endTime, MakeMethodEnum makeMethodEnum, Long cardRuleId, Integer pageNumber, Integer pageSize);
+    IPage<ExamTaskDetailDto> listTaskPaper(Long semesterId, Long examId, Long courseId, String paperNumber, Long startTime, Long endTime, Integer pageNumber, Integer pageSize);
 
 
     List<RelatePaperDto> listPaperTypes(Long examTaskId, Long printPlanId, String courseCode);
     List<RelatePaperDto> listPaperTypes(Long examTaskId, Long printPlanId, String courseCode);
 
 
@@ -83,9 +83,9 @@ public interface ExamTaskService extends IService<ExamTask> {
      */
      */
     void checkDataByExamination(Long printPlanId, List<Long> examDetailIdList, SysUser user) throws IOException;
     void checkDataByExamination(Long printPlanId, List<Long> examDetailIdList, SysUser user) throws IOException;
 
 
-    List<ExamTaskDetailDto> listTaskPaper(Long semesterId, Long examId, String courseCode, String paperNumber, Long cardRuleId, MakeMethodEnum makeMethod, Long startTime, Long endTime);
+    List<ExamTaskDetailDto> listTaskPaper(Long semesterId, Long examId, Long courseId, String paperNumber, Long startTime, Long endTime);
 
 
-    TBTask taskDownloadPdf(Long semesterId, Long examId, String courseCode, String paperNumber, Long cardRuleId, MakeMethodEnum makeMethod, Long startTime, Long endTime);
+    TBTask taskDownloadPdf(Long semesterId, Long examId, Long courseId, String paperNumber, Long startTime, Long endTime);
 
 
     /**
     /**
      * 获取待办任务
      * 获取待办任务
@@ -111,12 +111,12 @@ public interface ExamTaskService extends IService<ExamTask> {
      * 根据流程状态查找命题任务
      * 根据流程状态查找命题任务
      *
      *
      * @param schoolId
      * @param schoolId
-     * @param courseCode
+     * @param courseId
      * @param paperNumber
      * @param paperNumber
      * @param flowStatus
      * @param flowStatus
      * @return
      * @return
      */
      */
-    ExamTask findExamTaskByFlowStatus(Long schoolId, Long examId, String courseCode, String paperNumber, FlowStatusEnum flowStatus);
+    ExamTask findExamTaskByFlowStatus(Long schoolId, Long examId, Long courseId, String paperNumber, FlowStatusEnum flowStatus);
 
 
     void removeByExamTaskId(Long examTaskId);
     void removeByExamTaskId(Long examTaskId);
 
 
@@ -180,13 +180,13 @@ public interface ExamTaskService extends IService<ExamTask> {
      * </P>
      * </P>
      *
      *
      * @param examId      考试id
      * @param examId      考试id
-     * @param courseCode  基础课程编号
+     * @param courseId    基础课程编号
      * @param teacher
      * @param teacher
      * @param className
      * @param className
      * @param requestUser 请求的用户
      * @param requestUser 请求的用户
      * @return 命题任务考试对象查询结果
      * @return 命题任务考试对象查询结果
      */
      */
-    List<ExamTaskStudentObjectResult> findExamTaskStudentObject(Long examId, String courseCode, String teacher, String className, SysUser requestUser) throws Exception;
+    List<ExamTaskStudentObjectResult> findExamTaskStudentObject(Long examId, Long courseId, String teacher, String className, SysUser requestUser) throws Exception;
 
 
     /**
     /**
      * 命题任务考生导入
      * 命题任务考生导入
@@ -207,6 +207,8 @@ public interface ExamTaskService extends IService<ExamTask> {
 
 
     ExamTask getByExamIdAndCourseCodeAndPaperNumber(Long examId, String courseCode, String paperNumber);
     ExamTask getByExamIdAndCourseCodeAndPaperNumber(Long examId, String courseCode, String paperNumber);
 
 
+    ExamTask getByExamIdAndCourseIdAndPaperNumber(Long examId, Long courseId, String paperNumber);
+
     IPage<MakeupExamTaskDto> listMakeupExamTask(Long printPlanId, Long semesterId, Long examId, Long collegeId, String courseCode, String paperNumber, String userName, Integer pageNumber, Integer pageSize);
     IPage<MakeupExamTaskDto> listMakeupExamTask(Long printPlanId, Long semesterId, Long examId, Long collegeId, String courseCode, String paperNumber, String userName, Integer pageNumber, Integer pageSize);
 
 
     void saveMakeupTask(MakeupExamTaskTotalParam makeupExamTaskTotalParam);
     void saveMakeupTask(MakeupExamTaskTotalParam makeupExamTaskTotalParam);

+ 2 - 31
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/PrintCommonService.java

@@ -74,6 +74,7 @@ public interface PrintCommonService {
     BasicAttachment saveAttachmentPdfFromHtml(String fileName, String htmlContent, Long userId, List<PdfDto> localFileList, List<File> fileTempList) throws IOException;
     BasicAttachment saveAttachmentPdfFromHtml(String fileName, String htmlContent, Long userId, List<PdfDto> localFileList, List<File> fileTempList) throws IOException;
 
 
     BasicAttachment saveAttachmentPdfFromHtml(String fileName, File file, Long userId, List<PdfDto> localFileList, List<File> fileTempList, PageSizeEnum pageSizeEnum) throws IOException;
     BasicAttachment saveAttachmentPdfFromHtml(String fileName, File file, Long userId, List<PdfDto> localFileList, List<File> fileTempList, PageSizeEnum pageSizeEnum) throws IOException;
+
     /**
     /**
      * 保存html附件和该html转成pdf的附件
      * 保存html附件和该html转成pdf的附件
      *
      *
@@ -105,14 +106,6 @@ public interface PrintCommonService {
      */
      */
     BasicAttachment saveAttachment(MultipartFile file, String md5, UploadFileEnum type);
     BasicAttachment saveAttachment(MultipartFile file, String md5, UploadFileEnum type);
 
 
-    /**
-     * 科目删除
-     *
-     * @param id
-     * @return
-     */
-    boolean remove(Long id);
-
     /**
     /**
      * 分页查询
      * 分页查询
      *
      *
@@ -134,22 +127,6 @@ public interface PrintCommonService {
      */
      */
     List<BasicCourse> list(String param, List<Long> printPlanIdList, Long teachingRoomId);
     List<BasicCourse> list(String param, List<Long> printPlanIdList, Long teachingRoomId);
 
 
-    /**
-     * 机构禁用
-     *
-     * @param org
-     * @return
-     */
-    boolean enable(SysOrg org);
-
-    /**
-     * 机构删除
-     *
-     * @param id
-     * @return
-     */
-    boolean sysOrgRemove(Long id);
-
     /**
     /**
      * 保存任务
      * 保存任务
      *
      *
@@ -216,14 +193,8 @@ public interface PrintCommonService {
 
 
     /**
     /**
      * 校验是否可以提交
      * 校验是否可以提交
-     *
-     * @param schoolId
-     * @param courseCode
-     * @param paperNumber
-     * @param user
-     * @throws IOException
      */
      */
-    void checkExamDataAndCreatePdfTask(Long schoolId, Long examId, String courseCode, String paperNumber, SysUser user) throws IOException;
+    void checkExamDataAndCreatePdfTask(Long schoolId, Long examId, Long courseId, String paperNumber, SysUser user) throws IOException;
 
 
     void checkDataMakeup(Long schoolId, ExamDetail examDetail, String courseCode, String paperNumber, SysUser user);
     void checkDataMakeup(Long schoolId, ExamDetail examDetail, String courseCode, String paperNumber, SysUser user);
 
 

+ 1 - 1
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/TBSyncTaskService.java

@@ -17,7 +17,7 @@ public interface TBSyncTaskService extends IService<TBSyncTask> {
 
 
     TBSyncTask saveTask(Long schoolId, Long semesterId, Long examId, Long objectId, PushTypeEnum type, String remark);
     TBSyncTask saveTask(Long schoolId, Long semesterId, Long examId, Long objectId, PushTypeEnum type, String remark);
 
 
-    TBSyncTask saveTask(Long schoolId, Long semesterId, Long examId, String courseCode, String courseName, String paperNumber, String paperType, PushTypeEnum type, String remark);
+    TBSyncTask saveTask(Long schoolId, Long semesterId, Long examId, Long courseId, String paperNumber, String paperType, PushTypeEnum type, String remark);
 
 
     void updateStatusAndResultById(Long id, TaskStatusEnum status, TaskResultEnum result, String errorMessage);
     void updateStatusAndResultById(Long id, TaskStatusEnum status, TaskResultEnum result, String errorMessage);
 
 

+ 1 - 101
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/TeachCourseService.java

@@ -2,25 +2,15 @@ package com.qmth.distributed.print.business.service;
 
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.baomidou.mybatisplus.extension.service.IService;
-import com.qmth.distributed.print.business.bean.params.AssignClazzParam;
 import com.qmth.distributed.print.business.bean.params.TeachCourseSelectParam;
 import com.qmth.distributed.print.business.bean.params.TeachCourseSelectParam;
-import com.qmth.distributed.print.business.bean.result.ClazzDistributedResult;
 import com.qmth.distributed.print.business.bean.result.CourseWeightSettingStatusResult;
 import com.qmth.distributed.print.business.bean.result.CourseWeightSettingStatusResult;
-import com.qmth.distributed.print.business.bean.params.TeachCourseParams;
-import com.qmth.distributed.print.business.bean.params.TeacherTeamParam;
 import com.qmth.distributed.print.business.bean.result.DictionaryResult;
 import com.qmth.distributed.print.business.bean.result.DictionaryResult;
 import com.qmth.distributed.print.business.bean.result.TeachCourseResult;
 import com.qmth.distributed.print.business.bean.result.TeachCourseResult;
 import com.qmth.distributed.print.business.entity.TeachCourse;
 import com.qmth.distributed.print.business.entity.TeachCourse;
 import com.qmth.distributed.print.business.enums.CourseSettingTypeEnum;
 import com.qmth.distributed.print.business.enums.CourseSettingTypeEnum;
-import com.qmth.teachcloud.common.bean.result.TeacherSelectResult;
-import com.qmth.teachcloud.common.bean.result.TeacherTeamResult;
-import com.qmth.teachcloud.common.entity.BasicCourse;
 import com.qmth.teachcloud.common.entity.SysUser;
 import com.qmth.teachcloud.common.entity.SysUser;
-import org.springframework.web.multipart.MultipartFile;
 
 
-import java.io.IOException;
 import java.util.List;
 import java.util.List;
-import java.util.Set;
 
 
 /**
 /**
  * @Description: 教学课程服务类
  * @Description: 教学课程服务类
@@ -40,16 +30,6 @@ public interface TeachCourseService extends IService<TeachCourse> {
      */
      */
     IPage<TeachCourseResult> teachCoursePage(Long examId, String courseName, int pageNumber, int pageSize);
     IPage<TeachCourseResult> teachCoursePage(Long examId, String courseName, int pageNumber, int pageSize);
 
 
-    /**
-     * 手动创建教学课程
-     *
-     * @param teachCourseParams 课程新增参数
-     * @param requestUser       请求的用户
-     * @return 创建结果
-     */
-    @Deprecated
-    Boolean manualCreate(TeachCourseParams teachCourseParams, SysUser requestUser);
-
     /**
     /**
      * 选择课程表并创建教学课程
      * 选择课程表并创建教学课程
      *
      *
@@ -57,15 +37,6 @@ public interface TeachCourseService extends IService<TeachCourse> {
      */
      */
     void selectCreate(TeachCourseSelectParam teachCourseSelectParam);
     void selectCreate(TeachCourseSelectParam teachCourseSelectParam);
 
 
-    /**
-     * 导入教学课程
-     *
-     * @param file        文件
-     * @param requestUser 请求用户
-     */
-    @Deprecated
-    void importTeachCourse(MultipartFile file, SysUser requestUser) throws IOException, NoSuchFieldException;
-
     /**
     /**
      * 根据用户id查询该用户所属机构下可以创建为教学课程的基础课程列表
      * 根据用户id查询该用户所属机构下可以创建为教学课程的基础课程列表
      *
      *
@@ -81,60 +52,6 @@ public interface TeachCourseService extends IService<TeachCourse> {
      */
      */
     void deleteTeachCourseBatch(List<Long> idList);
     void deleteTeachCourseBatch(List<Long> idList);
 
 
-    /**
-     * 自动创建教师团队
-     *
-     * @param teacherTeamParam 教师团队参数
-     * @param requestUser      请求的用户
-     */
-    void manualCreateTeacher(TeacherTeamParam teacherTeamParam, SysUser requestUser) throws IllegalAccessException;
-
-    /**
-     * 教师库添加教师团队
-     *
-     * @param teachCourseId 教学课程id
-     * @param userIdList    用户id集合
-     * @param requestUser   请求人
-     */
-    void selectCreateTeacher(Long teachCourseId, List<Long> userIdList, SysUser requestUser);
-
-    /**
-     * 导入教师团队
-     *
-     * @param file          文件
-     * @param basicCourseId 基础课程id
-     * @param requestUser   请求的用户
-     */
-    @Deprecated
-    void importTeacherTeam(MultipartFile file, Long basicCourseId, SysUser requestUser) throws IOException, NoSuchFieldException, IllegalAccessException;
-
-    /**
-     * 分页查询教师团队
-     *
-     * @param teachCourseId 教学课程id
-     * @param userInfo      教师信息
-     * @param pageNumber    分页页数
-     * @param pageSize      分页容量
-     * @return 分页结果
-     */
-    IPage<TeacherTeamResult> findTeacherTeamPage(Long teachCourseId, String userInfo, int pageNumber, int pageSize);
-
-    /**
-     * 根据机构id查询用户
-     *
-     * @param orgId 机构id
-     * @return 用户结果
-     */
-    List<TeacherSelectResult> findUserByOrgId(Long orgId);
-
-    /**
-     * 插入老师和课程关联表
-     *
-     * @param basicCourseId
-     * @param teachIdSet
-     */
-    public void updateByCourseIdAndTeacherList(Long basicCourseId, Set<Long> teachIdSet);
-
     /**
     /**
      * 根据考试id,课程编号,教师id查询教学课程
      * 根据考试id,课程编号,教师id查询教学课程
      *
      *
@@ -156,28 +73,11 @@ public interface TeachCourseService extends IService<TeachCourse> {
     /**
     /**
      * 查询课程权重设置状态
      * 查询课程权重设置状态
      *
      *
-     * @param teachCourseId         教学课程id
+     * @param teachCourseId 教学课程id
      * @return 课程权重设置状态
      * @return 课程权重设置状态
      */
      */
     CourseWeightSettingStatusResult findCourseWeightSettingStatus(Long teachCourseId);
     CourseWeightSettingStatusResult findCourseWeightSettingStatus(Long teachCourseId);
 
 
-    /**
-     * 查询班级分配情况
-     *
-     * @param teachCourseId 教学课程id
-     * @param clazzName     班级名称
-     * @return 分配情况结果
-     */
-    List<ClazzDistributedResult> findClazzDistributedStatus(Long teachCourseId, String clazzName);
-
-    /**
-     * 分配班级
-     *
-     * @param assignClazzParam 分配班级参数
-     * @param requestUser      登录人
-     */
-    void assignClazz(AssignClazzParam assignClazzParam, SysUser requestUser);
-
     /**
     /**
      * 查询教师绑定课程关系
      * 查询教师绑定课程关系
      *
      *

+ 24 - 14
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/BasicExamStudentServiceImpl.java

@@ -28,6 +28,7 @@ import com.qmth.teachcloud.mark.entity.MarkPaper;
 import com.qmth.teachcloud.mark.entity.MarkStudent;
 import com.qmth.teachcloud.mark.entity.MarkStudent;
 import com.qmth.teachcloud.mark.service.MarkPaperService;
 import com.qmth.teachcloud.mark.service.MarkPaperService;
 import com.qmth.teachcloud.mark.service.MarkStudentService;
 import com.qmth.teachcloud.mark.service.MarkStudentService;
+import com.qmth.teachcloud.mark.service.MarkTaskService;
 import org.apache.commons.collections4.CollectionUtils;
 import org.apache.commons.collections4.CollectionUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.BeanUtils;
@@ -67,14 +68,15 @@ public class BasicExamStudentServiceImpl extends ServiceImpl<BasicExamStudentMap
     private MarkStudentService markStudentService;
     private MarkStudentService markStudentService;
     @Resource
     @Resource
     private BasicExamService basicExamService;
     private BasicExamService basicExamService;
+    @Resource
+    private MarkTaskService markTaskService;
 
 
     @Override
     @Override
-    public IPage<BasicExamStudentResult> page(Long semesterId, Long examId, String courseCode,
+    public IPage<BasicExamStudentResult> page(Long semesterId, Long examId, Long courseId,
                                               String teacher, String college, String major, String teachClazz, String examStudentInfo, int pageNumber,
                                               String teacher, String college, String major, String teachClazz, String examStudentInfo, int pageNumber,
                                               int pageSize) {
                                               int pageSize) {
         SysUser requestUser = (SysUser) ServletUtil.getRequestUser();
         SysUser requestUser = (SysUser) ServletUtil.getRequestUser();
 
 
-        courseCode = SystemConstant.translateSpecificSign(courseCode);
         teacher = SystemConstant.translateSpecificSign(teacher);
         teacher = SystemConstant.translateSpecificSign(teacher);
         college = SystemConstant.translateSpecificSign(college);
         college = SystemConstant.translateSpecificSign(college);
         major = SystemConstant.translateSpecificSign(major);
         major = SystemConstant.translateSpecificSign(major);
@@ -84,7 +86,7 @@ public class BasicExamStudentServiceImpl extends ServiceImpl<BasicExamStudentMap
         DataPermissionRule dpr = basicRoleDataPermissionService.findDataPermission(requestUser.getSchoolId(), requestUser.getId(),
         DataPermissionRule dpr = basicRoleDataPermissionService.findDataPermission(requestUser.getSchoolId(), requestUser.getId(),
                 ServletUtil.getRequest().getServletPath());
                 ServletUtil.getRequest().getServletPath());
         IPage<BasicExamStudentResult> page = this.baseMapper.findBasicExamStudentPage(new Page<>(pageNumber, pageSize),
         IPage<BasicExamStudentResult> page = this.baseMapper.findBasicExamStudentPage(new Page<>(pageNumber, pageSize),
-                requestUser.getSchoolId(), semesterId, examId, courseCode, teacher, college, major, teachClazz, examStudentInfo, dpr);
+                requestUser.getSchoolId(), semesterId, examId, courseId, teacher, college, major, teachClazz, examStudentInfo, dpr);
         for (BasicExamStudentResult record : page.getRecords()) {
         for (BasicExamStudentResult record : page.getRecords()) {
             Long examStartTime = record.getExamStartTime();
             Long examStartTime = record.getExamStartTime();
             Long examEndTime = record.getExamEndTime();
             Long examEndTime = record.getExamEndTime();
@@ -146,7 +148,7 @@ public class BasicExamStudentServiceImpl extends ServiceImpl<BasicExamStudentMap
             if (markPaper == null) {
             if (markPaper == null) {
                 // 模式4,不存在试卷,则创建
                 // 模式4,不存在试卷,则创建
                 BasicCourse basicCourse = basicCourseService.getByCode(basicExamStudent.getCourseCode());
                 BasicCourse basicCourse = basicCourseService.getByCode(basicExamStudent.getCourseCode());
-                markPaper = new MarkPaper(basicExamStudent.getExamId(), basicExamStudent.getCourseCode(), basicCourse.getName(), basicExamStudent.getPaperNumber(), String.valueOf(System.currentTimeMillis()), requestUser.getId(), SystemConstant.DEFAULT_PAPER_TYPE_A);
+                markPaper = new MarkPaper(basicExamStudent.getExamId(), basicExamStudent.getCourseId(), basicExamStudent.getPaperNumber(), String.valueOf(System.currentTimeMillis()), requestUser.getId(), SystemConstant.DEFAULT_PAPER_TYPE_A);
                 markPaperService.save(markPaper);
                 markPaperService.save(markPaper);
             }
             }
         } else {
         } else {
@@ -197,9 +199,17 @@ public class BasicExamStudentServiceImpl extends ServiceImpl<BasicExamStudentMap
         if (CollectionUtils.isNotEmpty(idList)) {
         if (CollectionUtils.isNotEmpty(idList)) {
             List<BasicExamStudent> basicExamStudentList = this.listByIds(idList);
             List<BasicExamStudent> basicExamStudentList = this.listByIds(idList);
             for (BasicExamStudent basicExamStudent : basicExamStudentList) {
             for (BasicExamStudent basicExamStudent : basicExamStudentList) {
-                MarkStudent markStudent = markStudentService.findByExamIdAndPaperNumberAndStudentCode(basicExamStudent.getExamId(), basicExamStudent.getPaperNumber(), basicExamStudent.getStudentCode());
-                if (markStudent != null && markStudent.getUpload()) {
-                    throw ExceptionResultEnum.ERROR.exception("考生已扫描,无法删除");
+                List<MarkStudent> markStudentList = markStudentService.listByStudentId(basicExamStudent.getId());
+                if (CollectionUtils.isNotEmpty(markStudentList)) {
+                    StringJoiner stringJoiner = new StringJoiner(";");
+                    for (MarkStudent markStudent : markStudentList) {
+                        if (markTaskService.countByStudentId(markStudent.getId()) > 0) {
+                            stringJoiner.add("课程代码[" + basicExamStudent.getCourseCode() + "],学号[" + basicExamStudent.getStudentCode() + "]考生已开始评卷,无法删除");
+                        }
+                    }
+                    if (stringJoiner.toString().length() > 0) {
+                        throw ExceptionResultEnum.ERROR.exception(stringJoiner.toString());
+                    }
                 }
                 }
                 markStudentService.deleteByExamIdAndPaperNumberAndStudentCode(basicExamStudent.getExamId(), basicExamStudent.getPaperNumber(), basicExamStudent.getStudentCode());
                 markStudentService.deleteByExamIdAndPaperNumberAndStudentCode(basicExamStudent.getExamId(), basicExamStudent.getPaperNumber(), basicExamStudent.getStudentCode());
                 BasicExam basicExam = basicExamService.getById(basicExamStudent.getExamId());
                 BasicExam basicExam = basicExamService.getById(basicExamStudent.getExamId());
@@ -228,7 +238,7 @@ public class BasicExamStudentServiceImpl extends ServiceImpl<BasicExamStudentMap
         Long id = basicExamStudentParam.getId();
         Long id = basicExamStudentParam.getId();
         Long semesterId = basicExamStudentParam.getSemesterId();
         Long semesterId = basicExamStudentParam.getSemesterId();
         Long examId = basicExamStudentParam.getExamId();
         Long examId = basicExamStudentParam.getExamId();
-        String courseCode = basicExamStudentParam.getCourseCode();
+        Long courseId = basicExamStudentParam.getCourseId();
         String studentName = basicExamStudentParam.getStudentName();
         String studentName = basicExamStudentParam.getStudentName();
         String studentCode = basicExamStudentParam.getStudentCode();
         String studentCode = basicExamStudentParam.getStudentCode();
         String college = basicExamStudentParam.getCollege();
         String college = basicExamStudentParam.getCollege();
@@ -249,12 +259,12 @@ public class BasicExamStudentServiceImpl extends ServiceImpl<BasicExamStudentMap
         if (!SystemConstant.longNotNull(examId)) {
         if (!SystemConstant.longNotNull(examId)) {
             errorMsgList.add("请选择考试");
             errorMsgList.add("请选择考试");
         }
         }
-        if (!SystemConstant.strNotNull(courseCode)) {
+        if (courseId == null) {
             errorMsgList.add("请选择课程");
             errorMsgList.add("请选择课程");
         }
         }
-        BasicCourse basicCourse = basicCourseService.findByCourseCode(courseCode, schoolId);
+        BasicCourse basicCourse = basicCourseService.getById(courseId);
         if (Objects.isNull(basicCourse)) {
         if (Objects.isNull(basicCourse)) {
-            errorMsgList.add(String.format("课程代码[%s]在课程管理中不存在", courseCode));
+            errorMsgList.add("课程管理中不存在该课程");
         }
         }
 
 
         if (!SystemConstant.strNotNull(studentName)) {
         if (!SystemConstant.strNotNull(studentName)) {
@@ -317,13 +327,13 @@ public class BasicExamStudentServiceImpl extends ServiceImpl<BasicExamStudentMap
 
 
         // 若教学班不存在则新建一个
         // 若教学班不存在则新建一个
         BasicTeachClazz basicTeachClazz = basicTeachClazzService.findOrCreateBasicTeachClazz(requestUser, examId,
         BasicTeachClazz basicTeachClazz = basicTeachClazzService.findOrCreateBasicTeachClazz(requestUser, examId,
-                courseCode, teachClazz);
+                courseId, teachClazz);
 
 
         BasicExamStudent basicExamStudent = new BasicExamStudent();
         BasicExamStudent basicExamStudent = new BasicExamStudent();
         basicExamStudent.setSchoolId(schoolId);
         basicExamStudent.setSchoolId(schoolId);
         basicExamStudent.setSemesterId(semesterId);
         basicExamStudent.setSemesterId(semesterId);
         basicExamStudent.setExamId(examId);
         basicExamStudent.setExamId(examId);
-        basicExamStudent.setCourseCode(courseCode);
+        basicExamStudent.setCourseId(courseId);
         basicExamStudent.setClazzId(basicTeachClazz.getId());
         basicExamStudent.setClazzId(basicTeachClazz.getId());
         basicExamStudent.setStudentName(studentName);
         basicExamStudent.setStudentName(studentName);
         basicExamStudent.setStudentCode(studentCode);
         basicExamStudent.setStudentCode(studentCode);
@@ -358,7 +368,7 @@ public class BasicExamStudentServiceImpl extends ServiceImpl<BasicExamStudentMap
         } else {
         } else {
             // 新增 (学号在考试课程下唯一)
             // 新增 (学号在考试课程下唯一)
             if (this.count(new QueryWrapper<BasicExamStudent>().lambda().eq(BasicExamStudent::getSchoolId, schoolId)
             if (this.count(new QueryWrapper<BasicExamStudent>().lambda().eq(BasicExamStudent::getSchoolId, schoolId)
-                    .eq(BasicExamStudent::getExamId, examId).eq(BasicExamStudent::getCourseCode, courseCode)
+                    .eq(BasicExamStudent::getExamId, examId).eq(BasicExamStudent::getCourseId, courseId)
                     .eq(BasicExamStudent::getStudentCode, studentCode)) > 0) {
                     .eq(BasicExamStudent::getStudentCode, studentCode)) > 0) {
                 throw ExceptionResultEnum.ERROR.exception(String.format("学号[%s]重复", studentCode));
                 throw ExceptionResultEnum.ERROR.exception(String.format("学号[%s]重复", studentCode));
             }
             }

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

@@ -33,11 +33,10 @@ public class BasicTeachClazzServiceImpl extends ServiceImpl<BasicTeachClazzMappe
 
 
     @Transactional
     @Transactional
     @Override
     @Override
-    public BasicTeachClazz findOrCreateBasicTeachClazz(SysUser requestUser, Long examId, String courseCode, String teachClazzName) {
+    public BasicTeachClazz findOrCreateBasicTeachClazz(SysUser requestUser, Long examId, Long courseId, String teachClazzName) {
         Long schoolId = requestUser.getSchoolId();
         Long schoolId = requestUser.getSchoolId();
         Long userId = requestUser.getId();
         Long userId = requestUser.getId();
-        BasicTeachClazz basicTeachClazz;
-        basicTeachClazz = this.getOne(
+        BasicTeachClazz basicTeachClazz = this.getOne(
                 new QueryWrapper<BasicTeachClazz>().lambda().eq(BasicTeachClazz::getSchoolId, schoolId)
                 new QueryWrapper<BasicTeachClazz>().lambda().eq(BasicTeachClazz::getSchoolId, schoolId)
                         .eq(BasicTeachClazz::getExamId, examId).eq(BasicTeachClazz::getClazzName, teachClazzName).last(SystemConstant.LIMIT1));
                         .eq(BasicTeachClazz::getExamId, examId).eq(BasicTeachClazz::getClazzName, teachClazzName).last(SystemConstant.LIMIT1));
 
 
@@ -45,7 +44,7 @@ public class BasicTeachClazzServiceImpl extends ServiceImpl<BasicTeachClazzMappe
             basicTeachClazz = new BasicTeachClazz();
             basicTeachClazz = new BasicTeachClazz();
             basicTeachClazz.setSchoolId(schoolId);
             basicTeachClazz.setSchoolId(schoolId);
             basicTeachClazz.setClazzName(teachClazzName);
             basicTeachClazz.setClazzName(teachClazzName);
-            basicTeachClazz.setCourseCode(courseCode);
+            basicTeachClazz.setCourseId(courseId);
             basicTeachClazz.setExamId(examId);
             basicTeachClazz.setExamId(examId);
             basicTeachClazz.insertInfo(userId);
             basicTeachClazz.insertInfo(userId);
             this.save(basicTeachClazz);
             this.save(basicTeachClazz);

+ 11 - 22
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/ConditionServiceImpl.java

@@ -138,7 +138,7 @@ public class ConditionServiceImpl implements ConditionService {
     }
     }
 
 
     @Override
     @Override
-    public List<String> listPaperNumber(Long semesterId, Long examId, String courseCode, List<String> printPlanIds) {
+    public List<String> listPaperNumber(Long semesterId, Long examId, Long courseId, List<String> printPlanIds) {
         // 考试ID为空,默认返回空
         // 考试ID为空,默认返回空
         if (examId == null) {
         if (examId == null) {
             return new ArrayList<>();
             return new ArrayList<>();
@@ -151,27 +151,27 @@ public class ConditionServiceImpl implements ConditionService {
 
 
         // 命题任务管理(39)
         // 命题任务管理(39)
         if ("39".equals(privilegeIdString)) {
         if ("39".equals(privilegeIdString)) {
-            return conditionMapper.listPaperNumberFromExamTaskByCreateId(examId, courseCode, dpr);
+            return conditionMapper.listPaperNumberFromExamTaskByCreateId(examId, courseId, dpr);
         }
         }
         // 入库申请(40)
         // 入库申请(40)
         else if ("40".equals(privilegeIdString)) {
         else if ("40".equals(privilegeIdString)) {
-            return conditionMapper.listPaperNumberForApply(examId, courseCode, sysUser.getId());
+            return conditionMapper.listPaperNumberForApply(examId, courseId, sysUser.getId());
         }
         }
         // 入库审核(41)
         // 入库审核(41)
         else if ("41".equals(privilegeIdString)) {
         else if ("41".equals(privilegeIdString)) {
-            return conditionMapper.listPaperNumberAudit(semesterId, examId, courseCode);
+            return conditionMapper.listPaperNumberAudit(semesterId, examId, courseId);
         }
         }
         // 卷库查询(42)
         // 卷库查询(42)
         else if ("42".equals(privilegeIdString)) {
         else if ("42".equals(privilegeIdString)) {
-            return conditionMapper.listPaperNumberForQuery(examId, courseCode, dpr);
+            return conditionMapper.listPaperNumberForQuery(examId, courseId, dpr);
         }
         }
         // 印刷任务管理(47)
         // 印刷任务管理(47)
         else if ("47".equals(privilegeIdString)) {
         else if ("47".equals(privilegeIdString)) {
-            return conditionMapper.listPaperNumberPlanTask(semesterId, examId, printPlanIds, courseCode, dpr);
+            return conditionMapper.listPaperNumberPlanTask(semesterId, examId, printPlanIds, courseId, dpr);
         }
         }
         // 流程审批记录管理(403)
         // 流程审批记录管理(403)
         else if ("403".equals(privilegeIdString)) {
         else if ("403".equals(privilegeIdString)) {
-            return conditionMapper.listPaperNumberForApproveHistory(semesterId, examId, courseCode, dpr);
+            return conditionMapper.listPaperNumberForApproveHistory(semesterId, examId, courseId, dpr);
         }
         }
         // 成绩查询
         // 成绩查询
         else if ("487".equals(privilegeIdString) || "2001".equals(privilegeIdString)) {
         else if ("487".equals(privilegeIdString) || "2001".equals(privilegeIdString)) {
@@ -179,17 +179,17 @@ public class ConditionServiceImpl implements ConditionService {
         }
         }
         // 评卷入口(491)
         // 评卷入口(491)
         else if ("491".equals(privilegeIdString)) {
         else if ("491".equals(privilegeIdString)) {
-            return conditionMapper.listPaperNumberForEntrance(examId, sysUser.getId(), courseCode, MarkPaperStatus.FORMAL.name());
+            return conditionMapper.listPaperNumberForEntrance(examId, sysUser.getId(), courseId, MarkPaperStatus.FORMAL.name());
         }
         }
         // 评卷设置(897)、评卷管理(917)、成绩检查(946)
         // 评卷设置(897)、评卷管理(917)、成绩检查(946)
         else if ("897".equals(privilegeIdString) || "917".equals(privilegeIdString) || "946".equals(privilegeIdString)) {
         else if ("897".equals(privilegeIdString) || "917".equals(privilegeIdString) || "946".equals(privilegeIdString)) {
-            return conditionMapper.listPaperNumberFromMarkPaper(examId, courseCode, dpr);
+            return conditionMapper.listPaperNumberFromMarkPaper(examId, courseId, dpr);
         }
         }
         // 下载管理(653)
         // 下载管理(653)
         else if ("653".equals(privilegeIdString)) {
         else if ("653".equals(privilegeIdString)) {
-            return conditionMapper.listPaperNumberFromExamTaskByUserIdAndPass(examId, courseCode, dpr);
+            return conditionMapper.listPaperNumberFromExamTaskByUserIdAndPass(examId, courseId, dpr);
         } else {
         } else {
-            return conditionMapper.listPaperNumber(semesterId, examId, courseCode, printPlanIds, dpr);
+            return conditionMapper.listPaperNumber(semesterId, examId, courseId, printPlanIds, dpr);
         }
         }
     }
     }
 
 
@@ -216,17 +216,6 @@ public class ConditionServiceImpl implements ConditionService {
         }
         }
     }
     }
 
 
-    @Override
-    public List<BasicClazz> listClazz(Long semesterId, Long examId, String courseCode, String clazzName) {
-        Long privilegeId = ServletUtil.getCurrentPrivilegeId();
-        String privilegeIdString = privilegeId == null ? null : String.valueOf(privilegeId);
-        DataPermissionRule dpr = basicRoleDataPermissionService.findDataPermission(privilegeId);
-        if ("487".equals(privilegeIdString)) {
-            return conditionMapper.listClazz(semesterId, examId, courseCode, clazzName, dpr);
-        }
-        return new ArrayList<>();
-    }
-
     @Override
     @Override
     public List<SysOrg> listCollege() {
     public List<SysOrg> listCollege() {
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());

+ 1 - 2
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/CourseDimensionServiceImpl.java

@@ -67,7 +67,6 @@ public class CourseDimensionServiceImpl extends ServiceImpl<CourseDimensionMappe
             throw ExceptionResultEnum.ERROR.exception("教学课程不存在");
             throw ExceptionResultEnum.ERROR.exception("教学课程不存在");
         }
         }
         Long examId = teachCourse.getExamId();
         Long examId = teachCourse.getExamId();
-        String courseCode = teachCourse.getCourseCode();
 
 
         BasicExam basicExam = basicExamService.getById(examId);
         BasicExam basicExam = basicExamService.getById(examId);
         if (Objects.isNull(basicExam)) {
         if (Objects.isNull(basicExam)) {
@@ -113,7 +112,7 @@ public class CourseDimensionServiceImpl extends ServiceImpl<CourseDimensionMappe
         temp.setSchoolId(schoolId);
         temp.setSchoolId(schoolId);
         temp.setSemesterId(semesterId);
         temp.setSemesterId(semesterId);
         temp.setExamId(examId);
         temp.setExamId(examId);
-        temp.setCourseCode(courseCode);
+        temp.setCourseId(teachCourse.getCourseId());
         temp.setUserId(teachCourse.getUserId());
         temp.setUserId(teachCourse.getUserId());
         temp.setSource(CourseDimensionSourceEnum.IMPORT);
         temp.setSource(CourseDimensionSourceEnum.IMPORT);
 
 

+ 1 - 2
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/CourseTargetServiceImpl.java

@@ -158,7 +158,6 @@ public class CourseTargetServiceImpl extends ServiceImpl<CourseTargetMapper, Cou
         }
         }
 
 
         Long examId = teachCourse.getExamId();
         Long examId = teachCourse.getExamId();
-        String courseCode = teachCourse.getCourseCode();
         String targetName = courseTargetParam.getTargetName();
         String targetName = courseTargetParam.getTargetName();
         String degreeRequirement = courseTargetParam.getDegreeRequirement();
         String degreeRequirement = courseTargetParam.getDegreeRequirement();
         List<Long> dimensionIdList = courseTargetParam.getDimensionIdList();
         List<Long> dimensionIdList = courseTargetParam.getDimensionIdList();
@@ -204,7 +203,7 @@ public class CourseTargetServiceImpl extends ServiceImpl<CourseTargetMapper, Cou
         courseTarget.setTeachCourseId(teachCourseId);
         courseTarget.setTeachCourseId(teachCourseId);
         courseTarget.setSchoolId(requestUser.getSchoolId());
         courseTarget.setSchoolId(requestUser.getSchoolId());
         courseTarget.setExamId(examId);
         courseTarget.setExamId(examId);
-        courseTarget.setCourseCode(courseCode);
+        courseTarget.setCourseId(teachCourse.getCourseId());
         courseTarget.setUserId(requestUserId);
         courseTarget.setUserId(requestUserId);
         courseTarget.setTargetName(targetName);
         courseTarget.setTargetName(targetName);
         courseTarget.setDegreeRequirement(degreeRequirement);
         courseTarget.setDegreeRequirement(degreeRequirement);

+ 1 - 2
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/CourseWeightServiceImpl.java

@@ -252,7 +252,6 @@ public class CourseWeightServiceImpl extends ServiceImpl<CourseWeightMapper, Cou
             throw ExceptionResultEnum.ERROR.exception("教学课程不存在");
             throw ExceptionResultEnum.ERROR.exception("教学课程不存在");
         }
         }
         Long examId = teachCourse.getExamId();
         Long examId = teachCourse.getExamId();
-        String courseCode = teachCourse.getCourseCode();
 
 
         teachCourseService.clearCourseSetting(teachCourseId, CourseSettingTypeEnum.COURSE_WEIGHT);
         teachCourseService.clearCourseSetting(teachCourseId, CourseSettingTypeEnum.COURSE_WEIGHT);
 
 
@@ -317,7 +316,7 @@ public class CourseWeightServiceImpl extends ServiceImpl<CourseWeightMapper, Cou
                 courseWeight.setTeachCourseId(teachCourseId);
                 courseWeight.setTeachCourseId(teachCourseId);
                 courseWeight.setSchoolId(requestUser.getSchoolId());
                 courseWeight.setSchoolId(requestUser.getSchoolId());
                 courseWeight.setExamId(examId);
                 courseWeight.setExamId(examId);
-                courseWeight.setCourseCode(courseCode);
+                courseWeight.setCourseId(teachCourse.getCourseId());
                 courseWeight.setUserId(requestUserId);
                 courseWeight.setUserId(requestUserId);
                 courseWeight.setTargetId(courseTargetId);
                 courseWeight.setTargetId(courseTargetId);
                 courseWeight.setEvaluationId(evaluationId);
                 courseWeight.setEvaluationId(evaluationId);

+ 20 - 32
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/ExamCardServiceImpl.java

@@ -103,22 +103,21 @@ public class ExamCardServiceImpl extends ServiceImpl<ExamCardMapper, ExamCard> i
 
 
             QueryWrapper<ExamCard> queryWrapper = new QueryWrapper<>();
             QueryWrapper<ExamCard> queryWrapper = new QueryWrapper<>();
             queryWrapper.lambda().eq(ExamCard::getSchoolId, schoolId)
             queryWrapper.lambda().eq(ExamCard::getSchoolId, schoolId)
-                    .eq(ExamCard::getCourseCode, examCardParams.getCourseCode())
+                    .eq(ExamCard::getCourseId, examCardParams.getCourseId())
                     .eq(ExamCard::getTitle, title);
                     .eq(ExamCard::getTitle, title);
             List<ExamCard> examCardList = this.list(queryWrapper);
             List<ExamCard> examCardList = this.list(queryWrapper);
             if (!examCardList.isEmpty()) {
             if (!examCardList.isEmpty()) {
-                throw ExceptionResultEnum.ERROR.exception("题卡名称已存在");
+                throw ExceptionResultEnum.ERROR.exception("课程下已存在相同的题卡名称["+title+"]");
             }
             }
 
 
             examCard = new ExamCard();
             examCard = new ExamCard();
             examCard.setSchoolId(schoolId);
             examCard.setSchoolId(schoolId);
-            if (Objects.isNull(examCardParams.getTemplateId())) {
-                examCard.setOrgId(basicCourseService.getOrgIdBySchoolIdAndCourseCode(schoolId, examCardParams.getCourseCode()));
-            } else {
-                examCard.setOrgId(user.getOrgId());
-            }
-            examCard.setCourseCode(examCardParams.getCourseCode());
-            examCard.setCourseName(examCardParams.getCourseName());
+//            if (Objects.isNull(examCardParams.getTemplateId())) {
+//                examCard.setOrgId(basicCourseService.getOrgIdBySchoolIdAndCourseCode(schoolId, examCardParams.getCourseCode()));
+//            } else {
+//                examCard.setOrgId(user.getOrgId());
+//            }
+            examCard.setCourseId(examCardParams.getCourseId());
             examCard.setTitle(title);
             examCard.setTitle(title);
             examCard.setMakeMethod(examCardParams.getMakeMethod());
             examCard.setMakeMethod(examCardParams.getMakeMethod());
             examCard.setStatus(examCardParams.getStatus());
             examCard.setStatus(examCardParams.getStatus());
@@ -133,7 +132,7 @@ public class ExamCardServiceImpl extends ServiceImpl<ExamCardMapper, ExamCard> i
             String title = examCardParams.getTitle();
             String title = examCardParams.getTitle();
             QueryWrapper<ExamCard> queryWrapper = new QueryWrapper<>();
             QueryWrapper<ExamCard> queryWrapper = new QueryWrapper<>();
             queryWrapper.lambda().eq(ExamCard::getSchoolId, schoolId)
             queryWrapper.lambda().eq(ExamCard::getSchoolId, schoolId)
-                    .eq(ExamCard::getCourseCode, examCardParams.getCourseCode())
+                    .eq(ExamCard::getCourseId, examCardParams.getCourseId())
                     .eq(ExamCard::getTitle, title)
                     .eq(ExamCard::getTitle, title)
                     .ne(ExamCard::getId, examCardParams.getId());
                     .ne(ExamCard::getId, examCardParams.getId());
             List<ExamCard> examCardList = this.list(queryWrapper);
             List<ExamCard> examCardList = this.list(queryWrapper);
@@ -166,7 +165,7 @@ public class ExamCardServiceImpl extends ServiceImpl<ExamCardMapper, ExamCard> i
     }
     }
 
 
     @Override
     @Override
-    public List<ExamCard> listSelectCard(String courseCode, Long examId, String paperNumber) {
+    public List<ExamCard> listSelectCard(Long examId, Long courseId, String paperNumber) {
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
         BasicPrintConfig basicPrintConfig = basicPrintConfigService.getByExamId(examId);
         BasicPrintConfig basicPrintConfig = basicPrintConfigService.getByExamId(examId);
         Long cardRuleId = basicPrintConfig.getCardRuleId();
         Long cardRuleId = basicPrintConfig.getCardRuleId();
@@ -180,14 +179,14 @@ public class ExamCardServiceImpl extends ServiceImpl<ExamCardMapper, ExamCard> i
         // 专卡
         // 专卡
         if (SystemConstant.ALL_CARD != cardRuleId) {
         if (SystemConstant.ALL_CARD != cardRuleId) {
             // 只查自己创建的专卡(20230405已改为查询课程下所有题卡,允许复制,不能选择)
             // 只查自己创建的专卡(20230405已改为查询课程下所有题卡,允许复制,不能选择)
-            List<ExamCard> customCards = this.baseMapper.listCustom(schoolId, courseCode, CardTypeEnum.CUSTOM.name(), cardRuleId);
+            List<ExamCard> customCards = this.baseMapper.listCustom(schoolId, courseId, CardTypeEnum.CUSTOM.name(), cardRuleId);
             if (!customCards.isEmpty()) {
             if (!customCards.isEmpty()) {
                 list.addAll(customCards);
                 list.addAll(customCards);
             }
             }
         }
         }
 
 
         // 命题任务未提交的任务,单独查询题卡
         // 命题任务未提交的任务,单独查询题卡
-        List<ExamCard> customCards = this.baseMapper.listCustomByExamStage(schoolId, examId, courseCode, paperNumber, CardTypeEnum.CUSTOM.name());
+        List<ExamCard> customCards = this.baseMapper.listCustomByExamStage(schoolId, examId, courseId, paperNumber, CardTypeEnum.CUSTOM.name());
         if (!customCards.isEmpty()) {
         if (!customCards.isEmpty()) {
             for (ExamCard customCard : customCards) {
             for (ExamCard customCard : customCards) {
                 long count = list.stream().filter(m -> m.getId().equals(customCard.getId())).count();
                 long count = list.stream().filter(m -> m.getId().equals(customCard.getId())).count();
@@ -358,26 +357,24 @@ public class ExamCardServiceImpl extends ServiceImpl<ExamCardMapper, ExamCard> i
 
 
     @Transactional
     @Transactional
     @Override
     @Override
-    public Long copyCard(Long id, String courseCode) {
+    public Long copyCard(Long id, Long courseId) {
         SysUser requestUser = (SysUser) ServletUtil.getRequestUser();
         SysUser requestUser = (SysUser) ServletUtil.getRequestUser();
 
 
         ExamCard examCard = this.getById(id);
         ExamCard examCard = this.getById(id);
         if (examCard == null) {
         if (examCard == null) {
             throw ExceptionResultEnum.ERROR.exception("题卡不存在");
             throw ExceptionResultEnum.ERROR.exception("题卡不存在");
         }
         }
-        if (CardTypeEnum.CUSTOM.equals(examCard.getType()) && !courseCode.equals(examCard.getCourseCode())) {
+        if (CardTypeEnum.CUSTOM.equals(examCard.getType()) && !Objects.equals(courseId, examCard.getCourseId())) {
             throw ExceptionResultEnum.ERROR.exception("复制的题卡不属于当前课程,无法复制");
             throw ExceptionResultEnum.ERROR.exception("复制的题卡不属于当前课程,无法复制");
         }
         }
 
 
         // 复制题卡
         // 复制题卡
         ExamCard copyExamCard = new ExamCard();
         ExamCard copyExamCard = new ExamCard();
         BeanUtils.copyProperties(examCard, copyExamCard);
         BeanUtils.copyProperties(examCard, copyExamCard);
-        copyExamCard.setTitle(checkTitle(examCard, courseCode));
+        copyExamCard.setTitle(checkTitle(examCard, courseId));
         copyExamCard.insertInfo(requestUser.getId());
         copyExamCard.insertInfo(requestUser.getId());
         if (CardTypeEnum.GENERIC.equals(examCard.getType()) && CardCreateMethodEnum.STANDARD.equals(examCard.getCreateMethod())) {
         if (CardTypeEnum.GENERIC.equals(examCard.getType()) && CardCreateMethodEnum.STANDARD.equals(examCard.getCreateMethod())) {
-            BasicCourse basicCourse = basicCourseService.findByCourseCode(courseCode, requestUser.getSchoolId());
-            copyExamCard.setCourseCode(courseCode);
-            copyExamCard.setCourseName(basicCourse != null ? basicCourse.getName() : null);
+            copyExamCard.setCourseId(courseId);
             copyExamCard.setMakeMethod(MakeMethodEnum.SELF);
             copyExamCard.setMakeMethod(MakeMethodEnum.SELF);
             copyExamCard.setCreateMethod(null);
             copyExamCard.setCreateMethod(null);
             copyExamCard.setType(CardTypeEnum.CUSTOM);
             copyExamCard.setType(CardTypeEnum.CUSTOM);
@@ -520,7 +517,7 @@ public class ExamCardServiceImpl extends ServiceImpl<ExamCardMapper, ExamCard> i
      *
      *
      * @param examCard 题卡对象
      * @param examCard 题卡对象
      */
      */
-    private String checkTitle(ExamCard examCard, String courseCode) {
+    private String checkTitle(ExamCard examCard, Long courseId) {
         String title;
         String title;
         int i = 1;
         int i = 1;
         ExamCard newExamCard;
         ExamCard newExamCard;
@@ -528,7 +525,7 @@ public class ExamCardServiceImpl extends ServiceImpl<ExamCardMapper, ExamCard> i
             title = examCard.getTitle() + "副本" + i;
             title = examCard.getTitle() + "副本" + i;
             QueryWrapper<ExamCard> queryWrapper = new QueryWrapper<>();
             QueryWrapper<ExamCard> queryWrapper = new QueryWrapper<>();
             queryWrapper.lambda().eq(ExamCard::getSchoolId, examCard.getSchoolId())
             queryWrapper.lambda().eq(ExamCard::getSchoolId, examCard.getSchoolId())
-                    .eq(ExamCard::getCourseCode, courseCode)
+                    .eq(ExamCard::getCourseId, courseId)
                     .eq(ExamCard::getTitle, title);
                     .eq(ExamCard::getTitle, title);
             newExamCard = this.getOne(queryWrapper);
             newExamCard = this.getOne(queryWrapper);
             i++;
             i++;
@@ -547,21 +544,12 @@ public class ExamCardServiceImpl extends ServiceImpl<ExamCardMapper, ExamCard> i
             throw ExceptionResultEnum.ERROR.exception("通用规则未设置");
             throw ExceptionResultEnum.ERROR.exception("通用规则未设置");
         }
         }
 
 
-//        if (Objects.isNull(examCardParams.getMakeMethod())) {
-//            throw ExceptionResultEnum.ERROR.exception("题卡制作方式不能为空");
-//        }
         if (examCardParams.getStatus() == null) {
         if (examCardParams.getStatus() == null) {
             throw ExceptionResultEnum.ERROR.exception("提交方式不能为空");
             throw ExceptionResultEnum.ERROR.exception("提交方式不能为空");
         }
         }
         if (CardTypeEnum.CUSTOM.name().equals(examCardParams.getType().name())) {
         if (CardTypeEnum.CUSTOM.name().equals(examCardParams.getType().name())) {
-//            if (examCardParams.getExamTaskId() == null) {
-//                throw ExceptionResultEnum.ERROR.exception("命题任务ID不能为空");
-//            }
-            if (StringUtils.isBlank(examCardParams.getCourseCode())) {
-                throw ExceptionResultEnum.ERROR.exception("课程代码不能为空");
-            }
-            if (StringUtils.isBlank(examCardParams.getCourseName())) {
-                throw ExceptionResultEnum.ERROR.exception("课程名称不能为空");
+            if (examCardParams.getCourseId() == null) {
+                throw ExceptionResultEnum.ERROR.exception("未获取到课程信息");
             }
             }
             if (MakeMethodEnum.SELECT.name().equals(examCardParams.getMakeMethod().name())) {
             if (MakeMethodEnum.SELECT.name().equals(examCardParams.getMakeMethod().name())) {
                 if (examCardParams.getId() == null) {
                 if (examCardParams.getId() == null) {

+ 2 - 2
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/ExamDetailCourseServiceImpl.java

@@ -181,8 +181,8 @@ public class ExamDetailCourseServiceImpl extends ServiceImpl<ExamDetailCourseMap
         examStudentService.save(examStudent);
         examStudentService.save(examStudent);
 
 
         // 保存mark_student
         // 保存mark_student
-        MarkStudent markStudent = new MarkStudent(id, examDetail.getExamId(), examDetailCourse.getCourseCode(),
-                examDetailCourse.getCourseName(), examDetailCourse.getPaperNumber(),
+        MarkStudent markStudent = new MarkStudent(id, examDetail.getExamId(), examDetailCourse.getCourseId(),
+                examDetailCourse.getPaperNumber(),
                 examDetailCourse.getCoursePaperId(), singleExamStudentAddParam.getPaperType(),
                 examDetailCourse.getCoursePaperId(), singleExamStudentAddParam.getPaperType(),
                 singleExamStudentAddParam.getStudentCode(), singleExamStudentAddParam.getStudentName(),
                 singleExamStudentAddParam.getStudentCode(), singleExamStudentAddParam.getStudentName(),
                 examDetail.getPackageCode(), examDetail.getExamPlace(), examDetail.getExamRoom(),
                 examDetail.getPackageCode(), examDetail.getExamPlace(), examDetail.getExamRoom(),

+ 7 - 2
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/ExamDetailServiceImpl.java

@@ -165,12 +165,12 @@ public class ExamDetailServiceImpl extends ServiceImpl<ExamDetailMapper, ExamDet
     }
     }
 
 
     @Override
     @Override
-    public IPage<PrintTaskDto> listPrintTask(Long semesterId, Long examId, Long printPlanId, String status, String courseCode, String paperNumber, String examPlace, String examRoom, Long examStartTime, Long examEndTime, Long printStartTime, Long printEndTime, Long printHouseId, Integer pageNumber, Integer pageSize) {
+    public IPage<PrintTaskDto> listPrintTask(Long semesterId, Long examId, Long printPlanId, String status, Long courseId, String paperNumber, String examPlace, String examRoom, Long examStartTime, Long examEndTime, Long printStartTime, Long printEndTime, Long printHouseId, Integer pageNumber, Integer pageSize) {
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
         SysUser requestUser = (SysUser) ServletUtil.getRequestUser();
         SysUser requestUser = (SysUser) ServletUtil.getRequestUser();
         DataPermissionRule dpr = basicRoleDataPermissionService.findDataPermission(schoolId, requestUser.getId(), ServletUtil.getRequest().getServletPath());
         DataPermissionRule dpr = basicRoleDataPermissionService.findDataPermission(schoolId, requestUser.getId(), ServletUtil.getRequest().getServletPath());
         Page<PrintTaskDto> page = new Page<>(pageNumber, pageSize);
         Page<PrintTaskDto> page = new Page<>(pageNumber, pageSize);
-        return this.baseMapper.listPrintTask(page, schoolId, semesterId, examId, printPlanId, status, courseCode, paperNumber, examPlace, examRoom, examStartTime, examEndTime, printStartTime, printEndTime, printHouseId, dpr);
+        return this.baseMapper.listPrintTask(page, schoolId, semesterId, examId, printPlanId, status, courseId, paperNumber, examPlace, examRoom, examStartTime, examEndTime, printStartTime, printEndTime, printHouseId, dpr);
     }
     }
 
 
     @Override
     @Override
@@ -875,6 +875,11 @@ public class ExamDetailServiceImpl extends ServiceImpl<ExamDetailMapper, ExamDet
         return this.baseMapper.listByExamIdAndCourseCodeAndPaperNumber(schoolId, examId, courseCode, paperNumber);
         return this.baseMapper.listByExamIdAndCourseCodeAndPaperNumber(schoolId, examId, courseCode, paperNumber);
     }
     }
 
 
+    @Override
+    public List<ExamDetail> listByCourseIdAndPaperNumber(Long schoolId, Long examId, Long courseId, String paperNumber) {
+        return this.baseMapper.listByExamIdAndCourseIdAndPaperNumber(schoolId, examId, courseId, paperNumber);
+    }
+
     @Override
     @Override
     public boolean taskNormal(ExamDetail examDetail) {
     public boolean taskNormal(ExamDetail examDetail) {
         // 已扫描过,不能作废
         // 已扫描过,不能作废

+ 9 - 0
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/ExamTaskDetailServiceImpl.java

@@ -680,6 +680,15 @@ public class ExamTaskDetailServiceImpl extends ServiceImpl<ExamTaskDetailMapper,
         return this.getByExamTaskId(examTask.getId());
         return this.getByExamTaskId(examTask.getId());
     }
     }
 
 
+    @Override
+    public ExamTaskDetail getByExamIdAndCourseIdAndPaperNumber(Long examId, Long courseId, String paperNumber) {
+        ExamTask examTask = examTaskService.getByExamIdAndCourseIdAndPaperNumber(examId, courseId, paperNumber);
+        if (examTask == null) {
+            throw ExceptionResultEnum.ERROR.exception("未查询到试卷信息");
+        }
+        return this.getByExamTaskId(examTask.getId());
+    }
+
     @Override
     @Override
     public void updateExposePaperType(Long examId, List<ExamDetailCourse> examDetailCourses) {
     public void updateExposePaperType(Long examId, List<ExamDetailCourse> examDetailCourses) {
         // 更新曝光卷型、未曝光卷型
         // 更新曝光卷型、未曝光卷型

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

@@ -169,12 +169,6 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
     @Resource
     @Resource
     private BasicOperationLogService basicOperationLogService;
     private BasicOperationLogService basicOperationLogService;
     @Resource
     @Resource
-    private TeachCourseService teachCourseService;
-    @Resource
-    private TeachClazzService teachClazzService;
-    @Resource
-    private TeachStudentService teachStudentService;
-    @Resource
     private RedisCounterUtil redisCounterUtil;
     private RedisCounterUtil redisCounterUtil;
     @Resource
     @Resource
     private FileUploadService fileUploadService;
     private FileUploadService fileUploadService;
@@ -182,14 +176,13 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
     private TikuUtils tikuUtils;
     private TikuUtils tikuUtils;
 
 
     @Override
     @Override
-    public IPage<ExamTaskDto> list(Long semesterId, Long examId, Boolean enable, String status, Long cardRuleId, String courseCode, String paperNumber, Long startTime, Long endTime, String userName, String createName, Integer pageNumber, Integer pageSize) {
+    public IPage<ExamTaskDto> list(Long semesterId, Long examId, Boolean enable, String status, Long courseId, String paperNumber, Long startTime, Long endTime, String userName, Integer pageNumber, Integer pageSize) {
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
         userName = SystemConstant.translateSpecificSign(userName);
         userName = SystemConstant.translateSpecificSign(userName);
-        createName = SystemConstant.translateSpecificSign(createName);
         SysUser requestUser = (SysUser) ServletUtil.getRequestUser();
         SysUser requestUser = (SysUser) ServletUtil.getRequestUser();
         DataPermissionRule dpr = basicRoleDataPermissionService.findDataPermission(schoolId, requestUser.getId(), ServletUtil.getRequest().getServletPath());
         DataPermissionRule dpr = basicRoleDataPermissionService.findDataPermission(schoolId, requestUser.getId(), ServletUtil.getRequest().getServletPath());
         Page<ExamTaskDto> page = new Page<>(pageNumber, pageSize);
         Page<ExamTaskDto> page = new Page<>(pageNumber, pageSize);
-        IPage<ExamTaskDto> examTaskDtoIPage = this.baseMapper.listPage(page, schoolId, semesterId, examId, enable, status, cardRuleId, courseCode, paperNumber, startTime, endTime, dpr, userName, createName);
+        IPage<ExamTaskDto> examTaskDtoIPage = this.baseMapper.listPage(page, schoolId, semesterId, examId, enable, status, courseId, paperNumber, startTime, endTime, userName, dpr);
         for (ExamTaskDto record : examTaskDtoIPage.getRecords()) {
         for (ExamTaskDto record : examTaskDtoIPage.getRecords()) {
             // 判断审批表状态
             // 判断审批表状态
             String cellPaperNumber = record.getPaperNumber();
             String cellPaperNumber = record.getPaperNumber();
@@ -339,7 +332,7 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
             examTask.setReview(basicPrintConfig.getReview());
             examTask.setReview(basicPrintConfig.getReview());
             // 取课程所在机构
             // 取课程所在机构
             BasicCourse basicCourse = basicCourseService.getById(examTask.getCourseId());
             BasicCourse basicCourse = basicCourseService.getById(examTask.getCourseId());
-            if(basicCourse == null){
+            if (basicCourse == null) {
                 throw ExceptionResultEnum.ERROR.exception("课程不存在");
                 throw ExceptionResultEnum.ERROR.exception("课程不存在");
             }
             }
             examTask.setTeachingRoomId(basicCourse.getTeachingRoomId());
             examTask.setTeachingRoomId(basicCourse.getTeachingRoomId());
@@ -392,19 +385,22 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
 
 
                     String excelCourseCode = userImportDto.getCourseCode();
                     String excelCourseCode = userImportDto.getCourseCode();
                     String excelCourseName = userImportDto.getCourseName();
                     String excelCourseName = userImportDto.getCourseName();
+                    String teachingRoomName = userImportDto.getTeachingRoomName();
                     String excelPaperNumber = userImportDto.getPaperNumber();
                     String excelPaperNumber = userImportDto.getPaperNumber();
                     String excelTeacherAccount = userImportDto.getUserAccount();
                     String excelTeacherAccount = userImportDto.getUserAccount();
                     String excelTeacherName = userImportDto.getUserName();
                     String excelTeacherName = userImportDto.getUserName();
 
 
+                    List<SysOrg> sysOrgList = sysOrgService.getSecondOrg(schoolId, teachingRoomName);
+                    if (CollectionUtils.isEmpty(sysOrgList)) {
+                        excelErrorTemp.add(new ExcelError(y + 1, "第" + (y + 1) + "行开课学院[" + teachingRoomName + "]在组织架构中不存在"));
+                    }
                     // 课程是否存在并且与名称对应
                     // 课程是否存在并且与名称对应
-                    QueryWrapper<BasicCourse> queryWrapper = new QueryWrapper<>();
-                    queryWrapper.lambda().eq(BasicCourse::getSchoolId, schoolId).eq(BasicCourse::getCode, excelCourseCode);
-                    BasicCourse course = basicCourseService.getOne(queryWrapper);
+                    BasicCourse basicCourse = basicCourseService.getByTeachRoomIdAndCode(sysOrgList.get(0).getId(), excelCourseCode);
                     // 校验课程名称和课程代码
                     // 校验课程名称和课程代码
-                    if (course == null) {
+                    if (basicCourse == null) {
                         excelErrorTemp.add(new ExcelError(y + 1, "第" + (y + 1) + "行课程代码[" + excelCourseCode + "]在系统中不存在"));
                         excelErrorTemp.add(new ExcelError(y + 1, "第" + (y + 1) + "行课程代码[" + excelCourseCode + "]在系统中不存在"));
-                    } else if (!course.getName().equals(excelCourseName)) {
-                        excelErrorTemp.add(new ExcelError(y + 1, "第" + (y + 1) + "行课程代码[" + excelCourseCode + "]对应的课程名称与课程管理中不一致。文件中为[" + excelCourseName + "],课程管理为[" + course.getName() + "]"));
+                    } else if (!basicCourse.getName().equals(excelCourseName)) {
+                        excelErrorTemp.add(new ExcelError(y + 1, "第" + (y + 1) + "行课程代码[" + excelCourseCode + "]对应的课程名称与课程管理中不一致。文件中为[" + excelCourseName + "],课程管理为[" + basicCourse.getName() + "]"));
                     }
                     }
                     if (courseCodePaperNumberMap.containsKey(excelCourseCode)) {
                     if (courseCodePaperNumberMap.containsKey(excelCourseCode)) {
                         String paperNumber = courseCodePaperNumberMap.get(excelCourseCode);
                         String paperNumber = courseCodePaperNumberMap.get(excelCourseCode);
@@ -425,7 +421,7 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
                     }
                     }
 
 
                     // 校验命题老师
                     // 校验命题老师
-                    AssignTeacherDto assignTeacherDto = sysUserService.listUser(excelCourseCode, null);
+                    AssignTeacherDto assignTeacherDto = sysUserService.listUser(basicCourse.getId(), null);
                     List<SysUserResult> listUser = Objects.nonNull(assignTeacherDto) ? assignTeacherDto.getAllUserList() : new ArrayList<>();
                     List<SysUserResult> listUser = Objects.nonNull(assignTeacherDto) ? assignTeacherDto.getAllUserList() : new ArrayList<>();
                     Map<String, String> userMap = listUser.stream().collect(Collectors.toMap(SysUserResult::getLoginName, SysUserResult::getRealName));
                     Map<String, String> userMap = listUser.stream().collect(Collectors.toMap(SysUserResult::getLoginName, SysUserResult::getRealName));
                     if (userMap == null) {
                     if (userMap == null) {
@@ -441,7 +437,7 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
                                 excelErrorTemp.add(new ExcelError(y + 1, "第" + (y + 1) + "行命题老师姓名不能为空"));
                                 excelErrorTemp.add(new ExcelError(y + 1, "第" + (y + 1) + "行命题老师姓名不能为空"));
                             } else {
                             } else {
                                 if (StringUtils.isBlank(userMap.get(excelTeacherAccount))) {
                                 if (StringUtils.isBlank(userMap.get(excelTeacherAccount))) {
-                                    excelErrorTemp.add(new ExcelError(y + 1, "第" + (y + 1) + "行命题老师号[" + excelTeacherAccount + "]系统中不存在"));
+                                    excelErrorTemp.add(new ExcelError(y + 1, "第" + (y + 1) + "行命题老师号[" + excelTeacherAccount + "]系统中不存在"));
                                 } else {
                                 } else {
                                     String teacherName = userMap.get(excelTeacherAccount);
                                     String teacherName = userMap.get(excelTeacherAccount);
                                     if (!excelTeacherName.equals(teacherName)) {
                                     if (!excelTeacherName.equals(teacherName)) {
@@ -451,7 +447,7 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
                             }
                             }
                         } else {
                         } else {
                             if (StringUtils.isNotBlank(excelTeacherName)) {
                             if (StringUtils.isNotBlank(excelTeacherName)) {
-                                excelErrorTemp.add(new ExcelError(y + 1, "第" + (y + 1) + "行命题老师号必填"));
+                                excelErrorTemp.add(new ExcelError(y + 1, "第" + (y + 1) + "行命题老师号必填"));
                             }
                             }
                         }
                         }
                     }
                     }
@@ -502,6 +498,10 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
                 examTaskTempService.save(examTaskTemp);
                 examTaskTempService.save(examTaskTemp);
 
 
                 ExamTaskDto examTaskDto = new ExamTaskDto();
                 ExamTaskDto examTaskDto = new ExamTaskDto();
+                List<SysOrg> sysOrgList = sysOrgService.getSecondOrg(schoolId, examTaskTemp.getTeachingRoomName());
+                // 课程是否存在并且与名称对应
+                BasicCourse basicCourse = basicCourseService.getByTeachRoomIdAndCode(sysOrgList.get(0).getId(), examTaskTemp.getCourseCode());
+                examTaskDto.setCourseId(basicCourse.getId());
                 examTaskDto.setCourseCode(examTaskTemp.getCourseCode());
                 examTaskDto.setCourseCode(examTaskTemp.getCourseCode());
                 examTaskDto.setCourseName(examTaskTemp.getCourseName());
                 examTaskDto.setCourseName(examTaskTemp.getCourseName());
                 examTaskDto.setPaperNumber(examTaskTemp.getPaperNumber());
                 examTaskDto.setPaperNumber(examTaskTemp.getPaperNumber());
@@ -511,9 +511,9 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
                 SysUser sysUser1 = sysUserService.getOne(queryWrapper);
                 SysUser sysUser1 = sysUserService.getOne(queryWrapper);
                 AssignTeacherDto assignTeacherDto;
                 AssignTeacherDto assignTeacherDto;
                 if (sysUser1 != null) {
                 if (sysUser1 != null) {
-                    assignTeacherDto = listUsers(examTaskTemp.getCourseCode(), String.valueOf(sysUser1.getId()));
+                    assignTeacherDto = sysUserService.listUser(basicCourse.getId(), String.valueOf(sysUser1.getId()));
                 } else {
                 } else {
-                    assignTeacherDto = listUsers(examTaskTemp.getCourseCode(), null);
+                    assignTeacherDto = sysUserService.listUser(basicCourse.getId(), null);
                 }
                 }
                 examTaskDto.setUsers(Objects.nonNull(assignTeacherDto) ? assignTeacherDto.getAllUserList() : new ArrayList<>());
                 examTaskDto.setUsers(Objects.nonNull(assignTeacherDto) ? assignTeacherDto.getAllUserList() : new ArrayList<>());
                 String userName = examTaskImportDto.getUserName();
                 String userName = examTaskImportDto.getUserName();
@@ -561,10 +561,6 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
         return examTaskImportResultDto;
         return examTaskImportResultDto;
     }
     }
 
 
-    private AssignTeacherDto listUsers(String courseCode, String userId) {
-        return sysUserService.listUser(courseCode, userId);
-    }
-
     @Override
     @Override
     public List<ExamTask> saveBatch(ExamTask task) {
     public List<ExamTask> saveBatch(ExamTask task) {
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
@@ -660,12 +656,11 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
     }
     }
 
 
     @Override
     @Override
-    public IPage<ExamTaskDto> listTaskApply(Long semesterId, Long examId, String auditStatus, Long cardRuleId, String
-            courseCode, String paperNumber, Long startTime, Long endTime, String userName, Integer pageNumber, Integer pageSize) {
+    public IPage<ExamTaskDto> listTaskApply(Long semesterId, Long examId, String auditStatus, Long courseId, String paperNumber, Long startTime, Long endTime, String userName, Integer pageNumber, Integer pageSize) {
         userName = SystemConstant.translateSpecificSign(userName);
         userName = SystemConstant.translateSpecificSign(userName);
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
         SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
         SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
-        IPage<ExamTaskDto> examTaskDtoIPage = this.baseMapper.listTaskApply(new Page<>(pageNumber, pageSize), schoolId, semesterId, examId, auditStatus, cardRuleId, courseCode, paperNumber, startTime, endTime, sysUser.getId(), userName);
+        IPage<ExamTaskDto> examTaskDtoIPage = this.baseMapper.listTaskApply(new Page<>(pageNumber, pageSize), schoolId, semesterId, examId, auditStatus, courseId, paperNumber, startTime, endTime, sysUser.getId(), userName);
         for (ExamTaskDto record : examTaskDtoIPage.getRecords()) {
         for (ExamTaskDto record : examTaskDtoIPage.getRecords()) {
             if ((Objects.nonNull(record.getReview()) && record.getReview() && FlowStatusEnum.FINISH.name().equals(record.getAuditStatus()) && !ExamModelEnum.MODEL3.equals(record.getExamModel()))) {
             if ((Objects.nonNull(record.getReview()) && record.getReview() && FlowStatusEnum.FINISH.name().equals(record.getAuditStatus()) && !ExamModelEnum.MODEL3.equals(record.getExamModel()))) {
                 record.setApproveFormStatus(true);
                 record.setApproveFormStatus(true);
@@ -677,22 +672,19 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
     }
     }
 
 
     @Override
     @Override
-    public IPage<ExamTaskDto> listTaskReviewUnaudited(Long semesterId, Long examId, String courseCode, String paperNumber, Long userId, Long
-            cardRuleId, Long startTime, Long endTime, Long startCreateTime, Long endCreateTime, String createName, Integer pageNumber, Integer pageSize) {
+    public IPage<ExamTaskDto> listTaskReviewUnaudited(Long semesterId, Long examId, Long courseId, String paperNumber, Long userId, Long startTime, Long endTime, Long startCreateTime, Long endCreateTime, Integer pageNumber, Integer pageSize) {
         SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
         SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
-        createName = SystemConstant.translateSpecificSign(createName);
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
-        return this.baseMapper.listTaskReviewUnaudited(new Page<>(pageNumber, pageSize), schoolId, semesterId, examId, courseCode, paperNumber, userId, cardRuleId, startTime, endTime, startCreateTime, endCreateTime, createName, sysUser.getId());
+        return this.baseMapper.listTaskReviewUnaudited(new Page<>(pageNumber, pageSize), schoolId, semesterId, examId, courseId, paperNumber, userId, startTime, endTime, startCreateTime, endCreateTime, sysUser.getId());
     }
     }
 
 
     @Override
     @Override
-    public IPage<ExamTaskDto> listTaskReviewAudited(Long semesterId, Long examId, String reviewStatus, String courseCode, String
-            paperNumber, Long userId, Long cardRuleId, Long startTime, Long endTime, Long startCreateTime, Long endCreateTime, String createName, Integer pageNumber, Integer pageSize) {
-        createName = SystemConstant.translateSpecificSign(createName);
+    public IPage<ExamTaskDto> listTaskReviewAudited(Long semesterId, Long examId, Long courseId, String
+            paperNumber, Long userId, Long startTime, Long endTime, Long startCreateTime, Long endCreateTime, Integer pageNumber, Integer pageSize) {
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
         Set<Long> orgIds = teachcloudCommonService.listSubOrgIds(null);
         Set<Long> orgIds = teachcloudCommonService.listSubOrgIds(null);
         SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
         SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
-        return this.baseMapper.listTaskReviewAudited(new Page<>(pageNumber, pageSize), schoolId, semesterId, examId, reviewStatus, courseCode, paperNumber, userId, cardRuleId, startTime, endTime, orgIds, startCreateTime, endCreateTime, createName, sysUser.getId());
+        return this.baseMapper.listTaskReviewAudited(new Page<>(pageNumber, pageSize), schoolId, semesterId, examId, courseId, paperNumber, userId, startTime, endTime, orgIds, startCreateTime, endCreateTime, sysUser.getId());
     }
     }
 
 
     @Transactional
     @Transactional
@@ -718,17 +710,14 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
     }
     }
 
 
     @Override
     @Override
-    public IPage<ExamTaskDetailDto> listTaskPaper(Long semesterId, Long examId, String courseCode, String paperNumber, Long startTime, Long endTime, MakeMethodEnum makeMethod, Long cardRuleId, Integer pageNumber, Integer pageSize) {
+    public IPage<ExamTaskDetailDto> listTaskPaper(Long semesterId, Long examId, Long courseId, String paperNumber, Long startTime, Long endTime, Integer pageNumber, Integer pageSize) {
         SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
         SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
-        // 查询用户角色是否包含命题老师
-//        List<SysRole> list = sysUserRoleService.listRoleByUserId(sysUser.getId());
-//        boolean containsQuestionTeacher = list.stream().anyMatch(m -> RoleTypeEnum.QUESTION_TEACHER.equals(m.getType()));
         boolean containsQuestionTeacher = false;
         boolean containsQuestionTeacher = false;
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
         SysUser requestUser = (SysUser) ServletUtil.getRequestUser();
         SysUser requestUser = (SysUser) ServletUtil.getRequestUser();
         DataPermissionRule dpr = basicRoleDataPermissionService.findDataPermission(schoolId, requestUser.getId(), ServletUtil.getRequest().getServletPath());
         DataPermissionRule dpr = basicRoleDataPermissionService.findDataPermission(schoolId, requestUser.getId(), ServletUtil.getRequest().getServletPath());
         Page<ExamTaskDetailDto> page = new Page<>(pageNumber, pageSize);
         Page<ExamTaskDetailDto> page = new Page<>(pageNumber, pageSize);
-        return this.baseMapper.listTaskPaper(page, schoolId, semesterId, examId, courseCode, paperNumber, startTime, endTime, dpr, containsQuestionTeacher, sysUser.getId(), makeMethod, cardRuleId);
+        return this.baseMapper.listTaskPaper(page, schoolId, semesterId, examId, courseId, paperNumber, startTime, endTime, dpr, containsQuestionTeacher, sysUser.getId());
     }
     }
 
 
     @Override
     @Override
@@ -1003,7 +992,7 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
                     stringSet.add(String.format("课程[%s(%s)],试卷编号[%s]的" + ExceptionResultEnum.EXAM_TASK_IS_NOT_EXIST.getMessage(), courseName, courseCode, paperNumber));
                     stringSet.add(String.format("课程[%s(%s)],试卷编号[%s]的" + ExceptionResultEnum.EXAM_TASK_IS_NOT_EXIST.getMessage(), courseName, courseCode, paperNumber));
                 } else {
                 } else {
                     if (examTask.getReview()) {
                     if (examTask.getReview()) {
-                        examTask = examTaskService.findExamTaskByFlowStatus(schoolId, examPrintPlan.getExamId(), examDetailCourse.getCourseCode(), examDetailCourse.getPaperNumber(), FlowStatusEnum.FINISH);
+                        examTask = examTaskService.findExamTaskByFlowStatus(schoolId, examPrintPlan.getExamId(), examDetailCourse.getCourseId(), examDetailCourse.getPaperNumber(), FlowStatusEnum.FINISH);
                         if (examTask == null) {
                         if (examTask == null) {
                             stringSet.add(String.format("课程[%s(%s)],试卷编号[%s]的" + ExceptionResultEnum.EXAM_TASK_IS_NULL.getMessage(), courseName, courseCode, paperNumber));
                             stringSet.add(String.format("课程[%s(%s)],试卷编号[%s]的" + ExceptionResultEnum.EXAM_TASK_IS_NULL.getMessage(), courseName, courseCode, paperNumber));
                         }
                         }
@@ -1033,22 +1022,21 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
     }
     }
 
 
     @Override
     @Override
-    public List<ExamTaskDetailDto> listTaskPaper(Long semesterId, Long examId, String courseCode, String paperNumber, Long cardRuleId, MakeMethodEnum makeMethod, Long startTime, Long
+    public List<ExamTaskDetailDto> listTaskPaper(Long semesterId, Long examId, Long courseId, String paperNumber, Long startTime, Long
             endTime) {
             endTime) {
         SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
         SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
         // 查询用户角色是否包含命题老师
         // 查询用户角色是否包含命题老师
         List<SysRole> list = sysUserRoleService.listRoleByUserId(sysUser.getId());
         List<SysRole> list = sysUserRoleService.listRoleByUserId(sysUser.getId());
-//        boolean containsQuestionTeacher = list.stream().filter(m -> RoleTypeEnum.QUESTION_TEACHER.equals(m.getType())).count() > 0;
         boolean containsQuestionTeacher = false;
         boolean containsQuestionTeacher = false;
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
         Set<Long> orgIds = teachcloudCommonService.listSubOrgIds(null);
         Set<Long> orgIds = teachcloudCommonService.listSubOrgIds(null);
         DataPermissionRule dpr = basicRoleDataPermissionService.findDataPermission(schoolId, sysUser.getId(), ServletUtil.getRequest().getServletPath());
         DataPermissionRule dpr = basicRoleDataPermissionService.findDataPermission(schoolId, sysUser.getId(), ServletUtil.getRequest().getServletPath());
-        return this.baseMapper.listTaskPaper(schoolId, semesterId, examId, courseCode, paperNumber, cardRuleId, makeMethod, startTime, endTime, dpr, orgIds, containsQuestionTeacher, sysUser.getId());
+        return this.baseMapper.listTaskPaper(schoolId, semesterId, examId, courseId, paperNumber, startTime, endTime, dpr, orgIds, containsQuestionTeacher, sysUser.getId());
     }
     }
 
 
     @Override
     @Override
-    public TBTask taskDownloadPdf(Long semesterId, Long examId, String courseCode, String paperNumber, Long cardRuleId, MakeMethodEnum makeMethod, Long startTime, Long endTime) {
-        List<ExamTaskDetailDto> examTasks = this.listTaskPaper(semesterId, examId, courseCode, paperNumber, cardRuleId, makeMethod, startTime, endTime);
+    public TBTask taskDownloadPdf(Long semesterId, Long examId, Long courseId, String paperNumber, Long startTime, Long endTime) {
+        List<ExamTaskDetailDto> examTasks = this.listTaskPaper(semesterId, examId, courseId, paperNumber, startTime, endTime);
         if (CollectionUtils.isEmpty(examTasks)) {
         if (CollectionUtils.isEmpty(examTasks)) {
             throw ExceptionResultEnum.ERROR.exception("没有可导出数据");
             throw ExceptionResultEnum.ERROR.exception("没有可导出数据");
         }
         }
@@ -1087,20 +1075,14 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
 
 
     /**
     /**
      * 根据流程状态查找命题任务
      * 根据流程状态查找命题任务
-     *
-     * @param schoolId
-     * @param courseCode
-     * @param paperNumber
-     * @param flowStatus
-     * @return
      */
      */
     @Override
     @Override
-    public ExamTask findExamTaskByFlowStatus(Long schoolId, Long examId, String courseCode, String paperNumber, FlowStatusEnum flowStatus) {
-        List<ExamTask> examTaskList = this.baseMapper.findExamTaskByFlowStatus(schoolId, examId, courseCode, paperNumber, Objects.nonNull(flowStatus) ? flowStatus.name() : null);
+    public ExamTask findExamTaskByFlowStatus(Long schoolId, Long examId, Long courseId, String paperNumber, FlowStatusEnum flowStatus) {
+        List<ExamTask> examTaskList = this.baseMapper.findExamTaskByFlowStatus(schoolId, examId, courseId, paperNumber, Objects.nonNull(flowStatus) ? flowStatus.name() : null);
         if (CollectionUtils.isEmpty(examTaskList)) {
         if (CollectionUtils.isEmpty(examTaskList)) {
             throw ExceptionResultEnum.EXAM_TASK_IS_NULL.exception();
             throw ExceptionResultEnum.EXAM_TASK_IS_NULL.exception();
         } else if (examTaskList.size() != 1) {
         } else if (examTaskList.size() != 1) {
-            throw ExceptionResultEnum.ERROR.exception("命题任务查询异常:" + ExceptionResultEnum.DATA_COUNT_EXCEPTION.getMessage() + String.format("考试ID[%s],课程代码[%s],试卷编号[%s]", examId, courseCode, paperNumber));
+            throw ExceptionResultEnum.ERROR.exception("命题任务查询异常:" + ExceptionResultEnum.DATA_COUNT_EXCEPTION.getMessage() + String.format("考试ID[%s],课程ID[%s],试卷编号[%s]", examId, courseId, paperNumber));
         } else {
         } else {
             ExamTask examTask = examTaskList.get(0);
             ExamTask examTask = examTaskList.get(0);
             if (!examTask.getEnable()) {
             if (!examTask.getEnable()) {
@@ -1222,11 +1204,8 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
                 examTask.setPaperNumber(paperNumber);
                 examTask.setPaperNumber(paperNumber);
             }
             }
 
 
-            String sequence = printCommonService.createCourseSequence(schoolId, examTask.getCourseCode());
-            examTask.setSequence(sequence);
             examTask.setId(SystemConstant.getDbUuid());
             examTask.setId(SystemConstant.getDbUuid());
             examTask.setSchoolId(schoolId);
             examTask.setSchoolId(schoolId);
-            examTask.setOrgId(basicCourseService.getOrgIdBySchoolIdAndCourseCode(schoolId, examTask.getCourseCode()));
             examTask.setReview(basicPrintConfig.getReview());
             examTask.setReview(basicPrintConfig.getReview());
             examTask.setUserId(sysUser.getId());
             examTask.setUserId(sysUser.getId());
             examTask.setStatus(ExamStatusEnum.SUBMIT);
             examTask.setStatus(ExamStatusEnum.SUBMIT);
@@ -1396,8 +1375,7 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
                         examDetailCourse.setId(SystemConstant.getDbUuid());
                         examDetailCourse.setId(SystemConstant.getDbUuid());
                         examDetailCourse.setSchoolId(schoolId);
                         examDetailCourse.setSchoolId(schoolId);
                         examDetailCourse.setExamDetailId(examDetail.getId());
                         examDetailCourse.setExamDetailId(examDetail.getId());
-                        examDetailCourse.setCourseCode(examTask.getCourseCode());
-                        examDetailCourse.setCourseName(examTask.getCourseName());
+                        examDetailCourse.setCourseId(examTask.getCourseId());
                         examDetailCourse.setPaperNumber(paperNumber);
                         examDetailCourse.setPaperNumber(paperNumber);
                         examDetailCourse.setCoursePaperId(String.valueOf(examTask.getId()));
                         examDetailCourse.setCoursePaperId(String.valueOf(examTask.getId()));
                         examDetailCourse.setClazzId(examDetailList.getClassId());
                         examDetailCourse.setClazzId(examDetailList.getClassId());
@@ -1696,11 +1674,11 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
 
 
     @Transactional(rollbackFor = Exception.class)
     @Transactional(rollbackFor = Exception.class)
     @Override
     @Override
-    public List<ExamTaskStudentObjectResult> findExamTaskStudentObject(Long examId, String courseCode, String teacher, String className, SysUser requestUser) {
+    public List<ExamTaskStudentObjectResult> findExamTaskStudentObject(Long examId, Long courseId, String teacher, String className, SysUser requestUser) {
         Long schoolId = requestUser.getSchoolId();
         Long schoolId = requestUser.getSchoolId();
         List<ExamTaskStudentObjectResult> result = new ArrayList<>();
         List<ExamTaskStudentObjectResult> result = new ArrayList<>();
         // 基础班级对象
         // 基础班级对象
-        List<BasicExamStudentResult> basicStudentResultList = basicStudentService.basicStudentList(schoolId, examId, courseCode, teacher, className, null);
+        List<BasicExamStudentResult> basicStudentResultList = basicStudentService.basicStudentList(schoolId, examId, courseId, teacher, className, null);
         if (!CollectionUtils.isEmpty(basicStudentResultList)) {
         if (!CollectionUtils.isEmpty(basicStudentResultList)) {
             LinkedMultiValueMap<Long, StudentInfo> studentInfoLinkedMultiValueMap = new LinkedMultiValueMap<>();
             LinkedMultiValueMap<Long, StudentInfo> studentInfoLinkedMultiValueMap = new LinkedMultiValueMap<>();
             Map<Long, ExamTaskStudentObjectResult> examTaskStudentObjectResultMap = new LinkedHashMap<>();
             Map<Long, ExamTaskStudentObjectResult> examTaskStudentObjectResultMap = new LinkedHashMap<>();
@@ -2027,6 +2005,18 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
         return this.getOne(queryWrapper);
         return this.getOne(queryWrapper);
     }
     }
 
 
+    @Override
+    public ExamTask getByExamIdAndCourseIdAndPaperNumber(Long examId, Long courseId, String paperNumber) {
+        QueryWrapper<ExamTask> queryWrapper = new QueryWrapper<>();
+        LambdaQueryWrapper<ExamTask> lambdaQueryWrapper = queryWrapper.lambda();
+        lambdaQueryWrapper.eq(ExamTask::getExamId, examId);
+        if (courseId != null) {
+            lambdaQueryWrapper.eq(ExamTask::getCourseId, courseId);
+        }
+        lambdaQueryWrapper.eq(ExamTask::getPaperNumber, paperNumber);
+        return this.getOne(queryWrapper);
+    }
+
     @Override
     @Override
     public IPage<MakeupExamTaskDto> listMakeupExamTask(Long printPlanId, Long semesterId, Long examId, Long collegeId, String courseCode, String paperNumber, String userName, Integer pageNumber, Integer pageSize) {
     public IPage<MakeupExamTaskDto> listMakeupExamTask(Long printPlanId, Long semesterId, Long examId, Long collegeId, String courseCode, String paperNumber, String userName, Integer pageNumber, Integer pageSize) {
         if (semesterId == null) {
         if (semesterId == null) {

+ 31 - 136
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/PrintCommonServiceImpl.java

@@ -77,97 +77,68 @@ public class PrintCommonServiceImpl implements PrintCommonService {
 
 
     @Resource
     @Resource
     private DictionaryConfig dictionaryConfig;
     private DictionaryConfig dictionaryConfig;
-
     @Resource
     @Resource
-    BasicAttachmentService basicAttachmentService;
-
+    private BasicAttachmentService basicAttachmentService;
     @Resource
     @Resource
     @Lazy
     @Lazy
     private ExamTaskService examTaskService;
     private ExamTaskService examTaskService;
-
     @Resource
     @Resource
     private BasicCourseMapper basicCourseMapper;
     private BasicCourseMapper basicCourseMapper;
-
     @Resource
     @Resource
     @Lazy
     @Lazy
-    BasicCourseService basicCourseService;
-
+    private BasicCourseService basicCourseService;
     @Resource
     @Resource
-    ExamDetailCourseService examDetailCourseService;
-
+    private ExamDetailCourseService examDetailCourseService;
     @Resource
     @Resource
-    SysOrgService sysOrgService;
-
+    private SysOrgService sysOrgService;
     @Resource
     @Resource
-    private SysUserService sysUserService;
-
+    private TBTaskService tbTaskService;
     @Resource
     @Resource
-    TBTaskService tbTaskService;
-
-    @Resource
-    TBTaskPdfService tbTaskPdfService;
-
+    private TBTaskPdfService tbTaskPdfService;
     @Resource
     @Resource
     @Lazy
     @Lazy
-    ExamDetailService examDetailService;
-
+    private ExamDetailService examDetailService;
     @Resource
     @Resource
     @Lazy
     @Lazy
-    ExamTaskDetailService examTaskDetailService;
-
+    private ExamTaskDetailService examTaskDetailService;
     @Resource
     @Resource
-    ExamPrintPlanService examPrintPlanService;
-
+    private ExamPrintPlanService examPrintPlanService;
     @Resource
     @Resource
-    TFFlowApproveService tfFlowApproveService;
-
+    private TFFlowApproveService tfFlowApproveService;
     @Resource
     @Resource
     private FileStoreUtil fileStoreUtil;
     private FileStoreUtil fileStoreUtil;
-
     @Resource
     @Resource
     private FileUploadService fileUploadService;
     private FileUploadService fileUploadService;
-
     @Resource
     @Resource
-    TeachcloudCommonService teachcloudCommonService;
-
+    private TeachcloudCommonService teachcloudCommonService;
     @Resource
     @Resource
-    RedisUtil redisUtil;
-
+    private RedisUtil redisUtil;
     @Resource
     @Resource
-    BasicExamService basicExamService;
-
+    private BasicExamService basicExamService;
     @Resource
     @Resource
-    GradeBatchPaperService gradeBatchPaperService;
+    private GradeBatchPaperService gradeBatchPaperService;
     @Resource
     @Resource
-    BasicTeachClazzService basicTeachClazzService;
+    private BasicTeachClazzService basicTeachClazzService;
     @Resource
     @Resource
-    BasicExamStudentService basicExamStudentService;
-
+    private BasicExamStudentService basicExamStudentService;
     @Resource
     @Resource
-    CreatePrintPdfUtil createPrintPdfUtil;
-
+    private CreatePrintPdfUtil createPrintPdfUtil;
     @Resource
     @Resource
-    CommonCacheService commonCacheService;
-
+    private CommonCacheService commonCacheService;
     @Resource
     @Resource
-    RedisCounterUtil redisCounterUtil;
-
+    private RedisCounterUtil redisCounterUtil;
     @Resource
     @Resource
-    MarkPaperService markPaperService;
-
+    private MarkPaperService markPaperService;
     @Resource
     @Resource
-    TCUsualScoreMapper tcUsualScoreMapper;
-
+    private TCUsualScoreMapper tcUsualScoreMapper;
     @Resource
     @Resource
-    BasicRoleDataPermissionService basicRoleDataPermissionService;
-
+    private BasicRoleDataPermissionService basicRoleDataPermissionService;
     @Resource
     @Resource
     @Lazy
     @Lazy
-    TCFinalScoreService tcFinalScoreService;
-
+    private TCFinalScoreService tcFinalScoreService;
     @Resource
     @Resource
     @Lazy
     @Lazy
-    TCPaperStructService tcPaperStructService;
+    private TCPaperStructService tcPaperStructService;
 
 
     /**
     /**
      * 保存附件
      * 保存附件
@@ -417,7 +388,8 @@ public class PrintCommonServiceImpl implements PrintCommonService {
         if (Objects.isNull(markPaper)) {
         if (Objects.isNull(markPaper)) {
             BasicCourse basicCourse = basicCourseService.getByCode(courseCode);
             BasicCourse basicCourse = basicCourseService.getByCode(courseCode);
             Objects.requireNonNull(basicCourse, "未找到基础课程信息");
             Objects.requireNonNull(basicCourse, "未找到基础课程信息");
-            markPaper = new MarkPaper(examId, courseCode, basicCourse.getName(), paperNumber, 100d, 60d);
+            // todo 课程ID,目标达成度,未改
+            markPaper = new MarkPaper(examId, null, paperNumber, 100d, 60d);
         }
         }
         return markPaper;
         return markPaper;
     }
     }
@@ -911,24 +883,6 @@ public class PrintCommonServiceImpl implements PrintCommonService {
         return saveAttachmentCommon(file, md5, type, null);
         return saveAttachmentCommon(file, md5, type, null);
     }
     }
 
 
-    /**
-     * 科目删除
-     *
-     * @param id
-     * @return
-     */
-    @Override
-    public boolean remove(Long id) {
-        BasicCourse basicCourse = basicCourseMapper.selectById(id);
-        QueryWrapper<ExamTask> queryWrapper = new QueryWrapper<>();
-        queryWrapper.lambda().eq(ExamTask::getSchoolId, basicCourse.getSchoolId()).eq(ExamTask::getCourseCode, basicCourse.getCode());
-        int count = examTaskService.count(queryWrapper);
-        if (count > 0) {
-            throw ExceptionResultEnum.ERROR.exception("课程[" + basicCourse.getName() + "(" + basicCourse.getCode() + ")]绑定命题任务,不能删除");
-        }
-        return basicCourseService.removeById(id);
-    }
-
     /**
     /**
      * 分页查询
      * 分页查询
      *
      *
@@ -984,57 +938,6 @@ public class PrintCommonServiceImpl implements PrintCommonService {
         }
         }
     }
     }
 
 
-    /**
-     * 机构禁用
-     *
-     * @param org
-     * @return
-     */
-    @Override
-    public boolean enable(SysOrg org) {
-        // 禁用时,校验机构
-        if (!org.getEnable()) {
-            validateOrg(org.getId());
-        }
-        UpdateWrapper<SysOrg> updateWrapper = new UpdateWrapper<>();
-        updateWrapper.lambda().set(SysOrg::getEnable, org.getEnable()).eq(SysOrg::getId, org.getId());
-        return sysOrgService.update(updateWrapper);
-    }
-
-    /**
-     * 机构删除
-     *
-     * @param id
-     * @return
-     */
-    @Transactional
-    @Override
-    public boolean sysOrgRemove(Long id) {
-        // 机构校验
-        validateOrg(id);
-        boolean result = sysOrgService.removeById(id);
-
-        Long schoolId = SystemConstant.convertIdToLong(String.valueOf(ServletUtil.getRequestHeaderSchoolId()));
-        commonCacheService.removeOrgCollegeLevelCache(schoolId);
-        return result;
-    }
-
-    private void validateOrg(Long id) {
-        // 机构下是否有用户
-        List<SysUser> sysUsers = sysUserService.listByOrgId(id);
-        if (!CollectionUtils.isEmpty(sysUsers)) {
-            throw ExceptionResultEnum.ERROR.exception("该机构下有用户,不能删除");
-        }
-
-        // 机构下是否有子机构
-        QueryWrapper<SysOrg> orgQueryWrapper = new QueryWrapper<>();
-        orgQueryWrapper.lambda().eq(SysOrg::getParentId, id);
-        List<SysOrg> sysOrgs = sysOrgService.list(orgQueryWrapper);
-        if (!CollectionUtils.isEmpty(sysOrgs)) {
-            throw ExceptionResultEnum.ERROR.exception("该机构下有子机构,不能删除");
-        }
-    }
-
     /**
     /**
      * 保存任务
      * 保存任务
      *
      *
@@ -1232,9 +1135,9 @@ public class PrintCommonServiceImpl implements PrintCommonService {
     }
     }
 
 
     @Override
     @Override
-    public void checkExamDataAndCreatePdfTask(Long schoolId, Long examId, String courseCode, String paperNumber, SysUser user) {
+    public void checkExamDataAndCreatePdfTask(Long schoolId, Long examId, Long courseId, String paperNumber, SysUser user) {
         // 校验命题任务是否提交
         // 校验命题任务是否提交
-        ExamTask examTask = examTaskService.getByExamIdAndCourseCodeAndPaperNumber(examId, courseCode, paperNumber);
+        ExamTask examTask = examTaskService.getByExamIdAndCourseIdAndPaperNumber(examId, courseId, paperNumber);
         BasicExam basicExam = basicExamService.getById(examTask.getExamId());
         BasicExam basicExam = basicExamService.getById(examTask.getExamId());
         if (basicExam != null && ExamModelEnum.MODEL3.equals(basicExam.getExamModel())) {
         if (basicExam != null && ExamModelEnum.MODEL3.equals(basicExam.getExamModel())) {
             log.info("考试模式为模式3,不生成pdf");
             log.info("考试模式为模式3,不生成pdf");
@@ -1262,7 +1165,7 @@ public class PrintCommonServiceImpl implements PrintCommonService {
 
 
         if (canCreatePdf) {
         if (canCreatePdf) {
             // 2.校验考务数据是否导入
             // 2.校验考务数据是否导入
-            List<ExamDetail> examDetailList = examDetailService.listByCourseCodeAndPaperNumber(schoolId, examId, courseCode, paperNumber);
+            List<ExamDetail> examDetailList = examDetailService.listByCourseIdAndPaperNumber(schoolId, examId, courseId, paperNumber);
             if (CollectionUtils.isNotEmpty(examDetailList)) {
             if (CollectionUtils.isNotEmpty(examDetailList)) {
                 // 3.检查examDetailId下有无其它课程
                 // 3.检查examDetailId下有无其它课程
                 for (ExamDetail examDetail : examDetailList) {
                 for (ExamDetail examDetail : examDetailList) {
@@ -1361,25 +1264,17 @@ public class PrintCommonServiceImpl implements PrintCommonService {
                 throw ExceptionResultEnum.ERROR.exception("ID[" + studentId + "]的考生不存在");
                 throw ExceptionResultEnum.ERROR.exception("ID[" + studentId + "]的考生不存在");
             }
             }
             ExamStudent examStudent = new ExamStudent();
             ExamStudent examStudent = new ExamStudent();
-            examStudent.setSchoolId(sysUser.getSchoolId());
             examStudent.setId(SystemConstant.getDbUuid());
             examStudent.setId(SystemConstant.getDbUuid());
-            examStudent.setOrgId(sysUser.getOrgId());
+            examStudent.setSchoolId(sysUser.getSchoolId());
             examStudent.setExamDetailCourseId(examDetailCourseId);
             examStudent.setExamDetailCourseId(examDetailCourseId);
-            examStudent.setStudentName(basicExamStudent.getStudentName());
-            examStudent.setStudentCode(basicExamStudent.getStudentCode());
+            examStudent.setStudentId(studentId);
             examStudent.setExamId(examId);
             examStudent.setExamId(examId);
             examStudent.setPaperNumber(examTask.getPaperNumber());
             examStudent.setPaperNumber(examTask.getPaperNumber());
             examStudent.setCoursePaperId(String.valueOf(examTask.getId()));
             examStudent.setCoursePaperId(String.valueOf(examTask.getId()));
-            examStudent.setCollegeName(basicExamStudent.getCollege());
-            examStudent.setMajorName(basicExamStudent.getMajor());
             examStudent.setSiteNumber(String.valueOf(atomicInteger.getAndIncrement()));
             examStudent.setSiteNumber(String.valueOf(atomicInteger.getAndIncrement()));
             examStudent.setTeacherId(basicExamStudent.getTeacherId());
             examStudent.setTeacherId(basicExamStudent.getTeacherId());
             examStudent.setExtendFields(extendFields);
             examStudent.setExtendFields(extendFields);
             examStudent.setCreateId(sysUser.getId());
             examStudent.setCreateId(sysUser.getId());
-            // 教学班数据
-            examStudent.setTeachClazzId(basicExamStudent.getClazzId());
-            BasicTeachClazz basicTeachClazz = basicTeachClazzService.getById(basicExamStudent.getClazzId());
-            examStudent.setTeachClazzName(basicTeachClazz != null ? basicTeachClazz.getClazzName() : null);
             examStudentList.add(examStudent);
             examStudentList.add(examStudent);
         }
         }
         return examStudentList;
         return examStudentList;

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

@@ -79,7 +79,7 @@ public class TBSyncTaskServiceImpl extends ServiceImpl<TBSyncTaskMapper, TBSyncT
     }
     }
 
 
     @Override
     @Override
-    public TBSyncTask saveTask(Long schoolId, Long semesterId, Long examId, String courseCode, String courseName, String paperNumber, String paperType, PushTypeEnum type, String remark) {
+    public TBSyncTask saveTask(Long schoolId, Long semesterId, Long examId, Long courseId, String paperNumber, String paperType, PushTypeEnum type, String remark) {
         QueryWrapper<TBSyncTask> queryWrapper = new QueryWrapper<>();
         QueryWrapper<TBSyncTask> queryWrapper = new QueryWrapper<>();
         queryWrapper.lambda().eq(TBSyncTask::getSchoolId, schoolId)
         queryWrapper.lambda().eq(TBSyncTask::getSchoolId, schoolId)
                 .eq(TBSyncTask::getSemesterId, semesterId)
                 .eq(TBSyncTask::getSemesterId, semesterId)
@@ -102,8 +102,7 @@ public class TBSyncTaskServiceImpl extends ServiceImpl<TBSyncTaskMapper, TBSyncT
             tbSyncTask.setSchoolId(schoolId);
             tbSyncTask.setSchoolId(schoolId);
             tbSyncTask.setSemesterId(semesterId);
             tbSyncTask.setSemesterId(semesterId);
             tbSyncTask.setExamId(examId);
             tbSyncTask.setExamId(examId);
-            tbSyncTask.setCourseCode(courseCode);
-            tbSyncTask.setCourseName(courseName);
+            tbSyncTask.setCourseId(courseId);
             tbSyncTask.setPaperNumber(paperNumber);
             tbSyncTask.setPaperNumber(paperNumber);
             tbSyncTask.setPaperType(paperType);
             tbSyncTask.setPaperType(paperType);
             tbSyncTask.setType(type);
             tbSyncTask.setType(type);

+ 1 - 0
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/TBTaskPdfServiceImpl.java

@@ -88,6 +88,7 @@ public class TBTaskPdfServiceImpl extends ServiceImpl<TBTaskPdfMapper, TBTaskPdf
         tbTaskPdf.setStatus(TaskStatusEnum.INIT);
         tbTaskPdf.setStatus(TaskStatusEnum.INIT);
         tbTaskPdf.setCreateType(type);
         tbTaskPdf.setCreateType(type);
         tbTaskPdf.setResult(null);
         tbTaskPdf.setResult(null);
+        tbTaskPdf.setUpdateTime(null);
         tbTaskPdf.setSummary(MessageFormat.format("{0}{1}{2}", DateUtil.format(new Date(), SystemConstant.DEFAULT_DATE_PATTERN), "->", "重置成功,PDF待生成"));
         tbTaskPdf.setSummary(MessageFormat.format("{0}{1}{2}", DateUtil.format(new Date(), SystemConstant.DEFAULT_DATE_PATTERN), "->", "重置成功,PDF待生成"));
         this.updateById(tbTaskPdf);
         this.updateById(tbTaskPdf);
     }
     }

+ 1 - 2
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/TRBasicInfoServiceImpl.java

@@ -120,8 +120,7 @@ public class TRBasicInfoServiceImpl extends ServiceImpl<TRBasicInfoMapper, TRBas
         ReportScoreViewDto reportScoreViewDto = null;
         ReportScoreViewDto reportScoreViewDto = null;
         TCPaperStruct tcPaperStruct = tcPaperStructService.queryPaperStruct(markPaper.getExamId(), markPaper.getCourseCode(), markPaper.getPaperNumber(), trBasicInfo.getTeachCourseId());
         TCPaperStruct tcPaperStruct = tcPaperStructService.queryPaperStruct(markPaper.getExamId(), markPaper.getCourseCode(), markPaper.getPaperNumber(), trBasicInfo.getTeachCourseId());
         if (Objects.nonNull(tcPaperStruct) && Objects.nonNull(tcPaperStruct.getPaperStruct()) && Objects.nonNull(tcPaperStruct.getTotalScore())) {
         if (Objects.nonNull(tcPaperStruct) && Objects.nonNull(tcPaperStruct.getPaperStruct()) && Objects.nonNull(tcPaperStruct.getTotalScore())) {
-            BasicCourse basicCourse = basicCourseService.getByCode(trBasicInfo.getCourseCode());
-            markPaper = new MarkPaper(markPaper.getExamId(), markPaper.getCourseCode(), basicCourse.getName(), markPaper.getPaperNumber(), tcPaperStruct.getTotalScore(), tcPaperStruct.getPassScore());
+            markPaper = new MarkPaper(markPaper.getExamId(), markPaper.getCourseId(), markPaper.getPaperNumber(), tcPaperStruct.getTotalScore(), tcPaperStruct.getPassScore());
         }
         }
         fillScoreRange(finalScoreDto, trBasicInfo.getExamId(), trBasicInfo.getPaperNumber(), trBasicInfo.getTeachCourseId(), markPaper);
         fillScoreRange(finalScoreDto, trBasicInfo.getExamId(), trBasicInfo.getPaperNumber(), trBasicInfo.getTeachCourseId(), markPaper);
         List<ScoreRangeVo> scoreRangeVoList = finalScoreDto.getScoreRange();
         List<ScoreRangeVo> scoreRangeVoList = finalScoreDto.getScoreRange();

+ 5 - 430
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/TeachCourseServiceImpl.java

@@ -5,11 +5,7 @@ import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.qmth.distributed.print.business.bean.params.AssignClazzParam;
-import com.qmth.distributed.print.business.bean.params.TeachCourseParams;
 import com.qmth.distributed.print.business.bean.params.TeachCourseSelectParam;
 import com.qmth.distributed.print.business.bean.params.TeachCourseSelectParam;
-import com.qmth.distributed.print.business.bean.params.TeacherTeamParam;
-import com.qmth.distributed.print.business.bean.result.ClazzDistributedResult;
 import com.qmth.distributed.print.business.bean.result.CourseWeightSettingStatusResult;
 import com.qmth.distributed.print.business.bean.result.CourseWeightSettingStatusResult;
 import com.qmth.distributed.print.business.bean.result.DictionaryResult;
 import com.qmth.distributed.print.business.bean.result.DictionaryResult;
 import com.qmth.distributed.print.business.bean.result.TeachCourseResult;
 import com.qmth.distributed.print.business.bean.result.TeachCourseResult;
@@ -17,28 +13,22 @@ import com.qmth.distributed.print.business.entity.*;
 import com.qmth.distributed.print.business.enums.CourseSettingTypeEnum;
 import com.qmth.distributed.print.business.enums.CourseSettingTypeEnum;
 import com.qmth.distributed.print.business.mapper.TeachCourseMapper;
 import com.qmth.distributed.print.business.mapper.TeachCourseMapper;
 import com.qmth.distributed.print.business.service.*;
 import com.qmth.distributed.print.business.service.*;
-import com.qmth.teachcloud.common.base.BaseEntity;
 import com.qmth.teachcloud.common.bean.dto.DataPermissionRule;
 import com.qmth.teachcloud.common.bean.dto.DataPermissionRule;
-import com.qmth.teachcloud.common.bean.params.UserSaveParams;
-import com.qmth.teachcloud.common.bean.result.TeacherSelectResult;
-import com.qmth.teachcloud.common.bean.result.TeacherTeamResult;
-import com.qmth.teachcloud.common.bean.result.UserRoleNameResult;
 import com.qmth.teachcloud.common.contant.SystemConstant;
 import com.qmth.teachcloud.common.contant.SystemConstant;
 import com.qmth.teachcloud.common.entity.BasicCourse;
 import com.qmth.teachcloud.common.entity.BasicCourse;
-import com.qmth.teachcloud.common.entity.SysRole;
 import com.qmth.teachcloud.common.entity.SysUser;
 import com.qmth.teachcloud.common.entity.SysUser;
 import com.qmth.teachcloud.common.enums.ExceptionResultEnum;
 import com.qmth.teachcloud.common.enums.ExceptionResultEnum;
-import com.qmth.teachcloud.common.enums.RoleTypeEnum;
-import com.qmth.teachcloud.common.service.*;
+import com.qmth.teachcloud.common.service.BasicCourseService;
+import com.qmth.teachcloud.common.service.BasicRoleDataPermissionService;
+import com.qmth.teachcloud.common.service.SysOrgService;
+import com.qmth.teachcloud.common.service.SysUserService;
 import com.qmth.teachcloud.common.util.ServletUtil;
 import com.qmth.teachcloud.common.util.ServletUtil;
 import org.apache.commons.collections4.CollectionUtils;
 import org.apache.commons.collections4.CollectionUtils;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.BeanUtils;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.transaction.annotation.Transactional;
-import org.springframework.web.multipart.MultipartFile;
 
 
 import javax.annotation.Resource;
 import javax.annotation.Resource;
-import java.io.IOException;
 import java.util.ArrayList;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.List;
 import java.util.Objects;
 import java.util.Objects;
@@ -56,40 +46,22 @@ public class TeachCourseServiceImpl extends ServiceImpl<TeachCourseMapper, Teach
 
 
     @Resource
     @Resource
     private BasicCourseService basicCourseService;
     private BasicCourseService basicCourseService;
-
     @Resource
     @Resource
     private SysOrgService sysOrgService;
     private SysOrgService sysOrgService;
-
     @Resource
     @Resource
     private SysUserService sysUserService;
     private SysUserService sysUserService;
-
-    @Resource
-    private SysRoleService sysRoleService;
-
     @Resource
     @Resource
     private TeachClazzService teachClazzService;
     private TeachClazzService teachClazzService;
-
     @Resource
     @Resource
     private CourseTargetService courseTargetService;
     private CourseTargetService courseTargetService;
-
     @Resource
     @Resource
     private CourseEvaluationService courseEvaluationService;
     private CourseEvaluationService courseEvaluationService;
-
     @Resource
     @Resource
     private CourseWeightService courseWeightService;
     private CourseWeightService courseWeightService;
-
     @Resource
     @Resource
     private CourseDimensionService courseDimensionService;
     private CourseDimensionService courseDimensionService;
-
-    @Resource
-    private BasicTeachClazzService basicTeachClazzService;
-
     @Resource
     @Resource
     private TeachStudentService teachStudentService;
     private TeachStudentService teachStudentService;
-
-    @Resource
-    private SysUserRoleService sysUserRoleService;
-
     @Resource
     @Resource
     private BasicRoleDataPermissionService basicRoleDataPermissionService;
     private BasicRoleDataPermissionService basicRoleDataPermissionService;
 
 
@@ -102,49 +74,6 @@ public class TeachCourseServiceImpl extends ServiceImpl<TeachCourseMapper, Teach
         return this.baseMapper.findTeachCoursePage(new Page<>(pageNumber, pageSize), examId, courseName, requestUser.getSchoolId(), dpr);
         return this.baseMapper.findTeachCoursePage(new Page<>(pageNumber, pageSize), examId, courseName, requestUser.getSchoolId(), dpr);
     }
     }
 
 
-    @Deprecated
-    @Transactional
-    @Override
-    public Boolean manualCreate(TeachCourseParams teachCourseParams, SysUser requestUser) {
-        throw ExceptionResultEnum.ERROR.exception("废弃的方法");
-        //        String courseCode = teachCourseParams.getCourseCode();
-        //        String courseName = teachCourseParams.getCourseName();
-        //        Long schoolId = requestUser.getSchoolId();
-        //        Long userId = requestUser.getId();
-        //        Long basicCourseId;
-        //
-        //        // 校验
-        //        BasicCourse basicCourse = basicCourseService.getOne(
-        //                new QueryWrapper<BasicCourse>().lambda().eq(BasicCourse::getSchoolId, schoolId).eq(BasicCourse::getCode, courseCode));
-        //        if (Objects.nonNull(basicCourse)) {
-        //            // 根据课程编号查询存在课程判断名称是否一致
-        //            if (!courseName.equals(basicCourse.getName())) {
-        //                throw ExceptionResultEnum.ERROR.exception("课程编号[" + courseCode + "]的课程名称错误");
-        //            } else {
-        //                basicCourseId = basicCourse.getId();
-        //                // 判断重复教学课程
-        //                if (this.count(new QueryWrapper<TeachCourse>().lambda().eq(TeachCourse::getSchoolId, schoolId)
-        //                        .eq(TeachCourse::getUserId, userId).eq(TeachCourse::getBasicCourseId, basicCourseId)) > 0) {
-        //                    throw ExceptionResultEnum.ERROR.exception("课程[" + courseName + "]已经创建");
-        //                }
-        //            }
-        //        } else {
-        //            // 不存在课程,直接新增一个课程!
-        //            BasicCourseParams basicCourseParams = new BasicCourseParams();
-        //            basicCourseParams.setCourseCode(courseCode);
-        //            basicCourseParams.setCourseName(courseName);
-        //            basicCourseParams.setTeachingRoomId(requestUser.getOrgId());
-        //            basicCourseId = basicCourseService.saveBasicCourse(basicCourseParams, requestUser);
-        //        }
-        //        TeachCourse teachCourse = new TeachCourse();
-        //        teachCourse.setSchoolId(schoolId);
-        //        teachCourse.setBasicCourseId(basicCourseId);
-        //        teachCourse.setUserId(userId);
-        //        teachCourse.setEnable(true);
-        //        teachCourse.insertInfo(userId);
-        //        return this.save(teachCourse);
-    }
-
     @Transactional
     @Transactional
     @Override
     @Override
     public void selectCreate(TeachCourseSelectParam teachCourseSelectParam) {
     public void selectCreate(TeachCourseSelectParam teachCourseSelectParam) {
@@ -173,7 +102,7 @@ public class TeachCourseServiceImpl extends ServiceImpl<TeachCourseMapper, Teach
             teachCourseList.add(teachCourse);
             teachCourseList.add(teachCourse);
         }
         }
 
 
-        if(CollectionUtils.isNotEmpty(teachCourseList)){
+        if (CollectionUtils.isNotEmpty(teachCourseList)) {
             this.saveBatch(teachCourseList);
             this.saveBatch(teachCourseList);
 
 
             for (TeachCourse teachCourse : teachCourseList) {
             for (TeachCourse teachCourse : teachCourseList) {
@@ -183,38 +112,6 @@ public class TeachCourseServiceImpl extends ServiceImpl<TeachCourseMapper, Teach
         }
         }
     }
     }
 
 
-    @Deprecated
-    @Transactional
-    @Override
-    public void importTeachCourse(MultipartFile file, SysUser requestUser) {
-        throw ExceptionResultEnum.ERROR.exception("废弃的方法");
-        //        List<LinkedMultiValueMap<Integer, Object>> finalList = ExcelUtil.excelReader(file.getInputStream(), Lists.newArrayList(TeachCourseDto.class),
-        //                (finalExcelList, finalColumnNameList, finalExcelErrorList) -> {
-        //                    if (finalExcelErrorList.size() > 0) {
-        //                        throw ExceptionResultEnum.ERROR.exception(JSONObject.toJSONString(finalExcelErrorList));
-        //                    }
-        //                    return finalExcelList;
-        //                }, 2);
-        //
-        //        if (Objects.nonNull(finalList) && finalList.size() > 0) {
-        //            for (int i = 0; i < finalList.size(); i++) {
-        //                LinkedMultiValueMap<Integer, Object> map = finalList.get(i);
-        //                List<Object> teachCourseImportDtoList = map.get(i);
-        //                for (int y = 0; y < Objects.requireNonNull(teachCourseImportDtoList).size(); y++) {
-        //                    if (teachCourseImportDtoList.get(y) instanceof TeachCourseDto) {
-        //                        TeachCourseDto teachCourseDto = (TeachCourseDto) teachCourseImportDtoList.get(y);
-        //                        String courseCode = teachCourseDto.getCourseCode();
-        //                        String courseName = teachCourseDto.getCourseName();
-        //                        TeachCourseParams teachCourseParams = new TeachCourseParams();
-        //                        teachCourseParams.setCourseCode(courseCode);
-        //                        teachCourseParams.setCourseName(courseName);
-        //                        this.manualCreate(teachCourseParams, requestUser);
-        //                    }
-        //                }
-        //            }
-        //        }
-    }
-
     @Override
     @Override
     public List<DictionaryResult> findBasicCourseByUser(SysUser requestUser) {
     public List<DictionaryResult> findBasicCourseByUser(SysUser requestUser) {
         Long userId = requestUser.getId();
         Long userId = requestUser.getId();
@@ -288,211 +185,6 @@ public class TeachCourseServiceImpl extends ServiceImpl<TeachCourseMapper, Teach
         }
         }
     }
     }
 
 
-    @Transactional
-    @Override
-    public void manualCreateTeacher(TeacherTeamParam teacherTeamParam, SysUser requestUser) throws IllegalAccessException {
-        String name = teacherTeamParam.getTeacherName();
-        String code = teacherTeamParam.getTeacherCode();
-        Long teachCourseId = teacherTeamParam.getTeachCourseId();
-        TeachCourse teachCourse = this.getById(teachCourseId);
-        if (Objects.isNull(teachCourse)) {
-            throw ExceptionResultEnum.ERROR.exception("教学课程不存在");
-        }
-        Long examId = teachCourse.getExamId();
-        String courseCode = teachCourse.getCourseCode();
-
-        Long requestUserId = requestUser.getId();
-        Long schoolId = requestUser.getSchoolId();
-        Long teacherId;
-
-        SysUser dbUser = sysUserService.getOne(
-                new QueryWrapper<SysUser>().lambda().eq(SysUser::getSchoolId, schoolId).eq(SysUser::getCode, code));
-        if (Objects.nonNull(dbUser)) {
-            if (!name.equals(dbUser.getRealName())) {
-                // 用户名称不一致
-                throw ExceptionResultEnum.ERROR.exception("用户名/工号[" + code + "]的教师用户名称错误");
-            } else {
-                teacherId = dbUser.getId();
-                // 判断在该教师团队下已经存在该教师
-                if (this.count(new QueryWrapper<TeachCourse>().lambda().eq(TeachCourse::getExamId, examId)
-                        .eq(TeachCourse::getCourseCode, courseCode).eq(TeachCourse::getUserId, teacherId)) > 0) {
-                    throw ExceptionResultEnum.ERROR.exception("教师[" + name + "]已经在教师团队中");
-                }
-            }
-        } else {
-            // 不存在用户,直接创建一个学校老师用户
-            SysRole schoolTeacher = sysRoleService.getOne(
-                    new QueryWrapper<SysRole>().lambda().eq(SysRole::getType, RoleTypeEnum.SCHOOL_TEACHER));
-            if (Objects.isNull(schoolTeacher)) {
-                throw ExceptionResultEnum.ERROR.exception("缺少学校教师角色");
-            }
-            // 创建用户
-            UserSaveParams userSaveParams = new UserSaveParams();
-            userSaveParams.setSchoolId(schoolId);
-            userSaveParams.setLoginName(code);
-            userSaveParams.setRealName(name);
-            userSaveParams.setCode(code);
-            userSaveParams.setPassword(SystemConstant.DEFAULT_PASSWORD);
-            userSaveParams.setOrgId(requestUser.getOrgId());
-            userSaveParams.setEnable(true);
-            userSaveParams.setRoleIds(new Long[]{schoolTeacher.getId()});
-            teacherId = sysUserService.saveUser(userSaveParams);
-        }
-        // 添加教师团队
-        TeachCourse tmp = new TeachCourse();
-        tmp.setSchoolId(schoolId);
-        tmp.setExamId(examId);
-        tmp.setCourseCode(courseCode);
-        tmp.setWeightSetting(false);
-        tmp.setUserId(teacherId);
-        tmp.setEnable(true);
-        tmp.insertInfo(requestUserId);
-        this.save(tmp);
-
-        // 创建默认的评价方式
-        courseEvaluationService.createDefaultCourseEvaluation(tmp.getId());
-    }
-
-    @Transactional
-    @Override
-    public void selectCreateTeacher(Long teachCourseId, List<Long> userIdList, SysUser requestUser) {
-        Long schoolId = requestUser.getSchoolId();
-        Long requestUserId = requestUser.getId();
-
-        TeachCourse teachCourse = this.getById(teachCourseId);
-        if (Objects.isNull(teachCourse)) {
-            throw ExceptionResultEnum.ERROR.exception("教学班不存在");
-        }
-        Long examId = teachCourse.getExamId();
-        String courseCode = teachCourse.getCourseCode();
-
-        if (CollectionUtils.isNotEmpty(userIdList)) {
-            // 过滤userIdList
-            userIdList = sysUserService.listByIds(userIdList).stream().filter(SysUser::getEnable).map(BaseEntity::getId)
-                    .distinct().collect(Collectors.toList());
-
-            if (CollectionUtils.isNotEmpty(userIdList)) {
-                List<Long> alreadyCreated = this.list(
-                                new QueryWrapper<TeachCourse>().lambda().in(TeachCourse::getUserId, userIdList)
-                                        .eq(TeachCourse::getCourseCode, courseCode)).stream().map(TeachCourse::getUserId)
-                        .distinct().collect(Collectors.toList());
-
-                // 去掉已经在该课程教师团队的老师
-                userIdList.removeAll(alreadyCreated);
-
-                // 创建教学课程
-                List<TeachCourse> teachCourseList = userIdList.stream().flatMap(e -> {
-                    TeachCourse tmp = new TeachCourse();
-                    tmp.setSchoolId(schoolId);
-                    tmp.setExamId(examId);
-                    tmp.setCourseCode(courseCode);
-                    tmp.setWeightSetting(false);
-                    tmp.setUserId(e);
-                    tmp.setEnable(true);
-                    tmp.insertInfo(requestUserId);
-                    return Stream.of(tmp);
-                }).collect(Collectors.toList());
-
-                // 新增课程
-                this.saveBatch(teachCourseList);
-
-                for (TeachCourse tmp : teachCourseList) {
-                    // 创建默认评价方式
-                    courseEvaluationService.createDefaultCourseEvaluation(tmp.getId());
-                }
-            }
-        }
-    }
-
-    @Deprecated
-    @Transactional
-    @Override
-    public void importTeacherTeam(MultipartFile file, Long basicCourseId, SysUser requestUser) throws IOException, NoSuchFieldException, IllegalAccessException {
-        throw ExceptionResultEnum.ERROR.exception("废弃的方法");
-        //        List<LinkedMultiValueMap<Integer, Object>> finalList = ExcelUtil.excelReader(file.getInputStream(), Lists.newArrayList(TeacherTeamDto.class),
-        //                (finalExcelList, finalColumnNameList, finalExcelErrorList) -> {
-        //                    if (finalExcelErrorList.size() > 0) {
-        //                        throw ExceptionResultEnum.ERROR.exception(JSONObject.toJSONString(finalExcelErrorList));
-        //                    }
-        //                    return finalExcelList;
-        //                }, 2);
-        //
-        //        if (Objects.nonNull(finalList) && finalList.size() > 0) {
-        //            for (int i = 0; i < finalList.size(); i++) {
-        //                LinkedMultiValueMap<Integer, Object> map = finalList.get(i);
-        //                List<Object> teacherTeamImportList = map.get(i);
-        //                for (int y = 0; y < Objects.requireNonNull(teacherTeamImportList).size(); y++) {
-        //                    if (teacherTeamImportList.get(y) instanceof TeacherTeamDto) {
-        //                        TeacherTeamDto teacherTeamDto = (TeacherTeamDto) teacherTeamImportList.get(y);
-        //                        TeacherTeamParam teacherTeamParam = new TeacherTeamParam();
-        //                        teacherTeamParam.setTeacherCode(teacherTeamDto.getCode());
-        //                        teacherTeamParam.setTeacherName(teacherTeamDto.getName());
-        //                        teacherTeamParam.setBasicCourseId(basicCourseId);
-        //                        this.manualCreateTeacher(teacherTeamParam, requestUser);
-        //                    }
-        //                }
-        //            }
-        //        }
-    }
-
-    @Override
-    public IPage<TeacherTeamResult> findTeacherTeamPage(Long teachCourseId, String userInfo, int pageNumber,
-                                                        int pageSize) {
-        TeachCourse teachCourse = this.getById(teachCourseId);
-        if (Objects.isNull(teachCourse)) {
-            throw ExceptionResultEnum.ERROR.exception("教学课程不存在");
-        }
-        // 教学课程主管责任人
-        Long leaderId = teachCourse.getCreateId();
-        String courseCode = teachCourse.getCourseCode();
-
-        if (SystemConstant.strNotNull(userInfo)) {
-            userInfo = SystemConstant.translateSpecificSign(userInfo);
-        }
-        IPage<TeacherTeamResult> page = this.baseMapper.findTeacherTeamPage(new Page<>(pageNumber, pageSize), courseCode, leaderId, userInfo);
-        page.getRecords().forEach(e -> {
-            Long userId = e.getUserId();
-            List<Long> userIdList = new ArrayList<>();
-            userIdList.add(userId);
-            List<UserRoleNameResult> roleNameList = sysUserService.selectRoleNames(userIdList);
-            if (roleNameList.size() == 1) {
-                e.setRoleName(roleNameList.get(0).getRoleNames());
-            }
-        });
-        return page;
-    }
-
-    @Override
-    public List<TeacherSelectResult> findUserByOrgId(Long orgId) {
-        List<Long> temp = new ArrayList<>();
-        temp.add(orgId);
-        Set<Long> orgIdSet = sysOrgService.findDeepOrgIdListByOrgIdList(temp);
-        return this.baseMapper.findTeacherByOrgIds(new ArrayList<>(orgIdSet));
-    }
-
-    /**
-     * 插入老师和课程关联表
-     *
-     * @param basicCourseId
-     * @param teachIdSet
-     */
-    @Override
-    @Transactional
-    public void updateByCourseIdAndTeacherList(Long basicCourseId, Set<Long> teachIdSet) {
-        //        SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
-        //        List<TeachCourse> teachCourseList = null;
-        //        // 删除原有的全部
-        //        this.remove(new QueryWrapper<TeachCourse>().lambda().eq(TeachCourse::getBasicCourseId, basicCourseId).gt(TeachCourse::getId, 0));
-        //        // 新增
-        //        if (!CollectionUtils.isEmpty(teachIdSet)) {
-        //            teachCourseList = new ArrayList<>();
-        //            for (Long teachId : teachIdSet) {
-        //                teachCourseList.add(new TeachCourse(sysUser, basicCourseId, teachId));
-        //            }
-        //            this.saveBatch(teachCourseList);
-        //        }
-    }
-
     @Override
     @Override
     public TeachCourse findByExamIdCourseCodeAndUserId(Long examId, String courseCode, Long userId) {
     public TeachCourse findByExamIdCourseCodeAndUserId(Long examId, String courseCode, Long userId) {
         TeachCourse teachCourse = this.getOne(
         TeachCourse teachCourse = this.getOne(
@@ -548,123 +240,6 @@ public class TeachCourseServiceImpl extends ServiceImpl<TeachCourseMapper, Teach
         return result;
         return result;
     }
     }
 
 
-    @Override
-    public List<ClazzDistributedResult> findClazzDistributedStatus(Long teachCourseId, String clazzName) {
-        SysUser requestUser = (SysUser) ServletUtil.getRequestUser();
-        Long requestUserId = requestUser.getId();
-        clazzName = SystemConstant.translateSpecificSign(clazzName);
-
-        TeachCourse teachCourse = this.getById(teachCourseId);
-        if (Objects.isNull(teachCourse)) {
-            throw ExceptionResultEnum.ERROR.exception("教学课程不存在");
-        }
-
-        if (!requestUserId.equals(teachCourse.getCreateId())) {
-            throw ExceptionResultEnum.ERROR.exception("非课程创建人没有分配班级的权限");
-        }
-        Long leaderTeachCourseId = teachCourse.getId();
-        if (!teachCourse.getUserId().equals(teachCourse.getCreateId())) {
-            // 管理员权限的科组长进入旗下教师团队的教学课程进行分配了 - 特殊处理
-            leaderTeachCourseId = this.findByExamIdCourseCodeAndUserId(teachCourse.getExamId(), teachCourse.getCourseCode(), teachCourse.getCreateId()).getId();
-        }
-
-        // 所有教学班
-        QueryWrapper<TeachClazz> queryWrapper = new QueryWrapper<>();
-        queryWrapper.lambda().eq(TeachClazz::getTeachCourseId, leaderTeachCourseId);
-        if (SystemConstant.strNotNull(clazzName)) {
-            queryWrapper.lambda().like(TeachClazz::getClazzName, clazzName);
-        }
-        List<TeachClazz> teachClazzList = teachClazzService.list(queryWrapper);
-
-        // 该课程下所有教学班分配关系
-        List<TeachClazz> distributedClazzDatasource = teachClazzService.list(
-                new QueryWrapper<TeachClazz>().lambda().eq(TeachClazz::getBelongTeachCourseId, leaderTeachCourseId));
-
-        List<ClazzDistributedResult> resultList = new ArrayList<>();
-        for (TeachClazz teachClazz : teachClazzList) {
-            Long basicTeachClazzId = teachClazz.getBasicTeachClazzId();
-            List<DictionaryResult> teacherList = new ArrayList<>();
-            List<TeachClazz> list = distributedClazzDatasource.stream().filter(e -> basicTeachClazzId.equals(e.getBasicTeachClazzId())).collect(Collectors.toList());
-            if (CollectionUtils.isNotEmpty(list)) {
-                teacherList = sysUserService.listByIds(
-                        list.stream().map(TeachClazz::getUserId).collect(Collectors.toList())).stream().flatMap(e -> {
-                    DictionaryResult dictionaryResult = new DictionaryResult();
-                    dictionaryResult.setId(e.getId());
-                    dictionaryResult.setName(e.getRealName());
-                    dictionaryResult.setCode(e.getCode());
-                    return Stream.of(dictionaryResult);
-                }).collect(Collectors.toList());
-            }
-            ClazzDistributedResult clazzDistributedResult = new ClazzDistributedResult();
-            clazzDistributedResult.setClazzId(teachClazz.getBasicTeachClazzId());
-            clazzDistributedResult.setClazzName(teachClazz.getClazzName());
-            clazzDistributedResult.setTeacherList(teacherList);
-            resultList.add(clazzDistributedResult);
-        }
-        return resultList;
-    }
-
-    @Transactional
-    @Override
-    public void assignClazz(AssignClazzParam assignClazzParam, SysUser requestUser) {
-        Long requestUserId = requestUser.getId();
-        Long teachCourseId = assignClazzParam.getTeachCourseId();
-        Long teacherId = assignClazzParam.getTeacherId();
-        List<Long> basicTeachClazzIdList = assignClazzParam.getClazzIdList();
-
-        TeachCourse teachCourse = this.getById(teachCourseId);
-        if (Objects.isNull(teachCourse)) {
-            throw ExceptionResultEnum.ERROR.exception("教学班不存在");
-        }
-        Long examId = teachCourse.getExamId();
-        String courseCode = teachCourse.getCourseCode();
-        if (!teachCourse.getCreateId().equals(requestUserId)) {
-            throw ExceptionResultEnum.ERROR.exception("该用户没有分配教师班级的权限");
-        }
-        if (!teachCourse.getUserId().equals(teachCourse.getCreateId())) {
-            // 管理员权限的科组长进入旗下教师团队的教学课程进行分配了 - 特殊处理
-            teachCourse = this.findByExamIdCourseCodeAndUserId(examId, courseCode, teachCourse.getCreateId());
-            teachCourseId = teachCourse.getId();
-        }
-
-        if (teacherId.equals(requestUserId)) {
-            // 课程负责人分配自己的班级
-            // 清除之前关联的班级
-            UpdateWrapper<TeachClazz> clearUpdateWrapper = new UpdateWrapper<>();
-            clearUpdateWrapper.lambda().set(TeachClazz::getBelongTeachCourseId, teachCourseId)
-                    .set(TeachClazz::getBelongTeachCourseId, null).eq(TeachClazz::getTeachCourseId, teachCourseId);
-            teachClazzService.update(clearUpdateWrapper);
-            // 更新新关联班级
-            UpdateWrapper<TeachClazz> updateWrapper = new UpdateWrapper<>();
-            updateWrapper.lambda().set(TeachClazz::getBelongTeachCourseId, teachCourseId)
-                    .set(TeachClazz::getUpdateId, requestUserId)
-                    .set(TeachClazz::getUpdateTime, System.currentTimeMillis())
-                    .set(TeachClazz::getUserId, requestUserId).eq(TeachClazz::getTeachCourseId, teachCourseId)
-                    .in(TeachClazz::getBasicTeachClazzId, basicTeachClazzIdList);
-            teachClazzService.update(updateWrapper);
-        } else {
-            // 课程负责人分配其他老师的班级
-            TeachCourse teacherTeachCourse = this.findByExamIdCourseCodeAndUserId(examId, courseCode, teacherId);
-            Long teacherTeachCourseId = teacherTeachCourse.getId();
-            // 删除之前分配的班级数据
-            teachClazzService.remove(
-                    new QueryWrapper<TeachClazz>().lambda().eq(TeachClazz::getTeachCourseId, teacherTeachCourseId)
-                            .eq(TeachClazz::getBelongTeachCourseId, teachCourseId));
-            // 新增新班级分配数据
-            for (Long clazzId : basicTeachClazzIdList) {
-                TeachClazz teachClazz = new TeachClazz();
-                teachClazz.setSchoolId(teachCourse.getSchoolId());
-                teachClazz.setTeachCourseId(teacherTeachCourseId);
-                teachClazz.setBasicTeachClazzId(clazzId);
-                teachClazz.setUserId(teacherId);
-                teachClazz.setClazzName(basicTeachClazzService.getById(clazzId).getClazzName());
-                teachClazz.setBelongTeachCourseId(teachCourseId);
-                teachClazz.insertInfo(requestUser.getId());
-                teachClazzService.save(teachClazz);
-            }
-        }
-    }
-
     @Override
     @Override
     public List<DictionaryResult> findTeacherCourseInfo(Long userId) {
     public List<DictionaryResult> findTeacherCourseInfo(Long userId) {
         SysUser sysUser = sysUserService.getById(userId);
         SysUser sysUser = sysUserService.getById(userId);

+ 1 - 0
distributed-print-business/src/main/java/com/qmth/distributed/print/business/templete/execute/AsyncCreatePdfTemplateService.java

@@ -61,6 +61,7 @@ public class AsyncCreatePdfTemplateService extends AsyncCreateTaskTemplete {
         } finally {
         } finally {
             tbTaskPdf.setStatus(TaskStatusEnum.FINISH);
             tbTaskPdf.setStatus(TaskStatusEnum.FINISH);
             tbTaskPdf.setSummary(stringJoinerSummary.toString());
             tbTaskPdf.setSummary(stringJoinerSummary.toString());
+            tbTaskPdf.setUpdateTime(System.currentTimeMillis());
             tbTaskPdfService.updateById(tbTaskPdf);
             tbTaskPdfService.updateById(tbTaskPdf);
         }
         }
         return ResultUtil.ok(tbTaskPdf);
         return ResultUtil.ok(tbTaskPdf);

+ 0 - 34
distributed-print-business/src/main/java/com/qmth/distributed/print/business/templete/service/TaskLogicService.java

@@ -15,22 +15,6 @@ import java.util.Map;
  */
  */
 public interface TaskLogicService {
 public interface TaskLogicService {
 
 
-    /**
-     * 创建pdf前置条件
-     *
-     * @param map
-     * @return
-     */
-    Map<String, Object> createPdfPrepose(Map<String, Object> map);
-
-    /**
-     * 创建pdf逻辑
-     *
-     * @param map
-     * @return
-     */
-    Map<String, Object> executeCreatePdfLogic(Map<String, Object> map);
-
     /**
     /**
      * 处理考务数据逻辑
      * 处理考务数据逻辑
      *
      *
@@ -84,15 +68,6 @@ public interface TaskLogicService {
      */
      */
     Map<String, Object> executeImportSysUserLogic(Map<String, Object> map) throws Exception;
     Map<String, Object> executeImportSysUserLogic(Map<String, Object> map) throws Exception;
 
 
-    /**
-     * 处理导入基础班级数据
-     *
-     * @param map 数据源
-     * @return 结果
-     * @throws Exception 异常
-     */
-    Map<String, Object> executeImportBasicClazzLogic(Map<String, Object> map) throws Exception;
-
     /**
     /**
      * 处理命题统计导入数据
      * 处理命题统计导入数据
      *
      *
@@ -129,15 +104,6 @@ public interface TaskLogicService {
      */
      */
     Map<String, Object> executeImportBasicExamStudentLogic(Map<String, Object> map) throws Exception;
     Map<String, Object> executeImportBasicExamStudentLogic(Map<String, Object> map) throws Exception;
 
 
-    /**
-     * 处理阅卷数据导入
-     *
-     * @param map 数据源
-     * @return 结果
-     * @throws Exception 异常
-     */
-    Map<String, Object> executeImportMarkStudentLogic(Map<String, Object> map) throws Exception;
-
     /**
     /**
      * 保存阅卷数据
      * 保存阅卷数据
      *
      *

+ 2 - 2
distributed-print-business/src/main/java/com/qmth/distributed/print/business/templete/service/impl/PdfTaskLogicServiceImpl.java

@@ -236,11 +236,11 @@ public class PdfTaskLogicServiceImpl implements PdfTaskLogicService {
             String[] paperTypes = examDetailCourse.getPaperType().split(",");
             String[] paperTypes = examDetailCourse.getPaperType().split(",");
 
 
             //查询命题任务绑定的试卷和题卡
             //查询命题任务绑定的试卷和题卡
-            ExamTask examTask = examTaskService.getByExamIdAndCourseCodeAndPaperNumber(tbTaskPdf.getExamId(), examDetailCourse.getCourseCode(), examDetailCourse.getPaperNumber());
+            ExamTask examTask = examTaskService.getByExamIdAndCourseIdAndPaperNumber(tbTaskPdf.getExamId(), examDetailCourse.getCourseId(), examDetailCourse.getPaperNumber());
             if (examTask == null) {
             if (examTask == null) {
                 throw ExceptionResultEnum.EXAM_TASK_IS_NULL.exception();
                 throw ExceptionResultEnum.EXAM_TASK_IS_NULL.exception();
             } else if (examTask.getReview()) {
             } else if (examTask.getReview()) {
-                examTask = examTaskService.findExamTaskByFlowStatus(tbTaskPdf.getSchoolId(), tbTaskPdf.getExamId(), examDetailCourse.getCourseCode(), examDetailCourse.getPaperNumber(), FlowStatusEnum.FINISH);
+                examTask = examTaskService.findExamTaskByFlowStatus(tbTaskPdf.getSchoolId(), tbTaskPdf.getExamId(), examDetailCourse.getCourseId(), examDetailCourse.getPaperNumber(), FlowStatusEnum.FINISH);
             } else {
             } else {
                 if (!ExamStatusEnum.SUBMIT.equals(examTask.getStatus())) {
                 if (!ExamStatusEnum.SUBMIT.equals(examTask.getStatus())) {
                     throw ExceptionResultEnum.EXAM_TASK_NOT_SUBMIT.exception();
                     throw ExceptionResultEnum.EXAM_TASK_NOT_SUBMIT.exception();

+ 2 - 680
distributed-print-business/src/main/java/com/qmth/distributed/print/business/templete/service/impl/TaskLogicServiceImpl.java

@@ -168,432 +168,6 @@ public class TaskLogicServiceImpl implements TaskLogicService {
     @Resource
     @Resource
     SysRoleService sysRoleService;
     SysRoleService sysRoleService;
 
 
-    /**
-     * 创建pdf前置条件
-     *
-     * @param map
-     * @return
-     */
-    @Override
-    @Transactional
-    public Map<String, Object> createPdfPrepose(Map<String, Object> map) {
-        TBTask tbTask = (TBTask) map.get(SystemConstant.TASK);
-        SysUser sysUser = (SysUser) map.get(SystemConstant.USER);
-        Long examDetailId = tbTask.getEntityId();
-        //查询printPlan
-        ExamPrintPlan examPrintPlan = examPrintPlanService.getById(tbTask.getPrintPlanId());
-        if (Objects.isNull(examPrintPlan)) {
-            throw ExceptionResultEnum.EXAM_PRINT_IS_NULL.exception();
-        }
-        UpdateWrapper<ExamDetail> examDetailQueryWrapper = new UpdateWrapper<>();
-        if (Objects.isNull(examDetailId)) {
-            throw ExceptionResultEnum.ERROR.exception("生成pdf考场ID异常");
-        }
-        examDetailQueryWrapper.lambda().set(ExamDetail::getStatus, ExamDetailStatusEnum.CREATING)
-                .set(ExamDetail::getTaskId, tbTask.getId())
-                .eq(ExamDetail::getId, examDetailId);
-        examDetailService.update(examDetailQueryWrapper);
-
-        //所有考场都撤回,印刷任务状态改为就绪
-        examPrintPlanService.updateStatusById(tbTask.getPrintPlanId(), PrintPlanStatusEnum.READY);
-        return map;
-    }
-
-    /**
-     * 创建pdf核心逻辑
-     *
-     * @param examDetailCourseList
-     * @param examPrintPlan        印刷计划
-     * @param examDetail           考场对象
-     * @param sysUser              当前用户
-     * @param specifyPaperType     试卷类型
-     * @param basicAttachmentList  附件集合
-     * @param attachmentIds
-     * @param fileTempList
-     * @param list
-     */
-    @Transactional
-    public List<BasicAttachment> createPdfCoreLogic(List<ExamDetailCourse> examDetailCourseList,
-                                                    ExamPrintPlan examPrintPlan,
-                                                    ExamDetail examDetail,
-                                                    SysUser sysUser,
-                                                    String specifyPaperType,
-                                                    CreatePdfTypeEnum createPdfType,
-                                                    List<BasicAttachment> basicAttachmentList,
-                                                    Set<Long> attachmentIds,
-                                                    List<File> fileTempList,
-                                                    List<PdfDto>... list
-    ) throws Exception {
-        if (CreatePdfTypeEnum.SIGN.equals(createPdfType) || CreatePdfTypeEnum.PACKAGE.equals(createPdfType) || CreatePdfTypeEnum.CHECK_IN.equals(createPdfType)) {
-            return null;
-        }
-
-        for (ExamDetailCourse examDetailCourse : examDetailCourseList) {
-            List<PdfDto> studentPaperPdfList = new ArrayList<>();//所有试卷
-            List<PdfDto> studentCardPdfList = new ArrayList<>();//所有题卡
-            List<PdfDto> backupPaperPdfList = new ArrayList<>();//备份试卷
-            List<PdfDto> backupCardPdfList = new ArrayList<>();//备份题卡
-
-
-            String printContent = examPrintPlan.getPrintContent();
-            if (StringUtils.isBlank(printContent)) {
-                return null;
-            }
-            //查询命题任务绑定的试卷和题卡
-            ExamTask examTask = examTaskService.getByExamIdAndCourseCodeAndPaperNumber(examDetail.getExamId(), examDetailCourse.getCourseCode(), examDetailCourse.getPaperNumber());
-            if (examTask == null) {
-                throw ExceptionResultEnum.EXAM_TASK_IS_NULL.exception();
-            } else if (examTask.getReview()) {
-                examTask = examTaskService.findExamTaskByFlowStatus(sysUser.getSchoolId(), examDetail.getExamId(), examDetailCourse.getCourseCode(), examDetailCourse.getPaperNumber(), FlowStatusEnum.FINISH);
-            } else {
-                if (!ExamStatusEnum.SUBMIT.equals(examTask.getStatus())) {
-                    throw ExceptionResultEnum.EXAM_TASK_NOT_SUBMIT.exception();
-                } else if (!examTask.getEnable()) {
-                    throw ExceptionResultEnum.EXAM_TASK_ENABLE.exception();
-                }
-            }
-            ExamTaskDetail examTaskDetail = examTaskDetailService.getByExamTaskId(examTask.getId());
-
-            JSONObject jsonObject = new JSONObject();
-            JSONArray jsonArray = new JSONArray();
-            JSONArray stuJsonArray = new JSONArray();
-            Map<String, ExamCard> examCardMap = new HashMap<>();
-            List<PaperInfoVo> paperInfoVoList = ExamTaskUtil.parsePaperAttachmentPath(examTaskDetail.getPaperAttachmentIds());
-            ExamCard examCard;
-            for (PaperInfoVo paperInfoVo : paperInfoVoList) {
-                Long cardId = Long.valueOf(paperInfoVo.getCardId());
-                if (Objects.nonNull(cardId)) {
-                    examCard = examCardService.getById(cardId);
-                    if (Objects.isNull(examCard)) {
-                        throw ExceptionResultEnum.EXAM_CARD_IS_NULL.exception();
-                    }
-                    examCardMap.put(paperInfoVo.getName(), examCard);
-                }
-            }
-
-            //查询题卡规则
-            BasicCardRule basicCardRule = basicCardRuleService.getById(examTask.getCardRuleId());
-
-            //试卷编号本考场使用卷型key
-            String key = getPaperTypeKey(examDetail.getExamId(), examDetailCourse.getPaperNumber(), examDetail.getExamStartTime(), examDetail.getExamEndTime());
-            //抽取卷型
-            String paperType = createPdfUtil.getPaperType(examPrintPlan.getDrawRule(), examTaskDetail, key, specifyPaperType);
-            //查询考生
-            List<ExamStudent> examStudentList = examStudentService.listByExamDetailCourseId(examDetailCourse.getId());
-
-            List<String> paperTypes = Arrays.stream(paperType.split(",")).sorted(Comparator.comparing(String::valueOf)).collect(Collectors.toList());
-            // 计算备份数量,默认最小为1份。
-            int backupCount = SystemConstant.calcBackupCount(examDetail.getBackupCount(), examDetail.getTotalSubjects(), 1);
-
-            // 当前关联试卷类型
-            List<String> relatePaperTypes = new ArrayList<>();
-            // 考生实际关联试卷类型
-            if (!CollectionUtils.isEmpty(examStudentList)) {
-                AtomicInteger atomicInteger = new AtomicInteger(0);
-                for (ExamStudent t : examStudentList) {
-                    int i1 = atomicInteger.getAndIncrement();
-                    int mod = i1 % examTaskDetail.getDrawCount();
-                    t.setPaperType(paperTypes.get(mod));
-                    if (!relatePaperTypes.contains(t.getPaperType())) {
-                        relatePaperTypes.add(t.getPaperType());
-                    }
-                }
-            } else {
-                relatePaperTypes.addAll(paperTypes);
-            }
-
-            examTaskDetail.setRelatePaperType(String.join(",", relatePaperTypes));
-            examDetailCourse.setPaperType(String.join(",", relatePaperTypes));
-
-            // 试卷数据组装
-            if ((CreatePdfTypeEnum.ALL.equals(createPdfType) || CreatePdfTypeEnum.PAPER.equals(createPdfType)) && printContent.contains("PAPER")) {
-                List<PaperPdfDto> paperPdfDto = createPdfUtil.getPaperPdfFile(examDetailCourse.getPaperType(), examTaskDetail, fileTempList);
-
-                //获取试卷pdf
-                PdfDto pdfDto = createPdfUtil.getPaperPdf(paperPdfDto, backupCount, backupPaperPdfList);
-                if (Objects.nonNull(pdfDto)) {
-                    examDetailCourse.setPaperPagesA3(pdfDto.getPageCount());
-                } else {
-                    examDetailCourse.setPaperPagesA3(examDetailCourse.getPaperPagesA3());
-                }
-                // 备用试卷
-                list[0].addAll(backupPaperPdfList);
-
-                if (examStudentList != null && examStudentList.size() > 0) {
-                    for (ExamStudent t : examStudentList) {
-                        if (Objects.nonNull(pdfDto)) {
-                            String[] waterMarkNames = {t.getStudentName(), t.getTicketNumber()};
-                            createPdfUtil.getExamStudentPaperPdf(t.getPaperType(), paperPdfDto, studentPaperPdfList, waterMarkNames);
-                        }
-                    }
-                } else if (examDetail.getTotalSubjects() != null) {
-                    AtomicInteger atomicInteger = new AtomicInteger(0);
-                    int i = 0;
-                    while (i < examDetail.getTotalSubjects()) {
-                        int seq = atomicInteger.getAndIncrement();
-                        int mod = seq % examTaskDetail.getDrawCount();
-                        if (Objects.nonNull(pdfDto)) {
-                            createPdfUtil.getExamStudentPaperPdf(paperTypes.get(mod), paperPdfDto, studentPaperPdfList, null);
-                        }
-                        i++;
-                    }
-                } else {
-                    throw ExceptionResultEnum.ERROR.exception("数据错误:未找到考生或者印刷数量");
-                }
-                // 考生试卷
-                list[2].addAll(studentPaperPdfList);
-            }
-
-            // 题卡数据组装
-            basicAttachmentList = Objects.isNull(basicAttachmentList) ? new ArrayList<>() : basicAttachmentList;
-            if ((CreatePdfTypeEnum.ALL.equals(createPdfType) || CreatePdfTypeEnum.CARD_A3.equals(createPdfType)) && printContent.contains("CARD")) {
-                Map<String, ExamCard> examCardDetailMap = new HashMap<>();
-                Map<String, String> cardContentMap = new HashMap<>();
-                for (String s : examDetailCourse.getPaperType().split(",")) {
-                    examCard = examCardMap.get(s);
-                    Optional.ofNullable(examCard).orElseThrow(() -> ExceptionResultEnum.ERROR.exception("卷型" + s + "题卡不存在"));
-
-                    createPdfUtil.getCardAttachmentId(examCard, attachmentIds);
-
-                    //把模板页面上的 ${} 替换成实际内容
-                    String cardContent = createPdfUtil.resetHtmlTemplateBar(examCard.getHtmlContent());
-
-                    for (int i = 1; i <= backupCount; i++) {
-                        BasicAttachment basicAttachment = createPdfUtil.cardHtml(String.format(SystemConstant.DATE_TIME_FORMAT, i), cardContent, examDetail, examDetailCourse, s, jsonArray, sysUser.getId(), backupCardPdfList, basicCardRule, fileTempList);
-                        examDetailCourse.setCardPagesA3(basicAttachment.getPages());
-                        basicAttachmentList.add(basicAttachment);
-                    }
-                    examCardDetailMap.put(s, examCard);
-                    cardContentMap.put(s, cardContent);
-                }
-                // 备用题卡
-                list[1].addAll(backupCardPdfList);
-
-                if (examStudentList != null && examStudentList.size() > 0) {
-                    for (ExamStudent t : examStudentList) {
-                        // 用带条码的模板
-                        basicAttachmentList.add(createPdfUtil.examStudentHtml(examCardDetailMap.get(t.getPaperType()).getHtmlContent(), t, paperType, examDetail, examDetailCourse, sysUser.getId(), studentCardPdfList, basicCardRule, fileTempList));
-                    }
-                } else if (examDetail.getTotalSubjects() != null) {
-                    AtomicInteger atomicInteger = new AtomicInteger(0);
-                    Map<String, BasicAttachment> stringBasicAttachmentMap = new HashMap<>();
-                    int i = 0;
-                    while (i < examDetail.getTotalSubjects()) {
-                        int seq = atomicInteger.getAndIncrement();
-                        int mod = seq % examTaskDetail.getDrawCount();
-                        String tempPaperType = paperTypes.get(mod);
-                        BasicAttachment basicAttachment = createPdfUtil.examStudentHtml(cardContentMap.get(tempPaperType), null, tempPaperType, examDetail, examDetailCourse, sysUser.getId(), studentCardPdfList, basicCardRule, fileTempList);
-
-                        if (!stringBasicAttachmentMap.containsKey(tempPaperType)) {
-                            stringBasicAttachmentMap.put(tempPaperType, basicAttachment);
-                            JSONObject object = new JSONObject();
-                            object.put("name", tempPaperType);
-                            object.put("attachmentId", basicAttachment.getId());
-                            stuJsonArray.add(object);
-
-                            // 用不带条码的模板
-                            basicAttachmentList.add(basicAttachment);
-                        }
-                        i++;
-                    }
-                } else {
-                    throw ExceptionResultEnum.ERROR.exception("数据错误:未找到考生或者印刷数量");
-                }
-                // 题卡
-                list[3].addAll(studentCardPdfList);
-                jsonObject.put("card", jsonArray);
-                examDetailCourse.setAttachmentId(jsonObject.toJSONString());
-                examDetailCourse.setCommonAttachmentId(stuJsonArray.toJSONString());
-            }
-            examStudentService.saveOrUpdateBatch(examStudentList);
-
-            examDetailCourse.setAttachmentId(jsonObject.toJSONString());
-            examTaskDetailService.saveOrUpdate(examTaskDetail);
-
-        }
-        examDetailCourseService.saveOrUpdateBatch(examDetailCourseList);
-
-        return basicAttachmentList;
-    }
-
-    private static String getPaperTypeKey(Long examId, String paperNumber, Long examStartTime, Long examEndTime) {
-        //试卷编号本考场使用卷型key
-        StringJoiner stringJoiner = new StringJoiner("_");
-        stringJoiner.add(String.valueOf(examId)).add(paperNumber).add(String.valueOf(examStartTime)).add(String.valueOf(examEndTime));
-        return stringJoiner.toString();
-    }
-
-    /**
-     * 创建A4文件
-     *
-     * @param createPdfType
-     * @param examPrintPlan
-     * @param examDetail
-     * @param basicSchool
-     * @param examDetailCourseList
-     * @param fileTempList
-     * @param list
-     * @throws IOException
-     * @throws DocumentException
-     */
-    @Transactional
-    public void createA4File(CreatePdfTypeEnum createPdfType, ExamPrintPlan examPrintPlan, ExamDetail examDetail, BasicSchool basicSchool, List<ExamDetailCourse> examDetailCourseList, List<File> fileTempList, List<PdfDto>... list) throws Exception {
-        // 印品
-        String ordinaryContent = examPrintPlan.getOrdinaryContent();
-        if ((CreatePdfTypeEnum.ALL.equals(createPdfType) || CreatePdfTypeEnum.CHECK_IN.equals(createPdfType)) && StringUtils.isNotBlank(ordinaryContent)) {
-            //获取普通印品
-            JSONArray jsonArrayOrdinary = JSONArray.parseArray(ordinaryContent);
-            for (int i = 0; i < jsonArrayOrdinary.size(); i++) {
-                JSONObject jsonObjectOrdinary = jsonArrayOrdinary.getJSONObject(i);
-                if (Objects.nonNull(jsonObjectOrdinary.get("attachmentId")) && !Objects.equals("", jsonObjectOrdinary.get("attachmentId"))) {
-                    Long attachmentId = Long.parseLong((String) jsonObjectOrdinary.get("attachmentId"));
-                    BasicAttachment basicAttachment = basicAttachmentService.getById(attachmentId);
-                    createPdfUtil.createCheckIn(examDetail, basicAttachment, list[0], (Integer) jsonObjectOrdinary.get("backupCount"), fileTempList);
-                }
-            }
-        }
-        BasicExam basicExam = basicExamService.getById(examPrintPlan.getExamId());
-        if (basicExam.getCategory().equals(ExamCategoryEnum.FORMAL)) {
-            String variableContent = examPrintPlan.getVariableContent();
-            if (StringUtils.isNotBlank(variableContent)) {
-                List<Long> examDetailCourseListIds = examDetailCourseList.stream().map(BaseEntity::getId).collect(Collectors.toList());
-                List<ExamStudentCourseDto> examStudentCourseDtoList = examStudentService.queryBySchoolIdAndExamDetailCourseIds(basicSchool.getId(), examDetailCourseListIds);
-                //获取变量印品
-                JSONArray jsonArrayVariable = JSONArray.parseArray(variableContent);
-                for (int i = 0; i < jsonArrayVariable.size(); i++) {
-                    JSONObject jsonObjectVariable = jsonArrayVariable.getJSONObject(i);
-                    String type = (String) jsonObjectVariable.get("type");
-                    if (Objects.nonNull(jsonObjectVariable.get("templateId")) && !Objects.equals("", jsonObjectVariable.get("templateId"))) {
-                        Long templateId = Long.parseLong((String) jsonObjectVariable.get("templateId"));
-                        if ((CreatePdfTypeEnum.ALL.equals(createPdfType) || CreatePdfTypeEnum.SIGN.equals(createPdfType)) && Objects.nonNull(type) && Objects.equals(type.toUpperCase(), "SIGN")) {//签到表
-                            createPdfUtil.createSignBook(templateId, basicSchool.getName(), examDetail, examStudentCourseDtoList, list[1], (Integer) jsonObjectVariable.get("backupCount"), examDetailCourseList, fileTempList);
-                        } else if ((CreatePdfTypeEnum.ALL.equals(createPdfType) || CreatePdfTypeEnum.PACKAGE.equals(createPdfType)) && Objects.nonNull(type) && Objects.equals(type.toUpperCase(), "PACKAGE")) {//卷袋贴
-                            Integer backupCount = SystemConstant.calcBackupCount(examDetail.getBackupCount(), examDetail.getTotalSubjects(), 1);
-                            createPdfUtil.createPaperPackage(templateId, basicSchool.getName(), examDetail, examStudentCourseDtoList, list[1], backupCount, (Integer) jsonObjectVariable.get("backupCount"), examDetailCourseList, examPrintPlan.getExamId(), fileTempList);
-                        }
-                    }
-                }
-            }
-        }
-
-        list[1].sort((o1, o2) -> o1.getSequence() > o2.getSequence() ? 1 : -1);
-    }
-
-    /**
-     * 创建pdf逻辑
-     *
-     * @param map
-     * @return
-     */
-    @Override
-    public Map<String, Object> executeCreatePdfLogic(Map<String, Object> map) {
-        List<BasicAttachment> basicAttachmentList = null;
-        List<File> fileTempList = new ArrayList<>();
-        TBTask tbTask = (TBTask) map.get(SystemConstant.TASK);
-        SysUser sysUser = (SysUser) map.get(SystemConstant.USER);
-        Long examDetailId = tbTask.getEntityId();
-        try {
-            String specifyPaperType = Objects.nonNull(map.get("paperType")) ? (String) map.get("paperType") : null;
-            CreatePdfTypeEnum createPdfType = Objects.nonNull(map.get(SystemConstant.CREATE_PDF_TYPE)) ? CreatePdfTypeEnum.valueOf((String) map.get(SystemConstant.CREATE_PDF_TYPE)) : CreatePdfTypeEnum.ALL;
-
-            //查询printPlan
-            ExamPrintPlan examPrintPlan = examPrintPlanService.getById(tbTask.getPrintPlanId());
-
-            BasicSchool basicSchool = commonCacheService.schoolCache(examPrintPlan.getSchoolId());
-            BasicPrintConfig basicPrintConfig = basicPrintConfigService.getByExamId(examPrintPlan.getExamId());
-
-            //查询examDetail
-            Set<Long> attachmentIds = new HashSet<>();
-            ExamDetail examDetail = examDetailService.getById(examDetailId);
-            if (examDetail == null) {
-                throw ExceptionResultEnum.EXAM_DETAIL_IS_NULL.exception();
-            }
-
-            tbTask.setObjName(examDetail.getExamRoom() + SystemConstant.HYPHEN + examDetail.getExamPlace());
-            //查询examDetailCourse
-            QueryWrapper<ExamDetailCourse> examDetailCourseQueryWrapper = new QueryWrapper<>();
-            examDetailCourseQueryWrapper.lambda().eq(ExamDetailCourse::getExamDetailId, examDetail.getId());
-            List<ExamDetailCourse> examDetailCourseList = examDetailCourseService.list(examDetailCourseQueryWrapper);
-
-
-            List<PdfDto> variablePdfList = new ArrayList<>();//变量印品(签到表、卷袋贴)
-            List<PdfDto> ordinaryPdfList = new ArrayList<>();//普通印品(登记表)
-            List<PdfDto> paperPdfList = new ArrayList<>();//所有试卷
-            List<PdfDto> examStudentPdfList = new ArrayList<>();//所有题卡
-            List<PdfDto> backupPaperPdfList = new ArrayList<>();//备份试卷
-            List<PdfDto> backupCardPdfList = new ArrayList<>();//备份题卡
-
-            //创建pdf核心逻辑
-            basicAttachmentList = createPdfCoreLogic(examDetailCourseList,
-                    examPrintPlan,
-                    examDetail,
-                    sysUser,
-                    specifyPaperType,
-                    createPdfType,
-                    basicAttachmentList,
-                    attachmentIds,
-                    fileTempList,
-                    backupPaperPdfList,
-                    backupCardPdfList,
-                    paperPdfList,
-                    examStudentPdfList);
-
-            createA4File(createPdfType, examPrintPlan, examDetail, basicSchool, examDetailCourseList, fileTempList, ordinaryPdfList, variablePdfList);
-
-            //合并A3(试卷+题卡+备用试卷+备用题卡)
-//                String dirNameA3 = createPdfUtil.mergeA3Pdf(paperPdfList, examStudentPdfList, backupPaperPdfList, backupCardPdfList);
-            //合并(试卷+备用试卷)
-            String dirNamePaper = createPdfUtil.mergeA3Pdf(fileTempList, paperPdfList, backupPaperPdfList);
-            //合并A4(签到表+卷袋贴+登记表)
-//            String dirNameA4 = createPdfUtil.mergeA4Pdf(fileTempList, variablePdfList, ordinaryPdfList);
-            //合并A3(题卡+备用题卡)
-            String dirNameCardA3 = createPdfUtil.mergeA3Pdf(fileTempList, examStudentPdfList, backupCardPdfList);
-
-            BasicAttachment attachment = createPdfUtil.mergePdfSaveDb(dirNamePaper, dirNameCardA3, tbTask, sysUser.getId(), examDetail, basicPrintConfig, fileTempList);
-            if (basicAttachmentList != null) {
-                basicAttachmentList.add(attachment);
-            }
-
-            examDetailService.updateById(examDetail);
-
-            updateExamPrintPlan(basicPrintConfig, examPrintPlan);
-            map.putIfAbsent("size", 1);
-        } catch (Exception e) {
-            log.error(SystemConstant.LOG_ERROR, e);
-            if (Objects.nonNull(dictionaryConfig.sysDomain()) && dictionaryConfig.sysDomain().isOss()) {
-                basicAttachmentService.batchDeleteAttachment(basicAttachmentList);
-            }
-            // 生成失败,状态改为新建
-            examDetailService.updateStatusById(examDetailId, ExamDetailStatusEnum.NEW);
-            if (e instanceof ApiException) {
-                ResultUtil.error((ApiException) e, ((ApiException) e).getCode(), e.getMessage());
-            } else {
-                ResultUtil.error(e.getMessage());
-            }
-        } finally {
-            if (!CollectionUtils.isEmpty(fileTempList)) {
-                for (File file : fileTempList) {
-                    file.delete();
-                }
-            }
-        }
-        return map;
-    }
-
-    /**
-     * 更新考试计划
-     *
-     * @param basicPrintConfig
-     * @param examPrintPlan
-     */
-    @Transactional
-    public void updateExamPrintPlan(BasicPrintConfig basicPrintConfig, ExamPrintPlan examPrintPlan) {
-        if (PrintMethodEnum.AUTO == basicPrintConfig.getPrintMethod()) {
-            examPrintPlan.setStatus(PrintPlanStatusEnum.PRINTING);
-            examPrintPlanService.updateById(examPrintPlan);
-        }
-    }
-
     @Transactional(rollbackFor = Exception.class)
     @Transactional(rollbackFor = Exception.class)
     @Override
     @Override
     public Map<String, Object> executeExaminationLogic(Map<String, Object> map) throws Exception {
     public Map<String, Object> executeExaminationLogic(Map<String, Object> map) throws Exception {
@@ -1047,69 +621,6 @@ public class TaskLogicServiceImpl implements TaskLogicService {
         return map;
         return map;
     }
     }
 
 
-    /**
-     * 获取附件文件
-     *
-     * @param jsonObject
-     * @param pathName
-     * @return
-     * @throws Exception
-     */
-    private File getJsonFile(JSONObject jsonObject, String pathName) throws Exception {
-        File file = new File(pathName);
-        if (!file.exists()) {
-            file.getParentFile().mkdirs();
-            file.createNewFile();
-        }
-        String attachmentType = jsonObject.getString(SystemConstant.TYPE);
-        if (Objects.nonNull(attachmentType) && !Objects.equals(attachmentType, SystemConstant.LOCAL)) {
-            file = fileStoreUtil.ossDownload(jsonObject.getString(SystemConstant.PDF_PATH), file, UploadFileEnum.PDF.getFssType());
-        } else {
-            File sourceFile = null;
-            if (dictionaryConfig.fssPrivateDomain().getConfig().startsWith(SystemConstant.START_PARENT) || dictionaryConfig.fssPublicDomain().getConfig().startsWith(SystemConstant.START_PARENT)) {
-                sourceFile = new File(dictionaryConfig.fssPrivateDomain().getConfig(), jsonObject.getString(SystemConstant.PDF_PATH));
-            } else {
-                sourceFile = new File(jsonObject.getString(SystemConstant.PDF_PATH));
-            }
-            FileUtils.copyFile(sourceFile, file);
-        }
-        return file;
-    }
-
-    /**
-     * 获取附件文件
-     *
-     * @param attachment
-     * @param pathName
-     * @return
-     * @throws Exception
-     */
-    private File getAttachmentFile(BasicAttachment attachment, String pathName) throws Exception {
-        File file = null;
-        if (Objects.nonNull(attachment) && Objects.nonNull(attachment.getPath())) {
-            file = new File(pathName);
-            if (!file.exists()) {
-                file.getParentFile().mkdirs();
-                file.createNewFile();
-            }
-            JSONObject jsonObject = JSONObject.parseObject(attachment.getPath());
-            String attachmentType = jsonObject.getString(SystemConstant.TYPE);
-            UploadFileEnum uploadFileEnum = UploadFileEnum.valueOf(jsonObject.getString(SystemConstant.UPLOAD_TYPE));
-            if (Objects.nonNull(attachmentType) && !Objects.equals(attachmentType, SystemConstant.LOCAL)) {
-                file = fileStoreUtil.ossDownload(jsonObject.getString(SystemConstant.PATH), file, uploadFileEnum.getFssType());
-            } else {
-                File sourceFile = null;
-                if (dictionaryConfig.fssPrivateDomain().getConfig().startsWith(SystemConstant.START_PARENT) || dictionaryConfig.fssPublicDomain().getConfig().startsWith(SystemConstant.START_PARENT)) {
-                    sourceFile = new File(dictionaryConfig.fssPrivateDomain().getConfig(), jsonObject.getString(SystemConstant.PATH));
-                } else {
-                    sourceFile = new File(jsonObject.getString(SystemConstant.PATH));
-                }
-                FileUtils.copyFile(sourceFile, file);
-            }
-        }
-        return file;
-    }
-
     @Override
     @Override
     @Transactional
     @Transactional
     public Map<String, Object> executeExportSampleLogic(Map<String, Object> map) throws Exception {
     public Map<String, Object> executeExportSampleLogic(Map<String, Object> map) throws Exception {
@@ -1527,45 +1038,6 @@ public class TaskLogicServiceImpl implements TaskLogicService {
         return sysUserService.executeSysUserImportLogic(finalList, map);
         return sysUserService.executeSysUserImportLogic(finalList, map);
     }
     }
 
 
-    @Transactional
-    @Override
-    public Map<String, Object> executeImportBasicClazzLogic(Map<String, Object> map) throws Exception {
-        InputStream inputStream = (InputStream) map.get("inputStream");
-        System.out.println(inputStream);
-        List<LinkedMultiValueMap<Integer, Object>> finalList = ExcelUtil.excelReader(inputStream, Lists.newArrayList(BasicClazzImportDto.class, DescribeImportDto.class), (finalExcelList, finalColumnNameList, finalExcelErrorList) -> {
-            List<ExcelError> excelErrorTemp = new ArrayList<>();
-            Map<String, String> checkNameMap = new HashMap<>();
-            for (int i = 0; i < finalExcelList.size(); i++) {
-                LinkedMultiValueMap<Integer, Object> excelMap = finalExcelList.get(i);
-                List<Object> basicClazzImportDtoList = excelMap.get(i);
-                assert basicClazzImportDtoList != null;
-                if (basicClazzImportDtoList.get(0) instanceof DescribeImportDto) {
-                    continue;
-                }
-                for (int y = 0; y < Objects.requireNonNull(basicClazzImportDtoList).size(); y++) {
-                    BasicClazzImportDto basicClazzImportDto = (BasicClazzImportDto) basicClazzImportDtoList.get(y);
-                    String clazzName = basicClazzImportDto.getClazzName();
-
-                    // 检验excel中
-                    // 检验学号
-                    if (checkNameMap.containsKey(clazzName)) {
-                        throw ExceptionResultEnum.ERROR.exception("导入的excel中包含在重复的班级名称[" + clazzName + "]");
-                    } else {
-                        checkNameMap.put(clazzName, clazzName);
-                    }
-
-                    excelErrorTemp.addAll(ExcelUtil.checkExcelField(basicClazzImportDto, y, i));
-                }
-            }
-            if (excelErrorTemp.size() > 0) {
-                throw ExceptionResultEnum.ERROR.exception(JSONObject.toJSONString(excelErrorTemp));
-            }
-            return finalExcelList;
-        }, 2);
-        return basicClazzService.executeBasicClazzImportLogic(finalList, map);
-    }
-
-
     @Override
     @Override
     @Transactional
     @Transactional
     public Map<String, Object> executeImportStatisticsLogic(Map<String, Object> map) throws Exception {
     public Map<String, Object> executeImportStatisticsLogic(Map<String, Object> map) throws Exception {
@@ -2037,7 +1509,7 @@ public class TaskLogicServiceImpl implements TaskLogicService {
             basicExamStudentParam.setId(id);
             basicExamStudentParam.setId(id);
             basicExamStudentParam.setSemesterId(semesterId);
             basicExamStudentParam.setSemesterId(semesterId);
             basicExamStudentParam.setExamId(examId);
             basicExamStudentParam.setExamId(examId);
-            basicExamStudentParam.setCourseCode(courseCode);
+//            basicExamStudentParam.setCourseId(courseCode);
             basicExamStudentParam.setStudentName(studentName);
             basicExamStudentParam.setStudentName(studentName);
             basicExamStudentParam.setStudentCode(studentCode);
             basicExamStudentParam.setStudentCode(studentCode);
             basicExamStudentParam.setCollege(college);
             basicExamStudentParam.setCollege(college);
@@ -2085,119 +1557,6 @@ public class TaskLogicServiceImpl implements TaskLogicService {
         return map;
         return map;
     }
     }
 
 
-    @Transactional
-    @Override
-    public Map<String, Object> executeImportMarkStudentLogic(Map<String, Object> map) throws Exception {
-        InputStream inputStream = (InputStream) map.get("inputStream");
-        // 检验课程编号和课程名称对应
-        Map<String, String> courseCodeNameCheckMap = new HashMap<>();
-        // 检验学号在课程下唯一
-        Map<String, List<String>> checkStudentCodeMap = new HashMap<>();
-        // 检验同一个课程、试卷下的班级信息要么全填要么全不填
-        Map<String, Boolean> checkClazzMap = new HashMap<>();
-
-        List<MarkStudentImportDto> datasource = new ArrayList<>();
-        AtomicInteger successInteger = new AtomicInteger(0);
-        AtomicInteger exceptionInteger = new AtomicInteger(0);
-
-        ExcelUtil.excelReader(inputStream, Lists.newArrayList(MarkStudentImportDto.class),
-                (finalExcelList, finalColumnNameList, finalExcelErrorList) -> {
-
-                    for (int i = 0; i < finalExcelList.size(); i++) {
-                        LinkedMultiValueMap<Integer, Object> excelMap = finalExcelList.get(i);
-                        List<Object> MarkStudentImportDtoList = excelMap.get(i);
-                        // 无数据,跳过
-                        if (CollectionUtils.isEmpty(MarkStudentImportDtoList)) {
-                            continue;
-                        }
-                        for (int y = 0; y < Objects.requireNonNull(MarkStudentImportDtoList).size(); y++) {
-                            List<String> errorMsgList = new ArrayList<>();
-                            // 行索引
-                            MarkStudentImportDto markStudentImportDto = (MarkStudentImportDto) MarkStudentImportDtoList.get(
-                                    y);
-                            String courseName = StringUtils.trimToNull(markStudentImportDto.getCourseName());
-                            String courseCode = StringUtils.trimToNull(markStudentImportDto.getCourseCode());
-                            String paperNumber = StringUtils.trimToNull(markStudentImportDto.getPaperNumber());
-                            String studentName = StringUtils.trimToNull(markStudentImportDto.getStudentName());
-                            String studentCode = StringUtils.trimToNull(markStudentImportDto.getStudentCode());
-                            String college = StringUtils.trimToNull(markStudentImportDto.getCollege());
-                            String major = StringUtils.trimToNull(markStudentImportDto.getMajor());
-                            String clazz = StringUtils.trimToNull(markStudentImportDto.getClazz());
-                            String examDate = StringUtils.trimToNull(markStudentImportDto.getExamDate());
-                            String examTime = StringUtils.trimToNull(markStudentImportDto.getExamTime());
-                            String examPlace = StringUtils.trimToNull(markStudentImportDto.getExamPlace());
-                            String examRoom = StringUtils.trimToNull(markStudentImportDto.getExamRoom());
-
-                            // 本行全部列为空,跳过
-                            if (StringUtils.isAllBlank(courseName, courseCode, paperNumber, studentName, studentCode,
-                                    college, major, clazz, examDate, examTime, examDate, examPlace, examRoom)) {
-                                continue;
-                            }
-                            // 课程编号和课程名称一致
-                            if (courseCodeNameCheckMap.containsKey(courseCode)) {
-                                if (!courseCodeNameCheckMap.get(courseCode).equals(courseName)) {
-                                    errorMsgList.add("同一个课程编号对应了多个课程名称");
-                                }
-                            } else {
-                                courseCodeNameCheckMap.put(courseCode, courseName);
-                            }
-
-                            // 学号在课程下唯一
-                            if (checkStudentCodeMap.containsKey(courseCode)) {
-                                List<String> studentCodeList = checkStudentCodeMap.get(courseCode);
-                                if (studentCodeList.contains(studentCode)) {
-                                    errorMsgList.add("学号重复(学号需要在课程下唯一)");
-                                } else {
-                                    studentCodeList.add(studentCode);
-                                }
-                            } else {
-                                List<String> studentCodeList = new ArrayList<>();
-                                studentCodeList.add(studentCode);
-                                checkStudentCodeMap.put(courseCode, studentCodeList);
-                            }
-
-                            // 同一个课程、试卷下的班级信息要么全填要么全不填
-                            String clazzCheckKey = courseCode + SystemConstant.HYPHEN + paperNumber;
-                            if (checkClazzMap.containsKey(clazzCheckKey)) {
-                                Boolean hasData = checkClazzMap.get(clazzCheckKey);
-                                if (SystemConstant.strNotNull(clazz) != hasData) {
-                                    errorMsgList.add("班级信息异常(同一个课程、试卷下的班级信息要么全填要么全不填)");
-                                }
-                            } else {
-                                checkClazzMap.put(clazzCheckKey, SystemConstant.strNotNull(clazz));
-                            }
-
-                            try {
-                                if (SystemConstant.strNotNull(examDate) && SystemConstant.strNotNull(examTime)) {
-                                    ConvertUtil.analyzeStartAndEndTime(examDate, examTime);
-                                }
-                            } catch (Exception e) {
-                                errorMsgList.add(e.getMessage());
-                            }
-
-                            if (CollectionUtils.isNotEmpty(errorMsgList)) {
-                                markStudentImportDto.setErrorMsg(String.join(";", errorMsgList));
-                                exceptionInteger.getAndIncrement();
-                            } else {
-                                successInteger.getAndIncrement();
-                            }
-                            datasource.add(markStudentImportDto);
-                        }
-                    }
-
-                    if (datasource.stream().anyMatch(e -> SystemConstant.strNotNull(e.getErrorMsg()))) {
-                        map.put(SystemConstant.ERROR_DATA_LIST, datasource);
-                    } else {
-                        map.put(SystemConstant.DATASOURCE, datasource);
-                    }
-                    map.put(SystemConstant.DATA_COUNT, datasource.size());
-                    map.put(SystemConstant.SUCCESS_DATA_COUNT, successInteger.get());
-                    map.put(SystemConstant.ERROR_DATA_COUNT, exceptionInteger.get());
-                    return finalExcelList;
-                }, 2);
-        return map;
-    }
-
     @Transactional
     @Transactional
     @Override
     @Override
     public void saveMarkStudent(Long examId, List<BasicExamStudent> basicExamStudentList) {
     public void saveMarkStudent(Long examId, List<BasicExamStudent> basicExamStudentList) {
@@ -2211,7 +1570,7 @@ public class TaskLogicServiceImpl implements TaskLogicService {
             MarkPaper markPaper = markPaperService.getByExamIdAndPaperNumber(examId, entry.getKey());
             MarkPaper markPaper = markPaperService.getByExamIdAndPaperNumber(examId, entry.getKey());
             if (markPaper == null) {
             if (markPaper == null) {
                 BasicCourse basicCourse = basicCourseService.getByCode(basicExamStudent.getCourseCode());
                 BasicCourse basicCourse = basicCourseService.getByCode(basicExamStudent.getCourseCode());
-                markPaper = new MarkPaper(examId, basicExamStudent.getCourseCode(), basicCourse.getName(), entry.getKey(), String.valueOf(System.currentTimeMillis()), requestUserId, SystemConstant.DEFAULT_PAPER_TYPE_A);
+                markPaper = new MarkPaper(examId, basicExamStudent.getCourseId(), entry.getKey(), String.valueOf(System.currentTimeMillis()), requestUserId, SystemConstant.DEFAULT_PAPER_TYPE_A);
                 markPaperService.save(markPaper);
                 markPaperService.save(markPaper);
             }
             }
             Set<String> secretNumberSet = new HashSet<>();
             Set<String> secretNumberSet = new HashSet<>();
@@ -2747,43 +2106,6 @@ public class TaskLogicServiceImpl implements TaskLogicService {
         return basicCourse;
         return basicCourse;
     }
     }
 
 
-    /**
-     * 验证用户是否存在
-     *
-     * @param userMap
-     * @param key
-     * @param schoolId
-     * @param excelErrorTemp
-     * @param row
-     * @param sheet
-     * @param cloumnName
-     * @return
-     */
-    private SysUser validSysUserExists(Map<String, SysUser> userMap,
-                                       String key,
-                                       Long schoolId,
-                                       List<ExcelError> excelErrorTemp,
-                                       int row,
-                                       int sheet,
-                                       String cloumnName) {
-        SysUser sysUser = null;
-        if (!userMap.containsKey(key)) {//不存在查询
-            QueryWrapper<SysUser> sysUserQueryWrapper = new QueryWrapper<>();
-            sysUserQueryWrapper.lambda().eq(SysUser::getSchoolId, schoolId)
-                    .eq(SysUser::getRealName, key)
-                    .eq(SysUser::getEnable, true);
-            sysUser = sysUserService.getOne(sysUserQueryWrapper);
-        } else {
-            sysUser = userMap.get(key);
-        }
-        if (Objects.isNull(sysUser)) {
-            excelErrorTemp.add(new ExcelError(row, "excel第" + sheet + "个sheet第" + row + "行[" + cloumnName + "]不存在"));
-        } else {
-            SysUser finalSysUser = sysUser;
-            userMap.computeIfAbsent(key, v -> finalSysUser);
-        }
-        return sysUser;
-    }
 
 
     /**
     /**
      * 验证班级是否存在
      * 验证班级是否存在

+ 4 - 4
distributed-print-business/src/main/resources/mapper/BasicExamStudentMapper.xml

@@ -9,7 +9,7 @@
             bes.semester_id AS semesterId,
             bes.semester_id AS semesterId,
             bes.exam_id AS examId,
             bes.exam_id AS examId,
             bc.name AS courseName,
             bc.name AS courseName,
-            bes.course_code AS courseCode,
+            bc.code AS courseCode,
             bes.student_name AS studentName,
             bes.student_name AS studentName,
             bes.student_code AS studentCode,
             bes.student_code AS studentCode,
             bes.college,
             bes.college,
@@ -25,7 +25,7 @@
         FROM
         FROM
             basic_exam_student bes
             basic_exam_student bes
                 LEFT JOIN
                 LEFT JOIN
-            basic_course bc ON bes.course_code = bc.code AND bes.school_id = bc.school_id
+            basic_course bc ON bes.course_id = bc.id
                 LEFT JOIN
                 LEFT JOIN
             basic_teach_clazz tbc ON bes.clazz_id = tbc.id
             basic_teach_clazz tbc ON bes.clazz_id = tbc.id
                 LEFT JOIN
                 LEFT JOIN
@@ -42,8 +42,8 @@
             <if test="examId != null">
             <if test="examId != null">
                 AND bes.exam_id = #{examId}
                 AND bes.exam_id = #{examId}
             </if>
             </if>
-            <if test="courseCode != null and courseCode != ''">
-                AND bes.course_code LIKE CONCAT('%',#{courseCode},'%')
+            <if test="courseId != null">
+                AND bes.course_id = #{courseId}
             </if>
             </if>
             <if test="teacher != null and teacher != ''">
             <if test="teacher != null and teacher != ''">
                 AND (teacher.real_name LIKE CONCAT('%',#{teacher},'%') OR teacher.code LIKE CONCAT('%',#{teacher},'%'))
                 AND (teacher.real_name LIKE CONCAT('%',#{teacher},'%') OR teacher.code LIKE CONCAT('%',#{teacher},'%'))

+ 273 - 265
distributed-print-business/src/main/resources/mapper/ConditionMapper.xml

@@ -3,8 +3,9 @@
 <mapper namespace="com.qmth.distributed.print.business.mapper.ConditionMapper">
 <mapper namespace="com.qmth.distributed.print.business.mapper.ConditionMapper">
     <select id="listCourse" resultType="com.qmth.teachcloud.common.entity.BasicCourse">
     <select id="listCourse" resultType="com.qmth.teachcloud.common.entity.BasicCourse">
         SELECT
         SELECT
-            bc.code code,
-            bc.name name
+            bc.id,
+            bc.code,
+            bc.name
         FROM
         FROM
             basic_course bc
             basic_course bc
         <where>
         <where>
@@ -15,8 +16,7 @@
                             LEFT JOIN
                             LEFT JOIN
                         basic_exam be ON et.exam_id = be.id
                         basic_exam be ON et.exam_id = be.id
                     <where>
                     <where>
-                        bc.school_id = et.school_id
-                      AND bc.code = et.course_code
+                        bc.id = et.course_id
                       <if test="semesterId != null">
                       <if test="semesterId != null">
                           AND be.semester_id = #{semesterId}
                           AND be.semester_id = #{semesterId}
                       </if>
                       </if>
@@ -28,7 +28,7 @@
                                 AND et.create_id = #{dpr.requestUserId}
                                 AND et.create_id = #{dpr.requestUserId}
                             </if>
                             </if>
                             <if test="dpr.courseUserId != null">
                             <if test="dpr.courseUserId != null">
-                                AND EXISTS( SELECT 1 FROM (select course_code from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_code = et.course_code)
+                                AND EXISTS( SELECT 1 FROM (select course_id from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_id = et.course_id)
                             </if>
                             </if>
                             <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
                             <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
                                 AND et.org_id IN
                                 AND et.org_id IN
@@ -68,18 +68,18 @@
                 left join
                 left join
             exam_task et on edc.school_id = et.school_id
             exam_task et on edc.school_id = et.school_id
                     and a.exam_id = et.exam_id
                     and a.exam_id = et.exam_id
-                    and edc.course_code = et.course_code
+                    and edc.course_id = et.course_id
                     and edc.paper_number = et.paper_number
                     and edc.paper_number = et.paper_number
         <where>
         <where>
-            <if test="courseCode != null and courseCode != ''">
-                AND edc.course_code = #{courseCode}
+            <if test="courseId != null">
+                AND edc.course_id = #{courseId}
             </if>
             </if>
             <if test="dpr != null">
             <if test="dpr != null">
                 <if test="dpr.requestUserId != null">
                 <if test="dpr.requestUserId != null">
                     AND et.create_id = #{dpr.requestUserId}
                     AND et.create_id = #{dpr.requestUserId}
                 </if>
                 </if>
                 <if test="dpr.courseUserId != null">
                 <if test="dpr.courseUserId != null">
-                    AND EXISTS( SELECT 1 FROM (select course_code from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_code = et.course_code)
+                    AND EXISTS( SELECT 1 FROM (select course_id from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_id = et.course_id)
                 </if>
                 </if>
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
                     AND et.org_id IN
                     AND et.org_id IN
@@ -93,19 +93,24 @@
     </select>
     </select>
     <select id="listCourseForApply" resultType="com.qmth.teachcloud.common.entity.BasicCourse">
     <select id="listCourseForApply" resultType="com.qmth.teachcloud.common.entity.BasicCourse">
         SELECT
         SELECT
-            distinct et.course_code code,
-            et.course_name name
-        FROM
-            exam_task et
-        <where>
-            et.enable = true
-            <if test="examId != null">
-                and et.exam_id = #{examId}
-            </if>
-            <if test="userId != null">
-                and et.user_id = #{userId}
-            </if>
-        </where>
+            bc.id,
+            bc.code,
+            bc.name
+        from basic_course bc
+            where
+                exists (
+                    select 1 FROM exam_task et
+                <where>
+                    bc.id = et.course_id
+                    and et.enable = true
+                    <if test="examId != null">
+                        and et.exam_id = #{examId}
+                    </if>
+                    <if test="userId != null">
+                        and et.user_id = #{userId}
+                    </if>
+                </where>
+                )
     </select>
     </select>
     <select id="listCourseForAudit" resultType="com.qmth.teachcloud.common.entity.BasicCourse">
     <select id="listCourseForAudit" resultType="com.qmth.teachcloud.common.entity.BasicCourse">
         SELECT
         SELECT
@@ -121,8 +126,7 @@
                     LEFT JOIN
                     LEFT JOIN
                 basic_exam be ON et.exam_id = be.id
                 basic_exam be ON et.exam_id = be.id
             <where>
             <where>
-                AND bc.school_id = et.school_id
-                AND bc.code = et.course_code
+                AND bc.id = et.course_id
                 <if test="semesterId != null">
                 <if test="semesterId != null">
                     AND be.semester_id = #{semesterId}
                     AND be.semester_id = #{semesterId}
                 </if>
                 </if>
@@ -146,8 +150,8 @@
             <if test="examId != null">
             <if test="examId != null">
                 and et.exam_id = #{examId}
                 and et.exam_id = #{examId}
             </if>
             </if>
-            <if test="courseCode != null and courseCode != ''">
-                and et.course_code = #{courseCode}
+            <if test="courseId != null">
+                and et.course_id = #{courseId}
             </if>
             </if>
             <if test="userId != null">
             <if test="userId != null">
                 and et.user_id = #{userId}
                 and et.user_id = #{userId}
@@ -167,8 +171,8 @@
                 AND be.semester_id = #{semesterId}
                 AND be.semester_id = #{semesterId}
             </if>
             </if>
                 AND et.exam_id = #{examId}
                 AND et.exam_id = #{examId}
-            <if test="courseCode != null and courseCode != ''">
-                AND et.course_code = #{courseCode}
+            <if test="courseId != null">
+                AND et.course_id = #{courseId}
             </if>
             </if>
         </where>
         </where>
         order by et.paper_number
         order by et.paper_number
@@ -198,14 +202,19 @@
         </where>
         </where>
     </select>
     </select>
     <select id="listCourseForScore" resultType="com.qmth.teachcloud.common.entity.BasicCourse">
     <select id="listCourseForScore" resultType="com.qmth.teachcloud.common.entity.BasicCourse">
-        SELECT DISTINCT
-            mp.course_code code, mp.course_name name
+        SELECT bc.id,
+        bc.code,
+        bc.name
+        from basic_course bc
+        where
+        exists (select 1
         FROM
         FROM
-            mark_paper mp
-                left join sys_user su ON mp.user_id = su.id
-                left join basic_exam be ON mp.exam_id = be.id
+        mark_paper mp
+        left join sys_user su ON mp.user_id = su.id
+        left join basic_exam be ON mp.exam_id = be.id
         <where>
         <where>
-                and mp.status = #{status}
+            bc.id = mp.course_id
+            and mp.status = #{status}
             <if test="semesterId != null">
             <if test="semesterId != null">
                 AND be.semester_id = #{semesterId}
                 AND be.semester_id = #{semesterId}
             </if>
             </if>
@@ -217,7 +226,7 @@
                     AND mp.user_id = #{dpr.requestUserId}
                     AND mp.user_id = #{dpr.requestUserId}
                 </if>
                 </if>
                 <if test="dpr.courseUserId != null">
                 <if test="dpr.courseUserId != null">
-                    AND EXISTS( SELECT 1 FROM (select course_code from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_code = mp.course_code)
+                    AND EXISTS( SELECT 1 FROM (select course_id from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_id = mp.course_id)
                 </if>
                 </if>
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
                     AND su.org_id IN
                     AND su.org_id IN
@@ -226,48 +235,8 @@
                     </foreach>
                     </foreach>
                 </if>
                 </if>
             </if>
             </if>
-        </where>
-        order by mp.course_code
-    </select>
-    <select id="listClazz" resultType="com.qmth.teachcloud.common.entity.BasicClazz">
-        SELECT DISTINCT
-            tsess.clazz_id id, tsess.clazz_name clazzName
-        FROM
-            t_sync_exam_student_score tsess
-                JOIN
-            exam_task et ON tsess.school_id = et.school_id
-                AND tsess.paper_number = et.paper_number
-                JOIN
-            basic_course bc ON et.school_id = bc.school_id
-                AND et.course_code = bc.code
-                LEFT JOIN
-            teach_course tc ON bc.school_id = tc.school_id
-                AND bc.code = tc.course_code
-        <where>
-            <if test="semesterId != null">
-                AND tsess.semester_id = #{semesterId}
-            </if>
-            <if test="examId != null">
-                AND et.exam_id = #{examId}
-            </if>
-            <if test="courseCode != null and courseCode != ''">
-                AND et.course_code = #{courseCode}
-            </if>
-            <if test="clazzName != null and clazzName != ''">
-                AND tsess.clazz_name like concat(#{clazzName}, '%')
-            </if>
-            <if test="dpr != null">
-                <if test="dpr.requestUserId != null">
-                    AND tc.user_id = #{dpr.requestUserId}
-                </if>
-                <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
-                    AND bc.org_id IN
-                    <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
-                        #{item}
-                    </foreach>
-                </if>
-            </if>
-        </where>
+        </where>)
+        order by bc.code
     </select>
     </select>
     <select id="listPrintPlanForClient"
     <select id="listPrintPlanForClient"
             resultType="com.qmth.distributed.print.business.bean.result.PrintPlanBrief">
             resultType="com.qmth.distributed.print.business.bean.result.PrintPlanBrief">
@@ -295,46 +264,53 @@
     </select>
     </select>
     <select id="listCourseForPlanTask" resultType="com.qmth.teachcloud.common.entity.BasicCourse">
     <select id="listCourseForPlanTask" resultType="com.qmth.teachcloud.common.entity.BasicCourse">
         SELECT
         SELECT
-            distinct c.course_code code, c.course_name name
-        FROM
-        exam_print_plan a
-        JOIN
-        exam_detail b ON a.id = b.print_plan_id
-        JOIN
-        exam_detail_course c ON b.id = c.exam_detail_id
-        left join exam_task et on b.exam_id = et.exam_id and c.course_code = et.course_code and c.paper_number = et.paper_number
-        JOIN
-        sys_user d ON et.user_id = d.id
-        JOIN
-        basic_exam e ON a.exam_id = e.id
-        <where>
-            <if test="semesterId != null and semesterId != ''">
-                and e.semester_id = #{semesterId}
-            </if>
-            <if test="examId != null and examId != ''">
-                and e.id = #{examId}
-            </if>
-            <if test="printPlanIds != null and printPlanIds.size >0">
-                and a.id in
-                <foreach collection="printPlanIds" separator="," open="(" close=")" item="printPlanId">
-                    #{printPlanId}
-                </foreach>
-            </if>
-            <if test="dpr != null">
-                <if test="dpr.requestUserId != null">
-                    AND et.user_id = #{dpr.requestUserId}
-                </if>
-                <if test="dpr.courseUserId != null">
-                    AND EXISTS( SELECT 1 FROM (select course_code from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_code = c.course_code)
-                </if>
-                <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
-                    AND d.org_id IN
-                    <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
-                        #{item}
-                    </foreach>
-                </if>
-            </if>
-        </where>
+            bc.id,
+            bc.code,
+            bc.name
+            from basic_course bc
+                where
+                exists (select 1
+                    FROM
+                    exam_print_plan a
+                    JOIN
+                    exam_detail b ON a.id = b.print_plan_id
+                    JOIN
+                    exam_detail_course c ON b.id = c.exam_detail_id
+                    left join exam_task et on b.exam_id = et.exam_id and c.course_id = et.course_id and c.paper_number = et.paper_number
+                    JOIN
+                    sys_user d ON et.user_id = d.id
+                    JOIN
+                    basic_exam e ON a.exam_id = e.id
+                    <where>
+                        bc.id = c.course_id
+                        <if test="semesterId != null and semesterId != ''">
+                            and e.semester_id = #{semesterId}
+                        </if>
+                        <if test="examId != null and examId != ''">
+                            and e.id = #{examId}
+                        </if>
+                        <if test="printPlanIds != null and printPlanIds.size >0">
+                            and a.id in
+                            <foreach collection="printPlanIds" separator="," open="(" close=")" item="printPlanId">
+                                #{printPlanId}
+                            </foreach>
+                        </if>
+                        <if test="dpr != null">
+                            <if test="dpr.requestUserId != null">
+                                AND et.user_id = #{dpr.requestUserId}
+                            </if>
+                            <if test="dpr.courseUserId != null">
+                                AND EXISTS( SELECT 1 FROM (select course_id from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_id = c.course_id)
+                            </if>
+                            <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
+                                AND d.org_id IN
+                                <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
+                                    #{item}
+                                </foreach>
+                            </if>
+                        </if>
+                    </where>
+                    )
     </select>
     </select>
     <select id="listPaperNumberPlanTask" resultType="java.lang.String">
     <select id="listPaperNumberPlanTask" resultType="java.lang.String">
         SELECT
         SELECT
@@ -345,7 +321,7 @@
         exam_detail b ON a.id = b.print_plan_id
         exam_detail b ON a.id = b.print_plan_id
         JOIN
         JOIN
         exam_detail_course c ON b.id = c.exam_detail_id
         exam_detail_course c ON b.id = c.exam_detail_id
-        left join exam_task et on b.exam_id = et.exam_id and c.course_code = et.course_code and c.paper_number = et.paper_number
+        left join exam_task et on b.exam_id = et.exam_id and c.course_id = et.course_id and c.paper_number = et.paper_number
         JOIN
         JOIN
         sys_user d ON et.user_id = d.id
         sys_user d ON et.user_id = d.id
         JOIN
         JOIN
@@ -363,15 +339,15 @@
                     #{printPlanId}
                     #{printPlanId}
                 </foreach>
                 </foreach>
             </if>
             </if>
-            <if test="courseCode != null and courseCode != ''">
-                and c.course_code = #{courseCode}
+            <if test="courseId != null">
+                and c.course_id = #{courseId}
             </if>
             </if>
             <if test="dpr != null">
             <if test="dpr != null">
                 <if test="dpr.requestUserId != null">
                 <if test="dpr.requestUserId != null">
                     AND et.user_id = #{dpr.requestUserId}
                     AND et.user_id = #{dpr.requestUserId}
                 </if>
                 </if>
                 <if test="dpr.courseUserId != null">
                 <if test="dpr.courseUserId != null">
-                    AND EXISTS( SELECT 1 FROM (select course_code from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_code = c.course_code)
+                    AND EXISTS( SELECT 1 FROM (select course_id from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_id = c.course_id)
                 </if>
                 </if>
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
                     AND d.org_id IN
                     AND d.org_id IN
@@ -384,22 +360,28 @@
     </select>
     </select>
     <select id="listCourseForEntrance" resultType="com.qmth.teachcloud.common.entity.BasicCourse">
     <select id="listCourseForEntrance" resultType="com.qmth.teachcloud.common.entity.BasicCourse">
         SELECT
         SELECT
-            distinct mg.course_code code,
-            mg.course_name name
-        FROM
-            mark_user_group mug
-        LEFT JOIN
-            mark_group mg ON mug.exam_id = mg.exam_id
-            AND mug.paper_number = mg.paper_number
-            AND mug.group_number = mg.number
-        <where>
-            mg.exam_id = #{examId}
-            and mug.user_id = #{userId} and mg.task_count > 0
-            <if test="status != null and status != ''">
-                and exists (select 1 from mark_paper mp where mp.exam_id = mg.exam_id and mp.paper_number = mg.paper_number and mp.status = #{status})
-            </if>
-        </where>
-        order by mg.course_code
+                bc.id,
+                bc.code,
+                bc.name
+            from basic_course bc
+            where
+                exists (select 1
+                FROM
+                mark_user_group mug
+                LEFT JOIN
+                mark_group mg ON mug.exam_id = mg.exam_id
+                AND mug.paper_number = mg.paper_number
+                AND mug.group_number = mg.number
+                <where>
+                    bc.id = mg.course_id
+                    and mg.exam_id = #{examId}
+                    and mug.user_id = #{userId} and mg.task_count > 0
+                    <if test="status != null and status != ''">
+                        and exists (select 1 from mark_paper mp where mp.exam_id = mg.exam_id and mp.paper_number =
+                        mg.paper_number and mp.status = #{status})
+                    </if>
+                </where>)
+                order by bc.code
     </select>
     </select>
     <select id="listPaperNumberForEntrance" resultType="java.lang.String">
     <select id="listPaperNumberForEntrance" resultType="java.lang.String">
         SELECT
         SELECT
@@ -412,8 +394,8 @@
                 AND mug.group_number = mg.number
                 AND mug.group_number = mg.number
         <where>
         <where>
             mg.exam_id = #{examId}
             mg.exam_id = #{examId}
-            <if test="courseCode != null and courseCode != ''">
-                and mg.course_code = #{courseCode}
+            <if test="courseId != null">
+                and mg.course_id = #{courseId}
             </if>
             </if>
             and mug.user_id = #{userId} and mg.task_count > 0
             and mug.user_id = #{userId} and mg.task_count > 0
             <if test="status != null and status != ''">
             <if test="status != null and status != ''">
@@ -424,18 +406,23 @@
     </select>
     </select>
     <select id="listCourseFromMarkPaper" resultType="com.qmth.teachcloud.common.entity.BasicCourse">
     <select id="listCourseFromMarkPaper" resultType="com.qmth.teachcloud.common.entity.BasicCourse">
         SELECT
         SELECT
-            distinct mp.course_code code,
-            mp.course_name name
+            bc.id,
+            bc.code,
+            bc.name
+        from basic_course bc
+        where
+        exists (select 1
         FROM
         FROM
-            mark_paper mp
-            LEFT JOIN sys_user su ON mp.user_id = su.id
-        where mp.exam_id = #{examId}
+        mark_paper mp
+        LEFT JOIN sys_user su ON mp.user_id = su.id
+        where bc.id = mp.course_id and mp.exam_id = #{examId}
         <if test="dpr != null">
         <if test="dpr != null">
             <if test="dpr.requestUserId != null">
             <if test="dpr.requestUserId != null">
                 AND mp.user_id = #{dpr.requestUserId}
                 AND mp.user_id = #{dpr.requestUserId}
             </if>
             </if>
             <if test="dpr.courseUserId != null">
             <if test="dpr.courseUserId != null">
-                AND EXISTS( SELECT 1 FROM (select course_code from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_code = mp.course_code)
+                AND EXISTS( SELECT 1 FROM (select course_id from teach_course where exam_id = #{examId} and user_id =
+                #{dpr.courseUserId}) tc WHERE tc.course_id = mp.course_id)
             </if>
             </if>
             <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
             <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
                 AND su.org_id IN
                 AND su.org_id IN
@@ -443,7 +430,7 @@
                     #{item}
                     #{item}
                 </foreach>
                 </foreach>
             </if>
             </if>
-        </if>
+        </if>)
     </select>
     </select>
     <select id="listPaperNumberFromMarkPaper" resultType="java.lang.String">
     <select id="listPaperNumberFromMarkPaper" resultType="java.lang.String">
         SELECT
         SELECT
@@ -452,15 +439,15 @@
         mark_paper mp
         mark_paper mp
         LEFT JOIN sys_user su ON mp.user_id = su.id
         LEFT JOIN sys_user su ON mp.user_id = su.id
         where mp.exam_id = #{examId}
         where mp.exam_id = #{examId}
-        <if test="courseCode != null and courseCode != ''">
-            AND mp.course_code = #{courseCode}
+        <if test="courseId != null">
+            AND mp.course_id = #{courseId}
         </if>
         </if>
         <if test="dpr != null">
         <if test="dpr != null">
             <if test="dpr.requestUserId != null">
             <if test="dpr.requestUserId != null">
                 AND mp.user_id = #{dpr.requestUserId}
                 AND mp.user_id = #{dpr.requestUserId}
             </if>
             </if>
             <if test="dpr.courseUserId != null">
             <if test="dpr.courseUserId != null">
-                AND EXISTS( SELECT 1 FROM (select course_code from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_code = mp.course_code)
+                AND EXISTS( SELECT 1 FROM (select course_id from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_id = mp.course_id)
             </if>
             </if>
             <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
             <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
                 AND su.org_id IN
                 AND su.org_id IN
@@ -471,45 +458,53 @@
         </if>
         </if>
     </select>
     </select>
     <select id="listCourseFromExamTaskByCreateId" resultType="com.qmth.teachcloud.common.entity.BasicCourse">
     <select id="listCourseFromExamTaskByCreateId" resultType="com.qmth.teachcloud.common.entity.BasicCourse">
-        SELECT
-            distinct a.course_code code,
-            a.course_name name
-        FROM
-        exam_task a
-        LEFT JOIN
-        sys_user d ON a.create_id = d.id
-        <where>
-            <if test="examId != null">
-                and a.exam_id = #{examId}
-            </if>
-            <if test="dpr != null">
-                <if test="dpr.requestUserId != null">
-                    AND a.create_id = #{dpr.requestUserId}
-                </if>
-                <if test="dpr.courseUserId != null">
-                    AND EXISTS( SELECT 1 FROM (select course_code from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_code = a.course_code)
-                </if>
-                <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
-                    AND d.org_id IN
-                    <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
-                        #{item}
-                    </foreach>
-                </if>
-            </if>
-        </where>
+        SELECT bc.id,
+            bc.code,
+            bc.name
+        from basic_course bc
+            where
+                exists (select 1
+                    FROM
+                    exam_task a
+                    LEFT JOIN
+                    sys_user d ON a.create_id = d.id
+                    <where>
+                        bc.id = a.course_id
+                        <if test="examId != null">
+                            and a.exam_id = #{examId}
+                        </if>
+                        <if test="dpr != null">
+                            <if test="dpr.requestUserId != null">
+                                AND a.create_id = #{dpr.requestUserId}
+                            </if>
+                            <if test="dpr.courseUserId != null">
+                                AND EXISTS( SELECT 1 FROM (select course_id from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_id = a.course_id)
+                            </if>
+                            <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
+                                AND d.org_id IN
+                                <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
+                                    #{item}
+                                </foreach>
+                            </if>
+                        </if>
+                    </where>
+                    )
     </select>
     </select>
     <select id="listCourseFromExamTaskByUserId" resultType="com.qmth.teachcloud.common.entity.BasicCourse">
     <select id="listCourseFromExamTaskByUserId" resultType="com.qmth.teachcloud.common.entity.BasicCourse">
         SELECT
         SELECT
-            distinct a.course_code code,
-            a.course_name name
+        bc.id,
+        bc.code,
+        bc.name
+        from basic_course bc
+        where exists (select 1
         FROM
         FROM
-            exam_task a
-                LEFT JOIN
-            t_f_flow_approve g ON g.flow_id = a.flow_id
-                LEFT JOIN
-            sys_user d ON a.user_id = d.id
+        exam_task a
+        LEFT JOIN
+        t_f_flow_approve g ON g.flow_id = a.flow_id
+        LEFT JOIN
+        sys_user d ON a.user_id = d.id
         <where>
         <where>
-            a.status = 'SUBMIT' AND (a.review = 0 OR (a.review = 1 AND g.status = 'FINISH'))
+            bc.id = a.course_id and a.status = 'SUBMIT' AND (a.review = 0 OR (a.review = 1 AND g.status = 'FINISH'))
             <if test="examId != null">
             <if test="examId != null">
                 and a.exam_id = #{examId}
                 and a.exam_id = #{examId}
             </if>
             </if>
@@ -518,7 +513,8 @@
                     AND a.user_id = #{dpr.requestUserId}
                     AND a.user_id = #{dpr.requestUserId}
                 </if>
                 </if>
                 <if test="dpr.courseUserId != null">
                 <if test="dpr.courseUserId != null">
-                    AND EXISTS( SELECT 1 FROM (select course_code from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_code = a.course_code)
+                    AND EXISTS( SELECT 1 FROM (select course_id from teach_course where exam_id = #{examId} and
+                    user_id = #{dpr.courseUserId}) tc WHERE tc.course_id = a.course_id)
                 </if>
                 </if>
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
                     AND d.org_id IN
                     AND d.org_id IN
@@ -527,7 +523,7 @@
                     </foreach>
                     </foreach>
                 </if>
                 </if>
             </if>
             </if>
-        </where>
+        </where>)
     </select>
     </select>
     <select id="listPaperNumberFromExamTaskByCreateId" resultType="java.lang.String">
     <select id="listPaperNumberFromExamTaskByCreateId" resultType="java.lang.String">
         SELECT
         SELECT
@@ -540,15 +536,15 @@
             <if test="examId != null">
             <if test="examId != null">
                 and a.exam_id = #{examId}
                 and a.exam_id = #{examId}
             </if>
             </if>
-            <if test="courseCode != null and courseCode != ''">
-                and a.course_code = #{courseCode}
+            <if test="courseId != null">
+                and a.course_id = #{courseId}
             </if>
             </if>
             <if test="dpr != null">
             <if test="dpr != null">
                 <if test="dpr.requestUserId != null">
                 <if test="dpr.requestUserId != null">
                     AND a.create_id = #{dpr.requestUserId}
                     AND a.create_id = #{dpr.requestUserId}
                 </if>
                 </if>
                 <if test="dpr.courseUserId != null">
                 <if test="dpr.courseUserId != null">
-                    AND EXISTS( SELECT 1 FROM (select course_code from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_code = a.course_code)
+                    AND EXISTS( SELECT 1 FROM (select course_id from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_id = a.course_id)
                 </if>
                 </if>
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
                     AND d.org_id IN
                     AND d.org_id IN
@@ -574,15 +570,15 @@
             <if test="examId != null">
             <if test="examId != null">
                 and a.exam_id = #{examId}
                 and a.exam_id = #{examId}
             </if>
             </if>
-            <if test="courseCode != null and courseCode != ''">
-                and a.course_code = #{courseCode}
+            <if test="courseId != null">
+                and a.course_id = #{courseId}
             </if>
             </if>
             <if test="dpr != null">
             <if test="dpr != null">
                 <if test="dpr.requestUserId != null">
                 <if test="dpr.requestUserId != null">
                     AND a.user_id = #{dpr.requestUserId}
                     AND a.user_id = #{dpr.requestUserId}
                 </if>
                 </if>
                 <if test="dpr.courseUserId != null">
                 <if test="dpr.courseUserId != null">
-                    AND EXISTS( SELECT 1 FROM (select course_code from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_code = a.course_code)
+                    AND EXISTS( SELECT 1 FROM (select course_id from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_id = a.course_id)
                 </if>
                 </if>
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
                     AND d.org_id IN
                     AND d.org_id IN
@@ -596,34 +592,40 @@
     </select>
     </select>
     <select id="listCourseForQuery" resultType="com.qmth.teachcloud.common.entity.BasicCourse">
     <select id="listCourseForQuery" resultType="com.qmth.teachcloud.common.entity.BasicCourse">
         SELECT
         SELECT
-            distinct a.course_code code,
-            a.course_name name
-        FROM
-            exam_task a
-                LEFT JOIN
-            t_f_flow_approve g ON g.flow_id = a.flow_id
-                LEFT JOIN
-            sys_user d ON a.create_id = d.id
-        <where>
-             a.status = 'SUBMIT' and (a.flow_id is null or (a.flow_id is not null and g.status = 'FINISH'))
-            <if test="examId != null">
-                and a.exam_id = #{examId}
-            </if>
-            <if test="dpr != null">
-                <if test="dpr.requestUserId != null">
-                    AND a.create_id = #{dpr.requestUserId}
-                </if>
-                <if test="dpr.courseUserId != null">
-                    AND EXISTS( SELECT 1 FROM (select course_code from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_code = a.course_code)
-                </if>
-                <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
-                    AND d.org_id IN
-                    <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
-                        #{item}
-                    </foreach>
-                </if>
-            </if>
-        </where>
+            bc.id,
+            bc.code,
+            bc.name
+        from basic_course bc
+            where
+            exists (select 1
+                    FROM
+                exam_task a
+                    LEFT JOIN
+                t_f_flow_approve g ON g.flow_id = a.flow_id
+                    LEFT JOIN
+                sys_user d ON a.create_id = d.id
+            <where>
+                bc.id = a.course_id
+                and a.status = 'SUBMIT' and (a.flow_id is null or (a.flow_id is not null and g.status = 'FINISH'))
+                <if test="examId != null">
+                    and a.exam_id = #{examId}
+                </if>
+                <if test="dpr != null">
+                    <if test="dpr.requestUserId != null">
+                        AND a.create_id = #{dpr.requestUserId}
+                    </if>
+                    <if test="dpr.courseUserId != null">
+                        AND EXISTS( SELECT 1 FROM (select course_id from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_id = a.course_id)
+                    </if>
+                    <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
+                        AND d.org_id IN
+                        <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
+                            #{item}
+                        </foreach>
+                    </if>
+                </if>
+            </where>
+            )
     </select>
     </select>
     <select id="listPaperNumberForQuery" resultType="java.lang.String">
     <select id="listPaperNumberForQuery" resultType="java.lang.String">
         SELECT
         SELECT
@@ -639,15 +641,15 @@
             <if test="examId != null">
             <if test="examId != null">
                 and a.exam_id = #{examId}
                 and a.exam_id = #{examId}
             </if>
             </if>
-            <if test="courseCode != null and courseCode != ''">
-                and a.course_code = #{courseCode}
+            <if test="courseId != null">
+                and a.course_id = #{courseId}
             </if>
             </if>
             <if test="dpr != null">
             <if test="dpr != null">
                 <if test="dpr.requestUserId != null">
                 <if test="dpr.requestUserId != null">
                     AND a.create_id = #{dpr.requestUserId}
                     AND a.create_id = #{dpr.requestUserId}
                 </if>
                 </if>
                 <if test="dpr.courseUserId != null">
                 <if test="dpr.courseUserId != null">
-                    AND EXISTS( SELECT 1 FROM (select course_code from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_code = a.course_code)
+                    AND EXISTS( SELECT 1 FROM (select course_id from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_id = a.course_id)
                 </if>
                 </if>
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
                     AND d.org_id IN
                     AND d.org_id IN
@@ -661,44 +663,50 @@
     </select>
     </select>
     <select id="listCourseForApproveHistory" resultType="com.qmth.teachcloud.common.entity.BasicCourse">
     <select id="listCourseForApproveHistory" resultType="com.qmth.teachcloud.common.entity.BasicCourse">
         SELECT
         SELECT
-            distinct et.course_code code,
-            et.course_name name
-        FROM
-        t_f_flow_approve tffa
-        JOIN
-        t_f_custom_flow_entity tfcfe ON tfcfe.flow_id = tffa.flow_id
-        JOIN
-        exam_task et ON et.flow_id = tffa.flow_id
-        LEFT JOIN
-        basic_exam be ON et.exam_id = be.id
-        LEFT JOIN
-        basic_semester bs ON be.semester_id = bs.id
-        LEFT JOIN
-        sys_user su ON et.user_id = su.id
-        <where>
-            <if test="semesterId != null and semesterId != ''">
-                and bs.id = #{semesterId}
-            </if>
-            <if test="examId != null and examId != ''">
-                and be.id = #{examId}
-            </if>
-            <if test="dpr != null">
-                <if test="dpr.requestUserId != null">
-                    AND et.user_id = #{dpr.requestUserId}
-                </if>
-                <if test="dpr.courseUserId != null">
-                    AND EXISTS( SELECT 1 FROM (select course_code from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_code = et.course_code)
-                </if>
-                <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
-                    AND su.org_id IN
-                    <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
-                        #{item}
-                    </foreach>
-                </if>
-            </if>
-            and tffa.enable = 1
-            and et.enable = 1
-        </where>
+                bc.id,
+                bc.code,
+                bc.name
+            from basic_course bc
+                where
+                    exists (select 1
+                FROM
+                t_f_flow_approve tffa
+                JOIN
+                t_f_custom_flow_entity tfcfe ON tfcfe.flow_id = tffa.flow_id
+                JOIN
+                exam_task et ON et.flow_id = tffa.flow_id
+                LEFT JOIN
+                basic_exam be ON et.exam_id = be.id
+                LEFT JOIN
+                basic_semester bs ON be.semester_id = bs.id
+                LEFT JOIN
+                sys_user su ON et.user_id = su.id
+                <where>
+                    bc.id = et.course_id
+                    <if test="semesterId != null and semesterId != ''">
+                        and bs.id = #{semesterId}
+                    </if>
+                    <if test="examId != null and examId != ''">
+                        and be.id = #{examId}
+                    </if>
+                    <if test="dpr != null">
+                        <if test="dpr.requestUserId != null">
+                            AND et.user_id = #{dpr.requestUserId}
+                        </if>
+                        <if test="dpr.courseUserId != null">
+                            AND EXISTS( SELECT 1 FROM (select course_id from teach_course where exam_id = #{examId} and
+                            user_id = #{dpr.courseUserId}) tc WHERE tc.course_id = et.course_id)
+                        </if>
+                        <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
+                            AND su.org_id IN
+                            <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
+                                #{item}
+                            </foreach>
+                        </if>
+                    </if>
+                    and tffa.enable = 1
+                    and et.enable = 1
+                </where>)
     </select>
     </select>
     <select id="listPaperNumberForApproveHistory" resultType="java.lang.String">
     <select id="listPaperNumberForApproveHistory" resultType="java.lang.String">
         SELECT
         SELECT
@@ -722,15 +730,15 @@
             <if test="examId != null">
             <if test="examId != null">
                 and be.id = #{examId}
                 and be.id = #{examId}
             </if>
             </if>
-            <if test="courseCode != null and courseCode != ''">
-                and et.course_code = #{courseCode}
+            <if test="courseId != null">
+                and et.course_id = #{courseId}
             </if>
             </if>
             <if test="dpr != null">
             <if test="dpr != null">
                 <if test="dpr.requestUserId != null">
                 <if test="dpr.requestUserId != null">
                     AND et.user_id = #{dpr.requestUserId}
                     AND et.user_id = #{dpr.requestUserId}
                 </if>
                 </if>
                 <if test="dpr.courseUserId != null">
                 <if test="dpr.courseUserId != null">
-                    AND EXISTS( SELECT 1 FROM (select course_code from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_code = et.course_code)
+                    AND EXISTS( SELECT 1 FROM (select course_id from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_id = et.course_id)
                 </if>
                 </if>
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
                     AND su.org_id IN
                     AND su.org_id IN
@@ -763,7 +771,7 @@
                     AND mp.user_id = #{dpr.requestUserId}
                     AND mp.user_id = #{dpr.requestUserId}
                 </if>
                 </if>
                 <if test="dpr.courseUserId != null">
                 <if test="dpr.courseUserId != null">
-                    AND EXISTS( SELECT 1 FROM (select course_code from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_code = mp.course_code)
+                    AND EXISTS( SELECT 1 FROM (select course_id from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_id = mp.course_id)
                 </if>
                 </if>
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
                     AND su.org_id IN
                     AND su.org_id IN
@@ -773,6 +781,6 @@
                 </if>
                 </if>
             </if>
             </if>
         </where>
         </where>
-        order by mp.course_code
+        order by mp.course_id
     </select>
     </select>
 </mapper>
 </mapper>

+ 17 - 13
distributed-print-business/src/main/resources/mapper/ExamCardMapper.xml

@@ -59,17 +59,21 @@
             exam_card a
             exam_card a
         WHERE
         WHERE
             a.school_id = #{schoolId}
             a.school_id = #{schoolId}
-            AND a.course_code = #{courseCode}
+            AND a.course_id = #{courseId}
             AND a.type = #{type}
             AND a.type = #{type}
             AND a.card_rule_id = #{cardRuleId}
             AND a.card_rule_id = #{cardRuleId}
             AND a.create_time >= 1680624000000
             AND a.create_time >= 1680624000000
             AND a.enable = true
             AND a.enable = true
         order by a.create_time desc
         order by a.create_time desc
     </select>
     </select>
-    <select id="listPage" resultMap="BaseResultMap">
-        <include refid="Base_Column_List"></include>
+    <select id="listPage" resultType="com.qmth.distributed.print.business.entity.ExamCard">
+        select ec.*,
+               bc.code courseCode,
+               bc.name courseName
+               from exam_card ec
+            left join basic_course bc on ec.course_id = bc.id
         <where>
         <where>
-            school_id = #{schoolId}
+            ec.school_id = #{schoolId}
             <if test="semesterId != null || examId != null">
             <if test="semesterId != null || examId != null">
                AND EXISTS( SELECT
                AND EXISTS( SELECT
                     1
                     1
@@ -99,29 +103,29 @@
                 WHERE LOCATE(id,t.cardId) > 0)
                 WHERE LOCATE(id,t.cardId) > 0)
             </if>
             </if>
             <if test="cardType != null and cardType != ''">
             <if test="cardType != null and cardType != ''">
-                and type = #{cardType}
+                and ec.type = #{cardType}
             </if>
             </if>
             <if test="title != null and title != ''">
             <if test="title != null and title != ''">
-                and title like concat('%', #{title}, '%')
+                and ec.title like concat('%', #{title}, '%')
             </if>
             </if>
             <if test="createMethod != null and createMethod != ''">
             <if test="createMethod != null and createMethod != ''">
-                and create_method = #{createMethod}
+                and ec.create_method = #{createMethod}
             </if>
             </if>
             <if test="enable != null and enable != ''">
             <if test="enable != null and enable != ''">
-                and enable = #{enable}
+                and ec.enable = #{enable}
             </if>
             </if>
             <if test="createStartTime != null and createStartTime != ''">
             <if test="createStartTime != null and createStartTime != ''">
-                and create_time &gt;= #{createStartTime}
+                and ec.create_time &gt;= #{createStartTime}
             </if>
             </if>
             <if test="createEndTime != null and createEndTime != ''">
             <if test="createEndTime != null and createEndTime != ''">
-                and create_time &lt;= #{createEndTime}
+                and ec.create_time &lt;= #{createEndTime}
             </if>
             </if>
             <if test="dpr != null">
             <if test="dpr != null">
                 <if test="dpr.requestUserId != null">
                 <if test="dpr.requestUserId != null">
-                    AND create_id = #{dpr.requestUserId}
+                    AND ec.create_id = #{dpr.requestUserId}
                 </if>
                 </if>
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
-                    AND org_id IN
+                    AND ec.org_id IN
                     <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                     <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                         #{item}
                         #{item}
                     </foreach>
                     </foreach>
@@ -138,7 +142,7 @@
         WHERE
         WHERE
             a.school_id = #{schoolId}
             a.school_id = #{schoolId}
           AND a.type = #{type}
           AND a.type = #{type}
-          AND a.course_code = #{courseCode}
+          AND a.course_id = #{courseId}
           AND EXISTS ( SELECT
           AND EXISTS ( SELECT
                               1
                               1
                           FROM
                           FROM

+ 5 - 3
distributed-print-business/src/main/resources/mapper/ExamDetailCourseMapper.xml

@@ -127,15 +127,17 @@
         SELECT
         SELECT
             be.semester_id semesterId,
             be.semester_id semesterId,
             ed.exam_id examId,
             ed.exam_id examId,
-            GROUP_CONCAT(edc.course_code) courseCode,
-            GROUP_CONCAT(edc.course_name) courseName,
-            GROUP_CONCAT(concat(edc.course_name, '(',edc.course_code, ')')) courseNameCode,
+            GROUP_CONCAT(bc.code) courseCode,
+            GROUP_CONCAT(bc.name) courseName,
+            GROUP_CONCAT(concat(bc.name, '(',bc.code, ')')) courseNameCode,
             GROUP_CONCAT(edc.paper_number) paperNumber
             GROUP_CONCAT(edc.paper_number) paperNumber
         FROM
         FROM
             exam_detail ed
             exam_detail ed
                 LEFT JOIN
                 LEFT JOIN
             exam_detail_course edc ON ed.id = edc.exam_detail_id
             exam_detail_course edc ON ed.id = edc.exam_detail_id
                 LEFT JOIN
                 LEFT JOIN
+            basic_course bc ON edc.course_id = bc.id
+                LEFT JOIN
             basic_exam be ON ed.exam_id = be.id
             basic_exam be ON ed.exam_id = be.id
         WHERE
         WHERE
             ed.id = #{examDetailId}
             ed.id = #{examDetailId}

+ 22 - 9
distributed-print-business/src/main/resources/mapper/ExamDetailMapper.xml

@@ -94,10 +94,11 @@
                 JOIN
                 JOIN
             (SELECT
             (SELECT
                  edc.exam_detail_id,
                  edc.exam_detail_id,
-                 GROUP_CONCAT(CONCAT(edc.course_name, '(', edc.course_code, ')')) courseNameCode,
+                 GROUP_CONCAT(CONCAT(bc.name, '(', bc.code, ')')) courseNameCode,
                  GROUP_CONCAT(edc.paper_number) paperNumber
                  GROUP_CONCAT(edc.paper_number) paperNumber
              FROM
              FROM
                  exam_detail_course edc
                  exam_detail_course edc
+                    left join basic_course bc on edc.course_id = bc.id
              WHERE
              WHERE
                  EXISTS( SELECT
                  EXISTS( SELECT
                              1
                              1
@@ -135,14 +136,14 @@
                          FROM
                          FROM
                              exam_task
                              exam_task
                          WHERE
                          WHERE
-                             exam_id = #{examId}) et ON edc.course_code = et.course_code
+                             exam_id = #{examId}) et ON edc.course_id = et.course_id
                             AND edc.paper_number = et.paper_number
                             AND edc.paper_number = et.paper_number
                             LEFT JOIN
                             LEFT JOIN
                                 sys_user su ON et.user_id = su.id
                                 sys_user su ON et.user_id = su.id
                     WHERE
                     WHERE
                         ed.id = edc.exam_detail_id
                         ed.id = edc.exam_detail_id
-                        <if test="courseCode != null and courseCode != ''">
-                            and edc.course_code = #{courseCode}
+                        <if test="courseId != null">
+                            and edc.course_id = #{courseId}
                         </if>
                         </if>
                         <if test="paperNumber != null and paperNumber != ''">
                         <if test="paperNumber != null and paperNumber != ''">
                             and edc.paper_number = #{paperNumber}
                             and edc.paper_number = #{paperNumber}
@@ -152,7 +153,7 @@
                                 AND et.user_id = #{dpr.requestUserId}
                                 AND et.user_id = #{dpr.requestUserId}
                             </if>
                             </if>
                             <if test="dpr.courseUserId != null">
                             <if test="dpr.courseUserId != null">
-                                AND EXISTS( SELECT 1 FROM (select course_code from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_code = et.course_code)
+                                AND EXISTS( SELECT 1 FROM (select course_id from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_id = et.course_id)
                             </if>
                             </if>
                             <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
                             <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
                                 AND su.org_id IN
                                 AND su.org_id IN
@@ -760,8 +761,7 @@
             ed.school_id schoolId,
             ed.school_id schoolId,
             be.semester_id semesterId,
             be.semester_id semesterId,
             ed.exam_id examId,
             ed.exam_id examId,
-            edc.course_code courseCode,
-            edc.course_name courseName,
+            edc.course_id courseId,
             edc.paper_number paperNumber,
             edc.paper_number paperNumber,
             et.id coursePaperId,
             et.id coursePaperId,
             edc.paper_type paperType,
             edc.paper_type paperType,
@@ -823,12 +823,25 @@
           AND a.course_code = #{courseCode}
           AND a.course_code = #{courseCode}
           AND a.paper_number = #{paperNumber}
           AND a.paper_number = #{paperNumber}
     </select>
     </select>
+    <select id="listByExamIdAndCourseIdAndPaperNumber"
+            resultType="com.qmth.distributed.print.business.entity.ExamDetail">
+        SELECT
+            b.*
+        FROM
+            exam_detail_course a
+                JOIN
+            exam_detail b ON a.exam_detail_id = b.id
+        WHERE
+            a.school_id = #{schoolId}
+          AND b.exam_id = #{examId}
+          AND a.course_id = #{courseId}
+          AND a.paper_number = #{paperNumber}
+    </select>
     <select id="listPrintFinishPackageCode"
     <select id="listPrintFinishPackageCode"
             resultType="com.qmth.distributed.print.business.bean.dto.initMarkData.ExamDetailCourseInitMarkDto">
             resultType="com.qmth.distributed.print.business.bean.dto.initMarkData.ExamDetailCourseInitMarkDto">
         SELECT
         SELECT
             ed.exam_id examId,
             ed.exam_id examId,
-            edc.course_code courseCode,
-            edc.course_name courseName,
+            edc.course_id courseId,
             edc.paper_number paperNumber,
             edc.paper_number paperNumber,
             edc.course_paper_id coursePaperId,
             edc.course_paper_id coursePaperId,
             ed.package_code
             ed.package_code

+ 6 - 6
distributed-print-business/src/main/resources/mapper/ExamStudentMapper.xml

@@ -72,8 +72,8 @@
         es.update_id as updateId,
         es.update_id as updateId,
         es.update_time as updateTime,
         es.update_time as updateTime,
         es.attachment_id as attachmentId,
         es.attachment_id as attachmentId,
-        edc.course_code as courseCode,
-        edc.course_name as courseName,
+        bc.code as courseCode,
+        bc.name as courseName,
         edc.paper_pages_a3 as paperPageA3,
         edc.paper_pages_a3 as paperPageA3,
         edc.paper_number as paperNumber,
         edc.paper_number as paperNumber,
         es.clazz_id clazzId,
         es.clazz_id clazzId,
@@ -84,10 +84,10 @@
         es.teacher_id teacherId,
         es.teacher_id teacherId,
         su.real_name teacherName
         su.real_name teacherName
         from
         from
-        exam_student es
-        left join exam_detail_course edc on
-        edc.id = es.exam_detail_course_id
-            left join sys_user su on es.teacher_id = su.id
+            exam_student es
+                left join exam_detail_course edc on edc.id = es.exam_detail_course_id
+                left join basic_course bc on edc.course_id = bc.id
+                left join sys_user su on es.teacher_id = su.id
         <where>
         <where>
             <if test="schoolId != null and schoolId != ''">
             <if test="schoolId != null and schoolId != ''">
                 and es.school_id = #{schoolId}
                 and es.school_id = #{schoolId}

+ 48 - 97
distributed-print-business/src/main/resources/mapper/ExamTaskMapper.xml

@@ -33,8 +33,8 @@
         SELECT
         SELECT
         a.id,
         a.id,
         a.school_id schoolId,
         a.school_id schoolId,
-        a.course_code courseCode,
-        a.course_name courseName,
+        bc.code courseCode,
+        bc.name courseName,
         a.sequence,
         a.sequence,
         a.specialty,
         a.specialty,
         a.paper_number paperNumber,
         a.paper_number paperNumber,
@@ -87,6 +87,8 @@
         basic_exam f ON a.exam_id = f.id
         basic_exam f ON a.exam_id = f.id
         LEFT JOIN
         LEFT JOIN
         basic_semester g ON f.semester_id = g.id
         basic_semester g ON f.semester_id = g.id
+        LEFT JOIN
+            basic_course bc ON a.course_id = bc.id
         <where>
         <where>
             and f.enable = true
             and f.enable = true
             <if test="schoolId != null and schoolId != ''">
             <if test="schoolId != null and schoolId != ''">
@@ -103,7 +105,7 @@
                     AND a.create_id = #{dpr.requestUserId}
                     AND a.create_id = #{dpr.requestUserId}
                 </if>
                 </if>
                 <if test="dpr.courseUserId != null">
                 <if test="dpr.courseUserId != null">
-                    AND EXISTS( SELECT 1 FROM (select course_code from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_code = a.course_code)
+                    AND EXISTS( SELECT 1 FROM (select course_id from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_id = a.course_id)
                 </if>
                 </if>
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
                     AND d.org_id IN
                     AND d.org_id IN
@@ -131,11 +133,8 @@
                     </otherwise>
                     </otherwise>
                 </choose>
                 </choose>
             </if>
             </if>
-            <if test="cardRuleId != null and cardRuleId != ''">
-                and a.card_rule_id = #{cardRuleId}
-            </if>
-            <if test="courseCode != null and courseCode != ''">
-                and a.course_code = #{courseCode}
+            <if test="courseId != null">
+                and a.course_id = #{courseId}
             </if>
             </if>
             <if test="paperNumber != null and paperNumber != ''">
             <if test="paperNumber != null and paperNumber != ''">
                 and a.paper_number = #{paperNumber}
                 and a.paper_number = #{paperNumber}
@@ -149,9 +148,6 @@
             <if test="userName != null and userName != ''">
             <if test="userName != null and userName != ''">
                 and c.real_name like concat(#{userName},'%')
                 and c.real_name like concat(#{userName},'%')
             </if>
             </if>
-            <if test="createName != null and createName != ''">
-                and d.real_name like concat(#{createName},'%')
-            </if>
         </where>
         </where>
         order by a.create_time desc
         order by a.create_time desc
     </select>
     </select>
@@ -182,8 +178,8 @@
         SELECT
         SELECT
             a.id,
             a.id,
             a.school_id schoolId,
             a.school_id schoolId,
-            a.course_code courseCode,
-            a.course_name courseName,
+            bc.code courseCode,
+            bc.name courseName,
             a.specialty,
             a.specialty,
             a.paper_number paperNumber,
             a.paper_number paperNumber,
             a.card_rule_id cardRuleId,
             a.card_rule_id cardRuleId,
@@ -215,6 +211,8 @@
             tffj.type as flowType
             tffj.type as flowType
         FROM
         FROM
             exam_task a
             exam_task a
+        LEFT JOIN
+            basic_course bc ON a.course_id = bc.id
         LEFT JOIN
         LEFT JOIN
             basic_card_rule b ON a.card_rule_id = b.id
             basic_card_rule b ON a.card_rule_id = b.id
         LEFT JOIN
         LEFT JOIN
@@ -246,11 +244,8 @@
             <if test="auditStatus != null">
             <if test="auditStatus != null">
                 and e.status = #{auditStatus}
                 and e.status = #{auditStatus}
             </if>
             </if>
-            <if test="cardRuleId != null and cardRuleId != ''">
-                and a.card_rule_id = #{cardRuleId}
-            </if>
-            <if test="courseCode != null and courseCode != ''">
-                and a.course_code = #{courseCode}
+            <if test="courseId != null">
+                and a.course_id = #{courseId}
             </if>
             </if>
             <if test="paperNumber != null and paperNumber != ''">
             <if test="paperNumber != null and paperNumber != ''">
                 and a.paper_number = #{paperNumber}
                 and a.paper_number = #{paperNumber}
@@ -274,15 +269,14 @@
         (SELECT distinct
         (SELECT distinct
         a.id,
         a.id,
         a.school_id schoolId,
         a.school_id schoolId,
-        a.course_code courseCode,
-        a.course_name courseName,
+        bc.code courseCode,
+        bc.name courseName,
         a.specialty,
         a.specialty,
         a.paper_number paperNumber,
         a.paper_number paperNumber,
         a.card_rule_id cardRuleId,
         a.card_rule_id cardRuleId,
         case a.card_rule_id when -1 then '全部通卡' else b.name end cardRuleName,
         case a.card_rule_id when -1 then '全部通卡' else b.name end cardRuleName,
         a.user_id userId,
         a.user_id userId,
         c.real_name userName,
         c.real_name userName,
-        d.real_name createName,
         a.start_time startTime,
         a.start_time startTime,
         a.end_time endTime,
         a.end_time endTime,
         a.enable,
         a.enable,
@@ -304,26 +298,16 @@
         FROM ACT_RU_TASK art
         FROM ACT_RU_TASK art
         left join t_f_flow_join tffj on
         left join t_f_flow_join tffj on
         tffj.flow_id = art.PROC_INST_ID_
         tffj.flow_id = art.PROC_INST_ID_
-        left join exam_task a on
-            a.id = tffj.object_id
-        left join act_ru_identitylink ari on
-            ari.TASK_ID_ = art.ID_
-        LEFT JOIN
-        basic_card_rule b ON a.card_rule_id = b.id
-        LEFT JOIN
-        sys_user c ON a.user_id = c.id
-        LEFT JOIN
-        sys_user d ON a.create_id = d.id
-        LEFT JOIN
-        exam_task_paper_log e ON a.id = e.exam_task_id AND e.review = false
-        LEFT JOIN
-        t_f_flow_approve f ON a.school_id = f.school_id and a.flow_id = f.flow_id
-        LEFT JOIN
-        sys_org so ON a.teaching_room_id = so.id
-        LEFT JOIN
-            basic_exam be on a.school_id = be.school_id and a.exam_id = be.id
-        LEFT JOIN
-            basic_semester bs on be.school_id = bs.school_id and be.semester_id = bs.id
+        left join exam_task a on a.id = tffj.object_id
+        left join basic_course bc on a.course_id = bc.id
+        left join act_ru_identitylink ari on ari.TASK_ID_ = art.ID_
+        LEFT JOIN basic_card_rule b ON a.card_rule_id = b.id
+        LEFT JOIN sys_user c ON a.user_id = c.id
+        LEFT JOIN exam_task_paper_log e ON a.id = e.exam_task_id AND e.review = false
+        LEFT JOIN t_f_flow_approve f ON a.school_id = f.school_id and a.flow_id = f.flow_id
+        LEFT JOIN sys_org so ON a.teaching_room_id = so.id
+        LEFT JOIN basic_exam be on a.school_id = be.school_id and a.exam_id = be.id
+        LEFT JOIN basic_semester bs on be.school_id = bs.school_id and be.semester_id = bs.id
         <where>
         <where>
             a.enable = true
             a.enable = true
             AND a.review = true
             AND a.review = true
@@ -340,8 +324,8 @@
             <if test="examId != null and examId != ''">
             <if test="examId != null and examId != ''">
                 and be.id = #{examId}
                 and be.id = #{examId}
             </if>
             </if>
-            <if test="courseCode != null and courseCode != ''">
-                and a.course_code = #{courseCode}
+            <if test="courseId != null">
+                and a.course_id = #{courseId}
             </if>
             </if>
             <if test="paperNumber != null and paperNumber != ''">
             <if test="paperNumber != null and paperNumber != ''">
                 and a.paper_number = #{paperNumber}
                 and a.paper_number = #{paperNumber}
@@ -349,9 +333,6 @@
             <if test="userId != null and userId != ''">
             <if test="userId != null and userId != ''">
                 and a.user_id = #{userId}
                 and a.user_id = #{userId}
             </if>
             </if>
-            <if test="cardRuleId != null and cardRuleId != ''">
-                and a.card_rule_id = #{cardRuleId}
-            </if>
             <if test="startTime != null and startTime != ''">
             <if test="startTime != null and startTime != ''">
                 and a.start_time &gt;= #{startTime}
                 and a.start_time &gt;= #{startTime}
             </if>
             </if>
@@ -364,9 +345,6 @@
             <if test="endCreateTime != null and endCreateTime != ''">
             <if test="endCreateTime != null and endCreateTime != ''">
                 and #{endCreateTime} >= a.create_time
                 and #{endCreateTime} >= a.create_time
             </if>
             </if>
-            <if test="createName != null and createName != ''">
-                and d.real_name like concat('%',#{createName},'%')
-            </if>
         </where>
         </where>
         ) t
         ) t
         order by t.id desc
         order by t.id desc
@@ -375,15 +353,14 @@
         SELECT
         SELECT
         distinct a.id,
         distinct a.id,
         a.school_id schoolId,
         a.school_id schoolId,
-        a.course_code courseCode,
-        a.course_name courseName,
+        bc.code courseCode,
+        bc.name courseName,
         a.specialty,
         a.specialty,
         a.paper_number paperNumber,
         a.paper_number paperNumber,
         a.card_rule_id cardRuleId,
         a.card_rule_id cardRuleId,
         case a.card_rule_id when -1 then '全部通卡' else b.name end cardRuleName,
         case a.card_rule_id when -1 then '全部通卡' else b.name end cardRuleName,
         a.user_id userId,
         a.user_id userId,
         c.real_name userName,
         c.real_name userName,
-        d.real_name createName,
         a.start_time startTime,
         a.start_time startTime,
         a.end_time endTime,
         a.end_time endTime,
         f.status auditStatus,
         f.status auditStatus,
@@ -404,22 +381,14 @@
         bs.name semesterName
         bs.name semesterName
         FROM
         FROM
         exam_task a
         exam_task a
-        left join t_f_flow_join tffj on
-            a.id = tffj.object_id
-        LEFT JOIN
-        basic_card_rule b ON a.card_rule_id = b.id
-        LEFT JOIN
-        sys_user c ON a.user_id = c.id
-        LEFT JOIN
-        sys_user d ON a.create_id = d.id
-        LEFT JOIN t_f_flow_approve f ON
-            a.school_id = f.school_id and a.flow_id = f.flow_id
-        LEFT JOIN
-            sys_org e ON a.teaching_room_id = e.id
-        LEFT JOIN
-            basic_exam be on a.school_id = be.school_id and a.exam_id = be.id
-        LEFT JOIN
-            basic_semester bs on be.school_id = bs.school_id and be.semester_id = bs.id
+        left join basic_course bc on a.course_id = bc.id
+        left join t_f_flow_join tffj on a.id = tffj.object_id
+        LEFT JOIN basic_card_rule b ON a.card_rule_id = b.id
+        LEFT JOIN sys_user c ON a.user_id = c.id
+        LEFT JOIN t_f_flow_approve f ON a.school_id = f.school_id and a.flow_id = f.flow_id
+        LEFT JOIN sys_org e ON a.teaching_room_id = e.id
+        LEFT JOIN basic_exam be on a.school_id = be.school_id and a.exam_id = be.id
+        LEFT JOIN basic_semester bs on be.school_id = bs.school_id and be.semester_id = bs.id
         <where>
         <where>
             a.enable = true and a.review = true and be.enable = true
             a.enable = true and a.review = true and be.enable = true
             and (f.status = 'AUDITING' or f.status = 'REJECT' or f.status = 'FINISH')
             and (f.status = 'AUDITING' or f.status = 'REJECT' or f.status = 'FINISH')
@@ -467,11 +436,8 @@
             <if test="examId != null and examId != ''">
             <if test="examId != null and examId != ''">
                 and a.exam_id = #{examId}
                 and a.exam_id = #{examId}
             </if>
             </if>
-            <if test="reviewStatus != null and reviewStatus != ''">
-                and a.review_status = #{reviewStatus}
-            </if>
-            <if test="courseCode != null and courseCode != ''">
-                and a.course_code = #{courseCode}
+            <if test="courseId != null">
+                and a.course_id = #{courseId}
             </if>
             </if>
             <if test="paperNumber != null and paperNumber != ''">
             <if test="paperNumber != null and paperNumber != ''">
                 and a.paper_number = #{paperNumber}
                 and a.paper_number = #{paperNumber}
@@ -479,9 +445,6 @@
             <if test="userId != null and userId != ''">
             <if test="userId != null and userId != ''">
                 and a.user_id = #{userId}
                 and a.user_id = #{userId}
             </if>
             </if>
-            <if test="cardRuleId != null and cardRuleId != ''">
-                and a.card_rule_id = #{cardRuleId}
-            </if>
             <if test="startTime != null and startTime != ''">
             <if test="startTime != null and startTime != ''">
                 and a.start_time &gt;= #{startTime}
                 and a.start_time &gt;= #{startTime}
             </if>
             </if>
@@ -494,9 +457,6 @@
             <if test="endCreateTime != null and endCreateTime != ''">
             <if test="endCreateTime != null and endCreateTime != ''">
                 and #{endCreateTime} >= a.create_time
                 and #{endCreateTime} >= a.create_time
             </if>
             </if>
-            <if test="createName != null and createName != ''">
-                and d.real_name like concat('%',#{createName},'%')
-            </if>
         </where>
         </where>
         order by a.create_time desc
         order by a.create_time desc
     </select>
     </select>
@@ -506,14 +466,13 @@
         a.school_id schoolId,
         a.school_id schoolId,
         be.name examName,
         be.name examName,
         bs.name semesterName,
         bs.name semesterName,
-        a.course_code courseCode,
-        a.course_name courseName,
+        bc.code courseCode,
+        bc.name courseName,
         a.specialty,
         a.specialty,
         a.paper_number paperNumber,
         a.paper_number paperNumber,
         a.user_id userId,
         a.user_id userId,
         a.card_rule_id cardRuleId,
         a.card_rule_id cardRuleId,
         c.real_name userName,
         c.real_name userName,
-        d.real_name createName,
         a.start_time startTime,
         a.start_time startTime,
         a.end_time endTime,
         a.end_time endTime,
         a.create_id createId,
         a.create_id createId,
@@ -526,10 +485,11 @@
         WHEN - 1 THEN '全部通卡'
         WHEN - 1 THEN '全部通卡'
         ELSE e.name
         ELSE e.name
         END cardRuleName,
         END cardRuleName,
-        -- f.make_method makeMethod,
         g.setup
         g.setup
         FROM
         FROM
         exam_task a
         exam_task a
+            LEFT JOIN
+            basic_course bc ON a.course_id = bc.id
         LEFT JOIN
         LEFT JOIN
         exam_task_detail b ON a.id = b.exam_task_id
         exam_task_detail b ON a.id = b.exam_task_id
         LEFT JOIN
         LEFT JOIN
@@ -537,10 +497,7 @@
         LEFT JOIN
         LEFT JOIN
         sys_user c ON a.user_id = c.id
         sys_user c ON a.user_id = c.id
         LEFT JOIN
         LEFT JOIN
-        sys_user d ON a.create_id = d.id
-        LEFT JOIN
         basic_card_rule e ON a.card_rule_id = e.id
         basic_card_rule e ON a.card_rule_id = e.id
-        -- JOIN exam_card f ON FIND_IN_SET(f.id, REPLACE(REPLACE(substring_index(substring_index(CONVERT((b.paper_attachment_ids ->>'$[*].cardId') USING utf8), ']', 1), '[',-1),' "','"'),'"',''))
         LEFT JOIN
         LEFT JOIN
         basic_exam be ON a.exam_id = be.id
         basic_exam be ON a.exam_id = be.id
         LEFT JOIN
         LEFT JOIN
@@ -556,8 +513,8 @@
             <if test="examId != null and examId != ''">
             <if test="examId != null and examId != ''">
                 and a.exam_id = #{examId}
                 and a.exam_id = #{examId}
             </if>
             </if>
-            <if test="courseCode != null and courseCode != ''">
-                and a.course_code = #{courseCode}
+            <if test="courseId != null">
+                and a.course_id = #{courseId}
             </if>
             </if>
             <if test="paperNumber != null and paperNumber != ''">
             <if test="paperNumber != null and paperNumber != ''">
                 and a.paper_number = #{paperNumber}
                 and a.paper_number = #{paperNumber}
@@ -571,18 +528,12 @@
             <if test="containsQuestionTeacher">
             <if test="containsQuestionTeacher">
                 and a.user_id = #{userId}
                 and a.user_id = #{userId}
             </if>
             </if>
-            <if test="cardRuleId != null and cardRuleId != ''">
-                and a.card_rule_id = #{cardRuleId}
-            </if>
-            <if test="makeMethod != null">
-                and f.make_method = #{makeMethod}
-            </if>
             <if test="dpr != null">
             <if test="dpr != null">
                 <if test="dpr.requestUserId != null">
                 <if test="dpr.requestUserId != null">
                     AND a.create_id = #{dpr.requestUserId}
                     AND a.create_id = #{dpr.requestUserId}
                 </if>
                 </if>
                 <if test="dpr.courseUserId != null">
                 <if test="dpr.courseUserId != null">
-                    AND EXISTS( SELECT 1 FROM (select course_code from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_code = a.course_code)
+                    AND EXISTS( SELECT 1 FROM (select course_id from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_id = a.course_id)
                 </if>
                 </if>
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
                     AND a.org_id IN
                     AND a.org_id IN
@@ -930,8 +881,8 @@
             <if test="examId != null">
             <if test="examId != null">
                 and et.exam_id = #{examId}
                 and et.exam_id = #{examId}
             </if>
             </if>
-            <if test="courseCode != null and courseCode != ''">
-                and et.course_code = #{courseCode}
+            <if test="courseId != null">
+                and et.course_id = #{courseId}
             </if>
             </if>
             <if test="paperNumber != null and paperNumber != ''">
             <if test="paperNumber != null and paperNumber != ''">
                 and et.paper_number = #{paperNumber}
                 and et.paper_number = #{paperNumber}

+ 0 - 44
distributed-print-business/src/main/resources/mapper/TeachCourseMapper.xml

@@ -44,50 +44,6 @@
         </where>
         </where>
         ORDER BY tc.create_time DESC
         ORDER BY tc.create_time DESC
     </select>
     </select>
-    <select id="findTeacherTeamPage" resultType="com.qmth.teachcloud.common.bean.result.TeacherTeamResult">
-        SELECT
-            tc.id,
-            tc.user_id as userId,
-            su.real_name as userName,
-            su.code as userCode,
-            so.name as orgName
-        FROM
-            teach_course tc
-                LEFT JOIN
-            sys_user su ON tc.user_id = su.id
-                LEFT JOIN
-            sys_org so ON su.org_id = so.id
-        <where>
-            AND su.enable = true
-            <if test="courseCode != null and courseCode != ''">
-                AND tc.course_code = #{courseCode}
-            </if>
-            <if test="leaderId != null">
-                AND tc.create_id = #{leaderId}
-            </if>
-            <if test="userInfo != null and userInfo != ''">
-                AND (su.real_name LIKE CONCAT('%',#{userInfo},'%') OR su.code LIKE CONCAT('%',#{userInfo},'%'))
-            </if>
-        </where>
-    </select>
-    <select id="findTeacherByOrgIds" resultType="com.qmth.teachcloud.common.bean.result.TeacherSelectResult">
-        SELECT
-            su.id, su.code, su.real_name AS realName, so.name AS orgName
-        FROM
-            sys_user su
-                LEFT JOIN
-            sys_org so ON su.org_id = so.id
-        <where>
-            su.enable = true
-            <if test="orgIdList != null and orgIdList != '' and orgIdList.size() > 0">
-                AND su.org_id IN
-                <foreach collection="orgIdList" item="item" index="index" open="(" separator="," close=")">
-                    #{item}
-                </foreach>
-            </if>
-        </where>
-        ORDER BY so.id
-    </select>
 </mapper>
 </mapper>
 
 
 
 

+ 0 - 13
distributed-print/install/mysql/upgrade/3.3.3.sql

@@ -36,17 +36,4 @@ ADD INDEX `operation_log_idx` USING BTREE (`school_id`, `user_id`, `privilege_id
 update basic_operation_log t set t.operation_type = 'SAVE' where t.operation_type = 'EDIT';
 update basic_operation_log t set t.operation_type = 'SAVE' where t.operation_type = 'EDIT';
 update basic_operation_log t set t.operation_type = 'OTHER' where t.operation_type = 'UN_KNOW';
 update basic_operation_log t set t.operation_type = 'OTHER' where t.operation_type = 'UN_KNOW';
 
 
--- drop table if exists exam_detail_course_paper_type;
--- drop table if exists basic_template_org;
--- drop table if exists cloud_user_push_status;
--- drop table if exists exam_card_detail;
--- drop table if exists exam_paper_class_marker;
--- drop table if exists exam_paper_group;
--- drop table if exists exam_paper_group_marker;
--- drop table if exists exam_paper_structure;
--- drop table if exists exam_task_sync;
--- drop table if exists t_sync_exam_log;
--- drop table if exists t_sync_stmms_exam;
-
--- delete脚本需要加上新增的表
 
 

+ 53 - 0
distributed-print/install/mysql/upgrade/3.4.0.sql

@@ -14,10 +14,18 @@ ALTER TABLE `mark_paper` ADD COLUMN `course_id` BIGINT(20) NULL COMMENT '课程I
 ALTER TABLE `mark_task` ADD COLUMN `course_id` BIGINT(20) NULL COMMENT '课程ID(basic_course表ID)' AFTER `exam_id`;
 ALTER TABLE `mark_task` ADD COLUMN `course_id` BIGINT(20) NULL COMMENT '课程ID(basic_course表ID)' AFTER `exam_id`;
 ALTER TABLE `teach_course` ADD COLUMN `course_id` BIGINT(20) NULL COMMENT '课程ID(basic_course表ID)' AFTER `exam_id`;
 ALTER TABLE `teach_course` ADD COLUMN `course_id` BIGINT(20) NULL COMMENT '课程ID(basic_course表ID)' AFTER `exam_id`;
 ALTER TABLE `t_p_course` ADD COLUMN `course_id` BIGINT(20) NULL COMMENT '课程ID(basic_course表ID)' AFTER `professional_id`;
 ALTER TABLE `t_p_course` ADD COLUMN `course_id` BIGINT(20) NULL COMMENT '课程ID(basic_course表ID)' AFTER `professional_id`;
+ALTER TABLE `t_b_sync_task` ADD COLUMN `course_id` BIGINT(20) NULL COMMENT '课程ID(basic_course表ID)' AFTER `exam_id`;
+
 ALTER TABLE `basic_course` CHANGE COLUMN `org_id` `org_id` BIGINT NULL COMMENT '机构id' ;
 ALTER TABLE `basic_course` CHANGE COLUMN `org_id` `org_id` BIGINT NULL COMMENT '机构id' ;
 ALTER TABLE `basic_course` DROP INDEX `course_schoolId_code_idx` , ADD UNIQUE INDEX `uq_1` USING BTREE (`school_id`, `teaching_room_id`, `code`);
 ALTER TABLE `basic_course` DROP INDEX `course_schoolId_code_idx` , ADD UNIQUE INDEX `uq_1` USING BTREE (`school_id`, `teaching_room_id`, `code`);
 ALTER TABLE `teach_course` CHANGE COLUMN `course_code` `course_code` VARCHAR(20) NULL COMMENT '课程代码' ;
 ALTER TABLE `teach_course` CHANGE COLUMN `course_code` `course_code` VARCHAR(20) NULL COMMENT '课程代码' ;
 
 
+ALTER TABLE `mark_paper_package`
+    ADD COLUMN `course_id` BIGINT(20) NULL COMMENT '课程ID(basic_course表ID)' AFTER `exam_id`,
+CHANGE COLUMN `course_code` `course_code` VARCHAR(32) CHARACTER SET 'utf8mb4' NULL COMMENT '课程代码' ,
+CHANGE COLUMN `course_name` `course_name` VARCHAR(100) CHARACTER SET 'utf8mb4' NULL COMMENT '科目名称' ;
+
+
 ALTER TABLE `course_dimension`
 ALTER TABLE `course_dimension`
     ADD COLUMN `course_id` BIGINT(20) NULL COMMENT '课程ID(basic_course表ID)' AFTER `exam_id`,
     ADD COLUMN `course_id` BIGINT(20) NULL COMMENT '课程ID(basic_course表ID)' AFTER `exam_id`,
 CHANGE COLUMN `course_code` `course_code` VARCHAR(20) CHARACTER SET 'utf8mb4' NULL COMMENT '课程编号' ;
 CHANGE COLUMN `course_code` `course_code` VARCHAR(20) CHARACTER SET 'utf8mb4' NULL COMMENT '课程编号' ;
@@ -33,3 +41,48 @@ CHANGE COLUMN `course_code` `course_code` VARCHAR(20) CHARACTER SET 'utf8mb4' NU
 ALTER TABLE `course_weight`
 ALTER TABLE `course_weight`
     ADD COLUMN `course_id` BIGINT(20) NULL COMMENT '课程ID(basic_course表ID)' AFTER `exam_id`,
     ADD COLUMN `course_id` BIGINT(20) NULL COMMENT '课程ID(basic_course表ID)' AFTER `exam_id`,
 CHANGE COLUMN `course_code` `course_code` VARCHAR(20) CHARACTER SET 'utf8mb4' NULL COMMENT '课程编号' ;
 CHANGE COLUMN `course_code` `course_code` VARCHAR(20) CHARACTER SET 'utf8mb4' NULL COMMENT '课程编号' ;
+
+ALTER TABLE `exam_task_temp`
+    ADD COLUMN `teaching_room_name` VARCHAR(100) NULL COMMENT '开课学院' AFTER `course_name`;
+
+ALTER TABLE `exam_task`
+    CHANGE COLUMN `course_code` `course_code` VARCHAR(20) NULL COMMENT '课程代码' ,
+    CHANGE COLUMN `course_name` `course_name` VARCHAR(50) NULL COMMENT '课程名称' ;
+
+ALTER TABLE `basic_teach_clazz`
+    ADD COLUMN `course_id` BIGINT(20) NULL COMMENT '课程ID(basic_course表ID)' AFTER `exam_id`;
+
+ALTER TABLE `basic_teach_clazz`
+    CHANGE COLUMN `course_code` `course_code` VARCHAR(20) CHARACTER SET 'utf8mb4' NULL COMMENT '课程编号' ;
+
+ALTER TABLE `basic_exam_student`
+    CHANGE COLUMN `course_code` `course_code` VARCHAR(20) CHARACTER SET 'utf8mb4' NULL COMMENT '课程编号' ,
+    CHANGE COLUMN `clazz_id` `clazz_id` BIGINT NULL COMMENT '教学班id(basic_teach_clazz)' ;
+
+ALTER TABLE `exam_detail_course`
+    CHANGE COLUMN `course_code` `course_code` VARCHAR(20) CHARACTER SET 'utf8mb4' NULL COMMENT '课程编码' ,
+    CHANGE COLUMN `course_name` `course_name` VARCHAR(50) CHARACTER SET 'utf8mb4' NULL COMMENT '课程名称' ;
+
+ALTER TABLE `sys_org` DROP COLUMN `third_relate_id`;
+
+ALTER TABLE `exam_student`
+    CHANGE COLUMN `student_name` `student_name` VARCHAR(100) CHARACTER SET 'utf8mb4' NULL COMMENT '考生姓名' ,
+    CHANGE COLUMN `student_code` `student_code` VARCHAR(100) CHARACTER SET 'utf8mb4' NULL COMMENT '考生代码' ;
+
+
+
+-- drop table if exists exam_detail_course_paper_type;
+-- drop table if exists basic_template_org;
+-- drop table if exists cloud_user_push_status;
+-- drop table if exists exam_card_detail;
+-- drop table if exists exam_paper_class_marker;
+-- drop table if exists exam_paper_group;
+-- drop table if exists exam_paper_group_marker;
+-- drop table if exists exam_paper_structure;
+-- drop table if exists exam_task_sync;
+-- drop table if exists t_sync_exam_log;
+-- drop table if exists t_sync_stmms_exam;
+-- drop table if exists basic_college;
+-- drop table if exists basic_campus;
+
+-- delete脚本需要加上新增的表

+ 0 - 60
distributed-print/src/main/java/com/qmth/distributed/print/api/BasicCampusController.java

@@ -1,60 +0,0 @@
-package com.qmth.distributed.print.api;
-
-
-import com.qmth.boot.api.constant.ApiConstant;
-import com.qmth.distributed.print.business.bean.result.EditResult;
-import com.qmth.teachcloud.common.bean.params.BasicCampusParams;
-import com.qmth.teachcloud.common.contant.SystemConstant;
-import com.qmth.teachcloud.common.service.BasicCampusService;
-import com.qmth.teachcloud.common.util.Result;
-import com.qmth.teachcloud.common.util.ResultUtil;
-import com.qmth.teachcloud.common.util.ServletUtil;
-import io.swagger.annotations.*;
-import org.springframework.validation.BindingResult;
-import org.springframework.web.bind.annotation.*;
-
-import javax.annotation.Resource;
-import javax.validation.Valid;
-
-/**
- * <p>
- * 基础校区表 前端控制器
- * </p>
- *
- * @author wangliang
- * @since 2021-08-02
- */
-@Api(tags = "校区管理controller")
-@RestController
-@RequestMapping(ApiConstant.DEFAULT_URI_PREFIX + SystemConstant.PREFIX_URL_BASIC + "/campus")
-//@Aac(strict = BOOL.FALSE, auth = BOOL.FALSE)
-public class BasicCampusController {
-    @Resource
-    private BasicCampusService basicCampusService;
-
-    @ApiOperation(value = "校区管理-查询")
-    @RequestMapping(value = "/query", method = RequestMethod.POST)
-    @ApiResponses({@ApiResponse(code = 200, message = "查询成功", response = Result.class)})
-    public Result findBasicCampusList() {
-        Long schoolId = SystemConstant.convertIdToLong(ServletUtil.getRequestHeaderSchoolId().toString());
-        return ResultUtil.ok(basicCampusService.basicCampusList(schoolId));
-    }
-
-    @ApiOperation(value = "校区管理-新增/编辑")
-    @RequestMapping(value = "/save", method = RequestMethod.POST)
-    @ApiResponses({@ApiResponse(code = 200, message = "更新成功", response = EditResult.class)})
-    public Result saveBasicCampus(@Valid @RequestBody BasicCampusParams basicCampusParams, BindingResult bindingResult) {
-        if (bindingResult.hasErrors()) {
-            return ResultUtil.error(bindingResult.getAllErrors().get(0).getDefaultMessage());
-        }
-        return ResultUtil.ok(basicCampusService.saveBasicCampus(basicCampusParams));
-    }
-
-    @ApiOperation(value = "校区管理-删除(逻辑)")
-    @RequestMapping(value = "/delete", method = RequestMethod.POST)
-    @ApiResponses({@ApiResponse(code = 200, message = "删除成功", response = EditResult.class)})
-    public Result deleteBasicCampus(@ApiParam(value = "校区id", required = true) @RequestParam String id) {
-        return ResultUtil.ok(basicCampusService.removeBasicCampusById(SystemConstant.convertIdToLong(id)));
-    }
-
-}

+ 0 - 72
distributed-print/src/main/java/com/qmth/distributed/print/api/BasicCollegeController.java

@@ -1,72 +0,0 @@
-package com.qmth.distributed.print.api;
-
-import com.qmth.boot.api.constant.ApiConstant;
-import com.qmth.distributed.print.business.bean.result.EditResult;
-import com.qmth.teachcloud.common.annotation.OperationLogDetail;
-import com.qmth.teachcloud.common.bean.params.BasicCollegeParams;
-import com.qmth.teachcloud.common.bean.result.BasicCollegeResult;
-import com.qmth.teachcloud.common.contant.SystemConstant;
-import com.qmth.teachcloud.common.entity.SysUser;
-import com.qmth.teachcloud.common.enums.ExceptionResultEnum;
-import com.qmth.teachcloud.common.enums.log.OperationTypeEnum;
-import com.qmth.teachcloud.common.service.BasicCollegeService;
-import com.qmth.teachcloud.common.util.Result;
-import com.qmth.teachcloud.common.util.ResultUtil;
-import com.qmth.teachcloud.common.util.ServletUtil;
-import io.swagger.annotations.*;
-import org.springframework.validation.BindingResult;
-import org.springframework.web.bind.annotation.*;
-
-import javax.annotation.Resource;
-import javax.validation.Valid;
-import javax.validation.constraints.Max;
-import javax.validation.constraints.Min;
-import java.util.List;
-import java.util.stream.Collectors;
-
-/**
- * @Description: 基础学院前端控制器
- * @Author: CaoZixuan
- * @Date: 2022-08-17
- */
-@Api(tags = "学生学院管理controller")
-@RestController
-@RequestMapping(ApiConstant.DEFAULT_URI_PREFIX + SystemConstant.PREFIX_URL_BASIC + "/college")
-public class BasicCollegeController {
-    @Resource
-    private BasicCollegeService basicCollegeService;
-
-    @ApiOperation(value = "学生学院管理-查询")
-    @RequestMapping(value = "/query", method = RequestMethod.POST)
-    @ApiResponses({@ApiResponse(code = 200, message = "查询成功", response = BasicCollegeResult.class)})
-    public Result findBasicCollegeList(@ApiParam(value = "学生学院名称") @RequestParam(required = false) String collegeName,
-                                       @ApiParam(value = "分页页码", required = true) @RequestParam @Min(SystemConstant.PAGE_NUMBER_MIN) Integer pageNumber,
-                                       @ApiParam(value = "分页数", required = true) @RequestParam @Min(SystemConstant.PAGE_SIZE_MIN) @Max(SystemConstant.PAGE_SIZE_MAX) Integer pageSize) {
-        Long schoolId = SystemConstant.convertIdToLong(ServletUtil.getRequestHeaderSchoolId().toString());
-        return ResultUtil.ok(basicCollegeService.basicCollegePage(schoolId, collegeName, pageNumber, pageSize));
-    }
-
-    @ApiOperation(value = "学生学院管理-新增/编辑")
-    @RequestMapping(value = "/save", method = RequestMethod.POST)
-    @ApiResponses({@ApiResponse(code = 200, message = "更新成功", response = EditResult.class)})
-    @OperationLogDetail(operationType = OperationTypeEnum.SAVE)
-    public Result saveBasicCollege(@Valid @RequestBody BasicCollegeParams basicCollegeParams, BindingResult bindingResult) throws IllegalAccessException {
-        if (bindingResult.hasErrors()) {
-            return ResultUtil.error(bindingResult.getAllErrors().get(0).getDefaultMessage());
-        }
-        SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
-        return ResultUtil.ok(basicCollegeService.saveBasicCollege(basicCollegeParams, sysUser));
-    }
-
-    @ApiOperation(value = "学生学院管理-删除")
-    @RequestMapping(value = "/delete", method = RequestMethod.POST)
-    @ApiResponses({@ApiResponse(code = 200, message = "删除成功", response = EditResult.class)})
-    @OperationLogDetail(operationType = OperationTypeEnum.DELETE)
-    public Result deleteBasicCollege(@ApiParam(value = "学生学院id", required = true) @RequestParam List<String> idList) {
-        if (idList.size() == 0) {
-            throw ExceptionResultEnum.ERROR.exception("请选择要删除的学生学院");
-        }
-        List<Long> newIdList = idList.stream().map(SystemConstant::convertIdToLong).collect(Collectors.toList());
-        return ResultUtil.ok(basicCollegeService.deleteBasicCollegeByIdList(newIdList));
-    }
-}

+ 1 - 8
distributed-print/src/main/java/com/qmth/distributed/print/api/BasicCourseController.java

@@ -63,13 +63,6 @@ public class BasicCourseController {
         return ResultUtil.ok(userDtos);
         return ResultUtil.ok(userDtos);
     }
     }
 
 
-    @ApiOperation(value = "删除")
-    @RequestMapping(value = "/remove", method = RequestMethod.POST)
-    @OperationLogDetail(operationType = OperationTypeEnum.DELETE, detail = "删除操作,课程ID:{{course.id}}")
-    public Result remove(@RequestBody BasicCourse course) {
-        boolean isSuccess = printCommonService.remove(course.getId());
-        return ResultUtil.ok(isSuccess);
-    }
 
 
     @ApiOperation(value = "课程管理-查询")
     @ApiOperation(value = "课程管理-查询")
     @RequestMapping(value = "/list", method = RequestMethod.POST)
     @RequestMapping(value = "/list", method = RequestMethod.POST)
@@ -99,7 +92,7 @@ public class BasicCourseController {
     @ApiOperation(value = "课程管理-批量删除")
     @ApiOperation(value = "课程管理-批量删除")
     @RequestMapping(value = "/delete_batch", method = RequestMethod.POST)
     @RequestMapping(value = "/delete_batch", method = RequestMethod.POST)
     @ApiResponses({@ApiResponse(code = 200, message = "删除成功", response = EditResult.class)})
     @ApiResponses({@ApiResponse(code = 200, message = "删除成功", response = EditResult.class)})
-    @OperationLogDetail(operationType = OperationTypeEnum.DELETE)
+    @OperationLogDetail(operationType = OperationTypeEnum.DELETE, detail = "删除操作,id集合:{{idList}}")
     public Result enableBasicCourse(@ApiParam(value = "选择的要删除的课程id集合", required = true) @RequestParam List<Long> idList) {
     public Result enableBasicCourse(@ApiParam(value = "选择的要删除的课程id集合", required = true) @RequestParam List<Long> idList) {
         return ResultUtil.ok(basicCourseService.removeBasicCourseBatch(idList));
         return ResultUtil.ok(basicCourseService.removeBasicCourseBatch(idList));
     }
     }

+ 5 - 6
distributed-print/src/main/java/com/qmth/distributed/print/api/BasicExamStudentController.java

@@ -56,7 +56,7 @@ public class BasicExamStudentController {
     @ApiResponses({@ApiResponse(code = 200, message = "查询成功", response = BasicExamStudentResult.class)})
     @ApiResponses({@ApiResponse(code = 200, message = "查询成功", response = BasicExamStudentResult.class)})
     public Result findBasicExamStudentPage(@ApiParam(value = "学期id") @RequestParam(required = false) String semesterId,
     public Result findBasicExamStudentPage(@ApiParam(value = "学期id") @RequestParam(required = false) String semesterId,
                                            @ApiParam(value = "考试id") @RequestParam(required = false) String examId,
                                            @ApiParam(value = "考试id") @RequestParam(required = false) String examId,
-                                           @ApiParam(value = "课程代码") @RequestParam(required = false) String courseCode,
+                                           @ApiParam(value = "课程ID") @RequestParam(required = false) Long courseId,
                                            @ApiParam(value = "教师(工号/姓名)") @RequestParam(required = false) String teacher,
                                            @ApiParam(value = "教师(工号/姓名)") @RequestParam(required = false) String teacher,
                                            @ApiParam(value = "学院") @RequestParam(required = false) String college,
                                            @ApiParam(value = "学院") @RequestParam(required = false) String college,
                                            @ApiParam(value = "专业") @RequestParam(required = false) String major,
                                            @ApiParam(value = "专业") @RequestParam(required = false) String major,
@@ -71,7 +71,7 @@ public class BasicExamStudentController {
             throw ExceptionResultEnum.ERROR.exception("请选择考试");
             throw ExceptionResultEnum.ERROR.exception("请选择考试");
         }
         }
         return ResultUtil.ok(basicExamStudentService.page(SystemConstant.convertIdToLong(semesterId),
         return ResultUtil.ok(basicExamStudentService.page(SystemConstant.convertIdToLong(semesterId),
-                SystemConstant.convertIdToLong(examId), courseCode, teacher, college, major, teachClazz,
+                SystemConstant.convertIdToLong(examId), courseId, teacher, college, major, teachClazz,
                 examStudentInfo, pageNumber, pageSize));
                 examStudentInfo, pageNumber, pageSize));
     }
     }
 
 
@@ -118,10 +118,9 @@ public class BasicExamStudentController {
     @ApiOperation(value = "删除")
     @ApiOperation(value = "删除")
     @RequestMapping(value = "/delete", method = RequestMethod.POST)
     @RequestMapping(value = "/delete", method = RequestMethod.POST)
     @ApiResponses({@ApiResponse(code = 200, message = "删除成功", response = Result.class)})
     @ApiResponses({@ApiResponse(code = 200, message = "删除成功", response = Result.class)})
-    @OperationLogDetail(operationType = OperationTypeEnum.DELETE)
-    public Result deleteBasicExamStudent(@ApiParam(value = "选择要删除的考生id集合", required = true) @RequestParam List<String> idList) {
-        basicExamStudentService.deleteBatch(
-                idList.stream().map(SystemConstant::convertIdToLong).collect(Collectors.toList()));
+    @OperationLogDetail(operationType = OperationTypeEnum.DELETE, detail = "删除操作,考生ID集合:{{idList}}")
+    public Result deleteBasicExamStudent(@ApiParam(value = "考生id集合", required = true) @RequestParam List<Long> idList) {
+        basicExamStudentService.deleteBatch(idList);
         return ResultUtil.ok();
         return ResultUtil.ok();
     }
     }
 }
 }

+ 2 - 10
distributed-print/src/main/java/com/qmth/distributed/print/api/ConditionController.java

@@ -60,8 +60,8 @@ public class ConditionController {
     @RequestMapping(value = "/list_paper_number", method = RequestMethod.POST)
     @RequestMapping(value = "/list_paper_number", method = RequestMethod.POST)
     @ApiResponses({ @ApiResponse(code = 200, message = "查询成功", response = String.class) })
     @ApiResponses({ @ApiResponse(code = 200, message = "查询成功", response = String.class) })
     public Result listPaperNumber(@ApiParam(value = "学期ID") @RequestParam(required = false) Long semesterId, @ApiParam(value = "考试ID") @RequestParam(required = false) Long examId,
     public Result listPaperNumber(@ApiParam(value = "学期ID") @RequestParam(required = false) Long semesterId, @ApiParam(value = "考试ID") @RequestParam(required = false) Long examId,
-            @ApiParam(value = "课程代码") @RequestParam(required = false) String courseCode, @RequestParam(value = "printPlanId", required = false) List<String> printPlanId) {
-        return ResultUtil.ok(conditionService.listPaperNumber(semesterId, examId, courseCode, printPlanId));
+            @ApiParam(value = "课程代码") @RequestParam(required = false) Long courseId, @RequestParam(value = "printPlanId", required = false) List<String> printPlanId) {
+        return ResultUtil.ok(conditionService.listPaperNumber(semesterId, examId, courseId, printPlanId));
     }
     }
 
 
     @ApiOperation(value = "印刷计划")
     @ApiOperation(value = "印刷计划")
@@ -72,14 +72,6 @@ public class ConditionController {
         return ResultUtil.ok(conditionService.listPrintPlan(semesterId, examId, source));
         return ResultUtil.ok(conditionService.listPrintPlan(semesterId, examId, source));
     }
     }
 
 
-    @ApiOperation(value = "班级")
-    @RequestMapping(value = "/list_clazz", method = RequestMethod.POST)
-    @ApiResponses({ @ApiResponse(code = 200, message = "查询成功", response = BasicClazz.class) })
-    public Result listClazz(@ApiParam(value = "学期ID") @RequestParam(required = false) Long semesterId, @ApiParam(value = "考试ID") @RequestParam(required = false) Long examId,
-            @ApiParam(value = "课程代码") @RequestParam(required = false) String courseCode, @ApiParam(value = "班级名称") @RequestParam(required = false) String clazzName) {
-        return ResultUtil.ok(conditionService.listClazz(semesterId, examId, courseCode, clazzName));
-    }
-
     @ApiOperation(value = "学院")
     @ApiOperation(value = "学院")
     @RequestMapping(value = "/list_college", method = RequestMethod.POST)
     @RequestMapping(value = "/list_college", method = RequestMethod.POST)
     @ApiResponses({ @ApiResponse(code = 200, message = "查询成功", response = SysOrg.class) })
     @ApiResponses({ @ApiResponse(code = 200, message = "查询成功", response = SysOrg.class) })

+ 6 - 11
distributed-print/src/main/java/com/qmth/distributed/print/api/ExamCardController.java

@@ -119,17 +119,12 @@ public class ExamCardController {
         return ResultUtil.ok(examCard);
         return ResultUtil.ok(examCard);
     }
     }
 
 
-    /**
-     * 选择已有题卡列表
-     *
-     * @param examId     考试id
-     * @param courseCode 课程编号
-     * @return 结果
-     */
     @ApiOperation(value = "选择已有题卡列表")
     @ApiOperation(value = "选择已有题卡列表")
     @RequestMapping(value = "/select_card_list", method = RequestMethod.POST)
     @RequestMapping(value = "/select_card_list", method = RequestMethod.POST)
-    public Result selectCardList(@RequestParam Long examId, @RequestParam String courseCode, @RequestParam(required = false) String paperNumber) {
-        List<ExamCard> list = examCardService.listSelectCard(courseCode, examId, paperNumber);
+    public Result selectCardList(@ApiParam(value = "考试ID") @RequestParam Long examId,
+                                 @ApiParam(value = "课程ID") @RequestParam Long courseId,
+                                 @ApiParam(value = "试卷编号") @RequestParam(required = false) String paperNumber) {
+        List<ExamCard> list = examCardService.listSelectCard(examId, courseId, paperNumber);
         return ResultUtil.ok(list);
         return ResultUtil.ok(list);
     }
     }
 
 
@@ -142,8 +137,8 @@ public class ExamCardController {
     @RequestMapping(value = "/copy", method = RequestMethod.POST)
     @RequestMapping(value = "/copy", method = RequestMethod.POST)
     @OperationLogDetail(operationType = OperationTypeEnum.UPDATE, detail = "复制题卡操作,题卡ID:{{id}}")
     @OperationLogDetail(operationType = OperationTypeEnum.UPDATE, detail = "复制题卡操作,题卡ID:{{id}}")
     public Result copyCard(@RequestParam(value = "id") String id,
     public Result copyCard(@RequestParam(value = "id") String id,
-                           @RequestParam(value = "courseCode") String courseCode) {
-        Long copyCardId = examCardService.copyCard(SystemConstant.convertIdToLong(id), courseCode);
+                           @RequestParam(value = "courseId") Long courseId) {
+        Long copyCardId = examCardService.copyCard(SystemConstant.convertIdToLong(id), courseId);
         return ResultUtil.ok(String.valueOf(copyCardId), "");
         return ResultUtil.ok(String.valueOf(copyCardId), "");
     }
     }
 
 

+ 2 - 2
distributed-print/src/main/java/com/qmth/distributed/print/api/ExamPrintTaskController.java

@@ -66,7 +66,7 @@ public class ExamPrintTaskController {
                            @ApiParam(value = "考试ID") @RequestParam(required = false) String examId,
                            @ApiParam(value = "考试ID") @RequestParam(required = false) String examId,
                            @ApiParam(value = "印刷计划ID") @RequestParam(value = "printPlanId", required = false) Long printPlanId,
                            @ApiParam(value = "印刷计划ID") @RequestParam(value = "printPlanId", required = false) Long printPlanId,
                            @ApiParam(value = "印刷计划状态") @RequestParam(value = "status", required = false) String status,
                            @ApiParam(value = "印刷计划状态") @RequestParam(value = "status", required = false) String status,
-                           @ApiParam(value = "课程代码") @RequestParam(value = "courseCode", required = false) String courseCode,
+                           @ApiParam(value = "课程ID") @RequestParam(value = "courseId", required = false) Long courseId,
                            @ApiParam(value = "试卷编号") @RequestParam(value = "paperNumber", required = false) String paperNumber,
                            @ApiParam(value = "试卷编号") @RequestParam(value = "paperNumber", required = false) String paperNumber,
                            @ApiParam(value = "考点") @RequestParam(value = "examPlace", required = false) String examPlace,
                            @ApiParam(value = "考点") @RequestParam(value = "examPlace", required = false) String examPlace,
                            @ApiParam(value = "考场") @RequestParam(value = "examRoom", required = false) String examRoom,
                            @ApiParam(value = "考场") @RequestParam(value = "examRoom", required = false) String examRoom,
@@ -83,7 +83,7 @@ public class ExamPrintTaskController {
         if (examId == null) {
         if (examId == null) {
             throw ExceptionResultEnum.EXAM_ID_IS_NULL.exception();
             throw ExceptionResultEnum.EXAM_ID_IS_NULL.exception();
         }
         }
-        IPage<PrintTaskDto> examTasks = examDetailService.listPrintTask(SystemConstant.convertIdToLong(semesterId), SystemConstant.convertIdToLong(examId), printPlanId, status, courseCode, paperNumber, examPlace, examRoom, examStartTime, examEndTime, printStartTime, printEndTime, SystemConstant.convertIdToLong(printHouseId), pageNumber, pageSize);
+        IPage<PrintTaskDto> examTasks = examDetailService.listPrintTask(SystemConstant.convertIdToLong(semesterId), SystemConstant.convertIdToLong(examId), printPlanId, status, courseId, paperNumber, examPlace, examRoom, examStartTime, examEndTime, printStartTime, printEndTime, SystemConstant.convertIdToLong(printHouseId), pageNumber, pageSize);
         return ResultUtil.ok(examTasks);
         return ResultUtil.ok(examTasks);
     }
     }
 
 

+ 19 - 39
distributed-print/src/main/java/com/qmth/distributed/print/api/ExamTaskApplyController.java

@@ -52,54 +52,34 @@ public class ExamTaskApplyController {
 
 
     @Resource
     @Resource
     private ExamTaskService examTaskService;
     private ExamTaskService examTaskService;
-
     @Resource
     @Resource
     private PrintCommonService printCommonService;
     private PrintCommonService printCommonService;
-
     @Resource
     @Resource
     private ExamTaskPrintService examTaskPrintService;
     private ExamTaskPrintService examTaskPrintService;
-
     @Resource
     @Resource
-    TaskService taskService;
-
+    private TaskService taskService;
     @Resource
     @Resource
-    ActivitiService activitiService;
-
+    private ActivitiService activitiService;
     @Resource
     @Resource
-    TFFlowJoinService tfFlowJoinService;
+    private TFFlowJoinService tfFlowJoinService;
 
 
 
 
-    /**
-     * 入库申请-查询
-     *
-     * @param auditStatus
-     * @param cardRuleId
-     * @param courseCode
-     * @param paperNumber
-     * @param startTime
-     * @param endTime
-     * @param userName    命题老师名称
-     * @param pageNumber
-     * @param pageSize
-     * @return
-     */
     @ApiOperation(value = "入库申请-分页查询")
     @ApiOperation(value = "入库申请-分页查询")
     @RequestMapping(value = "/apply_list", method = RequestMethod.POST)
     @RequestMapping(value = "/apply_list", method = RequestMethod.POST)
-    public Result taskApplyList(@RequestParam(value = "semesterId", required = false) Long semesterId,
-                                @RequestParam(value = "examId", required = false) Long examId,
-                                @RequestParam(value = "auditStatus", required = false) String auditStatus,
-                                @RequestParam(value = "cardRuleId", required = false) String cardRuleId,
-                                @RequestParam(value = "courseCode", required = false) String courseCode,
-                                @RequestParam(value = "paperNumber", required = false) String paperNumber,
-                                @RequestParam(value = "startTime", required = false) Long startTime,
-                                @RequestParam(value = "endTime", required = false) Long endTime,
-                                @RequestParam(value = "userName", required = false) String userName,
-                                @RequestParam @Min(SystemConstant.PAGE_NUMBER_MIN) Integer pageNumber,
-                                @RequestParam @Min(SystemConstant.PAGE_SIZE_MIN) @Max(SystemConstant.PAGE_SIZE_MAX) Integer pageSize) {
+    public Result taskApplyList(@ApiParam(value = "学期ID") @RequestParam(value = "semesterId", required = false) Long semesterId,
+                                @ApiParam(value = "考试ID") @RequestParam(value = "examId", required = false) Long examId,
+                                @ApiParam(value = "课程ID") @RequestParam(value = "courseId", required = false) Long courseId,
+                                @ApiParam(value = "试卷编号") @RequestParam(value = "paperNumber", required = false) String paperNumber,
+                                @ApiParam(value = "审核状态") @RequestParam(value = "auditStatus", required = false) String auditStatus,
+                                @ApiParam(value = "命题老师") @RequestParam(value = "userName", required = false) String userName,
+                                @ApiParam(value = "命题时间(开始)") @RequestParam(value = "startTime", required = false) Long startTime,
+                                @ApiParam(value = "命题时间(结束)") @RequestParam(value = "endTime", required = false) Long endTime,
+                                @ApiParam(value = "分页参数") @RequestParam @Min(SystemConstant.PAGE_NUMBER_MIN) Integer pageNumber,
+                                @ApiParam(value = "分页参数") @RequestParam @Min(SystemConstant.PAGE_SIZE_MIN) @Max(SystemConstant.PAGE_SIZE_MAX) Integer pageSize) {
         if (examId == null) {
         if (examId == null) {
             throw ExceptionResultEnum.EXAM_ID_IS_NULL.exception();
             throw ExceptionResultEnum.EXAM_ID_IS_NULL.exception();
         }
         }
-        return ResultUtil.ok(examTaskService.listTaskApply(semesterId, examId, auditStatus, SystemConstant.convertIdToLong(cardRuleId), courseCode, paperNumber, startTime, endTime, userName, pageNumber, pageSize));
+        return ResultUtil.ok(examTaskService.listTaskApply(semesterId, examId, auditStatus, courseId, paperNumber, startTime, endTime, userName, pageNumber, pageSize));
     }
     }
 
 
     /**
     /**
@@ -165,7 +145,7 @@ public class ExamTaskApplyController {
         ExamTask examTask = examTaskService.getById(examTaskDetail.getExamTaskId());
         ExamTask examTask = examTaskService.getById(examTaskDetail.getExamTaskId());
         if (examTaskDetail.getOperateType().equals(ExamStatusEnum.SUBMIT.name()) && (Objects.nonNull(examTask.getReview()) && !examTask.getReview())) {
         if (examTaskDetail.getOperateType().equals(ExamStatusEnum.SUBMIT.name()) && (Objects.nonNull(examTask.getReview()) && !examTask.getReview())) {
             // 校验是否可以提交打印状态
             // 校验是否可以提交打印状态
-            printCommonService.checkExamDataAndCreatePdfTask(examTask.getSchoolId(), examTask.getExamId(), examTask.getCourseCode(), examTask.getPaperNumber(), (SysUser) ServletUtil.getRequestUser());
+            printCommonService.checkExamDataAndCreatePdfTask(examTask.getSchoolId(), examTask.getExamId(), examTask.getCourseId(), examTask.getPaperNumber(), (SysUser) ServletUtil.getRequestUser());
         }
         }
         Boolean sendFlowMq = (Boolean) map.get(SystemConstant.SEND_FLOW_MQ);
         Boolean sendFlowMq = (Boolean) map.get(SystemConstant.SEND_FLOW_MQ);
         if (Objects.nonNull(sendFlowMq) && sendFlowMq) {
         if (Objects.nonNull(sendFlowMq) && sendFlowMq) {
@@ -205,7 +185,7 @@ public class ExamTaskApplyController {
         ExamTask examTask = (ExamTask) map.get(SystemConstant.EXAM_TASK);
         ExamTask examTask = (ExamTask) map.get(SystemConstant.EXAM_TASK);
         if (Objects.nonNull(examTask.getReview()) && !examTask.getReview()) {
         if (Objects.nonNull(examTask.getReview()) && !examTask.getReview()) {
             // 校验是否可以提交打印状态
             // 校验是否可以提交打印状态
-            printCommonService.checkExamDataAndCreatePdfTask(examTask.getSchoolId(), examTask.getExamId(), examTask.getCourseCode(), examTask.getPaperNumber(), (SysUser) ServletUtil.getRequestUser());
+            printCommonService.checkExamDataAndCreatePdfTask(examTask.getSchoolId(), examTask.getExamId(), examTask.getCourseId(), examTask.getPaperNumber(), (SysUser) ServletUtil.getRequestUser());
         }
         }
         Boolean sendFlowStartMq = (Boolean) map.get(SystemConstant.SEND_FLOW_START_MQ);
         Boolean sendFlowStartMq = (Boolean) map.get(SystemConstant.SEND_FLOW_START_MQ);
         Boolean sendFlowMq = (Boolean) map.get(SystemConstant.SEND_FLOW_MQ);
         Boolean sendFlowMq = (Boolean) map.get(SystemConstant.SEND_FLOW_MQ);
@@ -247,12 +227,12 @@ public class ExamTaskApplyController {
     @RequestMapping(value = "/find_exam_task_student_object", method = RequestMethod.POST)
     @RequestMapping(value = "/find_exam_task_student_object", method = RequestMethod.POST)
     @Transactional(rollbackFor = Exception.class)
     @Transactional(rollbackFor = Exception.class)
     @ApiResponses({@ApiResponse(code = 200, message = "{\"success\":true}", response = Result.class)})
     @ApiResponses({@ApiResponse(code = 200, message = "{\"success\":true}", response = Result.class)})
-    public Result findExamTaskStudentObject(@RequestParam(required = false) String examId,
-                                            @RequestParam(required = false) String courseCode,
+    public Result findExamTaskStudentObject(@RequestParam(required = false) Long examId,
+                                            @RequestParam(required = false) Long courseId,
                                             @RequestParam(required = false) String teacher,
                                             @RequestParam(required = false) String teacher,
                                             @RequestParam(required = false) String className) throws Exception {
                                             @RequestParam(required = false) String className) throws Exception {
         SysUser requestUser = (SysUser) ServletUtil.getRequestUser();
         SysUser requestUser = (SysUser) ServletUtil.getRequestUser();
-        return ResultUtil.ok(examTaskService.findExamTaskStudentObject(SystemConstant.convertIdToLong(examId), courseCode, teacher, className, requestUser));
+        return ResultUtil.ok(examTaskService.findExamTaskStudentObject(examId, courseId, teacher, className, requestUser));
     }
     }
 
 
     @ApiOperation(value = "入库申请-导入考生对象")
     @ApiOperation(value = "入库申请-导入考生对象")

+ 30 - 64
distributed-print/src/main/java/com/qmth/distributed/print/api/ExamTaskAuditController.java

@@ -74,79 +74,45 @@ public class ExamTaskAuditController {
         return ResultUtil.ok();
         return ResultUtil.ok();
     }
     }
 
 
-    /**
-     * 入库审核-查询-未审核
-     *
-     * @param courseCode
-     * @param paperNumber
-     * @param userId
-     * @param cardRuleId
-     * @param startTime
-     * @param endTime
-     * @param startCreateTime 申请时间-起始
-     * @param endCreateTime   申请时间-终止
-     * @param createName      创建人
-     * @param pageNumber
-     * @param pageSize
-     * @return
-     */
     @ApiOperation(value = "入库审核-查询-未审核")
     @ApiOperation(value = "入库审核-查询-未审核")
     @RequestMapping(value = "/review_list_unaudited", method = RequestMethod.POST)
     @RequestMapping(value = "/review_list_unaudited", method = RequestMethod.POST)
-    public Result taskReviewListUnaudited(@RequestParam(value = "semesterId", required = false) Long semesterId,
-                                          @RequestParam(value = "examId", required = false) Long examId,
-                                          @RequestParam(value = "courseCode", required = false) String courseCode,
-                                          @RequestParam(value = "paperNumber", required = false) String paperNumber,
-                                          @RequestParam(value = "userId", required = false) Long userId,
-                                          @RequestParam(value = "cardRuleId", required = false) String cardRuleId,
-                                          @RequestParam(value = "startTime", required = false) Long startTime,
-                                          @RequestParam(value = "endTime", required = false) Long endTime,
-                                          @RequestParam(value = "startCreateTime", required = false) Long startCreateTime,
-                                          @RequestParam(value = "endCreateTime", required = false) Long endCreateTime,
-                                          @RequestParam(value = "createName", required = false) String createName,
-                                          @RequestParam @Min(SystemConstant.PAGE_NUMBER_MIN) Integer pageNumber,
-                                          @RequestParam @Min(SystemConstant.PAGE_SIZE_MIN) @Max(SystemConstant.PAGE_SIZE_MAX) Integer pageSize) {
-        if(examId == null){
+    public Result taskReviewListUnaudited(@ApiParam(value = "学期ID") @RequestParam(value = "semesterId", required = false) Long semesterId,
+                                          @ApiParam(value = "考试ID") @RequestParam(value = "examId", required = false) Long examId,
+                                          @ApiParam(value = "课程ID") @RequestParam(value = "courseId", required = false) Long courseId,
+                                          @ApiParam(value = "试卷编号") @RequestParam(value = "paperNumber", required = false) String paperNumber,
+                                          @ApiParam(value = "命题老师ID") @RequestParam(value = "userId", required = false) Long userId,
+                                          @ApiParam(value = "命题时间(开始)") @RequestParam(value = "startTime", required = false) Long startTime,
+                                          @ApiParam(value = "命题时间(结束)") @RequestParam(value = "endTime", required = false) Long endTime,
+                                          @ApiParam(value = "申请时间(开始)") @RequestParam(value = "startCreateTime", required = false) Long startCreateTime,
+                                          @ApiParam(value = "申请时间(结束)") @RequestParam(value = "endCreateTime", required = false) Long endCreateTime,
+                                          @ApiParam(value = "分页参数") @RequestParam @Min(SystemConstant.PAGE_NUMBER_MIN) Integer pageNumber,
+                                          @ApiParam(value = "分页参数") @RequestParam @Min(SystemConstant.PAGE_SIZE_MIN) @Max(SystemConstant.PAGE_SIZE_MAX) Integer pageSize) {
+        if (semesterId == null) {
+            throw ExceptionResultEnum.SEMESTER_ID_IS_NULL.exception();
+        }
+        if (examId == null) {
             throw ExceptionResultEnum.EXAM_ID_IS_NULL.exception();
             throw ExceptionResultEnum.EXAM_ID_IS_NULL.exception();
         }
         }
-        return ResultUtil.ok(examTaskService.listTaskReviewUnaudited(semesterId, examId, courseCode, paperNumber, userId, SystemConstant.convertIdToLong(cardRuleId), startTime, endTime, startCreateTime, endCreateTime, createName, pageNumber, pageSize));
+        return ResultUtil.ok(examTaskService.listTaskReviewUnaudited(semesterId, examId, courseId, paperNumber, userId, startTime, endTime, startCreateTime, endCreateTime, pageNumber, pageSize));
     }
     }
 
 
-    /**
-     * 入库审核-查询-未审核
-     *
-     * @param courseCode      课程代码
-     * @param paperNumber     试卷编号
-     * @param userId          命题老师ID
-     * @param cardRuleId      题卡规则ID
-     * @param startTime       开始时间
-     * @param endTime         结束时间
-     * @param startCreateTime 申请时间-起始
-     * @param endCreateTime   申请时间-终止
-     * @param createName      创建人
-     * @param pageNumber      分页参数
-     * @param pageSize        分页参数
-     * @return Result
-     */
     @ApiOperation(value = "入库审核-查询-已审核")
     @ApiOperation(value = "入库审核-查询-已审核")
     @RequestMapping(value = "/review_list_audited", method = RequestMethod.POST)
     @RequestMapping(value = "/review_list_audited", method = RequestMethod.POST)
-    public Result taskReviewListAudited(@RequestParam(value = "semesterId", required = false) Long semesterId,
-                                        @RequestParam(value = "examId", required = false) Long examId,
-                                        @RequestParam(value = "reviewStatus", required = false) String reviewStatus,
-                                        @RequestParam(value = "courseCode", required = false) String courseCode,
-                                        @RequestParam(value = "paperNumber", required = false) String paperNumber,
-                                        @RequestParam(value = "userId", required = false) Long userId,
-                                        @RequestParam(value = "cardRuleId", required = false) String cardRuleId,
-                                        @RequestParam(value = "startTime", required = false) Long startTime,
-                                        @RequestParam(value = "endTime", required = false) Long endTime,
-                                        @RequestParam(value = "startCreateTime", required = false) Long startCreateTime,
-                                        @RequestParam(value = "endCreateTime", required = false) Long endCreateTime,
-                                        @RequestParam(value = "createName", required = false) String createName,
-                                        @RequestParam @Min(SystemConstant.PAGE_NUMBER_MIN) Integer pageNumber,
-                                        @RequestParam @Min(SystemConstant.PAGE_SIZE_MIN) @Max(SystemConstant.PAGE_SIZE_MAX) Integer pageSize) {
-        if(examId == null){
+    public Result taskReviewListAudited(@ApiParam(value = "学期ID") @RequestParam(value = "semesterId", required = false) Long semesterId,
+                                        @ApiParam(value = "考试ID") @RequestParam(value = "examId", required = false) Long examId,
+                                        @ApiParam(value = "课程ID") @RequestParam(value = "courseId", required = false) Long courseId,
+                                        @ApiParam(value = "试卷编号") @RequestParam(value = "paperNumber", required = false) String paperNumber,
+                                        @ApiParam(value = "命题老师ID") @RequestParam(value = "userId", required = false) Long userId,
+                                        @ApiParam(value = "命题时间(开始)") @RequestParam(value = "startTime", required = false) Long startTime,
+                                        @ApiParam(value = "命题时间(结束)") @RequestParam(value = "endTime", required = false) Long endTime,
+                                        @ApiParam(value = "申请时间(开始)") @RequestParam(value = "startCreateTime", required = false) Long startCreateTime,
+                                        @ApiParam(value = "申请时间(结束)") @RequestParam(value = "endCreateTime", required = false) Long endCreateTime,
+                                        @ApiParam(value = "分页参数") @RequestParam @Min(SystemConstant.PAGE_NUMBER_MIN) Integer pageNumber,
+                                        @ApiParam(value = "分页参数") @RequestParam @Min(SystemConstant.PAGE_SIZE_MIN) @Max(SystemConstant.PAGE_SIZE_MAX) Integer pageSize) {
+        if (examId == null) {
             throw ExceptionResultEnum.EXAM_ID_IS_NULL.exception();
             throw ExceptionResultEnum.EXAM_ID_IS_NULL.exception();
         }
         }
-        return ResultUtil.ok(examTaskService.listTaskReviewAudited(semesterId, examId, reviewStatus, courseCode, paperNumber, userId, SystemConstant.convertIdToLong(cardRuleId), startTime, endTime, startCreateTime, endCreateTime, createName, pageNumber, pageSize));
+        return ResultUtil.ok(examTaskService.listTaskReviewAudited(semesterId, examId, courseId, paperNumber, userId, startTime, endTime, startCreateTime, endCreateTime, pageNumber, pageSize));
     }
     }
 
 
     /**
     /**
@@ -157,7 +123,7 @@ public class ExamTaskAuditController {
     @ApiOperation(value = "入库审核-查询-已审核数量")
     @ApiOperation(value = "入库审核-查询-已审核数量")
     @RequestMapping(value = "/review_list_audited_count", method = RequestMethod.POST)
     @RequestMapping(value = "/review_list_audited_count", method = RequestMethod.POST)
     public Result taskReviewListAuditedCount() {
     public Result taskReviewListAuditedCount() {
-        int taskReviewAuditedCount = examTaskService.listTaskReviewAudited(null, null, null, null, null, null, null, null, null, null, null, null, SystemConstant.PAGE_NUMBER, SystemConstant.PAGE_SIZE).getRecords().size();
+        int taskReviewAuditedCount = examTaskService.listTaskReviewAudited(null, null, null, null, null, null, null, null, null, SystemConstant.PAGE_NUMBER, SystemConstant.PAGE_SIZE).getRecords().size();
         long paperCount = markPaperService.countByPropositionTeacherId(true);
         long paperCount = markPaperService.countByPropositionTeacherId(true);
         long gradeCount = gradeInitializeService.countByPropositionTeacherId(GradeAnalyzePaperStatusEnum.SETTING_GRADE_PAPER_PARAM, true);
         long gradeCount = gradeInitializeService.countByPropositionTeacherId(GradeAnalyzePaperStatusEnum.SETTING_GRADE_PAPER_PARAM, true);
         return ResultUtil.ok(taskReviewAuditedCount + paperCount + gradeCount);
         return ResultUtil.ok(taskReviewAuditedCount + paperCount + gradeCount);

+ 16 - 36
distributed-print/src/main/java/com/qmth/distributed/print/api/ExamTaskController.java

@@ -48,57 +48,37 @@ public class ExamTaskController {
 
 
     @Resource
     @Resource
     private ExamTaskService examTaskService;
     private ExamTaskService examTaskService;
-
     @Resource
     @Resource
     private BasicAttachmentService basicAttachmentService;
     private BasicAttachmentService basicAttachmentService;
-
     @Resource
     @Resource
     private PrintCommonService printCommonService;
     private PrintCommonService printCommonService;
-
     @Resource
     @Resource
     private ExamTaskPrintService examTaskPrintService;
     private ExamTaskPrintService examTaskPrintService;
-
     @Resource
     @Resource
     ActivitiService activitiService;
     ActivitiService activitiService;
-
     @Resource
     @Resource
     ExamTaskApplyTempService examTaskApplyTempService;
     ExamTaskApplyTempService examTaskApplyTempService;
 
 
-    /**
-     * 命题任务管理-查询
-     *
-     * @param enable      正常/禁用
-     * @param status      状态
-     * @param cardRuleId  题卡规则ID
-     * @param courseCode  课程代码
-     * @param paperNumber 试卷编号
-     * @param startTime   开始时间
-     * @param endTime     结束时间
-     * @param userName    命题老师名称
-     * @param createName  创建人名称
-     * @param pageNumber  分页参数
-     * @param pageSize    分页参数
-     * @return Result
-     */
     @ApiOperation(value = "命题任务管理-分页查询")
     @ApiOperation(value = "命题任务管理-分页查询")
     @RequestMapping(value = "/list", method = RequestMethod.POST)
     @RequestMapping(value = "/list", method = RequestMethod.POST)
-    public Result list(@RequestParam(required = false) String semesterId,
-                       @RequestParam(required = false) String examId,
-                       @RequestParam(required = false) Boolean enable,
-                       @RequestParam(required = false) String status,
-                       @RequestParam(required = false) String cardRuleId,
-                       @RequestParam(required = false) String courseCode,
-                       @RequestParam(required = false) String paperNumber,
-                       @RequestParam(required = false) Long startTime,
-                       @RequestParam(required = false) Long endTime,
-                       @RequestParam(required = false) String userName,
-                       @RequestParam(required = false) String createName,
-                       @RequestParam @Min(SystemConstant.PAGE_NUMBER_MIN) Integer pageNumber,
-                       @RequestParam @Min(SystemConstant.PAGE_SIZE_MIN) @Max(SystemConstant.PAGE_SIZE_MAX) Integer pageSize) {
-        if(examId == null){
+    public Result list(@ApiParam(value = "学期ID") @RequestParam(required = false) String semesterId,
+                       @ApiParam(value = "考试ID") @RequestParam(required = false) String examId,
+                       @ApiParam(value = "课程ID") @RequestParam(required = false) Long courseId,
+                       @ApiParam(value = "试卷编号") @RequestParam(required = false) String paperNumber,
+                       @ApiParam(value = "命题状态") @RequestParam(required = false) String status,
+                       @ApiParam(value = "命题老师姓名") @RequestParam(required = false) String userName,
+                       @ApiParam(value = "命题时间(开始)") @RequestParam(required = false) Long startTime,
+                       @ApiParam(value = "命题时间(结束)") @RequestParam(required = false) Long endTime,
+                       @ApiParam(value = "启用/禁用状态") @RequestParam(required = false) Boolean enable,
+                       @ApiParam(value = "分页参数") @RequestParam @Min(SystemConstant.PAGE_NUMBER_MIN) Integer pageNumber,
+                       @ApiParam(value = "分页参数") @RequestParam @Min(SystemConstant.PAGE_SIZE_MIN) @Max(SystemConstant.PAGE_SIZE_MAX) Integer pageSize) {
+        if (semesterId == null) {
+            throw ExceptionResultEnum.SEMESTER_ID_IS_NULL.exception();
+        }
+        if (examId == null) {
             throw ExceptionResultEnum.EXAM_ID_IS_NULL.exception();
             throw ExceptionResultEnum.EXAM_ID_IS_NULL.exception();
         }
         }
-        return ResultUtil.ok(examTaskService.list(SystemConstant.convertIdToLong(semesterId), SystemConstant.convertIdToLong(examId), enable, status, SystemConstant.convertIdToLong(cardRuleId), courseCode, paperNumber, startTime, endTime, userName, createName, pageNumber, pageSize));
+        return ResultUtil.ok(examTaskService.list(SystemConstant.convertIdToLong(semesterId), SystemConstant.convertIdToLong(examId), enable, status, courseId, paperNumber, startTime, endTime, userName, pageNumber, pageSize));
     }
     }
 
 
     /**
     /**

+ 27 - 39
distributed-print/src/main/java/com/qmth/distributed/print/api/ExamTaskQueryController.java

@@ -16,10 +16,7 @@ import com.qmth.teachcloud.common.enums.log.OperationTypeEnum;
 import com.qmth.teachcloud.common.util.Result;
 import com.qmth.teachcloud.common.util.Result;
 import com.qmth.teachcloud.common.util.ResultUtil;
 import com.qmth.teachcloud.common.util.ResultUtil;
 import com.qmth.teachcloud.common.util.ServletUtil;
 import com.qmth.teachcloud.common.util.ServletUtil;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import io.swagger.annotations.ApiResponse;
-import io.swagger.annotations.ApiResponses;
+import io.swagger.annotations.*;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.bind.annotation.*;
 
 
@@ -56,33 +53,23 @@ public class ExamTaskQueryController {
     @Resource
     @Resource
     private ActivitiService activitiService;
     private ActivitiService activitiService;
 
 
-    /**
-     * 卷库查询
-     *
-     * @param courseCode  课程代码
-     * @param paperNumber 试卷编号
-     * @param startTime   开始时间
-     * @param endTime     结束时间
-     * @param pageNumber  分页参数
-     * @param pageSize    分页参数
-     * @return Result
-     */
-    @ApiOperation(value = "卷库查询")
+    @ApiOperation(value = "卷库查询-分页查询")
     @RequestMapping(value = "/paper_list", method = RequestMethod.POST)
     @RequestMapping(value = "/paper_list", method = RequestMethod.POST)
-    public Result taskPaperList(@RequestParam(value = "semesterId", required = false) Long semesterId,
-                                @RequestParam(value = "examId", required = false) Long examId,
-                                @RequestParam(value = "courseCode", required = false) String courseCode,
-                                @RequestParam(value = "paperNumber", required = false) String paperNumber,
-                                @RequestParam(value = "startTime", required = false) Long startTime,
-                                @RequestParam(value = "endTime", required = false) Long endTime,
-                                @RequestParam(value = "makeMethod", required = false) MakeMethodEnum makeMethod,
-                                @RequestParam(value = "cardRuleId", required = false) String cardRuleId,
-                                @RequestParam @Min(SystemConstant.PAGE_NUMBER_MIN) Integer pageNumber,
-                                @RequestParam @Min(SystemConstant.PAGE_SIZE_MIN) @Max(SystemConstant.PAGE_SIZE_MAX) Integer pageSize) {
-        if(examId == null){
+    public Result taskPaperList(@ApiParam(value = "学期ID") @RequestParam(value = "semesterId", required = false) Long semesterId,
+                                @ApiParam(value = "考试ID") @RequestParam(value = "examId", required = false) Long examId,
+                                @ApiParam(value = "课程ID") @RequestParam(value = "courseCode", required = false) Long courseId,
+                                @ApiParam(value = "试卷编号") @RequestParam(value = "paperNumber", required = false) String paperNumber,
+                                @ApiParam(value = "入库时间(开始)") @RequestParam(value = "startTime", required = false) Long startTime,
+                                @ApiParam(value = "入库时间(结束)") @RequestParam(value = "endTime", required = false) Long endTime,
+                                @ApiParam(value = "分页参数") @RequestParam @Min(SystemConstant.PAGE_NUMBER_MIN) Integer pageNumber,
+                                @ApiParam(value = "分页参数") @RequestParam @Min(SystemConstant.PAGE_SIZE_MIN) @Max(SystemConstant.PAGE_SIZE_MAX) Integer pageSize) {
+        if (semesterId == null) {
+            throw ExceptionResultEnum.SEMESTER_ID_IS_NULL.exception();
+        }
+        if (examId == null) {
             throw ExceptionResultEnum.EXAM_ID_IS_NULL.exception();
             throw ExceptionResultEnum.EXAM_ID_IS_NULL.exception();
         }
         }
-        return ResultUtil.ok(examTaskService.listTaskPaper(semesterId, examId, courseCode, paperNumber, startTime, endTime, makeMethod, SystemConstant.convertIdToLong(cardRuleId), pageNumber, pageSize));
+        return ResultUtil.ok(examTaskService.listTaskPaper(semesterId, examId, courseId, paperNumber, startTime, endTime, pageNumber, pageSize));
     }
     }
 
 
     /**
     /**
@@ -116,7 +103,7 @@ public class ExamTaskQueryController {
             Boolean isCreate = printCommonService.checkExamDetailStatus(examTask.getSchoolId(), null, examTask.getExamId(), examTask.getCourseCode(), examTask.getPaperNumber());
             Boolean isCreate = printCommonService.checkExamDetailStatus(examTask.getSchoolId(), null, examTask.getExamId(), examTask.getCourseCode(), examTask.getPaperNumber());
             // 校验是否可以提交打印状态
             // 校验是否可以提交打印状态
             if (isCreate) {
             if (isCreate) {
-                printCommonService.checkExamDataAndCreatePdfTask(examTask.getSchoolId(), examTask.getExamId(), examTask.getCourseCode(), examTask.getPaperNumber(), sysUser);
+                printCommonService.checkExamDataAndCreatePdfTask(examTask.getSchoolId(), examTask.getExamId(), examTask.getCourseId(), examTask.getPaperNumber(), sysUser);
             }
             }
         }
         }
         return ResultUtil.ok(isSuccess);
         return ResultUtil.ok(isSuccess);
@@ -163,18 +150,19 @@ public class ExamTaskQueryController {
     @RequestMapping(value = "/paper_card_download_pdf", method = RequestMethod.POST)
     @RequestMapping(value = "/paper_card_download_pdf", method = RequestMethod.POST)
     @ApiResponses({@ApiResponse(code = 200, message = "返回信息", response = EditResult.class)})
     @ApiResponses({@ApiResponse(code = 200, message = "返回信息", response = EditResult.class)})
     @OperationLogDetail(operationType = OperationTypeEnum.EXPORT, detail = "批量下载试卷PDF、题卡操作,考试ID:{{examId}}、课程代码:{{courseCode}}、试卷编号:{{paperNumber}}")
     @OperationLogDetail(operationType = OperationTypeEnum.EXPORT, detail = "批量下载试卷PDF、题卡操作,考试ID:{{examId}}、课程代码:{{courseCode}}、试卷编号:{{paperNumber}}")
-    public Result paperCardDownloadPdf(@RequestParam(value = "semesterId", required = false) Long semesterId,
-                                       @RequestParam(value = "examId", required = false) Long examId,
-                                       @RequestParam(value = "courseCode", required = false) String courseCode,
-                                       @RequestParam(value = "paperNumber", required = false) String paperNumber,
-                                       @RequestParam(value = "cardRuleId", required = false) Long cardRuleId,
-                                       @RequestParam(value = "makeMethod", required = false) MakeMethodEnum makeMethod,
-                                       @RequestParam(value = "startTime", required = false) Long startTime,
-                                       @RequestParam(value = "endTime", required = false) Long endTime) {
-        if(examId == null){
+    public Result paperCardDownloadPdf(@ApiParam(value = "学期ID") @RequestParam(value = "semesterId", required = false) Long semesterId,
+                                       @ApiParam(value = "考试ID") @RequestParam(value = "examId", required = false) Long examId,
+                                       @ApiParam(value = "课程ID") @RequestParam(value = "courseCode", required = false) Long courseId,
+                                       @ApiParam(value = "试卷编号") @RequestParam(value = "paperNumber", required = false) String paperNumber,
+                                       @ApiParam(value = "入库时间(开始)") @RequestParam(value = "startTime", required = false) Long startTime,
+                                       @ApiParam(value = "入库时间(结束)") @RequestParam(value = "endTime", required = false) Long endTime) {
+        if (semesterId == null) {
+            throw ExceptionResultEnum.SEMESTER_ID_IS_NULL.exception();
+        }
+        if (examId == null) {
             throw ExceptionResultEnum.EXAM_ID_IS_NULL.exception();
             throw ExceptionResultEnum.EXAM_ID_IS_NULL.exception();
         }
         }
-        TBTask tbTask = examTaskService.taskDownloadPdf(semesterId, examId, courseCode, paperNumber, cardRuleId, makeMethod, startTime, endTime);
+        TBTask tbTask = examTaskService.taskDownloadPdf(semesterId, examId, courseId, paperNumber, startTime, endTime);
         return Objects.nonNull(tbTask) ? ResultUtil.ok(new EditResult(tbTask.getId())) : ResultUtil.error("创建任务失败");
         return Objects.nonNull(tbTask) ? ResultUtil.ok(new EditResult(tbTask.getId())) : ResultUtil.error("创建任务失败");
     }
     }
 
 

+ 0 - 8
distributed-print/src/main/java/com/qmth/distributed/print/api/SysController.java

@@ -645,14 +645,6 @@ public class SysController {
         return ResultUtil.ok(System.currentTimeMillis());
         return ResultUtil.ok(System.currentTimeMillis());
     }
     }
 
 
-    @ApiOperation(value = "获取系统编码")
-    @RequestMapping(value = "/get_code", method = RequestMethod.POST)
-    public Result getCode(@ApiParam(value = "编码类型", required = true) @RequestParam SystemCodeEnum type) {
-        SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
-        String number = teachcloudCommonService.getSysIncrCode(type, sysUser);
-        return ResultUtil.ok((Object) number);
-    }
-
     @ApiOperation(value = "共用接口-查询字典")
     @ApiOperation(value = "共用接口-查询字典")
     @RequestMapping(value = "/get_dictionary", method = RequestMethod.POST)
     @RequestMapping(value = "/get_dictionary", method = RequestMethod.POST)
     @ApiResponses({@ApiResponse(code = 200, message = "查询成功", response = Result.class)})
     @ApiResponses({@ApiResponse(code = 200, message = "查询成功", response = Result.class)})

+ 8 - 22
distributed-print/src/main/java/com/qmth/distributed/print/api/SysOrgController.java

@@ -39,9 +39,6 @@ public class SysOrgController {
 
 
     @Resource
     @Resource
     private SysOrgService sysOrgService;
     private SysOrgService sysOrgService;
-
-    @Resource
-    private PrintCommonService printCommonService;
     @Resource
     @Resource
     private TeachcloudCommonService teachcloudCommonService;
     private TeachcloudCommonService teachcloudCommonService;
 
 
@@ -52,12 +49,14 @@ public class SysOrgController {
      */
      */
     @ApiOperation(value = "查询")
     @ApiOperation(value = "查询")
     @RequestMapping(value = "/list", method = RequestMethod.POST)
     @RequestMapping(value = "/list", method = RequestMethod.POST)
-    public Result list(@RequestParam(value = "specialPrivilege", required = false) RoleTypeEnum specialPrivilege,
-                       @RequestParam(value = "withoutPrintingRoom", required = false) boolean withoutPrintingRoom,
-                       @ApiParam(value = "科目编码") @RequestParam(required = false) String courseCode,
-                       @ApiParam(value = "父机构ID") @RequestParam(required = false) Long orgId) {
+    public Result list(@ApiParam(value = "指定角色类型") @RequestParam(required = false) RoleTypeEnum specialPrivilege,
+                       @ApiParam(value = "是否过滤印刷室") @RequestParam(required = false) boolean withoutPrintingRoom,
+                       @ApiParam(value = "课程ID") @RequestParam(required = false) Long courseId,
+                       @ApiParam(value = "父机构ID") @RequestParam(required = false) Long orgId,
+                       @ApiParam(value = "是否包含课程") @RequestParam(required = false) boolean includeCourse,
+                       @ApiParam(value = "是否包含用户") @RequestParam(required = false) boolean includeUser) {
         Set<Long> longSet = teachcloudCommonService.listSubOrgIds(orgId);
         Set<Long> longSet = teachcloudCommonService.listSubOrgIds(orgId);
-        return ResultUtil.ok(sysOrgService.listOrgTree(specialPrivilege, withoutPrintingRoom, courseCode, longSet));
+        return ResultUtil.ok(sysOrgService.listOrgTree(specialPrivilege, withoutPrintingRoom, courseId, longSet));
     }
     }
 
 
     /**
     /**
@@ -77,19 +76,6 @@ public class SysOrgController {
         return ResultUtil.ok(sysOrgService.saveOrg(org, sysUser));
         return ResultUtil.ok(sysOrgService.saveOrg(org, sysUser));
     }
     }
 
 
-    /**
-     * 启用/禁用
-     *
-     * @param org
-     * @return
-     */
-    @ApiOperation(value = "启用/禁用")
-    @RequestMapping(value = "/enable", method = RequestMethod.POST)
-    @OperationLogDetail(operationType = OperationTypeEnum.ENABLE, detail = "启用/禁用操作,机构ID:{{org.id}},启用/禁用状态:{{org.enable}}")
-    public Result enable(@RequestBody SysOrg org) {
-        return ResultUtil.ok(printCommonService.enable(org));
-    }
-
     /**
     /**
      * 删除
      * 删除
      *
      *
@@ -100,7 +86,7 @@ public class SysOrgController {
     @RequestMapping(value = "/remove", method = RequestMethod.POST)
     @RequestMapping(value = "/remove", method = RequestMethod.POST)
     @OperationLogDetail(operationType = OperationTypeEnum.DELETE, detail = "删除操作,机构ID:{{org.id}}")
     @OperationLogDetail(operationType = OperationTypeEnum.DELETE, detail = "删除操作,机构ID:{{org.id}}")
     public Result remove(@RequestBody SysOrg org) {
     public Result remove(@RequestBody SysOrg org) {
-        return ResultUtil.ok(printCommonService.sysOrgRemove(org.getId()));
+        return ResultUtil.ok(sysOrgService.delete(org.getId()));
     }
     }
 
 
     /**
     /**

+ 3 - 7
distributed-print/src/main/java/com/qmth/distributed/print/api/SysUserController.java

@@ -97,16 +97,12 @@ public class SysUserController {
 
 
     /**
     /**
      * 根据科目查询命题老师
      * 根据科目查询命题老师
-     *
-     * @param courseCode
-     * @param param
-     * @return
      */
      */
-    @ApiOperation(value = "根据科目查询命题老师")
+    @ApiOperation(value = "命题任务管理-根据科目查询命题老师")
     @RequestMapping(value = "/user_list", method = RequestMethod.POST)
     @RequestMapping(value = "/user_list", method = RequestMethod.POST)
-    public Result userQuery(@RequestParam(value = "courseCode", required = false) String courseCode,
+    public Result userQuery(@ApiParam(value = "课程ID") @RequestParam(value = "courseId", required = false) Long courseId,
                             @RequestParam(value = "param", required = false) String param) {
                             @RequestParam(value = "param", required = false) String param) {
-        return ResultUtil.ok(sysUserService.listUser(courseCode, param));
+        return ResultUtil.ok(sysUserService.listUser(courseId, param));
     }
     }
 
 
     /**
     /**

+ 1 - 1
distributed-print/src/main/java/com/qmth/distributed/print/api/TBSyncTaskController.java

@@ -33,7 +33,7 @@ import javax.validation.constraints.Min;
  * @Author: CaoZixuan
  * @Author: CaoZixuan
  * @Date: 2021-11-08
  * @Date: 2021-11-08
  */
  */
-@Api(tags = "数据管理-任务管理Controller")
+@Api(tags = "数据管理-同步管理Controller")
 @RestController
 @RestController
 @RequestMapping(ApiConstant.DEFAULT_URI_PREFIX  + SystemConstant.PREFIX_URL_DATA + "/sync")
 @RequestMapping(ApiConstant.DEFAULT_URI_PREFIX  + SystemConstant.PREFIX_URL_DATA + "/sync")
 @Validated
 @Validated

+ 0 - 103
distributed-print/src/main/java/com/qmth/distributed/print/api/TeachCourseController.java

@@ -62,19 +62,6 @@ public class TeachCourseController {
                         pageSize));
                         pageSize));
     }
     }
 
 
-    @ApiOperation(value = "教学课程-手动添加课程")
-    @RequestMapping(value = "/manual_create", method = RequestMethod.POST)
-    @ApiResponses({@ApiResponse(code = 200, message = "创建成功", response = EditResult.class)})
-    @OperationLogDetail(detail = "手动添加教学课程,参数[{{teachCourseParams}}]", operationType = OperationTypeEnum.ADD)
-    @Deprecated
-    public Result manualCreate(@Valid @RequestBody TeachCourseParams teachCourseParams, BindingResult bindingResult) {
-        SysUser requestUser = (SysUser) ServletUtil.getRequestUser();
-        if (bindingResult.hasErrors()) {
-            return ResultUtil.error(bindingResult.getAllErrors().get(0).getDefaultMessage());
-        }
-        return ResultUtil.ok(teachCourseService.manualCreate(teachCourseParams, requestUser));
-    }
-
     @ApiOperation(value = "教学课程-课程表选择教学课程")
     @ApiOperation(value = "教学课程-课程表选择教学课程")
     @RequestMapping(value = "/select_create", method = RequestMethod.POST)
     @RequestMapping(value = "/select_create", method = RequestMethod.POST)
     @ApiResponses({@ApiResponse(code = 200, message = "创建成功", response = EditResult.class)})
     @ApiResponses({@ApiResponse(code = 200, message = "创建成功", response = EditResult.class)})
@@ -87,17 +74,6 @@ public class TeachCourseController {
         return ResultUtil.ok();
         return ResultUtil.ok();
     }
     }
 
 
-    @ApiOperation(value = "教学课程-教学课程批量导入")
-    @RequestMapping(value = "/import", method = RequestMethod.POST)
-    @ApiResponses({@ApiResponse(code = 200, message = "创建成功", response = EditResult.class)})
-    @OperationLogDetail(detail = "教学课程批量导入", operationType = OperationTypeEnum.ADD)
-    @Deprecated
-    public Result importTeachCourse(@ApiParam(value = "上传文件", required = true) @RequestParam MultipartFile file) throws IOException, NoSuchFieldException {
-        SysUser requestUser = (SysUser) ServletUtil.getRequestUser();
-        teachCourseService.importTeachCourse(file, requestUser);
-        return ResultUtil.ok();
-    }
-
     @ApiOperation(value = "教学课程-查找基础课程")
     @ApiOperation(value = "教学课程-查找基础课程")
     @RequestMapping(value = "/find_basic_course", method = RequestMethod.POST)
     @RequestMapping(value = "/find_basic_course", method = RequestMethod.POST)
     @ApiResponses({@ApiResponse(code = 200, message = "查询成功", response = Result.class)})
     @ApiResponses({@ApiResponse(code = 200, message = "查询成功", response = Result.class)})
@@ -116,62 +92,6 @@ public class TeachCourseController {
         return ResultUtil.ok();
         return ResultUtil.ok();
     }
     }
 
 
-    @ApiOperation(value = "教师团队-手动添加教师")
-    @RequestMapping(value = "/manual_create_teacher", method = RequestMethod.POST)
-    @ApiResponses({@ApiResponse(code = 200, message = "创建成功", response = EditResult.class)})
-    @OperationLogDetail(detail = "手动添加教师,参数[{{teacherTeamParam}}]", operationType = OperationTypeEnum.ADD)
-    public Result manualCreateTeacher(@Valid @RequestBody TeacherTeamParam teacherTeamParam, BindingResult bindingResult) throws IllegalAccessException {
-        SysUser requestUser = (SysUser) ServletUtil.getRequestUser();
-        if (bindingResult.hasErrors()) {
-            return ResultUtil.error(bindingResult.getAllErrors().get(0).getDefaultMessage());
-        }
-        teachCourseService.manualCreateTeacher(teacherTeamParam, requestUser);
-        return ResultUtil.ok();
-    }
-
-    @ApiOperation(value = "教师团队-用户表选择教师")
-    @RequestMapping(value = "/select_create_teacher", method = RequestMethod.POST)
-    @ApiResponses({@ApiResponse(code = 200, message = "创建成功", response = EditResult.class)})
-    @OperationLogDetail(operationType = OperationTypeEnum.ADD)
-    public Result selectCreate(@ApiParam(value = "考试id", required = true) @RequestParam String teachCourseId,
-                               @ApiParam(value = "教师id集合", required = true) @RequestParam List<String> userIdList) {
-        SysUser requestUser = (SysUser) ServletUtil.getRequestUser();
-        teachCourseService.selectCreateTeacher(SystemConstant.convertIdToLong(teachCourseId),
-                userIdList.stream().map(SystemConstant::convertIdToLong).collect(Collectors.toList()), requestUser);
-        return ResultUtil.ok();
-    }
-
-    @ApiOperation(value = "教师团队-批量导入教师")
-    @RequestMapping(value = "/import_teacher", method = RequestMethod.POST)
-    @ApiResponses({@ApiResponse(code = 200, message = "创建成功", response = EditResult.class)})
-    @OperationLogDetail(detail = "教学课程批量导入", operationType = OperationTypeEnum.ADD)
-    @Deprecated
-    public Result importTeacherTeam(@ApiParam(value = "上传文件", required = true) @RequestParam MultipartFile file, @ApiParam(value = "基础课程", required = true) @RequestParam Long basicCourseId)
-            throws IOException, NoSuchFieldException, IllegalAccessException {
-        SysUser requestUser = (SysUser) ServletUtil.getRequestUser();
-        teachCourseService.importTeacherTeam(file, basicCourseId, requestUser);
-        return ResultUtil.ok();
-    }
-
-    @ApiOperation(value = "教师团队-分页查询")
-    @RequestMapping(value = "/teacher_team_page", method = RequestMethod.POST)
-    @ApiResponses({@ApiResponse(code = 200, message = "查询成功", response = Result.class)})
-    public Result findTeachTeamPage(@ApiParam(value = "教学课程id", required = true) @RequestParam String teachCourseId,
-                                    @ApiParam(value = "用户姓名工号(模糊查询)") @RequestParam(required = false) String userInfo,
-                                    @ApiParam(value = "分页页码", required = true) @RequestParam @Min(SystemConstant.PAGE_NUMBER_MIN) Integer pageNumber,
-                                    @ApiParam(value = "分页数", required = true) @RequestParam @Min(SystemConstant.PAGE_SIZE_MIN) @Max(SystemConstant.PAGE_SIZE_MAX) Integer pageSize) {
-        return ResultUtil.ok(
-                teachCourseService.findTeacherTeamPage(SystemConstant.convertIdToLong(teachCourseId), userInfo,
-                        pageNumber, pageSize));
-    }
-
-    @ApiOperation(value = "教师团队-根据机构查询")
-    @RequestMapping(value = "/find_teacher_by_org", method = RequestMethod.POST)
-    @ApiResponses({@ApiResponse(code = 200, message = "查询成功", response = Result.class)})
-    public Result findTeachCoursePage(@ApiParam(value = "课程名称(模糊查询)") @RequestParam(required = false) Long orgId) {
-        return ResultUtil.ok(teachCourseService.findUserByOrgId(orgId));
-    }
-
     @ApiOperation(value = "教学课程-查询课程权重设置状态")
     @ApiOperation(value = "教学课程-查询课程权重设置状态")
     @RequestMapping(value = "/find_course_weight_setting_status", method = RequestMethod.POST)
     @RequestMapping(value = "/find_course_weight_setting_status", method = RequestMethod.POST)
     @ApiResponses({@ApiResponse(code = 200, message = "查询成功", response = Result.class)})
     @ApiResponses({@ApiResponse(code = 200, message = "查询成功", response = Result.class)})
@@ -179,27 +99,4 @@ public class TeachCourseController {
         return ResultUtil.ok(
         return ResultUtil.ok(
                 teachCourseService.findCourseWeightSettingStatus(SystemConstant.convertIdToLong(teachCourseId)));
                 teachCourseService.findCourseWeightSettingStatus(SystemConstant.convertIdToLong(teachCourseId)));
     }
     }
-
-    @ApiOperation(value = "教师团队管理-分配班级列表查询")
-    @RequestMapping(value = "/find_clazz_list", method = RequestMethod.POST)
-    @ApiResponses({@ApiResponse(code = 200, message = "查询成功", response = Result.class)})
-    public Result findClazzList(@ApiParam(value = "教学课程id", required = true) @RequestParam String teachCourseId,
-                                @ApiParam(value = "班级名称") @RequestParam(required = false) String clazzName) {
-        return ResultUtil.ok(
-                teachCourseService.findClazzDistributedStatus(SystemConstant.convertIdToLong(teachCourseId),
-                        clazzName));
-    }
-
-    @ApiOperation(value = "教师团队管理-分配班级")
-    @RequestMapping(value = "/assign_clazz", method = RequestMethod.POST)
-    @ApiResponses({@ApiResponse(code = 200, message = "创建成功", response = EditResult.class)})
-    @OperationLogDetail(detail = "分配班级,参数[{{assignClazzParam}}]", operationType = OperationTypeEnum.ADD)
-    public Result assignClazz(@Valid @RequestBody AssignClazzParam assignClazzParam, BindingResult bindingResult) {
-        SysUser requestUser = (SysUser) ServletUtil.getRequestUser();
-        if (bindingResult.hasErrors()) {
-            return ResultUtil.error(bindingResult.getAllErrors().get(0).getDefaultMessage());
-        }
-        teachCourseService.assignClazz(assignClazzParam, requestUser);
-        return ResultUtil.ok();
-    }
 }
 }

+ 0 - 24
distributed-print/src/main/java/com/qmth/distributed/print/api/mark/MarkScoreController.java

@@ -1,24 +0,0 @@
-package com.qmth.distributed.print.api.mark;
-
-
-import com.qmth.boot.api.constant.ApiConstant;
-import com.qmth.teachcloud.common.contant.SystemConstant;
-import io.swagger.annotations.Api;
-import org.springframework.web.bind.annotation.RequestMapping;
-
-import org.springframework.web.bind.annotation.RestController;
-
-/**
- * <p>
- * 成绩相关 前端控制器
- * </p>
- *
- * @author xf
- * @since 2023-09-22
- */
-@Api(tags = "评卷-成绩检查")
-@RestController
-@RequestMapping(ApiConstant.DEFAULT_URI_PREFIX + SystemConstant.PREFIX_URL_MARK + "/score")
-public class MarkScoreController {
-
-}

+ 0 - 24
distributed-print/src/main/java/com/qmth/distributed/print/api/mark/ScanPaperController.java

@@ -1,24 +0,0 @@
-package com.qmth.distributed.print.api.mark;
-
-
-import com.qmth.boot.api.constant.ApiConstant;
-import com.qmth.teachcloud.common.contant.SystemConstant;
-import io.swagger.annotations.Api;
-import org.springframework.web.bind.annotation.RequestMapping;
-
-import org.springframework.web.bind.annotation.RestController;
-
-/**
- * <p>
- * 试卷 前端控制器
- * </p>
- *
- * @author xf
- * @since 2023-09-22
- */
-@Api(tags = "扫描-试卷")
-@RestController
-@RequestMapping(ApiConstant.DEFAULT_URI_PREFIX + SystemConstant.PREFIX_URL_SCAN + "/paper")
-public class ScanPaperController {
-
-}

BIN
distributed-print/src/main/resources/temps/examTask.xlsx


+ 0 - 96
teachcloud-common/src/main/java/com/qmth/teachcloud/common/entity/BasicCampus.java

@@ -1,96 +0,0 @@
-package com.qmth.teachcloud.common.entity;
-
-import com.fasterxml.jackson.databind.annotation.JsonSerialize;
-import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
-import com.qmth.teachcloud.common.base.BaseEntity;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-
-import java.io.Serializable;
-
-/**
- * <p>
- * 基础校区表
- * </p>
- *
- * @author wangliang
- * @since 2021-08-02
- */
-@ApiModel(value = "BasicCampus对象", description = "基础校区表")
-public class BasicCampus extends BaseEntity implements Serializable {
-
-    private static final long serialVersionUID = 1L;
-
-    @ApiModelProperty(value = "学校id")
-    @JsonSerialize(using = ToStringSerializer.class)
-    private Long schoolId;
-
-    @ApiModelProperty(value = "校区名称")
-    private String campusName;
-
-    @ApiModelProperty(value = "校区编码")
-    private String campusCode;
-
-    @ApiModelProperty(value = "印刷室id")
-    @JsonSerialize(using = ToStringSerializer.class)
-    private Long printHouseId;
-
-    @ApiModelProperty(value = "是否可用")
-    private Boolean enable;
-
-    @ApiModelProperty(value = "机构id")
-    @JsonSerialize(using = ToStringSerializer.class)
-    private Long orgId;
-
-    public static long getSerialVersionUID() {
-        return serialVersionUID;
-    }
-
-    public Long getSchoolId() {
-        return schoolId;
-    }
-
-    public void setSchoolId(Long schoolId) {
-        this.schoolId = schoolId;
-    }
-
-    public String getCampusName() {
-        return campusName;
-    }
-
-    public void setCampusName(String campusName) {
-        this.campusName = campusName;
-    }
-
-    public String getCampusCode() {
-        return campusCode;
-    }
-
-    public void setCampusCode(String campusCode) {
-        this.campusCode = campusCode;
-    }
-
-    public Long getPrintHouseId() {
-        return printHouseId;
-    }
-
-    public void setPrintHouseId(Long printHouseId) {
-        this.printHouseId = printHouseId;
-    }
-
-    public Boolean getEnable() {
-        return enable;
-    }
-
-    public void setEnable(Boolean enable) {
-        this.enable = enable;
-    }
-
-    public Long getOrgId() {
-        return orgId;
-    }
-
-    public void setOrgId(Long orgId) {
-        this.orgId = orgId;
-    }
-}

+ 0 - 54
teachcloud-common/src/main/java/com/qmth/teachcloud/common/entity/BasicCollege.java

@@ -1,54 +0,0 @@
-package com.qmth.teachcloud.common.entity;
-
-import com.fasterxml.jackson.databind.annotation.JsonSerialize;
-import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
-import com.qmth.teachcloud.common.base.BaseEntity;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-
-import java.io.Serializable;
-
-/**
- * @Description: 学生学院表
- * @Author: CaoZixuan
- * @Date: 2022-08-17
- */
-@ApiModel(value = "BasicCollege对象", description = "基础学院表")
-public class BasicCollege extends BaseEntity implements Serializable {
-    private static final long serialVersionUID = 1L;
-
-    @JsonSerialize(using = ToStringSerializer.class)
-    @ApiModelProperty(value = "学校id")
-    private Long schoolId;
-
-    @ApiModelProperty(value = "学院名称")
-    private String collegeName;
-
-    @JsonSerialize(using = ToStringSerializer.class)
-    @ApiModelProperty(value = "数据权限id")
-    private Long orgId;
-
-    public Long getSchoolId() {
-        return schoolId;
-    }
-
-    public void setSchoolId(Long schoolId) {
-        this.schoolId = schoolId;
-    }
-
-    public String getCollegeName() {
-        return collegeName;
-    }
-
-    public void setCollegeName(String collegeName) {
-        this.collegeName = collegeName;
-    }
-
-    public Long getOrgId() {
-        return orgId;
-    }
-
-    public void setOrgId(Long orgId) {
-        this.orgId = orgId;
-    }
-}

+ 11 - 1
teachcloud-common/src/main/java/com/qmth/teachcloud/common/entity/BasicTeachClazz.java

@@ -26,7 +26,9 @@ public class BasicTeachClazz extends BaseEntity {
     @ApiModelProperty(value = "考试id")
     @ApiModelProperty(value = "考试id")
     @JsonSerialize(using = ToStringSerializer.class)
     @JsonSerialize(using = ToStringSerializer.class)
     private Long examId;
     private Long examId;
-
+    @ApiModelProperty(value = "课程id")
+    @JsonSerialize(using = ToStringSerializer.class)
+    private Long courseId;
     @ApiModelProperty(value = "课程编号")
     @ApiModelProperty(value = "课程编号")
     private String courseCode;
     private String courseCode;
 
 
@@ -49,6 +51,14 @@ public class BasicTeachClazz extends BaseEntity {
         this.examId = examId;
         this.examId = examId;
     }
     }
 
 
+    public Long getCourseId() {
+        return courseId;
+    }
+
+    public void setCourseId(Long courseId) {
+        this.courseId = courseId;
+    }
+
     public String getCourseCode() {
     public String getCourseCode() {
         return courseCode;
         return courseCode;
     }
     }

+ 0 - 12
teachcloud-common/src/main/java/com/qmth/teachcloud/common/entity/SysOrg.java

@@ -60,10 +60,6 @@ public class SysOrg extends BaseEntity implements Serializable {
     @ApiModelProperty("历史机构名")
     @ApiModelProperty("历史机构名")
     private String historicName;
     private String historicName;
 
 
-    @ApiModelProperty("云阅卷机构ID")
-    @TableField(updateStrategy = FieldStrategy.IGNORED)
-    private Integer thirdRelateId;
-
     public SysOrg() {
     public SysOrg() {
 
 
     }
     }
@@ -159,12 +155,4 @@ public class SysOrg extends BaseEntity implements Serializable {
     public void setEnable(Boolean enable) {
     public void setEnable(Boolean enable) {
         this.enable = enable;
         this.enable = enable;
     }
     }
-
-    public Integer getThirdRelateId() {
-        return thirdRelateId;
-    }
-
-    public void setThirdRelateId(Integer thirdRelateId) {
-        this.thirdRelateId = thirdRelateId;
-    }
 }
 }

+ 0 - 1
teachcloud-common/src/main/java/com/qmth/teachcloud/common/enums/SystemCodeEnum.java

@@ -9,7 +9,6 @@ import java.util.List;
  * @Date: 2021-08-09
  * @Date: 2021-08-09
  */
  */
 public enum SystemCodeEnum {
 public enum SystemCodeEnum {
-    CAMPUS_CODE("校区编码","campusCode","campusCode",4),
     COURSE_CODE("课程编码","courseCode","courseCode",4);
     COURSE_CODE("课程编码","courseCode","courseCode",4);
     private final String desc;
     private final String desc;
     private final String code;
     private final String code;

+ 0 - 28
teachcloud-common/src/main/java/com/qmth/teachcloud/common/mapper/BasicCampusMapper.java

@@ -1,28 +0,0 @@
-package com.qmth.teachcloud.common.mapper;
-
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.qmth.teachcloud.common.bean.result.BasicCampusResult;
-import com.qmth.teachcloud.common.entity.BasicCampus;
-import org.apache.ibatis.annotations.Param;
-
-import java.util.List;
-
-/**
- * <p>
- * 基础校区表 Mapper 接口
- * </p>
- *
- * @author wangliang
- * @since 2021-08-02
- */
-public interface BasicCampusMapper extends BaseMapper<BasicCampus> {
-
-    /**
-     * 查找基础校区信息
-     *
-     * @param schoolId 学校id
-     * @return 基础校区信息
-     */
-    List<BasicCampusResult> findBasicCampusResult(@Param("schoolId") Long schoolId);
-
-}

+ 0 - 33
teachcloud-common/src/main/java/com/qmth/teachcloud/common/mapper/BasicCollegeMapper.java

@@ -1,33 +0,0 @@
-package com.qmth.teachcloud.common.mapper;
-
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.qmth.teachcloud.common.bean.dto.DataPermissionRule;
-import com.qmth.teachcloud.common.bean.result.BasicCollegeResult;
-import com.qmth.teachcloud.common.bean.result.BasicMajorResult;
-import com.qmth.teachcloud.common.entity.BasicCollege;
-import org.apache.ibatis.annotations.Param;
-
-import java.util.Set;
-
-/**
- * @Description: 学生学院mapper
- * @Author: CaoZixuan
- * @Date: 2022-08-17
- */
-public interface BasicCollegeMapper extends BaseMapper<BasicCollege> {
-    /**
-     * 分页查询基础专业信息
-     *
-     * @param iPage       分页参数
-     * @param schoolId    学校id
-     * @param collegeName 学院名称
-     * @param dpr      dpr
-     * @return 基础专业分页参数
-     */
-    IPage<BasicCollegeResult> findBasicCollegePage(@Param("iPage") Page<BasicCollegeResult> iPage,
-                                                   @Param("schoolId") Long schoolId,
-                                                   @Param("collegeName") String collegeName,
-                                                   @Param("dpr") DataPermissionRule dpr);
-}

+ 10 - 0
teachcloud-common/src/main/java/com/qmth/teachcloud/common/mapper/BasicCourseMapper.java

@@ -76,4 +76,14 @@ public interface BasicCourseMapper extends BaseMapper<BasicCourse> {
      * @return 课程名集合
      * @return 课程名集合
      */
      */
     List<String> findTeachCourseCourseName(@Param("schoolId") Long schoolId, @Param("courseCodeSet") Set<String> courseCodeSet);
     List<String> findTeachCourseCourseName(@Param("schoolId") Long schoolId, @Param("courseCodeSet") Set<String> courseCodeSet);
+
+    int countTeachCourseByCourseId(Long courseId);
+
+    int countBasicExamStudentByCourseId(Long courseId);
+
+    int countExamTaskByCourseId(Long courseId);
+
+    int countExamCardByCourseId(Long courseId);
+
+    int countMarkPaperByCourseId(Long courseId);
 }
 }

+ 1 - 1
teachcloud-common/src/main/java/com/qmth/teachcloud/common/mapper/BasicStudentMapper.java

@@ -61,7 +61,7 @@ public interface BasicStudentMapper extends BaseMapper<BasicStudent> {
      */
      */
     List<BasicExamStudentResult> findBasicStudentList(@Param("schoolId") Long schoolId,
     List<BasicExamStudentResult> findBasicStudentList(@Param("schoolId") Long schoolId,
                                                       @Param("examId") Long examId,
                                                       @Param("examId") Long examId,
-                                                      @Param("courseCode") String courseCode,
+                                                      @Param("courseId") Long courseId,
                                                       @Param("teacher") String teacher,
                                                       @Param("teacher") String teacher,
                                                       @Param("className") String className,
                                                       @Param("className") String className,
                                                       @Param("studentCodeList") List<String> studentCodeList);
                                                       @Param("studentCodeList") List<String> studentCodeList);

+ 1 - 5
teachcloud-common/src/main/java/com/qmth/teachcloud/common/mapper/SysUserMapper.java

@@ -113,12 +113,8 @@ public interface SysUserMapper extends BaseMapper<SysUser> {
 
 
     /**
     /**
      * 查找科目下命题老师
      * 查找科目下命题老师
-     *
-     * @param schoolId
-     * @param courseCode
-     * @return
      */
      */
-    List<SysUserResult> findCourseSysUserResultList(@Param("schoolId") Long schoolId, @Param("courseCode") String courseCode);
+    List<SysUserResult> findCourseSysUserResultList(@Param("schoolId") Long schoolId, @Param("courseId") Long courseId);
 
 
     /**
     /**
      * 查找内置老师
      * 查找内置老师

+ 0 - 51
teachcloud-common/src/main/java/com/qmth/teachcloud/common/service/BasicCampusService.java

@@ -1,51 +0,0 @@
-package com.qmth.teachcloud.common.service;
-
-import com.baomidou.mybatisplus.extension.service.IService;
-import com.qmth.teachcloud.common.bean.params.BasicCampusParams;
-import com.qmth.teachcloud.common.bean.result.BasicCampusResult;
-import com.qmth.teachcloud.common.entity.BasicCampus;
-
-import java.util.List;
-
-/**
- * <p>
- * 基础校区表 服务类
- * </p>
- *
- * @author wangliang
- * @since 2021-08-02
- */
-public interface BasicCampusService extends IService<BasicCampus> {
-    /**
-     * 根据学校id查询该学校的基础校区(不分页)
-     * @param schoolId 学校id
-     * @return 校区结果集
-     */
-    List<BasicCampusResult> basicCampusList(Long schoolId);
-
-    /**
-     * 新增/编辑 校区基础信息
-     * @param basicCampusParams 基础校区信息参数
-     * @return 新增或编辑的校区id
-     */
-    Long saveBasicCampus(BasicCampusParams basicCampusParams);
-
-    /**
-     * 根据校区id删除校区(物理删除)
-     * @param id 要删除的校区主键
-     * @return 是否成功
-     */
-    Boolean removeBasicCampusById(Long id);
-
-    @Deprecated
-    Long getPrintHouseIdBySchoolIdAndCampusName(Long schoolId, String campusName);
-
-    /**
-     * 根据班级id集合查找对应的校区
-     * @param clazzIdList  班级id集合
-     * @param separator 校区连接符
-     * @return 连接符连好的校区
-     */
-    @Deprecated
-    String findCampusNamesByClazzIdList(List<Long> clazzIdList, String separator);
-}

+ 0 - 42
teachcloud-common/src/main/java/com/qmth/teachcloud/common/service/BasicCollegeService.java

@@ -1,42 +0,0 @@
-package com.qmth.teachcloud.common.service;
-
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.extension.service.IService;
-import com.qmth.teachcloud.common.bean.params.BasicCollegeParams;
-import com.qmth.teachcloud.common.bean.result.BasicCollegeResult;
-import com.qmth.teachcloud.common.entity.BasicCollege;
-import com.qmth.teachcloud.common.entity.SysUser;
-
-import java.util.List;
-
-/**
- * @Description: 学生学院接口服务类
- * @Author: CaoZixuan
- * @Date: 2022-08-17
- */
-public interface BasicCollegeService extends IService<BasicCollege> {
-    
-    /**
-     * 基础专业分页查询
-     * @param schoolId 学校id
-     * @param collegeName 专业名称模糊查询
-     * @param pageNumber 分页页数
-     * @param pageSize 分页容量
-     * @return 分页结果
-     */
-    IPage<BasicCollegeResult> basicCollegePage(Long schoolId, String collegeName, int pageNumber, int pageSize);
-
-    /**
-     * 基础专业编辑
-     * @param basicCollegeParams 编辑参数
-     * @return 编辑后该专业id
-     */
-    Long saveBasicCollege(BasicCollegeParams basicCollegeParams, SysUser requestUser) throws IllegalAccessException;
-
-    /**
-     * 专业删除
-     * @param idList 专业主键id集合
-     * @return 是否删除成功
-     */
-    boolean deleteBasicCollegeByIdList(List<Long> idList);
-}

+ 1 - 1
teachcloud-common/src/main/java/com/qmth/teachcloud/common/service/BasicStudentService.java

@@ -62,7 +62,7 @@ public interface BasicStudentService extends IService<BasicStudent> {
      * @param studentCodeList 学号集合
      * @param studentCodeList 学号集合
      * @return 学生查询结果
      * @return 学生查询结果
      */
      */
-    List<BasicExamStudentResult> basicStudentList(Long schoolId, Long examId, String courseCode, String teacher, String className, List<String> studentCodeList);
+    List<BasicExamStudentResult> basicStudentList(Long schoolId, Long examId, Long courseId, String teacher, String className, List<String> studentCodeList);
 
 
     /**
     /**
      * 新增/编辑 学生基础信息
      * 新增/编辑 学生基础信息

+ 3 - 7
teachcloud-common/src/main/java/com/qmth/teachcloud/common/service/SysOrgService.java

@@ -24,14 +24,8 @@ public interface SysOrgService extends IService<SysOrg> {
 
 
     /**
     /**
      * 机构树
      * 机构树
-     *
-     * @param specialPrivilegeEnum 特殊权限
-     * @param withoutPrintingRoom  是否去除印刷室机构
-     * @param courseCode
-     * @param orgId
-     * @return 查询到的机构
      */
      */
-    List<OrgDto> listOrgTree(RoleTypeEnum specialPrivilegeEnum, boolean withoutPrintingRoom, String courseCode, Set<Long> orgId);
+    List<OrgDto> listOrgTree(RoleTypeEnum specialPrivilegeEnum, boolean withoutPrintingRoom, Long courseId, Set<Long> orgId);
 
 
     /**
     /**
      * 获取所有机构
      * 获取所有机构
@@ -185,4 +179,6 @@ public interface SysOrgService extends IService<SysOrg> {
      * @param name     学院名称
      * @param name     学院名称
      */
      */
     List<SysOrg> getSecondOrg(Long schoolId, String name);
     List<SysOrg> getSecondOrg(Long schoolId, String name);
+
+    boolean delete(Long id);
 }
 }

+ 2 - 4
teachcloud-common/src/main/java/com/qmth/teachcloud/common/service/SysUserService.java

@@ -93,7 +93,7 @@ public interface SysUserService extends IService<SysUser> {
 
 
     boolean bindRoles(SysUser sysUser);
     boolean bindRoles(SysUser sysUser);
 
 
-    AssignTeacherDto listUser(String courseCode, String param);
+    AssignTeacherDto listUser(Long courseId, String param);
 
 
     List<SysUser> listByOrgId(Long id);
     List<SysUser> listByOrgId(Long id);
 
 
@@ -229,11 +229,9 @@ public interface SysUserService extends IService<SysUser> {
     /**
     /**
      * 查找科目下命题老师
      * 查找科目下命题老师
      *
      *
-     * @param schoolId
-     * @param courseCode
      * @return
      * @return
      */
      */
-    List<SysUserResult> findCourseSysUserResultList(Long schoolId, String courseCode);
+    List<SysUserResult> findCourseSysUserResultList(Long schoolId, Long courseId);
 
 
     /**
     /**
      * 查找内置老师
      * 查找内置老师

+ 0 - 10
teachcloud-common/src/main/java/com/qmth/teachcloud/common/service/TeachcloudCommonService.java

@@ -182,16 +182,6 @@ public interface TeachcloudCommonService {
      */
      */
     LoginResult login(String password, SysUser sysUser, AppSourceEnum appSource) throws NoSuchAlgorithmException;
     LoginResult login(String password, SysUser sysUser, AppSourceEnum appSource) throws NoSuchAlgorithmException;
 
 
-    /**
-     * /**
-     * 根据编码类型获取系统编码
-     *
-     * @param type        编码类型
-     * @param requestUser 请求的用户
-     * @return 系统编码
-     */
-    String getSysIncrCode(SystemCodeEnum type, SysUser requestUser);
-
     /**
     /**
      * 校验用户是否包含某权限
      * 校验用户是否包含某权限
      *
      *

+ 0 - 145
teachcloud-common/src/main/java/com/qmth/teachcloud/common/service/impl/BasicCampusServiceImpl.java

@@ -1,145 +0,0 @@
-package com.qmth.teachcloud.common.service.impl;
-
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.qmth.teachcloud.common.bean.params.BasicCampusParams;
-import com.qmth.teachcloud.common.bean.result.BasicCampusResult;
-import com.qmth.teachcloud.common.contant.SystemConstant;
-import com.qmth.teachcloud.common.entity.BasicCampus;
-import com.qmth.teachcloud.common.entity.BasicClazz;
-import com.qmth.teachcloud.common.entity.SysUser;
-import com.qmth.teachcloud.common.enums.ExceptionResultEnum;
-import com.qmth.teachcloud.common.mapper.BasicCampusMapper;
-import com.qmth.teachcloud.common.service.BasicCampusService;
-import com.qmth.teachcloud.common.service.BasicClazzService;
-import com.qmth.teachcloud.common.util.ServletUtil;
-import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
-import org.springframework.util.CollectionUtils;
-
-import javax.annotation.Resource;
-import java.util.List;
-import java.util.Objects;
-import java.util.stream.Collectors;
-
-/**
- * <p>
- * 基础校区表 服务实现类
- * </p>
- *
- * @author wangliang
- * @since 2021-08-02
- */
-@Service
-public class BasicCampusServiceImpl extends ServiceImpl<BasicCampusMapper, BasicCampus> implements BasicCampusService {
-    @Resource
-    private BasicCampusMapper basicCampusMapper;
-    @Resource
-    private BasicClazzService basicClazzService;
-
-    @Override
-    public List<BasicCampusResult> basicCampusList(Long schoolId) {
-        return basicCampusMapper.findBasicCampusResult(schoolId);
-    }
-
-    @Transactional(rollbackFor = Exception.class)
-    @Override
-    public Long saveBasicCampus(BasicCampusParams basicCampusParams) {
-        SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
-        Long schoolId = sysUser.getSchoolId();
-        Long orgId = sysUser.getOrgId();
-
-        Long campusId = basicCampusParams.getId();
-        String campusName = basicCampusParams.getCampusName();
-        String campusCode = basicCampusParams.getCampusCode();
-        Long printHouseId = basicCampusParams.getPrintHouseId();
-        if (!SystemConstant.strNotNull(campusCode)){
-            throw ExceptionResultEnum.ERROR.exception("缺少校区编号");
-        }
-        BasicCampus checkName = this.getOne(new QueryWrapper<BasicCampus>().lambda().eq(BasicCampus::getEnable,true).eq(BasicCampus::getSchoolId,schoolId).eq(BasicCampus::getCampusName,campusName));
-        if (Objects.nonNull(checkName) && !checkName.getId().equals(campusId)){
-            throw ExceptionResultEnum.ERROR.exception("校区名称[" + campusName + "]重复");
-        }
-        BasicCampus checkCode = this.getOne(new QueryWrapper<BasicCampus>().lambda().eq(BasicCampus::getEnable,true).eq(BasicCampus::getSchoolId,schoolId).eq(BasicCampus::getCampusCode,campusCode));
-        if (Objects.nonNull(checkCode) && !checkCode.getId().equals(campusId)){
-            throw ExceptionResultEnum.ERROR.exception("校区编号[" + campusCode + "]重复");
-        }
-
-        if (SystemConstant.longNotNull(campusId)){
-            // 编辑
-            campusId = basicCampusParams.getId();
-            BasicCampus old = this.getById(campusId);
-            if (Objects.isNull(old) || old.getEnable().equals(false)){
-                throw ExceptionResultEnum.ERROR.exception("所选校区主键不存在或被禁用");
-            }
-            UpdateWrapper<BasicCampus> updateWrapper = new UpdateWrapper<>();
-            updateWrapper.lambda()
-                    .set(BasicCampus::getCampusName,campusName)
-                    .set(BasicCampus::getSchoolId,schoolId)
-                    .set(BasicCampus::getPrintHouseId, printHouseId)
-                    .set(BasicCampus::getUpdateId,sysUser.getId())
-                    .eq(BasicCampus::getId,campusId);
-            this.update(updateWrapper);
-        }else {
-            // 新增
-            campusId = SystemConstant.getDbUuid();
-            BasicCampus basicCampus = new BasicCampus();
-            basicCampus.setId(campusId);
-            basicCampus.setCampusCode(campusCode);
-            basicCampus.setCampusName(campusName);
-            basicCampus.setPrintHouseId(printHouseId);
-            basicCampus.setOrgId(orgId);
-            basicCampus.setEnable(true);
-            basicCampus.setCreateId(sysUser.getId());
-            basicCampus.setSchoolId(schoolId);
-            this.save(basicCampus);
-        }
-        return campusId;
-    }
-
-    @Transactional(rollbackFor = Exception.class)
-    @Override
-    public Boolean removeBasicCampusById(Long id) {
-        SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
-//        if (basicClazzService.list(new QueryWrapper<BasicClazz>().lambda().eq(BasicClazz::getCampusId,id)).size() > 0){
-//            throw ExceptionResultEnum.ERROR.exception("基础班级中绑定了要删除的校区,无法删除");
-//        }
-        return this.removeById(id);
-    }
-
-    @Override
-    public Long getPrintHouseIdBySchoolIdAndCampusName(Long schoolId, String campusName) {
-        QueryWrapper<BasicCampus> queryWrapper = new QueryWrapper<>();
-        queryWrapper.lambda().eq(BasicCampus::getSchoolId, schoolId).eq(BasicCampus::getCampusName, campusName);
-        BasicCampus basicCampus = this.getOne(queryWrapper);
-        if(Objects.isNull(basicCampus)){
-            throw ExceptionResultEnum.ERROR.exception("校区不存在");
-        }
-        if(Objects.isNull(basicCampus.getPrintHouseId())){
-            throw ExceptionResultEnum.ERROR.exception("校区没有绑定印刷室");
-        }
-        return basicCampus.getPrintHouseId();
-    }
-
-    @Override
-    public String findCampusNamesByClazzIdList(List<Long> clazzIdList, String separator) {
-        // TODO: 2022/8/17 czx - 校区相关
-//        String campusNames = "";
-////        Long schoolId = SystemConstant.convertIdToLong(ServletUtil.getRequestHeaderSchoolId().toString());
-//        List<Long> campusId = basicClazzService.list(new QueryWrapper<BasicClazz>().lambda()
-//                .in(BasicClazz::getId,clazzIdList))
-//                .stream()
-//                .map(BasicClazz::getCampusId)
-//                .distinct()
-//                .collect(Collectors.toList());
-//        if (!CollectionUtils.isEmpty(campusId)){
-//            List<BasicCampus> basicCampusList = this.list(new QueryWrapper<BasicCampus>().lambda()
-////                    .eq(BasicCampus::getSchoolId,schoolId)
-//                    .in(BasicCampus::getId,campusId));
-//            campusNames = basicCampusList.stream().map(BasicCampus::getCampusName).distinct().collect(Collectors.joining(separator));
-//        }
-//        return campusNames;
-        return "";
-    }
-}

+ 0 - 123
teachcloud-common/src/main/java/com/qmth/teachcloud/common/service/impl/BasicCollegeServiceImpl.java

@@ -1,123 +0,0 @@
-package com.qmth.teachcloud.common.service.impl;
-
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.qmth.teachcloud.common.bean.dto.DataPermissionRule;
-import com.qmth.teachcloud.common.bean.params.BasicCollegeParams;
-import com.qmth.teachcloud.common.bean.result.BasicCollegeResult;
-import com.qmth.teachcloud.common.contant.SystemConstant;
-import com.qmth.teachcloud.common.entity.*;
-import com.qmth.teachcloud.common.enums.ExceptionResultEnum;
-import com.qmth.teachcloud.common.mapper.BasicCollegeMapper;
-import com.qmth.teachcloud.common.service.*;
-import com.qmth.teachcloud.common.util.ServletUtil;
-import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
-
-import javax.annotation.Resource;
-import java.util.List;
-import java.util.Objects;
-import java.util.stream.Collectors;
-
-/**
- * @Description: 学生学院服务实现类
- * @Author: CaoZixuan
- * @Date: 2022-08-17
- */
-@Service
-public class BasicCollegeServiceImpl extends ServiceImpl<BasicCollegeMapper, BasicCollege> implements BasicCollegeService {
-    @Resource
-    private BasicMajorService basicMajorService;
-    @Resource
-    private BasicStudentService basicStudentService;
-    @Resource
-    private CommonCacheService commonCacheService;
-    @Resource
-    private BasicRoleDataPermissionService basicRoleDataPermissionService;
-
-    @Override
-    public IPage<BasicCollegeResult> basicCollegePage(Long schoolId, String collegeName, int pageNumber, int pageSize) {
-        collegeName = SystemConstant.translateSpecificSign(collegeName);
-        SysUser requestUser = (SysUser) ServletUtil.getRequestUser();
-        DataPermissionRule dpr = basicRoleDataPermissionService.findDataPermission(schoolId,requestUser.getId(),ServletUtil.getRequest().getServletPath());
-        return this.baseMapper.findBasicCollegePage(new Page<>(pageNumber, pageSize), schoolId, collegeName, dpr);
-    }
-
-    @Transactional(rollbackFor = Exception.class)
-    @Override
-    public Long saveBasicCollege(BasicCollegeParams basicCollegeParams, SysUser requestUser) throws IllegalAccessException {
-        SystemConstant.verifyDBFields(basicCollegeParams, basicCollegeParams.getClass());
-
-        Long id = basicCollegeParams.getId();
-        Long schoolId = requestUser.getSchoolId();
-        String collegeName = basicCollegeParams.getCollegeName();
-        // 检验学院名称一定和二级机构(学院级机构)名称一致 
-        List<SysOrg> collegeOrgList = commonCacheService.addOrgCollegeLevelCache(schoolId);
-        if (collegeOrgList.stream().noneMatch(e -> collegeName.equals(e.getName()))){
-            throw ExceptionResultEnum.ERROR.exception("学生所在的学院名称[" + collegeName + "]不在学院机构中");
-        }
-
-        // 校验专业唯一性(名称在学院下)
-        BasicCollege checkName = this.getOne(new QueryWrapper<BasicCollege>().lambda()
-                .eq(BasicCollege::getSchoolId, schoolId)
-                .eq(BasicCollege::getCollegeName, collegeName));
-        if (Objects.nonNull(checkName) && !checkName.getId().equals(id)) {
-            throw ExceptionResultEnum.ERROR.exception("学生学院名称[" + collegeName + "]重复");
-        }
-        if (SystemConstant.longNotNull(id)) {
-            // 编辑
-            BasicCollege old = this.getById(id);
-            if (Objects.isNull(old)) {
-                throw ExceptionResultEnum.ERROR.exception("所选学生学院不存在");
-            }
-            this.update(new UpdateWrapper<BasicCollege>().lambda()
-                    .eq(BasicCollege::getId, id)
-                    .set(BasicCollege::getCollegeName, collegeName)
-                    .set(BasicCollege::getUpdateId,requestUser.getId()));
-
-        } else {
-            // 新增
-            id = SystemConstant.getDbUuid();
-            BasicCollege basicCollege = new BasicCollege();
-            basicCollege.setId(id);
-            basicCollege.setCollegeName(collegeName);
-            basicCollege.setSchoolId(schoolId);
-            basicCollege.setOrgId(requestUser.getOrgId());
-            basicCollege.setCreateId(requestUser.getId());
-            this.save(basicCollege);
-        }
-        return id;
-    }
-
-    @Transactional(rollbackFor = Exception.class)
-    @Override
-    public boolean deleteBasicCollegeByIdList(List<Long> idList) {
-        // 判断专业
-        List<BasicMajor> basicMajorList = basicMajorService.list(new QueryWrapper<BasicMajor>().lambda().in(BasicMajor::getBelongOrgId, idList));
-        if (basicMajorList.size() > 0) {
-            List<Long> collegeIdList = basicMajorList.stream().map(BasicMajor::getBelongOrgId).distinct().collect(Collectors.toList());
-            String collegeNames = this.list(new QueryWrapper<BasicCollege>()
-                            .lambda()
-                            .in(BasicCollege::getId, collegeIdList))
-                    .stream()
-                    .map(BasicCollege::getCollegeName)
-                    .collect(Collectors.joining(","));
-            throw ExceptionResultEnum.ERROR.exception("学生学院[" + collegeNames + "]被专业绑定,无法优先删除");
-        }
-
-        // 判断学生
-        List<BasicStudent> basicStudentList = basicStudentService.list(new QueryWrapper<BasicStudent>().lambda().in(BasicStudent::getBelongOrgId, idList));
-        if (basicStudentList.size() > 0) {
-            List<Long> collegeIdList = basicStudentList.stream().map(BasicStudent::getBelongOrgId).distinct().collect(Collectors.toList());
-            String collegeNames = this.list(new QueryWrapper<BasicCollege>().lambda().in(BasicCollege::getId, collegeIdList))
-                    .stream()
-                    .map(BasicCollege::getCollegeName)
-                    .collect(Collectors.joining(","));
-            throw ExceptionResultEnum.ERROR.exception("学生学院[" + collegeNames + "]被学生绑定,无法优先删除");
-        }
-        return this.removeByIds(idList);
-    }
-}

+ 33 - 44
teachcloud-common/src/main/java/com/qmth/teachcloud/common/service/impl/BasicCourseServiceImpl.java

@@ -165,13 +165,13 @@ public class BasicCourseServiceImpl extends ServiceImpl<BasicCourseMapper, Basic
             if (basicCourse != null) {
             if (basicCourse != null) {
                 throw ExceptionResultEnum.ERROR.exception("开课学院[" + sysOrg.getName() + "]下已存在课程代码[" + basicCourseParams.getCourseCode() + "]的课程");
                 throw ExceptionResultEnum.ERROR.exception("开课学院[" + sysOrg.getName() + "]下已存在课程代码[" + basicCourseParams.getCourseCode() + "]的课程");
             } else {
             } else {
-                basicCourse = new BasicCourse(sysUser.getSchoolId(), basicCourseParams.getTeachingRoomId(), basicCourseParams.getCourseCode(), basicCourseParams.getCourseCode());
+                basicCourse = new BasicCourse(sysUser.getSchoolId(), basicCourseParams.getTeachingRoomId(), basicCourseParams.getCourseCode(), basicCourseParams.getCourseName());
                 basicCourse.insertInfo(sysUser.getId());
                 basicCourse.insertInfo(sysUser.getId());
                 this.save(basicCourse);
                 this.save(basicCourse);
                 return basicCourse.getId();
                 return basicCourse.getId();
             }
             }
         } else {
         } else {
-            if(basicCourse != null && !basicCourse.getId().equals(basicCourseParams.getId())){
+            if (basicCourse != null && !basicCourse.getId().equals(basicCourseParams.getId())) {
                 throw ExceptionResultEnum.ERROR.exception("开课学院[" + sysOrg.getName() + "]下已存在课程代码[" + basicCourseParams.getCourseCode() + "]的课程");
                 throw ExceptionResultEnum.ERROR.exception("开课学院[" + sysOrg.getName() + "]下已存在课程代码[" + basicCourseParams.getCourseCode() + "]的课程");
             }
             }
             BasicCourse editBasicCourse = this.getById(basicCourseParams.getId());
             BasicCourse editBasicCourse = this.getById(basicCourseParams.getId());
@@ -186,54 +186,43 @@ public class BasicCourseServiceImpl extends ServiceImpl<BasicCourseMapper, Basic
     @Transactional(rollbackFor = Exception.class)
     @Transactional(rollbackFor = Exception.class)
     @Override
     @Override
     public Boolean removeBasicCourseBatch(List<Long> idList) {
     public Boolean removeBasicCourseBatch(List<Long> idList) {
-        Long schoolId = SystemConstant.convertIdToLong(ServletUtil.getRequestHeaderSchoolId().toString());
-        if (idList.size() == 0) {
-            throw ExceptionResultEnum.ERROR.exception("请选择要目标");
-        }
         SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
         SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
-        // 批量禁用判断
-        // 业务判断
-        Set<String> courseCodeSet = idList.stream().map(e -> {
-            BasicCourse basicCourse = this.getById(e);
-            if (Objects.isNull(basicCourse)) {
-                throw ExceptionResultEnum.ERROR.exception("未找到课程");
-            }
-            return basicCourse.getCode();
-        }).collect(Collectors.toSet());
-
-        Map<String, String> courseMap = this.list(
-                        new QueryWrapper<BasicCourse>().lambda().in(BasicCourse::getId, idList)).stream()
-                .collect(Collectors.toMap(BasicCourse::getCode, BasicCourse::getName));
-        // 考生字典数据不包含该课程校验
-        List<String> basicExamStudentCourseNameList = basicCourseMapper.findBasicExamStudentCourseName(schoolId,
-                courseCodeSet).stream().map(courseMap::get).collect(Collectors.toList());
-        if (!CollectionUtils.isEmpty(basicExamStudentCourseNameList)) {
-            throw ExceptionResultEnum.ERROR.exception(
-                    String.format("考生字典中包含[%s]课程,不能删除", String.join(",", basicExamStudentCourseNameList)));
-        }
-        // 教学课程不包含该课程校验
-        List<String> teachCourseCourseNameList = basicCourseMapper.findTeachCourseCourseName(schoolId, courseCodeSet).stream().map(courseMap::get).collect(Collectors.toList());
-        if (!CollectionUtils.isEmpty(teachCourseCourseNameList)) {
-            throw ExceptionResultEnum.ERROR.exception(
-                    String.format("教学课程中包含[%s]课程,不能删除", String.join(",", teachCourseCourseNameList)));
+        if (CollectionUtils.isEmpty(idList)) {
+            throw ExceptionResultEnum.ERROR.exception("请选择删除的课程");
         }
         }
 
 
-        // 命题任务不包含该课程校验
-        Set<Map<String, Object>> mapList = basicCourseMapper.findExamTaskByCourseCode(schoolId, courseCodeSet);
-        if (mapList.size() > 0) {
-            StringBuilder courseNames = new StringBuilder();
-            for (Map<String, Object> map : mapList) {
-                courseNames.append(map.get("courseName")).append(",");
+        for (Long courseId : idList) {
+            BasicCourse basicCourse = this.getById(courseId);
+            if (basicCourse == null) {
+                continue;
+            }
+            // 教师课程数据
+            int countTeachCourseByCourseId = this.baseMapper.countTeachCourseByCourseId(courseId);
+            if (countTeachCourseByCourseId > 0) {
+                throw ExceptionResultEnum.ERROR.exception("课程代码[" + basicCourse.getCode() + "],课程名称[" + basicCourse.getName() + "]已有老师绑定,不能删除");
+            }
+            // 考生管理
+            int countBasicExamStudentByCourseId = this.baseMapper.countBasicExamStudentByCourseId(courseId);
+            if (countBasicExamStudentByCourseId > 0) {
+                throw ExceptionResultEnum.ERROR.exception("课程代码[" + basicCourse.getCode() + "],课程名称[" + basicCourse.getName() + "]下已有考生数据,不能删除");
+            }
+            // 命题任务
+            int countExamTaskByCourseId = this.baseMapper.countExamTaskByCourseId(courseId);
+            if (countExamTaskByCourseId > 0) {
+                throw ExceptionResultEnum.ERROR.exception("课程代码[" + basicCourse.getCode() + "],课程名称[" + basicCourse.getName() + "]下已有命题数据,不能删除");
+            }
+            // 题卡管理
+            int countExamCardByCourseId = this.baseMapper.countExamCardByCourseId(courseId);
+            if (countExamCardByCourseId > 0) {
+                throw ExceptionResultEnum.ERROR.exception("课程代码[" + basicCourse.getCode() + "],课程名称[" + basicCourse.getName() + "]下已有题卡数据,不能删除");
+            }
+            // 扫描阅卷课程
+            int countMarkPaperByCourseId = this.baseMapper.countMarkPaperByCourseId(courseId);
+            if (countMarkPaperByCourseId > 0) {
+                throw ExceptionResultEnum.ERROR.exception("课程代码[" + basicCourse.getCode() + "],课程名称[" + basicCourse.getName() + "]下已有扫描课程数据,不能删除");
             }
             }
-            throw ExceptionResultEnum.ERROR.exception("课程[" + courseNames.substring(0, courseNames.length() - 1) + "]已经生成了命题任务,不允许删除");
         }
         }
-        // 课程批量删除
-        basicUserCourseService.remove(
-                new QueryWrapper<BasicUserCourse>().lambda().in(BasicUserCourse::getCourseId, idList).eq(BasicUserCourse::getSchoolId, sysUser.getSchoolId()));
 
 
-        // 老师批量删除
-        basicTeachCourseService.remove(
-                new QueryWrapper<BasicTeachCourse>().lambda().in(BasicTeachCourse::getCourseId, idList).eq(BasicTeachCourse::getSchoolId, sysUser.getSchoolId()));
         return this.removeByIds(idList);
         return this.removeByIds(idList);
     }
     }
 
 

+ 2 - 2
teachcloud-common/src/main/java/com/qmth/teachcloud/common/service/impl/BasicStudentServiceImpl.java

@@ -94,8 +94,8 @@ public class BasicStudentServiceImpl extends ServiceImpl<BasicStudentMapper, Bas
     }
     }
 
 
     @Override
     @Override
-    public List<BasicExamStudentResult> basicStudentList(Long schoolId, Long examId, String courseCode, String teacher, String className, List<String> studentCodeList) {
-        return this.baseMapper.findBasicStudentList(schoolId, examId, courseCode, teacher, className, studentCodeList);
+    public List<BasicExamStudentResult> basicStudentList(Long schoolId, Long examId, Long courseId, String teacher, String className, List<String> studentCodeList) {
+        return this.baseMapper.findBasicStudentList(schoolId, examId, courseId, teacher, className, studentCodeList);
     }
     }
 
 
     @Override
     @Override

+ 24 - 8
teachcloud-common/src/main/java/com/qmth/teachcloud/common/service/impl/SysOrgServiceImpl.java

@@ -69,7 +69,7 @@ public class SysOrgServiceImpl extends ServiceImpl<SysOrgMapper, SysOrg> impleme
     private BasicCourseService basicCourseService;
     private BasicCourseService basicCourseService;
 
 
     @Override
     @Override
-    public List<OrgDto> listOrgTree(RoleTypeEnum specialPrivilegeEnum, boolean withoutPrintingRoom, String courseCode, Set<Long> orgIds) {
+    public List<OrgDto> listOrgTree(RoleTypeEnum specialPrivilegeEnum, boolean withoutPrintingRoom, Long courseId, Set<Long> orgIds) {
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
         List<SysUserResult> finalSysUserResultList = sysUserService.findSysUserResultListNew(schoolId, specialPrivilegeEnum);
         List<SysUserResult> finalSysUserResultList = sysUserService.findSysUserResultListNew(schoolId, specialPrivilegeEnum);
         if (!CollectionUtils.isEmpty(finalSysUserResultList)) {
         if (!CollectionUtils.isEmpty(finalSysUserResultList)) {
@@ -114,8 +114,9 @@ public class SysOrgServiceImpl extends ServiceImpl<SysOrgMapper, SysOrg> impleme
             map.remove(key);
             map.remove(key);
         }
         }
         List<OrgDto> list = new ArrayList<>(map.values());
         List<OrgDto> list = new ArrayList<>(map.values());
-        if ((specialPrivilegeEnum == RoleTypeEnum.MARKER) && Objects.nonNull(courseCode)) {
-            List<SysUserResult> resultList = sysUserService.findCourseSysUserResultList(schoolId, courseCode);
+        if ((specialPrivilegeEnum == RoleTypeEnum.MARKER) && Objects.nonNull(courseId)) {
+            BasicCourse basicCourse = basicCourseService.getById(courseId);
+            List<SysUserResult> resultList = sysUserService.findCourseSysUserResultList(schoolId, basicCourse.getId());
             list.get(0).setCourseUserList(resultList);
             list.get(0).setCourseUserList(resultList);
         }
         }
         return list;
         return list;
@@ -143,11 +144,6 @@ public class SysOrgServiceImpl extends ServiceImpl<SysOrgMapper, SysOrg> impleme
                 org.insertInfo(sysUser.getId());
                 org.insertInfo(sysUser.getId());
                 success = this.save(org);
                 success = this.save(org);
             } else { // 修改
             } else { // 修改
-                // 已经推送到云阅卷,不允许修改机构代码
-                SysOrg sysOrg = this.getById(org.getId());
-                if (sysOrg.getThirdRelateId() != null && !org.getCode().equals(sysOrg.getCode())) {
-                    throw ExceptionResultEnum.ERROR.exception("机构已经同步到云阅卷,不支持修改机构代码");
-                }
                 org.updateInfo(sysUser.getId());
                 org.updateInfo(sysUser.getId());
                 success = this.updateById(org);
                 success = this.updateById(org);
             }
             }
@@ -557,6 +553,26 @@ public class SysOrgServiceImpl extends ServiceImpl<SysOrgMapper, SysOrg> impleme
         return this.list(queryWrapper);
         return this.list(queryWrapper);
     }
     }
 
 
+    @Override
+    public boolean delete(Long id) {
+        Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
+        // 机构下是否有用户
+        List<SysUser> sysUsers = sysUserService.listByOrgId(id);
+        if (!CollectionUtils.isEmpty(sysUsers)) {
+            throw ExceptionResultEnum.ERROR.exception("该机构下有用户,不能删除");
+        }
+
+        // 机构下是否有子机构
+        QueryWrapper<SysOrg> orgQueryWrapper = new QueryWrapper<>();
+        orgQueryWrapper.lambda().eq(SysOrg::getParentId, id);
+        List<SysOrg> sysOrgList = this.list(orgQueryWrapper);
+        if (!CollectionUtils.isEmpty(sysOrgList)) {
+            throw ExceptionResultEnum.ERROR.exception("该机构下有子机构,不能删除");
+        }
+        commonCacheService.removeOrgCollegeLevelCache(schoolId);
+        return this.removeById(id);
+    }
+
     /**
     /**
      * 根据子机构id深度优先搜索其父机构们
      * 根据子机构id深度优先搜索其父机构们
      *
      *

+ 5 - 38
teachcloud-common/src/main/java/com/qmth/teachcloud/common/service/impl/SysUserServiceImpl.java

@@ -340,33 +340,13 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
     }
     }
 
 
     @Override
     @Override
-    public AssignTeacherDto listUser(String courseCode, String param) {
+    public AssignTeacherDto listUser(Long courseId, String param) {
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
-        QueryWrapper<BasicCourse> basicCourseQueryWrapper = new QueryWrapper<>();
-        basicCourseQueryWrapper.lambda().eq(BasicCourse::getSchoolId, schoolId)
-                .eq(BasicCourse::getCode, courseCode)
-                .eq(BasicCourse::getEnable, true);
-        BasicCourse basicCourse = basicCourseService.getOne(basicCourseQueryWrapper);
+        BasicCourse basicCourse = basicCourseService.getById(courseId);
         if (Objects.isNull(basicCourse)) {
         if (Objects.isNull(basicCourse)) {
             throw ExceptionResultEnum.ERROR.exception("找不到此课程信息");
             throw ExceptionResultEnum.ERROR.exception("找不到此课程信息");
         }
         }
-
-//        Map<String, List<String>> flowSchoolCodeMap = SystemConstant.getFlowSchoolCodeMap();
-//        BasicSchool basicSchool = (BasicSchool) ServletUtil.getRequestSchool();
-//        if (flowSchoolCodeMap.get(SystemConstant.JXZYY_FLOW_KEY).contains(basicSchool.getCode())) {
-//            List<ApproveUserResult> approveUserResultList = sysUserService.findByJxzyyDirectorApprove(null, FlowApproveNameEnum.TEACHER);
-//            if (Objects.nonNull(approveUserResultList) && approveUserResultList.size() > 0) {//说明是实施人员提交
-//                List<BlurryUserDto> blurryUserDtoList = new ArrayList<>();
-//                for (ApproveUserResult sysUser : approveUserResultList) {
-//                    blurryUserDtoList.add(new BlurryUserDto(sysUser.getId(), sysUser.getLoginName(), sysUser.getRealName()));
-//                }
-//                return blurryUserDtoList;
-//            } else {
-//                return listUserCommon(basicCourse, schoolId);
-//            }
-//        } else {
         return listUserCommon(basicCourse, schoolId);
         return listUserCommon(basicCourse, schoolId);
-//        }
     }
     }
 
 
     /**
     /**
@@ -377,15 +357,6 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
      * @return
      * @return
      */
      */
     private AssignTeacherDto listUserCommon(BasicCourse basicCourse, Long schoolId) {
     private AssignTeacherDto listUserCommon(BasicCourse basicCourse, Long schoolId) {
-//        int count = this.countByTeachingRoomId(basicCourse.getTeachingRoomId());
-//        List<SysOrg> sysOrgList = null;
-//        if (count == 0) {
-//            sysOrgList = sysOrgService.findByConnectByParentId(basicCourse.getTeachingRoomId(), true, true);
-//        } else {
-//        List<SysOrg> sysOrgList = sysOrgService.findByConnectByRootOrgId(basicCourse.getTeachingRoomId());
-//        }
-//        Set<Long> orgIds = sysOrgList.stream().map(s -> s.getId()).collect(Collectors.toSet());
-//        List<ApproveUserResult> sysUserList = sysUserService.filterFlowPrivilege(schoolId, orgIds, false, null, null);
         List<SysUserResult> finalSysUserResultList = sysUserService.findSysUserResultListNew(schoolId, null);
         List<SysUserResult> finalSysUserResultList = sysUserService.findSysUserResultListNew(schoolId, null);
         if (!CollectionUtils.isEmpty(finalSysUserResultList)) {
         if (!CollectionUtils.isEmpty(finalSysUserResultList)) {
             finalSysUserResultList.forEach(e -> {
             finalSysUserResultList.forEach(e -> {
@@ -423,7 +394,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
             map.remove(key);
             map.remove(key);
         }
         }
         List<OrgDto> list = new ArrayList<>(map.values());
         List<OrgDto> list = new ArrayList<>(map.values());
-        List<SysUserResult> resultList = sysUserService.findCourseSysUserResultList(schoolId, basicCourse.getCode());
+        List<SysUserResult> resultList = sysUserService.findCourseSysUserResultList(schoolId, basicCourse.getId());
 //        List<BlurryUserDto> blurryUserDtoList = new ArrayList<>();
 //        List<BlurryUserDto> blurryUserDtoList = new ArrayList<>();
 //        for (ApproveUserResult sysUser : sysUserList) {
 //        for (ApproveUserResult sysUser : sysUserList) {
 //            blurryUserDtoList.add(new BlurryUserDto(sysUser.getId(), sysUser.getLoginName(), sysUser.getRealName()));
 //            blurryUserDtoList.add(new BlurryUserDto(sysUser.getId(), sysUser.getLoginName(), sysUser.getRealName()));
@@ -1030,14 +1001,10 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
 
 
     /**
     /**
      * 查找科目下命题老师
      * 查找科目下命题老师
-     *
-     * @param schoolId
-     * @param courseCode
-     * @return
      */
      */
     @Override
     @Override
-    public List<SysUserResult> findCourseSysUserResultList(Long schoolId, String courseCode) {
-        return sysUserMapper.findCourseSysUserResultList(schoolId, courseCode);
+    public List<SysUserResult> findCourseSysUserResultList(Long schoolId, Long courseId) {
+        return sysUserMapper.findCourseSysUserResultList(schoolId, courseId);
     }
     }
 
 
     /**
     /**

+ 0 - 32
teachcloud-common/src/main/java/com/qmth/teachcloud/common/service/impl/TeachcloudCommonServiceImpl.java

@@ -93,13 +93,6 @@ public class TeachcloudCommonServiceImpl implements TeachcloudCommonService {
 
 
     @Resource
     @Resource
     SysUserService sysUserService;
     SysUserService sysUserService;
-
-    @Resource
-    ConvertUtil convertUtil;
-
-    @Resource
-    BasicCampusService basicCampusService;
-
     @Resource
     @Resource
     BasicCourseService basicCourseService;
     BasicCourseService basicCourseService;
 
 
@@ -744,31 +737,6 @@ public class TeachcloudCommonServiceImpl implements TeachcloudCommonService {
         return loginResult;
         return loginResult;
     }
     }
 
 
-    @Override
-    public String getSysIncrCode(SystemCodeEnum type, SysUser requestUser) {
-        Long schoolId = requestUser.getSchoolId();
-        String date = DateUtil.today().replace(SystemConstant.HYPHEN, "");
-        int count = 0;
-        String code = date.concat(redisCounterUtil.getCounter(schoolId, 4, type.getCode()));
-        do {
-            switch (type) {
-                case CAMPUS_CODE:
-                    count = basicCampusService.count(new QueryWrapper<BasicCampus>().lambda()
-                            .eq(BasicCampus::getCampusCode, code)
-                            .eq(BasicCampus::getSchoolId, schoolId));
-                    break;
-                case COURSE_CODE:
-                    count = basicCourseService.count(new QueryWrapper<BasicCourse>().lambda()
-                            .eq(BasicCourse::getCode, code)
-                            .eq(BasicCourse::getSchoolId, schoolId));
-                    break;
-                default:
-                    break;
-            }
-        } while (count > 0);
-        return code;
-    }
-
     @Override
     @Override
     public boolean containsPrivilege(Long userId, String button, String selectStudent) {
     public boolean containsPrivilege(Long userId, String button, String selectStudent) {
         MenuResult menuResult = commonCacheService.userMenuCache(userId);
         MenuResult menuResult = commonCacheService.userMenuCache(userId);

+ 0 - 24
teachcloud-common/src/main/resources/mapper/BasicCampusMapper.xml

@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.qmth.teachcloud.common.mapper.BasicCampusMapper">
-
-    <select id="findBasicCampusResult"
-            resultType="com.qmth.teachcloud.common.bean.result.BasicCampusResult">
-        SELECT
-            cam.id AS id,
-            campus_name AS campusName,
-            campus_code AS campusCode,
-            print_house_id AS printHouseId,
-            org.name AS printHouseName,
-            cam.create_id AS createId,
-            cam.create_time AS createTime
-        FROM
-            basic_campus cam
-                LEFT JOIN
-            sys_org org ON cam.print_house_id = org.id
-        WHERE
-            cam.school_id = #{schoolId}
-          AND cam.enable = TRUE
-        ORDER BY cam.create_time DESC
-    </select>
-</mapper>

+ 0 - 33
teachcloud-common/src/main/resources/mapper/BasicCollegeMapper.xml

@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.qmth.teachcloud.common.mapper.BasicCollegeMapper">
-
-    <select id="findBasicCollegePage" resultType="com.qmth.teachcloud.common.bean.result.BasicCollegeResult">
-        SELECT
-            id,
-            college_name as collegeName,
-            create_time as createTime
-        FROM
-            basic_college
-        <where>
-            <if test="schoolId != null and schoolId != ''">
-                AND school_id = #{schoolId}
-            </if>
-            <if test="collegeName != null and collegeName != ''">
-                AND college_name LIKE CONCAT('%',#{collegeName},'%')
-            </if>
-            <if test="dpr != null">
-                <if test="dpr.requestUserId != null">
-                    AND create_id = #{dpr.requestUserId}
-                </if>
-                <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
-                    AND org_id IN
-                    <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
-                        #{item}
-                    </foreach>
-                </if>
-            </if>
-        </where>
-        ORDER BY create_time DESC
-    </select>
-</mapper>

+ 15 - 0
teachcloud-common/src/main/resources/mapper/BasicCourseMapper.xml

@@ -216,4 +216,19 @@
             </if>
             </if>
         </where>
         </where>
     </select>
     </select>
+    <select id="countTeachCourseByCourseId" resultType="java.lang.Integer">
+        select count(1) from teach_course where course_id = #{courseId}
+    </select>
+    <select id="countBasicExamStudentByCourseId" resultType="java.lang.Integer">
+        select count(1) from basic_exam_student where course_id = #{courseId}
+    </select>
+    <select id="countExamTaskByCourseId" resultType="java.lang.Integer">
+        select count(1) from exam_task where course_id = #{courseId}
+    </select>
+    <select id="countExamCardByCourseId" resultType="java.lang.Integer">
+        select count(1) from exam_card where course_id = #{courseId}
+    </select>
+    <select id="countMarkPaperByCourseId" resultType="java.lang.Integer">
+        select count(1) from mark_paper where course_id = #{courseId}
+    </select>
 </mapper>
 </mapper>

+ 2 - 2
teachcloud-common/src/main/resources/mapper/BasicStudentMapper.xml

@@ -131,8 +131,8 @@
             <if test="examId != null">
             <if test="examId != null">
                 and stu.exam_id = #{examId}
                 and stu.exam_id = #{examId}
             </if>
             </if>
-            <if test="courseCode != null and courseCode != ''">
-                and stu.course_code = #{courseCode}
+            <if test="courseId != null">
+                and stu.course_id = #{courseId}
             </if>
             </if>
             <if test="teacher != null and teacher != ''">
             <if test="teacher != null and teacher != ''">
                 and (su.login_name like concat('%', #{teacher}, '%') or su.real_name like concat('%', #{teacher}, '%'))
                 and (su.login_name like concat('%', #{teacher}, '%') or su.real_name like concat('%', #{teacher}, '%'))

+ 3 - 4
teachcloud-common/src/main/resources/mapper/SysUserMapper.xml

@@ -425,13 +425,12 @@
             join sys_user_role sur on sur.user_id = su.id
             join sys_user_role sur on sur.user_id = su.id
             join sys_role sr on sr.id = sur.role_id
             join sys_role sr on sr.id = sur.role_id
             join teach_course tc on tc.user_id = su.id
             join teach_course tc on tc.user_id = su.id
-            join basic_course bc on tc.school_id = bc.school_id AND bc.code = tc.course_code
         <where>
         <where>
-            <if test="schoolId != null and schoolId != ''">
+            <if test="schoolId != null">
                 and tc.school_id = #{schoolId}
                 and tc.school_id = #{schoolId}
             </if>
             </if>
-            <if test="courseCode != null and courseCode != ''">
-                and bc.code = #{courseCode}
+            <if test="courseId != null">
+                and tc.course_id = #{courseId}
             </if>
             </if>
         </where>
         </where>
         group by
         group by

Some files were not shown because too many files changed in this diff