Commit 72fd34f3 by 赵剑炜

添加rabbitMQ依赖

parent 8fb72920
/jyzb-process/target /jyzb-process/target
/jyzb-api/target/
/jyzb-biz/target/
/jyzb-process/target/
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
<version>1.0.0</version> <version>1.0.0</version>
<properties> <properties>
<mysql.version>8.0.21</mysql.version> <mysql.version>8.0.21</mysql.version>
<flowable.version>6.7.2</flowable.version> <flowable.version>6.7.2</flowable.version>
<hutool-all.version>5.8.0</hutool-all.version> <hutool-all.version>5.8.0</hutool-all.version>
<mybatis-plus.vesion>3.5.1</mybatis-plus.vesion> <mybatis-plus.vesion>3.5.1</mybatis-plus.vesion>
...@@ -26,10 +27,38 @@ ...@@ -26,10 +27,38 @@
</properties> </properties>
<dependencies> <dependencies>
<!-- rabbitmq依赖 -->
<dependency>
<groupId>com.rabbitmq</groupId>
<artifactId>amqp-client</artifactId>
<version>5.9.0</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.7.25</version>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.3.2</version>
</dependency>
<!-- 整合到spring项目需要导入此依赖 -->
<dependency>
<groupId>org.springframework.amqp</groupId>
<artifactId>spring-rabbit</artifactId>
<version>2.3.10</version>
</dependency>
<dependency> <dependency>
<groupId>com.fasterxml.jackson.core</groupId> <groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId> <artifactId>jackson-core</artifactId>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.fasterxml.jackson.module</groupId> <groupId>com.fasterxml.jackson.module</groupId>
<artifactId>jackson-module-jaxb-annotations</artifactId> <artifactId>jackson-module-jaxb-annotations</artifactId>
...@@ -39,6 +68,12 @@ ...@@ -39,6 +68,12 @@
<artifactId>lombok</artifactId> <artifactId>lombok</artifactId>
<version>${lombok.version}</version> <version>${lombok.version}</version>
</dependency> </dependency>
<!-- <dependency>-->
<!-- <groupId>org.springframework.amqp</groupId>-->
<!-- <artifactId>spring-rabbit-test</artifactId>-->
<!-- <scope>test</scope>-->
<!-- </dependency>-->
<dependency> <dependency>
<groupId>org.springframework</groupId> <groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId> <artifactId>spring-web</artifactId>
...@@ -47,6 +82,7 @@ ...@@ -47,6 +82,7 @@
<groupId>org.springframework.boot</groupId> <groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId> <artifactId>spring-boot-starter-data-redis</artifactId>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.springframework.boot</groupId> <groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-configuration-processor</artifactId> <artifactId>spring-boot-configuration-processor</artifactId>
...@@ -57,6 +93,8 @@ ...@@ -57,6 +93,8 @@
<groupId>mysql</groupId> <groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId> <artifactId>mysql-connector-java</artifactId>
<version>${mysql.version}</version> <version>${mysql.version}</version>
</dependency> </dependency>
<!-- JSON 解析器和生成器 --> <!-- JSON 解析器和生成器 -->
<dependency> <dependency>
......
package com.junmp.junmpProcess.common;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
@Transactional
public class RabbitMqProducer {
// @Autowired
// RabbitTemplate rabbitTemplate;
}
package com.junmp.junmpProcess.config;
import com.junmp.junmpProcess.listener.GlobalEndListener;
import org.flowable.common.engine.api.delegate.event.FlowableEngineEventType;
import org.flowable.common.engine.api.delegate.event.FlowableEventDispatcher;
import org.flowable.spring.SpringProcessEngineConfiguration;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.ApplicationListener;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.event.ContextRefreshedEvent;
@Configuration
public class FlowableGlobListenerConfig implements ApplicationListener<ContextRefreshedEvent> {
@Autowired
private SpringProcessEngineConfiguration configuration;
@Autowired
private GlobalEndListener endListener;
@Override
public void onApplicationEvent(ContextRefreshedEvent event) {
FlowableEventDispatcher dispatcher = configuration.getEventDispatcher();
//任务创建全局监听
// dispatcher.addEventListener(endListener, FlowableEngineEventType.TASK_COMPLETED);
// dispatcher.addEventListener(endListener, FlowableEngineEventType.TASK_CREATED);
dispatcher.addEventListener(endListener, FlowableEngineEventType.PROCESS_COMPLETED);
}
}
...@@ -15,9 +15,5 @@ public class UserListDTO implements Serializable { ...@@ -15,9 +15,5 @@ public class UserListDTO implements Serializable {
private String userID; private String userID;
@ApiModelProperty @ApiModelProperty
private String realName; private String realName;
@ApiModelProperty
private String roleName;
@ApiModelProperty
private String roleID;
} }
...@@ -10,4 +10,5 @@ public class ApproverGroups { ...@@ -10,4 +10,5 @@ public class ApproverGroups {
private String levelMode; private String levelMode;
private List<String> approverIds; private List<String> approverIds;
private List<String> approverNames; private List<String> approverNames;
private List<String> orgIds;
} }
...@@ -74,18 +74,66 @@ public class CounterSignListener implements ExecutionListener { ...@@ -74,18 +74,66 @@ public class CounterSignListener implements ExecutionListener {
else if (Type.equals("2"))//指定角色 else if (Type.equals("2"))//指定角色
{ {
List<String> Roles=group.getApproverIds(); List<String> Roles=group.getApproverIds();
for (String role :Roles if (Roles.size()>0)//角色不为空
) { {
List<UserListDTO> userList=orgUserMapper.QueryUserByRoleId(role); //开始拼接传入的多角色
String roleList="(";
for (String role :Roles)
{
roleList+=role+",";
}
roleList = roleList.substring(0, roleList.length() - 1);
roleList+=")";//至此拼接完成
List<UserListDTO> userList=orgUserMapper.QueryUserByRoleId(roleList);
for (UserListDTO userId :userList) for (UserListDTO userId :userList)
{ {
assigneeList.add(userId.getUserID()); assigneeList.add(userId.getUserID());
} }
} }
} }
else if (Type.equals("3"))//指定组织机构中的角色 else if (Type.equals("3"))//指定组织机构中的角色
{} {
// List<UserListDTO> userList=orgUserMapper.QueryUserByRoleIdAndOrg(role);
List<String> Roles=group.getApproverIds();
List<String> Orgs=group.getOrgIds();
if (Roles.size()>0&&Orgs.size()>0)//角色不为空,组织机构不为空
{
//开始拼接传入的多角色
String roleList="(";
for (String role :Roles)
{
roleList+=role+",";
}
roleList = roleList.substring(0, roleList.length() - 1);
roleList+=")";//至此拼接完成
//开始拼接传入的多组织机构
String orgList="(";
for (String org :Orgs)
{
orgList+=org+",";
}
orgList = orgList.substring(0, orgList.length() - 1);
orgList+=")";//至此拼接完成
List<UserListDTO> userList=orgUserMapper.QueryUserByRoleIdAndOrg(roleList,orgList);
for (UserListDTO userId :userList)
{
assigneeList.add(userId.getUserID());
}
}
}
if (assigneeList.size()!=0) if (assigneeList.size()!=0)
{execution.setVariable(variable, assigneeList);} {execution.setVariable(variable, assigneeList);}
......
package com.junmp.junmpProcess.listener;
import org.flowable.common.engine.api.delegate.event.FlowableEngineEntityEvent;
import org.flowable.common.engine.api.delegate.event.FlowableEngineEventType;
import org.flowable.common.engine.impl.event.FlowableEntityEventImpl;
import org.flowable.engine.delegate.event.AbstractFlowableEngineEventListener;
import org.flowable.task.service.impl.persistence.entity.TaskEntity;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Component;
@Component
public class GlobalEndListener extends AbstractFlowableEngineEventListener {
protected Logger logger = LoggerFactory.getLogger(this.getClass());
/**
* @Author: Zhaojw
* @Description: 流程结束监听
* @DateTime: 2023/6/27 13:21
* @Params:
* @Return
*/
@Override
protected void processCompleted(FlowableEngineEntityEvent event) {
//流程结束后工作在这里写
//得到流程定义id
String processDefinitionId = event.getProcessDefinitionId();
//得到流程实例id
String processInstanceId = event.getProcessInstanceId();
}
}
...@@ -19,14 +19,12 @@ public interface OrgUserMapper { ...@@ -19,14 +19,12 @@ public interface OrgUserMapper {
*/ */
public List<UserListDTO> QueryUserByRoleId(String roleId); public List<UserListDTO> QueryUserByRoleId(String roleId);
/**
// @Override * @Author: Zhaojw
// public RoleUserDto queryUserByRoleId(Long roleId) { * @Description:根据组织机构和角色查找所有相关用户
// return null; * @DateTime: 2023/6/27 13:50
// } * @Params:
// * @Return
// @Override */
// public List<QueryUserInfoVo> queryUserByRoleAndOrg(Long roleId, Long orgId) { public List<UserListDTO> QueryUserByRoleIdAndOrg(String roleId,String orgId);
// return null;
// }
} }
...@@ -6,12 +6,18 @@ ...@@ -6,12 +6,18 @@
<!--@Table base_cabinet--> <!--@Table base_cabinet-->
<result column="user_id" jdbcType="VARCHAR" property="userID" /> <result column="user_id" jdbcType="VARCHAR" property="userID" />
<result column="real_name" jdbcType="VARCHAR" property="realName" /> <result column="real_name" jdbcType="VARCHAR" property="realName" />
<result column="role_name" jdbcType="VARCHAR" property="roleName" />
<result column="role_id" jdbcType="VARCHAR" property="roleID" />
</resultMap> </resultMap>
<select id="QueryUserByRoleId" resultMap="UserListDTO"> <select id="QueryUserByRoleId" resultMap="UserListDTO">
SELECT su.user_id,su.real_name,sr.role_name,sr.role_id FROM `sys_role` sr left join sys_user_role sur on sr.role_id=sur.role_id LEFT JOIN sys_user su on sur.user_id=su.user_id SELECT su.user_id,su.real_name FROM `sys_role` sr join sys_user_role sur on sr.role_id=sur.role_id JOIN sys_user su on sur.user_id=su.user_id
where sr.role_id=#{roleId} where sr.role_id in ${roleId}
GROUP BY su.user_id,su.real_name
</select>
<select id="QueryUserByRoleIdAndOrg" resultMap="UserListDTO">
SELECT su.user_id,su.real_name FROM `sys_role` sr join sys_user_role sur on sr.role_id=sur.role_id JOIN sys_user su on sur.user_id=su.user_id
join sys_user_org suo on suo.user_id=su.user_id join pub_org po on po.org_id=suo.org_id
where sr.role_id in ${roleId} and po.org_id in ${orgId}
GROUP BY su.user_id,su.real_name
</select> </select>
</mapper> </mapper>
\ No newline at end of file
...@@ -92,7 +92,6 @@ ...@@ -92,7 +92,6 @@
<version>${p6spy.version}</version> <version>${p6spy.version}</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.slf4j</groupId> <groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId> <artifactId>slf4j-api</artifactId>
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论