Bladeren bron

3.3.4 update

xiaofei 1 jaar geleden
bovenliggende
commit
0c2c6df412

+ 28 - 0
distributed-print-business/src/main/java/com/qmth/distributed/print/business/bean/params/obe/cultureProgram/ObeRequirementTargetMatrixParam.java

@@ -0,0 +1,28 @@
+package com.qmth.distributed.print.business.bean.params.obe.cultureProgram;
+
+import com.qmth.distributed.print.business.entity.ObeRequirementTargetMatrix;
+
+import java.util.List;
+
+public class ObeRequirementTargetMatrixParam {
+
+    private Long cultureProgramId;
+
+    private List<Long> list;
+
+    public Long getCultureProgramId() {
+        return cultureProgramId;
+    }
+
+    public void setCultureProgramId(Long cultureProgramId) {
+        this.cultureProgramId = cultureProgramId;
+    }
+
+    public List<Long> getList() {
+        return list;
+    }
+
+    public void setList(List<Long> list) {
+        this.list = list;
+    }
+}

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

@@ -2,6 +2,7 @@ package com.qmth.distributed.print.business.service;
 
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.qmth.distributed.print.business.bean.dto.obe.RequirementTargetMatrixDto;
+import com.qmth.distributed.print.business.bean.params.obe.cultureProgram.ObeRequirementTargetMatrixParam;
 import com.qmth.distributed.print.business.entity.ObeCultureProgramTarget;
 import com.qmth.distributed.print.business.entity.ObeRequirementTargetMatrix;
 
@@ -20,11 +21,13 @@ public interface ObeRequirementTargetMatrixService extends IService<ObeRequireme
 
     List<RequirementTargetMatrixDto> getMatrix(Long cultureProgramId);
 
-    boolean saveMatrix(List<ObeRequirementTargetMatrix> obeRequirementTargetMatrixList);
+    boolean saveMatrix(ObeRequirementTargetMatrixParam obeRequirementTargetMatrixParam);
 
     void updateMatrix(ObeCultureProgramTarget obeCultureProgramTarget);
 
     void removeMatrixByCondition(ObeRequirementTargetMatrix obeRequirementTargetMatrix);
 
     void copyByCultureProgramId(Long id, Long obeCultureProgramNewId, Map<Long, Long> targetIdMap, Map<Long, Long> requirementIdMap);
+
+    List<ObeRequirementTargetMatrix> listByCultureProgramId(Long cultureProgramId);
 }

+ 19 - 8
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/ObeRequirementTargetMatrixServiceImpl.java

@@ -1,10 +1,12 @@
 package com.qmth.distributed.print.business.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.qmth.distributed.print.business.bean.dto.obe.MatrixTargetDto;
 import com.qmth.distributed.print.business.bean.dto.obe.RequirementTargetMatrixDto;
+import com.qmth.distributed.print.business.bean.params.obe.cultureProgram.ObeRequirementTargetMatrixParam;
 import com.qmth.distributed.print.business.entity.ObeCultureProgramRequirement;
 import com.qmth.distributed.print.business.entity.ObeCultureProgramTarget;
 import com.qmth.distributed.print.business.entity.ObeRequirementTargetMatrix;
@@ -68,14 +70,16 @@ public class ObeRequirementTargetMatrixServiceImpl extends ServiceImpl<ObeRequir
 
     @Transactional
     @Override
-    public boolean saveMatrix(List<ObeRequirementTargetMatrix> obeRequirementTargetMatrixList) {
-        for (ObeRequirementTargetMatrix tpMatrix : obeRequirementTargetMatrixList) {
-            UpdateWrapper<ObeRequirementTargetMatrix> updateWrapper = new UpdateWrapper<>();
-            updateWrapper.lambda().set(ObeRequirementTargetMatrix::getEnable, tpMatrix.getEnable())
-                    .eq(ObeRequirementTargetMatrix::getId, tpMatrix.getId());
-            this.update(updateWrapper);
-        }
-        return true;
+    public boolean saveMatrix(ObeRequirementTargetMatrixParam obeRequirementTargetMatrixParam) {
+        List<ObeRequirementTargetMatrix> requirementTargetMatrixList = this.listByCultureProgramId(obeRequirementTargetMatrixParam.getCultureProgramId());
+        requirementTargetMatrixList.stream().forEach(matrix -> {
+            if (obeRequirementTargetMatrixParam.getList().stream().anyMatch(matrixId -> matrixId.equals(matrix.getId()))) {
+                matrix.setEnable(true);
+            } else {
+                matrix.setEnable(false);
+            }
+        });
+        return this.updateBatchById(requirementTargetMatrixList);
     }
 
     @Override
@@ -117,4 +121,11 @@ public class ObeRequirementTargetMatrixServiceImpl extends ServiceImpl<ObeRequir
             this.saveBatch(obeRequirementTargetMatrixList);
         }
     }
+
+    @Override
+    public List<ObeRequirementTargetMatrix> listByCultureProgramId(Long cultureProgramId) {
+        QueryWrapper<ObeRequirementTargetMatrix> queryWrapper = new QueryWrapper<>();
+        queryWrapper.lambda().eq(ObeRequirementTargetMatrix::getCultureProgramId, cultureProgramId);
+        return this.list(queryWrapper);
+    }
 }

+ 3 - 2
distributed-print-business/src/main/resources/mapper/TRExamStudentMapper.xml

@@ -16,9 +16,10 @@
                 LEFT JOIN
             t_r_basic_info rbi ON res.r_basic_info_id = rbi.id
                 LEFT JOIN
-            basic_exam be ON rbi.exam_id = be.id
+            obe_course_outline oco ON rbi.culture_program_id = oco.culture_program_id
+                AND rbi.course_id = oco.course_id
                 LEFT JOIN
-            basic_semester bs ON be.semester_id = bs.id
+            basic_semester bs ON oco.semester_id = bs.id
         WHERE
             rbi.culture_program_id = #{cultureProgramId}
           AND res.student_code = #{studentCode}

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

@@ -6,6 +6,7 @@ import com.qmth.boot.api.constant.ApiConstant;
 import com.qmth.distributed.print.business.bean.dto.professional.ProfessionalDto;
 import com.qmth.distributed.print.business.bean.params.obe.cultureProgram.ObeCultureProgramCourseParam;
 import com.qmth.distributed.print.business.bean.params.obe.cultureProgram.ObeCultureProgramDescriptionParam;
+import com.qmth.distributed.print.business.bean.params.obe.cultureProgram.ObeRequirementTargetMatrixParam;
 import com.qmth.distributed.print.business.entity.*;
 import com.qmth.distributed.print.business.service.*;
 import com.qmth.teachcloud.common.annotation.OperationLogDetail;
@@ -161,8 +162,8 @@ public class ObeCultureProgramController {
     @ApiOperation(value = "培养目标与毕业要求关系矩阵-提交")
     @RequestMapping(value = "/target/matrix/save", method = RequestMethod.POST)
     @ApiResponses({@ApiResponse(code = 200, message = "分页查询", response = Boolean.class)})
-    public Result saveTargetMatrix(@RequestBody List<ObeRequirementTargetMatrix> obeRequirementTargetMatrixList) {
-        return ResultUtil.ok(obeRequirementTargetMatrixService.saveMatrix(obeRequirementTargetMatrixList));
+    public Result saveTargetMatrix(@RequestBody ObeRequirementTargetMatrixParam obeRequirementTargetMatrixParam) {
+        return ResultUtil.ok(obeRequirementTargetMatrixService.saveMatrix(obeRequirementTargetMatrixParam));
     }
 
     @ApiOperation(value = "课程体系-选择课程")