Browse Source

3.3.2 update

xiaofei 1 năm trước cách đây
mục cha
commit
2e1e935aac

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

@@ -8,6 +8,8 @@ public class MatrixDto extends TPProfessional {
 
     private String courseCode;
     private String courseName;
+    // 是否可编辑
+    private Boolean canEdit;
     private List<MatrixRequirementDto> requirements;
 
     public String getCourseCode() {
@@ -33,4 +35,12 @@ public class MatrixDto extends TPProfessional {
     public void setRequirements(List<MatrixRequirementDto> requirements) {
         this.requirements = requirements;
     }
+
+    public Boolean getCanEdit() {
+        return canEdit;
+    }
+
+    public void setCanEdit(Boolean canEdit) {
+        this.canEdit = canEdit;
+    }
 }

+ 22 - 8
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/TPMatrixServiceImpl.java

@@ -12,17 +12,14 @@ import com.qmth.distributed.print.business.bean.dto.professional.MatrixDto;
 import com.qmth.distributed.print.business.bean.dto.professional.MatrixRequirementDto;
 import com.qmth.distributed.print.business.bean.dto.professional.MatrixSubRequirementDto;
 import com.qmth.distributed.print.business.bean.dto.professional.ProfessionalExportHead;
-import com.qmth.distributed.print.business.entity.TPCourse;
-import com.qmth.distributed.print.business.entity.TPMatrix;
-import com.qmth.distributed.print.business.entity.TPProfessional;
-import com.qmth.distributed.print.business.entity.TPRequirement;
+import com.qmth.distributed.print.business.entity.*;
 import com.qmth.distributed.print.business.mapper.TPMatrixMapper;
-import com.qmth.distributed.print.business.service.TPCourseService;
-import com.qmth.distributed.print.business.service.TPMatrixService;
-import com.qmth.distributed.print.business.service.TPProfessionalService;
-import com.qmth.distributed.print.business.service.TPRequirementService;
+import com.qmth.distributed.print.business.service.*;
 import com.qmth.teachcloud.common.contant.SystemConstant;
+import com.qmth.teachcloud.common.entity.SysPrivilege;
 import com.qmth.teachcloud.common.entity.SysUser;
+import com.qmth.teachcloud.common.enums.RoleTypeEnum;
+import com.qmth.teachcloud.common.service.SysPrivilegeService;
 import com.qmth.teachcloud.common.util.ServletUtil;
 import org.apache.commons.collections4.CollectionUtils;
 import org.apache.commons.lang3.StringUtils;
@@ -58,21 +55,38 @@ public class TPMatrixServiceImpl extends ServiceImpl<TPMatrixMapper, TPMatrix> i
     private TPCourseService tpCourseService;
     @Resource
     private TPRequirementService tpRequirementService;
+    @Resource
+    private SysPrivilegeService sysPrivilegeService;
+    @Resource
+    private TeachCourseService teachCourseService;
 
     @Override
     public List<MatrixDto> getMatrix(Long professionalId) {
+        SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
         List<TPMatrix> tpMatrixList = this.baseMapper.listMatrix(professionalId);
         if (CollectionUtils.isNotEmpty(tpMatrixList)) {
+            List<SysPrivilege> sysPrivileges = sysPrivilegeService.getClientUrlByUserId(sysUser.getId());
+            boolean canEditCourse = sysPrivileges.stream().filter(m -> m.getId() == 2056L && "canEditCourse".equals(m.getUrl())).count() > 0;
+            List<String> codeList = new ArrayList<>();
+            if (!canEditCourse) {
+                List<TeachCourse> teachCourseList = teachCourseService.list(new QueryWrapper<TeachCourse>().lambda().eq(TeachCourse::getUserId, sysUser.getId()));
+                if (CollectionUtils.isNotEmpty(teachCourseList)) {
+                    codeList = teachCourseList.stream().map(TeachCourse::getCourseCode).distinct().collect(Collectors.toList());
+                }
+            }
+
             List<MatrixDto> matrixDtoList = new ArrayList<>();
             LinkedMultiValueMap<Long, TPMatrix> courseMap = new LinkedMultiValueMap<>();
             for (TPMatrix tpMatrix : tpMatrixList) {
                 courseMap.add(tpMatrix.getCourseId(), tpMatrix);
             }
+            List<String> finalCodeList = codeList;
             courseMap.entrySet().stream().forEach(entry -> {
                 TPCourse tpCourse = tpCourseService.getById(entry.getKey());
                 MatrixDto matrixDto = new MatrixDto();
                 matrixDto.setCourseCode(tpCourse.getCourseCode());
                 matrixDto.setCourseName(tpCourse.getCourseName());
+                matrixDto.setCanEdit(canEditCourse || finalCodeList.contains(tpCourse.getCourseCode()));
                 List<MatrixRequirementDto> matrixRequirementDtoList = new ArrayList<>();
                 LinkedMultiValueMap<Long, TPMatrix> requirementMap = new LinkedMultiValueMap<>();
                 for (TPMatrix tpMatrix : entry.getValue()) {

+ 2 - 0
distributed-print/install/mysql/upgrade/3.3.2.sql

@@ -79,3 +79,5 @@ INSERT INTO `sys_privilege` (`id`, `name`, `url`, `type`, `parent_id`, `sequence
 INSERT INTO `sys_privilege` (`id`, `name`, `url`, `type`, `parent_id`, `sequence`, `property`, `enable`, `default_auth`, `front_display`) VALUES ('2053', '毕业支撑矩阵-查询', '/api/admin/professional/certification/matrix/get', 'URL', '2036', '12', 'AUTH', '1', '1', '1');
 INSERT INTO `sys_privilege` (`id`, `name`, `url`, `type`, `parent_id`, `sequence`, `property`, `enable`, `default_auth`, `front_display`) VALUES ('2054', '毕业支撑矩阵-提交', '/api/admin/professional/certification/matrix/save', 'URL', '2036', '13', 'AUTH', '1', '1', '1');
 INSERT INTO `sys_privilege` (`id`, `name`, `url`, `type`, `parent_id`, `sequence`, `property`, `enable`, `default_auth`, `front_display`) VALUES ('2055', '毕业支撑矩阵-下载', '/api/admin/professional/certification/matrix/download', 'URL', '2036', '14', 'AUTH', '1', '1', '1');
+INSERT INTO `sys_privilege` (`id`, `name`, `url`, `type`, `parent_id`, `sequence`, `property`, `enable`, `default_auth`, `front_display`) VALUES ('2056', '是否可编辑(课程)', 'canEditCourse', 'LINK', '2036', '6', 'AUTH', '1', '0', '1');
+INSERT INTO `sys_privilege` (`id`, `name`, `url`, `type`, `parent_id`, `sequence`, `property`, `enable`, `default_auth`, `front_display`) VALUES ('2057', '是否可编辑(毕业要求)', 'canEditRequirement', 'LINK', '2036', '7', 'AUTH', '1', '0', '1');

+ 5 - 5
distributed-print/src/main/resources/application.properties

@@ -57,13 +57,13 @@ spring.activiti.history-level=audit
 #com.qmth.fss.private.config=../static/
 #com.qmth.fss.private.server=/static/
 
-com.qmth.fss.public.config=/Users/xiaofei/qmth/temporary/zxzk/file-temp
-com.qmth.fss.public.server=http://192.168.11.111:7001
-com.qmth.fss.private.config=/Users/xiaofei/qmth/temporary/zxzk/pdf-temp
-com.qmth.fss.private.server=http://192.168.11.111:7001
+com.qmth.fss.public.config=/Users/xiaofei/qmth/temporary/zxzk/file-temp/
+com.qmth.fss.public.server=/file-temp/
+com.qmth.fss.private.config=/Users/xiaofei/qmth/temporary/zxzk/pdf-temp/
+com.qmth.fss.private.server=/pdf-temp/
 
 #\u7CFB\u7EDF\u914D\u7F6E
-sys.config.oss=false
+sys.config.oss=true
 sys.config.htmlToPdfUrl=/usr/local/bin/wkhtmltopdf
 sys.config.serverUpload=
 spring.resources.static-locations=file:${sys.config.serverUpload},classpath:/META-INF/resources/,classpath:/resources/