xiaofei 1 年間 前
コミット
b55e2ddd61

+ 12 - 0
distributed-print-business/src/main/java/com/qmth/distributed/print/business/entity/TPMatrix.java

@@ -37,6 +37,10 @@ public class TPMatrix extends BaseEntity implements Serializable {
     @ApiModelProperty(value = "指标值")
     private Double content;
 
+    @ApiModelProperty(value = "课程排序值")
+    @TableField(exist = false)
+    private int courseSortNum;
+
     @ApiModelProperty(value = "毕业要求排序值")
     @TableField(exist = false)
     private int requirementSortNum;
@@ -81,6 +85,14 @@ public class TPMatrix extends BaseEntity implements Serializable {
         this.content = content;
     }
 
+    public int getCourseSortNum() {
+        return courseSortNum;
+    }
+
+    public void setCourseSortNum(int courseSortNum) {
+        this.courseSortNum = courseSortNum;
+    }
+
     public int getRequirementSortNum() {
         return requirementSortNum;
     }

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

@@ -21,7 +21,7 @@ public interface TPCourseService extends IService<TPCourse> {
 
     boolean saveCourse(TPCourseParam tpCourseParam);
 
-    boolean saveSort(TPCourseParam tpCourseParam);
+    boolean saveSort(List<TPCourse> courseList);
 
     boolean removeCourse(Long id);
 

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

@@ -19,7 +19,7 @@ import java.util.List;
  */
 public interface TPMatrixService extends IService<TPMatrix> {
 
-    List<MatrixDto> listMatrix(Long professionalId);
+    List<MatrixDto> getMatrix(Long professionalId);
 
     boolean saveMatrix(TPMatrix tpMatrix);
 

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

@@ -87,8 +87,8 @@ public class TPCourseServiceImpl extends ServiceImpl<TPCourseMapper, TPCourse> i
 
     @Transactional
     @Override
-    public boolean saveSort(TPCourseParam tpCourseParam) {
-        tpCourseParam.getCourses().forEach(t -> {
+    public boolean saveSort(List<TPCourse> courseList) {
+        courseList.forEach(t -> {
             if (t.getId() != null && t.getSortNum() != null) {
                 UpdateWrapper<TPCourse> updateWrapper = new UpdateWrapper();
                 updateWrapper.lambda().set(TPCourse::getSortNum, t.getSortNum())

+ 18 - 10
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/TPMatrixServiceImpl.java

@@ -24,7 +24,9 @@ import com.qmth.teachcloud.common.contant.SystemConstant;
 import com.qmth.teachcloud.common.entity.SysUser;
 import com.qmth.teachcloud.common.util.ServletUtil;
 import org.apache.commons.collections4.CollectionUtils;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.stereotype.Service;
+import org.springframework.util.LinkedMultiValueMap;
 
 import javax.annotation.Resource;
 import javax.servlet.ServletOutputStream;
@@ -52,19 +54,25 @@ public class TPMatrixServiceImpl extends ServiceImpl<TPMatrixMapper, TPMatrix> i
     private TPRequirementService tpRequirementService;
 
     @Override
-    public List<MatrixDto> listMatrix(Long professionalId) {
+    public List<MatrixDto> getMatrix(Long professionalId) {
         List<TPMatrix> tpMatrixList = this.baseMapper.listMatrix(professionalId);
         if (CollectionUtils.isNotEmpty(tpMatrixList)) {
             List<MatrixDto> matrixDtoList = new ArrayList<>();
-            Map<Long, List<TPMatrix>> courseMap = tpMatrixList.stream().collect(Collectors.groupingBy(TPMatrix::getCourseId));
-            courseMap.entrySet().stream().sorted(Map.Entry.comparingByKey()).forEach(entry -> {
+            LinkedMultiValueMap<Long, TPMatrix> courseMap = new LinkedMultiValueMap<>();
+            for (TPMatrix tpMatrix : tpMatrixList) {
+                courseMap.add(tpMatrix.getCourseId(), tpMatrix);
+            }
+            courseMap.entrySet().stream().forEach(entry -> {
                 TPCourse tpCourse = tpCourseService.getById(entry.getKey());
                 MatrixDto matrixDto = new MatrixDto();
                 matrixDto.setCourseCode(tpCourse.getCourseCode());
                 matrixDto.setCourseName(tpCourse.getCourseName());
                 List<MatrixRequirementDto> matrixRequirementDtoList = new ArrayList<>();
-                Map<Long, List<TPMatrix>> requirementMap = entry.getValue().stream().collect(Collectors.groupingBy(TPMatrix::getRequirementId));
-                requirementMap.entrySet().stream().sorted(Map.Entry.comparingByKey()).forEach(requirementEntry -> {
+                LinkedMultiValueMap<Long, TPMatrix> requirementMap = new LinkedMultiValueMap<>();
+                for (TPMatrix tpMatrix : entry.getValue()) {
+                    requirementMap.add(tpMatrix.getRequirementId(), tpMatrix);
+                }
+                requirementMap.entrySet().stream().forEach(requirementEntry -> {
                     TPRequirement tpRequirement = tpRequirementService.getById(requirementEntry.getKey());
                     MatrixRequirementDto matrixRequirementDto = new MatrixRequirementDto();
                     matrixRequirementDto.setName(tpRequirement.getName());
@@ -72,7 +80,7 @@ public class TPMatrixServiceImpl extends ServiceImpl<TPMatrixMapper, TPMatrix> i
                     List<MatrixSubRequirementDto> matrixSubRequirementDtoList = requirementEntry.getValue().stream().map(tpMatrix -> {
                         MatrixSubRequirementDto matrixSubRequirementDto = new MatrixSubRequirementDto();
                         matrixSubRequirementDto.setId(tpMatrix.getId());
-                        matrixSubRequirementDto.setName(tpMatrix.getSubName());
+                        matrixSubRequirementDto.setName(StringUtils.isNotBlank(tpMatrix.getSubName()) ? tpMatrix.getRequirementSortNum() + "-" + tpMatrix.getSubName() : tpMatrix.getSubName());
                         matrixSubRequirementDto.setContent(tpMatrix.getContent());
                         return matrixSubRequirementDto;
                     }).collect(Collectors.toList());
@@ -177,7 +185,7 @@ public class TPMatrixServiceImpl extends ServiceImpl<TPMatrixMapper, TPMatrix> i
                     tpMatrix.setProfessionalId(tpRequirement.getProfessionalId());
                     tpMatrix.setCourseId(tpCourse.getId());
                     tpMatrix.setRequirementId(tpRequirement.getId());
-                    tpMatrix.setSubName(tpRequirement.getSortNum() + "-" + i);
+                    tpMatrix.setSubName(String.valueOf(i));
                     tpMatrixAddList.add(tpMatrix);
                 }
             }
@@ -205,7 +213,7 @@ public class TPMatrixServiceImpl extends ServiceImpl<TPMatrixMapper, TPMatrix> i
                             tpMatrix.setProfessionalId(tpRequirement.getProfessionalId());
                             tpMatrix.setCourseId(tpCourse.getId());
                             tpMatrix.setRequirementId(tpRequirement.getId());
-                            tpMatrix.setSubName(tpRequirement.getSortNum() + "-" + i);
+                            tpMatrix.setSubName(String.valueOf(i));
                             tpMatrixAddList.add(tpMatrix);
                         }
                     } else {
@@ -216,7 +224,7 @@ public class TPMatrixServiceImpl extends ServiceImpl<TPMatrixMapper, TPMatrix> i
                                 tpMatrix.setProfessionalId(tpRequirement.getProfessionalId());
                                 tpMatrix.setCourseId(tpCourse.getId());
                                 tpMatrix.setRequirementId(tpRequirement.getId());
-                                tpMatrix.setSubName(tpRequirement.getSortNum() + "-" + i);
+                                tpMatrix.setSubName(String.valueOf(i));
                                 tpMatrixAddList.add(tpMatrix);
                             }
                         } else if (tpRequirement.getNodeCount() < matrixList.size()) {
@@ -233,7 +241,7 @@ public class TPMatrixServiceImpl extends ServiceImpl<TPMatrixMapper, TPMatrix> i
                             tpMatrix.setProfessionalId(tpRequirement.getProfessionalId());
                             tpMatrix.setCourseId(tpCourse.getId());
                             tpMatrix.setRequirementId(tpRequirement.getId());
-                            tpMatrix.setSubName(tpRequirement.getSortNum() + "-" + i);
+                            tpMatrix.setSubName(String.valueOf(i));
                             tpMatrixAddList.add(tpMatrix);
                         }
                     } else if (tpRequirement.getNodeCount() < matrixList.size()) {

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

@@ -43,7 +43,7 @@ public class TPRequirementServiceImpl extends ServiceImpl<TPRequirementMapper, T
         QueryWrapper<TPRequirement> queryWrapper = new QueryWrapper<>();
         queryWrapper.lambda().eq(TPRequirement::getProfessionalId, professionalId)
                 .orderByAsc(TPRequirement::getSortNum);
-        return this.list();
+        return this.list(queryWrapper);
     }
 
     @Transactional

+ 1 - 0
distributed-print-business/src/main/resources/mapper/TPMatrixMapper.xml

@@ -18,6 +18,7 @@
     <select id="listMatrix" resultType="com.qmth.distributed.print.business.entity.TPMatrix">
         SELECT
             tpm.*,
+            tpc.sort_num courseSortNum,
             tpr.sort_num requirementSortNum
         FROM
             t_p_matrix tpm

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

@@ -91,8 +91,8 @@ public class TPProfessionalController {
     @ApiOperation(value = "课程管理-排序")
     @RequestMapping(value = "/course/sort", method = RequestMethod.POST)
     @ApiResponses({@ApiResponse(code = 200, message = "排序", response = Boolean.class)})
-    public Result saveSort(@RequestBody TPCourseParam tpCourseParam) {
-        return ResultUtil.ok(tpCourseService.saveSort(tpCourseParam));
+    public Result saveSort(@RequestBody List<TPCourse> courseList) {
+        return ResultUtil.ok(tpCourseService.saveSort(courseList));
     }
 
     @ApiOperation(value = "课程管理-删除")
@@ -134,7 +134,7 @@ public class TPProfessionalController {
     @RequestMapping(value = "/matrix/get", method = RequestMethod.POST)
     @ApiResponses({@ApiResponse(code = 200, message = "分页查询", response = MatrixDto.class)})
     public Result listMatrix(@ApiParam(value = "专业ID", required = true) @RequestParam Long professionalId) {
-        return ResultUtil.ok(tpMatrixService.listMatrix(professionalId));
+        return ResultUtil.ok(tpMatrixService.getMatrix(professionalId));
     }
 
     @ApiOperation(value = "毕业矩阵支撑-提交")