xiaof %!s(int64=4) %!d(string=hai) anos
pai
achega
d69d26635d

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

@@ -26,13 +26,13 @@ public interface ExamTaskMapper extends BaseMapper<ExamTask> {
 
     List<BlurryUserDto> listUser(@Param("schoolId") Long schoolId, @Param("param") String param);
 
-    IPage<ExamTaskDto> listTaskApply(Page<ExamTaskDto> page, @Param("schoolId") Long schoolId, @Param("auditStatus") String auditStatus, @Param("reviewStatus") String reviewStatus, @Param("cardRuleId") Long cardRuleId, @Param("courseCode") String courseCode, @Param("paperNumber") String paperNumber, @Param("startTime") Long startTime, @Param("endTime") Long endTime, @Param("status") String[] status);
+    IPage<ExamTaskDto> listTaskApply(Page<ExamTaskDto> page, @Param("schoolId") Long schoolId, @Param("auditStatus") String auditStatus, @Param("reviewStatus") String reviewStatus, @Param("cardRuleId") Long cardRuleId, @Param("courseCode") String courseCode, @Param("paperNumber") String paperNumber, @Param("startTime") Long startTime, @Param("endTime") Long endTime, @Param("status") String[] status, @Param("userId") Long userId);
 
-    IPage<ExamTaskDto> listTaskReviewUnaudited(Page<ExamTaskDto> page, @Param("schoolId") Long schoolId, @Param("courseCode") String courseCode, @Param("paperNumber") String paperNumber, @Param("userId") Long userId, @Param("cardRuleId") Long cardRuleId, @Param("startTime") Long startTime, @Param("endTime") Long endTime);
+    IPage<ExamTaskDto> listTaskReviewUnaudited(Page<ExamTaskDto> page, @Param("schoolId") Long schoolId, @Param("courseCode") String courseCode, @Param("paperNumber") String paperNumber, @Param("userId") Long userId, @Param("cardRuleId") Long cardRuleId, @Param("startTime") Long startTime, @Param("endTime") Long endTime, @Param("orgIds") Set<Long> orgIds);
 
-    IPage<ExamTaskDto> listTaskReviewAudited(Page<ExamTaskDto> page, @Param("schoolId") Long schoolId, @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);
+    IPage<ExamTaskDto> listTaskReviewAudited(Page<ExamTaskDto> page, @Param("schoolId") Long schoolId, @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);
 
-    IPage<ExamTaskDetailDto> listTaskPaper(Page<ExamTaskDetailDto> page, @Param("schoolId") Long schoolId, @Param("courseCode") String courseCode, @Param("paperNumber") String paperNumber, @Param("startTime") Long startTime, @Param("endTime") Long endTime);
+    IPage<ExamTaskDetailDto> listTaskPaper(Page<ExamTaskDetailDto> page, @Param("schoolId") Long schoolId, @Param("courseCode") String courseCode, @Param("paperNumber") String paperNumber, @Param("startTime") Long startTime, @Param("endTime") Long endTime, Set<Long> orgIds);
 
     List<RelatePaperDto> listPaperNumbers(@Param("schoolId") Long schoolId, @Param("courseCode") String courseCode);
 

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

@@ -162,5 +162,5 @@ public interface CommonService {
      * @param orgId
      * @return
      */
-    public Set<Long> listSubOrgIds(Long orgId);
+    public Set<Long> listSubOrgIds();
 }

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

@@ -68,8 +68,7 @@ public class BasicCardRuleServiceImpl extends ServiceImpl<BasicCardRuleMapper, B
             queryWrapper.lambda().like(BasicCardRule::getName, param);
         }
 //        return this.list(queryWrapper);
-        SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
-        Set<Long> orgIds = sysUser.getOrgId() == null ? null : commonService.listSubOrgIds(sysUser.getOrgId());
+        Set<Long> orgIds = commonService.listSubOrgIds();
         return this.baseMapper.list(schoolId, param, orgIds);
     }
 

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

@@ -528,7 +528,12 @@ public class CommonServiceImpl implements CommonService {
     }
 
     @Override
-    public Set<Long> listSubOrgIds(Long orgId) {
+    public Set<Long> listSubOrgIds() {
+        SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
+        Long orgId = sysUser.getOrgId();
+        if(orgId == null){
+            return null;
+        }
         List<OrgDto> orgDtos = sysOrgService.listOrgTree();
 //        String string = "[{\"id\":\"114751029785919488\",\"schoolId\":\"1\",\"code\":\"012453\",\"name\":\"计算机学院\",\"parentId\":null,\"enable\":true,\"children\":[{\"id\":\"114751144823095296\",\"schoolId\":\"1\",\"code\":\"451245\",\"name\":\"硬件学院\",\"parentId\":114751029785919488,\"enable\":true,\"children\":[]}]},{\"id\":\"114751249978490880\",\"schoolId\":\"1\",\"code\":\"42152\",\"name\":\"化学学院\",\"parentId\":null,\"enable\":true,\"children\":[]},{\"id\":\"114751303661387776\",\"schoolId\":\"1\",\"code\":\"en1254\",\"name\":\"外国语学院\",\"parentId\":null,\"enable\":true,\"children\":[]},{\"id\":\"1\",\"schoolId\":\"1\",\"code\":\"O00001\",\"name\":\"物理学院\",\"parentId\":null,\"enable\":true,\"children\":[{\"id\":\"114751422234361856\",\"schoolId\":\"1\",\"code\":\"784512\",\"name\":\"光电系\",\"parentId\":1,\"enable\":true,\"children\":[{\"id\":\"114751422234361857\",\"schoolId\":\"1\",\"code\":\"784512\",\"name\":\"光电系\",\"parentId\":114751422234361856,\"enable\":true,\"children\":[]},{\"id\":\"114751422234361858\",\"schoolId\":\"1\",\"code\":\"784512\",\"name\":\"光电系\",\"parentId\":114751422234361856,\"enable\":true,\"children\":[]}]}]}]";
 //        List<OrgDto> orgDtos = JSONObject.parseArray(string, OrgDto.class);
@@ -539,7 +544,7 @@ public class CommonServiceImpl implements CommonService {
     }
 
     public static void main(String[] args) {
-        new CommonServiceImpl().listSubOrgIds(1l);
+        new CommonServiceImpl().listSubOrgIds();
     }
 
     private Set<Long> getOrgIds(Set<Long> stringSet, List<OrgDto> orgDtos, Long parentId) {

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

@@ -89,8 +89,7 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
     @Override
     public IPage<ExamTaskDto> list(Boolean enable, String status, Long cardRuleId, String courseCode, String paperNumber, Long startTime, Long endTime, Integer pageNumber, Integer pageSize) {
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
-        SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
-        Set<Long> orgIds = sysUser.getOrgId() == null ? null : commonService.listSubOrgIds(sysUser.getOrgId());
+        Set<Long> orgIds = commonService.listSubOrgIds();
         Page<ExamTaskDto> page = new Page<>(pageNumber, pageSize);
         IPage<ExamTaskDto> examTaskDtoIPage = this.baseMapper.listPage(page, schoolId, enable, status, cardRuleId, courseCode, paperNumber, startTime, endTime, orgIds);
         return examTaskDtoIPage;
@@ -361,25 +360,28 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
     @Override
     public IPage<ExamTaskDto> listTaskApply(String auditStatus, String reviewStatus, Long cardRuleId, String courseCode, String paperNumber, Long startTime, Long endTime, Integer pageNumber, Integer pageSize) {
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
+        SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
         Page<ExamTaskDto> page = new Page<>(pageNumber, pageSize);
-        String[] strings = new String[]{ExamStatusEnum.NEW.name(), ExamStatusEnum.FINISH.name()};
-        IPage<ExamTaskDto> examTaskDtoIPage = this.baseMapper.listTaskApply(page, schoolId, auditStatus, reviewStatus, cardRuleId, courseCode, paperNumber, startTime, endTime, strings);
+        String[] strings = new String[]{ExamStatusEnum.NEW.name(), ExamStatusEnum.SUBMIT.name(), ExamStatusEnum.FINISH.name()};
+        IPage<ExamTaskDto> examTaskDtoIPage = this.baseMapper.listTaskApply(page, schoolId, auditStatus, reviewStatus, cardRuleId, courseCode, paperNumber, startTime, endTime, strings, sysUser.getId());
         return examTaskDtoIPage;
     }
 
     @Override
     public IPage<ExamTaskDto> listTaskReviewUnaudited(String courseCode, String paperNumber, Long userId, Long cardRuleId, Long startTime, Long endTime, Integer pageNumber, Integer pageSize) {
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
+        Set<Long> orgIds = commonService.listSubOrgIds();
         Page<ExamTaskDto> page = new Page<>(pageNumber, pageSize);
-        IPage<ExamTaskDto> examTaskDtoIPage = this.baseMapper.listTaskReviewUnaudited(page, schoolId, courseCode, paperNumber, userId, cardRuleId, startTime, endTime);
+        IPage<ExamTaskDto> examTaskDtoIPage = this.baseMapper.listTaskReviewUnaudited(page, schoolId, courseCode, paperNumber, userId, cardRuleId, startTime, endTime, orgIds);
         return examTaskDtoIPage;
     }
 
     @Override
     public IPage<ExamTaskDto> listTaskReviewAudited(String reviewStatus, String courseCode, String paperNumber, Long userId, Long cardRuleId, Long startTime, Long endTime, Integer pageNumber, Integer pageSize) {
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
+        Set<Long> orgIds = commonService.listSubOrgIds();
         Page<ExamTaskDto> page = new Page<>(pageNumber, pageSize);
-        IPage<ExamTaskDto> examTaskDtoIPage = this.baseMapper.listTaskReviewAudited(page, schoolId, reviewStatus, courseCode, paperNumber, userId, cardRuleId, startTime, endTime);
+        IPage<ExamTaskDto> examTaskDtoIPage = this.baseMapper.listTaskReviewAudited(page, schoolId, reviewStatus, courseCode, paperNumber, userId, cardRuleId, startTime, endTime, orgIds);
         return examTaskDtoIPage;
     }
 
@@ -437,8 +439,9 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
     @Override
     public IPage<ExamTaskDetailDto> listTaskPaper(String courseCode, String paperNumber, Long startTime, Long endTime, Integer pageNumber, Integer pageSize) {
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
+        Set<Long> orgIds = commonService.listSubOrgIds();
         Page<ExamTaskDetailDto> page = new Page<>(pageNumber, pageSize);
-        IPage<ExamTaskDetailDto> examTaskDtoIPage = this.baseMapper.listTaskPaper(page, schoolId, courseCode, paperNumber, startTime, endTime);
+        IPage<ExamTaskDetailDto> examTaskDtoIPage = this.baseMapper.listTaskPaper(page, schoolId, courseCode, paperNumber, startTime, endTime, orgIds);
         return examTaskDtoIPage;
     }
 

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

@@ -56,8 +56,7 @@ public class SysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> impl
     @Transactional
     @Override
     public boolean saveRole(SysRole role) {
-//        Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
-        Long schoolId = null;
+        Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
         role.setSchoolId(schoolId);
         SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
 

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

@@ -259,8 +259,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
     @Override
     public List<BlurryUserDto> listUser(String courseCode, String param) {
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
-        SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
-        Set<Long> orgIds = sysUser.getOrgId() == null ? null : commonService.listSubOrgIds(sysUser.getOrgId());
+        Set<Long> orgIds = commonService.listSubOrgIds();
         return this.baseMapper.listUser(schoolId, RoleTypeEnum.QUESTION_TEACHER.name(), courseCode, param, orgIds);
     }
 

+ 51 - 3
distributed-print-business/src/main/resources/mapper/ExamTaskMapper.xml

@@ -137,7 +137,13 @@
                 LEFT JOIN
             basic_card_rule b ON a.card_rule_id = b.id
                 LEFT JOIN
-            sys_user c ON a.user_id = c.id) a
+            sys_user c ON a.user_id = c.id
+            <where>
+                <if test="userId != null and userId != ''">
+                    and a.user_id = #{userId}
+                </if>
+            </where>
+            ) a
         <where>
             a.enable = true and a.status not in
             <foreach item="item" collection="status" separator="," open="(" close=")" index="">
@@ -202,6 +208,8 @@
             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
         <where>
             a.enable = true and a.review = true and a.status = 'SUBMIT' and a.review_status is null
             <if test="schoolId != null and schoolId != ''">
@@ -225,6 +233,12 @@
             <if test="endTime != null and endTime != ''">
                 and a.start_time &lt;= #{endTime}
             </if>
+            <if test="orgIds != null">
+                AND d.org_id IN
+                <foreach collection="orgIds" item="item" index="index" open="(" separator="," close=")">
+                    #{item}
+                </foreach>
+            </if>
         </where>
     </select>
     <select id="listTaskReviewAudited" resultType="com.qmth.distributed.print.business.bean.dto.ExamTaskDto">
@@ -261,6 +275,8 @@
             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
         <where>
             a.enable = true and a.review = true and a.status in ('STAGE','FINISH') and a.review_status is not null
             <if test="schoolId != null and schoolId != ''">
@@ -287,6 +303,12 @@
             <if test="endTime != null and endTime != ''">
                 and a.start_time &lt;= #{endTime}
             </if>
+            <if test="orgIds != null">
+                AND d.org_id IN
+                <foreach collection="orgIds" item="item" index="index" open="(" separator="," close=")">
+                    #{item}
+                </foreach>
+            </if>
         </where>
     </select>
     <select id="listTaskPaper" resultType="com.qmth.distributed.print.business.bean.dto.ExamTaskDetailDto">
@@ -313,6 +335,8 @@
             exam_task_detail b ON a.id = b.exam_task_id
                 LEFT JOIN
             sys_user c ON a.user_id = c.id
+                LEFT JOIN
+            sys_user d ON a.create_id = d.id
         <where>
             a.status = 'FINISH'
             <if test="schoolId != null and schoolId != ''">
@@ -330,6 +354,12 @@
             <if test="endTime != null and endTime != ''">
                 and a.create_time &lt;= #{endTime}
             </if>
+            <if test="orgIds != null">
+                AND d.org_id IN
+                <foreach collection="orgIds" item="item" index="index" open="(" separator="," close=")">
+                    #{item}
+                </foreach>
+            </if>
         </where>
     </select>
     <select id="listPaperNumbers" resultType="com.qmth.distributed.print.business.bean.dto.RelatePaperDto">
@@ -366,7 +396,7 @@
         <include refid="myworkCommonHead" />
         <include refid="myworkCommonMiddle" />
         <where>
-            <include refid="myworkCommonFoot" />
+            <include refid="myworkSubmitCommonFoot" />
         </where>
     </select>
 
@@ -374,7 +404,7 @@
         <include refid="myworkCommonHead" />
         <include refid="myworkCommonMiddle" />
         <where>
-            <include refid="myworkCommonFoot" />
+            <include refid="myworkSubmitCommonFoot" />
         </where>
     </select>
 
@@ -427,4 +457,22 @@
         </if>
         and et.enable = 1
     </sql>
+
+    <sql id="myworkSubmitCommonFoot">
+        <choose>
+            <when test="userId != null and userId != ''">
+                and et.create_id = #{userId}
+            </when>
+        </choose>
+        <if test="schoolId != null and schoolId != ''">
+            and et.school_id = #{schoolId}
+        </if>
+        <if test="status != null and status != ''">
+            and et.status in
+            <foreach item="item" collection="status" separator="," open="(" close=")" index="">
+                #{item}
+            </foreach>
+        </if>
+        and et.enable = 1
+    </sql>
 </mapper>