From 1043ec5efddcdc76e3241bbeb318e4c910e86975 Mon Sep 17 00:00:00 2001 From: zhaokai Date: Sat, 28 Feb 2026 08:42:18 +0800 Subject: [PATCH] =?UTF-8?q?feat(domain):=20=E5=AE=8C=E5=96=84=E9=A2=86?= =?UTF-8?q?=E5=9F=9F=E7=AE=A1=E7=90=86=E7=B3=BB=E7=BB=9F=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- start/src/main/resources/nacos.yml | 4 +-- .../web/DomainDepartmentController.java | 4 +-- .../web/DomainDepartmentUserController.java | 4 +-- .../domain/web/DomainGroupController.java | 4 +-- .../domain/web/DomainGroupUserController.java | 4 +-- .../domain/web/ProjectTaskController.java | 6 ++-- .../domain/web/ProjectTaskInfoController.java | 2 +- .../domain/command/DomainGroupAddExe.java | 11 ++++++ .../ProjectTaskScoreInfoUpdateExe.java | 8 ++++- .../domain/command/ProjectTaskUpdateExe.java | 2 +- .../command/query/ProjectTaskQueryExe.java | 26 +++++++++++--- .../dto/DomainDepartmentUserPageQry.java | 3 ++ .../com/zcloud/domain/dto/DomainGroupQry.java | 2 ++ .../domain/dto/DomainGroupUserPageQry.java | 3 ++ .../dto/ProjectTaskGroupUserAddCmd.java | 2 +- .../domain/dto/ProjectTaskInfoAddCmd.java | 4 +-- .../domain/dto/ProjectTaskInfoUpdateCmd.java | 3 ++ .../zcloud/domain/dto/ProjectTaskPageQry.java | 2 +- .../domain/dto/ProjectTaskUpdateCmd.java | 2 +- .../dto/clientobject/DomainGroupCO.java | 3 ++ .../dto/clientobject/ProjectTaskCO.java | 14 ++++++-- .../clientobject/ProjectTaskDetailsCO.java | 4 +-- .../dto/clientobject/ProjectTaskInfoCO.java | 3 ++ .../domain/domain/enums/CommonFlagEnum.java | 2 +- .../zcloud/domain/domain/enums/MenuEnum.java | 12 +++---- .../enums/ProjectTaskExecuteStatusEnum.java | 2 +- .../domain/domain/enums/ScoreStatusEnum.java | 21 ++++++++++++ .../domain/domain/model/ProjectTaskE.java | 2 +- .../domain/domain/model/ProjectTaskInfoE.java | 4 +++ .../persistence/dataobject/DomainGroupDO.java | 3 ++ .../persistence/dataobject/ProjectTaskDO.java | 4 +-- .../dataobject/ProjectTaskInfoDO.java | 4 +++ .../repository/CorpInfoRepository.java | 1 + .../repository/DomainGroupRepository.java | 2 ++ .../impl/CorpInfoRepositoryImpl.java | 5 ++- .../impl/DomainGroupRepositoryImpl.java | 12 +++++++ .../mapper/DomainDepartmentMapper.xml | 4 +-- .../resources/mapper/DomainGroupMapper.xml | 34 ++++++++++--------- .../resources/mapper/ProjectTaskMapper.xml | 12 ++++--- 39 files changed, 180 insertions(+), 64 deletions(-) create mode 100644 web-domain/src/main/java/com/zcloud/domain/domain/enums/ScoreStatusEnum.java diff --git a/start/src/main/resources/nacos.yml b/start/src/main/resources/nacos.yml index 99249ca..16924b1 100644 --- a/start/src/main/resources/nacos.yml +++ b/start/src/main/resources/nacos.yml @@ -20,7 +20,7 @@ spring: file-extension: yml shared-configs: - config-common.yml -# - config-port.yml + - config-port.yml - config-mq.yml - config-log.yml - config-sdk-server.yml @@ -36,5 +36,3 @@ spring: discovery: server-addr: ${spring.cloud.nacos.config.server-addr} namespace: ${spring.cloud.nacos.config.namespace} -server: - port: 8080 \ No newline at end of file diff --git a/web-adapter/src/main/java/com/zcloud/domain/web/DomainDepartmentController.java b/web-adapter/src/main/java/com/zcloud/domain/web/DomainDepartmentController.java index 0ea93c9..56a4d51 100644 --- a/web-adapter/src/main/java/com/zcloud/domain/web/DomainDepartmentController.java +++ b/web-adapter/src/main/java/com/zcloud/domain/web/DomainDepartmentController.java @@ -44,12 +44,12 @@ public class DomainDepartmentController { @ApiOperation("分页") @PostMapping("/list") - @PreAuthorize("@pms.hasAnyPermission('lybmgl')") +// @PreAuthorize("@pms.hasAnyPermission('lybmgl')") public PageResponse page(@RequestBody DomainDepartmentPageQry qry) { return domainDepartmentService.listPage(qry); } - @ApiOperation("所有数据") + @ApiOperation("领域部门所有数据") @PostMapping("/listAll") public MultiResponse listAll() { List domainDepartmentCOList = domainDepartmentService.listAll(); diff --git a/web-adapter/src/main/java/com/zcloud/domain/web/DomainDepartmentUserController.java b/web-adapter/src/main/java/com/zcloud/domain/web/DomainDepartmentUserController.java index 45c9da9..a9edc68 100644 --- a/web-adapter/src/main/java/com/zcloud/domain/web/DomainDepartmentUserController.java +++ b/web-adapter/src/main/java/com/zcloud/domain/web/DomainDepartmentUserController.java @@ -38,13 +38,13 @@ public class DomainDepartmentUserController { @ApiOperation("领域部门下审核人员分页") @PostMapping("/list") - public PageResponse page(@RequestBody DomainDepartmentUserPageQry qry) { + public PageResponse page(@Validated @RequestBody DomainDepartmentUserPageQry qry) { return domainDepartmentUserService.listPage(qry); } @ApiOperation("领域部门下审核人员所有数据") @PostMapping("/listAll") - public MultiResponse listAll(@RequestBody DomainDepartmentUserPageQry qry) { + public MultiResponse listAll(@Validated @RequestBody DomainDepartmentUserPageQry qry) { return MultiResponse.of(domainDepartmentUserService.listAll(qry)); } diff --git a/web-adapter/src/main/java/com/zcloud/domain/web/DomainGroupController.java b/web-adapter/src/main/java/com/zcloud/domain/web/DomainGroupController.java index f0f95e3..a003326 100644 --- a/web-adapter/src/main/java/com/zcloud/domain/web/DomainGroupController.java +++ b/web-adapter/src/main/java/com/zcloud/domain/web/DomainGroupController.java @@ -50,12 +50,12 @@ public class DomainGroupController { @ApiOperation("领域组分页") @PostMapping("/list") - @PreAuthorize("@pms.hasAnyPermission('lyzgl')") +// @PreAuthorize("@pms.hasAnyPermission('lyzgl')") public PageResponse page(@RequestBody DomainGroupPageQry qry) { return domainGroupService.listPage(qry); } - @ApiOperation("所有数据") + @ApiOperation("领域组所有数据") @PostMapping("/listAll") public MultiResponse listAll(@RequestBody DomainGroupQry qry) { return MultiResponse.of(domainGroupService.listAll(qry)); diff --git a/web-adapter/src/main/java/com/zcloud/domain/web/DomainGroupUserController.java b/web-adapter/src/main/java/com/zcloud/domain/web/DomainGroupUserController.java index 474f0da..d546a58 100644 --- a/web-adapter/src/main/java/com/zcloud/domain/web/DomainGroupUserController.java +++ b/web-adapter/src/main/java/com/zcloud/domain/web/DomainGroupUserController.java @@ -38,13 +38,13 @@ public class DomainGroupUserController { @ApiOperation("领域组人员分页") @PostMapping("/list") - public PageResponse page(@RequestBody DomainGroupUserPageQry qry) { + public PageResponse page(@Validated @RequestBody DomainGroupUserPageQry qry) { return domainGroupUserService.listPage(qry); } @ApiOperation("领域组人员所有数据") @PostMapping("/listAll") - public MultiResponse listAll(@RequestBody DomainGroupUserPageQry qry) { + public MultiResponse listAll(@Validated @RequestBody DomainGroupUserPageQry qry) { return MultiResponse.of(domainGroupUserService.listAll(qry)); } diff --git a/web-adapter/src/main/java/com/zcloud/domain/web/ProjectTaskController.java b/web-adapter/src/main/java/com/zcloud/domain/web/ProjectTaskController.java index ec625a8..39597ac 100644 --- a/web-adapter/src/main/java/com/zcloud/domain/web/ProjectTaskController.java +++ b/web-adapter/src/main/java/com/zcloud/domain/web/ProjectTaskController.java @@ -42,15 +42,15 @@ public class ProjectTaskController { } @ApiOperation("课题任务分页") - @PostMapping("/projectpage") - @PreAuthorize("@pms.hasAnyPermission('gfd-ktrw','qyd-ktrw')") + @PostMapping("/projectPage") +// @PreAuthorize("@pms.hasAnyPermission('gfd-ktrw','qyd-ktrw')") public PageResponse listPage(@RequestBody ProjectTaskPageQry qry) { return projectTaskService.listPage(qry); } @ApiOperation("课题评分分页") @PostMapping("/projectScorepage") - @PreAuthorize("@pms.hasAnyPermission('gfd-ktpf','qyd-ktpf')") +// @PreAuthorize("@pms.hasAnyPermission('gfd-ktpf','qyd-ktpf')") public PageResponse projectScorepage(@RequestBody ProjectTaskPageQry qry) { return projectTaskService.listPage(qry); } diff --git a/web-adapter/src/main/java/com/zcloud/domain/web/ProjectTaskInfoController.java b/web-adapter/src/main/java/com/zcloud/domain/web/ProjectTaskInfoController.java index 6cf8774..25909ad 100644 --- a/web-adapter/src/main/java/com/zcloud/domain/web/ProjectTaskInfoController.java +++ b/web-adapter/src/main/java/com/zcloud/domain/web/ProjectTaskInfoController.java @@ -33,7 +33,7 @@ import java.util.ArrayList; @AllArgsConstructor public class ProjectTaskInfoController { private final ProjectTaskInfoServiceI projectTaskInfoService; - @ApiOperation("新增课题反馈任务项") + @ApiOperation("更新课题反馈任务项") @PutMapping("/edit") public SingleResponse edit(@Validated @RequestBody ProjectTaskInfoUpdateCmd projectTaskInfoUpdateCmd) { projectTaskInfoService.edit(projectTaskInfoUpdateCmd); diff --git a/web-app/src/main/java/com/zcloud/domain/command/DomainGroupAddExe.java b/web-app/src/main/java/com/zcloud/domain/command/DomainGroupAddExe.java index efc3137..c0aaf86 100644 --- a/web-app/src/main/java/com/zcloud/domain/command/DomainGroupAddExe.java +++ b/web-app/src/main/java/com/zcloud/domain/command/DomainGroupAddExe.java @@ -1,5 +1,6 @@ package com.zcloud.domain.command; +import cn.hutool.core.collection.CollUtil; import com.alibaba.cola.exception.BizException; import com.zcloud.domain.command.convertor.DomainGroupUserCoConvertor; import com.zcloud.domain.domain.gateway.DomainGroupGateway; @@ -8,7 +9,9 @@ import com.zcloud.domain.dto.DomainDepartmentUserAddCmd; import com.zcloud.domain.dto.DomainGroupAddCmd; import com.zcloud.domain.dto.DomainGroupUserAddCmd; import com.zcloud.domain.persistence.dataobject.DomainDepartmentUserDO; +import com.zcloud.domain.persistence.dataobject.DomainGroupDO; import com.zcloud.domain.persistence.dataobject.DomainGroupUserDO; +import com.zcloud.domain.persistence.repository.DomainGroupRepository; import com.zcloud.domain.persistence.repository.DomainGroupUserRepository; import com.zcloud.gbscommon.utils.Tools; import lombok.AllArgsConstructor; @@ -29,6 +32,7 @@ import java.util.List; @AllArgsConstructor public class DomainGroupAddExe { private final DomainGroupGateway domainGroupGateway; + private final DomainGroupRepository domainGroupRepository; private final DomainGroupUserRepository domainGroupUserRepository; private final DomainGroupUserCoConvertor domainDepartmentUserCoConvertor; @@ -36,6 +40,13 @@ public class DomainGroupAddExe { public boolean execute(DomainGroupAddCmd cmd) { DomainGroupE domainGroupE = new DomainGroupE(); BeanUtils.copyProperties(cmd, domainGroupE); + + //判断一个小组,只能负责一个领域;领域小组必须为,分子公办公司; + cmd.getCorpinfoId(); + List domainGroupDOList =domainGroupRepository.getListByCorpinfoId(cmd.getCorpinfoId()); + if (CollUtil.isNotEmpty(domainGroupDOList)) { + throw new BizException("该公司已存在领域小组"); + } boolean res = false; try { res = domainGroupGateway.add(domainGroupE); diff --git a/web-app/src/main/java/com/zcloud/domain/command/ProjectTaskScoreInfoUpdateExe.java b/web-app/src/main/java/com/zcloud/domain/command/ProjectTaskScoreInfoUpdateExe.java index 14b89d9..f778c39 100644 --- a/web-app/src/main/java/com/zcloud/domain/command/ProjectTaskScoreInfoUpdateExe.java +++ b/web-app/src/main/java/com/zcloud/domain/command/ProjectTaskScoreInfoUpdateExe.java @@ -2,6 +2,7 @@ package com.zcloud.domain.command; import com.alibaba.cola.exception.BizException; import com.zcloud.domain.domain.enums.CommonFlagEnum; +import com.zcloud.domain.domain.enums.ScoreStatusEnum; import com.zcloud.domain.domain.gateway.ProjectTaskScoreInfoGateway; import com.zcloud.domain.domain.model.ProjectTaskScoreInfoE; import com.zcloud.domain.dto.ProjectTaskScoreInfoUpdateCmd; @@ -63,7 +64,12 @@ public class ProjectTaskScoreInfoUpdateExe { // 计算平均分并保留两位小数 BigDecimal averageScore = totalScore.divide(new BigDecimal(listByTaskId.size()),2,RoundingMode.HALF_UP); - projectTaskRepository.updateScoreStatus(info.getProjectTaskId(), CommonFlagEnum.YES.getCode(),averageScore); + projectTaskRepository.updateScoreStatus(info.getProjectTaskId(), ScoreStatusEnum.SCORED.getCode(),averageScore); + }else{ + //修改为评分中 + projectTaskRepository.updateScoreStatus(info.getProjectTaskId(), ScoreStatusEnum.SCOREING.getCode(),null); + + } } } diff --git a/web-app/src/main/java/com/zcloud/domain/command/ProjectTaskUpdateExe.java b/web-app/src/main/java/com/zcloud/domain/command/ProjectTaskUpdateExe.java index a2c6eaa..e89c9fb 100644 --- a/web-app/src/main/java/com/zcloud/domain/command/ProjectTaskUpdateExe.java +++ b/web-app/src/main/java/com/zcloud/domain/command/ProjectTaskUpdateExe.java @@ -57,7 +57,7 @@ public class ProjectTaskUpdateExe { throw new BizException("数据不存在"); } if(ProjectTaskExecuteStatusEnum.FINISHED.getCode().equals(projectTaskDO.getExecuteStatus())){ - throw new BizException("已结束的课题不能删除"); + throw new BizException("已结束的课题不能修改"); } ProjectTaskE projectTaskE = new ProjectTaskE(); diff --git a/web-app/src/main/java/com/zcloud/domain/command/query/ProjectTaskQueryExe.java b/web-app/src/main/java/com/zcloud/domain/command/query/ProjectTaskQueryExe.java index ed18197..b0ecec7 100644 --- a/web-app/src/main/java/com/zcloud/domain/command/query/ProjectTaskQueryExe.java +++ b/web-app/src/main/java/com/zcloud/domain/command/query/ProjectTaskQueryExe.java @@ -14,10 +14,7 @@ import com.zcloud.domain.persistence.dataobject.ProjectTaskDO; import com.zcloud.domain.persistence.dataobject.ProjectTaskGroupUserDO; import com.zcloud.domain.persistence.dataobject.ProjectTaskInfoDO; import com.zcloud.domain.persistence.dataobject.ProjectTaskScoreInfoDO; -import com.zcloud.domain.persistence.repository.ProjectTaskGroupUserRepository; -import com.zcloud.domain.persistence.repository.ProjectTaskInfoRepository; -import com.zcloud.domain.persistence.repository.ProjectTaskRepository; -import com.zcloud.domain.persistence.repository.ProjectTaskScoreInfoRepository; +import com.zcloud.domain.persistence.repository.*; import com.zcloud.gbscommon.utils.PageQueryHelper; import io.swagger.annotations.ApiModelProperty; import lombok.AllArgsConstructor; @@ -44,6 +41,7 @@ public class ProjectTaskQueryExe { private final ProjectTaskScoreInfoCoConvertor projectTaskScoreInfoCoConvertor; private final ProjectTaskGroupUserRepository projectTaskGroupUserRepository; private final ProjectTaskGroupUserCoConvertor projectTaskGroupUserCoConvertor; + private final CorpInfoRepository corpInfoRepository; /** * 分页 @@ -55,6 +53,26 @@ public class ProjectTaskQueryExe { Map params = PageQueryHelper.toHashMap(projectTaskPageQry); PageResponse pageResponse = projectTaskRepository.listPage(params); List examCenterCOS = projectTaskCoConvertor.converDOsToCOs(pageResponse.getData()); + + + /** + *权限控制 + * 1. 股份端看所有数据,企业端只能执行单位是自己的数据 + * 2. 主账号可以修改企业下创建的所有数据,个人账号,只能修改自己创建的数据 + */ + examCenterCOS.forEach(videoCoursewareCO -> { + //如果是企业,可以看本企业下所有的,如果是个人,只能看个人的,判断登录的账号是企业主账号还是个人 + Boolean isCorpAccount = corpInfoRepository.checkCorp(); + // 企业账户:检查租户ID匹配 + if (isCorpAccount && AuthContext.getTenantId().equals(videoCoursewareCO.getTenantId())) { + videoCoursewareCO.setIsUserCreate(true); + return; + } + // 个人账户:检查创建者ID匹配 + if (!isCorpAccount && videoCoursewareCO.getCreateId().equals(AuthContext.getUserId())) { + videoCoursewareCO.setIsUserCreate(true); + } + }); return PageResponse.of(examCenterCOS, pageResponse.getTotalCount(), pageResponse.getPageSize(), pageResponse.getPageIndex()); } diff --git a/web-client/src/main/java/com/zcloud/domain/dto/DomainDepartmentUserPageQry.java b/web-client/src/main/java/com/zcloud/domain/dto/DomainDepartmentUserPageQry.java index 598b645..7ca0ee4 100644 --- a/web-client/src/main/java/com/zcloud/domain/dto/DomainDepartmentUserPageQry.java +++ b/web-client/src/main/java/com/zcloud/domain/dto/DomainDepartmentUserPageQry.java @@ -4,6 +4,8 @@ import com.alibaba.cola.dto.PageQuery; import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import javax.validation.constraints.NotEmpty; + /** * web-client @@ -25,6 +27,7 @@ public class DomainDepartmentUserPageQry extends PageQuery { * - `ne`: 不等比较查询,对应SQL的!=操作符 */ @ApiModelProperty(value = "领域部门id", name = "domainDepartmentId") + @NotEmpty(message = "领域部门不能为空") private String domainDepartmentId; } diff --git a/web-client/src/main/java/com/zcloud/domain/dto/DomainGroupQry.java b/web-client/src/main/java/com/zcloud/domain/dto/DomainGroupQry.java index eeb53b8..7235ab0 100644 --- a/web-client/src/main/java/com/zcloud/domain/dto/DomainGroupQry.java +++ b/web-client/src/main/java/com/zcloud/domain/dto/DomainGroupQry.java @@ -28,5 +28,7 @@ public class DomainGroupQry{ private String domainType; @ApiModelProperty(value = "领域管理组名称") private String domainGroupName; + + private Long corpinfoId; } diff --git a/web-client/src/main/java/com/zcloud/domain/dto/DomainGroupUserPageQry.java b/web-client/src/main/java/com/zcloud/domain/dto/DomainGroupUserPageQry.java index 18bdc00..56571ab 100644 --- a/web-client/src/main/java/com/zcloud/domain/dto/DomainGroupUserPageQry.java +++ b/web-client/src/main/java/com/zcloud/domain/dto/DomainGroupUserPageQry.java @@ -4,6 +4,8 @@ import com.alibaba.cola.dto.PageQuery; import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import javax.validation.constraints.NotEmpty; + /** * web-client @@ -25,6 +27,7 @@ public class DomainGroupUserPageQry extends PageQuery { * - `ne`: 不等比较查询,对应SQL的!=操作符 */ @ApiModelProperty(value = "领域组id", name = "domainGroupId", required = true) + @NotEmpty(message = "领域组不能为空") private String domainGroupId; } diff --git a/web-client/src/main/java/com/zcloud/domain/dto/ProjectTaskGroupUserAddCmd.java b/web-client/src/main/java/com/zcloud/domain/dto/ProjectTaskGroupUserAddCmd.java index 002fc6b..40122fd 100644 --- a/web-client/src/main/java/com/zcloud/domain/dto/ProjectTaskGroupUserAddCmd.java +++ b/web-client/src/main/java/com/zcloud/domain/dto/ProjectTaskGroupUserAddCmd.java @@ -21,7 +21,7 @@ import java.io.Serializable; @NoArgsConstructor @AllArgsConstructor public class ProjectTaskGroupUserAddCmd implements Serializable { - @ApiModelProperty(value = "课题任务主键id", name = "projectTaskId", required = true) + @ApiModelProperty(value = "课题任务主键id", name = "projectTaskId") private String projectTaskId; @ApiModelProperty(value = "部门主键id", name = "departmentId", required = true) diff --git a/web-client/src/main/java/com/zcloud/domain/dto/ProjectTaskInfoAddCmd.java b/web-client/src/main/java/com/zcloud/domain/dto/ProjectTaskInfoAddCmd.java index 2950898..f63b35e 100644 --- a/web-client/src/main/java/com/zcloud/domain/dto/ProjectTaskInfoAddCmd.java +++ b/web-client/src/main/java/com/zcloud/domain/dto/ProjectTaskInfoAddCmd.java @@ -20,14 +20,14 @@ import java.io.Serializable; @NoArgsConstructor @AllArgsConstructor public class ProjectTaskInfoAddCmd implements Serializable { - @ApiModelProperty(value = "课题任务主键id", name = "projectTaskId", required = true) + @ApiModelProperty(value = "课题任务主键id", name = "projectTaskId") private String projectTaskId; @ApiModelProperty(value = "任务名称", name = "workName", required = true) @NotEmpty(message = "任务名称不能为空") private String workName; - @ApiModelProperty(value = "任务附件url", name = "workUrl", required = true) + @ApiModelProperty(value = "任务附件url", name = "workUrl") private String workUrl; } diff --git a/web-client/src/main/java/com/zcloud/domain/dto/ProjectTaskInfoUpdateCmd.java b/web-client/src/main/java/com/zcloud/domain/dto/ProjectTaskInfoUpdateCmd.java index f3662b3..29a876a 100644 --- a/web-client/src/main/java/com/zcloud/domain/dto/ProjectTaskInfoUpdateCmd.java +++ b/web-client/src/main/java/com/zcloud/domain/dto/ProjectTaskInfoUpdateCmd.java @@ -36,5 +36,8 @@ public class ProjectTaskInfoUpdateCmd implements Serializable { @ApiModelProperty(value = "任务附件url", name = "workUrl", required = true) @NotEmpty(message = "任务附件url不能为空") private String workUrl; + @ApiModelProperty(value = "任务附件名称", name = "workUrl", required = true) + @NotEmpty(message = "任务附件名称不能为空") + private String attachmentName; } diff --git a/web-client/src/main/java/com/zcloud/domain/dto/ProjectTaskPageQry.java b/web-client/src/main/java/com/zcloud/domain/dto/ProjectTaskPageQry.java index 4515a6f..fd3722f 100644 --- a/web-client/src/main/java/com/zcloud/domain/dto/ProjectTaskPageQry.java +++ b/web-client/src/main/java/com/zcloud/domain/dto/ProjectTaskPageQry.java @@ -32,7 +32,7 @@ public class ProjectTaskPageQry extends PageQuery { @ApiModelProperty(value = "课题执行状态(0:评分人员待制定,1:课题组人员待制定,2:已完善待执行,3:执行中,4:已结束)") private Integer executeStatus; - @ApiModelProperty(value = "评分状态(0:未评分,1:已评分)") + @ApiModelProperty(value = "评分状态(0:未评分,1:评分中,2:已评分)") private Integer scoreStatus; @ApiModelProperty(value = "课题名称") diff --git a/web-client/src/main/java/com/zcloud/domain/dto/ProjectTaskUpdateCmd.java b/web-client/src/main/java/com/zcloud/domain/dto/ProjectTaskUpdateCmd.java index d122a4c..f87a35d 100644 --- a/web-client/src/main/java/com/zcloud/domain/dto/ProjectTaskUpdateCmd.java +++ b/web-client/src/main/java/com/zcloud/domain/dto/ProjectTaskUpdateCmd.java @@ -29,7 +29,7 @@ public class ProjectTaskUpdateCmd extends Command { @ApiModelProperty(value = "主键", name = "id", required = true) @NotNull(message = "主键不能为空") private Long id; - @ApiModelProperty(value = "业务主键id", name = "projectTaskId", required = true) + @ApiModelProperty(value = "业务主键id", name = "projectTaskId") private String projectTaskId; @ApiModelProperty(value = "领域类型", name = "domainType", required = true) @NotEmpty(message = "领域类型不能为空") diff --git a/web-client/src/main/java/com/zcloud/domain/dto/clientobject/DomainGroupCO.java b/web-client/src/main/java/com/zcloud/domain/dto/clientobject/DomainGroupCO.java index 823f184..f3e0ad8 100644 --- a/web-client/src/main/java/com/zcloud/domain/dto/clientobject/DomainGroupCO.java +++ b/web-client/src/main/java/com/zcloud/domain/dto/clientobject/DomainGroupCO.java @@ -1,6 +1,7 @@ package com.zcloud.domain.dto.clientobject; import com.alibaba.cola.dto.ClientObject; +import com.baomidou.mybatisplus.annotation.TableField; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -51,6 +52,8 @@ public class DomainGroupCO implements Serializable { private String teamUserName; @ApiModelProperty(value = "领域课题数") private Long projectTaskCount; + @ApiModelProperty(value = "领域课题完成数") + private Long projectTaskFinishedCount; } diff --git a/web-client/src/main/java/com/zcloud/domain/dto/clientobject/ProjectTaskCO.java b/web-client/src/main/java/com/zcloud/domain/dto/clientobject/ProjectTaskCO.java index a4dda97..6c73276 100644 --- a/web-client/src/main/java/com/zcloud/domain/dto/clientobject/ProjectTaskCO.java +++ b/web-client/src/main/java/com/zcloud/domain/dto/clientobject/ProjectTaskCO.java @@ -9,6 +9,7 @@ import java.io.Serializable; import java.math.BigDecimal; import java.time.LocalDateTime; import java.util.Date; +import java.util.List; /** @@ -56,8 +57,8 @@ public class ProjectTaskCO implements Serializable { //课题执行状态(0:评分人员待制定,1:课题组人员待制定,2:已完善待执行,3:执行中,4:已结束) @ApiModelProperty(value = "课题执行状态(0:评分人员待制定,1:课题组人员待制定,2:已完善待执行,3:执行中,4:已结束)") private Integer executeStatus; - //评分状态(0:未评分,1:已评分) - @ApiModelProperty(value = "评分状态(0:未评分,1:已评分)") + //评分状态(0:未评分,1:评分中,2:已评分) + @ApiModelProperty(value = "评分状态(0:未评分,1:评分中,2:已评分)") private Integer scoreStatus; //评分 @ApiModelProperty(value = "评分") @@ -65,5 +66,14 @@ public class ProjectTaskCO implements Serializable { @ApiModelProperty(value = "领域主管部门名称") private String masterDepartmentName; + @ApiModelProperty(value = "创建人id") + private Long createId; + + private Long tenantId; + + + + @ApiModelProperty(value = "是否是当前用户创建的数据") + private Boolean isUserCreate = false; } diff --git a/web-client/src/main/java/com/zcloud/domain/dto/clientobject/ProjectTaskDetailsCO.java b/web-client/src/main/java/com/zcloud/domain/dto/clientobject/ProjectTaskDetailsCO.java index c0e2678..84584f1 100644 --- a/web-client/src/main/java/com/zcloud/domain/dto/clientobject/ProjectTaskDetailsCO.java +++ b/web-client/src/main/java/com/zcloud/domain/dto/clientobject/ProjectTaskDetailsCO.java @@ -59,8 +59,8 @@ public class ProjectTaskDetailsCO implements Serializable { //课题执行状态(0:评分人员待制定,1:课题组人员待制定,2:已完善待执行,3:执行中,4:已结束) @ApiModelProperty(value = "课题执行状态(0:评分人员待制定,1:课题组人员待制定,2:已完善待执行,3:执行中,4:已结束)") private Integer executeStatus; - //评分状态(0:未评分,1:已评分) - @ApiModelProperty(value = "评分状态(0:未评分,1:已评分)") + //评分状态(0:未评分,1:评分中,2:已评分) + @ApiModelProperty(value = "评分状态(0:未评分,1:评分中,2:已评分)") private Integer scoreStatus; //评分 @ApiModelProperty(value = "评分") diff --git a/web-client/src/main/java/com/zcloud/domain/dto/clientobject/ProjectTaskInfoCO.java b/web-client/src/main/java/com/zcloud/domain/dto/clientobject/ProjectTaskInfoCO.java index 84a8745..db8dcdb 100644 --- a/web-client/src/main/java/com/zcloud/domain/dto/clientobject/ProjectTaskInfoCO.java +++ b/web-client/src/main/java/com/zcloud/domain/dto/clientobject/ProjectTaskInfoCO.java @@ -4,6 +4,7 @@ import com.alibaba.cola.dto.ClientObject; import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import javax.validation.constraints.NotEmpty; import java.io.Serializable; import java.time.LocalDateTime; @@ -31,6 +32,8 @@ public class ProjectTaskInfoCO implements Serializable { //任务附件url @ApiModelProperty(value = "任务附件url") private String workUrl; + @ApiModelProperty(value = "任务附件名称") + private String attachmentName; } diff --git a/web-domain/src/main/java/com/zcloud/domain/domain/enums/CommonFlagEnum.java b/web-domain/src/main/java/com/zcloud/domain/domain/enums/CommonFlagEnum.java index 9ae89cb..0e193f8 100644 --- a/web-domain/src/main/java/com/zcloud/domain/domain/enums/CommonFlagEnum.java +++ b/web-domain/src/main/java/com/zcloud/domain/domain/enums/CommonFlagEnum.java @@ -10,7 +10,7 @@ public enum CommonFlagEnum { private final Integer code; private final String name; - CommonFlagEnum(Integer code, String name) { + CommonFlagEnum(Integer code, String name) { this.code = code; this.name = name; } diff --git a/web-domain/src/main/java/com/zcloud/domain/domain/enums/MenuEnum.java b/web-domain/src/main/java/com/zcloud/domain/domain/enums/MenuEnum.java index da1f43b..74b452e 100644 --- a/web-domain/src/main/java/com/zcloud/domain/domain/enums/MenuEnum.java +++ b/web-domain/src/main/java/com/zcloud/domain/domain/enums/MenuEnum.java @@ -13,20 +13,20 @@ import java.util.stream.Collectors; @Getter public enum MenuEnum { //领域部门 - LYBMGL("/edu/container/supervision/resourceManage/teacherManage/list", "lybmgl"), + LYBMGL("/domain/container/supervision/domainDepartment", "lybmgl"), //领域组 - LYZGL("/edu/container/supervision/resourceManage/courseware/list", "lyzgl"), + LYZGL("/domain/container/supervision/domainGroup", "lyzgl"), //课题任务管理 - GFDKTRW("/edu/container/supervision/resourceManage/courseManage/list", "gfd-ktrw"), + GFDKTRW("/domain/container/supervision/resourceManage/courseManage/list", "gfd-ktrw"), //课题评分管理 - GFDKTPF("/edu/container/supervision/resourceManage/testPaperManage/list", "gfd-ktpf"), + GFDKTPF("/domain/container/supervision/resourceManage/testPaperManage/list", "gfd-ktpf"), //企业端 //课题任务管理 - QYDKTRW("/edu/container/branchCompany/resourceManage/courseware/list", "qyd-ktrw"), + QYDKTRW("/domain/container/branchCompany/resourceManage/courseware/list", "qyd-ktrw"), //课题评分管理 - QYDKTPF("/edu/container/branchCompany/resourceManage/courseManage/list", "qyd-ktpf"), + QYDKTPF("/domain/container/branchCompany/resourceManage/courseManage/list", "qyd-ktpf"), ; diff --git a/web-domain/src/main/java/com/zcloud/domain/domain/enums/ProjectTaskExecuteStatusEnum.java b/web-domain/src/main/java/com/zcloud/domain/domain/enums/ProjectTaskExecuteStatusEnum.java index 6e6dad4..5daba08 100644 --- a/web-domain/src/main/java/com/zcloud/domain/domain/enums/ProjectTaskExecuteStatusEnum.java +++ b/web-domain/src/main/java/com/zcloud/domain/domain/enums/ProjectTaskExecuteStatusEnum.java @@ -18,7 +18,7 @@ public enum ProjectTaskExecuteStatusEnum { private final Integer code; private final String name; - ProjectTaskExecuteStatusEnum(Integer code, String name) { + ProjectTaskExecuteStatusEnum(Integer code, String name) { this.code = code; this.name = name; } diff --git a/web-domain/src/main/java/com/zcloud/domain/domain/enums/ScoreStatusEnum.java b/web-domain/src/main/java/com/zcloud/domain/domain/enums/ScoreStatusEnum.java new file mode 100644 index 0000000..a8aec4b --- /dev/null +++ b/web-domain/src/main/java/com/zcloud/domain/domain/enums/ScoreStatusEnum.java @@ -0,0 +1,21 @@ +package com.zcloud.domain.domain.enums; + +import lombok.Getter; + +/** + * 评分状态(0:未评分,1:评分中,2:已评分) + */ +@Getter +public enum ScoreStatusEnum { + NO_SCORE(0,"未评分"), + SCOREING(1,"评分中"), + SCORED(2,"已评分"), + ; + private final Integer code; + private final String name; + + ScoreStatusEnum(Integer code, String name) { + this.code = code; + this.name = name; + } +} diff --git a/web-domain/src/main/java/com/zcloud/domain/domain/model/ProjectTaskE.java b/web-domain/src/main/java/com/zcloud/domain/domain/model/ProjectTaskE.java index 2b61fad..37fbc51 100644 --- a/web-domain/src/main/java/com/zcloud/domain/domain/model/ProjectTaskE.java +++ b/web-domain/src/main/java/com/zcloud/domain/domain/model/ProjectTaskE.java @@ -38,7 +38,7 @@ public class ProjectTaskE extends BaseE { //课题执行状态(0:评分人员待制定,1:课题组人员待制定,2:已完善待执行,3:执行中,4:已结束) private Integer executeStatus; - //评分状态(0:未评分,1:已评分) + //评分状态(0:未评分,1:评分中,2:已评分) private Integer scoreStatus; //评分 private BigDecimal score; diff --git a/web-domain/src/main/java/com/zcloud/domain/domain/model/ProjectTaskInfoE.java b/web-domain/src/main/java/com/zcloud/domain/domain/model/ProjectTaskInfoE.java index 212857f..4ae9343 100644 --- a/web-domain/src/main/java/com/zcloud/domain/domain/model/ProjectTaskInfoE.java +++ b/web-domain/src/main/java/com/zcloud/domain/domain/model/ProjectTaskInfoE.java @@ -1,8 +1,10 @@ package com.zcloud.domain.domain.model; import com.jjb.saas.framework.domain.model.BaseE; +import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import javax.validation.constraints.NotEmpty; import java.time.LocalDateTime; /** @@ -23,6 +25,8 @@ public class ProjectTaskInfoE extends BaseE { private String workName; //任务附件url private String workUrl; + //附件名称 + private String attachmentName; //乐观锁 private Integer version; //创建人 diff --git a/web-infrastructure/src/main/java/com/zcloud/domain/persistence/dataobject/DomainGroupDO.java b/web-infrastructure/src/main/java/com/zcloud/domain/persistence/dataobject/DomainGroupDO.java index dc79962..ba67583 100644 --- a/web-infrastructure/src/main/java/com/zcloud/domain/persistence/dataobject/DomainGroupDO.java +++ b/web-infrastructure/src/main/java/com/zcloud/domain/persistence/dataobject/DomainGroupDO.java @@ -53,6 +53,9 @@ public class DomainGroupDO extends BaseDO { @ApiModelProperty(value = "领域课题数") @TableField(exist = false) private Long projectTaskCount; + @ApiModelProperty(value = "领域课题完成数") + @TableField(exist = false) + private Long projectTaskFinishedCount; public DomainGroupDO(String domainGroupId) { this.domainGroupId = domainGroupId; diff --git a/web-infrastructure/src/main/java/com/zcloud/domain/persistence/dataobject/ProjectTaskDO.java b/web-infrastructure/src/main/java/com/zcloud/domain/persistence/dataobject/ProjectTaskDO.java index 575c881..b1c6c25 100644 --- a/web-infrastructure/src/main/java/com/zcloud/domain/persistence/dataobject/ProjectTaskDO.java +++ b/web-infrastructure/src/main/java/com/zcloud/domain/persistence/dataobject/ProjectTaskDO.java @@ -53,8 +53,8 @@ public class ProjectTaskDO extends BaseDO { //课题执行状态(0:评分人员待制定,1:课题组人员待制定,2:已完善待执行,3:执行中,4:已结束) @ApiModelProperty(value = "课题执行状态(0:评分人员待制定,1:课题组人员待制定,2:已完善待执行,3:执行中,4:已结束)") private Integer executeStatus; - //评分状态(0:未评分,1:已评分) - @ApiModelProperty(value = "评分状态(0:未评分,1:已评分)") + //评分状态(0:未评分,1:评分中,2:已评分) + @ApiModelProperty(value = "评分状态(0:未评分,1:评分中,2:已评分)") private Integer scoreStatus; //评分 @ApiModelProperty(value = "评分") diff --git a/web-infrastructure/src/main/java/com/zcloud/domain/persistence/dataobject/ProjectTaskInfoDO.java b/web-infrastructure/src/main/java/com/zcloud/domain/persistence/dataobject/ProjectTaskInfoDO.java index fd190c3..9e8d74a 100644 --- a/web-infrastructure/src/main/java/com/zcloud/domain/persistence/dataobject/ProjectTaskInfoDO.java +++ b/web-infrastructure/src/main/java/com/zcloud/domain/persistence/dataobject/ProjectTaskInfoDO.java @@ -7,6 +7,8 @@ import lombok.Data; import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; +import javax.validation.constraints.NotEmpty; + /** * web-infrastructure * @@ -30,6 +32,8 @@ public class ProjectTaskInfoDO extends BaseDO { //任务附件url @ApiModelProperty(value = "任务附件url") private String workUrl; + @ApiModelProperty(value = "任务附件名称") + private String attachmentName; public ProjectTaskInfoDO(String projectTaskInfoId) { this.projectTaskInfoId = projectTaskInfoId; diff --git a/web-infrastructure/src/main/java/com/zcloud/domain/persistence/repository/CorpInfoRepository.java b/web-infrastructure/src/main/java/com/zcloud/domain/persistence/repository/CorpInfoRepository.java index 83c844c..b630c96 100644 --- a/web-infrastructure/src/main/java/com/zcloud/domain/persistence/repository/CorpInfoRepository.java +++ b/web-infrastructure/src/main/java/com/zcloud/domain/persistence/repository/CorpInfoRepository.java @@ -21,5 +21,6 @@ public interface CorpInfoRepository extends BaseRepository { boolean isSupper(); + Boolean checkCorp(); } diff --git a/web-infrastructure/src/main/java/com/zcloud/domain/persistence/repository/DomainGroupRepository.java b/web-infrastructure/src/main/java/com/zcloud/domain/persistence/repository/DomainGroupRepository.java index b568891..20ee4fe 100644 --- a/web-infrastructure/src/main/java/com/zcloud/domain/persistence/repository/DomainGroupRepository.java +++ b/web-infrastructure/src/main/java/com/zcloud/domain/persistence/repository/DomainGroupRepository.java @@ -5,6 +5,7 @@ import com.jjb.saas.framework.repository.repo.BaseRepository; import com.zcloud.domain.persistence.dataobject.DomainGroupDO; import com.zcloud.domain.persistence.dataobject.DomainGroupUserDO; +import javax.validation.constraints.NotNull; import java.util.List; import java.util.Map; @@ -21,5 +22,6 @@ public interface DomainGroupRepository extends BaseRepository { List listAll(Map params); + List getListByCorpinfoId(@NotNull(message = "主责企业不能为空") Long corpinfoId); } diff --git a/web-infrastructure/src/main/java/com/zcloud/domain/persistence/repository/impl/CorpInfoRepositoryImpl.java b/web-infrastructure/src/main/java/com/zcloud/domain/persistence/repository/impl/CorpInfoRepositoryImpl.java index 7474f46..4f6b9ed 100644 --- a/web-infrastructure/src/main/java/com/zcloud/domain/persistence/repository/impl/CorpInfoRepositoryImpl.java +++ b/web-infrastructure/src/main/java/com/zcloud/domain/persistence/repository/impl/CorpInfoRepositoryImpl.java @@ -64,6 +64,9 @@ public class CorpInfoRepositoryImpl extends BaseRepositoryImpl implements DomainGroupRepository { private final DomainGroupMapper domainGroupMapper; + private final CorpInfoRepositoryImpl corpInfoRepository; @Override public PageResponse listPage(Map params) { @@ -47,7 +49,17 @@ public class DomainGroupRepositoryImpl extends BaseRepositoryImpl listAll(Map params) { + if(!corpInfoRepository.isSupper()){ + params.put("corpinfoId", AuthContext.getTenantId()); + } return domainGroupMapper.listAll( params); } + + @Override + public List getListByCorpinfoId(Long corpinfoId) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("corpinfo_id", corpinfoId); + return domainGroupMapper.selectList(queryWrapper); + } } diff --git a/web-infrastructure/src/main/resources/mapper/DomainDepartmentMapper.xml b/web-infrastructure/src/main/resources/mapper/DomainDepartmentMapper.xml index fb434c5..491118d 100644 --- a/web-infrastructure/src/main/resources/mapper/DomainDepartmentMapper.xml +++ b/web-infrastructure/src/main/resources/mapper/DomainDepartmentMapper.xml @@ -17,8 +17,8 @@ select dd.*, d.name as masterDepartmentName, u.name as masterUserName, - count(pt.id) as projectTaskCount, - count(ddu.id) as domainDepartmentUserCount + count(distinct pt.id) as projectTaskCount, + count(distinct ddu.id) as domainDepartmentUserCount from domain_department dd left join department d on dd.master_department_id = d.id and d.delete_enum = 'FALSE' left join user u on dd.master_user_id = u.id and u.delete_enum = 'FALSE' diff --git a/web-infrastructure/src/main/resources/mapper/DomainGroupMapper.xml b/web-infrastructure/src/main/resources/mapper/DomainGroupMapper.xml index 36cb080..b72eac6 100644 --- a/web-infrastructure/src/main/resources/mapper/DomainGroupMapper.xml +++ b/web-infrastructure/src/main/resources/mapper/DomainGroupMapper.xml @@ -9,7 +9,8 @@ c.corp_name as corpinfoname, d.name as teamdepartmentname, u.name as teamusername, - count(distinct ptg.id) as projectTaskCount + count(distinct ptg.id) as projectTaskCount, + sum(if(ptg.execute_status = 4, 1, 0)) as projectTaskFinishedCount from domain_group dg left join corp_info c on dg.corpinfo_id = c.id and c.delete_enum = 'false' left join department d on dg.team_department_id = d.id and d.delete_enum = 'false' @@ -39,23 +40,24 @@ diff --git a/web-infrastructure/src/main/resources/mapper/ProjectTaskMapper.xml b/web-infrastructure/src/main/resources/mapper/ProjectTaskMapper.xml index 6efd3b2..3c4ac1a 100644 --- a/web-infrastructure/src/main/resources/mapper/ProjectTaskMapper.xml +++ b/web-infrastructure/src/main/resources/mapper/ProjectTaskMapper.xml @@ -26,13 +26,13 @@ - and pt.project_name = #{params.projectName} + and pt.project_name like CONCAT('%', #{params.projectName}, '%') - and pt.executed_start_date >= #{params.startDate} + and pt.executed_start_date #{params.startDate} - and pt.executed_end_date #{params.endDate} + and pt.executed_end_date >= #{params.endDate} and pt.score_status = #{params.scoreStatus} @@ -53,7 +53,11 @@ where pt.delete_enum = 'false' and pt.id=#{id} - update project_task set score_status = #{code},score = #{averageScore} where project_task_id = #{projectTaskId} + update project_task set score_status = #{code} + + ,score = #{averageScore} + + where project_task_id = #{projectTaskId} update project_task set execute_status = #{code} where