Commit f39bfdab896f1ce0803c8ddc9e6782a9e843c183
1 parent
fe1271a6
多模块重构 8:bom 模块,尝试公用部分逻辑
Showing
102 changed files
with
945 additions
and
424 deletions
Too many changes.
To preserve performance only 100 of 102 files are displayed.
yudao-admin-server/pom.xml
| @@ -42,28 +42,13 @@ | @@ -42,28 +42,13 @@ | ||
| 42 | <artifactId>yudao-module-pay-impl</artifactId> | 42 | <artifactId>yudao-module-pay-impl</artifactId> |
| 43 | <version>${revision}</version> | 43 | <version>${revision}</version> |
| 44 | </dependency> | 44 | </dependency> |
| 45 | - | ||
| 46 | -<!-- 默认引入bpm-activiti. 可以替换为bpm-flowable --> | 45 | + <!-- 默认引入 bpm-activiti 实现,可以替换为 bpm-flowable 实现--> |
| 47 | <dependency> | 46 | <dependency> |
| 48 | <groupId>cn.iocoder.boot</groupId> | 47 | <groupId>cn.iocoder.boot</groupId> |
| 49 | - <artifactId>yudao-module-bpm-activiti</artifactId> | 48 | + <artifactId>yudao-module-bpm-impl-activiti</artifactId> |
| 50 | <version>${revision}</version> | 49 | <version>${revision}</version> |
| 51 | </dependency> | 50 | </dependency> |
| 52 | 51 | ||
| 53 | - <!-- 业务组件 --> | ||
| 54 | - | ||
| 55 | - <dependency> | ||
| 56 | - <groupId>cn.iocoder.boot</groupId> | ||
| 57 | - <artifactId>yudao-spring-boot-starter-biz-dict</artifactId> | ||
| 58 | - </dependency> | ||
| 59 | - | ||
| 60 | - <dependency> | ||
| 61 | - <groupId>cn.iocoder.boot</groupId> | ||
| 62 | - <artifactId>yudao-spring-boot-starter-biz-tenant</artifactId> | ||
| 63 | - </dependency> | ||
| 64 | - | ||
| 65 | - | ||
| 66 | - | ||
| 67 | <!-- spring boot 配置所需依赖 --> | 52 | <!-- spring boot 配置所需依赖 --> |
| 68 | <dependency> | 53 | <dependency> |
| 69 | <groupId>org.springframework.boot</groupId> | 54 | <groupId>org.springframework.boot</groupId> |
| @@ -88,12 +73,6 @@ | @@ -88,12 +73,6 @@ | ||
| 88 | <artifactId>spring-boot-admin-starter-server</artifactId> <!-- 实现 Spring Boot Admin Server 服务端 --> | 73 | <artifactId>spring-boot-admin-starter-server</artifactId> <!-- 实现 Spring Boot Admin Server 服务端 --> |
| 89 | </dependency> | 74 | </dependency> |
| 90 | 75 | ||
| 91 | - <!-- 三方云服务相关 --> | ||
| 92 | - | ||
| 93 | - <dependency> | ||
| 94 | - <groupId>com.xkcoding.justauth</groupId> | ||
| 95 | - <artifactId>justauth-spring-boot-starter</artifactId> | ||
| 96 | - </dependency> | ||
| 97 | </dependencies> | 76 | </dependencies> |
| 98 | 77 | ||
| 99 | <build> | 78 | <build> |
yudao-admin-server/src/main/resources/application.yaml
| @@ -58,7 +58,8 @@ yudao: | @@ -58,7 +58,8 @@ yudao: | ||
| 58 | app-api: | 58 | app-api: |
| 59 | prefix: /app-api | 59 | prefix: /app-api |
| 60 | controller: '**.controller.app.**' | 60 | controller: '**.controller.app.**' |
| 61 | - | 61 | + admin-ui: |
| 62 | + url: http://dashboard.yudao.iocoder.cn # Admin 管理后台 UI 的地址 | ||
| 62 | swagger: | 63 | swagger: |
| 63 | title: 管理后台 | 64 | title: 管理后台 |
| 64 | description: 提供管理员管理的所有功能 | 65 | description: 提供管理员管理的所有功能 |
| @@ -78,8 +79,6 @@ yudao: | @@ -78,8 +79,6 @@ yudao: | ||
| 78 | - cn.iocoder.yudao.adminserver.modules.bpm.enums.BpmErrorCodeConstants | 79 | - cn.iocoder.yudao.adminserver.modules.bpm.enums.BpmErrorCodeConstants |
| 79 | tenant: # 多租户相关配置项 | 80 | tenant: # 多租户相关配置项 |
| 80 | tables: # 配置需要开启多租户的表;如果实体已经继承 TenantBaseDO 类,则无需重复配置 | 81 | tables: # 配置需要开启多租户的表;如果实体已经继承 TenantBaseDO 类,则无需重复配置 |
| 81 | - url: ## TODO 芋艿:迁移到 web 配置项下, | ||
| 82 | - admin-ui: http://dashboard.yudao.iocoder.cn # Admin 管理后台 UI 的地址 | ||
| 83 | sms-code: # 短信验证码相关的配置项 | 82 | sms-code: # 短信验证码相关的配置项 |
| 84 | expire-times: 10m | 83 | expire-times: 10m |
| 85 | send-frequency: 1m | 84 | send-frequency: 1m |
yudao-framework/yudao-spring-boot-starter-web/src/main/java/cn/iocoder/yudao/framework/web/config/WebProperties.java
| @@ -19,6 +19,9 @@ public class WebProperties { | @@ -19,6 +19,9 @@ public class WebProperties { | ||
| 19 | @NotNull(message = "Admin API 不能为空") | 19 | @NotNull(message = "Admin API 不能为空") |
| 20 | private Api adminApi; | 20 | private Api adminApi; |
| 21 | 21 | ||
| 22 | + @NotNull(message = "Admin UI 不能为空") | ||
| 23 | + private Ui adminUi; | ||
| 24 | + | ||
| 22 | @Data | 25 | @Data |
| 23 | @Valid | 26 | @Valid |
| 24 | public static class Api { | 27 | public static class Api { |
| @@ -45,4 +48,15 @@ public class WebProperties { | @@ -45,4 +48,15 @@ public class WebProperties { | ||
| 45 | 48 | ||
| 46 | } | 49 | } |
| 47 | 50 | ||
| 51 | + @Data | ||
| 52 | + @Valid | ||
| 53 | + public static class Ui { | ||
| 54 | + | ||
| 55 | + /** | ||
| 56 | + * 访问地址 | ||
| 57 | + */ | ||
| 58 | + private String url; | ||
| 59 | + | ||
| 60 | + } | ||
| 61 | + | ||
| 48 | } | 62 | } |
yudao-module-bpm/TODO.md
| 1 | 1. 类名可以去掉 Bpm 前缀哈 | 1 | 1. 类名可以去掉 Bpm 前缀哈 |
| 2 | + | ||
| 2 | 2. 后续接口我们分成 admin 管理后天,app 用户前端;所以 controller 包下,需要有 admin 和 app 两个子包。可见 https://gitee.com/zhijiantianya/ruoyi-vue-pro/tree/feature/multi-module/yudao-module-member/yudao-module-member-impl/src/main/java/cn/iocoder/yudao/module/member/controller | 3 | 2. 后续接口我们分成 admin 管理后天,app 用户前端;所以 controller 包下,需要有 admin 和 app 两个子包。可见 https://gitee.com/zhijiantianya/ruoyi-vue-pro/tree/feature/multi-module/yudao-module-member/yudao-module-member-impl/src/main/java/cn/iocoder/yudao/module/member/controller |
| 3 | -3. yudao-module-xxx-api 是暴露接口给外部模块,所以可以把 yudao-module-bpm-core-service-api 改成 yudao-module-bpm-api。大概率用不了暴露 BpmUserGroupServiceApi 哈。 | ||
| 4 | -4. yudao-module-bpm-core-service-impl 模块,要不改成 yudao-module-bpm-base,本质上是提供给 yudao-module-bpm-flowable-impl 和 yudao-module-bpm-activiti-impl 继承的。这样的话,我们在 yudao-module-bpm-base: | 4 | + |
| 5 | +3. yudao-module-bpm-core-service-impl 模块,要不改成 yudao-module-bpm-base,本质上是提供给 yudao-module-bpm-flowable-impl 和 yudao-module-bpm-activiti-impl 继承的。这样的话,我们在 yudao-module-bpm-base: | ||
| 5 | * 定义一些可被继承的类,例如说 ModelAbstractService; | 6 | * 定义一些可被继承的类,例如说 ModelAbstractService; |
| 6 | * 定义一些无需被继承的类,例如说 UserGroupService、UserGroupController 等等; | 7 | * 定义一些无需被继承的类,例如说 UserGroupService、UserGroupController 等等; |
yudao-module-bpm/yudao-module-bpm-api/src/main/java/cn/iocoder/yudao/module/bpm/enums/ErrorCodeConstants.java
| @@ -55,5 +55,10 @@ public interface ErrorCodeConstants { | @@ -55,5 +55,10 @@ public interface ErrorCodeConstants { | ||
| 55 | 55 | ||
| 56 | // ========== 动态表单模块 1-009-010-000 ========== | 56 | // ========== 动态表单模块 1-009-010-000 ========== |
| 57 | ErrorCode FORM_NOT_EXISTS = new ErrorCode(1009010000, "动态表单不存在"); | 57 | ErrorCode FORM_NOT_EXISTS = new ErrorCode(1009010000, "动态表单不存在"); |
| 58 | + ErrorCode FORM_FIELD_REPEAT = new ErrorCode(1009010000, "表单项({}) 和 ({}) 使用了相同的字段名({})"); | ||
| 59 | + | ||
| 60 | + // ========== 用户组模块 1-009-011-000 ========== | ||
| 61 | + ErrorCode USER_GROUP_NOT_EXISTS = new ErrorCode(1009011000, "用户组不存在"); | ||
| 62 | + ErrorCode USER_GROUP_IS_DISABLE = new ErrorCode(1009011001, "名字为【{}】的用户组已被禁用"); | ||
| 58 | 63 | ||
| 59 | } | 64 | } |
yudao-module-bpm/yudao-module-bpm-base/pom.xml
| @@ -21,6 +21,17 @@ | @@ -21,6 +21,17 @@ | ||
| 21 | <artifactId>yudao-module-bpm-api</artifactId> | 21 | <artifactId>yudao-module-bpm-api</artifactId> |
| 22 | <version>${revision}</version> | 22 | <version>${revision}</version> |
| 23 | </dependency> | 23 | </dependency> |
| 24 | + <dependency> | ||
| 25 | + <groupId>cn.iocoder.boot</groupId> | ||
| 26 | + <artifactId>yudao-module-system-api</artifactId> | ||
| 27 | + <version>${revision}</version> | ||
| 28 | + </dependency> | ||
| 29 | + | ||
| 30 | + <!-- 业务组件 --> | ||
| 31 | + <dependency> | ||
| 32 | + <groupId>cn.iocoder.boot</groupId> | ||
| 33 | + <artifactId>yudao-spring-boot-starter-biz-operatelog</artifactId> | ||
| 34 | + </dependency> | ||
| 24 | 35 | ||
| 25 | <!-- Web 相关 --> | 36 | <!-- Web 相关 --> |
| 26 | <dependency> | 37 | <dependency> |
yudao-module-bpm/yudao-module-bpm-base/src/main/java/cn/iocoder/yudao/module/bpm/controller/definition/vo/form/BpmFormBaseVO.java
| 1 | package cn.iocoder.yudao.module.bpm.controller.definition.vo.form; | 1 | package cn.iocoder.yudao.module.bpm.controller.definition.vo.form; |
| 2 | 2 | ||
| 3 | -import com.sun.istack.internal.NotNull; | ||
| 4 | import lombok.*; | 3 | import lombok.*; |
| 5 | import io.swagger.annotations.*; | 4 | import io.swagger.annotations.*; |
| 6 | import javax.validation.constraints.*; | 5 | import javax.validation.constraints.*; |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/controller/oa/vo/BpmOALeaveBaseVO.java renamed to yudao-module-bpm/yudao-module-bpm-base/src/main/java/cn/iocoder/yudao/module/bpm/controller/oa/vo/BpmOALeaveBaseVO.java
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/controller/oa/vo/BpmOALeaveCreateReqVO.java renamed to yudao-module-bpm/yudao-module-bpm-base/src/main/java/cn/iocoder/yudao/module/bpm/controller/oa/vo/BpmOALeaveCreateReqVO.java
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/controller/oa/vo/BpmOALeavePageReqVO.java renamed to yudao-module-bpm/yudao-module-bpm-base/src/main/java/cn/iocoder/yudao/module/bpm/controller/oa/vo/BpmOALeavePageReqVO.java
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/controller/oa/vo/BpmOALeaveRespVO.java renamed to yudao-module-bpm/yudao-module-bpm-base/src/main/java/cn/iocoder/yudao/module/bpm/controller/oa/vo/BpmOALeaveRespVO.java
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/controller/task/vo/activity/BpmActivityRespVO.java renamed to yudao-module-bpm/yudao-module-bpm-base/src/main/java/cn/iocoder/yudao/module/bpm/controller/task/vo/activity/BpmActivityRespVO.java
| 1 | -package cn.iocoder.yudao.adminserver.modules.bpm.controller.task.vo.activity; | 1 | +package cn.iocoder.yudao.module.bpm.controller.task.vo.activity; |
| 2 | 2 | ||
| 3 | import io.swagger.annotations.ApiModel; | 3 | import io.swagger.annotations.ApiModel; |
| 4 | import io.swagger.annotations.ApiModelProperty; | 4 | import io.swagger.annotations.ApiModelProperty; |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/controller/task/vo/instance/BpmProcessInstanceCancelReqVO.java renamed to yudao-module-bpm/yudao-module-bpm-base/src/main/java/cn/iocoder/yudao/module/bpm/controller/task/vo/instance/BpmProcessInstanceCancelReqVO.java
| 1 | -package cn.iocoder.yudao.adminserver.modules.bpm.controller.task.vo.instance; | 1 | +package cn.iocoder.yudao.module.bpm.controller.task.vo.instance; |
| 2 | 2 | ||
| 3 | import io.swagger.annotations.ApiModel; | 3 | import io.swagger.annotations.ApiModel; |
| 4 | import io.swagger.annotations.ApiModelProperty; | 4 | import io.swagger.annotations.ApiModelProperty; |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/controller/task/vo/instance/BpmProcessInstanceCreateReqVO.java renamed to yudao-module-bpm/yudao-module-bpm-base/src/main/java/cn/iocoder/yudao/module/bpm/controller/task/vo/instance/BpmProcessInstanceCreateReqVO.java
| 1 | -package cn.iocoder.yudao.adminserver.modules.bpm.controller.task.vo.instance; | 1 | +package cn.iocoder.yudao.module.bpm.controller.task.vo.instance; |
| 2 | 2 | ||
| 3 | import io.swagger.annotations.ApiModel; | 3 | import io.swagger.annotations.ApiModel; |
| 4 | import io.swagger.annotations.ApiModelProperty; | 4 | import io.swagger.annotations.ApiModelProperty; |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/controller/task/vo/instance/BpmProcessInstanceMyPageReqVO.java renamed to yudao-module-bpm/yudao-module-bpm-base/src/main/java/cn/iocoder/yudao/module/bpm/controller/task/vo/instance/BpmProcessInstanceMyPageReqVO.java
| 1 | -package cn.iocoder.yudao.adminserver.modules.bpm.controller.task.vo.instance; | 1 | +package cn.iocoder.yudao.module.bpm.controller.task.vo.instance; |
| 2 | 2 | ||
| 3 | import cn.iocoder.yudao.framework.common.pojo.PageParam; | 3 | import cn.iocoder.yudao.framework.common.pojo.PageParam; |
| 4 | import io.swagger.annotations.ApiModel; | 4 | import io.swagger.annotations.ApiModel; |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/controller/task/vo/instance/BpmProcessInstancePageItemRespVO.java renamed to yudao-module-bpm/yudao-module-bpm-base/src/main/java/cn/iocoder/yudao/module/bpm/controller/task/vo/instance/BpmProcessInstancePageItemRespVO.java
| 1 | -package cn.iocoder.yudao.adminserver.modules.bpm.controller.task.vo.instance; | 1 | +package cn.iocoder.yudao.module.bpm.controller.task.vo.instance; |
| 2 | 2 | ||
| 3 | import io.swagger.annotations.ApiModel; | 3 | import io.swagger.annotations.ApiModel; |
| 4 | import io.swagger.annotations.ApiModelProperty; | 4 | import io.swagger.annotations.ApiModelProperty; |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/controller/task/vo/instance/BpmProcessInstanceRespVO.java renamed to yudao-module-bpm/yudao-module-bpm-base/src/main/java/cn/iocoder/yudao/module/bpm/controller/task/vo/instance/BpmProcessInstanceRespVO.java
| 1 | -package cn.iocoder.yudao.adminserver.modules.bpm.controller.task.vo.instance; | 1 | +package cn.iocoder.yudao.module.bpm.controller.task.vo.instance; |
| 2 | 2 | ||
| 3 | import io.swagger.annotations.ApiModel; | 3 | import io.swagger.annotations.ApiModel; |
| 4 | import io.swagger.annotations.ApiModelProperty; | 4 | import io.swagger.annotations.ApiModelProperty; |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/controller/task/vo/task/BpmTaskApproveReqVO.java renamed to yudao-module-bpm/yudao-module-bpm-base/src/main/java/cn/iocoder/yudao/module/bpm/controller/task/vo/task/BpmTaskApproveReqVO.java
| 1 | -package cn.iocoder.yudao.adminserver.modules.bpm.controller.task.vo.task; | 1 | +package cn.iocoder.yudao.module.bpm.controller.task.vo.task; |
| 2 | 2 | ||
| 3 | import io.swagger.annotations.ApiModel; | 3 | import io.swagger.annotations.ApiModel; |
| 4 | import io.swagger.annotations.ApiModelProperty; | 4 | import io.swagger.annotations.ApiModelProperty; |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/controller/task/vo/task/BpmTaskDonePageItemRespVO.java renamed to yudao-module-bpm/yudao-module-bpm-base/src/main/java/cn/iocoder/yudao/module/bpm/controller/task/vo/task/BpmTaskDonePageItemRespVO.java
| 1 | -package cn.iocoder.yudao.adminserver.modules.bpm.controller.task.vo.task; | 1 | +package cn.iocoder.yudao.module.bpm.controller.task.vo.task; |
| 2 | 2 | ||
| 3 | import io.swagger.annotations.ApiModel; | 3 | import io.swagger.annotations.ApiModel; |
| 4 | import io.swagger.annotations.ApiModelProperty; | 4 | import io.swagger.annotations.ApiModelProperty; |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/controller/task/vo/task/BpmTaskDonePageReqVO.java renamed to yudao-module-bpm/yudao-module-bpm-base/src/main/java/cn/iocoder/yudao/module/bpm/controller/task/vo/task/BpmTaskDonePageReqVO.java
| 1 | -package cn.iocoder.yudao.adminserver.modules.bpm.controller.task.vo.task; | 1 | +package cn.iocoder.yudao.module.bpm.controller.task.vo.task; |
| 2 | 2 | ||
| 3 | import cn.iocoder.yudao.framework.common.pojo.PageParam; | 3 | import cn.iocoder.yudao.framework.common.pojo.PageParam; |
| 4 | import io.swagger.annotations.ApiModel; | 4 | import io.swagger.annotations.ApiModel; |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/controller/task/vo/task/BpmTaskRejectReqVO.java renamed to yudao-module-bpm/yudao-module-bpm-base/src/main/java/cn/iocoder/yudao/module/bpm/controller/task/vo/task/BpmTaskRejectReqVO.java
| 1 | -package cn.iocoder.yudao.adminserver.modules.bpm.controller.task.vo.task; | 1 | +package cn.iocoder.yudao.module.bpm.controller.task.vo.task; |
| 2 | 2 | ||
| 3 | import io.swagger.annotations.ApiModel; | 3 | import io.swagger.annotations.ApiModel; |
| 4 | import io.swagger.annotations.ApiModelProperty; | 4 | import io.swagger.annotations.ApiModelProperty; |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/controller/task/vo/task/BpmTaskRespVO.java renamed to yudao-module-bpm/yudao-module-bpm-base/src/main/java/cn/iocoder/yudao/module/bpm/controller/task/vo/task/BpmTaskRespVO.java
| 1 | -package cn.iocoder.yudao.adminserver.modules.bpm.controller.task.vo.task; | 1 | +package cn.iocoder.yudao.module.bpm.controller.task.vo.task; |
| 2 | 2 | ||
| 3 | import io.swagger.annotations.ApiModel; | 3 | import io.swagger.annotations.ApiModel; |
| 4 | import io.swagger.annotations.ApiModelProperty; | 4 | import io.swagger.annotations.ApiModelProperty; |
| @@ -6,8 +6,6 @@ import lombok.Data; | @@ -6,8 +6,6 @@ import lombok.Data; | ||
| 6 | import lombok.EqualsAndHashCode; | 6 | import lombok.EqualsAndHashCode; |
| 7 | import lombok.ToString; | 7 | import lombok.ToString; |
| 8 | 8 | ||
| 9 | -import java.util.List; | ||
| 10 | - | ||
| 11 | @ApiModel("流程任务的 Response VO") | 9 | @ApiModel("流程任务的 Response VO") |
| 12 | @Data | 10 | @Data |
| 13 | @EqualsAndHashCode(callSuper = true) | 11 | @EqualsAndHashCode(callSuper = true) |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/controller/task/vo/task/BpmTaskTodoPageItemRespVO.java renamed to yudao-module-bpm/yudao-module-bpm-base/src/main/java/cn/iocoder/yudao/module/bpm/controller/task/vo/task/BpmTaskTodoPageItemRespVO.java
| 1 | -package cn.iocoder.yudao.adminserver.modules.bpm.controller.task.vo.task; | 1 | +package cn.iocoder.yudao.module.bpm.controller.task.vo.task; |
| 2 | 2 | ||
| 3 | import io.swagger.annotations.ApiModel; | 3 | import io.swagger.annotations.ApiModel; |
| 4 | import io.swagger.annotations.ApiModelProperty; | 4 | import io.swagger.annotations.ApiModelProperty; |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/controller/task/vo/task/BpmTaskTodoPageReqVO.java renamed to yudao-module-bpm/yudao-module-bpm-base/src/main/java/cn/iocoder/yudao/module/bpm/controller/task/vo/task/BpmTaskTodoPageReqVO.java
| 1 | -package cn.iocoder.yudao.adminserver.modules.bpm.controller.task.vo.task; | 1 | +package cn.iocoder.yudao.module.bpm.controller.task.vo.task; |
| 2 | 2 | ||
| 3 | import cn.iocoder.yudao.framework.common.pojo.PageParam; | 3 | import cn.iocoder.yudao.framework.common.pojo.PageParam; |
| 4 | import io.swagger.annotations.ApiModel; | 4 | import io.swagger.annotations.ApiModel; |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/controller/task/vo/task/BpmTaskUpdateAssigneeReqVO.java renamed to yudao-module-bpm/yudao-module-bpm-base/src/main/java/cn/iocoder/yudao/module/bpm/controller/task/vo/task/BpmTaskUpdateAssigneeReqVO.java
| 1 | -package cn.iocoder.yudao.adminserver.modules.bpm.controller.task.vo.task; | 1 | +package cn.iocoder.yudao.module.bpm.controller.task.vo.task; |
| 2 | 2 | ||
| 3 | import io.swagger.annotations.ApiModel; | 3 | import io.swagger.annotations.ApiModel; |
| 4 | import io.swagger.annotations.ApiModelProperty; | 4 | import io.swagger.annotations.ApiModelProperty; |
yudao-module-bpm/yudao-module-bpm-base/src/main/java/cn/iocoder/yudao/module/bpm/convert/definition/BpmFormConvert.java
| @@ -5,7 +5,6 @@ import cn.iocoder.yudao.module.bpm.controller.definition.vo.form.BpmFormRespVO; | @@ -5,7 +5,6 @@ import cn.iocoder.yudao.module.bpm.controller.definition.vo.form.BpmFormRespVO; | ||
| 5 | import cn.iocoder.yudao.module.bpm.controller.definition.vo.form.BpmFormSimpleRespVO; | 5 | import cn.iocoder.yudao.module.bpm.controller.definition.vo.form.BpmFormSimpleRespVO; |
| 6 | import cn.iocoder.yudao.module.bpm.controller.definition.vo.form.BpmFormUpdateReqVO; | 6 | import cn.iocoder.yudao.module.bpm.controller.definition.vo.form.BpmFormUpdateReqVO; |
| 7 | import cn.iocoder.yudao.module.bpm.dal.dataobject.definition.BpmFormDO; | 7 | import cn.iocoder.yudao.module.bpm.dal.dataobject.definition.BpmFormDO; |
| 8 | -import cn.iocoder.yudao.module.bpm.api.form.dto.BpmFormDTO; | ||
| 9 | import cn.iocoder.yudao.framework.common.pojo.PageResult; | 8 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 10 | import org.mapstruct.Mapper; | 9 | import org.mapstruct.Mapper; |
| 11 | import org.mapstruct.factory.Mappers; | 10 | import org.mapstruct.factory.Mappers; |
| @@ -28,10 +27,6 @@ public interface BpmFormConvert { | @@ -28,10 +27,6 @@ public interface BpmFormConvert { | ||
| 28 | 27 | ||
| 29 | BpmFormRespVO convert(BpmFormDO bean); | 28 | BpmFormRespVO convert(BpmFormDO bean); |
| 30 | 29 | ||
| 31 | - BpmFormDTO convert1(BpmFormDO bean); | ||
| 32 | - | ||
| 33 | - List<BpmFormDTO> convertList(List<BpmFormDO> list); | ||
| 34 | - | ||
| 35 | List<BpmFormSimpleRespVO> convertList2(List<BpmFormDO> list); | 30 | List<BpmFormSimpleRespVO> convertList2(List<BpmFormDO> list); |
| 36 | 31 | ||
| 37 | PageResult<BpmFormRespVO> convertPage(PageResult<BpmFormDO> page); | 32 | PageResult<BpmFormRespVO> convertPage(PageResult<BpmFormDO> page); |
yudao-module-bpm/yudao-module-bpm-base/src/main/java/cn/iocoder/yudao/module/bpm/convert/definition/BpmUserGroupConvert.java
| @@ -6,7 +6,6 @@ import cn.iocoder.yudao.module.bpm.controller.definition.vo.group.BpmUserGroupCr | @@ -6,7 +6,6 @@ import cn.iocoder.yudao.module.bpm.controller.definition.vo.group.BpmUserGroupCr | ||
| 6 | import cn.iocoder.yudao.module.bpm.controller.definition.vo.group.BpmUserGroupRespVO; | 6 | import cn.iocoder.yudao.module.bpm.controller.definition.vo.group.BpmUserGroupRespVO; |
| 7 | import cn.iocoder.yudao.module.bpm.controller.definition.vo.group.BpmUserGroupUpdateReqVO; | 7 | import cn.iocoder.yudao.module.bpm.controller.definition.vo.group.BpmUserGroupUpdateReqVO; |
| 8 | import cn.iocoder.yudao.module.bpm.dal.dataobject.definition.BpmUserGroupDO; | 8 | import cn.iocoder.yudao.module.bpm.dal.dataobject.definition.BpmUserGroupDO; |
| 9 | -import cn.iocoder.yudao.module.bpm.api.group.dto.BpmUserGroupDTO; | ||
| 10 | import cn.iocoder.yudao.framework.common.pojo.PageResult; | 9 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 11 | 10 | ||
| 12 | import org.mapstruct.Mapper; | 11 | import org.mapstruct.Mapper; |
| @@ -36,5 +35,4 @@ public interface BpmUserGroupConvert { | @@ -36,5 +35,4 @@ public interface BpmUserGroupConvert { | ||
| 36 | @Named("convertList2") | 35 | @Named("convertList2") |
| 37 | List<BpmUserGroupRespVO> convertList2(List<BpmUserGroupDO> list); | 36 | List<BpmUserGroupRespVO> convertList2(List<BpmUserGroupDO> list); |
| 38 | 37 | ||
| 39 | - List<BpmUserGroupDTO> convertList3(List<BpmUserGroupDO> list); | ||
| 40 | } | 38 | } |
yudao-module-bpm/yudao-module-bpm-base/src/main/java/cn/iocoder/yudao/module/bpm/convert/message/BpmMessageConvert.java
0 → 100644
| 1 | +package cn.iocoder.yudao.module.bpm.convert.message; | ||
| 2 | + | ||
| 3 | +import cn.iocoder.yudao.module.system.api.sms.dto.send.SmsSendSingleToUserReqDTO; | ||
| 4 | +import org.mapstruct.Mapper; | ||
| 5 | +import org.mapstruct.factory.Mappers; | ||
| 6 | + | ||
| 7 | +import java.util.Map; | ||
| 8 | + | ||
| 9 | +@Mapper | ||
| 10 | +public interface BpmMessageConvert { | ||
| 11 | + | ||
| 12 | + BpmMessageConvert INSTANCE = Mappers.getMapper(BpmMessageConvert.class); | ||
| 13 | + | ||
| 14 | + SmsSendSingleToUserReqDTO convert(Long userId, String templateCode, Map<String, Object> templateParams); | ||
| 15 | + | ||
| 16 | +} |
yudao-module-bpm/yudao-module-bpm-base/src/main/java/cn/iocoder/yudao/module/bpm/convert/oa/package-info.java
0 → 100644
| 1 | +package cn.iocoder.yudao.module.bpm.convert.oa; |
yudao-module-bpm/yudao-module-bpm-base/src/main/java/cn/iocoder/yudao/module/bpm/convert/task/package-info.java
0 → 100644
| 1 | +package cn.iocoder.yudao.module.bpm.convert.task; |
yudao-module-bpm/yudao-module-bpm-base/src/main/java/cn/iocoder/yudao/module/bpm/dal/dataobject/definition/BpmProcessDefinitionExtDO.java
| 1 | package cn.iocoder.yudao.module.bpm.dal.dataobject.definition; | 1 | package cn.iocoder.yudao.module.bpm.dal.dataobject.definition; |
| 2 | 2 | ||
| 3 | -import cn.iocoder.yudao.adminserver.modules.bpm.enums.definition.BpmModelFormTypeEnum; | ||
| 4 | import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; | 3 | import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; |
| 5 | -import cn.iocoder.yudao.module.bpm.dal.dataobject.definition.BpmFormDO; | 4 | +import cn.iocoder.yudao.module.bpm.enums.definition.BpmModelFormTypeEnum; |
| 6 | import com.baomidou.mybatisplus.annotation.TableField; | 5 | import com.baomidou.mybatisplus.annotation.TableField; |
| 7 | import com.baomidou.mybatisplus.annotation.TableId; | 6 | import com.baomidou.mybatisplus.annotation.TableId; |
| 8 | import com.baomidou.mybatisplus.annotation.TableName; | 7 | import com.baomidou.mybatisplus.annotation.TableName; |
| 9 | import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler; | 8 | import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler; |
| 10 | import lombok.*; | 9 | import lombok.*; |
| 11 | -import org.activiti.engine.repository.Model; | ||
| 12 | -import org.activiti.engine.repository.ProcessDefinition; | ||
| 13 | 10 | ||
| 14 | import java.util.List; | 11 | import java.util.List; |
| 15 | 12 | ||
| @@ -36,13 +33,13 @@ public class BpmProcessDefinitionExtDO extends BaseDO { | @@ -36,13 +33,13 @@ public class BpmProcessDefinitionExtDO extends BaseDO { | ||
| 36 | /** | 33 | /** |
| 37 | * 流程定义的编号 | 34 | * 流程定义的编号 |
| 38 | * | 35 | * |
| 39 | - * 关联 {@link ProcessDefinition#getId()} | 36 | + * 关联 ProcessDefinition 的 id 属性 |
| 40 | */ | 37 | */ |
| 41 | private String processDefinitionId; | 38 | private String processDefinitionId; |
| 42 | /** | 39 | /** |
| 43 | * 流程模型的编号 | 40 | * 流程模型的编号 |
| 44 | * | 41 | * |
| 45 | - * 关联 {@link Model#getId()} | 42 | + * 关联 Model 的 id 属性 |
| 46 | */ | 43 | */ |
| 47 | private String modelId; | 44 | private String modelId; |
| 48 | /** | 45 | /** |
yudao-module-bpm/yudao-module-bpm-base/src/main/java/cn/iocoder/yudao/module/bpm/dal/dataobject/definition/BpmTaskAssignRuleDO.java
| 1 | package cn.iocoder.yudao.module.bpm.dal.dataobject.definition; | 1 | package cn.iocoder.yudao.module.bpm.dal.dataobject.definition; |
| 2 | 2 | ||
| 3 | -import cn.iocoder.yudao.adminserver.modules.bpm.enums.definition.BpmTaskRuleScriptEnum; | ||
| 4 | -import cn.iocoder.yudao.adminserver.modules.bpm.enums.definition.BpmTaskAssignRuleTypeEnum; | ||
| 5 | import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; | 3 | import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; |
| 6 | import cn.iocoder.yudao.framework.mybatis.core.type.JsonLongSetTypeHandler; | 4 | import cn.iocoder.yudao.framework.mybatis.core.type.JsonLongSetTypeHandler; |
| 5 | +import cn.iocoder.yudao.module.bpm.enums.definition.BpmTaskAssignRuleTypeEnum; | ||
| 6 | +import cn.iocoder.yudao.module.bpm.enums.definition.BpmTaskRuleScriptEnum; | ||
| 7 | import com.baomidou.mybatisplus.annotation.TableField; | 7 | import com.baomidou.mybatisplus.annotation.TableField; |
| 8 | import com.baomidou.mybatisplus.annotation.TableId; | 8 | import com.baomidou.mybatisplus.annotation.TableId; |
| 9 | import com.baomidou.mybatisplus.annotation.TableName; | 9 | import com.baomidou.mybatisplus.annotation.TableName; |
| 10 | import lombok.*; | 10 | import lombok.*; |
| 11 | -import org.activiti.engine.repository.Model; | ||
| 12 | -import org.activiti.engine.repository.ProcessDefinition; | ||
| 13 | -import org.activiti.engine.task.Task; | ||
| 14 | 11 | ||
| 15 | import java.util.Set; | 12 | import java.util.Set; |
| 16 | 13 | ||
| @@ -46,19 +43,19 @@ public class BpmTaskAssignRuleDO extends BaseDO { | @@ -46,19 +43,19 @@ public class BpmTaskAssignRuleDO extends BaseDO { | ||
| 46 | /** | 43 | /** |
| 47 | * 流程模型编号 | 44 | * 流程模型编号 |
| 48 | * | 45 | * |
| 49 | - * 关联 {@link Model#getId()} | 46 | + * 关联 Model 的 id 属性 |
| 50 | */ | 47 | */ |
| 51 | private String modelId; | 48 | private String modelId; |
| 52 | /** | 49 | /** |
| 53 | * 流程定义编号 | 50 | * 流程定义编号 |
| 54 | * | 51 | * |
| 55 | - * 关联 {@link ProcessDefinition#getId()} | 52 | + * 关联 ProcessDefinition 的 id 属性 |
| 56 | */ | 53 | */ |
| 57 | private String processDefinitionId; | 54 | private String processDefinitionId; |
| 58 | /** | 55 | /** |
| 59 | * 流程任务的定义 Key | 56 | * 流程任务的定义 Key |
| 60 | * | 57 | * |
| 61 | - * 关联 {@link Task#getTaskDefinitionKey()} | 58 | + * 关联 Task 的 taskDefinitionKey 属性 |
| 62 | */ | 59 | */ |
| 63 | private String taskDefinitionKey; | 60 | private String taskDefinitionKey; |
| 64 | 61 |
yudao-module-bpm/yudao-module-bpm-base/src/main/java/cn/iocoder/yudao/module/bpm/dal/dataobject/oa/BpmOALeaveDO.java
| 1 | package cn.iocoder.yudao.module.bpm.dal.dataobject.oa; | 1 | package cn.iocoder.yudao.module.bpm.dal.dataobject.oa; |
| 2 | 2 | ||
| 3 | -import cn.iocoder.yudao.module.system.dal.dataobject.user.SysUserDO; | 3 | +import cn.iocoder.yudao.module.bpm.enums.task.BpmProcessInstanceResultEnum; |
| 4 | import lombok.*; | 4 | import lombok.*; |
| 5 | import java.util.*; | 5 | import java.util.*; |
| 6 | import com.baomidou.mybatisplus.annotation.*; | 6 | import com.baomidou.mybatisplus.annotation.*; |
| 7 | import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; | 7 | import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; |
| 8 | -import org.activiti.engine.runtime.ProcessInstance; | ||
| 9 | 8 | ||
| 10 | /** | 9 | /** |
| 11 | * OA 请假申请 DO | 10 | * OA 请假申请 DO |
| @@ -32,7 +31,7 @@ public class BpmOALeaveDO extends BaseDO { | @@ -32,7 +31,7 @@ public class BpmOALeaveDO extends BaseDO { | ||
| 32 | /** | 31 | /** |
| 33 | * 申请人的用户编号 | 32 | * 申请人的用户编号 |
| 34 | * | 33 | * |
| 35 | - * 关联 {@link SysUserDO#getId()} | 34 | + * 关联 AdminUserDO 的 id 属性 |
| 36 | */ | 35 | */ |
| 37 | private Long userId; | 36 | private Long userId; |
| 38 | /** | 37 | /** |
| @@ -59,7 +58,7 @@ public class BpmOALeaveDO extends BaseDO { | @@ -59,7 +58,7 @@ public class BpmOALeaveDO extends BaseDO { | ||
| 59 | /** | 58 | /** |
| 60 | * 请假的结果 | 59 | * 请假的结果 |
| 61 | * | 60 | * |
| 62 | - * 枚举 {@link cn.iocoder.yudao.adminserver.modules.bpm.enums.task.BpmProcessInstanceResultEnum} | 61 | + * 枚举 {@link BpmProcessInstanceResultEnum} |
| 63 | * 考虑到简单,所以直接复用了 BpmProcessInstanceResultEnum 枚举,也可以自己定义一个枚举哈 | 62 | * 考虑到简单,所以直接复用了 BpmProcessInstanceResultEnum 枚举,也可以自己定义一个枚举哈 |
| 64 | */ | 63 | */ |
| 65 | private Integer result; | 64 | private Integer result; |
| @@ -67,7 +66,7 @@ public class BpmOALeaveDO extends BaseDO { | @@ -67,7 +66,7 @@ public class BpmOALeaveDO extends BaseDO { | ||
| 67 | /** | 66 | /** |
| 68 | * 对应的流程编号 | 67 | * 对应的流程编号 |
| 69 | * | 68 | * |
| 70 | - * 关联 {@link ProcessInstance#getId()} | 69 | + * 关联 ProcessInstance 的 id 属性 |
| 71 | */ | 70 | */ |
| 72 | private String processInstanceId; | 71 | private String processInstanceId; |
| 73 | 72 |
yudao-module-bpm/yudao-module-bpm-base/src/main/java/cn/iocoder/yudao/module/bpm/dal/dataobject/task/BpmProcessInstanceExtDO.java
| 1 | package cn.iocoder.yudao.module.bpm.dal.dataobject.task; | 1 | package cn.iocoder.yudao.module.bpm.dal.dataobject.task; |
| 2 | 2 | ||
| 3 | -import cn.iocoder.yudao.adminserver.modules.bpm.enums.task.BpmProcessInstanceResultEnum; | ||
| 4 | -import cn.iocoder.yudao.adminserver.modules.bpm.enums.task.BpmProcessInstanceStatusEnum; | ||
| 5 | import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; | 3 | import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; |
| 4 | +import cn.iocoder.yudao.module.bpm.enums.task.BpmProcessInstanceResultEnum; | ||
| 5 | +import cn.iocoder.yudao.module.bpm.enums.task.BpmProcessInstanceStatusEnum; | ||
| 6 | import com.baomidou.mybatisplus.annotation.TableField; | 6 | import com.baomidou.mybatisplus.annotation.TableField; |
| 7 | import com.baomidou.mybatisplus.annotation.TableId; | 7 | import com.baomidou.mybatisplus.annotation.TableId; |
| 8 | import com.baomidou.mybatisplus.annotation.TableName; | 8 | import com.baomidou.mybatisplus.annotation.TableName; |
| @@ -10,16 +10,13 @@ import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler; | @@ -10,16 +10,13 @@ import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler; | ||
| 10 | import lombok.Data; | 10 | import lombok.Data; |
| 11 | import lombok.EqualsAndHashCode; | 11 | import lombok.EqualsAndHashCode; |
| 12 | import lombok.ToString; | 12 | import lombok.ToString; |
| 13 | -import org.activiti.engine.history.HistoricProcessInstance; | ||
| 14 | -import org.activiti.engine.repository.ProcessDefinition; | ||
| 15 | -import org.activiti.engine.runtime.ProcessInstance; | ||
| 16 | 13 | ||
| 17 | import java.util.Date; | 14 | import java.util.Date; |
| 18 | import java.util.Map; | 15 | import java.util.Map; |
| 19 | 16 | ||
| 20 | /** | 17 | /** |
| 21 | * Bpm 流程实例的拓展表 | 18 | * Bpm 流程实例的拓展表 |
| 22 | - * 主要解决 Activiti {@link ProcessInstance} 和 {@link HistoricProcessInstance} 不支持拓展字段,所以新建拓展表 | 19 | + * 主要解决 Activiti ProcessInstance 和 HistoricProcessInstance 不支持拓展字段,所以新建拓展表 |
| 23 | * | 20 | * |
| 24 | * @author 芋道源码 | 21 | * @author 芋道源码 |
| 25 | */ | 22 | */ |
| @@ -27,9 +24,6 @@ import java.util.Map; | @@ -27,9 +24,6 @@ import java.util.Map; | ||
| 27 | @Data | 24 | @Data |
| 28 | @EqualsAndHashCode(callSuper = true) | 25 | @EqualsAndHashCode(callSuper = true) |
| 29 | @ToString(callSuper = true) | 26 | @ToString(callSuper = true) |
| 30 | -//@Builder | ||
| 31 | -//@NoArgsConstructor | ||
| 32 | -//@AllArgsConstructor | ||
| 33 | public class BpmProcessInstanceExtDO extends BaseDO { | 27 | public class BpmProcessInstanceExtDO extends BaseDO { |
| 34 | 28 | ||
| 35 | /** | 29 | /** |
| @@ -40,31 +34,31 @@ public class BpmProcessInstanceExtDO extends BaseDO { | @@ -40,31 +34,31 @@ public class BpmProcessInstanceExtDO extends BaseDO { | ||
| 40 | /** | 34 | /** |
| 41 | * 发起流程的用户编号 | 35 | * 发起流程的用户编号 |
| 42 | * | 36 | * |
| 43 | - * 冗余 {@link HistoricProcessInstance#getStartUserId()} | 37 | + * 冗余 HistoricProcessInstance 的 startUserId 属性 |
| 44 | */ | 38 | */ |
| 45 | private Long startUserId; | 39 | private Long startUserId; |
| 46 | /** | 40 | /** |
| 47 | * 流程实例的名字 | 41 | * 流程实例的名字 |
| 48 | * | 42 | * |
| 49 | - * 冗余 {@link ProcessInstance#getName()} 为了筛选 | 43 | + * 冗余 ProcessInstance 的 name 属性,用于筛选 |
| 50 | */ | 44 | */ |
| 51 | private String name; | 45 | private String name; |
| 52 | /** | 46 | /** |
| 53 | * 流程实例的编号 | 47 | * 流程实例的编号 |
| 54 | * | 48 | * |
| 55 | - * 关联 {@link ProcessInstance#getId()} | 49 | + * 关联 ProcessInstance 的 id 属性 |
| 56 | */ | 50 | */ |
| 57 | private String processInstanceId; | 51 | private String processInstanceId; |
| 58 | /** | 52 | /** |
| 59 | * 流程定义的编号 | 53 | * 流程定义的编号 |
| 60 | * | 54 | * |
| 61 | - * 关联 {@link ProcessDefinition#getId()} | 55 | + * 关联 ProcessDefinition 的 id 属性 |
| 62 | */ | 56 | */ |
| 63 | private String processDefinitionId; | 57 | private String processDefinitionId; |
| 64 | /** | 58 | /** |
| 65 | * 流程分类 | 59 | * 流程分类 |
| 66 | * | 60 | * |
| 67 | - * 冗余 {@link ProcessDefinition#getCategory()} | 61 | + * 冗余 ProcessDefinition 的 category 属性 |
| 68 | * 数据字典 bpm_model_category | 62 | * 数据字典 bpm_model_category |
| 69 | */ | 63 | */ |
| 70 | private String category; | 64 | private String category; |
| @@ -83,7 +77,7 @@ public class BpmProcessInstanceExtDO extends BaseDO { | @@ -83,7 +77,7 @@ public class BpmProcessInstanceExtDO extends BaseDO { | ||
| 83 | /** | 77 | /** |
| 84 | * 结束时间 | 78 | * 结束时间 |
| 85 | * | 79 | * |
| 86 | - * 冗余 {@link HistoricProcessInstance#getEndTime()} | 80 | + * 冗余 HistoricProcessInstance 的 endTime 属性 |
| 87 | */ | 81 | */ |
| 88 | private Date endTime; | 82 | private Date endTime; |
| 89 | 83 |
yudao-module-bpm/yudao-module-bpm-base/src/main/java/cn/iocoder/yudao/module/bpm/dal/dataobject/task/BpmTaskExtDO.java
| 1 | package cn.iocoder.yudao.module.bpm.dal.dataobject.task; | 1 | package cn.iocoder.yudao.module.bpm.dal.dataobject.task; |
| 2 | 2 | ||
| 3 | -import cn.iocoder.yudao.adminserver.modules.bpm.enums.task.BpmProcessInstanceResultEnum; | ||
| 4 | import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; | 3 | import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; |
| 4 | +import cn.iocoder.yudao.module.bpm.enums.task.BpmProcessInstanceResultEnum; | ||
| 5 | import com.baomidou.mybatisplus.annotation.TableName; | 5 | import com.baomidou.mybatisplus.annotation.TableName; |
| 6 | import lombok.Data; | 6 | import lombok.Data; |
| 7 | import lombok.EqualsAndHashCode; | 7 | import lombok.EqualsAndHashCode; |
| 8 | import lombok.ToString; | 8 | import lombok.ToString; |
| 9 | -import org.activiti.engine.history.HistoricTaskInstance; | ||
| 10 | -import org.activiti.engine.repository.ProcessDefinition; | ||
| 11 | -import org.activiti.engine.runtime.ProcessInstance; | ||
| 12 | -import org.activiti.engine.task.Task; | ||
| 13 | 9 | ||
| 14 | import java.util.Date; | 10 | import java.util.Date; |
| 15 | 11 | ||
| 16 | /** | 12 | /** |
| 17 | * Bpm 流程任务的拓展表 | 13 | * Bpm 流程任务的拓展表 |
| 18 | - * 主要解决 Activiti {@link Task} 和 {@link HistoricTaskInstance} 不支持拓展字段,所以新建拓展表 | 14 | + * 主要解决 Activiti Task 和 HistoricTaskInstance 不支持拓展字段,所以新建拓展表 |
| 19 | * | 15 | * |
| 20 | * @author 芋道源码 | 16 | * @author 芋道源码 |
| 21 | */ | 17 | */ |
| @@ -23,27 +19,24 @@ import java.util.Date; | @@ -23,27 +19,24 @@ import java.util.Date; | ||
| 23 | @Data | 19 | @Data |
| 24 | @EqualsAndHashCode(callSuper = true) | 20 | @EqualsAndHashCode(callSuper = true) |
| 25 | @ToString(callSuper = true) | 21 | @ToString(callSuper = true) |
| 26 | -//@Builder | ||
| 27 | -//@NoArgsConstructor | ||
| 28 | -//@AllArgsConstructor | ||
| 29 | public class BpmTaskExtDO extends BaseDO { | 22 | public class BpmTaskExtDO extends BaseDO { |
| 30 | 23 | ||
| 31 | /** | 24 | /** |
| 32 | * 任务的审批人 | 25 | * 任务的审批人 |
| 33 | * | 26 | * |
| 34 | - * 冗余 {@link Task#getAssignee()} | 27 | + * 冗余 Task 的 assignee 属性 |
| 35 | */ | 28 | */ |
| 36 | private Long assigneeUserId; | 29 | private Long assigneeUserId; |
| 37 | /** | 30 | /** |
| 38 | * 任务的名字 | 31 | * 任务的名字 |
| 39 | * | 32 | * |
| 40 | - * 冗余 {@link Task#getName()} 为了筛选 | 33 | + * 冗余 Task 的 name 属性,为了筛选 |
| 41 | */ | 34 | */ |
| 42 | private String name; | 35 | private String name; |
| 43 | /** | 36 | /** |
| 44 | * 任务的编号 | 37 | * 任务的编号 |
| 45 | * | 38 | * |
| 46 | - * 关联 {@link Task#getId()} | 39 | + * 关联 Task 的 id 属性 |
| 47 | */ | 40 | */ |
| 48 | private String taskId; | 41 | private String taskId; |
| 49 | // /** | 42 | // /** |
| @@ -65,20 +58,20 @@ public class BpmTaskExtDO extends BaseDO { | @@ -65,20 +58,20 @@ public class BpmTaskExtDO extends BaseDO { | ||
| 65 | /** | 58 | /** |
| 66 | * 任务的结束时间 | 59 | * 任务的结束时间 |
| 67 | * | 60 | * |
| 68 | - * 冗余 {@link HistoricTaskInstance#getEndTime()} | 61 | + * 冗余 HistoricTaskInstance 的 endTime 属性 |
| 69 | */ | 62 | */ |
| 70 | private Date endTime; | 63 | private Date endTime; |
| 71 | 64 | ||
| 72 | /** | 65 | /** |
| 73 | * 流程实例的编号 | 66 | * 流程实例的编号 |
| 74 | * | 67 | * |
| 75 | - * 关联 {@link ProcessInstance#getId()} | 68 | + * 关联 ProcessInstance 的 id 属性 |
| 76 | */ | 69 | */ |
| 77 | private String processInstanceId; | 70 | private String processInstanceId; |
| 78 | /** | 71 | /** |
| 79 | * 流程定义的编号 | 72 | * 流程定义的编号 |
| 80 | * | 73 | * |
| 81 | - * 关联 {@link ProcessDefinition#getId()} | 74 | + * 关联 ProcessDefinition 的 id 属性 |
| 82 | */ | 75 | */ |
| 83 | private String processDefinitionId; | 76 | private String processDefinitionId; |
| 84 | 77 |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/dal/mysql/definition/BpmProcessDefinitionExtMapper.java renamed to yudao-module-bpm/yudao-module-bpm-base/src/main/java/cn/iocoder/yudao/module/bpm/dal/mysql/definition/BpmProcessDefinitionExtMapper.java
| 1 | -package cn.iocoder.yudao.adminserver.modules.bpm.dal.mysql.definition; | 1 | +package cn.iocoder.yudao.module.bpm.dal.mysql.definition; |
| 2 | 2 | ||
| 3 | import cn.iocoder.yudao.module.bpm.dal.dataobject.definition.BpmProcessDefinitionExtDO; | 3 | import cn.iocoder.yudao.module.bpm.dal.dataobject.definition.BpmProcessDefinitionExtDO; |
| 4 | import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; | 4 | import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/dal/mysql/definition/BpmTaskAssignRuleMapper.java renamed to yudao-module-bpm/yudao-module-bpm-base/src/main/java/cn/iocoder/yudao/module/bpm/dal/mysql/definition/BpmTaskAssignRuleMapper.java
| 1 | -package cn.iocoder.yudao.adminserver.modules.bpm.dal.mysql.definition; | 1 | +package cn.iocoder.yudao.module.bpm.dal.mysql.definition; |
| 2 | 2 | ||
| 3 | import cn.iocoder.yudao.module.bpm.dal.dataobject.definition.BpmTaskAssignRuleDO; | 3 | import cn.iocoder.yudao.module.bpm.dal.dataobject.definition.BpmTaskAssignRuleDO; |
| 4 | import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; | 4 | import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/dal/mysql/oa/BpmOALeaveMapper.java renamed to yudao-module-bpm/yudao-module-bpm-base/src/main/java/cn/iocoder/yudao/module/bpm/dal/mysql/oa/BpmOALeaveMapper.java
| 1 | -package cn.iocoder.yudao.adminserver.modules.bpm.dal.mysql.oa; | 1 | +package cn.iocoder.yudao.module.bpm.dal.mysql.oa; |
| 2 | 2 | ||
| 3 | -import cn.iocoder.yudao.adminserver.modules.bpm.controller.oa.vo.BpmOALeavePageReqVO; | 3 | +import cn.iocoder.yudao.module.bpm.controller.oa.vo.BpmOALeavePageReqVO; |
| 4 | import cn.iocoder.yudao.module.bpm.dal.dataobject.oa.BpmOALeaveDO; | 4 | import cn.iocoder.yudao.module.bpm.dal.dataobject.oa.BpmOALeaveDO; |
| 5 | import cn.iocoder.yudao.framework.common.pojo.PageResult; | 5 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 6 | import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; | 6 | import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/dal/mysql/task/BpmProcessInstanceExtMapper.java renamed to yudao-module-bpm/yudao-module-bpm-base/src/main/java/cn/iocoder/yudao/module/bpm/dal/mysql/task/BpmProcessInstanceExtMapper.java
| 1 | -package cn.iocoder.yudao.adminserver.modules.bpm.dal.mysql.task; | 1 | +package cn.iocoder.yudao.module.bpm.dal.mysql.task; |
| 2 | 2 | ||
| 3 | -import cn.iocoder.yudao.adminserver.modules.bpm.controller.task.vo.instance.BpmProcessInstanceMyPageReqVO; | 3 | +import cn.iocoder.yudao.module.bpm.controller.task.vo.instance.BpmProcessInstanceMyPageReqVO; |
| 4 | import cn.iocoder.yudao.module.bpm.dal.dataobject.task.BpmProcessInstanceExtDO; | 4 | import cn.iocoder.yudao.module.bpm.dal.dataobject.task.BpmProcessInstanceExtDO; |
| 5 | import cn.iocoder.yudao.framework.common.pojo.PageResult; | 5 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 6 | import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; | 6 | import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/dal/mysql/task/BpmTaskExtMapper.java renamed to yudao-module-bpm/yudao-module-bpm-base/src/main/java/cn/iocoder/yudao/module/bpm/dal/mysql/task/BpmTaskExtMapper.java
| 1 | -package cn.iocoder.yudao.adminserver.modules.bpm.dal.mysql.task; | 1 | +package cn.iocoder.yudao.module.bpm.dal.mysql.task; |
| 2 | 2 | ||
| 3 | import cn.iocoder.yudao.module.bpm.dal.dataobject.task.BpmTaskExtDO; | 3 | import cn.iocoder.yudao.module.bpm.dal.dataobject.task.BpmTaskExtDO; |
| 4 | import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; | 4 | import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; |
yudao-module-bpm/yudao-module-bpm-base/src/main/java/cn/iocoder/yudao/module/bpm/enums/message/BpmMessageEnum.java
| 1 | package cn.iocoder.yudao.module.bpm.enums.message; | 1 | package cn.iocoder.yudao.module.bpm.enums.message; |
| 2 | 2 | ||
| 3 | -import cn.iocoder.yudao.module.system.dal.dataobject.sms.SysSmsTemplateDO; | ||
| 4 | import lombok.AllArgsConstructor; | 3 | import lombok.AllArgsConstructor; |
| 5 | import lombok.Getter; | 4 | import lombok.Getter; |
| 6 | 5 | ||
| @@ -20,9 +19,8 @@ public enum BpmMessageEnum { | @@ -20,9 +19,8 @@ public enum BpmMessageEnum { | ||
| 20 | /** | 19 | /** |
| 21 | * 短信模板的标识 | 20 | * 短信模板的标识 |
| 22 | * | 21 | * |
| 23 | - * 关联 {@link SysSmsTemplateDO#getCode()} | 22 | + * 关联 SmsTemplateDO 的 code 属性 |
| 24 | */ | 23 | */ |
| 25 | - private final String smsCode; | ||
| 26 | - | 24 | + private final String smsTemplateCode; |
| 27 | 25 | ||
| 28 | } | 26 | } |
yudao-module-bpm/yudao-module-bpm-base/src/main/java/cn/iocoder/yudao/module/bpm/service/definition/BpmUserGroupService.java
| @@ -47,6 +47,14 @@ public interface BpmUserGroupService { | @@ -47,6 +47,14 @@ public interface BpmUserGroupService { | ||
| 47 | BpmUserGroupDO getUserGroup(Long id); | 47 | BpmUserGroupDO getUserGroup(Long id); |
| 48 | 48 | ||
| 49 | /** | 49 | /** |
| 50 | + * 获得用户组列表 | ||
| 51 | + * | ||
| 52 | + * @param ids 编号 | ||
| 53 | + * @return 用户组列表 | ||
| 54 | + */ | ||
| 55 | + List<BpmUserGroupDO> getUserGroupList(Collection<Long> ids); | ||
| 56 | + | ||
| 57 | + /** | ||
| 50 | * 获得指定状态的用户组列表 | 58 | * 获得指定状态的用户组列表 |
| 51 | * | 59 | * |
| 52 | * @param status 状态 | 60 | * @param status 状态 |
| @@ -70,4 +78,5 @@ public interface BpmUserGroupService { | @@ -70,4 +78,5 @@ public interface BpmUserGroupService { | ||
| 70 | * @param ids 用户组编号数组 | 78 | * @param ids 用户组编号数组 |
| 71 | */ | 79 | */ |
| 72 | void validUserGroups(Set<Long> ids); | 80 | void validUserGroups(Set<Long> ids); |
| 81 | + | ||
| 73 | } | 82 | } |
yudao-module-bpm/yudao-module-bpm-base/src/main/java/cn/iocoder/yudao/module/bpm/service/definition/BpmUserGroupServiceImpl.java
| @@ -15,12 +15,13 @@ import org.springframework.stereotype.Service; | @@ -15,12 +15,13 @@ import org.springframework.stereotype.Service; | ||
| 15 | import org.springframework.validation.annotation.Validated; | 15 | import org.springframework.validation.annotation.Validated; |
| 16 | 16 | ||
| 17 | import javax.annotation.Resource; | 17 | import javax.annotation.Resource; |
| 18 | +import java.util.Collection; | ||
| 18 | import java.util.List; | 19 | import java.util.List; |
| 19 | import java.util.Map; | 20 | import java.util.Map; |
| 20 | import java.util.Set; | 21 | import java.util.Set; |
| 21 | 22 | ||
| 22 | -import static cn.iocoder.yudao.module.bpm.enums.ErrorCodeConstants.USER_GROUP_NOT_EXISTS; | ||
| 23 | import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; | 23 | import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; |
| 24 | +import static cn.iocoder.yudao.module.bpm.enums.ErrorCodeConstants.*; | ||
| 24 | 25 | ||
| 25 | /** | 26 | /** |
| 26 | * 用户组 Service 实现类 | 27 | * 用户组 Service 实现类 |
| @@ -71,6 +72,11 @@ public class BpmUserGroupServiceImpl implements BpmUserGroupService { | @@ -71,6 +72,11 @@ public class BpmUserGroupServiceImpl implements BpmUserGroupService { | ||
| 71 | return userGroupMapper.selectById(id); | 72 | return userGroupMapper.selectById(id); |
| 72 | } | 73 | } |
| 73 | 74 | ||
| 75 | + @Override | ||
| 76 | + public List<BpmUserGroupDO> getUserGroupList(Collection<Long> ids) { | ||
| 77 | + return userGroupMapper.selectBatchIds(ids); | ||
| 78 | + } | ||
| 79 | + | ||
| 74 | 80 | ||
| 75 | @Override | 81 | @Override |
| 76 | public List<BpmUserGroupDO> getUserGroupListByStatus(Integer status) { | 82 | public List<BpmUserGroupDO> getUserGroupListByStatus(Integer status) { |
yudao-module-bpm/yudao-module-bpm-base/src/main/java/cn/iocoder/yudao/module/bpm/service/message/BpmMessageServiceImpl.java
| 1 | package cn.iocoder.yudao.module.bpm.service.message; | 1 | package cn.iocoder.yudao.module.bpm.service.message; |
| 2 | 2 | ||
| 3 | -import cn.iocoder.yudao.adminserver.modules.bpm.enums.message.BpmMessageEnum; | ||
| 4 | -import cn.iocoder.yudao.module.bpm.service.message.BpmMessageService; | 3 | +import cn.iocoder.yudao.framework.web.config.WebProperties; |
| 4 | +import cn.iocoder.yudao.module.bpm.convert.message.BpmMessageConvert; | ||
| 5 | +import cn.iocoder.yudao.module.bpm.enums.message.BpmMessageEnum; | ||
| 5 | import cn.iocoder.yudao.module.bpm.service.message.dto.BpmMessageSendWhenProcessInstanceApproveReqDTO; | 6 | import cn.iocoder.yudao.module.bpm.service.message.dto.BpmMessageSendWhenProcessInstanceApproveReqDTO; |
| 6 | import cn.iocoder.yudao.module.bpm.service.message.dto.BpmMessageSendWhenProcessInstanceRejectReqDTO; | 7 | import cn.iocoder.yudao.module.bpm.service.message.dto.BpmMessageSendWhenProcessInstanceRejectReqDTO; |
| 7 | import cn.iocoder.yudao.module.bpm.service.message.dto.BpmMessageSendWhenTaskCreatedReqDTO; | 8 | import cn.iocoder.yudao.module.bpm.service.message.dto.BpmMessageSendWhenTaskCreatedReqDTO; |
| 8 | -import cn.iocoder.yudao.module.system.service.sms.SysSmsCoreService; | 9 | +import cn.iocoder.yudao.module.system.api.sms.SmsSendApi; |
| 9 | import lombok.extern.slf4j.Slf4j; | 10 | import lombok.extern.slf4j.Slf4j; |
| 10 | -import org.springframework.beans.factory.annotation.Value; | ||
| 11 | import org.springframework.stereotype.Service; | 11 | import org.springframework.stereotype.Service; |
| 12 | import org.springframework.validation.annotation.Validated; | 12 | import org.springframework.validation.annotation.Validated; |
| 13 | 13 | ||
| @@ -26,18 +26,18 @@ import java.util.Map; | @@ -26,18 +26,18 @@ import java.util.Map; | ||
| 26 | public class BpmMessageServiceImpl implements BpmMessageService { | 26 | public class BpmMessageServiceImpl implements BpmMessageService { |
| 27 | 27 | ||
| 28 | @Resource | 28 | @Resource |
| 29 | - private SysSmsCoreService smsCoreService; | 29 | + private SmsSendApi smsSendApi; |
| 30 | 30 | ||
| 31 | - @Value("${yudao.url.admin-ui}") | ||
| 32 | - private String adminUiUrl; | 31 | + @Resource |
| 32 | + private WebProperties webProperties; | ||
| 33 | 33 | ||
| 34 | @Override | 34 | @Override |
| 35 | public void sendMessageWhenProcessInstanceApprove(BpmMessageSendWhenProcessInstanceApproveReqDTO reqDTO) { | 35 | public void sendMessageWhenProcessInstanceApprove(BpmMessageSendWhenProcessInstanceApproveReqDTO reqDTO) { |
| 36 | Map<String, Object> templateParams = new HashMap<>(); | 36 | Map<String, Object> templateParams = new HashMap<>(); |
| 37 | templateParams.put("processInstanceName", reqDTO.getProcessInstanceName()); | 37 | templateParams.put("processInstanceName", reqDTO.getProcessInstanceName()); |
| 38 | templateParams.put("detailUrl", getProcessInstanceDetailUrl(reqDTO.getProcessInstanceId())); | 38 | templateParams.put("detailUrl", getProcessInstanceDetailUrl(reqDTO.getProcessInstanceId())); |
| 39 | - smsCoreService.sendSingleSmsToAdmin(null, reqDTO.getStartUserId(), | ||
| 40 | - BpmMessageEnum.PROCESS_INSTANCE_APPROVE.getSmsCode(), templateParams); | 39 | + smsSendApi.sendSingleSmsToAdmin(BpmMessageConvert.INSTANCE.convert(reqDTO.getStartUserId(), |
| 40 | + BpmMessageEnum.PROCESS_INSTANCE_APPROVE.getSmsTemplateCode(), templateParams)); | ||
| 41 | } | 41 | } |
| 42 | 42 | ||
| 43 | @Override | 43 | @Override |
| @@ -46,8 +46,8 @@ public class BpmMessageServiceImpl implements BpmMessageService { | @@ -46,8 +46,8 @@ public class BpmMessageServiceImpl implements BpmMessageService { | ||
| 46 | templateParams.put("processInstanceName", reqDTO.getProcessInstanceName()); | 46 | templateParams.put("processInstanceName", reqDTO.getProcessInstanceName()); |
| 47 | templateParams.put("comment", reqDTO.getComment()); | 47 | templateParams.put("comment", reqDTO.getComment()); |
| 48 | templateParams.put("detailUrl", getProcessInstanceDetailUrl(reqDTO.getProcessInstanceId())); | 48 | templateParams.put("detailUrl", getProcessInstanceDetailUrl(reqDTO.getProcessInstanceId())); |
| 49 | - smsCoreService.sendSingleSmsToAdmin(null, reqDTO.getStartUserId(), | ||
| 50 | - BpmMessageEnum.PROCESS_INSTANCE_REJECT.getSmsCode(), templateParams); | 49 | + smsSendApi.sendSingleSmsToAdmin(BpmMessageConvert.INSTANCE.convert(reqDTO.getStartUserId(), |
| 50 | + BpmMessageEnum.PROCESS_INSTANCE_REJECT.getSmsTemplateCode(), templateParams)); | ||
| 51 | } | 51 | } |
| 52 | 52 | ||
| 53 | @Override | 53 | @Override |
| @@ -57,12 +57,12 @@ public class BpmMessageServiceImpl implements BpmMessageService { | @@ -57,12 +57,12 @@ public class BpmMessageServiceImpl implements BpmMessageService { | ||
| 57 | templateParams.put("taskName", reqDTO.getTaskName()); | 57 | templateParams.put("taskName", reqDTO.getTaskName()); |
| 58 | templateParams.put("startUserNickname", reqDTO.getStartUserNickname()); | 58 | templateParams.put("startUserNickname", reqDTO.getStartUserNickname()); |
| 59 | templateParams.put("detailUrl", getProcessInstanceDetailUrl(reqDTO.getProcessInstanceId())); | 59 | templateParams.put("detailUrl", getProcessInstanceDetailUrl(reqDTO.getProcessInstanceId())); |
| 60 | - smsCoreService.sendSingleSmsToAdmin(null, reqDTO.getAssigneeUserId(), | ||
| 61 | - BpmMessageEnum.TASK_ASSIGNED.getSmsCode(), templateParams); | 60 | + smsSendApi.sendSingleSmsToAdmin(BpmMessageConvert.INSTANCE.convert(reqDTO.getStartUserId(), |
| 61 | + BpmMessageEnum.TASK_ASSIGNED.getSmsTemplateCode(), templateParams)); | ||
| 62 | } | 62 | } |
| 63 | 63 | ||
| 64 | private String getProcessInstanceDetailUrl(String taskId) { | 64 | private String getProcessInstanceDetailUrl(String taskId) { |
| 65 | - return adminUiUrl + "bpm/process-instance/detail?id=" + taskId; | 65 | + return webProperties.getAdminUi().getUrl() + "/bpm/process-instance/detail?id=" + taskId; |
| 66 | } | 66 | } |
| 67 | 67 | ||
| 68 | } | 68 | } |
yudao-module-bpm/yudao-module-bpm-base/src/main/java/cn/iocoder/yudao/module/bpm/service/message/dto/BpmMessageSendWhenTaskCreatedReqDTO.java
| @@ -22,7 +22,7 @@ public class BpmMessageSendWhenTaskCreatedReqDTO { | @@ -22,7 +22,7 @@ public class BpmMessageSendWhenTaskCreatedReqDTO { | ||
| 22 | @NotEmpty(message = "流程实例的名字不能为空") | 22 | @NotEmpty(message = "流程实例的名字不能为空") |
| 23 | private String processInstanceName; | 23 | private String processInstanceName; |
| 24 | @NotEmpty(message = "发起人的用户编号") | 24 | @NotEmpty(message = "发起人的用户编号") |
| 25 | - private String startUserId; | 25 | + private Long startUserId; |
| 26 | @NotEmpty(message = "发起人的昵称") | 26 | @NotEmpty(message = "发起人的昵称") |
| 27 | private String startUserNickname; | 27 | private String startUserNickname; |
| 28 | 28 |
yudao-module-bpm/yudao-module-bpm-base/src/main/java/cn/iocoder/yudao/module/bpm/service/task/package-info.java
0 → 100644
| 1 | +package cn.iocoder.yudao.module.bpm.service.task; |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/controller/definition/BpmModelController.java
| 1 | package cn.iocoder.yudao.adminserver.modules.bpm.controller.definition; | 1 | package cn.iocoder.yudao.adminserver.modules.bpm.controller.definition; |
| 2 | 2 | ||
| 3 | -import cn.iocoder.yudao.adminserver.modules.bpm.controller.definition.vo.model.*; | ||
| 4 | import cn.iocoder.yudao.adminserver.modules.bpm.convert.definition.BpmModelConvert; | 3 | import cn.iocoder.yudao.adminserver.modules.bpm.convert.definition.BpmModelConvert; |
| 5 | import cn.iocoder.yudao.adminserver.modules.bpm.service.definition.BpmModelService; | 4 | import cn.iocoder.yudao.adminserver.modules.bpm.service.definition.BpmModelService; |
| 6 | import cn.iocoder.yudao.framework.common.pojo.CommonResult; | 5 | import cn.iocoder.yudao.framework.common.pojo.CommonResult; |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/controller/oa/BpmOALeaveController.java
| 1 | package cn.iocoder.yudao.adminserver.modules.bpm.controller.oa; | 1 | package cn.iocoder.yudao.adminserver.modules.bpm.controller.oa; |
| 2 | 2 | ||
| 3 | -import cn.iocoder.yudao.adminserver.modules.bpm.controller.oa.vo.BpmOALeaveCreateReqVO; | ||
| 4 | -import cn.iocoder.yudao.adminserver.modules.bpm.controller.oa.vo.BpmOALeavePageReqVO; | ||
| 5 | -import cn.iocoder.yudao.adminserver.modules.bpm.controller.oa.vo.BpmOALeaveRespVO; | 3 | +import cn.iocoder.yudao.module.bpm.controller.oa.vo.BpmOALeaveCreateReqVO; |
| 4 | +import cn.iocoder.yudao.module.bpm.controller.oa.vo.BpmOALeavePageReqVO; | ||
| 5 | +import cn.iocoder.yudao.module.bpm.controller.oa.vo.BpmOALeaveRespVO; | ||
| 6 | import cn.iocoder.yudao.adminserver.modules.bpm.convert.oa.BpmOALeaveConvert; | 6 | import cn.iocoder.yudao.adminserver.modules.bpm.convert.oa.BpmOALeaveConvert; |
| 7 | import cn.iocoder.yudao.module.bpm.dal.dataobject.oa.BpmOALeaveDO; | 7 | import cn.iocoder.yudao.module.bpm.dal.dataobject.oa.BpmOALeaveDO; |
| 8 | import cn.iocoder.yudao.adminserver.modules.bpm.service.oa.BpmOALeaveService; | 8 | import cn.iocoder.yudao.adminserver.modules.bpm.service.oa.BpmOALeaveService; |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/controller/task/BpmActivityController.java
| 1 | package cn.iocoder.yudao.adminserver.modules.bpm.controller.task; | 1 | package cn.iocoder.yudao.adminserver.modules.bpm.controller.task; |
| 2 | 2 | ||
| 3 | import cn.hutool.core.util.StrUtil; | 3 | import cn.hutool.core.util.StrUtil; |
| 4 | -import cn.iocoder.yudao.adminserver.modules.bpm.controller.task.vo.activity.BpmActivityRespVO; | 4 | +import cn.iocoder.yudao.module.bpm.controller.task.vo.activity.BpmActivityRespVO; |
| 5 | import cn.iocoder.yudao.adminserver.modules.bpm.service.task.BpmActivityService; | 5 | import cn.iocoder.yudao.adminserver.modules.bpm.service.task.BpmActivityService; |
| 6 | import cn.iocoder.yudao.framework.common.pojo.CommonResult; | 6 | import cn.iocoder.yudao.framework.common.pojo.CommonResult; |
| 7 | import cn.iocoder.yudao.framework.common.util.servlet.ServletUtils; | 7 | import cn.iocoder.yudao.framework.common.util.servlet.ServletUtils; |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/controller/task/BpmProcessInstanceController.java
| 1 | package cn.iocoder.yudao.adminserver.modules.bpm.controller.task; | 1 | package cn.iocoder.yudao.adminserver.modules.bpm.controller.task; |
| 2 | 2 | ||
| 3 | -import cn.iocoder.yudao.adminserver.modules.bpm.controller.task.vo.instance.*; | ||
| 4 | import cn.iocoder.yudao.adminserver.modules.bpm.service.task.BpmProcessInstanceService; | 3 | import cn.iocoder.yudao.adminserver.modules.bpm.service.task.BpmProcessInstanceService; |
| 5 | import cn.iocoder.yudao.framework.common.pojo.CommonResult; | 4 | import cn.iocoder.yudao.framework.common.pojo.CommonResult; |
| 6 | import cn.iocoder.yudao.framework.common.pojo.PageResult; | 5 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 6 | +import cn.iocoder.yudao.module.bpm.controller.task.vo.instance.*; | ||
| 7 | import io.swagger.annotations.Api; | 7 | import io.swagger.annotations.Api; |
| 8 | import io.swagger.annotations.ApiImplicitParam; | 8 | import io.swagger.annotations.ApiImplicitParam; |
| 9 | import io.swagger.annotations.ApiOperation; | 9 | import io.swagger.annotations.ApiOperation; |
| @@ -25,7 +25,7 @@ public class BpmProcessInstanceController { | @@ -25,7 +25,7 @@ public class BpmProcessInstanceController { | ||
| 25 | 25 | ||
| 26 | @Resource | 26 | @Resource |
| 27 | private BpmProcessInstanceService processInstanceService; | 27 | private BpmProcessInstanceService processInstanceService; |
| 28 | - | 28 | + |
| 29 | @PostMapping("/create") | 29 | @PostMapping("/create") |
| 30 | @ApiOperation("新建流程实例") | 30 | @ApiOperation("新建流程实例") |
| 31 | @PreAuthorize("@ss.hasPermission('bpm:process-instance:query')") | 31 | @PreAuthorize("@ss.hasPermission('bpm:process-instance:query')") |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/controller/task/BpmTaskController.java
| 1 | package cn.iocoder.yudao.adminserver.modules.bpm.controller.task; | 1 | package cn.iocoder.yudao.adminserver.modules.bpm.controller.task; |
| 2 | 2 | ||
| 3 | -import cn.iocoder.yudao.adminserver.modules.bpm.controller.task.vo.task.*; | ||
| 4 | import cn.iocoder.yudao.adminserver.modules.bpm.service.task.BpmTaskService; | 3 | import cn.iocoder.yudao.adminserver.modules.bpm.service.task.BpmTaskService; |
| 5 | import cn.iocoder.yudao.framework.common.pojo.CommonResult; | 4 | import cn.iocoder.yudao.framework.common.pojo.CommonResult; |
| 6 | import cn.iocoder.yudao.framework.common.pojo.PageResult; | 5 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 7 | -import cn.iocoder.yudao.framework.common.util.servlet.ServletUtils; | 6 | +import cn.iocoder.yudao.module.bpm.controller.task.vo.task.*; |
| 8 | import io.swagger.annotations.Api; | 7 | import io.swagger.annotations.Api; |
| 9 | import io.swagger.annotations.ApiImplicitParam; | 8 | import io.swagger.annotations.ApiImplicitParam; |
| 10 | import io.swagger.annotations.ApiOperation; | 9 | import io.swagger.annotations.ApiOperation; |
| @@ -13,9 +12,7 @@ import org.springframework.validation.annotation.Validated; | @@ -13,9 +12,7 @@ import org.springframework.validation.annotation.Validated; | ||
| 13 | import org.springframework.web.bind.annotation.*; | 12 | import org.springframework.web.bind.annotation.*; |
| 14 | 13 | ||
| 15 | import javax.annotation.Resource; | 14 | import javax.annotation.Resource; |
| 16 | -import javax.servlet.http.HttpServletResponse; | ||
| 17 | import javax.validation.Valid; | 15 | import javax.validation.Valid; |
| 18 | -import java.io.IOException; | ||
| 19 | import java.util.List; | 16 | import java.util.List; |
| 20 | 17 | ||
| 21 | import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; | 18 | import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/convert/definition/BpmModelConvert.java
| 1 | package cn.iocoder.yudao.adminserver.modules.bpm.convert.definition; | 1 | package cn.iocoder.yudao.adminserver.modules.bpm.convert.definition; |
| 2 | 2 | ||
| 3 | import cn.hutool.core.util.StrUtil; | 3 | import cn.hutool.core.util.StrUtil; |
| 4 | -import cn.iocoder.yudao.adminserver.modules.bpm.controller.definition.vo.model.*; | ||
| 5 | import cn.iocoder.yudao.adminserver.modules.bpm.service.definition.dto.BpmModelMetaInfoRespDTO; | 4 | import cn.iocoder.yudao.adminserver.modules.bpm.service.definition.dto.BpmModelMetaInfoRespDTO; |
| 6 | import cn.iocoder.yudao.adminserver.modules.bpm.service.definition.dto.BpmProcessDefinitionCreateReqDTO; | 5 | import cn.iocoder.yudao.adminserver.modules.bpm.service.definition.dto.BpmProcessDefinitionCreateReqDTO; |
| 7 | -import cn.iocoder.yudao.module.bpm.api.form.dto.BpmFormDTO; | ||
| 8 | import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils; | 6 | import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils; |
| 9 | import cn.iocoder.yudao.framework.common.util.json.JsonUtils; | 7 | import cn.iocoder.yudao.framework.common.util.json.JsonUtils; |
| 10 | import cn.iocoder.yudao.module.bpm.controller.definition.vo.model.*; | 8 | import cn.iocoder.yudao.module.bpm.controller.definition.vo.model.*; |
| 9 | +import cn.iocoder.yudao.module.bpm.dal.dataobject.definition.BpmFormDO; | ||
| 11 | import org.activiti.engine.impl.persistence.entity.SuspensionState; | 10 | import org.activiti.engine.impl.persistence.entity.SuspensionState; |
| 12 | import org.activiti.engine.repository.Deployment; | 11 | import org.activiti.engine.repository.Deployment; |
| 13 | import org.activiti.engine.repository.Model; | 12 | import org.activiti.engine.repository.Model; |
| @@ -31,19 +30,19 @@ public interface BpmModelConvert { | @@ -31,19 +30,19 @@ public interface BpmModelConvert { | ||
| 31 | 30 | ||
| 32 | BpmModelConvert INSTANCE = Mappers.getMapper(BpmModelConvert.class); | 31 | BpmModelConvert INSTANCE = Mappers.getMapper(BpmModelConvert.class); |
| 33 | 32 | ||
| 34 | - default List<BpmModelPageItemRespVO> convertList(List<Model> list, Map<Long, BpmFormDTO> formMap, | 33 | + default List<BpmModelPageItemRespVO> convertList(List<Model> list, Map<Long, BpmFormDO> formMap, |
| 35 | Map<String, Deployment> deploymentMap, | 34 | Map<String, Deployment> deploymentMap, |
| 36 | Map<String, ProcessDefinition> processDefinitionMap) { | 35 | Map<String, ProcessDefinition> processDefinitionMap) { |
| 37 | return CollectionUtils.convertList(list, model -> { | 36 | return CollectionUtils.convertList(list, model -> { |
| 38 | BpmModelMetaInfoRespDTO metaInfo = JsonUtils.parseObject(model.getMetaInfo(), BpmModelMetaInfoRespDTO.class); | 37 | BpmModelMetaInfoRespDTO metaInfo = JsonUtils.parseObject(model.getMetaInfo(), BpmModelMetaInfoRespDTO.class); |
| 39 | - BpmFormDTO form = metaInfo != null ? formMap.get(metaInfo.getFormId()) : null; | 38 | + BpmFormDO form = metaInfo != null ? formMap.get(metaInfo.getFormId()) : null; |
| 40 | Deployment deployment = model.getDeploymentId() != null ? deploymentMap.get(model.getDeploymentId()) : null; | 39 | Deployment deployment = model.getDeploymentId() != null ? deploymentMap.get(model.getDeploymentId()) : null; |
| 41 | ProcessDefinition processDefinition = model.getDeploymentId() != null ? processDefinitionMap.get(model.getDeploymentId()) : null; | 40 | ProcessDefinition processDefinition = model.getDeploymentId() != null ? processDefinitionMap.get(model.getDeploymentId()) : null; |
| 42 | return convert(model, form, deployment, processDefinition); | 41 | return convert(model, form, deployment, processDefinition); |
| 43 | }); | 42 | }); |
| 44 | } | 43 | } |
| 45 | 44 | ||
| 46 | - default BpmModelPageItemRespVO convert(Model model, BpmFormDTO form, Deployment deployment, ProcessDefinition processDefinition) { | 45 | + default BpmModelPageItemRespVO convert(Model model, BpmFormDO form, Deployment deployment, ProcessDefinition processDefinition) { |
| 47 | BpmModelPageItemRespVO modelRespVO = new BpmModelPageItemRespVO(); | 46 | BpmModelPageItemRespVO modelRespVO = new BpmModelPageItemRespVO(); |
| 48 | modelRespVO.setId(model.getId()); | 47 | modelRespVO.setId(model.getId()); |
| 49 | modelRespVO.setCreateTime(model.getCreateTime()); | 48 | modelRespVO.setCreateTime(model.getCreateTime()); |
| @@ -84,7 +83,7 @@ public interface BpmModelConvert { | @@ -84,7 +83,7 @@ public interface BpmModelConvert { | ||
| 84 | 83 | ||
| 85 | void copyTo(BpmModelMetaInfoRespDTO from, @MappingTarget BpmModelBaseVO to); | 84 | void copyTo(BpmModelMetaInfoRespDTO from, @MappingTarget BpmModelBaseVO to); |
| 86 | 85 | ||
| 87 | - default BpmProcessDefinitionCreateReqDTO convert2(Model model, BpmFormDTO form) { | 86 | + default BpmProcessDefinitionCreateReqDTO convert2(Model model, BpmFormDO form) { |
| 88 | BpmProcessDefinitionCreateReqDTO createReqDTO = new BpmProcessDefinitionCreateReqDTO(); | 87 | BpmProcessDefinitionCreateReqDTO createReqDTO = new BpmProcessDefinitionCreateReqDTO(); |
| 89 | createReqDTO.setModelId(model.getId()); | 88 | createReqDTO.setModelId(model.getId()); |
| 90 | createReqDTO.setName(model.getName()); | 89 | createReqDTO.setName(model.getName()); |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/convert/definition/BpmProcessDefinitionConvert.java
| @@ -2,9 +2,9 @@ package cn.iocoder.yudao.adminserver.modules.bpm.convert.definition; | @@ -2,9 +2,9 @@ package cn.iocoder.yudao.adminserver.modules.bpm.convert.definition; | ||
| 2 | 2 | ||
| 3 | import cn.iocoder.yudao.module.bpm.controller.definition.vo.process.BpmProcessDefinitionPageItemRespVO; | 3 | import cn.iocoder.yudao.module.bpm.controller.definition.vo.process.BpmProcessDefinitionPageItemRespVO; |
| 4 | import cn.iocoder.yudao.module.bpm.controller.definition.vo.process.BpmProcessDefinitionRespVO; | 4 | import cn.iocoder.yudao.module.bpm.controller.definition.vo.process.BpmProcessDefinitionRespVO; |
| 5 | +import cn.iocoder.yudao.module.bpm.dal.dataobject.definition.BpmFormDO; | ||
| 5 | import cn.iocoder.yudao.module.bpm.dal.dataobject.definition.BpmProcessDefinitionExtDO; | 6 | import cn.iocoder.yudao.module.bpm.dal.dataobject.definition.BpmProcessDefinitionExtDO; |
| 6 | import cn.iocoder.yudao.adminserver.modules.bpm.service.definition.dto.BpmProcessDefinitionCreateReqDTO; | 7 | import cn.iocoder.yudao.adminserver.modules.bpm.service.definition.dto.BpmProcessDefinitionCreateReqDTO; |
| 7 | -import cn.iocoder.yudao.module.bpm.api.form.dto.BpmFormDTO; | ||
| 8 | import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils; | 8 | import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils; |
| 9 | import org.activiti.engine.impl.persistence.entity.SuspensionState; | 9 | import org.activiti.engine.impl.persistence.entity.SuspensionState; |
| 10 | import org.activiti.engine.repository.Deployment; | 10 | import org.activiti.engine.repository.Deployment; |
| @@ -29,17 +29,17 @@ public interface BpmProcessDefinitionConvert { | @@ -29,17 +29,17 @@ public interface BpmProcessDefinitionConvert { | ||
| 29 | BpmProcessDefinitionConvert INSTANCE = Mappers.getMapper(BpmProcessDefinitionConvert.class); | 29 | BpmProcessDefinitionConvert INSTANCE = Mappers.getMapper(BpmProcessDefinitionConvert.class); |
| 30 | 30 | ||
| 31 | default List<BpmProcessDefinitionPageItemRespVO> convertList(List<ProcessDefinition> list, Map<String, Deployment> deploymentMap, | 31 | default List<BpmProcessDefinitionPageItemRespVO> convertList(List<ProcessDefinition> list, Map<String, Deployment> deploymentMap, |
| 32 | - Map<String, BpmProcessDefinitionExtDO> processDefinitionDOMap, Map<Long, BpmFormDTO> formMap) { | 32 | + Map<String, BpmProcessDefinitionExtDO> processDefinitionDOMap, Map<Long, BpmFormDO> formMap) { |
| 33 | return CollectionUtils.convertList(list, definition -> { | 33 | return CollectionUtils.convertList(list, definition -> { |
| 34 | Deployment deployment = definition.getDeploymentId() != null ? deploymentMap.get(definition.getDeploymentId()) : null; | 34 | Deployment deployment = definition.getDeploymentId() != null ? deploymentMap.get(definition.getDeploymentId()) : null; |
| 35 | BpmProcessDefinitionExtDO definitionDO = processDefinitionDOMap.get(definition.getId()); | 35 | BpmProcessDefinitionExtDO definitionDO = processDefinitionDOMap.get(definition.getId()); |
| 36 | - BpmFormDTO form = definitionDO != null ? formMap.get(definitionDO.getFormId()) : null; | 36 | + BpmFormDO form = definitionDO != null ? formMap.get(definitionDO.getFormId()) : null; |
| 37 | return convert(definition, deployment, definitionDO, form); | 37 | return convert(definition, deployment, definitionDO, form); |
| 38 | }); | 38 | }); |
| 39 | } | 39 | } |
| 40 | 40 | ||
| 41 | default BpmProcessDefinitionPageItemRespVO convert(ProcessDefinition bean, Deployment deployment, | 41 | default BpmProcessDefinitionPageItemRespVO convert(ProcessDefinition bean, Deployment deployment, |
| 42 | - BpmProcessDefinitionExtDO processDefinitionExtDO, BpmFormDTO form) { | 42 | + BpmProcessDefinitionExtDO processDefinitionExtDO, BpmFormDO form) { |
| 43 | BpmProcessDefinitionPageItemRespVO respVO = convert(bean); | 43 | BpmProcessDefinitionPageItemRespVO respVO = convert(bean); |
| 44 | respVO.setSuspensionState(bean.isSuspended() ? SuspensionState.SUSPENDED.getStateCode() : SuspensionState.ACTIVE.getStateCode()); | 44 | respVO.setSuspensionState(bean.isSuspended() ? SuspensionState.SUSPENDED.getStateCode() : SuspensionState.ACTIVE.getStateCode()); |
| 45 | if (deployment != null) { | 45 | if (deployment != null) { |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/convert/message/BpmMessageConvert.java
| @@ -3,7 +3,7 @@ package cn.iocoder.yudao.adminserver.modules.bpm.convert.message; | @@ -3,7 +3,7 @@ package cn.iocoder.yudao.adminserver.modules.bpm.convert.message; | ||
| 3 | import cn.iocoder.yudao.module.bpm.service.message.dto.BpmMessageSendWhenProcessInstanceApproveReqDTO; | 3 | import cn.iocoder.yudao.module.bpm.service.message.dto.BpmMessageSendWhenProcessInstanceApproveReqDTO; |
| 4 | import cn.iocoder.yudao.module.bpm.service.message.dto.BpmMessageSendWhenProcessInstanceRejectReqDTO; | 4 | import cn.iocoder.yudao.module.bpm.service.message.dto.BpmMessageSendWhenProcessInstanceRejectReqDTO; |
| 5 | import cn.iocoder.yudao.module.bpm.service.message.dto.BpmMessageSendWhenTaskCreatedReqDTO; | 5 | import cn.iocoder.yudao.module.bpm.service.message.dto.BpmMessageSendWhenTaskCreatedReqDTO; |
| 6 | -import cn.iocoder.yudao.module.system.dal.dataobject.user.SysUserDO; | 6 | +import cn.iocoder.yudao.module.system.api.user.dto.AdminUserRespDTO; |
| 7 | import org.activiti.api.task.model.Task; | 7 | import org.activiti.api.task.model.Task; |
| 8 | import org.activiti.engine.runtime.ProcessInstance; | 8 | import org.activiti.engine.runtime.ProcessInstance; |
| 9 | import org.mapstruct.Mapper; | 9 | import org.mapstruct.Mapper; |
| @@ -17,7 +17,7 @@ public interface BpmMessageConvert { | @@ -17,7 +17,7 @@ public interface BpmMessageConvert { | ||
| 17 | 17 | ||
| 18 | BpmMessageConvert INSTANCE = Mappers.getMapper(BpmMessageConvert.class); | 18 | BpmMessageConvert INSTANCE = Mappers.getMapper(BpmMessageConvert.class); |
| 19 | 19 | ||
| 20 | - default BpmMessageSendWhenTaskCreatedReqDTO convert(ProcessInstance processInstance, SysUserDO startUser, Task task) { | 20 | + default BpmMessageSendWhenTaskCreatedReqDTO convert(ProcessInstance processInstance, AdminUserRespDTO startUser, Task task) { |
| 21 | BpmMessageSendWhenTaskCreatedReqDTO reqDTO = new BpmMessageSendWhenTaskCreatedReqDTO(); | 21 | BpmMessageSendWhenTaskCreatedReqDTO reqDTO = new BpmMessageSendWhenTaskCreatedReqDTO(); |
| 22 | copyTo(processInstance, reqDTO); | 22 | copyTo(processInstance, reqDTO); |
| 23 | copyTo(startUser, reqDTO); | 23 | copyTo(startUser, reqDTO); |
| @@ -30,7 +30,7 @@ public interface BpmMessageConvert { | @@ -30,7 +30,7 @@ public interface BpmMessageConvert { | ||
| 30 | @Mapping(source = "id", target = "startUserId"), | 30 | @Mapping(source = "id", target = "startUserId"), |
| 31 | @Mapping(source = "nickname", target = "startUserNickname") | 31 | @Mapping(source = "nickname", target = "startUserNickname") |
| 32 | }) | 32 | }) |
| 33 | - void copyTo(SysUserDO from, @MappingTarget BpmMessageSendWhenTaskCreatedReqDTO to); | 33 | + void copyTo(AdminUserRespDTO from, @MappingTarget BpmMessageSendWhenTaskCreatedReqDTO to); |
| 34 | @Mappings({ | 34 | @Mappings({ |
| 35 | @Mapping(source = "id", target = "taskId"), | 35 | @Mapping(source = "id", target = "taskId"), |
| 36 | @Mapping(source = "name", target = "taskName"), | 36 | @Mapping(source = "name", target = "taskName"), |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/convert/oa/BpmOALeaveConvert.java
| 1 | package cn.iocoder.yudao.adminserver.modules.bpm.convert.oa; | 1 | package cn.iocoder.yudao.adminserver.modules.bpm.convert.oa; |
| 2 | 2 | ||
| 3 | -import cn.iocoder.yudao.adminserver.modules.bpm.controller.oa.vo.BpmOALeaveCreateReqVO; | ||
| 4 | -import cn.iocoder.yudao.adminserver.modules.bpm.controller.oa.vo.BpmOALeaveRespVO; | 3 | +import cn.iocoder.yudao.module.bpm.controller.oa.vo.BpmOALeaveCreateReqVO; |
| 4 | +import cn.iocoder.yudao.module.bpm.controller.oa.vo.BpmOALeaveRespVO; | ||
| 5 | import cn.iocoder.yudao.module.bpm.dal.dataobject.oa.BpmOALeaveDO; | 5 | import cn.iocoder.yudao.module.bpm.dal.dataobject.oa.BpmOALeaveDO; |
| 6 | import cn.iocoder.yudao.framework.common.pojo.PageResult; | 6 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 7 | import org.mapstruct.Mapper; | 7 | import org.mapstruct.Mapper; |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/convert/task/BpmActivityConvert.java
| 1 | package cn.iocoder.yudao.adminserver.modules.bpm.convert.task; | 1 | package cn.iocoder.yudao.adminserver.modules.bpm.convert.task; |
| 2 | 2 | ||
| 3 | -import cn.iocoder.yudao.adminserver.modules.bpm.controller.task.vo.activity.BpmActivityRespVO; | 3 | +import cn.iocoder.yudao.module.bpm.controller.task.vo.activity.BpmActivityRespVO; |
| 4 | import org.activiti.engine.history.HistoricActivityInstance; | 4 | import org.activiti.engine.history.HistoricActivityInstance; |
| 5 | import org.mapstruct.Mapper; | 5 | import org.mapstruct.Mapper; |
| 6 | import org.mapstruct.Mapping; | 6 | import org.mapstruct.Mapping; |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/convert/task/BpmProcessInstanceConvert.java
| 1 | package cn.iocoder.yudao.adminserver.modules.bpm.convert.task; | 1 | package cn.iocoder.yudao.adminserver.modules.bpm.convert.task; |
| 2 | 2 | ||
| 3 | -import cn.iocoder.yudao.adminserver.modules.bpm.controller.task.vo.instance.BpmProcessInstancePageItemRespVO; | ||
| 4 | -import cn.iocoder.yudao.adminserver.modules.bpm.controller.task.vo.instance.BpmProcessInstanceRespVO; | 3 | +import cn.iocoder.yudao.module.bpm.controller.task.vo.instance.BpmProcessInstancePageItemRespVO; |
| 4 | +import cn.iocoder.yudao.module.bpm.controller.task.vo.instance.BpmProcessInstanceRespVO; | ||
| 5 | import cn.iocoder.yudao.module.bpm.dal.dataobject.definition.BpmProcessDefinitionExtDO; | 5 | import cn.iocoder.yudao.module.bpm.dal.dataobject.definition.BpmProcessDefinitionExtDO; |
| 6 | import cn.iocoder.yudao.module.bpm.dal.dataobject.task.BpmProcessInstanceExtDO; | 6 | import cn.iocoder.yudao.module.bpm.dal.dataobject.task.BpmProcessInstanceExtDO; |
| 7 | import cn.iocoder.yudao.adminserver.modules.bpm.framework.activiti.core.event.BpmProcessInstanceResultEvent; | 7 | import cn.iocoder.yudao.adminserver.modules.bpm.framework.activiti.core.event.BpmProcessInstanceResultEvent; |
| 8 | -import cn.iocoder.yudao.module.system.dal.dataobject.dept.SysDeptDO; | ||
| 9 | -import cn.iocoder.yudao.module.system.dal.dataobject.user.SysUserDO; | 8 | +import cn.iocoder.yudao.module.system.api.dept.dto.DeptRespDTO; |
| 9 | +import cn.iocoder.yudao.module.system.api.user.dto.AdminUserRespDTO; | ||
| 10 | import cn.iocoder.yudao.framework.common.pojo.PageResult; | 10 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 11 | import org.activiti.engine.history.HistoricProcessInstance; | 11 | import org.activiti.engine.history.HistoricProcessInstance; |
| 12 | import org.activiti.engine.repository.ProcessDefinition; | 12 | import org.activiti.engine.repository.ProcessDefinition; |
| @@ -71,7 +71,7 @@ public interface BpmProcessInstanceConvert { | @@ -71,7 +71,7 @@ public interface BpmProcessInstanceConvert { | ||
| 71 | 71 | ||
| 72 | default BpmProcessInstanceRespVO convert2(HistoricProcessInstance processInstance, BpmProcessInstanceExtDO processInstanceExt, | 72 | default BpmProcessInstanceRespVO convert2(HistoricProcessInstance processInstance, BpmProcessInstanceExtDO processInstanceExt, |
| 73 | ProcessDefinition processDefinition, BpmProcessDefinitionExtDO processDefinitionExt, | 73 | ProcessDefinition processDefinition, BpmProcessDefinitionExtDO processDefinitionExt, |
| 74 | - String bpmnXml, SysUserDO startUser, SysDeptDO dept) { | 74 | + String bpmnXml, AdminUserRespDTO startUser, DeptRespDTO dept) { |
| 75 | BpmProcessInstanceRespVO respVO = convert2(processInstance); | 75 | BpmProcessInstanceRespVO respVO = convert2(processInstance); |
| 76 | copyTo(processInstanceExt, respVO); | 76 | copyTo(processInstanceExt, respVO); |
| 77 | // definition | 77 | // definition |
| @@ -94,7 +94,7 @@ public interface BpmProcessInstanceConvert { | @@ -94,7 +94,7 @@ public interface BpmProcessInstanceConvert { | ||
| 94 | BpmProcessInstanceRespVO.ProcessDefinition convert2(ProcessDefinition bean); | 94 | BpmProcessInstanceRespVO.ProcessDefinition convert2(ProcessDefinition bean); |
| 95 | @Mapping(source = "from.id", target = "to.id", ignore = true) | 95 | @Mapping(source = "from.id", target = "to.id", ignore = true) |
| 96 | void copyTo(BpmProcessDefinitionExtDO from, @MappingTarget BpmProcessInstanceRespVO.ProcessDefinition to); | 96 | void copyTo(BpmProcessDefinitionExtDO from, @MappingTarget BpmProcessInstanceRespVO.ProcessDefinition to); |
| 97 | - BpmProcessInstanceRespVO.User convert2(SysUserDO bean); | 97 | + BpmProcessInstanceRespVO.User convert2(AdminUserRespDTO bean); |
| 98 | 98 | ||
| 99 | default BpmProcessInstanceResultEvent convert(Object source, ProcessInstance instance, Integer result) { | 99 | default BpmProcessInstanceResultEvent convert(Object source, ProcessInstance instance, Integer result) { |
| 100 | BpmProcessInstanceResultEvent event = new BpmProcessInstanceResultEvent(source); | 100 | BpmProcessInstanceResultEvent event = new BpmProcessInstanceResultEvent(source); |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/convert/task/BpmTaskConvert.java
| 1 | package cn.iocoder.yudao.adminserver.modules.bpm.convert.task; | 1 | package cn.iocoder.yudao.adminserver.modules.bpm.convert.task; |
| 2 | 2 | ||
| 3 | -import cn.iocoder.yudao.adminserver.modules.bpm.controller.task.vo.task.BpmTaskDonePageItemRespVO; | ||
| 4 | -import cn.iocoder.yudao.adminserver.modules.bpm.controller.task.vo.task.BpmTaskRespVO; | ||
| 5 | -import cn.iocoder.yudao.adminserver.modules.bpm.controller.task.vo.task.BpmTaskTodoPageItemRespVO; | 3 | +import cn.iocoder.yudao.module.bpm.controller.task.vo.task.BpmTaskDonePageItemRespVO; |
| 4 | +import cn.iocoder.yudao.module.bpm.controller.task.vo.task.BpmTaskRespVO; | ||
| 5 | +import cn.iocoder.yudao.module.bpm.controller.task.vo.task.BpmTaskTodoPageItemRespVO; | ||
| 6 | import cn.iocoder.yudao.module.bpm.dal.dataobject.task.BpmTaskExtDO; | 6 | import cn.iocoder.yudao.module.bpm.dal.dataobject.task.BpmTaskExtDO; |
| 7 | -import cn.iocoder.yudao.module.system.dal.dataobject.dept.SysDeptDO; | ||
| 8 | -import cn.iocoder.yudao.module.system.dal.dataobject.user.SysUserDO; | 7 | +import cn.iocoder.yudao.module.system.api.dept.dto.DeptRespDTO; |
| 8 | +import cn.iocoder.yudao.module.system.api.user.dto.AdminUserRespDTO; | ||
| 9 | import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils; | 9 | import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils; |
| 10 | import cn.iocoder.yudao.framework.common.util.number.NumberUtils; | 10 | import cn.iocoder.yudao.framework.common.util.number.NumberUtils; |
| 11 | import org.activiti.engine.history.HistoricProcessInstance; | 11 | import org.activiti.engine.history.HistoricProcessInstance; |
| @@ -30,12 +30,12 @@ public interface BpmTaskConvert { | @@ -30,12 +30,12 @@ public interface BpmTaskConvert { | ||
| 30 | BpmTaskConvert INSTANCE = Mappers.getMapper(BpmTaskConvert.class); | 30 | BpmTaskConvert INSTANCE = Mappers.getMapper(BpmTaskConvert.class); |
| 31 | 31 | ||
| 32 | default List<BpmTaskTodoPageItemRespVO> convertList1(List<Task> tasks, Map<String, ProcessInstance> processInstanceMap, | 32 | default List<BpmTaskTodoPageItemRespVO> convertList1(List<Task> tasks, Map<String, ProcessInstance> processInstanceMap, |
| 33 | - Map<Long, SysUserDO> userMap) { | 33 | + Map<Long, AdminUserRespDTO> userMap) { |
| 34 | return CollectionUtils.convertList(tasks, task -> { | 34 | return CollectionUtils.convertList(tasks, task -> { |
| 35 | BpmTaskTodoPageItemRespVO respVO = convert1(task); | 35 | BpmTaskTodoPageItemRespVO respVO = convert1(task); |
| 36 | ProcessInstance processInstance = processInstanceMap.get(task.getProcessInstanceId()); | 36 | ProcessInstance processInstance = processInstanceMap.get(task.getProcessInstanceId()); |
| 37 | if (processInstance != null) { | 37 | if (processInstance != null) { |
| 38 | - SysUserDO startUser = userMap.get(NumberUtils.parseLong(processInstance.getStartUserId())); | 38 | + AdminUserRespDTO startUser = userMap.get(NumberUtils.parseLong(processInstance.getStartUserId())); |
| 39 | respVO.setProcessInstance(convert(processInstance, startUser)); | 39 | respVO.setProcessInstance(convert(processInstance, startUser)); |
| 40 | } | 40 | } |
| 41 | return respVO; | 41 | return respVO; |
| @@ -53,14 +53,14 @@ public interface BpmTaskConvert { | @@ -53,14 +53,14 @@ public interface BpmTaskConvert { | ||
| 53 | 53 | ||
| 54 | default List<BpmTaskDonePageItemRespVO> convertList2(List<HistoricTaskInstance> tasks, Map<String, BpmTaskExtDO> bpmTaskExtDOMap, | 54 | default List<BpmTaskDonePageItemRespVO> convertList2(List<HistoricTaskInstance> tasks, Map<String, BpmTaskExtDO> bpmTaskExtDOMap, |
| 55 | Map<String, HistoricProcessInstance> historicProcessInstanceMap, | 55 | Map<String, HistoricProcessInstance> historicProcessInstanceMap, |
| 56 | - Map<Long, SysUserDO> userMap) { | 56 | + Map<Long, AdminUserRespDTO> userMap) { |
| 57 | return CollectionUtils.convertList(tasks, task -> { | 57 | return CollectionUtils.convertList(tasks, task -> { |
| 58 | BpmTaskDonePageItemRespVO respVO = convert2(task); | 58 | BpmTaskDonePageItemRespVO respVO = convert2(task); |
| 59 | BpmTaskExtDO taskExtDO = bpmTaskExtDOMap.get(task.getId()); | 59 | BpmTaskExtDO taskExtDO = bpmTaskExtDOMap.get(task.getId()); |
| 60 | copyTo(taskExtDO, respVO); | 60 | copyTo(taskExtDO, respVO); |
| 61 | HistoricProcessInstance processInstance = historicProcessInstanceMap.get(task.getProcessInstanceId()); | 61 | HistoricProcessInstance processInstance = historicProcessInstanceMap.get(task.getProcessInstanceId()); |
| 62 | if (processInstance != null) { | 62 | if (processInstance != null) { |
| 63 | - SysUserDO startUser = userMap.get(NumberUtils.parseLong(processInstance.getStartUserId())); | 63 | + AdminUserRespDTO startUser = userMap.get(NumberUtils.parseLong(processInstance.getStartUserId())); |
| 64 | respVO.setProcessInstance(convert(processInstance, startUser)); | 64 | respVO.setProcessInstance(convert(processInstance, startUser)); |
| 65 | } | 65 | } |
| 66 | return respVO; | 66 | return respVO; |
| @@ -77,20 +77,20 @@ public interface BpmTaskConvert { | @@ -77,20 +77,20 @@ public interface BpmTaskConvert { | ||
| 77 | BpmTaskExtDO convert(org.activiti.api.task.model.Task bean); | 77 | BpmTaskExtDO convert(org.activiti.api.task.model.Task bean); |
| 78 | 78 | ||
| 79 | default List<BpmTaskRespVO> convertList3(List<HistoricTaskInstance> tasks, Map<String, BpmTaskExtDO> bpmTaskExtDOMap, | 79 | default List<BpmTaskRespVO> convertList3(List<HistoricTaskInstance> tasks, Map<String, BpmTaskExtDO> bpmTaskExtDOMap, |
| 80 | - HistoricProcessInstance processInstance, Map<Long, SysUserDO> userMap, | ||
| 81 | - Map<Long, SysDeptDO> deptMap) { | 80 | + HistoricProcessInstance processInstance, Map<Long, AdminUserRespDTO> userMap, |
| 81 | + Map<Long, DeptRespDTO> deptMap) { | ||
| 82 | return CollectionUtils.convertList(tasks, task -> { | 82 | return CollectionUtils.convertList(tasks, task -> { |
| 83 | BpmTaskRespVO respVO = convert3(task); | 83 | BpmTaskRespVO respVO = convert3(task); |
| 84 | BpmTaskExtDO taskExtDO = bpmTaskExtDOMap.get(task.getId()); | 84 | BpmTaskExtDO taskExtDO = bpmTaskExtDOMap.get(task.getId()); |
| 85 | copyTo(taskExtDO, respVO); | 85 | copyTo(taskExtDO, respVO); |
| 86 | if (processInstance != null) { | 86 | if (processInstance != null) { |
| 87 | - SysUserDO startUser = userMap.get(NumberUtils.parseLong(processInstance.getStartUserId())); | 87 | + AdminUserRespDTO startUser = userMap.get(NumberUtils.parseLong(processInstance.getStartUserId())); |
| 88 | respVO.setProcessInstance(convert(processInstance, startUser)); | 88 | respVO.setProcessInstance(convert(processInstance, startUser)); |
| 89 | } | 89 | } |
| 90 | - SysUserDO assignUser = userMap.get(NumberUtils.parseLong(task.getAssignee())); | 90 | + AdminUserRespDTO assignUser = userMap.get(NumberUtils.parseLong(task.getAssignee())); |
| 91 | if (assignUser != null) { | 91 | if (assignUser != null) { |
| 92 | respVO.setAssigneeUser(convert3(assignUser)); | 92 | respVO.setAssigneeUser(convert3(assignUser)); |
| 93 | - SysDeptDO dept = deptMap.get(assignUser.getDeptId()); | 93 | + DeptRespDTO dept = deptMap.get(assignUser.getDeptId()); |
| 94 | if (dept != null) { | 94 | if (dept != null) { |
| 95 | respVO.getAssigneeUser().setDeptName(dept.getName()); | 95 | respVO.getAssigneeUser().setDeptName(dept.getName()); |
| 96 | } | 96 | } |
| @@ -101,7 +101,7 @@ public interface BpmTaskConvert { | @@ -101,7 +101,7 @@ public interface BpmTaskConvert { | ||
| 101 | 101 | ||
| 102 | @Mapping(source = "taskDefinitionKey", target = "definitionKey") | 102 | @Mapping(source = "taskDefinitionKey", target = "definitionKey") |
| 103 | BpmTaskRespVO convert3(HistoricTaskInstance bean); | 103 | BpmTaskRespVO convert3(HistoricTaskInstance bean); |
| 104 | - BpmTaskRespVO.User convert3(SysUserDO bean); | 104 | + BpmTaskRespVO.User convert3(AdminUserRespDTO bean); |
| 105 | 105 | ||
| 106 | void copyTo(BpmTaskExtDO from, @MappingTarget BpmTaskDonePageItemRespVO to); | 106 | void copyTo(BpmTaskExtDO from, @MappingTarget BpmTaskDonePageItemRespVO to); |
| 107 | 107 | ||
| @@ -112,7 +112,7 @@ public interface BpmTaskConvert { | @@ -112,7 +112,7 @@ public interface BpmTaskConvert { | ||
| 112 | @Mapping(source = "processInstance.processDefinitionId", target = "processDefinitionId"), | 112 | @Mapping(source = "processInstance.processDefinitionId", target = "processDefinitionId"), |
| 113 | @Mapping(source = "startUser.nickname", target = "startUserNickname") | 113 | @Mapping(source = "startUser.nickname", target = "startUserNickname") |
| 114 | }) | 114 | }) |
| 115 | - BpmTaskTodoPageItemRespVO.ProcessInstance convert(ProcessInstance processInstance, SysUserDO startUser); | 115 | + BpmTaskTodoPageItemRespVO.ProcessInstance convert(ProcessInstance processInstance, AdminUserRespDTO startUser); |
| 116 | 116 | ||
| 117 | @Mappings({ | 117 | @Mappings({ |
| 118 | @Mapping(source = "processInstance.id", target = "id"), | 118 | @Mapping(source = "processInstance.id", target = "id"), |
| @@ -121,6 +121,6 @@ public interface BpmTaskConvert { | @@ -121,6 +121,6 @@ public interface BpmTaskConvert { | ||
| 121 | @Mapping(source = "processInstance.processDefinitionId", target = "processDefinitionId"), | 121 | @Mapping(source = "processInstance.processDefinitionId", target = "processDefinitionId"), |
| 122 | @Mapping(source = "startUser.nickname", target = "startUserNickname") | 122 | @Mapping(source = "startUser.nickname", target = "startUserNickname") |
| 123 | }) | 123 | }) |
| 124 | - BpmTaskTodoPageItemRespVO.ProcessInstance convert(HistoricProcessInstance processInstance, SysUserDO startUser); | 124 | + BpmTaskTodoPageItemRespVO.ProcessInstance convert(HistoricProcessInstance processInstance, AdminUserRespDTO startUser); |
| 125 | 125 | ||
| 126 | } | 126 | } |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/framework/activiti/config/BpmActivitiConfiguration.java
| @@ -6,13 +6,10 @@ import cn.iocoder.yudao.adminserver.modules.bpm.framework.activiti.core.event.Bp | @@ -6,13 +6,10 @@ import cn.iocoder.yudao.adminserver.modules.bpm.framework.activiti.core.event.Bp | ||
| 6 | import cn.iocoder.yudao.adminserver.modules.bpm.framework.activiti.core.identity.EmptyUserGroupManager; | 6 | import cn.iocoder.yudao.adminserver.modules.bpm.framework.activiti.core.identity.EmptyUserGroupManager; |
| 7 | import cn.iocoder.yudao.adminserver.modules.bpm.framework.activiti.core.listener.BpmTackActivitiEventListener; | 7 | import cn.iocoder.yudao.adminserver.modules.bpm.framework.activiti.core.listener.BpmTackActivitiEventListener; |
| 8 | import cn.iocoder.yudao.adminserver.modules.bpm.service.definition.BpmTaskAssignRuleService; | 8 | import cn.iocoder.yudao.adminserver.modules.bpm.service.definition.BpmTaskAssignRuleService; |
| 9 | -import cn.iocoder.yudao.module.bpm.api.group.BpmUserGroupServiceApi; | ||
| 10 | -import cn.iocoder.yudao.module.system.service.dept.SysDeptCoreService; | ||
| 11 | -import cn.iocoder.yudao.module.system.service.permission.SysPermissionCoreService; | ||
| 12 | -import cn.iocoder.yudao.module.system.service.user.SysUserCoreService; | ||
| 13 | -import cn.iocoder.yudao.coreservice.modules.system.service.dept.SysDeptCoreService; | ||
| 14 | -import cn.iocoder.yudao.coreservice.modules.system.service.permission.SysPermissionCoreService; | ||
| 15 | -import cn.iocoder.yudao.coreservice.modules.system.service.user.SysUserCoreService; | 9 | +import cn.iocoder.yudao.module.bpm.service.definition.BpmUserGroupService; |
| 10 | +import cn.iocoder.yudao.module.system.api.dept.DeptApi; | ||
| 11 | +import cn.iocoder.yudao.module.system.api.permission.PermissionApi; | ||
| 12 | +import cn.iocoder.yudao.module.system.api.user.AdminUserApi; | ||
| 16 | import org.activiti.api.runtime.shared.identity.UserGroupManager; | 13 | import org.activiti.api.runtime.shared.identity.UserGroupManager; |
| 17 | import org.activiti.spring.boot.ProcessEngineConfigurationConfigurer; | 14 | import org.activiti.spring.boot.ProcessEngineConfigurationConfigurer; |
| 18 | import org.springframework.context.ApplicationEventPublisher; | 15 | import org.springframework.context.ApplicationEventPublisher; |
| @@ -67,17 +64,17 @@ public class BpmActivitiConfiguration { | @@ -67,17 +64,17 @@ public class BpmActivitiConfiguration { | ||
| 67 | 64 | ||
| 68 | @Bean | 65 | @Bean |
| 69 | public BpmActivityBehaviorFactory bpmActivityBehaviorFactory(BpmTaskAssignRuleService taskRuleService, | 66 | public BpmActivityBehaviorFactory bpmActivityBehaviorFactory(BpmTaskAssignRuleService taskRuleService, |
| 70 | - SysPermissionCoreService permissionCoreService, | ||
| 71 | - SysDeptCoreService deptCoreService, | ||
| 72 | - BpmUserGroupServiceApi userGroupServiceApi, | ||
| 73 | - SysUserCoreService userCoreService, | 67 | + BpmUserGroupService userGroupService, |
| 68 | + PermissionApi permissionApi, | ||
| 69 | + DeptApi deptApi, | ||
| 70 | + AdminUserApi adminUserApi, | ||
| 74 | List<BpmTaskAssignScript> scripts) { | 71 | List<BpmTaskAssignScript> scripts) { |
| 75 | BpmActivityBehaviorFactory bpmActivityBehaviorFactory = new BpmActivityBehaviorFactory(); | 72 | BpmActivityBehaviorFactory bpmActivityBehaviorFactory = new BpmActivityBehaviorFactory(); |
| 76 | bpmActivityBehaviorFactory.setBpmTaskRuleService(taskRuleService); | 73 | bpmActivityBehaviorFactory.setBpmTaskRuleService(taskRuleService); |
| 77 | - bpmActivityBehaviorFactory.setPermissionCoreService(permissionCoreService); | ||
| 78 | - bpmActivityBehaviorFactory.setDeptCoreService(deptCoreService); | ||
| 79 | - bpmActivityBehaviorFactory.setUserGroupServiceApi(userGroupServiceApi); | ||
| 80 | - bpmActivityBehaviorFactory.setUserCoreService(userCoreService); | 74 | + bpmActivityBehaviorFactory.setUserGroupService(userGroupService); |
| 75 | + bpmActivityBehaviorFactory.setAdminUserApi(adminUserApi); | ||
| 76 | + bpmActivityBehaviorFactory.setPermissionApi(permissionApi); | ||
| 77 | + bpmActivityBehaviorFactory.setDeptApi(deptApi); | ||
| 81 | bpmActivityBehaviorFactory.setScripts(scripts); | 78 | bpmActivityBehaviorFactory.setScripts(scripts); |
| 82 | return bpmActivityBehaviorFactory; | 79 | return bpmActivityBehaviorFactory; |
| 83 | } | 80 | } |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/framework/activiti/core/behavior/BpmActivityBehaviorFactory.java
| @@ -2,10 +2,10 @@ package cn.iocoder.yudao.adminserver.modules.bpm.framework.activiti.core.behavio | @@ -2,10 +2,10 @@ package cn.iocoder.yudao.adminserver.modules.bpm.framework.activiti.core.behavio | ||
| 2 | 2 | ||
| 3 | import cn.iocoder.yudao.adminserver.modules.bpm.framework.activiti.core.behavior.script.BpmTaskAssignScript; | 3 | import cn.iocoder.yudao.adminserver.modules.bpm.framework.activiti.core.behavior.script.BpmTaskAssignScript; |
| 4 | import cn.iocoder.yudao.adminserver.modules.bpm.service.definition.BpmTaskAssignRuleService; | 4 | import cn.iocoder.yudao.adminserver.modules.bpm.service.definition.BpmTaskAssignRuleService; |
| 5 | -import cn.iocoder.yudao.module.bpm.api.group.BpmUserGroupServiceApi; | ||
| 6 | -import cn.iocoder.yudao.module.system.service.dept.SysDeptCoreService; | ||
| 7 | -import cn.iocoder.yudao.module.system.service.permission.SysPermissionCoreService; | ||
| 8 | -import cn.iocoder.yudao.module.system.service.user.SysUserCoreService; | 5 | +import cn.iocoder.yudao.module.bpm.service.definition.BpmUserGroupService; |
| 6 | +import cn.iocoder.yudao.module.system.api.dept.DeptApi; | ||
| 7 | +import cn.iocoder.yudao.module.system.api.permission.PermissionApi; | ||
| 8 | +import cn.iocoder.yudao.module.system.api.user.AdminUserApi; | ||
| 9 | import lombok.Data; | 9 | import lombok.Data; |
| 10 | import lombok.EqualsAndHashCode; | 10 | import lombok.EqualsAndHashCode; |
| 11 | import lombok.Setter; | 11 | import lombok.Setter; |
| @@ -30,13 +30,15 @@ public class BpmActivityBehaviorFactory extends DefaultActivityBehaviorFactory { | @@ -30,13 +30,15 @@ public class BpmActivityBehaviorFactory extends DefaultActivityBehaviorFactory { | ||
| 30 | @Setter | 30 | @Setter |
| 31 | private BpmTaskAssignRuleService bpmTaskRuleService; | 31 | private BpmTaskAssignRuleService bpmTaskRuleService; |
| 32 | @Setter | 32 | @Setter |
| 33 | - private SysPermissionCoreService permissionCoreService; | 33 | + private BpmUserGroupService userGroupService; |
| 34 | + | ||
| 34 | @Setter | 35 | @Setter |
| 35 | - private SysDeptCoreService deptCoreService; | 36 | + private PermissionApi permissionApi; |
| 36 | @Setter | 37 | @Setter |
| 37 | - private BpmUserGroupServiceApi userGroupServiceApi; | 38 | + private DeptApi deptApi; |
| 38 | @Setter | 39 | @Setter |
| 39 | - private SysUserCoreService userCoreService; | 40 | + private AdminUserApi adminUserApi; |
| 41 | + | ||
| 40 | @Setter | 42 | @Setter |
| 41 | private List<BpmTaskAssignScript> scripts; | 43 | private List<BpmTaskAssignScript> scripts; |
| 42 | 44 | ||
| @@ -44,10 +46,10 @@ public class BpmActivityBehaviorFactory extends DefaultActivityBehaviorFactory { | @@ -44,10 +46,10 @@ public class BpmActivityBehaviorFactory extends DefaultActivityBehaviorFactory { | ||
| 44 | public UserTaskActivityBehavior createUserTaskActivityBehavior(UserTask userTask) { | 46 | public UserTaskActivityBehavior createUserTaskActivityBehavior(UserTask userTask) { |
| 45 | BpmUserTaskActivitiBehavior userTaskActivityBehavior = new BpmUserTaskActivitiBehavior(userTask); | 47 | BpmUserTaskActivitiBehavior userTaskActivityBehavior = new BpmUserTaskActivitiBehavior(userTask); |
| 46 | userTaskActivityBehavior.setBpmTaskRuleService(bpmTaskRuleService); | 48 | userTaskActivityBehavior.setBpmTaskRuleService(bpmTaskRuleService); |
| 47 | - userTaskActivityBehavior.setPermissionCoreService(permissionCoreService); | ||
| 48 | - userTaskActivityBehavior.setDeptCoreService(deptCoreService); | ||
| 49 | - userTaskActivityBehavior.setUserGroupServiceApi(userGroupServiceApi); | ||
| 50 | - userTaskActivityBehavior.setSysUserCoreService(userCoreService); | 49 | + userTaskActivityBehavior.setPermissionApi(permissionApi); |
| 50 | + userTaskActivityBehavior.setDeptApi(deptApi); | ||
| 51 | + userTaskActivityBehavior.setUserGroupService(userGroupService); | ||
| 52 | + userTaskActivityBehavior.setAdminUserApi(adminUserApi); | ||
| 51 | userTaskActivityBehavior.setScripts(scripts); | 53 | userTaskActivityBehavior.setScripts(scripts); |
| 52 | return userTaskActivityBehavior; | 54 | return userTaskActivityBehavior; |
| 53 | } | 55 | } |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/framework/activiti/core/behavior/BpmUserTaskActivitiBehavior.java
| @@ -3,18 +3,18 @@ package cn.iocoder.yudao.adminserver.modules.bpm.framework.activiti.core.behavio | @@ -3,18 +3,18 @@ package cn.iocoder.yudao.adminserver.modules.bpm.framework.activiti.core.behavio | ||
| 3 | import cn.hutool.core.collection.CollUtil; | 3 | import cn.hutool.core.collection.CollUtil; |
| 4 | import cn.hutool.core.util.RandomUtil; | 4 | import cn.hutool.core.util.RandomUtil; |
| 5 | import cn.hutool.core.util.StrUtil; | 5 | import cn.hutool.core.util.StrUtil; |
| 6 | -import cn.iocoder.yudao.module.bpm.dal.dataobject.definition.BpmTaskAssignRuleDO; | ||
| 7 | -import cn.iocoder.yudao.module.bpm.enums.definition.BpmTaskAssignRuleTypeEnum; | ||
| 8 | import cn.iocoder.yudao.adminserver.modules.bpm.framework.activiti.core.behavior.script.BpmTaskAssignScript; | 6 | import cn.iocoder.yudao.adminserver.modules.bpm.framework.activiti.core.behavior.script.BpmTaskAssignScript; |
| 9 | import cn.iocoder.yudao.adminserver.modules.bpm.service.definition.BpmTaskAssignRuleService; | 7 | import cn.iocoder.yudao.adminserver.modules.bpm.service.definition.BpmTaskAssignRuleService; |
| 10 | -import cn.iocoder.yudao.module.bpm.api.group.BpmUserGroupServiceApi; | ||
| 11 | -import cn.iocoder.yudao.module.bpm.api.group.dto.BpmUserGroupDTO; | ||
| 12 | -import cn.iocoder.yudao.module.system.dal.dataobject.dept.SysDeptDO; | ||
| 13 | -import cn.iocoder.yudao.module.system.dal.dataobject.user.SysUserDO; | ||
| 14 | -import cn.iocoder.yudao.module.system.service.dept.SysDeptCoreService; | ||
| 15 | -import cn.iocoder.yudao.module.system.service.permission.SysPermissionCoreService; | ||
| 16 | -import cn.iocoder.yudao.module.system.service.user.SysUserCoreService; | ||
| 17 | import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum; | 8 | import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum; |
| 9 | +import cn.iocoder.yudao.module.bpm.dal.dataobject.definition.BpmTaskAssignRuleDO; | ||
| 10 | +import cn.iocoder.yudao.module.bpm.dal.dataobject.definition.BpmUserGroupDO; | ||
| 11 | +import cn.iocoder.yudao.module.bpm.enums.definition.BpmTaskAssignRuleTypeEnum; | ||
| 12 | +import cn.iocoder.yudao.module.bpm.service.definition.BpmUserGroupService; | ||
| 13 | +import cn.iocoder.yudao.module.system.api.dept.DeptApi; | ||
| 14 | +import cn.iocoder.yudao.module.system.api.dept.dto.DeptRespDTO; | ||
| 15 | +import cn.iocoder.yudao.module.system.api.permission.PermissionApi; | ||
| 16 | +import cn.iocoder.yudao.module.system.api.user.AdminUserApi; | ||
| 17 | +import cn.iocoder.yudao.module.system.api.user.dto.AdminUserRespDTO; | ||
| 18 | import com.google.common.annotations.VisibleForTesting; | 18 | import com.google.common.annotations.VisibleForTesting; |
| 19 | import lombok.Setter; | 19 | import lombok.Setter; |
| 20 | import lombok.extern.slf4j.Slf4j; | 20 | import lombok.extern.slf4j.Slf4j; |
| @@ -28,12 +28,12 @@ import org.activiti.engine.impl.persistence.entity.TaskEntityManager; | @@ -28,12 +28,12 @@ import org.activiti.engine.impl.persistence.entity.TaskEntityManager; | ||
| 28 | 28 | ||
| 29 | import java.util.*; | 29 | import java.util.*; |
| 30 | 30 | ||
| 31 | -import static cn.iocoder.yudao.module.bpm.enums.ErrorCodeConstants.TASK_ASSIGN_SCRIPT_NOT_EXISTS; | ||
| 32 | -import static cn.iocoder.yudao.module.bpm.enums.ErrorCodeConstants.TASK_CREATE_FAIL_NO_CANDIDATE_USER; | ||
| 33 | import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; | 31 | import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; |
| 34 | import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertMap; | 32 | import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertMap; |
| 35 | import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertSet; | 33 | import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertSet; |
| 36 | import static cn.iocoder.yudao.framework.common.util.json.JsonUtils.toJsonString; | 34 | import static cn.iocoder.yudao.framework.common.util.json.JsonUtils.toJsonString; |
| 35 | +import static cn.iocoder.yudao.module.bpm.enums.ErrorCodeConstants.TASK_ASSIGN_SCRIPT_NOT_EXISTS; | ||
| 36 | +import static cn.iocoder.yudao.module.bpm.enums.ErrorCodeConstants.TASK_CREATE_FAIL_NO_CANDIDATE_USER; | ||
| 37 | 37 | ||
| 38 | /** | 38 | /** |
| 39 | * 自定义的流程任务的 assignee 负责人的分配 | 39 | * 自定义的流程任务的 assignee 负责人的分配 |
| @@ -48,14 +48,17 @@ public class BpmUserTaskActivitiBehavior extends UserTaskActivityBehavior { | @@ -48,14 +48,17 @@ public class BpmUserTaskActivitiBehavior extends UserTaskActivityBehavior { | ||
| 48 | 48 | ||
| 49 | @Setter | 49 | @Setter |
| 50 | private BpmTaskAssignRuleService bpmTaskRuleService; | 50 | private BpmTaskAssignRuleService bpmTaskRuleService; |
| 51 | + | ||
| 51 | @Setter | 52 | @Setter |
| 52 | - private SysPermissionCoreService permissionCoreService; | 53 | + private BpmUserGroupService userGroupService; |
| 54 | + | ||
| 53 | @Setter | 55 | @Setter |
| 54 | - private SysDeptCoreService deptCoreService; | 56 | + private DeptApi deptApi; |
| 55 | @Setter | 57 | @Setter |
| 56 | - private BpmUserGroupServiceApi userGroupServiceApi; | 58 | + private AdminUserApi adminUserApi; |
| 57 | @Setter | 59 | @Setter |
| 58 | - private SysUserCoreService sysUserCoreService; | 60 | + private PermissionApi permissionApi; |
| 61 | + | ||
| 59 | /** | 62 | /** |
| 60 | * 任务分配脚本 | 63 | * 任务分配脚本 |
| 61 | */ | 64 | */ |
| @@ -133,22 +136,22 @@ public class BpmUserTaskActivitiBehavior extends UserTaskActivityBehavior { | @@ -133,22 +136,22 @@ public class BpmUserTaskActivitiBehavior extends UserTaskActivityBehavior { | ||
| 133 | } | 136 | } |
| 134 | 137 | ||
| 135 | private Set<Long> calculateTaskCandidateUsersByRole(TaskEntity task, BpmTaskAssignRuleDO rule) { | 138 | private Set<Long> calculateTaskCandidateUsersByRole(TaskEntity task, BpmTaskAssignRuleDO rule) { |
| 136 | - return permissionCoreService.getUserRoleIdListByRoleIds(rule.getOptions()); | 139 | + return permissionApi.getUserRoleIdListByRoleIds(rule.getOptions()); |
| 137 | } | 140 | } |
| 138 | 141 | ||
| 139 | private Set<Long> calculateTaskCandidateUsersByDeptMember(TaskEntity task, BpmTaskAssignRuleDO rule) { | 142 | private Set<Long> calculateTaskCandidateUsersByDeptMember(TaskEntity task, BpmTaskAssignRuleDO rule) { |
| 140 | - List<SysUserDO> users = sysUserCoreService.getUsersByDeptIds(rule.getOptions()); | ||
| 141 | - return convertSet(users, SysUserDO::getId); | 143 | + List<AdminUserRespDTO> users = adminUserApi.getUsersByDeptIds(rule.getOptions()); |
| 144 | + return convertSet(users, AdminUserRespDTO::getId); | ||
| 142 | } | 145 | } |
| 143 | 146 | ||
| 144 | private Set<Long> calculateTaskCandidateUsersByDeptLeader(TaskEntity task, BpmTaskAssignRuleDO rule) { | 147 | private Set<Long> calculateTaskCandidateUsersByDeptLeader(TaskEntity task, BpmTaskAssignRuleDO rule) { |
| 145 | - List<SysDeptDO> depts = deptCoreService.getDepts(rule.getOptions()); | ||
| 146 | - return convertSet(depts, SysDeptDO::getLeaderUserId); | 148 | + List<DeptRespDTO> depts = deptApi.getDepts(rule.getOptions()); |
| 149 | + return convertSet(depts, DeptRespDTO::getLeaderUserId); | ||
| 147 | } | 150 | } |
| 148 | 151 | ||
| 149 | private Set<Long> calculateTaskCandidateUsersByPost(TaskEntity task, BpmTaskAssignRuleDO rule) { | 152 | private Set<Long> calculateTaskCandidateUsersByPost(TaskEntity task, BpmTaskAssignRuleDO rule) { |
| 150 | - List<SysUserDO> users = sysUserCoreService.getUsersByPostIds(rule.getOptions()); | ||
| 151 | - return convertSet(users, SysUserDO::getId); | 153 | + List<AdminUserRespDTO> users = adminUserApi.getUsersByPostIds(rule.getOptions()); |
| 154 | + return convertSet(users, AdminUserRespDTO::getId); | ||
| 152 | } | 155 | } |
| 153 | 156 | ||
| 154 | private Set<Long> calculateTaskCandidateUsersByUser(TaskEntity task, BpmTaskAssignRuleDO rule) { | 157 | private Set<Long> calculateTaskCandidateUsersByUser(TaskEntity task, BpmTaskAssignRuleDO rule) { |
| @@ -156,9 +159,9 @@ public class BpmUserTaskActivitiBehavior extends UserTaskActivityBehavior { | @@ -156,9 +159,9 @@ public class BpmUserTaskActivitiBehavior extends UserTaskActivityBehavior { | ||
| 156 | } | 159 | } |
| 157 | 160 | ||
| 158 | private Set<Long> calculateTaskCandidateUsersByUserGroup(TaskEntity task, BpmTaskAssignRuleDO rule) { | 161 | private Set<Long> calculateTaskCandidateUsersByUserGroup(TaskEntity task, BpmTaskAssignRuleDO rule) { |
| 159 | - List<BpmUserGroupDTO> userGroups = userGroupServiceApi.getUserGroupList(rule.getOptions()); | 162 | + List<BpmUserGroupDO> userGroups = userGroupService.getUserGroupList(rule.getOptions()); |
| 160 | Set<Long> userIds = new HashSet<>(); | 163 | Set<Long> userIds = new HashSet<>(); |
| 161 | - userGroups.forEach(bpmUserGroupDO -> userIds.addAll(bpmUserGroupDO.getMemberUserIds())); | 164 | + userGroups.forEach(group -> userIds.addAll(group.getMemberUserIds())); |
| 162 | return userIds; | 165 | return userIds; |
| 163 | } | 166 | } |
| 164 | 167 | ||
| @@ -183,9 +186,9 @@ public class BpmUserTaskActivitiBehavior extends UserTaskActivityBehavior { | @@ -183,9 +186,9 @@ public class BpmUserTaskActivitiBehavior extends UserTaskActivityBehavior { | ||
| 183 | if (CollUtil.isEmpty(assigneeUserIds)) { | 186 | if (CollUtil.isEmpty(assigneeUserIds)) { |
| 184 | return; | 187 | return; |
| 185 | } | 188 | } |
| 186 | - Map<Long, SysUserDO> userMap = sysUserCoreService.getUserMap(assigneeUserIds); | 189 | + Map<Long, AdminUserRespDTO> userMap = adminUserApi.getUserMap(assigneeUserIds); |
| 187 | assigneeUserIds.removeIf(id -> { | 190 | assigneeUserIds.removeIf(id -> { |
| 188 | - SysUserDO user = userMap.get(id); | 191 | + AdminUserRespDTO user = userMap.get(id); |
| 189 | return user == null || !CommonStatusEnum.ENABLE.getStatus().equals(user.getStatus()); | 192 | return user == null || !CommonStatusEnum.ENABLE.getStatus().equals(user.getStatus()); |
| 190 | }); | 193 | }); |
| 191 | } | 194 | } |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/framework/activiti/core/behavior/script/impl/BpmTaskAssignLeaderAbstractScript.java
| @@ -2,16 +2,17 @@ package cn.iocoder.yudao.adminserver.modules.bpm.framework.activiti.core.behavio | @@ -2,16 +2,17 @@ package cn.iocoder.yudao.adminserver.modules.bpm.framework.activiti.core.behavio | ||
| 2 | 2 | ||
| 3 | import cn.iocoder.yudao.adminserver.modules.bpm.framework.activiti.core.behavior.script.BpmTaskAssignScript; | 3 | import cn.iocoder.yudao.adminserver.modules.bpm.framework.activiti.core.behavior.script.BpmTaskAssignScript; |
| 4 | 4 | ||
| 5 | -import cn.iocoder.yudao.module.system.dal.dataobject.dept.SysDeptDO; | ||
| 6 | -import cn.iocoder.yudao.module.system.dal.dataobject.user.SysUserDO; | ||
| 7 | -import cn.iocoder.yudao.module.system.service.dept.SysDeptCoreService; | ||
| 8 | -import cn.iocoder.yudao.module.system.service.user.SysUserCoreService; | 5 | +import cn.iocoder.yudao.module.system.api.dept.DeptApi; |
| 6 | +import cn.iocoder.yudao.module.system.api.dept.dto.DeptRespDTO; | ||
| 7 | +import cn.iocoder.yudao.module.system.api.user.AdminUserApi; | ||
| 8 | +import cn.iocoder.yudao.module.system.api.user.dto.AdminUserRespDTO; | ||
| 9 | import org.activiti.engine.impl.persistence.entity.TaskEntity; | 9 | import org.activiti.engine.impl.persistence.entity.TaskEntity; |
| 10 | import org.springframework.util.Assert; | 10 | import org.springframework.util.Assert; |
| 11 | 11 | ||
| 12 | import javax.annotation.Resource; | 12 | import javax.annotation.Resource; |
| 13 | import java.util.Set; | 13 | import java.util.Set; |
| 14 | 14 | ||
| 15 | +import static cn.iocoder.yudao.framework.common.util.collection.SetUtils.asSet; | ||
| 15 | import static java.util.Collections.emptySet; | 16 | import static java.util.Collections.emptySet; |
| 16 | 17 | ||
| 17 | /** | 18 | /** |
| @@ -23,16 +24,16 @@ import static java.util.Collections.emptySet; | @@ -23,16 +24,16 @@ import static java.util.Collections.emptySet; | ||
| 23 | public abstract class BpmTaskAssignLeaderAbstractScript implements BpmTaskAssignScript { | 24 | public abstract class BpmTaskAssignLeaderAbstractScript implements BpmTaskAssignScript { |
| 24 | 25 | ||
| 25 | @Resource | 26 | @Resource |
| 26 | - private SysUserCoreService userCoreService; | 27 | + private AdminUserApi adminUserApi; |
| 27 | @Resource | 28 | @Resource |
| 28 | - private SysDeptCoreService deptCoreService; | 29 | + private DeptApi deptApi; |
| 29 | 30 | ||
| 30 | protected Set<Long> calculateTaskCandidateUsers(TaskEntity task, int level) { | 31 | protected Set<Long> calculateTaskCandidateUsers(TaskEntity task, int level) { |
| 31 | Assert.isTrue(level > 0, "level 必须大于 0"); | 32 | Assert.isTrue(level > 0, "level 必须大于 0"); |
| 32 | // 获得发起人 | 33 | // 获得发起人 |
| 33 | Long startUserId = Long.parseLong(task.getProcessInstance().getStartUserId()); | 34 | Long startUserId = Long.parseLong(task.getProcessInstance().getStartUserId()); |
| 34 | // 获得对应 leve 的部门 | 35 | // 获得对应 leve 的部门 |
| 35 | - SysDeptDO dept = null; | 36 | + DeptRespDTO dept = null; |
| 36 | for (int i = 0; i < level; i++) { | 37 | for (int i = 0; i < level; i++) { |
| 37 | // 获得 level 对应的部门 | 38 | // 获得 level 对应的部门 |
| 38 | if (dept == null) { | 39 | if (dept == null) { |
| @@ -41,7 +42,7 @@ public abstract class BpmTaskAssignLeaderAbstractScript implements BpmTaskAssign | @@ -41,7 +42,7 @@ public abstract class BpmTaskAssignLeaderAbstractScript implements BpmTaskAssign | ||
| 41 | return emptySet(); | 42 | return emptySet(); |
| 42 | } | 43 | } |
| 43 | } else { | 44 | } else { |
| 44 | - SysDeptDO parentDept = deptCoreService.getDept(dept.getParentId()); | 45 | + DeptRespDTO parentDept = deptApi.getDept(dept.getParentId()); |
| 45 | if (parentDept == null) { // 找不到父级部门,所以只好结束寻找。原因是:例如说,级别比较高的人,所在部门层级比较少 | 46 | if (parentDept == null) { // 找不到父级部门,所以只好结束寻找。原因是:例如说,级别比较高的人,所在部门层级比较少 |
| 46 | break; | 47 | break; |
| 47 | } | 48 | } |
| @@ -51,12 +52,12 @@ public abstract class BpmTaskAssignLeaderAbstractScript implements BpmTaskAssign | @@ -51,12 +52,12 @@ public abstract class BpmTaskAssignLeaderAbstractScript implements BpmTaskAssign | ||
| 51 | return dept.getLeaderUserId() != null ? asSet(dept.getLeaderUserId()) : emptySet(); | 52 | return dept.getLeaderUserId() != null ? asSet(dept.getLeaderUserId()) : emptySet(); |
| 52 | } | 53 | } |
| 53 | 54 | ||
| 54 | - private SysDeptDO getStartUserDept(Long startUserId) { | ||
| 55 | - SysUserDO startUser = userCoreService.getUser(startUserId); | 55 | + private DeptRespDTO getStartUserDept(Long startUserId) { |
| 56 | + AdminUserRespDTO startUser = adminUserApi.getUser(startUserId); | ||
| 56 | if (startUser.getDeptId() == null) { // 找不到部门,所以无法使用该规则 | 57 | if (startUser.getDeptId() == null) { // 找不到部门,所以无法使用该规则 |
| 57 | return null; | 58 | return null; |
| 58 | } | 59 | } |
| 59 | - return deptCoreService.getDept(startUser.getDeptId()); | 60 | + return deptApi.getDept(startUser.getDeptId()); |
| 60 | } | 61 | } |
| 61 | 62 | ||
| 62 | } | 63 | } |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/service/definition/impl/BpmModelServiceImpl.java renamed to yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/service/definition/BpmModelServiceImpl.java
| 1 | -package cn.iocoder.yudao.adminserver.modules.bpm.service.definition.impl; | 1 | +package cn.iocoder.yudao.adminserver.modules.bpm.service.definition; |
| 2 | 2 | ||
| 3 | import cn.hutool.core.collection.CollUtil; | 3 | import cn.hutool.core.collection.CollUtil; |
| 4 | import cn.hutool.core.util.ArrayUtil; | 4 | import cn.hutool.core.util.ArrayUtil; |
| 5 | import cn.hutool.core.util.StrUtil; | 5 | import cn.hutool.core.util.StrUtil; |
| 6 | -import cn.iocoder.yudao.adminserver.modules.bpm.controller.definition.vo.model.*; | ||
| 7 | -import cn.iocoder.yudao.module.bpm.controller.definition.vo.model.*; | ||
| 8 | -import cn.iocoder.yudao.module.bpm.controller.definition.vo.rule.BpmTaskAssignRuleRespVO; | ||
| 9 | import cn.iocoder.yudao.adminserver.modules.bpm.convert.definition.BpmModelConvert; | 6 | import cn.iocoder.yudao.adminserver.modules.bpm.convert.definition.BpmModelConvert; |
| 10 | -import cn.iocoder.yudao.module.bpm.enums.definition.BpmModelFormTypeEnum; | ||
| 11 | -import cn.iocoder.yudao.adminserver.modules.bpm.service.definition.BpmModelService; | ||
| 12 | -import cn.iocoder.yudao.adminserver.modules.bpm.service.definition.BpmProcessDefinitionService; | ||
| 13 | -import cn.iocoder.yudao.adminserver.modules.bpm.service.definition.BpmTaskAssignRuleService; | ||
| 14 | import cn.iocoder.yudao.adminserver.modules.bpm.service.definition.dto.BpmModelMetaInfoRespDTO; | 7 | import cn.iocoder.yudao.adminserver.modules.bpm.service.definition.dto.BpmModelMetaInfoRespDTO; |
| 15 | import cn.iocoder.yudao.adminserver.modules.bpm.service.definition.dto.BpmProcessDefinitionCreateReqDTO; | 8 | import cn.iocoder.yudao.adminserver.modules.bpm.service.definition.dto.BpmProcessDefinitionCreateReqDTO; |
| 16 | -import cn.iocoder.yudao.module.bpm.api.form.BpmFormServiceApi; | ||
| 17 | -import cn.iocoder.yudao.module.bpm.api.form.dto.BpmFormDTO; | ||
| 18 | import cn.iocoder.yudao.framework.activiti.core.util.ActivitiUtils; | 9 | import cn.iocoder.yudao.framework.activiti.core.util.ActivitiUtils; |
| 19 | import cn.iocoder.yudao.framework.common.pojo.PageResult; | 10 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 20 | import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils; | 11 | import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils; |
| 21 | import cn.iocoder.yudao.framework.common.util.json.JsonUtils; | 12 | import cn.iocoder.yudao.framework.common.util.json.JsonUtils; |
| 22 | import cn.iocoder.yudao.framework.common.util.object.PageUtils; | 13 | import cn.iocoder.yudao.framework.common.util.object.PageUtils; |
| 23 | import cn.iocoder.yudao.framework.common.util.validation.ValidationUtils; | 14 | import cn.iocoder.yudao.framework.common.util.validation.ValidationUtils; |
| 15 | +import cn.iocoder.yudao.module.bpm.controller.definition.vo.model.*; | ||
| 16 | +import cn.iocoder.yudao.module.bpm.controller.definition.vo.rule.BpmTaskAssignRuleRespVO; | ||
| 17 | +import cn.iocoder.yudao.module.bpm.dal.dataobject.definition.BpmFormDO; | ||
| 18 | +import cn.iocoder.yudao.module.bpm.enums.definition.BpmModelFormTypeEnum; | ||
| 19 | +import cn.iocoder.yudao.module.bpm.service.definition.BpmFormService; | ||
| 24 | import lombok.extern.slf4j.Slf4j; | 20 | import lombok.extern.slf4j.Slf4j; |
| 25 | import org.activiti.bpmn.model.BpmnModel; | 21 | import org.activiti.bpmn.model.BpmnModel; |
| 26 | import org.activiti.engine.RepositoryService; | 22 | import org.activiti.engine.RepositoryService; |
| @@ -38,9 +34,9 @@ import org.springframework.validation.annotation.Validated; | @@ -38,9 +34,9 @@ import org.springframework.validation.annotation.Validated; | ||
| 38 | import javax.annotation.Resource; | 34 | import javax.annotation.Resource; |
| 39 | import java.util.*; | 35 | import java.util.*; |
| 40 | 36 | ||
| 41 | -import static cn.iocoder.yudao.module.bpm.enums.ErrorCodeConstants.*; | ||
| 42 | import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; | 37 | import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; |
| 43 | import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertMap; | 38 | import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertMap; |
| 39 | +import static cn.iocoder.yudao.module.bpm.enums.ErrorCodeConstants.*; | ||
| 44 | 40 | ||
| 45 | /** | 41 | /** |
| 46 | * 流程定义实现 | 42 | * 流程定义实现 |
| @@ -57,7 +53,7 @@ public class BpmModelServiceImpl implements BpmModelService { | @@ -57,7 +53,7 @@ public class BpmModelServiceImpl implements BpmModelService { | ||
| 57 | @Resource | 53 | @Resource |
| 58 | private RepositoryService repositoryService; | 54 | private RepositoryService repositoryService; |
| 59 | @Resource | 55 | @Resource |
| 60 | - private BpmFormServiceApi formServiceApi; | 56 | + private BpmFormService bpmFormService; |
| 61 | @Resource | 57 | @Resource |
| 62 | private BpmProcessDefinitionService processDefinitionService; | 58 | private BpmProcessDefinitionService processDefinitionService; |
| 63 | @Resource | 59 | @Resource |
| @@ -85,7 +81,7 @@ public class BpmModelServiceImpl implements BpmModelService { | @@ -85,7 +81,7 @@ public class BpmModelServiceImpl implements BpmModelService { | ||
| 85 | BpmModelMetaInfoRespDTO metaInfo = JsonUtils.parseObject(model.getMetaInfo(), BpmModelMetaInfoRespDTO.class); | 81 | BpmModelMetaInfoRespDTO metaInfo = JsonUtils.parseObject(model.getMetaInfo(), BpmModelMetaInfoRespDTO.class); |
| 86 | return metaInfo != null ? metaInfo.getFormId() : null; | 82 | return metaInfo != null ? metaInfo.getFormId() : null; |
| 87 | }); | 83 | }); |
| 88 | - Map<Long, BpmFormDTO> formMap = formServiceApi.getFormMap(formIds); | 84 | + Map<Long, BpmFormDO> formMap = bpmFormService.getFormMap(formIds); |
| 89 | 85 | ||
| 90 | // 获得 Deployment Map | 86 | // 获得 Deployment Map |
| 91 | Set<String> deploymentIds = new HashSet<>(); | 87 | Set<String> deploymentIds = new HashSet<>(); |
| @@ -172,7 +168,7 @@ public class BpmModelServiceImpl implements BpmModelService { | @@ -172,7 +168,7 @@ public class BpmModelServiceImpl implements BpmModelService { | ||
| 172 | } | 168 | } |
| 173 | // TODO 芋艿:校验流程图的有效性;例如说,是否有开始的元素,是否有结束的元素; | 169 | // TODO 芋艿:校验流程图的有效性;例如说,是否有开始的元素,是否有结束的元素; |
| 174 | // 校验表单已配 | 170 | // 校验表单已配 |
| 175 | - BpmFormDTO form = checkFormConfig(model); | 171 | + BpmFormDO form = checkFormConfig(model); |
| 176 | // 校验任务分配规则已配置 | 172 | // 校验任务分配规则已配置 |
| 177 | checkTaskAssignRuleAllConfig(id); | 173 | checkTaskAssignRuleAllConfig(id); |
| 178 | 174 | ||
| @@ -225,14 +221,14 @@ public class BpmModelServiceImpl implements BpmModelService { | @@ -225,14 +221,14 @@ public class BpmModelServiceImpl implements BpmModelService { | ||
| 225 | * @param model 流程模型 | 221 | * @param model 流程模型 |
| 226 | * @return 流程表单 | 222 | * @return 流程表单 |
| 227 | */ | 223 | */ |
| 228 | - private BpmFormDTO checkFormConfig(Model model) { | 224 | + private BpmFormDO checkFormConfig(Model model) { |
| 229 | BpmModelMetaInfoRespDTO metaInfo = JsonUtils.parseObject(model.getMetaInfo(), BpmModelMetaInfoRespDTO.class); | 225 | BpmModelMetaInfoRespDTO metaInfo = JsonUtils.parseObject(model.getMetaInfo(), BpmModelMetaInfoRespDTO.class); |
| 230 | if (metaInfo == null || metaInfo.getFormType() == null) { | 226 | if (metaInfo == null || metaInfo.getFormType() == null) { |
| 231 | throw exception(MODEL_DEPLOY_FAIL_FORM_NOT_CONFIG); | 227 | throw exception(MODEL_DEPLOY_FAIL_FORM_NOT_CONFIG); |
| 232 | } | 228 | } |
| 233 | // 校验表单存在 | 229 | // 校验表单存在 |
| 234 | if (Objects.equals(metaInfo.getFormType(), BpmModelFormTypeEnum.NORMAL.getType())) { | 230 | if (Objects.equals(metaInfo.getFormType(), BpmModelFormTypeEnum.NORMAL.getType())) { |
| 235 | - BpmFormDTO form = formServiceApi.getForm(metaInfo.getFormId()); | 231 | + BpmFormDO form = bpmFormService.getForm(metaInfo.getFormId()); |
| 236 | if (form == null) { | 232 | if (form == null) { |
| 237 | throw exception(FORM_NOT_EXISTS); | 233 | throw exception(FORM_NOT_EXISTS); |
| 238 | } | 234 | } |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/service/definition/impl/BpmProcessDefinitionServiceImpl.java renamed to yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/service/definition/BpmProcessDefinitionServiceImpl.java
| 1 | -package cn.iocoder.yudao.adminserver.modules.bpm.service.definition.impl; | 1 | +package cn.iocoder.yudao.adminserver.modules.bpm.service.definition; |
| 2 | 2 | ||
| 3 | import cn.hutool.core.collection.CollUtil; | 3 | import cn.hutool.core.collection.CollUtil; |
| 4 | import cn.hutool.core.util.ObjectUtil; | 4 | import cn.hutool.core.util.ObjectUtil; |
| 5 | import cn.hutool.core.util.StrUtil; | 5 | import cn.hutool.core.util.StrUtil; |
| 6 | -import cn.iocoder.yudao.module.bpm.controller.definition.vo.process.BpmProcessDefinitionListReqVO; | ||
| 7 | -import cn.iocoder.yudao.module.bpm.controller.definition.vo.process.BpmProcessDefinitionPageItemRespVO; | ||
| 8 | -import cn.iocoder.yudao.module.bpm.controller.definition.vo.process.BpmProcessDefinitionPageReqVO; | ||
| 9 | -import cn.iocoder.yudao.module.bpm.controller.definition.vo.process.BpmProcessDefinitionRespVO; | ||
| 10 | import cn.iocoder.yudao.adminserver.modules.bpm.convert.definition.BpmProcessDefinitionConvert; | 6 | import cn.iocoder.yudao.adminserver.modules.bpm.convert.definition.BpmProcessDefinitionConvert; |
| 11 | -import cn.iocoder.yudao.module.bpm.dal.dataobject.definition.BpmProcessDefinitionExtDO; | ||
| 12 | -import cn.iocoder.yudao.adminserver.modules.bpm.dal.mysql.definition.BpmProcessDefinitionExtMapper; | ||
| 13 | -import cn.iocoder.yudao.adminserver.modules.bpm.service.definition.BpmProcessDefinitionService; | ||
| 14 | import cn.iocoder.yudao.adminserver.modules.bpm.service.definition.dto.BpmProcessDefinitionCreateReqDTO; | 7 | import cn.iocoder.yudao.adminserver.modules.bpm.service.definition.dto.BpmProcessDefinitionCreateReqDTO; |
| 15 | -import cn.iocoder.yudao.module.bpm.api.form.BpmFormServiceApi; | ||
| 16 | -import cn.iocoder.yudao.module.bpm.api.form.dto.BpmFormDTO; | ||
| 17 | import cn.iocoder.yudao.framework.activiti.core.util.ActivitiUtils; | 8 | import cn.iocoder.yudao.framework.activiti.core.util.ActivitiUtils; |
| 18 | import cn.iocoder.yudao.framework.common.pojo.PageResult; | 9 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 19 | import cn.iocoder.yudao.framework.common.util.object.PageUtils; | 10 | import cn.iocoder.yudao.framework.common.util.object.PageUtils; |
| 11 | +import cn.iocoder.yudao.module.bpm.controller.definition.vo.process.BpmProcessDefinitionListReqVO; | ||
| 12 | +import cn.iocoder.yudao.module.bpm.controller.definition.vo.process.BpmProcessDefinitionPageItemRespVO; | ||
| 13 | +import cn.iocoder.yudao.module.bpm.controller.definition.vo.process.BpmProcessDefinitionPageReqVO; | ||
| 14 | +import cn.iocoder.yudao.module.bpm.controller.definition.vo.process.BpmProcessDefinitionRespVO; | ||
| 15 | +import cn.iocoder.yudao.module.bpm.dal.dataobject.definition.BpmFormDO; | ||
| 16 | +import cn.iocoder.yudao.module.bpm.dal.dataobject.definition.BpmProcessDefinitionExtDO; | ||
| 17 | +import cn.iocoder.yudao.module.bpm.dal.mysql.definition.BpmProcessDefinitionExtMapper; | ||
| 18 | +import cn.iocoder.yudao.module.bpm.service.definition.BpmFormService; | ||
| 20 | import lombok.extern.slf4j.Slf4j; | 19 | import lombok.extern.slf4j.Slf4j; |
| 21 | import org.activiti.bpmn.model.BpmnModel; | 20 | import org.activiti.bpmn.model.BpmnModel; |
| 22 | import org.activiti.engine.RepositoryService; | 21 | import org.activiti.engine.RepositoryService; |
| @@ -31,10 +30,10 @@ import org.springframework.validation.annotation.Validated; | @@ -31,10 +30,10 @@ import org.springframework.validation.annotation.Validated; | ||
| 31 | import javax.annotation.Resource; | 30 | import javax.annotation.Resource; |
| 32 | import java.util.*; | 31 | import java.util.*; |
| 33 | 32 | ||
| 34 | -import static cn.iocoder.yudao.module.bpm.enums.ErrorCodeConstants.PROCESS_DEFINITION_KEY_NOT_MATCH; | ||
| 35 | -import static cn.iocoder.yudao.module.bpm.enums.ErrorCodeConstants.PROCESS_DEFINITION_NAME_NOT_MATCH; | ||
| 36 | import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; | 33 | import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; |
| 37 | import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.*; | 34 | import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.*; |
| 35 | +import static cn.iocoder.yudao.module.bpm.enums.ErrorCodeConstants.PROCESS_DEFINITION_KEY_NOT_MATCH; | ||
| 36 | +import static cn.iocoder.yudao.module.bpm.enums.ErrorCodeConstants.PROCESS_DEFINITION_NAME_NOT_MATCH; | ||
| 38 | import static java.util.Collections.emptyList; | 37 | import static java.util.Collections.emptyList; |
| 39 | 38 | ||
| 40 | /** | 39 | /** |
| @@ -55,7 +54,7 @@ public class BpmProcessDefinitionServiceImpl implements BpmProcessDefinitionServ | @@ -55,7 +54,7 @@ public class BpmProcessDefinitionServiceImpl implements BpmProcessDefinitionServ | ||
| 55 | @Resource | 54 | @Resource |
| 56 | private RepositoryService repositoryService; | 55 | private RepositoryService repositoryService; |
| 57 | @Resource | 56 | @Resource |
| 58 | - private BpmFormServiceApi bpmFormServiceApi; | 57 | + private BpmFormService formService; |
| 59 | 58 | ||
| 60 | @Resource | 59 | @Resource |
| 61 | private BpmProcessDefinitionExtMapper processDefinitionMapper; | 60 | private BpmProcessDefinitionExtMapper processDefinitionMapper; |
| @@ -86,7 +85,7 @@ public class BpmProcessDefinitionServiceImpl implements BpmProcessDefinitionServ | @@ -86,7 +85,7 @@ public class BpmProcessDefinitionServiceImpl implements BpmProcessDefinitionServ | ||
| 86 | 85 | ||
| 87 | // 获得 Form Map | 86 | // 获得 Form Map |
| 88 | Set<Long> formIds = convertSet(processDefinitionDOs, BpmProcessDefinitionExtDO::getFormId); | 87 | Set<Long> formIds = convertSet(processDefinitionDOs, BpmProcessDefinitionExtDO::getFormId); |
| 89 | - Map<Long, BpmFormDTO> formMap = bpmFormServiceApi.getFormMap(formIds); | 88 | + Map<Long, BpmFormDO> formMap = formService.getFormMap(formIds); |
| 90 | 89 | ||
| 91 | // 拼接结果 | 90 | // 拼接结果 |
| 92 | long definitionCount = definitionQuery.count(); | 91 | long definitionCount = definitionQuery.count(); |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/service/definition/impl/BpmTaskAssignRuleServiceImpl.java renamed to yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/service/definition/BpmTaskAssignRuleServiceImpl.java
| 1 | -package cn.iocoder.yudao.adminserver.modules.bpm.service.definition.impl; | 1 | +package cn.iocoder.yudao.adminserver.modules.bpm.service.definition; |
| 2 | 2 | ||
| 3 | import cn.hutool.core.collection.CollUtil; | 3 | import cn.hutool.core.collection.CollUtil; |
| 4 | import cn.hutool.core.util.ObjectUtil; | 4 | import cn.hutool.core.util.ObjectUtil; |
| @@ -8,21 +8,18 @@ import cn.iocoder.yudao.module.bpm.controller.definition.vo.rule.BpmTaskAssignRu | @@ -8,21 +8,18 @@ import cn.iocoder.yudao.module.bpm.controller.definition.vo.rule.BpmTaskAssignRu | ||
| 8 | import cn.iocoder.yudao.module.bpm.controller.definition.vo.rule.BpmTaskAssignRuleUpdateReqVO; | 8 | import cn.iocoder.yudao.module.bpm.controller.definition.vo.rule.BpmTaskAssignRuleUpdateReqVO; |
| 9 | import cn.iocoder.yudao.adminserver.modules.bpm.convert.definition.BpmTaskAssignRuleConvert; | 9 | import cn.iocoder.yudao.adminserver.modules.bpm.convert.definition.BpmTaskAssignRuleConvert; |
| 10 | import cn.iocoder.yudao.module.bpm.dal.dataobject.definition.BpmTaskAssignRuleDO; | 10 | import cn.iocoder.yudao.module.bpm.dal.dataobject.definition.BpmTaskAssignRuleDO; |
| 11 | -import cn.iocoder.yudao.adminserver.modules.bpm.dal.mysql.definition.BpmTaskAssignRuleMapper; | 11 | +import cn.iocoder.yudao.module.bpm.dal.mysql.definition.BpmTaskAssignRuleMapper; |
| 12 | import cn.iocoder.yudao.module.bpm.enums.definition.BpmTaskAssignRuleTypeEnum; | 12 | import cn.iocoder.yudao.module.bpm.enums.definition.BpmTaskAssignRuleTypeEnum; |
| 13 | -import cn.iocoder.yudao.adminserver.modules.bpm.service.definition.BpmModelService; | ||
| 14 | -import cn.iocoder.yudao.adminserver.modules.bpm.service.definition.BpmProcessDefinitionService; | ||
| 15 | -import cn.iocoder.yudao.adminserver.modules.bpm.service.definition.BpmTaskAssignRuleService; | ||
| 16 | -import cn.iocoder.yudao.module.bpm.api.group.BpmUserGroupServiceApi; | ||
| 17 | -import cn.iocoder.yudao.module.system.enums.SysDictTypeConstants; | ||
| 18 | -import cn.iocoder.yudao.module.system.service.dept.SysDeptCoreService; | ||
| 19 | -import cn.iocoder.yudao.module.system.service.dept.SysPostCoreService; | ||
| 20 | -import cn.iocoder.yudao.module.system.service.dict.DictDataCoreService; | ||
| 21 | -import cn.iocoder.yudao.module.system.service.permission.SysRoleCoreService; | ||
| 22 | -import cn.iocoder.yudao.module.system.service.user.SysUserCoreService; | ||
| 23 | import cn.iocoder.yudao.framework.activiti.core.util.ActivitiUtils; | 13 | import cn.iocoder.yudao.framework.activiti.core.util.ActivitiUtils; |
| 24 | import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils; | 14 | import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils; |
| 25 | import cn.iocoder.yudao.framework.common.util.object.ObjectUtils; | 15 | import cn.iocoder.yudao.framework.common.util.object.ObjectUtils; |
| 16 | +import cn.iocoder.yudao.module.bpm.service.definition.BpmUserGroupService; | ||
| 17 | +import cn.iocoder.yudao.module.system.api.dept.DeptApi; | ||
| 18 | +import cn.iocoder.yudao.module.system.api.dept.PostApi; | ||
| 19 | +import cn.iocoder.yudao.module.system.api.dict.DictDataApi; | ||
| 20 | +import cn.iocoder.yudao.module.system.api.permission.RoleApi; | ||
| 21 | +import cn.iocoder.yudao.module.system.api.user.AdminUserApi; | ||
| 22 | +import cn.iocoder.yudao.module.system.enums.DictTypeConstants; | ||
| 26 | import lombok.extern.slf4j.Slf4j; | 23 | import lombok.extern.slf4j.Slf4j; |
| 27 | import org.activiti.bpmn.model.BpmnModel; | 24 | import org.activiti.bpmn.model.BpmnModel; |
| 28 | import org.activiti.bpmn.model.UserTask; | 25 | import org.activiti.bpmn.model.UserTask; |
| @@ -34,6 +31,7 @@ import javax.annotation.Resource; | @@ -34,6 +31,7 @@ import javax.annotation.Resource; | ||
| 34 | import java.util.*; | 31 | import java.util.*; |
| 35 | 32 | ||
| 36 | import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; | 33 | import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; |
| 34 | +import static cn.iocoder.yudao.module.bpm.enums.ErrorCodeConstants.*; | ||
| 37 | 35 | ||
| 38 | /** | 36 | /** |
| 39 | * BPM 任务分配规则 Service 实现类 | 37 | * BPM 任务分配规则 Service 实现类 |
| @@ -53,17 +51,17 @@ public class BpmTaskAssignRuleServiceImpl implements BpmTaskAssignRuleService { | @@ -53,17 +51,17 @@ public class BpmTaskAssignRuleServiceImpl implements BpmTaskAssignRuleService { | ||
| 53 | @Lazy // 解决循环依赖 | 51 | @Lazy // 解决循环依赖 |
| 54 | private BpmProcessDefinitionService processDefinitionService; | 52 | private BpmProcessDefinitionService processDefinitionService; |
| 55 | @Resource | 53 | @Resource |
| 56 | - private SysRoleCoreService roleCoreService; | 54 | + private BpmUserGroupService userGroupService; |
| 57 | @Resource | 55 | @Resource |
| 58 | - private SysDeptCoreService deptCoreService; | 56 | + private RoleApi roleApi; |
| 59 | @Resource | 57 | @Resource |
| 60 | - private SysPostCoreService postService; | 58 | + private DeptApi deptApi; |
| 61 | @Resource | 59 | @Resource |
| 62 | - private SysUserCoreService userCoreService; | 60 | + private PostApi postApi; |
| 63 | @Resource | 61 | @Resource |
| 64 | - private BpmUserGroupServiceApi userGroupServiceApi; | 62 | + private AdminUserApi adminUserApi; |
| 65 | @Resource | 63 | @Resource |
| 66 | - private DictDataCoreService dictDataCoreService; | 64 | + private DictDataApi dictDataApi; |
| 67 | 65 | ||
| 68 | @Override | 66 | @Override |
| 69 | public List<BpmTaskAssignRuleDO> getTaskAssignRuleListByProcessDefinitionId(String processDefinitionId, | 67 | public List<BpmTaskAssignRuleDO> getTaskAssignRuleListByProcessDefinitionId(String processDefinitionId, |
| @@ -178,18 +176,18 @@ public class BpmTaskAssignRuleServiceImpl implements BpmTaskAssignRuleService { | @@ -178,18 +176,18 @@ public class BpmTaskAssignRuleServiceImpl implements BpmTaskAssignRuleService { | ||
| 178 | 176 | ||
| 179 | private void validTaskAssignRuleOptions(Integer type, Set<Long> options) { | 177 | private void validTaskAssignRuleOptions(Integer type, Set<Long> options) { |
| 180 | if (Objects.equals(type, BpmTaskAssignRuleTypeEnum.ROLE.getType())) { | 178 | if (Objects.equals(type, BpmTaskAssignRuleTypeEnum.ROLE.getType())) { |
| 181 | - roleCoreService.validRoles(options); | 179 | + roleApi.validRoles(options); |
| 182 | } else if (ObjectUtils.equalsAny(type, BpmTaskAssignRuleTypeEnum.DEPT_MEMBER.getType(), | 180 | } else if (ObjectUtils.equalsAny(type, BpmTaskAssignRuleTypeEnum.DEPT_MEMBER.getType(), |
| 183 | BpmTaskAssignRuleTypeEnum.DEPT_LEADER.getType())) { | 181 | BpmTaskAssignRuleTypeEnum.DEPT_LEADER.getType())) { |
| 184 | - deptCoreService.validDepts(options); | 182 | + deptApi.validDepts(options); |
| 185 | } else if (Objects.equals(type, BpmTaskAssignRuleTypeEnum.POST.getType())) { | 183 | } else if (Objects.equals(type, BpmTaskAssignRuleTypeEnum.POST.getType())) { |
| 186 | - postService.validPosts(options); | 184 | + postApi.validPosts(options); |
| 187 | } else if (Objects.equals(type, BpmTaskAssignRuleTypeEnum.USER.getType())) { | 185 | } else if (Objects.equals(type, BpmTaskAssignRuleTypeEnum.USER.getType())) { |
| 188 | - userCoreService.validUsers(options); | 186 | + adminUserApi.validUsers(options); |
| 189 | } else if (Objects.equals(type, BpmTaskAssignRuleTypeEnum.USER_GROUP.getType())) { | 187 | } else if (Objects.equals(type, BpmTaskAssignRuleTypeEnum.USER_GROUP.getType())) { |
| 190 | - userGroupServiceApi.validUserGroups(options); | 188 | + userGroupService.validUserGroups(options); |
| 191 | } else if (Objects.equals(type, BpmTaskAssignRuleTypeEnum.SCRIPT.getType())) { | 189 | } else if (Objects.equals(type, BpmTaskAssignRuleTypeEnum.SCRIPT.getType())) { |
| 192 | - dictDataCoreService.validDictDatas(SysDictTypeConstants.BPM_TASK_ASSIGN_SCRIPT, | 190 | + dictDataApi.validDictDatas(DictTypeConstants.BPM_TASK_ASSIGN_SCRIPT, |
| 193 | CollectionUtils.convertSet(options, String::valueOf)); | 191 | CollectionUtils.convertSet(options, String::valueOf)); |
| 194 | } else { | 192 | } else { |
| 195 | throw new IllegalArgumentException(StrUtil.format("未知的规则类型({})", type)); | 193 | throw new IllegalArgumentException(StrUtil.format("未知的规则类型({})", type)); |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/service/oa/BpmOALeaveService.java
| 1 | package cn.iocoder.yudao.adminserver.modules.bpm.service.oa; | 1 | package cn.iocoder.yudao.adminserver.modules.bpm.service.oa; |
| 2 | 2 | ||
| 3 | 3 | ||
| 4 | -import cn.iocoder.yudao.adminserver.modules.bpm.controller.oa.vo.*; | 4 | +import cn.iocoder.yudao.module.bpm.controller.oa.vo.BpmOALeaveCreateReqVO; |
| 5 | +import cn.iocoder.yudao.module.bpm.controller.oa.vo.BpmOALeavePageReqVO; | ||
| 5 | import cn.iocoder.yudao.module.bpm.dal.dataobject.oa.BpmOALeaveDO; | 6 | import cn.iocoder.yudao.module.bpm.dal.dataobject.oa.BpmOALeaveDO; |
| 6 | import cn.iocoder.yudao.framework.common.pojo.PageResult; | 7 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 7 | 8 |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/service/oa/impl/BpmOALeaveServiceImpl.java renamed to yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/service/oa/BpmOALeaveServiceImpl.java
| 1 | -package cn.iocoder.yudao.adminserver.modules.bpm.service.oa.impl; | 1 | +package cn.iocoder.yudao.adminserver.modules.bpm.service.oa; |
| 2 | 2 | ||
| 3 | import cn.hutool.core.date.DateUtil; | 3 | import cn.hutool.core.date.DateUtil; |
| 4 | -import cn.iocoder.yudao.adminserver.modules.bpm.controller.oa.vo.*; | ||
| 5 | import cn.iocoder.yudao.adminserver.modules.bpm.convert.oa.BpmOALeaveConvert; | 4 | import cn.iocoder.yudao.adminserver.modules.bpm.convert.oa.BpmOALeaveConvert; |
| 5 | +import cn.iocoder.yudao.module.bpm.controller.oa.vo.BpmOALeaveCreateReqVO; | ||
| 6 | +import cn.iocoder.yudao.module.bpm.controller.oa.vo.BpmOALeavePageReqVO; | ||
| 6 | import cn.iocoder.yudao.module.bpm.dal.dataobject.oa.BpmOALeaveDO; | 7 | import cn.iocoder.yudao.module.bpm.dal.dataobject.oa.BpmOALeaveDO; |
| 7 | -import cn.iocoder.yudao.adminserver.modules.bpm.dal.mysql.oa.BpmOALeaveMapper; | 8 | +import cn.iocoder.yudao.module.bpm.dal.mysql.oa.BpmOALeaveMapper; |
| 8 | import cn.iocoder.yudao.module.bpm.enums.task.BpmProcessInstanceResultEnum; | 9 | import cn.iocoder.yudao.module.bpm.enums.task.BpmProcessInstanceResultEnum; |
| 9 | -import cn.iocoder.yudao.adminserver.modules.bpm.service.oa.BpmOALeaveService; | ||
| 10 | import cn.iocoder.yudao.adminserver.modules.bpm.service.task.BpmProcessInstanceService; | 10 | import cn.iocoder.yudao.adminserver.modules.bpm.service.task.BpmProcessInstanceService; |
| 11 | import cn.iocoder.yudao.adminserver.modules.bpm.service.task.dto.BpmProcessInstanceCreateReqDTO; | 11 | import cn.iocoder.yudao.adminserver.modules.bpm.service.task.dto.BpmProcessInstanceCreateReqDTO; |
| 12 | import cn.iocoder.yudao.framework.common.pojo.PageResult; | 12 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| @@ -18,6 +18,7 @@ import javax.annotation.Resource; | @@ -18,6 +18,7 @@ import javax.annotation.Resource; | ||
| 18 | import java.util.*; | 18 | import java.util.*; |
| 19 | 19 | ||
| 20 | import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; | 20 | import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; |
| 21 | +import static cn.iocoder.yudao.module.bpm.enums.ErrorCodeConstants.*; | ||
| 21 | 22 | ||
| 22 | /** | 23 | /** |
| 23 | * OA 请假申请 Service 实现类 | 24 | * OA 请假申请 Service 实现类 |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/service/oa/listener/BpmOALeaveResultListener.java
| @@ -3,7 +3,7 @@ package cn.iocoder.yudao.adminserver.modules.bpm.service.oa.listener; | @@ -3,7 +3,7 @@ package cn.iocoder.yudao.adminserver.modules.bpm.service.oa.listener; | ||
| 3 | import cn.iocoder.yudao.adminserver.modules.bpm.framework.activiti.core.event.BpmProcessInstanceResultEvent; | 3 | import cn.iocoder.yudao.adminserver.modules.bpm.framework.activiti.core.event.BpmProcessInstanceResultEvent; |
| 4 | import cn.iocoder.yudao.adminserver.modules.bpm.framework.activiti.core.event.BpmProcessInstanceResultEventListener; | 4 | import cn.iocoder.yudao.adminserver.modules.bpm.framework.activiti.core.event.BpmProcessInstanceResultEventListener; |
| 5 | import cn.iocoder.yudao.adminserver.modules.bpm.service.oa.BpmOALeaveService; | 5 | import cn.iocoder.yudao.adminserver.modules.bpm.service.oa.BpmOALeaveService; |
| 6 | -import cn.iocoder.yudao.adminserver.modules.bpm.service.oa.impl.BpmOALeaveServiceImpl; | 6 | +import cn.iocoder.yudao.adminserver.modules.bpm.service.oa.BpmOALeaveServiceImpl; |
| 7 | import org.springframework.stereotype.Component; | 7 | import org.springframework.stereotype.Component; |
| 8 | 8 | ||
| 9 | import javax.annotation.Resource; | 9 | import javax.annotation.Resource; |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/service/task/BpmActivityService.java
| 1 | package cn.iocoder.yudao.adminserver.modules.bpm.service.task; | 1 | package cn.iocoder.yudao.adminserver.modules.bpm.service.task; |
| 2 | 2 | ||
| 3 | -import cn.iocoder.yudao.adminserver.modules.bpm.controller.task.vo.activity.BpmActivityRespVO; | 3 | +import cn.iocoder.yudao.module.bpm.controller.task.vo.activity.BpmActivityRespVO; |
| 4 | 4 | ||
| 5 | import java.util.List; | 5 | import java.util.List; |
| 6 | 6 |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/service/task/impl/BpmActivityServiceImpl.java renamed to yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/service/task/BpmActivityServiceImpl.java
| 1 | -package cn.iocoder.yudao.adminserver.modules.bpm.service.task.impl; | 1 | +package cn.iocoder.yudao.adminserver.modules.bpm.service.task; |
| 2 | 2 | ||
| 3 | import cn.hutool.core.io.IoUtil; | 3 | import cn.hutool.core.io.IoUtil; |
| 4 | -import cn.iocoder.yudao.adminserver.modules.bpm.controller.task.vo.activity.BpmActivityRespVO; | ||
| 5 | import cn.iocoder.yudao.adminserver.modules.bpm.convert.task.BpmActivityConvert; | 4 | import cn.iocoder.yudao.adminserver.modules.bpm.convert.task.BpmActivityConvert; |
| 6 | import cn.iocoder.yudao.adminserver.modules.bpm.service.definition.BpmProcessDefinitionService; | 5 | import cn.iocoder.yudao.adminserver.modules.bpm.service.definition.BpmProcessDefinitionService; |
| 7 | -import cn.iocoder.yudao.adminserver.modules.bpm.service.task.BpmActivityService; | ||
| 8 | -import cn.iocoder.yudao.adminserver.modules.bpm.service.task.BpmProcessInstanceService; | ||
| 9 | -import cn.iocoder.yudao.adminserver.modules.bpm.service.task.BpmTaskService; | ||
| 10 | import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils; | 6 | import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils; |
| 7 | +import cn.iocoder.yudao.module.bpm.controller.task.vo.activity.BpmActivityRespVO; | ||
| 11 | import lombok.extern.slf4j.Slf4j; | 8 | import lombok.extern.slf4j.Slf4j; |
| 12 | import org.activiti.bpmn.model.BpmnModel; | 9 | import org.activiti.bpmn.model.BpmnModel; |
| 13 | import org.activiti.engine.HistoryService; | 10 | import org.activiti.engine.HistoryService; |
| @@ -24,7 +21,7 @@ import java.util.Collections; | @@ -24,7 +21,7 @@ import java.util.Collections; | ||
| 24 | import java.util.List; | 21 | import java.util.List; |
| 25 | 22 | ||
| 26 | import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; | 23 | import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; |
| 27 | -import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertMap; | 24 | +import static cn.iocoder.yudao.module.bpm.enums.ErrorCodeConstants.*; |
| 28 | 25 | ||
| 29 | /** | 26 | /** |
| 30 | * BPM 活动实例 Service 实现类 | 27 | * BPM 活动实例 Service 实现类 |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/service/task/BpmProcessInstanceService.java
| 1 | package cn.iocoder.yudao.adminserver.modules.bpm.service.task; | 1 | package cn.iocoder.yudao.adminserver.modules.bpm.service.task; |
| 2 | 2 | ||
| 3 | -import cn.iocoder.yudao.adminserver.modules.bpm.controller.task.vo.instance.*; | 3 | +import cn.iocoder.yudao.module.bpm.controller.task.vo.instance.*; |
| 4 | import cn.iocoder.yudao.module.bpm.enums.task.BpmProcessInstanceDeleteReasonEnum; | 4 | import cn.iocoder.yudao.module.bpm.enums.task.BpmProcessInstanceDeleteReasonEnum; |
| 5 | import cn.iocoder.yudao.adminserver.modules.bpm.service.task.dto.BpmProcessInstanceCreateReqDTO; | 5 | import cn.iocoder.yudao.adminserver.modules.bpm.service.task.dto.BpmProcessInstanceCreateReqDTO; |
| 6 | import cn.iocoder.yudao.framework.common.pojo.PageResult; | 6 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/service/task/impl/BpmProcessInstanceServiceImpl.java renamed to yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/service/task/BpmProcessInstanceServiceImpl.java
| 1 | -package cn.iocoder.yudao.adminserver.modules.bpm.service.task.impl; | 1 | +package cn.iocoder.yudao.adminserver.modules.bpm.service.task; |
| 2 | 2 | ||
| 3 | import cn.hutool.core.collection.CollUtil; | 3 | import cn.hutool.core.collection.CollUtil; |
| 4 | import cn.hutool.core.lang.Assert; | 4 | import cn.hutool.core.lang.Assert; |
| 5 | import cn.hutool.core.util.StrUtil; | 5 | import cn.hutool.core.util.StrUtil; |
| 6 | -import cn.iocoder.yudao.adminserver.modules.bpm.controller.task.vo.instance.*; | ||
| 7 | import cn.iocoder.yudao.adminserver.modules.bpm.convert.message.BpmMessageConvert; | 6 | import cn.iocoder.yudao.adminserver.modules.bpm.convert.message.BpmMessageConvert; |
| 8 | import cn.iocoder.yudao.adminserver.modules.bpm.convert.task.BpmProcessInstanceConvert; | 7 | import cn.iocoder.yudao.adminserver.modules.bpm.convert.task.BpmProcessInstanceConvert; |
| 8 | +import cn.iocoder.yudao.module.bpm.controller.task.vo.instance.*; | ||
| 9 | import cn.iocoder.yudao.module.bpm.dal.dataobject.definition.BpmProcessDefinitionExtDO; | 9 | import cn.iocoder.yudao.module.bpm.dal.dataobject.definition.BpmProcessDefinitionExtDO; |
| 10 | import cn.iocoder.yudao.module.bpm.dal.dataobject.task.BpmProcessInstanceExtDO; | 10 | import cn.iocoder.yudao.module.bpm.dal.dataobject.task.BpmProcessInstanceExtDO; |
| 11 | -import cn.iocoder.yudao.adminserver.modules.bpm.dal.mysql.task.BpmProcessInstanceExtMapper; | 11 | +import cn.iocoder.yudao.module.bpm.dal.mysql.task.BpmProcessInstanceExtMapper; |
| 12 | import cn.iocoder.yudao.module.bpm.enums.task.BpmProcessInstanceDeleteReasonEnum; | 12 | import cn.iocoder.yudao.module.bpm.enums.task.BpmProcessInstanceDeleteReasonEnum; |
| 13 | import cn.iocoder.yudao.module.bpm.enums.task.BpmProcessInstanceResultEnum; | 13 | import cn.iocoder.yudao.module.bpm.enums.task.BpmProcessInstanceResultEnum; |
| 14 | import cn.iocoder.yudao.module.bpm.enums.task.BpmProcessInstanceStatusEnum; | 14 | import cn.iocoder.yudao.module.bpm.enums.task.BpmProcessInstanceStatusEnum; |
| 15 | import cn.iocoder.yudao.adminserver.modules.bpm.framework.activiti.core.event.BpmProcessInstanceResultEventPublisher; | 15 | import cn.iocoder.yudao.adminserver.modules.bpm.framework.activiti.core.event.BpmProcessInstanceResultEventPublisher; |
| 16 | import cn.iocoder.yudao.adminserver.modules.bpm.service.definition.BpmProcessDefinitionService; | 16 | import cn.iocoder.yudao.adminserver.modules.bpm.service.definition.BpmProcessDefinitionService; |
| 17 | import cn.iocoder.yudao.module.bpm.service.message.BpmMessageService; | 17 | import cn.iocoder.yudao.module.bpm.service.message.BpmMessageService; |
| 18 | -import cn.iocoder.yudao.adminserver.modules.bpm.service.task.BpmProcessInstanceService; | ||
| 19 | -import cn.iocoder.yudao.adminserver.modules.bpm.service.task.BpmTaskService; | ||
| 20 | import cn.iocoder.yudao.adminserver.modules.bpm.service.task.dto.BpmProcessInstanceCreateReqDTO; | 18 | import cn.iocoder.yudao.adminserver.modules.bpm.service.task.dto.BpmProcessInstanceCreateReqDTO; |
| 21 | -import cn.iocoder.yudao.module.system.dal.dataobject.dept.SysDeptDO; | ||
| 22 | -import cn.iocoder.yudao.module.system.dal.dataobject.user.SysUserDO; | ||
| 23 | -import cn.iocoder.yudao.module.system.service.dept.SysDeptCoreService; | ||
| 24 | -import cn.iocoder.yudao.module.system.service.user.SysUserCoreService; | ||
| 25 | import cn.iocoder.yudao.framework.common.pojo.PageResult; | 19 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 26 | import cn.iocoder.yudao.framework.common.util.number.NumberUtils; | 20 | import cn.iocoder.yudao.framework.common.util.number.NumberUtils; |
| 21 | +import cn.iocoder.yudao.module.system.api.dept.DeptApi; | ||
| 22 | +import cn.iocoder.yudao.module.system.api.dept.dto.DeptRespDTO; | ||
| 23 | +import cn.iocoder.yudao.module.system.api.user.AdminUserApi; | ||
| 24 | +import cn.iocoder.yudao.module.system.api.user.dto.AdminUserRespDTO; | ||
| 27 | import lombok.extern.slf4j.Slf4j; | 25 | import lombok.extern.slf4j.Slf4j; |
| 28 | import org.activiti.engine.HistoryService; | 26 | import org.activiti.engine.HistoryService; |
| 29 | import org.activiti.engine.RuntimeService; | 27 | import org.activiti.engine.RuntimeService; |
| @@ -41,6 +39,7 @@ import java.util.*; | @@ -41,6 +39,7 @@ import java.util.*; | ||
| 41 | 39 | ||
| 42 | import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; | 40 | import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; |
| 43 | import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertList; | 41 | import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertList; |
| 42 | +import static cn.iocoder.yudao.module.bpm.enums.ErrorCodeConstants.*; | ||
| 44 | 43 | ||
| 45 | /** | 44 | /** |
| 46 | * 流程实例 Service 实现类 | 45 | * 流程实例 Service 实现类 |
| @@ -65,9 +64,9 @@ public class BpmProcessInstanceServiceImpl implements BpmProcessInstanceService | @@ -65,9 +64,9 @@ public class BpmProcessInstanceServiceImpl implements BpmProcessInstanceService | ||
| 65 | private HistoryService historyService; | 64 | private HistoryService historyService; |
| 66 | 65 | ||
| 67 | @Resource | 66 | @Resource |
| 68 | - private SysUserCoreService userCoreService; | 67 | + private AdminUserApi adminUserApi; |
| 69 | @Resource | 68 | @Resource |
| 70 | - private SysDeptCoreService deptCoreService; | 69 | + private DeptApi deptApi; |
| 71 | @Resource | 70 | @Resource |
| 72 | @Lazy // 解决循环依赖 | 71 | @Lazy // 解决循环依赖 |
| 73 | private BpmTaskService taskService; | 72 | private BpmTaskService taskService; |
| @@ -189,10 +188,10 @@ public class BpmProcessInstanceServiceImpl implements BpmProcessInstanceService | @@ -189,10 +188,10 @@ public class BpmProcessInstanceServiceImpl implements BpmProcessInstanceService | ||
| 189 | String bpmnXml = processDefinitionService.getProcessDefinitionBpmnXML(processInstance.getProcessDefinitionId()); | 188 | String bpmnXml = processDefinitionService.getProcessDefinitionBpmnXML(processInstance.getProcessDefinitionId()); |
| 190 | 189 | ||
| 191 | // 获得 User | 190 | // 获得 User |
| 192 | - SysUserDO startUser = userCoreService.getUser(NumberUtils.parseLong(processInstance.getStartUserId())); | ||
| 193 | - SysDeptDO dept = null; | 191 | + AdminUserRespDTO startUser = adminUserApi.getUser(NumberUtils.parseLong(processInstance.getStartUserId())); |
| 192 | + DeptRespDTO dept = null; | ||
| 194 | if (startUser != null) { | 193 | if (startUser != null) { |
| 195 | - dept = deptCoreService.getDept(startUser.getDeptId()); | 194 | + dept = deptApi.getDept(startUser.getDeptId()); |
| 196 | } | 195 | } |
| 197 | 196 | ||
| 198 | // 拼接结果 | 197 | // 拼接结果 |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/service/task/BpmTaskService.java
| 1 | package cn.iocoder.yudao.adminserver.modules.bpm.service.task; | 1 | package cn.iocoder.yudao.adminserver.modules.bpm.service.task; |
| 2 | 2 | ||
| 3 | -import cn.iocoder.yudao.adminserver.modules.bpm.controller.task.vo.task.*; | 3 | +import cn.iocoder.yudao.module.bpm.controller.task.vo.task.*; |
| 4 | import cn.iocoder.yudao.module.bpm.dal.dataobject.task.BpmTaskExtDO; | 4 | import cn.iocoder.yudao.module.bpm.dal.dataobject.task.BpmTaskExtDO; |
| 5 | import cn.iocoder.yudao.framework.common.pojo.PageResult; | 5 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 6 | import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils; | 6 | import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils; |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/service/task/impl/BpmTaskServiceImpl.java renamed to yudao-module-bpm/yudao-module-bpm-impl-activiti/src/main/java/cn/iocoder/yudao/adminserver/modules/bpm/service/task/BpmTaskServiceImpl.java
| 1 | -package cn.iocoder.yudao.adminserver.modules.bpm.service.task.impl; | 1 | +package cn.iocoder.yudao.adminserver.modules.bpm.service.task; |
| 2 | 2 | ||
| 3 | import cn.hutool.core.collection.CollUtil; | 3 | import cn.hutool.core.collection.CollUtil; |
| 4 | import cn.hutool.core.util.StrUtil; | 4 | import cn.hutool.core.util.StrUtil; |
| 5 | -import cn.iocoder.yudao.adminserver.modules.bpm.controller.task.vo.task.*; | ||
| 6 | import cn.iocoder.yudao.adminserver.modules.bpm.convert.message.BpmMessageConvert; | 5 | import cn.iocoder.yudao.adminserver.modules.bpm.convert.message.BpmMessageConvert; |
| 7 | import cn.iocoder.yudao.adminserver.modules.bpm.convert.task.BpmTaskConvert; | 6 | import cn.iocoder.yudao.adminserver.modules.bpm.convert.task.BpmTaskConvert; |
| 7 | +import cn.iocoder.yudao.module.bpm.controller.task.vo.task.*; | ||
| 8 | import cn.iocoder.yudao.module.bpm.dal.dataobject.task.BpmTaskExtDO; | 8 | import cn.iocoder.yudao.module.bpm.dal.dataobject.task.BpmTaskExtDO; |
| 9 | -import cn.iocoder.yudao.adminserver.modules.bpm.dal.mysql.task.BpmTaskExtMapper; | 9 | +import cn.iocoder.yudao.module.bpm.dal.mysql.task.BpmTaskExtMapper; |
| 10 | import cn.iocoder.yudao.module.bpm.enums.task.BpmProcessInstanceResultEnum; | 10 | import cn.iocoder.yudao.module.bpm.enums.task.BpmProcessInstanceResultEnum; |
| 11 | import cn.iocoder.yudao.module.bpm.service.message.BpmMessageService; | 11 | import cn.iocoder.yudao.module.bpm.service.message.BpmMessageService; |
| 12 | -import cn.iocoder.yudao.adminserver.modules.bpm.service.task.BpmProcessInstanceService; | ||
| 13 | -import cn.iocoder.yudao.adminserver.modules.bpm.service.task.BpmTaskService; | ||
| 14 | 12 | ||
| 15 | -import cn.iocoder.yudao.module.system.dal.dataobject.dept.SysDeptDO; | ||
| 16 | -import cn.iocoder.yudao.module.system.dal.dataobject.user.SysUserDO; | ||
| 17 | -import cn.iocoder.yudao.module.system.service.dept.SysDeptCoreService; | ||
| 18 | -import cn.iocoder.yudao.module.system.service.user.SysUserCoreService; | ||
| 19 | import cn.iocoder.yudao.framework.activiti.core.util.ActivitiUtils; | 13 | import cn.iocoder.yudao.framework.activiti.core.util.ActivitiUtils; |
| 20 | import cn.iocoder.yudao.framework.common.pojo.PageResult; | 14 | import cn.iocoder.yudao.framework.common.pojo.PageResult; |
| 21 | import cn.iocoder.yudao.framework.common.util.number.NumberUtils; | 15 | import cn.iocoder.yudao.framework.common.util.number.NumberUtils; |
| 22 | import cn.iocoder.yudao.framework.common.util.object.PageUtils; | 16 | import cn.iocoder.yudao.framework.common.util.object.PageUtils; |
| 17 | +import cn.iocoder.yudao.module.system.api.dept.DeptApi; | ||
| 18 | +import cn.iocoder.yudao.module.system.api.dept.dto.DeptRespDTO; | ||
| 19 | +import cn.iocoder.yudao.module.system.api.user.AdminUserApi; | ||
| 20 | +import cn.iocoder.yudao.module.system.api.user.dto.AdminUserRespDTO; | ||
| 23 | import lombok.extern.slf4j.Slf4j; | 21 | import lombok.extern.slf4j.Slf4j; |
| 24 | import org.activiti.engine.HistoryService; | 22 | import org.activiti.engine.HistoryService; |
| 25 | import org.activiti.engine.TaskService; | 23 | import org.activiti.engine.TaskService; |
| @@ -42,6 +40,7 @@ import java.util.*; | @@ -42,6 +40,7 @@ import java.util.*; | ||
| 42 | import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; | 40 | import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; |
| 43 | import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertMap; | 41 | import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertMap; |
| 44 | import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertSet; | 42 | import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertSet; |
| 43 | +import static cn.iocoder.yudao.module.bpm.enums.ErrorCodeConstants.*; | ||
| 45 | 44 | ||
| 46 | /** | 45 | /** |
| 47 | * 流程任务实例 Service 实现类 | 46 | * 流程任务实例 Service 实现类 |
| @@ -59,9 +58,9 @@ public class BpmTaskServiceImpl implements BpmTaskService { | @@ -59,9 +58,9 @@ public class BpmTaskServiceImpl implements BpmTaskService { | ||
| 59 | private HistoryService historyService; | 58 | private HistoryService historyService; |
| 60 | 59 | ||
| 61 | @Resource | 60 | @Resource |
| 62 | - private SysUserCoreService userCoreService; | 61 | + private AdminUserApi adminUserApi; |
| 63 | @Resource | 62 | @Resource |
| 64 | - private SysDeptCoreService deptCoreService; | 63 | + private DeptApi deptApi; |
| 65 | @Resource | 64 | @Resource |
| 66 | @Lazy // 解决循环依赖 | 65 | @Lazy // 解决循环依赖 |
| 67 | private BpmProcessInstanceService processInstanceService; | 66 | private BpmProcessInstanceService processInstanceService; |
| @@ -95,9 +94,9 @@ public class BpmTaskServiceImpl implements BpmTaskService { | @@ -95,9 +94,9 @@ public class BpmTaskServiceImpl implements BpmTaskService { | ||
| 95 | // 获得 User Map | 94 | // 获得 User Map |
| 96 | Set<Long> userIds = convertSet(tasks, task -> NumberUtils.parseLong(task.getAssignee())); | 95 | Set<Long> userIds = convertSet(tasks, task -> NumberUtils.parseLong(task.getAssignee())); |
| 97 | userIds.add(NumberUtils.parseLong(processInstance.getStartUserId())); | 96 | userIds.add(NumberUtils.parseLong(processInstance.getStartUserId())); |
| 98 | - Map<Long, SysUserDO> userMap = userCoreService.getUserMap(userIds); | 97 | + Map<Long, AdminUserRespDTO> userMap = adminUserApi.getUserMap(userIds); |
| 99 | // 获得 Dept Map | 98 | // 获得 Dept Map |
| 100 | - Map<Long, SysDeptDO> deptMap = deptCoreService.getDeptMap(convertSet(userMap.values(), SysUserDO::getDeptId)); | 99 | + Map<Long, DeptRespDTO> deptMap = deptApi.getDeptMap(convertSet(userMap.values(), AdminUserRespDTO::getDeptId)); |
| 101 | 100 | ||
| 102 | // 拼接数据 | 101 | // 拼接数据 |
| 103 | return BpmTaskConvert.INSTANCE.convertList3(tasks, bpmTaskExtDOMap, processInstance, userMap, deptMap); | 102 | return BpmTaskConvert.INSTANCE.convertList3(tasks, bpmTaskExtDOMap, processInstance, userMap, deptMap); |
| @@ -144,7 +143,7 @@ public class BpmTaskServiceImpl implements BpmTaskService { | @@ -144,7 +143,7 @@ public class BpmTaskServiceImpl implements BpmTaskService { | ||
| 144 | Map<String, ProcessInstance> processInstanceMap = processInstanceService.getProcessInstanceMap( | 143 | Map<String, ProcessInstance> processInstanceMap = processInstanceService.getProcessInstanceMap( |
| 145 | convertSet(tasks, Task::getProcessInstanceId)); | 144 | convertSet(tasks, Task::getProcessInstanceId)); |
| 146 | // 获得 User Map | 145 | // 获得 User Map |
| 147 | - Map<Long, SysUserDO> userMap = userCoreService.getUserMap( | 146 | + Map<Long, AdminUserRespDTO> userMap = adminUserApi.getUserMap( |
| 148 | convertSet(processInstanceMap.values(), instance -> Long.valueOf(instance.getStartUserId()))); | 147 | convertSet(processInstanceMap.values(), instance -> Long.valueOf(instance.getStartUserId()))); |
| 149 | // 拼接结果 | 148 | // 拼接结果 |
| 150 | return new PageResult<>(BpmTaskConvert.INSTANCE.convertList1(tasks, processInstanceMap, userMap), | 149 | return new PageResult<>(BpmTaskConvert.INSTANCE.convertList1(tasks, processInstanceMap, userMap), |
| @@ -180,7 +179,7 @@ public class BpmTaskServiceImpl implements BpmTaskService { | @@ -180,7 +179,7 @@ public class BpmTaskServiceImpl implements BpmTaskService { | ||
| 180 | Map<String, HistoricProcessInstance> historicProcessInstanceMap = processInstanceService.getHistoricProcessInstanceMap( | 179 | Map<String, HistoricProcessInstance> historicProcessInstanceMap = processInstanceService.getHistoricProcessInstanceMap( |
| 181 | convertSet(tasks, HistoricTaskInstance::getProcessInstanceId)); | 180 | convertSet(tasks, HistoricTaskInstance::getProcessInstanceId)); |
| 182 | // 获得 User Map | 181 | // 获得 User Map |
| 183 | - Map<Long, SysUserDO> userMap = userCoreService.getUserMap( | 182 | + Map<Long, AdminUserRespDTO> userMap = adminUserApi.getUserMap( |
| 184 | convertSet(historicProcessInstanceMap.values(), instance -> Long.valueOf(instance.getStartUserId()))); | 183 | convertSet(historicProcessInstanceMap.values(), instance -> Long.valueOf(instance.getStartUserId()))); |
| 185 | // 拼接结果 | 184 | // 拼接结果 |
| 186 | return new PageResult<>(BpmTaskConvert.INSTANCE.convertList2(tasks, bpmTaskExtDOMap, historicProcessInstanceMap, userMap), | 185 | return new PageResult<>(BpmTaskConvert.INSTANCE.convertList2(tasks, bpmTaskExtDOMap, historicProcessInstanceMap, userMap), |
| @@ -291,7 +290,7 @@ public class BpmTaskServiceImpl implements BpmTaskService { | @@ -291,7 +290,7 @@ public class BpmTaskServiceImpl implements BpmTaskService { | ||
| 291 | @Override | 290 | @Override |
| 292 | public void afterCommit() { | 291 | public void afterCommit() { |
| 293 | ProcessInstance processInstance = processInstanceService.getProcessInstance(task.getProcessInstanceId()); | 292 | ProcessInstance processInstance = processInstanceService.getProcessInstance(task.getProcessInstanceId()); |
| 294 | - SysUserDO startUser = userCoreService.getUser(Long.valueOf(processInstance.getStartUserId())); | 293 | + AdminUserRespDTO startUser = adminUserApi.getUser(Long.valueOf(processInstance.getStartUserId())); |
| 295 | messageService.sendMessageWhenTaskAssigned(BpmMessageConvert.INSTANCE.convert(processInstance, startUser, task)); | 294 | messageService.sendMessageWhenTaskAssigned(BpmMessageConvert.INSTANCE.convert(processInstance, startUser, task)); |
| 296 | } | 295 | } |
| 297 | }); | 296 | }); |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/test/java/cn/iocoder/yudao/adminserver/modules/bpm/framework/activiti/core/behavior/BpmUserTaskActivitiBehaviorTest.java
| 1 | package cn.iocoder.yudao.adminserver.modules.bpm.framework.activiti.core.behavior; | 1 | package cn.iocoder.yudao.adminserver.modules.bpm.framework.activiti.core.behavior; |
| 2 | 2 | ||
| 3 | import cn.hutool.core.map.MapUtil; | 3 | import cn.hutool.core.map.MapUtil; |
| 4 | -import cn.iocoder.yudao.module.bpm.dal.dataobject.definition.BpmTaskAssignRuleDO; | ||
| 5 | -import cn.iocoder.yudao.module.bpm.enums.definition.BpmTaskAssignRuleTypeEnum; | ||
| 6 | -import cn.iocoder.yudao.module.bpm.enums.definition.BpmTaskRuleScriptEnum; | ||
| 7 | import cn.iocoder.yudao.adminserver.modules.bpm.framework.activiti.core.behavior.script.BpmTaskAssignScript; | 4 | import cn.iocoder.yudao.adminserver.modules.bpm.framework.activiti.core.behavior.script.BpmTaskAssignScript; |
| 8 | import cn.iocoder.yudao.adminserver.modules.bpm.service.definition.BpmTaskAssignRuleService; | 5 | import cn.iocoder.yudao.adminserver.modules.bpm.service.definition.BpmTaskAssignRuleService; |
| 9 | -import cn.iocoder.yudao.module.bpm.api.group.BpmUserGroupServiceApi; | ||
| 10 | -import cn.iocoder.yudao.module.bpm.api.group.dto.BpmUserGroupDTO; | ||
| 11 | -import cn.iocoder.yudao.module.system.dal.dataobject.dept.SysDeptDO; | ||
| 12 | -import cn.iocoder.yudao.module.system.dal.dataobject.user.SysUserDO; | ||
| 13 | -import cn.iocoder.yudao.module.system.service.dept.SysDeptCoreService; | ||
| 14 | -import cn.iocoder.yudao.module.system.service.permission.SysPermissionCoreService; | ||
| 15 | -import cn.iocoder.yudao.module.system.service.user.SysUserCoreService; | ||
| 16 | import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum; | 6 | import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum; |
| 17 | import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils; | 7 | import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils; |
| 18 | import cn.iocoder.yudao.framework.test.core.ut.BaseMockitoUnitTest; | 8 | import cn.iocoder.yudao.framework.test.core.ut.BaseMockitoUnitTest; |
| 9 | +import cn.iocoder.yudao.module.bpm.dal.dataobject.definition.BpmTaskAssignRuleDO; | ||
| 10 | +import cn.iocoder.yudao.module.bpm.dal.dataobject.definition.BpmUserGroupDO; | ||
| 11 | +import cn.iocoder.yudao.module.bpm.enums.definition.BpmTaskAssignRuleTypeEnum; | ||
| 12 | +import cn.iocoder.yudao.module.bpm.enums.definition.BpmTaskRuleScriptEnum; | ||
| 13 | +import cn.iocoder.yudao.module.bpm.service.definition.BpmUserGroupService; | ||
| 14 | +import cn.iocoder.yudao.module.system.api.dept.DeptApi; | ||
| 15 | +import cn.iocoder.yudao.module.system.api.dept.dto.DeptRespDTO; | ||
| 16 | +import cn.iocoder.yudao.module.system.api.permission.PermissionApi; | ||
| 17 | +import cn.iocoder.yudao.module.system.api.user.AdminUserApi; | ||
| 18 | +import cn.iocoder.yudao.module.system.api.user.dto.AdminUserRespDTO; | ||
| 19 | import org.activiti.engine.impl.persistence.entity.TaskEntity; | 19 | import org.activiti.engine.impl.persistence.entity.TaskEntity; |
| 20 | import org.junit.jupiter.api.Test; | 20 | import org.junit.jupiter.api.Test; |
| 21 | import org.mockito.InjectMocks; | 21 | import org.mockito.InjectMocks; |
| @@ -40,13 +40,14 @@ public class BpmUserTaskActivitiBehaviorTest extends BaseMockitoUnitTest { | @@ -40,13 +40,14 @@ public class BpmUserTaskActivitiBehaviorTest extends BaseMockitoUnitTest { | ||
| 40 | @Mock | 40 | @Mock |
| 41 | private BpmTaskAssignRuleService bpmTaskRuleService; | 41 | private BpmTaskAssignRuleService bpmTaskRuleService; |
| 42 | @Mock | 42 | @Mock |
| 43 | - private SysPermissionCoreService permissionCoreService; | 43 | + private BpmUserGroupService userGroupService; |
| 44 | + | ||
| 44 | @Mock | 45 | @Mock |
| 45 | - private SysDeptCoreService deptCoreService; | 46 | + private DeptApi deptApi; |
| 46 | @Mock | 47 | @Mock |
| 47 | - private BpmUserGroupServiceApi userGroupServiceApi; | 48 | + private AdminUserApi adminUserApi; |
| 48 | @Mock | 49 | @Mock |
| 49 | - private SysUserCoreService userCoreService; | 50 | + private PermissionApi permissionApi; |
| 50 | 51 | ||
| 51 | @Test | 52 | @Test |
| 52 | public void testCalculateTaskCandidateUsers_Role() { | 53 | public void testCalculateTaskCandidateUsers_Role() { |
| @@ -54,7 +55,7 @@ public class BpmUserTaskActivitiBehaviorTest extends BaseMockitoUnitTest { | @@ -54,7 +55,7 @@ public class BpmUserTaskActivitiBehaviorTest extends BaseMockitoUnitTest { | ||
| 54 | BpmTaskAssignRuleDO rule = new BpmTaskAssignRuleDO().setOptions(asSet(1L, 2L)) | 55 | BpmTaskAssignRuleDO rule = new BpmTaskAssignRuleDO().setOptions(asSet(1L, 2L)) |
| 55 | .setType(BpmTaskAssignRuleTypeEnum.ROLE.getType()); | 56 | .setType(BpmTaskAssignRuleTypeEnum.ROLE.getType()); |
| 56 | // mock 方法 | 57 | // mock 方法 |
| 57 | - when(permissionCoreService.getUserRoleIdListByRoleIds(eq(rule.getOptions()))) | 58 | + when(permissionApi.getUserRoleIdListByRoleIds(eq(rule.getOptions()))) |
| 58 | .thenReturn(asSet(11L, 22L)); | 59 | .thenReturn(asSet(11L, 22L)); |
| 59 | mockGetUserMap(asSet(11L, 22L)); | 60 | mockGetUserMap(asSet(11L, 22L)); |
| 60 | 61 | ||
| @@ -70,9 +71,9 @@ public class BpmUserTaskActivitiBehaviorTest extends BaseMockitoUnitTest { | @@ -70,9 +71,9 @@ public class BpmUserTaskActivitiBehaviorTest extends BaseMockitoUnitTest { | ||
| 70 | BpmTaskAssignRuleDO rule = new BpmTaskAssignRuleDO().setOptions(asSet(1L, 2L)) | 71 | BpmTaskAssignRuleDO rule = new BpmTaskAssignRuleDO().setOptions(asSet(1L, 2L)) |
| 71 | .setType(BpmTaskAssignRuleTypeEnum.DEPT_MEMBER.getType()); | 72 | .setType(BpmTaskAssignRuleTypeEnum.DEPT_MEMBER.getType()); |
| 72 | // mock 方法 | 73 | // mock 方法 |
| 73 | - List<SysUserDO> users = CollectionUtils.convertList(asSet(11L, 22L), | ||
| 74 | - id -> new SysUserDO().setId(id)); | ||
| 75 | - when(userCoreService.getUsersByDeptIds(eq(rule.getOptions()))).thenReturn(users); | 74 | + List<AdminUserRespDTO> users = CollectionUtils.convertList(asSet(11L, 22L), |
| 75 | + id -> new AdminUserRespDTO().setId(id)); | ||
| 76 | + when(adminUserApi.getUsersByDeptIds(eq(rule.getOptions()))).thenReturn(users); | ||
| 76 | mockGetUserMap(asSet(11L, 22L)); | 77 | mockGetUserMap(asSet(11L, 22L)); |
| 77 | 78 | ||
| 78 | // 调用 | 79 | // 调用 |
| @@ -87,9 +88,9 @@ public class BpmUserTaskActivitiBehaviorTest extends BaseMockitoUnitTest { | @@ -87,9 +88,9 @@ public class BpmUserTaskActivitiBehaviorTest extends BaseMockitoUnitTest { | ||
| 87 | BpmTaskAssignRuleDO rule = new BpmTaskAssignRuleDO().setOptions(asSet(1L, 2L)) | 88 | BpmTaskAssignRuleDO rule = new BpmTaskAssignRuleDO().setOptions(asSet(1L, 2L)) |
| 88 | .setType(BpmTaskAssignRuleTypeEnum.DEPT_LEADER.getType()); | 89 | .setType(BpmTaskAssignRuleTypeEnum.DEPT_LEADER.getType()); |
| 89 | // mock 方法 | 90 | // mock 方法 |
| 90 | - SysDeptDO dept1 = randomPojo(SysDeptDO.class, o -> o.setLeaderUserId(11L)); | ||
| 91 | - SysDeptDO dept2 = randomPojo(SysDeptDO.class, o -> o.setLeaderUserId(22L)); | ||
| 92 | - when(deptCoreService.getDepts(eq(rule.getOptions()))).thenReturn(Arrays.asList(dept1, dept2)); | 91 | + DeptRespDTO dept1 = randomPojo(DeptRespDTO.class, o -> o.setLeaderUserId(11L)); |
| 92 | + DeptRespDTO dept2 = randomPojo(DeptRespDTO.class, o -> o.setLeaderUserId(22L)); | ||
| 93 | + when(deptApi.getDepts(eq(rule.getOptions()))).thenReturn(Arrays.asList(dept1, dept2)); | ||
| 93 | mockGetUserMap(asSet(11L, 22L)); | 94 | mockGetUserMap(asSet(11L, 22L)); |
| 94 | 95 | ||
| 95 | // 调用 | 96 | // 调用 |
| @@ -104,9 +105,9 @@ public class BpmUserTaskActivitiBehaviorTest extends BaseMockitoUnitTest { | @@ -104,9 +105,9 @@ public class BpmUserTaskActivitiBehaviorTest extends BaseMockitoUnitTest { | ||
| 104 | BpmTaskAssignRuleDO rule = new BpmTaskAssignRuleDO().setOptions(asSet(1L, 2L)) | 105 | BpmTaskAssignRuleDO rule = new BpmTaskAssignRuleDO().setOptions(asSet(1L, 2L)) |
| 105 | .setType(BpmTaskAssignRuleTypeEnum.POST.getType()); | 106 | .setType(BpmTaskAssignRuleTypeEnum.POST.getType()); |
| 106 | // mock 方法 | 107 | // mock 方法 |
| 107 | - List<SysUserDO> users = CollectionUtils.convertList(asSet(11L, 22L), | ||
| 108 | - id -> new SysUserDO().setId(id)); | ||
| 109 | - when(userCoreService.getUsersByPostIds(eq(rule.getOptions()))).thenReturn(users); | 108 | + List<AdminUserRespDTO> users = CollectionUtils.convertList(asSet(11L, 22L), |
| 109 | + id -> new AdminUserRespDTO().setId(id)); | ||
| 110 | + when(adminUserApi.getUsersByPostIds(eq(rule.getOptions()))).thenReturn(users); | ||
| 110 | mockGetUserMap(asSet(11L, 22L)); | 111 | mockGetUserMap(asSet(11L, 22L)); |
| 111 | 112 | ||
| 112 | // 调用 | 113 | // 调用 |
| @@ -135,9 +136,9 @@ public class BpmUserTaskActivitiBehaviorTest extends BaseMockitoUnitTest { | @@ -135,9 +136,9 @@ public class BpmUserTaskActivitiBehaviorTest extends BaseMockitoUnitTest { | ||
| 135 | BpmTaskAssignRuleDO rule = new BpmTaskAssignRuleDO().setOptions(asSet(1L, 2L)) | 136 | BpmTaskAssignRuleDO rule = new BpmTaskAssignRuleDO().setOptions(asSet(1L, 2L)) |
| 136 | .setType(BpmTaskAssignRuleTypeEnum.USER_GROUP.getType()); | 137 | .setType(BpmTaskAssignRuleTypeEnum.USER_GROUP.getType()); |
| 137 | // mock 方法 | 138 | // mock 方法 |
| 138 | - BpmUserGroupDTO userGroup1 = randomPojo(BpmUserGroupDTO.class, o -> o.setMemberUserIds(asSet(11L, 12L))); | ||
| 139 | - BpmUserGroupDTO userGroup2 = randomPojo(BpmUserGroupDTO.class, o -> o.setMemberUserIds(asSet(21L, 22L))); | ||
| 140 | - when(userGroupServiceApi.getUserGroupList(eq(rule.getOptions()))).thenReturn(Arrays.asList(userGroup1, userGroup2)); | 139 | + BpmUserGroupDO userGroup1 = randomPojo(BpmUserGroupDO.class, o -> o.setMemberUserIds(asSet(11L, 12L))); |
| 140 | + BpmUserGroupDO userGroup2 = randomPojo(BpmUserGroupDO.class, o -> o.setMemberUserIds(asSet(21L, 22L))); | ||
| 141 | + when(userGroupService.getUserGroupList(eq(rule.getOptions()))).thenReturn(Arrays.asList(userGroup1, userGroup2)); | ||
| 141 | mockGetUserMap(asSet(11L, 12L, 21L, 22L)); | 142 | mockGetUserMap(asSet(11L, 12L, 21L, 22L)); |
| 142 | 143 | ||
| 143 | // 调用 | 144 | // 调用 |
| @@ -190,13 +191,13 @@ public class BpmUserTaskActivitiBehaviorTest extends BaseMockitoUnitTest { | @@ -190,13 +191,13 @@ public class BpmUserTaskActivitiBehaviorTest extends BaseMockitoUnitTest { | ||
| 190 | // 准备参数. 1L 可以找到;2L 是禁用的;3L 找不到 | 191 | // 准备参数. 1L 可以找到;2L 是禁用的;3L 找不到 |
| 191 | Set<Long> assigneeUserIds = asSet(1L, 2L, 3L); | 192 | Set<Long> assigneeUserIds = asSet(1L, 2L, 3L); |
| 192 | // mock 方法 | 193 | // mock 方法 |
| 193 | - SysUserDO user1 = randomPojo(SysUserDO.class, o -> o.setId(1L) | 194 | + AdminUserRespDTO user1 = randomPojo(AdminUserRespDTO.class, o -> o.setId(1L) |
| 194 | .setStatus(CommonStatusEnum.ENABLE.getStatus())); | 195 | .setStatus(CommonStatusEnum.ENABLE.getStatus())); |
| 195 | - SysUserDO user2 = randomPojo(SysUserDO.class, o -> o.setId(2L) | 196 | + AdminUserRespDTO user2 = randomPojo(AdminUserRespDTO.class, o -> o.setId(2L) |
| 196 | .setStatus(CommonStatusEnum.DISABLE.getStatus())); | 197 | .setStatus(CommonStatusEnum.DISABLE.getStatus())); |
| 197 | - Map<Long, SysUserDO> userMap = MapUtil.builder(user1.getId(), user1) | 198 | + Map<Long, AdminUserRespDTO> userMap = MapUtil.builder(user1.getId(), user1) |
| 198 | .put(user2.getId(), user2).build(); | 199 | .put(user2.getId(), user2).build(); |
| 199 | - when(userCoreService.getUserMap(eq(assigneeUserIds))).thenReturn(userMap); | 200 | + when(adminUserApi.getUserMap(eq(assigneeUserIds))).thenReturn(userMap); |
| 200 | 201 | ||
| 201 | // 调用 | 202 | // 调用 |
| 202 | behavior.removeDisableUsers(assigneeUserIds); | 203 | behavior.removeDisableUsers(assigneeUserIds); |
| @@ -205,9 +206,9 @@ public class BpmUserTaskActivitiBehaviorTest extends BaseMockitoUnitTest { | @@ -205,9 +206,9 @@ public class BpmUserTaskActivitiBehaviorTest extends BaseMockitoUnitTest { | ||
| 205 | } | 206 | } |
| 206 | 207 | ||
| 207 | private void mockGetUserMap(Set<Long> assigneeUserIds) { | 208 | private void mockGetUserMap(Set<Long> assigneeUserIds) { |
| 208 | - Map<Long, SysUserDO> userMap = CollectionUtils.convertMap(assigneeUserIds, id -> id, | ||
| 209 | - id -> new SysUserDO().setId(id).setStatus(CommonStatusEnum.ENABLE.getStatus())); | ||
| 210 | - when(userCoreService.getUserMap(eq(assigneeUserIds))).thenReturn(userMap); | 209 | + Map<Long, AdminUserRespDTO> userMap = CollectionUtils.convertMap(assigneeUserIds, id -> id, |
| 210 | + id -> new AdminUserRespDTO().setId(id).setStatus(CommonStatusEnum.ENABLE.getStatus())); | ||
| 211 | + when(adminUserApi.getUserMap(eq(assigneeUserIds))).thenReturn(userMap); | ||
| 211 | } | 212 | } |
| 212 | 213 | ||
| 213 | } | 214 | } |
yudao-module-bpm/yudao-module-bpm-impl-activiti/src/test/java/cn/iocoder/yudao/adminserver/modules/bpm/framework/activiti/core/behavior/script/impl/BpmTaskAssignLeaderX2ScriptTest.java
| 1 | package cn.iocoder.yudao.adminserver.modules.bpm.framework.activiti.core.behavior.script.impl; | 1 | package cn.iocoder.yudao.adminserver.modules.bpm.framework.activiti.core.behavior.script.impl; |
| 2 | 2 | ||
| 3 | -import cn.iocoder.yudao.module.system.dal.dataobject.dept.SysDeptDO; | ||
| 4 | -import cn.iocoder.yudao.module.system.dal.dataobject.user.SysUserDO; | ||
| 5 | -import cn.iocoder.yudao.module.system.service.dept.SysDeptCoreService; | ||
| 6 | -import cn.iocoder.yudao.module.system.service.user.SysUserCoreService; | ||
| 7 | import cn.iocoder.yudao.framework.test.core.ut.BaseMockitoUnitTest; | 3 | import cn.iocoder.yudao.framework.test.core.ut.BaseMockitoUnitTest; |
| 4 | +import cn.iocoder.yudao.module.system.api.dept.DeptApi; | ||
| 5 | +import cn.iocoder.yudao.module.system.api.dept.dto.DeptRespDTO; | ||
| 6 | +import cn.iocoder.yudao.module.system.api.user.AdminUserApi; | ||
| 7 | +import cn.iocoder.yudao.module.system.api.user.dto.AdminUserRespDTO; | ||
| 8 | import org.activiti.engine.impl.persistence.entity.ExecutionEntityImpl; | 8 | import org.activiti.engine.impl.persistence.entity.ExecutionEntityImpl; |
| 9 | import org.activiti.engine.impl.persistence.entity.TaskEntity; | 9 | import org.activiti.engine.impl.persistence.entity.TaskEntity; |
| 10 | import org.activiti.engine.impl.persistence.entity.TaskEntityImpl; | 10 | import org.activiti.engine.impl.persistence.entity.TaskEntityImpl; |
| 11 | import org.junit.jupiter.api.Test; | 11 | import org.junit.jupiter.api.Test; |
| 12 | import org.mockito.InjectMocks; | 12 | import org.mockito.InjectMocks; |
| 13 | -import org.mockito.Mock; | 13 | +import org.springframework.boot.test.mock.mockito.MockBean; |
| 14 | 14 | ||
| 15 | import java.util.Set; | 15 | import java.util.Set; |
| 16 | 16 | ||
| @@ -25,18 +25,18 @@ class BpmTaskAssignLeaderX2ScriptTest extends BaseMockitoUnitTest { | @@ -25,18 +25,18 @@ class BpmTaskAssignLeaderX2ScriptTest extends BaseMockitoUnitTest { | ||
| 25 | @InjectMocks | 25 | @InjectMocks |
| 26 | private BpmTaskAssignLeaderX2Script script; | 26 | private BpmTaskAssignLeaderX2Script script; |
| 27 | 27 | ||
| 28 | - @Mock | ||
| 29 | - private SysUserCoreService userCoreService; | ||
| 30 | - @Mock | ||
| 31 | - private SysDeptCoreService deptCoreService; | 28 | + @MockBean |
| 29 | + private AdminUserApi adminUserApi; | ||
| 30 | + @MockBean | ||
| 31 | + private DeptApi deptApi; | ||
| 32 | 32 | ||
| 33 | @Test | 33 | @Test |
| 34 | public void testCalculateTaskCandidateUsers_noDept() { | 34 | public void testCalculateTaskCandidateUsers_noDept() { |
| 35 | // 准备参数 | 35 | // 准备参数 |
| 36 | TaskEntity task = buildTaskEntity(1L); | 36 | TaskEntity task = buildTaskEntity(1L); |
| 37 | // mock 方法(startUser) | 37 | // mock 方法(startUser) |
| 38 | - SysUserDO startUser = randomPojo(SysUserDO.class, o -> o.setDeptId(10L)); | ||
| 39 | - when(userCoreService.getUser(eq(1L))).thenReturn(startUser); | 38 | + AdminUserRespDTO startUser = randomPojo(AdminUserRespDTO.class, o -> o.setDeptId(10L)); |
| 39 | + when(adminUserApi.getUser(eq(1L))).thenReturn(startUser); | ||
| 40 | 40 | ||
| 41 | // 调用 | 41 | // 调用 |
| 42 | Set<Long> result = script.calculateTaskCandidateUsers(task); | 42 | Set<Long> result = script.calculateTaskCandidateUsers(task); |
| @@ -49,11 +49,11 @@ class BpmTaskAssignLeaderX2ScriptTest extends BaseMockitoUnitTest { | @@ -49,11 +49,11 @@ class BpmTaskAssignLeaderX2ScriptTest extends BaseMockitoUnitTest { | ||
| 49 | // 准备参数 | 49 | // 准备参数 |
| 50 | TaskEntity task = buildTaskEntity(1L); | 50 | TaskEntity task = buildTaskEntity(1L); |
| 51 | // mock 方法(startUser) | 51 | // mock 方法(startUser) |
| 52 | - SysUserDO startUser = randomPojo(SysUserDO.class, o -> o.setDeptId(10L)); | ||
| 53 | - when(userCoreService.getUser(eq(1L))).thenReturn(startUser); | ||
| 54 | - SysDeptDO startUserDept = randomPojo(SysDeptDO.class, o -> o.setId(10L).setParentId(100L) | 52 | + AdminUserRespDTO startUser = randomPojo(AdminUserRespDTO.class, o -> o.setDeptId(10L)); |
| 53 | + when(adminUserApi.getUser(eq(1L))).thenReturn(startUser); | ||
| 54 | + DeptRespDTO startUserDept = randomPojo(DeptRespDTO.class, o -> o.setId(10L).setParentId(100L) | ||
| 55 | .setLeaderUserId(20L)); | 55 | .setLeaderUserId(20L)); |
| 56 | - when(deptCoreService.getDept(eq(10L))).thenReturn(startUserDept); | 56 | + when(deptApi.getDept(eq(10L))).thenReturn(startUserDept); |
| 57 | 57 | ||
| 58 | // 调用 | 58 | // 调用 |
| 59 | Set<Long> result = script.calculateTaskCandidateUsers(task); | 59 | Set<Long> result = script.calculateTaskCandidateUsers(task); |
| @@ -66,15 +66,15 @@ class BpmTaskAssignLeaderX2ScriptTest extends BaseMockitoUnitTest { | @@ -66,15 +66,15 @@ class BpmTaskAssignLeaderX2ScriptTest extends BaseMockitoUnitTest { | ||
| 66 | // 准备参数 | 66 | // 准备参数 |
| 67 | TaskEntity task = buildTaskEntity(1L); | 67 | TaskEntity task = buildTaskEntity(1L); |
| 68 | // mock 方法(startUser) | 68 | // mock 方法(startUser) |
| 69 | - SysUserDO startUser = randomPojo(SysUserDO.class, o -> o.setDeptId(10L)); | ||
| 70 | - when(userCoreService.getUser(eq(1L))).thenReturn(startUser); | ||
| 71 | - SysDeptDO startUserDept = randomPojo(SysDeptDO.class, o -> o.setId(10L).setParentId(100L) | 69 | + AdminUserRespDTO startUser = randomPojo(AdminUserRespDTO.class, o -> o.setDeptId(10L)); |
| 70 | + when(adminUserApi.getUser(eq(1L))).thenReturn(startUser); | ||
| 71 | + DeptRespDTO startUserDept = randomPojo(DeptRespDTO.class, o -> o.setId(10L).setParentId(100L) | ||
| 72 | .setLeaderUserId(20L)); | 72 | .setLeaderUserId(20L)); |
| 73 | - when(deptCoreService.getDept(eq(10L))).thenReturn(startUserDept); | 73 | + when(deptApi.getDept(eq(10L))).thenReturn(startUserDept); |
| 74 | // mock 方法(父 dept) | 74 | // mock 方法(父 dept) |
| 75 | - SysDeptDO parentDept = randomPojo(SysDeptDO.class, o -> o.setId(100L).setParentId(1000L) | 75 | + DeptRespDTO parentDept = randomPojo(DeptRespDTO.class, o -> o.setId(100L).setParentId(1000L) |
| 76 | .setLeaderUserId(200L)); | 76 | .setLeaderUserId(200L)); |
| 77 | - when(deptCoreService.getDept(eq(100L))).thenReturn(parentDept); | 77 | + when(deptApi.getDept(eq(100L))).thenReturn(parentDept); |
| 78 | 78 | ||
| 79 | // 调用 | 79 | // 调用 |
| 80 | Set<Long> result = script.calculateTaskCandidateUsers(task); | 80 | Set<Long> result = script.calculateTaskCandidateUsers(task); |
yudao-module-member/yudao-module-member-impl/src/main/java/cn/iocoder/yudao/module/member/convert/auth/AuthConvert.java
| @@ -4,8 +4,8 @@ import cn.iocoder.yudao.framework.common.enums.UserTypeEnum; | @@ -4,8 +4,8 @@ import cn.iocoder.yudao.framework.common.enums.UserTypeEnum; | ||
| 4 | import cn.iocoder.yudao.framework.security.core.LoginUser; | 4 | import cn.iocoder.yudao.framework.security.core.LoginUser; |
| 5 | import cn.iocoder.yudao.module.member.controller.app.auth.vo.*; | 5 | import cn.iocoder.yudao.module.member.controller.app.auth.vo.*; |
| 6 | import cn.iocoder.yudao.module.member.dal.dataobject.user.MemberUserDO; | 6 | import cn.iocoder.yudao.module.member.dal.dataobject.user.MemberUserDO; |
| 7 | -import cn.iocoder.yudao.module.system.api.sms.dto.SmsCodeSendReqDTO; | ||
| 8 | -import cn.iocoder.yudao.module.system.api.sms.dto.SmsCodeUseReqDTO; | 7 | +import cn.iocoder.yudao.module.system.api.sms.dto.code.SmsCodeSendReqDTO; |
| 8 | +import cn.iocoder.yudao.module.system.api.sms.dto.code.SmsCodeUseReqDTO; | ||
| 9 | import cn.iocoder.yudao.module.system.api.social.dto.SocialUserBindReqDTO; | 9 | import cn.iocoder.yudao.module.system.api.social.dto.SocialUserBindReqDTO; |
| 10 | import cn.iocoder.yudao.module.system.api.social.dto.SocialUserUnbindReqDTO; | 10 | import cn.iocoder.yudao.module.system.api.social.dto.SocialUserUnbindReqDTO; |
| 11 | import cn.iocoder.yudao.module.system.enums.sms.SmsSceneEnum; | 11 | import cn.iocoder.yudao.module.system.enums.sms.SmsSceneEnum; |
yudao-module-member/yudao-module-member-impl/src/main/java/cn/iocoder/yudao/module/member/service/user/MemberUserServiceImpl.java
| @@ -8,7 +8,7 @@ import cn.iocoder.yudao.module.member.controller.app.user.vo.AppUserUpdateMobile | @@ -8,7 +8,7 @@ import cn.iocoder.yudao.module.member.controller.app.user.vo.AppUserUpdateMobile | ||
| 8 | import cn.iocoder.yudao.module.member.dal.dataobject.user.MemberUserDO; | 8 | import cn.iocoder.yudao.module.member.dal.dataobject.user.MemberUserDO; |
| 9 | import cn.iocoder.yudao.module.member.dal.mysql.user.MemberUserMapper; | 9 | import cn.iocoder.yudao.module.member.dal.mysql.user.MemberUserMapper; |
| 10 | import cn.iocoder.yudao.module.system.api.sms.SmsCodeApi; | 10 | import cn.iocoder.yudao.module.system.api.sms.SmsCodeApi; |
| 11 | -import cn.iocoder.yudao.module.system.api.sms.dto.SmsCodeUseReqDTO; | 11 | +import cn.iocoder.yudao.module.system.api.sms.dto.code.SmsCodeUseReqDTO; |
| 12 | import cn.iocoder.yudao.module.system.enums.sms.SmsSceneEnum; | 12 | import cn.iocoder.yudao.module.system.enums.sms.SmsSceneEnum; |
| 13 | import com.google.common.annotations.VisibleForTesting; | 13 | import com.google.common.annotations.VisibleForTesting; |
| 14 | import lombok.extern.slf4j.Slf4j; | 14 | import lombok.extern.slf4j.Slf4j; |
yudao-module-system/yudao-module-system-api/src/main/java/cn/iocoder/yudao/module/system/api/dept/DeptApi.java
0 → 100644
| 1 | +package cn.iocoder.yudao.module.system.api.dept; | ||
| 2 | + | ||
| 3 | +import cn.iocoder.yudao.module.system.api.dept.dto.DeptRespDTO; | ||
| 4 | + | ||
| 5 | +import java.util.Collection; | ||
| 6 | +import java.util.List; | ||
| 7 | +import java.util.Map; | ||
| 8 | +import java.util.Set; | ||
| 9 | + | ||
| 10 | +/** | ||
| 11 | + * 部门 API 接口 | ||
| 12 | + * | ||
| 13 | + * @author 芋道源码 | ||
| 14 | + */ | ||
| 15 | +public interface DeptApi { | ||
| 16 | + | ||
| 17 | + /** | ||
| 18 | + * 获得部门信息 | ||
| 19 | + * | ||
| 20 | + * @param id 部门编号 | ||
| 21 | + * @return 部门信息 | ||
| 22 | + */ | ||
| 23 | + DeptRespDTO getDept(Long id); | ||
| 24 | + | ||
| 25 | + /** | ||
| 26 | + * 获得部门信息数组 | ||
| 27 | + * | ||
| 28 | + * @param ids 部门编号数组 | ||
| 29 | + * @return 部门信息数组 | ||
| 30 | + */ | ||
| 31 | + List<DeptRespDTO> getDepts(Collection<Long> ids); | ||
| 32 | + | ||
| 33 | + /** | ||
| 34 | + * 校验部门们是否有效。如下情况,视为无效: | ||
| 35 | + * 1. 部门编号不存在 | ||
| 36 | + * 2. 部门被禁用 | ||
| 37 | + * | ||
| 38 | + * @param ids 角色编号数组 | ||
| 39 | + */ | ||
| 40 | + void validDepts(Collection<Long> ids); | ||
| 41 | + | ||
| 42 | + /** | ||
| 43 | + * 获得指定编号的部门 Map | ||
| 44 | + * | ||
| 45 | + * @param ids 部门编号数组 | ||
| 46 | + * @return 部门 Map | ||
| 47 | + */ | ||
| 48 | + Map<Long, DeptRespDTO> getDeptMap(Set<Long> ids); | ||
| 49 | + | ||
| 50 | +} |
yudao-module-system/yudao-module-system-api/src/main/java/cn/iocoder/yudao/module/system/api/dept/PostApi.java
0 → 100644
| 1 | +package cn.iocoder.yudao.module.system.api.dept; | ||
| 2 | + | ||
| 3 | +import java.util.Collection; | ||
| 4 | + | ||
| 5 | +/** | ||
| 6 | + * 岗位 API 接口 | ||
| 7 | + * | ||
| 8 | + * @author 芋道源码 | ||
| 9 | + */ | ||
| 10 | +public interface PostApi { | ||
| 11 | + | ||
| 12 | + /** | ||
| 13 | + * 校验岗位们是否有效。如下情况,视为无效: | ||
| 14 | + * 1. 岗位编号不存在 | ||
| 15 | + * 2. 岗位被禁用 | ||
| 16 | + * | ||
| 17 | + * @param ids 岗位编号数组 | ||
| 18 | + */ | ||
| 19 | + void validPosts(Collection<Long> ids); | ||
| 20 | + | ||
| 21 | +} |
yudao-module-system/yudao-module-system-api/src/main/java/cn/iocoder/yudao/module/system/api/dept/dto/DeptRespDTO.java
0 → 100644
| 1 | +package cn.iocoder.yudao.module.system.api.dept.dto; | ||
| 2 | + | ||
| 3 | +import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum; | ||
| 4 | +import lombok.Data; | ||
| 5 | + | ||
| 6 | +/** | ||
| 7 | + * 部门 Response DTO | ||
| 8 | + * | ||
| 9 | + * @author 芋道源码 | ||
| 10 | + */ | ||
| 11 | +@Data | ||
| 12 | +public class DeptRespDTO { | ||
| 13 | + | ||
| 14 | + /** | ||
| 15 | + * 部门编号 | ||
| 16 | + */ | ||
| 17 | + private Long id; | ||
| 18 | + /** | ||
| 19 | + * 部门名称 | ||
| 20 | + */ | ||
| 21 | + private String name; | ||
| 22 | + /** | ||
| 23 | + * 父部门编号 | ||
| 24 | + */ | ||
| 25 | + private Long parentId; | ||
| 26 | + /** | ||
| 27 | + * 负责人的用户编号 | ||
| 28 | + */ | ||
| 29 | + private Long leaderUserId; | ||
| 30 | + /** | ||
| 31 | + * 部门状态 | ||
| 32 | + * | ||
| 33 | + * 枚举 {@link CommonStatusEnum} | ||
| 34 | + */ | ||
| 35 | + private Integer status; | ||
| 36 | + | ||
| 37 | +} |
yudao-module-system/yudao-module-system-api/src/main/java/cn/iocoder/yudao/module/system/api/dict/DictDataApi.java
0 → 100644
| 1 | +package cn.iocoder.yudao.module.system.api.dict; | ||
| 2 | + | ||
| 3 | +import java.util.Collection; | ||
| 4 | + | ||
| 5 | +/** | ||
| 6 | + * 字典数据 API 接口 | ||
| 7 | + * | ||
| 8 | + * @author 芋道源码 | ||
| 9 | + */ | ||
| 10 | +public interface DictDataApi { | ||
| 11 | + | ||
| 12 | + /** | ||
| 13 | + * 校验字典数据们是否有效。如下情况,视为无效: | ||
| 14 | + * 1. 字典数据不存在 | ||
| 15 | + * 2. 字典数据被禁用 | ||
| 16 | + * | ||
| 17 | + * @param dictType 字典类型 | ||
| 18 | + * @param values 字典数据值的数组 | ||
| 19 | + */ | ||
| 20 | + void validDictDatas(String dictType, Collection<String> values); | ||
| 21 | + | ||
| 22 | +} |
yudao-module-system/yudao-module-system-api/src/main/java/cn/iocoder/yudao/module/system/api/permission/PermissionApi.java
0 → 100644
| 1 | +package cn.iocoder.yudao.module.system.api.permission; | ||
| 2 | + | ||
| 3 | +import java.util.Collection; | ||
| 4 | +import java.util.Set; | ||
| 5 | + | ||
| 6 | +/** | ||
| 7 | + * 权限 API 接口 | ||
| 8 | + * | ||
| 9 | + * @author 芋道源码 | ||
| 10 | + */ | ||
| 11 | +public interface PermissionApi { | ||
| 12 | + | ||
| 13 | + /** | ||
| 14 | + * 获得拥有多个角色的用户编号集合 | ||
| 15 | + * | ||
| 16 | + * @param roleIds 角色编号集合 | ||
| 17 | + * @return 用户编号集合 | ||
| 18 | + */ | ||
| 19 | + Set<Long> getUserRoleIdListByRoleIds(Collection<Long> roleIds); | ||
| 20 | + | ||
| 21 | +} |
yudao-module-system/yudao-module-system-api/src/main/java/cn/iocoder/yudao/module/system/api/permission/RoleApi.java
0 → 100644
| 1 | +package cn.iocoder.yudao.module.system.api.permission; | ||
| 2 | + | ||
| 3 | +import java.util.Collection; | ||
| 4 | + | ||
| 5 | +/** | ||
| 6 | + * 角色 API 接口 | ||
| 7 | + * | ||
| 8 | + * @author 芋道源码 | ||
| 9 | + */ | ||
| 10 | +public interface RoleApi { | ||
| 11 | + | ||
| 12 | + /** | ||
| 13 | + * 校验角色们是否有效。如下情况,视为无效: | ||
| 14 | + * 1. 角色编号不存在 | ||
| 15 | + * 2. 角色被禁用 | ||
| 16 | + * | ||
| 17 | + * @param ids 角色编号数组 | ||
| 18 | + */ | ||
| 19 | + void validRoles(Collection<Long> ids); | ||
| 20 | + | ||
| 21 | +} |
yudao-module-system/yudao-module-system-api/src/main/java/cn/iocoder/yudao/module/system/api/sms/SmsCodeApi.java
| 1 | package cn.iocoder.yudao.module.system.api.sms; | 1 | package cn.iocoder.yudao.module.system.api.sms; |
| 2 | 2 | ||
| 3 | import cn.iocoder.yudao.framework.common.exception.ServiceException; | 3 | import cn.iocoder.yudao.framework.common.exception.ServiceException; |
| 4 | -import cn.iocoder.yudao.module.system.api.sms.dto.SmsCodeCheckReqDTO; | ||
| 5 | -import cn.iocoder.yudao.module.system.api.sms.dto.SmsCodeSendReqDTO; | ||
| 6 | -import cn.iocoder.yudao.module.system.api.sms.dto.SmsCodeUseReqDTO; | 4 | +import cn.iocoder.yudao.module.system.api.sms.dto.code.SmsCodeCheckReqDTO; |
| 5 | +import cn.iocoder.yudao.module.system.api.sms.dto.code.SmsCodeSendReqDTO; | ||
| 6 | +import cn.iocoder.yudao.module.system.api.sms.dto.code.SmsCodeUseReqDTO; | ||
| 7 | 7 | ||
| 8 | import javax.validation.Valid; | 8 | import javax.validation.Valid; |
| 9 | 9 |
yudao-module-system/yudao-module-system-api/src/main/java/cn/iocoder/yudao/module/system/api/sms/SmsSendApi.java
0 → 100644
| 1 | +package cn.iocoder.yudao.module.system.api.sms; | ||
| 2 | + | ||
| 3 | +import cn.iocoder.yudao.module.system.api.sms.dto.send.SmsSendSingleToUserReqDTO; | ||
| 4 | + | ||
| 5 | +import javax.validation.Valid; | ||
| 6 | + | ||
| 7 | +/** | ||
| 8 | + * 短信发送 API 接口 | ||
| 9 | + * | ||
| 10 | + * @author 芋道源码 | ||
| 11 | + */ | ||
| 12 | +public interface SmsSendApi { | ||
| 13 | + | ||
| 14 | + /** | ||
| 15 | + * 发送单条短信给 Admin 用户 | ||
| 16 | + * | ||
| 17 | + * 在 mobile 为空时,使用 userId 加载对应 Admin 的手机号 | ||
| 18 | + * | ||
| 19 | + * @param reqDTO 发送请求 | ||
| 20 | + * @return 发送日志编号 | ||
| 21 | + */ | ||
| 22 | + Long sendSingleSmsToAdmin(@Valid SmsSendSingleToUserReqDTO reqDTO); | ||
| 23 | + | ||
| 24 | + /** | ||
| 25 | + * 发送单条短信给 Member 用户 | ||
| 26 | + * | ||
| 27 | + * 在 mobile 为空时,使用 userId 加载对应 Member 的手机号 | ||
| 28 | + * | ||
| 29 | + * @param reqDTO 发送请求 | ||
| 30 | + * @return 发送日志编号 | ||
| 31 | + */ | ||
| 32 | + Long sendSingleSmsToMember(@Valid SmsSendSingleToUserReqDTO reqDTO); | ||
| 33 | + | ||
| 34 | +} |
yudao-module-system/yudao-module-system-api/src/main/java/cn/iocoder/yudao/module/system/api/sms/dto/SmsCodeCheckReqDTO.java renamed to yudao-module-system/yudao-module-system-api/src/main/java/cn/iocoder/yudao/module/system/api/sms/dto/code/SmsCodeCheckReqDTO.java
| 1 | -package cn.iocoder.yudao.module.system.api.sms.dto; | 1 | +package cn.iocoder.yudao.module.system.api.sms.dto.code; |
| 2 | 2 | ||
| 3 | import cn.iocoder.yudao.framework.common.validation.InEnum; | 3 | import cn.iocoder.yudao.framework.common.validation.InEnum; |
| 4 | import cn.iocoder.yudao.framework.common.validation.Mobile; | 4 | import cn.iocoder.yudao.framework.common.validation.Mobile; |
yudao-module-system/yudao-module-system-api/src/main/java/cn/iocoder/yudao/module/system/api/sms/dto/SmsCodeSendReqDTO.java renamed to yudao-module-system/yudao-module-system-api/src/main/java/cn/iocoder/yudao/module/system/api/sms/dto/code/SmsCodeSendReqDTO.java
| 1 | -package cn.iocoder.yudao.module.system.api.sms.dto; | 1 | +package cn.iocoder.yudao.module.system.api.sms.dto.code; |
| 2 | 2 | ||
| 3 | import cn.iocoder.yudao.framework.common.validation.InEnum; | 3 | import cn.iocoder.yudao.framework.common.validation.InEnum; |
| 4 | import cn.iocoder.yudao.framework.common.validation.Mobile; | 4 | import cn.iocoder.yudao.framework.common.validation.Mobile; |
yudao-module-system/yudao-module-system-api/src/main/java/cn/iocoder/yudao/module/system/api/sms/dto/SmsCodeUseReqDTO.java renamed to yudao-module-system/yudao-module-system-api/src/main/java/cn/iocoder/yudao/module/system/api/sms/dto/code/SmsCodeUseReqDTO.java
| 1 | -package cn.iocoder.yudao.module.system.api.sms.dto; | 1 | +package cn.iocoder.yudao.module.system.api.sms.dto.code; |
| 2 | 2 | ||
| 3 | import cn.iocoder.yudao.framework.common.validation.InEnum; | 3 | import cn.iocoder.yudao.framework.common.validation.InEnum; |
| 4 | import cn.iocoder.yudao.framework.common.validation.Mobile; | 4 | import cn.iocoder.yudao.framework.common.validation.Mobile; |
yudao-module-system/yudao-module-system-api/src/main/java/cn/iocoder/yudao/module/system/api/sms/dto/send/SmsSendSingleToUserReqDTO.java
0 → 100644
| 1 | +package cn.iocoder.yudao.module.system.api.sms.dto.send; | ||
| 2 | + | ||
| 3 | +import cn.iocoder.yudao.framework.common.validation.Mobile; | ||
| 4 | +import lombok.Data; | ||
| 5 | + | ||
| 6 | +import javax.validation.constraints.NotEmpty; | ||
| 7 | +import javax.validation.constraints.NotNull; | ||
| 8 | +import java.util.Map; | ||
| 9 | + | ||
| 10 | +/** | ||
| 11 | + * 短信发送给 Admin 或者 Member 用户 | ||
| 12 | + * | ||
| 13 | + * @author 芋道源码 | ||
| 14 | + */ | ||
| 15 | +@Data | ||
| 16 | +public class SmsSendSingleToUserReqDTO { | ||
| 17 | + | ||
| 18 | + /** | ||
| 19 | + * 用户编号 | ||
| 20 | + */ | ||
| 21 | + @NotNull(message = "用户编号不能为空") | ||
| 22 | + private Long userId; | ||
| 23 | + /** | ||
| 24 | + * 手机号 | ||
| 25 | + */ | ||
| 26 | + @Mobile | ||
| 27 | + private String mobile; | ||
| 28 | + /** | ||
| 29 | + * 短信模板编号 | ||
| 30 | + */ | ||
| 31 | + @NotEmpty(message = "短信模板编号不能为空") | ||
| 32 | + private String templateCode; | ||
| 33 | + /** | ||
| 34 | + * 短信模板参数 | ||
| 35 | + */ | ||
| 36 | + private Map<String, Object> templateParams; | ||
| 37 | + | ||
| 38 | +} |
yudao-module-system/yudao-module-system-api/src/main/java/cn/iocoder/yudao/module/system/api/user/AdminUserApi.java
0 → 100644
| 1 | +package cn.iocoder.yudao.module.system.api.user; | ||
| 2 | + | ||
| 3 | +import cn.iocoder.yudao.module.system.api.user.dto.AdminUserRespDTO; | ||
| 4 | + | ||
| 5 | +import java.util.Collection; | ||
| 6 | +import java.util.List; | ||
| 7 | +import java.util.Map; | ||
| 8 | +import java.util.Set; | ||
| 9 | + | ||
| 10 | +/** | ||
| 11 | + * Admin 用户 API 接口 | ||
| 12 | + * | ||
| 13 | + * @author 芋道源码 | ||
| 14 | + */ | ||
| 15 | +public interface AdminUserApi { | ||
| 16 | + | ||
| 17 | + /** | ||
| 18 | + * 通过用户 ID 查询用户 | ||
| 19 | + * | ||
| 20 | + * @param id 用户ID | ||
| 21 | + * @return 用户对象信息 | ||
| 22 | + */ | ||
| 23 | + AdminUserRespDTO getUser(Long id); | ||
| 24 | + | ||
| 25 | + /** | ||
| 26 | + * 获得指定部门的用户数组 | ||
| 27 | + * | ||
| 28 | + * @param deptIds 部门数组 | ||
| 29 | + * @return 用户数组 | ||
| 30 | + */ | ||
| 31 | + List<AdminUserRespDTO> getUsersByDeptIds(Collection<Long> deptIds); | ||
| 32 | + | ||
| 33 | + /** | ||
| 34 | + * 获得指定岗位的用户数组 | ||
| 35 | + * | ||
| 36 | + * @param postIds 岗位数组 | ||
| 37 | + * @return 用户数组 | ||
| 38 | + */ | ||
| 39 | + List<AdminUserRespDTO> getUsersByPostIds(Collection<Long> postIds); | ||
| 40 | + | ||
| 41 | + /** | ||
| 42 | + * 获得用户 Map | ||
| 43 | + * | ||
| 44 | + * @param ids 用户编号数组 | ||
| 45 | + * @return 用户 Map | ||
| 46 | + */ | ||
| 47 | + Map<Long, AdminUserRespDTO> getUserMap(Collection<Long> ids); | ||
| 48 | + | ||
| 49 | + /** | ||
| 50 | + * 校验用户们是否有效。如下情况,视为无效: | ||
| 51 | + * 1. 用户编号不存在 | ||
| 52 | + * 2. 用户被禁用 | ||
| 53 | + * | ||
| 54 | + * @param ids 用户编号数组 | ||
| 55 | + */ | ||
| 56 | + void validUsers(Set<Long> ids); | ||
| 57 | + | ||
| 58 | +} |
yudao-module-system/yudao-module-system-api/src/main/java/cn/iocoder/yudao/module/system/api/user/dto/AdminUserRespDTO.java
0 → 100644
| 1 | +package cn.iocoder.yudao.module.system.api.user.dto; | ||
| 2 | + | ||
| 3 | +import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum; | ||
| 4 | +import lombok.Data; | ||
| 5 | + | ||
| 6 | +import java.util.Set; | ||
| 7 | + | ||
| 8 | +/** | ||
| 9 | + * Admin 用户 Response DTO | ||
| 10 | + * | ||
| 11 | + * @author 芋道源码 | ||
| 12 | + */ | ||
| 13 | +@Data | ||
| 14 | +public class AdminUserRespDTO { | ||
| 15 | + | ||
| 16 | + /** | ||
| 17 | + * 用户ID | ||
| 18 | + */ | ||
| 19 | + private Long id; | ||
| 20 | + /** | ||
| 21 | + * 用户昵称 | ||
| 22 | + */ | ||
| 23 | + private String nickname; | ||
| 24 | + /** | ||
| 25 | + * 帐号状态 | ||
| 26 | + * | ||
| 27 | + * 枚举 {@link CommonStatusEnum} | ||
| 28 | + */ | ||
| 29 | + private Integer status; | ||
| 30 | + | ||
| 31 | + /** | ||
| 32 | + * 部门ID | ||
| 33 | + */ | ||
| 34 | + private Long deptId; | ||
| 35 | + /** | ||
| 36 | + * 岗位编号数组 | ||
| 37 | + */ | ||
| 38 | + private Set<Long> postIds; | ||
| 39 | + /** | ||
| 40 | + * 手机号码 | ||
| 41 | + */ | ||
| 42 | + private String mobile; | ||
| 43 | + | ||
| 44 | +} |
yudao-module-system/yudao-module-system-impl/src/main/java/cn/iocoder/yudao/module/system/api/dept/DeptApiImpl.java
0 → 100644
| 1 | +package cn.iocoder.yudao.module.system.api.dept; | ||
| 2 | + | ||
| 3 | +import cn.iocoder.yudao.module.system.api.dept.dto.DeptRespDTO; | ||
| 4 | +import cn.iocoder.yudao.module.system.convert.dept.DeptConvert; | ||
| 5 | +import cn.iocoder.yudao.module.system.dal.dataobject.dept.DeptDO; | ||
| 6 | +import cn.iocoder.yudao.module.system.service.dept.DeptService; | ||
| 7 | +import org.springframework.stereotype.Service; | ||
| 8 | + | ||
| 9 | +import javax.annotation.Resource; | ||
| 10 | +import java.util.Collection; | ||
| 11 | +import java.util.List; | ||
| 12 | +import java.util.Map; | ||
| 13 | +import java.util.Set; | ||
| 14 | + | ||
| 15 | +/** | ||
| 16 | + * 部门 API 实现类 | ||
| 17 | + * | ||
| 18 | + * @author 芋道源码 | ||
| 19 | + */ | ||
| 20 | +@Service | ||
| 21 | +public class DeptApiImpl implements DeptApi { | ||
| 22 | + | ||
| 23 | + @Resource | ||
| 24 | + private DeptService deptService; | ||
| 25 | + | ||
| 26 | + @Override | ||
| 27 | + public DeptRespDTO getDept(Long id) { | ||
| 28 | + DeptDO dept = deptService.getDept(id); | ||
| 29 | + return DeptConvert.INSTANCE.convert03(dept); | ||
| 30 | + } | ||
| 31 | + | ||
| 32 | + @Override | ||
| 33 | + public List<DeptRespDTO> getDepts(Collection<Long> ids) { | ||
| 34 | + List<DeptDO> depts = deptService.getDepts(ids); | ||
| 35 | + return DeptConvert.INSTANCE.convertList03(depts); | ||
| 36 | + } | ||
| 37 | + | ||
| 38 | + @Override | ||
| 39 | + public void validDepts(Collection<Long> ids) { | ||
| 40 | + deptService.validDepts(ids); | ||
| 41 | + } | ||
| 42 | + | ||
| 43 | + @Override | ||
| 44 | + public Map<Long, DeptRespDTO> getDeptMap(Set<Long> ids) { | ||
| 45 | + Map<Long, DeptDO> depts = deptService.getDeptMap(ids); | ||
| 46 | + return DeptConvert.INSTANCE.convertMap(depts); | ||
| 47 | + } | ||
| 48 | + | ||
| 49 | +} |
yudao-module-system/yudao-module-system-impl/src/main/java/cn/iocoder/yudao/module/system/api/permission/PermissionApiImpl.java
0 → 100644
| 1 | +package cn.iocoder.yudao.module.system.api.permission; | ||
| 2 | + | ||
| 3 | +import cn.iocoder.yudao.module.system.service.permission.PermissionService; | ||
| 4 | +import org.springframework.stereotype.Service; | ||
| 5 | + | ||
| 6 | +import javax.annotation.Resource; | ||
| 7 | +import java.util.Collection; | ||
| 8 | +import java.util.Set; | ||
| 9 | + | ||
| 10 | +/** | ||
| 11 | + * 权限 API 实现类 | ||
| 12 | + * | ||
| 13 | + * @author 芋道源码 | ||
| 14 | + */ | ||
| 15 | +@Service | ||
| 16 | +public class PermissionApiImpl implements PermissionApi { | ||
| 17 | + | ||
| 18 | + @Resource | ||
| 19 | + private PermissionService permissionService; | ||
| 20 | + | ||
| 21 | + @Override | ||
| 22 | + public Set<Long> getUserRoleIdListByRoleIds(Collection<Long> roleIds) { | ||
| 23 | + return permissionService.getUserRoleIdListByRoleIds(roleIds); | ||
| 24 | + } | ||
| 25 | + | ||
| 26 | +} |
yudao-module-system/yudao-module-system-impl/src/main/java/cn/iocoder/yudao/module/system/api/sms/SmsCodeApiImpl.java
| 1 | package cn.iocoder.yudao.module.system.api.sms; | 1 | package cn.iocoder.yudao.module.system.api.sms; |
| 2 | 2 | ||
| 3 | -import cn.iocoder.yudao.module.system.api.sms.dto.SmsCodeCheckReqDTO; | ||
| 4 | -import cn.iocoder.yudao.module.system.api.sms.dto.SmsCodeSendReqDTO; | ||
| 5 | -import cn.iocoder.yudao.module.system.api.sms.dto.SmsCodeUseReqDTO; | 3 | +import cn.iocoder.yudao.module.system.api.sms.dto.code.SmsCodeCheckReqDTO; |
| 4 | +import cn.iocoder.yudao.module.system.api.sms.dto.code.SmsCodeSendReqDTO; | ||
| 5 | +import cn.iocoder.yudao.module.system.api.sms.dto.code.SmsCodeUseReqDTO; | ||
| 6 | import cn.iocoder.yudao.module.system.service.sms.SmsCodeService; | 6 | import cn.iocoder.yudao.module.system.service.sms.SmsCodeService; |
| 7 | import org.springframework.stereotype.Service; | 7 | import org.springframework.stereotype.Service; |
| 8 | import org.springframework.validation.annotation.Validated; | 8 | import org.springframework.validation.annotation.Validated; |
yudao-module-system/yudao-module-system-impl/src/main/java/cn/iocoder/yudao/module/system/api/sms/SmsSendApiImpl.java
0 → 100644
| 1 | +package cn.iocoder.yudao.module.system.api.sms; | ||
| 2 | + | ||
| 3 | +import cn.iocoder.yudao.module.system.api.sms.dto.send.SmsSendSingleToUserReqDTO; | ||
| 4 | +import cn.iocoder.yudao.module.system.service.sms.SmsSendService; | ||
| 5 | +import org.springframework.stereotype.Service; | ||
| 6 | +import org.springframework.validation.annotation.Validated; | ||
| 7 | + | ||
| 8 | +import javax.annotation.Resource; | ||
| 9 | + | ||
| 10 | +/** | ||
| 11 | + * 短信发送 API 接口 | ||
| 12 | + * | ||
| 13 | + * @author 芋道源码 | ||
| 14 | + */ | ||
| 15 | +@Service | ||
| 16 | +@Validated | ||
| 17 | +public class SmsSendApiImpl implements SmsSendApi { | ||
| 18 | + | ||
| 19 | + @Resource | ||
| 20 | + private SmsSendService smsSendService; | ||
| 21 | + | ||
| 22 | + @Override | ||
| 23 | + public Long sendSingleSmsToAdmin(SmsSendSingleToUserReqDTO reqDTO) { | ||
| 24 | + return smsSendService.sendSingleSmsToAdmin(reqDTO.getMobile(), reqDTO.getUserId(), | ||
| 25 | + reqDTO.getTemplateCode(), reqDTO.getTemplateParams()); | ||
| 26 | + } | ||
| 27 | + | ||
| 28 | + @Override | ||
| 29 | + public Long sendSingleSmsToMember(SmsSendSingleToUserReqDTO reqDTO) { | ||
| 30 | + return smsSendService.sendSingleSmsToMember(reqDTO.getMobile(), reqDTO.getUserId(), | ||
| 31 | + reqDTO.getTemplateCode(), reqDTO.getTemplateParams()); | ||
| 32 | + } | ||
| 33 | + | ||
| 34 | +} |
yudao-module-system/yudao-module-system-impl/src/main/java/cn/iocoder/yudao/module/system/api/user/AdminUserApiImpl.java
0 → 100644
| 1 | +package cn.iocoder.yudao.module.system.api.user; | ||
| 2 | + | ||
| 3 | +import cn.iocoder.yudao.module.system.api.user.dto.AdminUserRespDTO; | ||
| 4 | +import cn.iocoder.yudao.module.system.convert.user.UserConvert; | ||
| 5 | +import cn.iocoder.yudao.module.system.dal.dataobject.user.AdminUserDO; | ||
| 6 | +import cn.iocoder.yudao.module.system.service.user.AdminUserService; | ||
| 7 | +import org.springframework.stereotype.Service; | ||
| 8 | + | ||
| 9 | +import javax.annotation.Resource; | ||
| 10 | +import java.util.Collection; | ||
| 11 | +import java.util.List; | ||
| 12 | +import java.util.Map; | ||
| 13 | +import java.util.Set; | ||
| 14 | + | ||
| 15 | +/** | ||
| 16 | + * Admin 用户 API 实现类 | ||
| 17 | + * | ||
| 18 | + * @author 芋道源码 | ||
| 19 | + */ | ||
| 20 | +@Service | ||
| 21 | +public class AdminUserApiImpl implements AdminUserApi { | ||
| 22 | + | ||
| 23 | + @Resource | ||
| 24 | + private AdminUserService userService; | ||
| 25 | + | ||
| 26 | + @Override | ||
| 27 | + public AdminUserRespDTO getUser(Long id) { | ||
| 28 | + AdminUserDO user = userService.getUser(id); | ||
| 29 | + return UserConvert.INSTANCE.convert4(user); | ||
| 30 | + } | ||
| 31 | + | ||
| 32 | + @Override | ||
| 33 | + public List<AdminUserRespDTO> getUsersByDeptIds(Collection<Long> deptIds) { | ||
| 34 | + List<AdminUserDO> users = userService.getUsersByDeptIds(deptIds); | ||
| 35 | + return UserConvert.INSTANCE.convertList4(users); | ||
| 36 | + } | ||
| 37 | + | ||
| 38 | + @Override | ||
| 39 | + public List<AdminUserRespDTO> getUsersByPostIds(Collection<Long> postIds) { | ||
| 40 | + List<AdminUserDO> users = userService.getUsersByPostIds(postIds); | ||
| 41 | + return UserConvert.INSTANCE.convertList4(users); | ||
| 42 | + } | ||
| 43 | + | ||
| 44 | + @Override | ||
| 45 | + public Map<Long, AdminUserRespDTO> getUserMap(Collection<Long> ids) { | ||
| 46 | + Map<Long, AdminUserDO> userMap = userService.getUserMap(ids); | ||
| 47 | + return UserConvert.INSTANCE.convertMap4(userMap); | ||
| 48 | + } | ||
| 49 | + | ||
| 50 | + @Override | ||
| 51 | + public void validUsers(Set<Long> ids) { | ||
| 52 | + userService.validUsers(ids); | ||
| 53 | + } | ||
| 54 | + | ||
| 55 | +} |
yudao-module-system/yudao-module-system-impl/src/main/java/cn/iocoder/yudao/module/system/convert/dept/DeptConvert.java
| 1 | package cn.iocoder.yudao.module.system.convert.dept; | 1 | package cn.iocoder.yudao.module.system.convert.dept; |
| 2 | 2 | ||
| 3 | +import cn.iocoder.yudao.module.system.api.dept.dto.DeptRespDTO; | ||
| 3 | import cn.iocoder.yudao.module.system.controller.admin.dept.vo.dept.DeptCreateReqVO; | 4 | import cn.iocoder.yudao.module.system.controller.admin.dept.vo.dept.DeptCreateReqVO; |
| 4 | import cn.iocoder.yudao.module.system.controller.admin.dept.vo.dept.DeptRespVO; | 5 | import cn.iocoder.yudao.module.system.controller.admin.dept.vo.dept.DeptRespVO; |
| 5 | import cn.iocoder.yudao.module.system.controller.admin.dept.vo.dept.DeptSimpleRespVO; | 6 | import cn.iocoder.yudao.module.system.controller.admin.dept.vo.dept.DeptSimpleRespVO; |
| @@ -9,6 +10,7 @@ import org.mapstruct.Mapper; | @@ -9,6 +10,7 @@ import org.mapstruct.Mapper; | ||
| 9 | import org.mapstruct.factory.Mappers; | 10 | import org.mapstruct.factory.Mappers; |
| 10 | 11 | ||
| 11 | import java.util.List; | 12 | import java.util.List; |
| 13 | +import java.util.Map; | ||
| 12 | 14 | ||
| 13 | @Mapper | 15 | @Mapper |
| 14 | public interface DeptConvert { | 16 | public interface DeptConvert { |
| @@ -25,4 +27,10 @@ public interface DeptConvert { | @@ -25,4 +27,10 @@ public interface DeptConvert { | ||
| 25 | 27 | ||
| 26 | DeptDO convert(DeptUpdateReqVO bean); | 28 | DeptDO convert(DeptUpdateReqVO bean); |
| 27 | 29 | ||
| 30 | + List<DeptRespDTO> convertList03(List<DeptDO> list); | ||
| 31 | + | ||
| 32 | + DeptRespDTO convert03(DeptDO bean); | ||
| 33 | + | ||
| 34 | + Map<Long, DeptRespDTO> convertMap(Map<Long, DeptDO> map); | ||
| 35 | + | ||
| 28 | } | 36 | } |
yudao-module-system/yudao-module-system-impl/src/main/java/cn/iocoder/yudao/module/system/convert/user/UserConvert.java
| 1 | package cn.iocoder.yudao.module.system.convert.user; | 1 | package cn.iocoder.yudao.module.system.convert.user; |
| 2 | 2 | ||
| 3 | +import cn.iocoder.yudao.module.system.api.user.dto.AdminUserRespDTO; | ||
| 3 | import cn.iocoder.yudao.module.system.controller.admin.user.vo.profile.UserProfileRespVO; | 4 | import cn.iocoder.yudao.module.system.controller.admin.user.vo.profile.UserProfileRespVO; |
| 4 | import cn.iocoder.yudao.module.system.controller.admin.user.vo.profile.UserProfileUpdatePasswordReqVO; | 5 | import cn.iocoder.yudao.module.system.controller.admin.user.vo.profile.UserProfileUpdatePasswordReqVO; |
| 5 | import cn.iocoder.yudao.module.system.controller.admin.user.vo.profile.UserProfileUpdateReqVO; | 6 | import cn.iocoder.yudao.module.system.controller.admin.user.vo.profile.UserProfileUpdateReqVO; |
| @@ -13,6 +14,7 @@ import org.mapstruct.Mapper; | @@ -13,6 +14,7 @@ import org.mapstruct.Mapper; | ||
| 13 | import org.mapstruct.factory.Mappers; | 14 | import org.mapstruct.factory.Mappers; |
| 14 | 15 | ||
| 15 | import java.util.List; | 16 | import java.util.List; |
| 17 | +import java.util.Map; | ||
| 16 | 18 | ||
| 17 | @Mapper | 19 | @Mapper |
| 18 | public interface UserConvert { | 20 | public interface UserConvert { |
| @@ -46,4 +48,11 @@ public interface UserConvert { | @@ -46,4 +48,11 @@ public interface UserConvert { | ||
| 46 | List<UserProfileRespVO.SocialUser> convertList03(List<SocialUserDO> list); | 48 | List<UserProfileRespVO.SocialUser> convertList03(List<SocialUserDO> list); |
| 47 | 49 | ||
| 48 | List<UserSimpleRespVO> convertList04(List<AdminUserDO> list); | 50 | List<UserSimpleRespVO> convertList04(List<AdminUserDO> list); |
| 51 | + | ||
| 52 | + AdminUserRespDTO convert4(AdminUserDO bean); | ||
| 53 | + | ||
| 54 | + List<AdminUserRespDTO> convertList4(List<AdminUserDO> users); | ||
| 55 | + | ||
| 56 | + Map<Long, AdminUserRespDTO> convertMap4(Map<Long, AdminUserDO> map); | ||
| 57 | + | ||
| 49 | } | 58 | } |
yudao-module-system/yudao-module-system-impl/src/main/java/cn/iocoder/yudao/module/system/service/dept/DeptService.java