[新增] 工作流工作台 及权限申请流程
This commit is contained in:
@@ -329,7 +329,7 @@ public class ReportManageConroller {
|
|||||||
* @throws ParseException
|
* @throws ParseException
|
||||||
*/
|
*/
|
||||||
@ApiOperation("添加报告")
|
@ApiOperation("添加报告")
|
||||||
@GetMapping("/addReportPage")
|
@PostMapping("/addReportPage")
|
||||||
public ResponseMessage addReportPage(@RequestBody ReportQueryVo vo) throws Exception {
|
public ResponseMessage addReportPage(@RequestBody ReportQueryVo vo) throws Exception {
|
||||||
IPage<ReportVo> reportVoIPage = reportService.addReportPage(vo);
|
IPage<ReportVo> reportVoIPage = reportService.addReportPage(vo);
|
||||||
return Result.success(reportVoIPage);
|
return Result.success(reportVoIPage);
|
||||||
|
|||||||
@@ -42,4 +42,7 @@ public interface PowerApplyActDao extends BaseMapper<PowerApplyAct> {
|
|||||||
* @description 列表查询
|
* @description 列表查询
|
||||||
*/
|
*/
|
||||||
List<PowerApplyAct> queryList(@Param("pageVO") PowerApplyActPageVO powerApplyActPageVO);
|
List<PowerApplyAct> queryList(@Param("pageVO") PowerApplyActPageVO powerApplyActPageVO);
|
||||||
|
|
||||||
|
int batchInsert(@Param("list")List<PowerApplyAct> powerApplyActs);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -48,10 +48,12 @@ public class PowerApply {
|
|||||||
private String userId;
|
private String userId;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 申请原因
|
* 权限 1 预览
|
||||||
|
* 2 预览 + 下载
|
||||||
*/
|
*/
|
||||||
@TableField("power")
|
@TableField("power")
|
||||||
private Integer power;
|
private Integer power;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 创建人id
|
* 创建人id
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -42,11 +42,24 @@ public class PowerApplyAct {
|
|||||||
private String dataId;
|
private String dataId;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 报告名称
|
* 报告id
|
||||||
*/
|
*/
|
||||||
@TableField("report_id")
|
@TableField("report_id")
|
||||||
private String reportId;
|
private String reportId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 权限 1 预览
|
||||||
|
* 2 预览 + 下载
|
||||||
|
*/
|
||||||
|
@TableField("power")
|
||||||
|
private Integer power;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 申请原因
|
||||||
|
*/
|
||||||
|
@TableField("apply_reason")
|
||||||
|
private String applyReason;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 申请人
|
* 申请人
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -24,11 +24,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
import io.swagger.models.auth.In;
|
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
|
||||||
|
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.beans.factory.annotation.Value;
|
import org.springframework.beans.factory.annotation.Value;
|
||||||
import org.springframework.data.redis.core.StringRedisTemplate;
|
import org.springframework.data.redis.core.StringRedisTemplate;
|
||||||
@@ -38,7 +34,6 @@ import org.springframework.transaction.annotation.Transactional;
|
|||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
import java.io.FileInputStream;
|
import java.io.FileInputStream;
|
||||||
import java.io.FileOutputStream;
|
import java.io.FileOutputStream;
|
||||||
import java.io.OutputStream;
|
|
||||||
import java.text.SimpleDateFormat;
|
import java.text.SimpleDateFormat;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
@@ -354,14 +349,14 @@ public class IReportServiceImpl extends ServiceImpl<ReportDao, ReportEntity>
|
|||||||
page.setSize(vo.getPageSize());
|
page.setSize(vo.getPageSize());
|
||||||
|
|
||||||
//判断是不是管理员
|
//判断是不是管理员
|
||||||
boolean admin = CommonUtils.isAdmin();
|
// boolean admin = CommonUtils.isAdmin();
|
||||||
if (admin) {
|
// if (admin) {
|
||||||
vo.setUsid(null);
|
// vo.setUsid(null);
|
||||||
} else {
|
// } else {
|
||||||
vo.setUsid(CommonUtils.getUserId());
|
// vo.setUsid(CommonUtils.getUserId());
|
||||||
}
|
// }
|
||||||
|
|
||||||
|
|
||||||
|
vo.setUsid(CommonUtils.getUserId());
|
||||||
IPage<ReportVo> list = reportDao.getAddReportPage(page, vo);
|
IPage<ReportVo> list = reportDao.getAddReportPage(page, vo);
|
||||||
|
|
||||||
return list;
|
return list;
|
||||||
|
|||||||
@@ -46,4 +46,6 @@ public class ReportQueryVo {
|
|||||||
*/
|
*/
|
||||||
private String usid;
|
private String usid;
|
||||||
|
|
||||||
|
private List<String> ids;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -15,6 +15,8 @@
|
|||||||
<result column="update_date" property="updateDate" />
|
<result column="update_date" property="updateDate" />
|
||||||
<result column="update_user_id" property="updateUserId" />
|
<result column="update_user_id" property="updateUserId" />
|
||||||
<result column="del_flag" property="delFlag" />
|
<result column="del_flag" property="delFlag" />
|
||||||
|
<result column="power" property="power" />
|
||||||
|
<result column="apply_reason" property="applyReason" />
|
||||||
</resultMap>
|
</resultMap>
|
||||||
|
|
||||||
<!--表名信息-->
|
<!--表名信息-->
|
||||||
@@ -24,14 +26,13 @@
|
|||||||
|
|
||||||
<!-- 通用查询结果列 -->
|
<!-- 通用查询结果列 -->
|
||||||
<sql id="BaseColumnList">
|
<sql id="BaseColumnList">
|
||||||
id,
|
id, prc_id, task_id, data_id, report_id, power, apply_reason, user_id, create_user_id, create_date, update_date, update_user_id, del_flag
|
||||||
prc_id, task_id, data_id,user_id,report_id,create_user_id,create_date,update_date,update_user_id,del_flag
|
|
||||||
</sql>
|
</sql>
|
||||||
|
|
||||||
<!-- 查询条件 -->
|
<!-- 查询条件 -->
|
||||||
<sql id="BaseQuerySql">
|
<sql id="BaseQuerySql">
|
||||||
<where>
|
<where>
|
||||||
AND del = '${@com.adc.da.sys.constant.YesOrNoEnum@NO.value}'
|
AND del_flag = '${@com.adc.da.sys.constant.YesOrNoEnum@NO.value}'
|
||||||
<if test="pageVO != null">
|
<if test="pageVO != null">
|
||||||
<if test="pageVO.prcId !=null and pageVO.prcId !=''">
|
<if test="pageVO.prcId !=null and pageVO.prcId !=''">
|
||||||
AND prc_id LIKE CONCAT(CONCAT('%',#{pageVO.prcId}),'%')
|
AND prc_id LIKE CONCAT(CONCAT('%',#{pageVO.prcId}),'%')
|
||||||
@@ -52,6 +53,15 @@
|
|||||||
</where>
|
</where>
|
||||||
</sql>
|
</sql>
|
||||||
|
|
||||||
|
<insert id="batchInsert" parameterType="java.util.List">
|
||||||
|
insert into power_apply_act (id, prc_id, task_id, data_id, report_id, power, apply_reason, user_id, create_user_id, create_date, update_date, update_user_id, del_flag)
|
||||||
|
values
|
||||||
|
<foreach collection="list" item="item" separator=",">
|
||||||
|
(#{item.id}, #{item.prcId}, #{item.taskId}, #{item.dataId}, #{item.reportId}, #{item.power}, #{item.applyReason}, #{item.userId}, #{item.createUserId}, #{item.createDate}, #{item.updateDate}, #{item.updateUserId}, #{item.delFlag})
|
||||||
|
</foreach>
|
||||||
|
</insert>
|
||||||
|
|
||||||
|
|
||||||
<!-- 根据查询VO进行分页查询 -->
|
<!-- 根据查询VO进行分页查询 -->
|
||||||
<select id="selectPage" resultMap="BaseResultMap">
|
<select id="selectPage" resultMap="BaseResultMap">
|
||||||
SELECT
|
SELECT
|
||||||
|
|||||||
@@ -13,6 +13,8 @@
|
|||||||
<result column="update_date" property="updateDate" />
|
<result column="update_date" property="updateDate" />
|
||||||
<result column="update_user_id" property="updateUserId" />
|
<result column="update_user_id" property="updateUserId" />
|
||||||
<result column="del_flag" property="delFlag" />
|
<result column="del_flag" property="delFlag" />
|
||||||
|
<result column="power" property="power" />
|
||||||
|
<result column="apply_reason" property="applyReason" />
|
||||||
</resultMap>
|
</resultMap>
|
||||||
|
|
||||||
<!--表名信息-->
|
<!--表名信息-->
|
||||||
@@ -22,8 +24,7 @@
|
|||||||
|
|
||||||
<!-- 通用查询结果列 -->
|
<!-- 通用查询结果列 -->
|
||||||
<sql id="BaseColumnList">
|
<sql id="BaseColumnList">
|
||||||
id,
|
id,data_id, report_id, power, apply_reason, user_id, create_user_id, create_date, update_date, update_user_id, del_flag
|
||||||
data_id,report_id,user_id,create_user_id,create_date,update_date,update_user_id,del_flag
|
|
||||||
</sql>
|
</sql>
|
||||||
|
|
||||||
<!-- 查询条件 -->
|
<!-- 查询条件 -->
|
||||||
|
|||||||
@@ -141,7 +141,13 @@
|
|||||||
#{id}
|
#{id}
|
||||||
</foreach>
|
</foreach>
|
||||||
</if>
|
</if>
|
||||||
|
<!--id搜索-->
|
||||||
|
<if test="Vo.ids !=null and Vo.ids.size() > 0">
|
||||||
|
and Vo.ids in
|
||||||
|
<foreach collection="Vo.ids" item="id" open="(" separator="," close=")">
|
||||||
|
#{id}
|
||||||
|
</foreach>
|
||||||
|
</if>
|
||||||
|
|
||||||
<!--用户搜索-->
|
<!--用户搜索-->
|
||||||
<if test="Vo.usid != null and Vo.usid != ''">
|
<if test="Vo.usid != null and Vo.usid != ''">
|
||||||
@@ -164,11 +170,28 @@
|
|||||||
|
|
||||||
|
|
||||||
<select id="getAddReportPage" resultType="com.adc.da.report.vo.ReportVo">
|
<select id="getAddReportPage" resultType="com.adc.da.report.vo.ReportVo">
|
||||||
select * from TT_REPORT_MANAGE
|
SELECT a.*
|
||||||
|
from (
|
||||||
|
select * from TT_REPORT_MANAGE eo
|
||||||
|
LEFT JOIN tr_report_user ru on eo.id = ru.reportId
|
||||||
|
WHERE eo.DEL_FLAG = 0 and ru.userId != #{pageVO.usid}
|
||||||
|
|
||||||
|
<if test="pageVO.name !='' and pageVO.name != null">
|
||||||
|
and name like CONCAT(CONCAT('%',#{pageVO.name}),'%')
|
||||||
|
</if>
|
||||||
|
<!--年份搜索-->
|
||||||
|
<if test="pageVO.year != null and pageVO.year.size() > 0">
|
||||||
|
and year in
|
||||||
|
<foreach collection="pageVO.year" item="year" open="(" separator="," close=")">
|
||||||
|
#{year}
|
||||||
|
</foreach>
|
||||||
|
</if>
|
||||||
|
) a
|
||||||
|
|
||||||
|
LEFT JOIN power_apply pa on pa.report_id = a.id
|
||||||
|
where
|
||||||
|
pa.user_id is null or pa.user_id != #{pageVO.usid}
|
||||||
|
|
||||||
<where>
|
|
||||||
del = 0
|
|
||||||
</where>
|
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
@@ -141,7 +141,13 @@
|
|||||||
#{id}
|
#{id}
|
||||||
</foreach>
|
</foreach>
|
||||||
</if>
|
</if>
|
||||||
|
<!--id搜索-->
|
||||||
|
<if test="Vo.ids !=null and Vo.ids.size() > 0">
|
||||||
|
and Vo.ids in
|
||||||
|
<foreach collection="Vo.ids" item="id" open="(" separator="," close=")">
|
||||||
|
#{id}
|
||||||
|
</foreach>
|
||||||
|
</if>
|
||||||
|
|
||||||
<!--用户搜索-->
|
<!--用户搜索-->
|
||||||
<if test="Vo.usid != null and Vo.usid != ''">
|
<if test="Vo.usid != null and Vo.usid != ''">
|
||||||
@@ -164,11 +170,28 @@
|
|||||||
|
|
||||||
|
|
||||||
<select id="getAddReportPage" resultType="com.adc.da.report.vo.ReportVo">
|
<select id="getAddReportPage" resultType="com.adc.da.report.vo.ReportVo">
|
||||||
select * from TT_REPORT_MANAGE
|
SELECT a.*
|
||||||
|
from (
|
||||||
|
select * from TT_REPORT_MANAGE eo
|
||||||
|
LEFT JOIN tr_report_user ru on eo.id = ru.reportId
|
||||||
|
WHERE eo.DEL_FLAG = 0 and ru.userId != #{pageVO.usid}
|
||||||
|
|
||||||
|
<if test="pageVO.name !='' and pageVO.name != null">
|
||||||
|
and name like CONCAT(CONCAT('%',#{pageVO.name}),'%')
|
||||||
|
</if>
|
||||||
|
<!--年份搜索-->
|
||||||
|
<if test="pageVO.year != null and pageVO.year.size() > 0">
|
||||||
|
and year in
|
||||||
|
<foreach collection="pageVO.year" item="year" open="(" separator="," close=")">
|
||||||
|
#{year}
|
||||||
|
</foreach>
|
||||||
|
</if>
|
||||||
|
) a
|
||||||
|
|
||||||
|
LEFT JOIN power_apply pa on pa.report_id = a.id
|
||||||
|
where
|
||||||
|
pa.user_id is null or pa.user_id != #{pageVO.usid}
|
||||||
|
|
||||||
<where>
|
|
||||||
del = 0
|
|
||||||
</where>
|
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|||||||
@@ -163,6 +163,29 @@
|
|||||||
#{id}
|
#{id}
|
||||||
</foreach>
|
</foreach>
|
||||||
</select>
|
</select>
|
||||||
|
<select id="getUserEoById" resultType="com.adc.da.sys.entity.UserEO">
|
||||||
|
select
|
||||||
|
users.usid,
|
||||||
|
users.usname,
|
||||||
|
users.account,
|
||||||
|
r.id as r_id,
|
||||||
|
r.data_scope as r_data_scope,
|
||||||
|
r.del_flag as r_delFlag,
|
||||||
|
r.is_default as r_is_default,
|
||||||
|
r.name as r_name,
|
||||||
|
o.id as o_id,
|
||||||
|
o.org_code as o_org_code,
|
||||||
|
o.org_name as o_org_name,
|
||||||
|
o.sup_org_code as o_sup_org_code,
|
||||||
|
o.bmdm_14 as o_bmdm14
|
||||||
|
from TS_USER users
|
||||||
|
left join TR_USER_ROLE ur on users.usid = ur.user_id
|
||||||
|
left join TS_ROLE r on ur.role_id = r.id
|
||||||
|
left join TR_USER_ORG uo on users.usid = uo.user_id
|
||||||
|
left join TS_ORG o on uo.org_id = o.id
|
||||||
|
where users.del_flag != 1
|
||||||
|
and users.usid = #{usid}
|
||||||
|
</select>
|
||||||
|
|
||||||
|
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|||||||
+34
-12
@@ -1,10 +1,13 @@
|
|||||||
package com.adc.da.wkflow.business_activiti.define;
|
package com.adc.da.wkflow.business_activiti.define;
|
||||||
|
|
||||||
import cn.hutool.core.util.StrUtil;
|
import cn.hutool.core.util.StrUtil;
|
||||||
|
import com.adc.da.login.util.UserUtils;
|
||||||
import com.adc.da.sys.entity.UserEO;
|
import com.adc.da.sys.entity.UserEO;
|
||||||
import com.adc.da.sys.service.iservice.IUserEoService;
|
import com.adc.da.sys.service.iservice.IUserEoService;
|
||||||
import com.adc.da.wkflow.business_activiti.service.ActivitDefineService;
|
import com.adc.da.wkflow.business_activiti.service.ActivitDefineService;
|
||||||
|
import com.adc.da.wkflow.business_main.entity.BusProcessApprove;
|
||||||
import com.adc.da.wkflow.business_main.entity.BusProcessName;
|
import com.adc.da.wkflow.business_main.entity.BusProcessName;
|
||||||
|
import com.adc.da.wkflow.business_main.service.IBusProcessApproveService;
|
||||||
import com.adc.da.wkflow.business_main.service.IBusProcessNameService;
|
import com.adc.da.wkflow.business_main.service.IBusProcessNameService;
|
||||||
import com.adc.da.wkflow.enums.SubmitStatusEnum;
|
import com.adc.da.wkflow.enums.SubmitStatusEnum;
|
||||||
import com.adc.da.wkflow.util.ImpulseSenderUtils;
|
import com.adc.da.wkflow.util.ImpulseSenderUtils;
|
||||||
@@ -55,6 +58,8 @@ public class ActivitDefineController {
|
|||||||
private IdentityService identityService;
|
private IdentityService identityService;
|
||||||
@Autowired
|
@Autowired
|
||||||
private IBusProcessNameService ibusprocessnameService;
|
private IBusProcessNameService ibusprocessnameService;
|
||||||
|
@Autowired
|
||||||
|
private IBusProcessApproveService ibusProcessApproveService;
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private ActivitDefineService activitDefineService;
|
private ActivitDefineService activitDefineService;
|
||||||
@@ -130,8 +135,17 @@ public class ActivitDefineController {
|
|||||||
@ApiImplicitParam(name = "prcType", value = "流程类型"),
|
@ApiImplicitParam(name = "prcType", value = "流程类型"),
|
||||||
@ApiImplicitParam(name = "prcName", value = "流程名称"),
|
@ApiImplicitParam(name = "prcName", value = "流程名称"),
|
||||||
})
|
})
|
||||||
@PostMapping("/activiti_define_start_user")
|
@PostMapping("/startProcess")
|
||||||
public Wrapper<String> activiti_define_start(@RequestBody JSONObject jsonObject) {
|
public Wrapper<String> activiti_define_start(@RequestBody JSONObject jsonObject) {
|
||||||
|
//登录人id
|
||||||
|
jsonObject.put("loginUserId", UserUtils.getUserId());
|
||||||
|
if(com.adc.da.util.utils.StringUtils.isNotEmpty(jsonObject.getString("id"))){
|
||||||
|
jsonObject.put("bpnId",jsonObject.getString("id"));
|
||||||
|
}
|
||||||
|
String prcType = jsonObject.getString("prcType");
|
||||||
|
Map<String, Object> prcNameAndPrcNum = createPrcNameAndPrcNum(prcType);
|
||||||
|
|
||||||
|
jsonObject.put("id",prcNameAndPrcNum.get("id"));
|
||||||
/**
|
/**
|
||||||
* String id,
|
* String id,
|
||||||
* String userId,
|
* String userId,
|
||||||
@@ -142,13 +156,12 @@ public class ActivitDefineController {
|
|||||||
String id = jsonObject.getString("id");
|
String id = jsonObject.getString("id");
|
||||||
String userId = jsonObject.getString("loginUserId");
|
String userId = jsonObject.getString("loginUserId");
|
||||||
String bpnId = jsonObject.getString("bpnId");
|
String bpnId = jsonObject.getString("bpnId");
|
||||||
String prcType = jsonObject.getString("type");
|
Object dataMsg = jsonObject.get("dataMsg");
|
||||||
Object msg = jsonObject.get("msg");
|
Object approveData =jsonObject.get("approveData");
|
||||||
|
|
||||||
// 创建查询对象
|
// 创建查询对象
|
||||||
ProcessDefinitionQuery processDefinitionQuery = repositoryService.createProcessDefinitionQuery();
|
ProcessDefinitionQuery processDefinitionQuery = repositoryService.createProcessDefinitionQuery();
|
||||||
// 使用流程定义的名称模糊查询
|
// 使用流程定义的名称模糊查询
|
||||||
processDefinitionQuery.processDefinitionCategory("4bdf0b396b4aa6ea10dd5e19956a1e22");
|
|
||||||
long total = processDefinitionQuery.count();
|
long total = processDefinitionQuery.count();
|
||||||
List<ProcessDefinition> list = processDefinitionQuery.orderByProcessDefinitionKey().asc().list();
|
List<ProcessDefinition> list = processDefinitionQuery.orderByProcessDefinitionKey().asc().list();
|
||||||
List<Map<String, Object>> definitions = ActivitiTools.turnProcessDefinitions(list);
|
List<Map<String, Object>> definitions = ActivitiTools.turnProcessDefinitions(list);
|
||||||
@@ -165,8 +178,6 @@ public class ActivitDefineController {
|
|||||||
task.setAssignee(userId);
|
task.setAssignee(userId);
|
||||||
taskService.saveTask(task);
|
taskService.saveTask(task);
|
||||||
|
|
||||||
Map<String, Object> prcNameAndPrcNum = createPrcNameAndPrcNum(prcType);
|
|
||||||
|
|
||||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
||||||
if(StringUtils.isEmpty(bpnId)) {
|
if(StringUtils.isEmpty(bpnId)) {
|
||||||
BusProcessName busProcessName = new BusProcessName();
|
BusProcessName busProcessName = new BusProcessName();
|
||||||
@@ -177,10 +188,11 @@ public class ActivitDefineController {
|
|||||||
busProcessName.setCreatUserName(byId.getUsname());
|
busProcessName.setCreatUserName(byId.getUsname());
|
||||||
busProcessName.setPrcNum((String) prcNameAndPrcNum.get("prcNum"));
|
busProcessName.setPrcNum((String) prcNameAndPrcNum.get("prcNum"));
|
||||||
busProcessName.setPrcType(prcType);
|
busProcessName.setPrcType(prcType);
|
||||||
String data = JSON.toJSONString(msg, SerializerFeature.DisableCircularReferenceDetect);
|
String data = JSON.toJSONString(dataMsg, SerializerFeature.DisableCircularReferenceDetect);
|
||||||
String dateId = activitDefineService.saveOrUpdateDate(prcType,data);
|
String dateId = activitDefineService.saveOrUpdateDate(prcType,data,task.getId(),pi.getId());
|
||||||
busProcessName.setDataId(dateId);
|
busProcessName.setDataId(dateId);
|
||||||
busProcessName.setPrcName((String) prcNameAndPrcNum.get("prcName"));
|
// busProcessName.setPrcName((String) prcNameAndPrcNum.get("prcName"));
|
||||||
|
busProcessName.setPrcName(jsonObject.getString("prcName"));
|
||||||
busProcessName.setSubmitStatus(SubmitStatusEnum.SUBMIT.getValue());
|
busProcessName.setSubmitStatus(SubmitStatusEnum.SUBMIT.getValue());
|
||||||
ibusprocessnameService.save(busProcessName);
|
ibusprocessnameService.save(busProcessName);
|
||||||
}else{
|
}else{
|
||||||
@@ -194,16 +206,24 @@ public class ActivitDefineController {
|
|||||||
String newId = UUID.randomUUID().toString().replace("-", "");
|
String newId = UUID.randomUUID().toString().replace("-", "");
|
||||||
one.setId(newId);
|
one.setId(newId);
|
||||||
one.setPrcNum((String) prcNameAndPrcNum.get("prcNum"));
|
one.setPrcNum((String) prcNameAndPrcNum.get("prcNum"));
|
||||||
one.setPrcName((String) prcNameAndPrcNum.get("prcName"));
|
// one.setPrcName((String) prcNameAndPrcNum.get("prcName"));
|
||||||
|
one.setPrcName(jsonObject.getString("prcName"));
|
||||||
one.setPrcId(pi.getId());
|
one.setPrcId(pi.getId());
|
||||||
one.setSubmitStatus(SubmitStatusEnum.SUBMIT.getValue());
|
one.setSubmitStatus(SubmitStatusEnum.SUBMIT.getValue());
|
||||||
one.setCreatTime(sdf.format(new Date()));
|
one.setCreatTime(sdf.format(new Date()));
|
||||||
String data = JSON.toJSONString(msg, SerializerFeature.DisableCircularReferenceDetect);
|
String data = JSON.toJSONString(dataMsg, SerializerFeature.DisableCircularReferenceDetect);
|
||||||
String dateId = activitDefineService.saveOrUpdateDate(prcType,data);
|
String dateId = activitDefineService.saveOrUpdateDate(prcType,data,task.getId(),pi.getId());
|
||||||
one.setDataId(dateId);
|
one.setDataId(dateId);
|
||||||
ibusprocessnameService.save(one);
|
ibusprocessnameService.save(one);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
BusProcessApprove busProcessApprove = new BusProcessApprove();
|
||||||
|
busProcessApprove.setFromValsJson(approveData.toString());
|
||||||
|
busProcessApprove.setTaskId(task.getId());
|
||||||
|
busProcessApprove.setCreateDate(new Date());
|
||||||
|
busProcessApprove.setPrcId(pi.getId());
|
||||||
|
busProcessApprove.setCreateUserId(UserUtils.getUserId());
|
||||||
|
ibusProcessApproveService.save(busProcessApprove);
|
||||||
log.info("启动流程实例,获取id-->{},实例名称-->{}", pi.getId(), pd.getName());
|
log.info("启动流程实例,获取id-->{},实例名称-->{}", pi.getId(), pd.getName());
|
||||||
return WrapMapper.ok(task.getId());
|
return WrapMapper.ok(task.getId());
|
||||||
}
|
}
|
||||||
@@ -248,9 +268,11 @@ public class ActivitDefineController {
|
|||||||
Map<String,Object> prcInfoMap = ibusprocessnameService.ruleGeneratePrcNumAndPrcNum(prcType);
|
Map<String,Object> prcInfoMap = ibusprocessnameService.ruleGeneratePrcNumAndPrcNum(prcType);
|
||||||
String prcNum = (String) prcInfoMap.get("prcNum");
|
String prcNum = (String) prcInfoMap.get("prcNum");
|
||||||
String prcName = (String) prcInfoMap.get("prcName");
|
String prcName = (String) prcInfoMap.get("prcName");
|
||||||
|
String id = (String) prcInfoMap.get("id");
|
||||||
|
|
||||||
result.put("prcName",prcName);
|
result.put("prcName",prcName);
|
||||||
result.put("prcNum",prcNum);
|
result.put("prcNum",prcNum);
|
||||||
|
result.put("id",id);
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+26
-4
@@ -1,18 +1,40 @@
|
|||||||
package com.adc.da.wkflow.business_activiti.service;
|
package com.adc.da.wkflow.business_activiti.service;
|
||||||
|
|
||||||
|
import com.adc.da.report.dao.mysql.PowerApplyActDao;
|
||||||
|
import com.adc.da.report.eo.PowerApplyAct;
|
||||||
|
import com.adc.da.report.service.IPowerApplyActService;
|
||||||
|
import com.alibaba.fastjson.JSONObject;
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.UUID;
|
||||||
|
|
||||||
@Service
|
@Service
|
||||||
public class ActivitDefineService {
|
public class ActivitDefineService {
|
||||||
protected Logger logger = LoggerFactory.getLogger(getClass());
|
protected Logger logger = LoggerFactory.getLogger(getClass());
|
||||||
|
|
||||||
//保存data数据
|
@Autowired
|
||||||
public String saveOrUpdateDate(String prcType, String dataJson) {
|
IPowerApplyActService iPowerApplyActService;
|
||||||
String dataId = "";
|
|
||||||
if ("".equals(prcType)){
|
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
PowerApplyActDao powerApplyActDao;
|
||||||
|
|
||||||
|
//保存data数据
|
||||||
|
public String saveOrUpdateDate(String prcType, String dataJson,String taskId,String prcId) {
|
||||||
|
String dataId = UUID.randomUUID().toString().replaceAll("-","");
|
||||||
|
if ("1".equals(prcType)){
|
||||||
|
List<PowerApplyAct> powerApplyActs = JSONObject.parseArray(dataJson, PowerApplyAct.class);
|
||||||
|
for (PowerApplyAct powerApplyAct : powerApplyActs) {
|
||||||
|
powerApplyAct.setId(UUID.randomUUID().toString().replaceAll("-",""));
|
||||||
|
powerApplyAct.setDataId(dataId);
|
||||||
|
powerApplyAct.setTaskId(taskId);
|
||||||
|
powerApplyAct.setPrcId(prcId);
|
||||||
|
powerApplyAct.setDelFlag(0);
|
||||||
|
}
|
||||||
|
powerApplyActDao.batchInsert(powerApplyActs);
|
||||||
}
|
}
|
||||||
return dataId;
|
return dataId;
|
||||||
}
|
}
|
||||||
|
|||||||
+24
-4
@@ -2,9 +2,12 @@ package com.adc.da.wkflow.business_activiti.service;
|
|||||||
|
|
||||||
import cn.hutool.core.util.StrUtil;
|
import cn.hutool.core.util.StrUtil;
|
||||||
import com.adc.da.wkflow.business_activiti.dto.TaskCommonQuery;
|
import com.adc.da.wkflow.business_activiti.dto.TaskCommonQuery;
|
||||||
|
import com.adc.da.wkflow.business_main.mapper.TaskMapper;
|
||||||
import com.adc.da.wkflow.util.date.DateTools;
|
import com.adc.da.wkflow.util.date.DateTools;
|
||||||
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import org.activiti.engine.TaskService;
|
import org.activiti.engine.TaskService;
|
||||||
import org.activiti.engine.task.NativeTaskQuery;
|
import org.activiti.engine.task.NativeTaskQuery;
|
||||||
|
import org.activiti.engine.task.Task;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
@@ -12,6 +15,7 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 待办任务注入类,动态修改 Task的assignee等
|
* 待办任务注入类,动态修改 Task的assignee等
|
||||||
@@ -27,6 +31,9 @@ public class TaskTodoService {
|
|||||||
@Autowired
|
@Autowired
|
||||||
private TaskService taskService;
|
private TaskService taskService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private TaskMapper taskMapper;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询待办任务 拼接sql 包含待办任务和委托任务
|
* 查询待办任务 拼接sql 包含待办任务和委托任务
|
||||||
* @param taskCommonQuery
|
* @param taskCommonQuery
|
||||||
@@ -39,8 +46,6 @@ public class TaskTodoService {
|
|||||||
StringBuilder sb = new StringBuilder();
|
StringBuilder sb = new StringBuilder();
|
||||||
sb.append(
|
sb.append(
|
||||||
"select distinct RES.* from ACT_RU_TASK RES left join ACT_RU_IDENTITYLINK I on I.TASK_ID_ = RES.ID_ inner join ACT_RE_PROCDEF D on RES.PROC_DEF_ID_ = D.ID_ ");
|
"select distinct RES.* from ACT_RU_TASK RES left join ACT_RU_IDENTITYLINK I on I.TASK_ID_ = RES.ID_ inner join ACT_RE_PROCDEF D on RES.PROC_DEF_ID_ = D.ID_ ");
|
||||||
sb.append(" left join t_delegate_business db on RES.PROC_DEF_ID_=db.BUSINESS_KEY and db.IS_DELETED=0 ");
|
|
||||||
sb.append(" left join t_delegate de on db.DELEGATE_ID=de.OBJECT_ID and de.USERD=#{userd} ");
|
|
||||||
sb.append(" WHERE ");
|
sb.append(" WHERE ");
|
||||||
//任务名称
|
//任务名称
|
||||||
if (StrUtil.isNotEmpty(taskCommonQuery.getName())) {
|
if (StrUtil.isNotEmpty(taskCommonQuery.getName())) {
|
||||||
@@ -61,12 +66,15 @@ public class TaskTodoService {
|
|||||||
sb.append(
|
sb.append(
|
||||||
" (RES.ASSIGNEE_=#{assignee} or (RES.ASSIGNEE_ is null and I.TYPE_ = 'candidate' and (I.USER_ID_=#{user_id} ))) ");
|
" (RES.ASSIGNEE_=#{assignee} or (RES.ASSIGNEE_ is null and I.TYPE_ = 'candidate' and (I.USER_ID_=#{user_id} ))) ");
|
||||||
sb.append(
|
sb.append(
|
||||||
" or (RES.ASSIGNEE_ = de.USER or (RES.ASSIGNEE_ is null and I.TYPE_ = 'candidate' and (I.USER_ID_ = de.USER ))) ");
|
" or (RES.ASSIGNEE_ is null and I.TYPE_ = 'candidate' ) ");
|
||||||
sb.append(" order by RES.CREATE_TIME_ desc ");
|
sb.append(" order by RES.CREATE_TIME_ desc ");
|
||||||
|
// sb.append(" LIMIT #{current},#{size} ");
|
||||||
if(StringUtils.isNotBlank(taskCommonQuery.getUserId())){
|
if(StringUtils.isNotBlank(taskCommonQuery.getUserId())){
|
||||||
nativeTaskQuery = nativeTaskQuery.parameter("userd", taskCommonQuery.getUserId())
|
nativeTaskQuery = nativeTaskQuery.parameter("userd", taskCommonQuery.getUserId())
|
||||||
.parameter("assignee", taskCommonQuery.getUserId())
|
.parameter("assignee", taskCommonQuery.getUserId())
|
||||||
.parameter("user_id", taskCommonQuery.getUserId());
|
.parameter("user_id", taskCommonQuery.getUserId())
|
||||||
|
.parameter("current", taskCommonQuery.getCurrent())
|
||||||
|
.parameter("size", taskCommonQuery.getSize());
|
||||||
}
|
}
|
||||||
|
|
||||||
nativeTaskQuery = nativeTaskQuery.sql(sb.toString());
|
nativeTaskQuery = nativeTaskQuery.sql(sb.toString());
|
||||||
@@ -75,4 +83,16 @@ public class TaskTodoService {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public Page<Task> selectTask(TaskCommonQuery taskCommonQuery){
|
||||||
|
Page<Task> page = new Page<>();
|
||||||
|
page.setCurrent(taskCommonQuery.getCurrent());
|
||||||
|
page.setSize(taskCommonQuery.getSize());
|
||||||
|
List<Task> tasks = taskMapper.todoTaskList(page, taskCommonQuery);
|
||||||
|
long count = taskMapper.todoTaskListCount( taskCommonQuery);
|
||||||
|
page.setRecords(tasks);
|
||||||
|
page.setSize(count);
|
||||||
|
return page;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
+5
-2
@@ -8,6 +8,7 @@ import com.adc.da.wkflow.business_main.entity.BusProcessEntrust;
|
|||||||
import com.adc.da.wkflow.business_main.entity.BusProcessName;
|
import com.adc.da.wkflow.business_main.entity.BusProcessName;
|
||||||
import com.adc.da.wkflow.business_main.entity.BusProcessNew;
|
import com.adc.da.wkflow.business_main.entity.BusProcessNew;
|
||||||
import com.adc.da.wkflow.business_main.service.IBusProcessApproveService;
|
import com.adc.da.wkflow.business_main.service.IBusProcessApproveService;
|
||||||
|
import com.adc.da.wkflow.business_main.service.IBusProcessEntrustService;
|
||||||
import com.adc.da.wkflow.business_main.service.IBusProcessNameService;
|
import com.adc.da.wkflow.business_main.service.IBusProcessNameService;
|
||||||
import com.adc.da.wkflow.business_main.service.IBusProcessNewService;
|
import com.adc.da.wkflow.business_main.service.IBusProcessNewService;
|
||||||
import com.adc.da.wkflow.util.activiti.ActivitiTools;
|
import com.adc.da.wkflow.util.activiti.ActivitiTools;
|
||||||
@@ -49,7 +50,7 @@ public class TaskController {
|
|||||||
private IBusProcessNewService iBusProcessNewService;
|
private IBusProcessNewService iBusProcessNewService;
|
||||||
|
|
||||||
@Resource
|
@Resource
|
||||||
private IBusProcessApproveService iBusProcessEntrustService;
|
private IBusProcessEntrustService iBusProcessEntrustService;
|
||||||
|
|
||||||
@Resource
|
@Resource
|
||||||
private IBusProcessApproveService iBusProcessApproveService;
|
private IBusProcessApproveService iBusProcessApproveService;
|
||||||
@@ -92,7 +93,9 @@ public class TaskController {
|
|||||||
UserVO assignee = userByIdList.get(0);
|
UserVO assignee = userByIdList.get(0);
|
||||||
historicTaskInstance.put("assignee", assignee.getUsname());
|
historicTaskInstance.put("assignee", assignee.getUsname());
|
||||||
historicTaskInstance.put("assigneeId", assignee.getUsid());
|
historicTaskInstance.put("assigneeId", assignee.getUsid());
|
||||||
historicTaskInstance.put("orgName",assignee.getOrgEOList().get(0));
|
if(assignee.getOrgEOList().size()>0){
|
||||||
|
historicTaskInstance.put("orgName",assignee.getOrgEOList().get(0));
|
||||||
|
}
|
||||||
QueryWrapper queryWrapper2 = new QueryWrapper();
|
QueryWrapper queryWrapper2 = new QueryWrapper();
|
||||||
queryWrapper2.eq("TASK_ID",historicTaskInstance.get("id"));
|
queryWrapper2.eq("TASK_ID",historicTaskInstance.get("id"));
|
||||||
queryWrapper2.orderByAsc("CREATE_TIME");
|
queryWrapper2.orderByAsc("CREATE_TIME");
|
||||||
|
|||||||
+45
-22
@@ -2,9 +2,13 @@ package com.adc.da.wkflow.business_activiti.task;
|
|||||||
|
|
||||||
import cn.hutool.core.util.StrUtil;
|
import cn.hutool.core.util.StrUtil;
|
||||||
import com.adc.da.login.util.UserUtils;
|
import com.adc.da.login.util.UserUtils;
|
||||||
|
import com.adc.da.report.dao.mysql.PowerApplyActDao;
|
||||||
|
import com.adc.da.report.eo.PowerApplyAct;
|
||||||
import com.adc.da.sys.service.iservice.IUserEoService;
|
import com.adc.da.sys.service.iservice.IUserEoService;
|
||||||
import com.adc.da.sys.vo.UserVO;
|
import com.adc.da.sys.vo.UserVO;
|
||||||
import com.adc.da.util.exception.AdcDaBaseException;
|
import com.adc.da.util.exception.AdcDaBaseException;
|
||||||
|
import com.adc.da.util.http.ResponseMessage;
|
||||||
|
import com.adc.da.util.http.Result;
|
||||||
import com.adc.da.wkflow.business_activiti.dto.Page;
|
import com.adc.da.wkflow.business_activiti.dto.Page;
|
||||||
import com.adc.da.wkflow.business_activiti.dto.TaskCommonQuery;
|
import com.adc.da.wkflow.business_activiti.dto.TaskCommonQuery;
|
||||||
import com.adc.da.wkflow.business_activiti.service.ActivitDefineService;
|
import com.adc.da.wkflow.business_activiti.service.ActivitDefineService;
|
||||||
@@ -27,7 +31,9 @@ import com.adc.da.wkflow.util.date.DateTools;
|
|||||||
import com.adc.da.wkflow.util.wrapper.WrapMapper;
|
import com.adc.da.wkflow.util.wrapper.WrapMapper;
|
||||||
import com.adc.da.wkflow.util.wrapper.Wrapper;
|
import com.adc.da.wkflow.util.wrapper.Wrapper;
|
||||||
import com.alibaba.fastjson.JSON;
|
import com.alibaba.fastjson.JSON;
|
||||||
|
import com.alibaba.fastjson.JSONArray;
|
||||||
import com.alibaba.fastjson.JSONObject;
|
import com.alibaba.fastjson.JSONObject;
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
import io.swagger.annotations.Api;
|
import io.swagger.annotations.Api;
|
||||||
import io.swagger.annotations.ApiImplicitParam;
|
import io.swagger.annotations.ApiImplicitParam;
|
||||||
@@ -102,13 +108,20 @@ public class TodoTaskController {
|
|||||||
@Autowired
|
@Autowired
|
||||||
private ActivitDefineService activitDefineService;
|
private ActivitDefineService activitDefineService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private PowerApplyActDao powerApplyActDao;
|
||||||
|
|
||||||
@ApiOperation(value = "我的待办任务列表")
|
@ApiOperation(value = "我的待办任务列表")
|
||||||
@ApiImplicitParams({@ApiImplicitParam(name = "name", value = "名称"),
|
@ApiImplicitParams({@ApiImplicitParam(name = "name", value = "名称"),
|
||||||
@ApiImplicitParam(name = "current", value = "当前页"),
|
@ApiImplicitParam(name = "current", value = "当前页"),
|
||||||
@ApiImplicitParam(name = "size", value = "每页条数"),
|
@ApiImplicitParam(name = "size", value = "每页条数"),
|
||||||
@ApiImplicitParam(name = "userId", value = "用户Id")})
|
@ApiImplicitParam(name = "userId", value = "用户Id")})
|
||||||
@PostMapping("/todoTaskList")
|
@PostMapping("/todoTaskList")
|
||||||
public List<BusProcessName> todoTaskListByUserId(@RequestBody TaskCommonQuery taskCommonQuery) {
|
public ResponseMessage todoTaskListByUserId(@RequestBody TaskCommonQuery taskCommonQuery) {
|
||||||
|
Page page = new Page();
|
||||||
|
page.setPageNo(taskCommonQuery.getCurrent());
|
||||||
|
page.setPageSize(taskCommonQuery.getSize());
|
||||||
|
|
||||||
if("%".equals(taskCommonQuery.getPrcName())){
|
if("%".equals(taskCommonQuery.getPrcName())){
|
||||||
taskCommonQuery.setPrcName("/%");
|
taskCommonQuery.setPrcName("/%");
|
||||||
}
|
}
|
||||||
@@ -117,8 +130,10 @@ public class TodoTaskController {
|
|||||||
}
|
}
|
||||||
// 创建查询对象
|
// 创建查询对象
|
||||||
NativeTaskQuery nativeTaskQuery = taskTodoService.createSql(taskCommonQuery);
|
NativeTaskQuery nativeTaskQuery = taskTodoService.createSql(taskCommonQuery);
|
||||||
|
// com.baomidou.mybatisplus.extension.plugins.pagination.Page<Task> page1 = taskTodoService.selectTask(taskCommonQuery);
|
||||||
List<Task> list = nativeTaskQuery.list();
|
// List<Task> list = page1.getRecords();
|
||||||
|
List<Task> list1 = nativeTaskQuery.list();
|
||||||
|
List<Task> list = nativeTaskQuery.listPage(taskCommonQuery.getCurrent(),taskCommonQuery.getSize());
|
||||||
List<Map<String, Object>> listEnd = ActivitiTools.turnTasks(list);
|
List<Map<String, Object>> listEnd = ActivitiTools.turnTasks(list);
|
||||||
for (Map<String, Object> map : listEnd) {
|
for (Map<String, Object> map : listEnd) {
|
||||||
ProcessDefinition processDefinition = repositoryService.createProcessDefinitionQuery().processDefinitionId(map.get("processDefinitionId") + "").singleResult();
|
ProcessDefinition processDefinition = repositoryService.createProcessDefinitionQuery().processDefinitionId(map.get("processDefinitionId") + "").singleResult();
|
||||||
@@ -172,7 +187,10 @@ public class TodoTaskController {
|
|||||||
todoList.add(busProcessName);
|
todoList.add(busProcessName);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return todoList;
|
page.setList(todoList);
|
||||||
|
page.setCount((long) list1.size());
|
||||||
|
// page.setCount(page1.getSize());
|
||||||
|
return Result.success(page);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ApiOperation(value = "改派任务")
|
@ApiOperation(value = "改派任务")
|
||||||
@@ -250,7 +268,7 @@ public class TodoTaskController {
|
|||||||
iBusProcessApproveService.save(busProcessApprove);
|
iBusProcessApproveService.save(busProcessApprove);
|
||||||
if (StringUtils.isNotEmpty(dataJson)){
|
if (StringUtils.isNotEmpty(dataJson)){
|
||||||
//根据业务情况 对业务数据进行saveOrupdate
|
//根据业务情况 对业务数据进行saveOrupdate
|
||||||
activitDefineService.saveOrUpdateDate(busMes.getPrcType(),dataJson);
|
activitDefineService.saveOrUpdateDate(busMes.getPrcType(),dataJson, task.getId(),task.getProcessInstanceId());
|
||||||
}
|
}
|
||||||
taskService.complete(busMes.getTaskId());
|
taskService.complete(busMes.getTaskId());
|
||||||
}
|
}
|
||||||
@@ -349,7 +367,7 @@ public class TodoTaskController {
|
|||||||
*/
|
*/
|
||||||
@ApiOperation(value = "详情")
|
@ApiOperation(value = "详情")
|
||||||
@GetMapping("/queryDetail")
|
@GetMapping("/queryDetail")
|
||||||
public BusProcessNewVO queryDetail(String taskId,String prcType) {
|
public ResponseMessage queryDetail(@RequestParam("taskId") String taskId,@RequestParam("prcType")String prcType) {
|
||||||
BusProcessNew busProcessNew = iBusProcessNewService.selectEOByTaskId(taskId);
|
BusProcessNew busProcessNew = iBusProcessNewService.selectEOByTaskId(taskId);
|
||||||
if (busProcessNew == null) {
|
if (busProcessNew == null) {
|
||||||
return null;
|
return null;
|
||||||
@@ -361,16 +379,20 @@ public class TodoTaskController {
|
|||||||
busProcessNewVO.getTaskId());
|
busProcessNewVO.getTaskId());
|
||||||
String approveJson = JSON.toJSONString(busProcessApprove);
|
String approveJson = JSON.toJSONString(busProcessApprove);
|
||||||
busProcessNewVO.setApproveJson(approveJson);
|
busProcessNewVO.setApproveJson(approveJson);
|
||||||
return busProcessNewVO;
|
return Result.success(busProcessApprove);
|
||||||
}
|
}
|
||||||
|
|
||||||
private BusProcessNewVO queryDetailDate(BusProcessNew busProcessNew, String prcType) {
|
private BusProcessNewVO queryDetailDate(BusProcessNew busProcessNew, String prcType) {
|
||||||
BusProcessNewVO busProcessNewVO = new BusProcessNewVO();
|
BusProcessNewVO busProcessNewVO = new BusProcessNewVO();
|
||||||
BeanUtils.copyProperties(busProcessNew,busProcessNewVO);
|
BeanUtils.copyProperties(busProcessNew,busProcessNewVO);
|
||||||
if ("".equals(prcType)){
|
String dataId = busProcessNew.getDataId();
|
||||||
String dataId = busProcessNew.getDataId();
|
if ("1".equals(prcType)){
|
||||||
|
LambdaQueryWrapper<PowerApplyAct> powerWrapper = new LambdaQueryWrapper<>();
|
||||||
|
powerWrapper.eq(PowerApplyAct::getDataId,dataId);
|
||||||
|
List<PowerApplyAct> powerApplyActs = powerApplyActDao.selectList(powerWrapper);
|
||||||
|
String string = JSONArray.toJSONString(powerApplyActs);
|
||||||
//去对应的 数据表查数据
|
//去对应的 数据表查数据
|
||||||
// busProcessNewVO.setDateMesg();
|
busProcessNewVO.setDateMesg(string);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -408,7 +430,8 @@ public class TodoTaskController {
|
|||||||
BusProcessName busProcessName = new BusProcessName();
|
BusProcessName busProcessName = new BusProcessName();
|
||||||
if (StringUtils.isNotEmpty(dataJson)) {
|
if (StringUtils.isNotEmpty(dataJson)) {
|
||||||
//根据业务情况 对业务数据进行saveOrupdate
|
//根据业务情况 对业务数据进行saveOrupdate
|
||||||
String dataId = activitDefineService.saveOrUpdateDate(approveDataVO.getPrcType(), dataJson);
|
String dataId = activitDefineService.saveOrUpdateDate(approveDataVO.getPrcType(), dataJson,
|
||||||
|
approveDataVO.getTaskId(),"");
|
||||||
busProcessName.setDataId(dataId);
|
busProcessName.setDataId(dataId);
|
||||||
}
|
}
|
||||||
busProcessName.setPrcType(approveDataVO.getPrcType());
|
busProcessName.setPrcType(approveDataVO.getPrcType());
|
||||||
@@ -833,17 +856,17 @@ public class TodoTaskController {
|
|||||||
});
|
});
|
||||||
|
|
||||||
//获取 审批结果
|
//获取 审批结果
|
||||||
if (StringUtils.isNotEmpty(busProcessName.getTaskId())) {
|
// if (StringUtils.isNotEmpty(busProcessName.getTaskId())) {
|
||||||
BusProcessApprove busProcessApprove =
|
// BusProcessApprove busProcessApprove =
|
||||||
iBusProcessApproveService.selectEoByPrcIdAndTask(busProcessName.getPrcId(),
|
// iBusProcessApproveService.selectEoByPrcIdAndTask(busProcessName.getPrcId(),
|
||||||
busProcessName.getTaskId());
|
// busProcessName.getTaskId());
|
||||||
if(busProcessApprove != null){
|
// if(busProcessApprove != null){
|
||||||
JSONObject dataJson = JSONObject.parseObject(busProcessApprove.getFromValsJson());
|
// JSONObject dataJson = JSONObject.parseObject(busProcessApprove.getFromValsJson());
|
||||||
if (StringUtils.isNotEmpty(dataJson.getString("flag"))) {
|
// if (StringUtils.isNotEmpty(dataJson.getString("flag"))) {
|
||||||
busProcessName.setStatus(dataJson.getString("flag"));
|
// busProcessName.setStatus(dataJson.getString("flag"));
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
|
|
||||||
Date createTime = null;
|
Date createTime = null;
|
||||||
Date endTime = null;
|
Date endTime = null;
|
||||||
|
|||||||
@@ -0,0 +1,73 @@
|
|||||||
|
package com.adc.da.wkflow.business_main.entity;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.IdType;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableField;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@TableName("ACT_RU_TASK")
|
||||||
|
public class TaskEntity {
|
||||||
|
|
||||||
|
@TableId(value = "ID_", type = IdType.INPUT)
|
||||||
|
private String id;
|
||||||
|
|
||||||
|
@TableField("REV_")
|
||||||
|
private int rev;
|
||||||
|
|
||||||
|
@TableField("EXECUTION_ID_")
|
||||||
|
private String executionId;
|
||||||
|
|
||||||
|
@TableField("PROC_INST_ID_")
|
||||||
|
private String processInstanceId;
|
||||||
|
|
||||||
|
@TableField("PROC_DEF_ID_")
|
||||||
|
private String processDefinitionId;
|
||||||
|
|
||||||
|
@TableField("NAME_")
|
||||||
|
private String name;
|
||||||
|
|
||||||
|
@TableField("PARENT_TASK_ID_")
|
||||||
|
private String parentTaskId;
|
||||||
|
|
||||||
|
@TableField("DESCRIPTION_")
|
||||||
|
private String description;
|
||||||
|
|
||||||
|
@TableField("TASK_DEF_KEY_")
|
||||||
|
private String taskDefinitionKey;
|
||||||
|
|
||||||
|
@TableField("OWNER_")
|
||||||
|
private String owner;
|
||||||
|
|
||||||
|
@TableField("ASSIGNEE_")
|
||||||
|
private String assignee;
|
||||||
|
|
||||||
|
@TableField("DELEGATION_")
|
||||||
|
private String delegation;
|
||||||
|
|
||||||
|
@TableField("PRIORITY_")
|
||||||
|
private int priority;
|
||||||
|
|
||||||
|
@TableField("CREATE_TIME_")
|
||||||
|
private Date createTime;
|
||||||
|
|
||||||
|
@TableField("DUE_DATE_")
|
||||||
|
private Date dueDate;
|
||||||
|
|
||||||
|
@TableField("CATEGORY_")
|
||||||
|
private String category;
|
||||||
|
|
||||||
|
@TableField("SUSPENSION_STATE_")
|
||||||
|
private int suspensionState;
|
||||||
|
|
||||||
|
@TableField("TENANT_ID_")
|
||||||
|
private String tenantId;
|
||||||
|
|
||||||
|
@TableField("FORM_KEY_")
|
||||||
|
private String formKey;
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
@@ -0,0 +1,18 @@
|
|||||||
|
package com.adc.da.wkflow.business_main.mapper;
|
||||||
|
|
||||||
|
import com.adc.da.wkflow.business_activiti.dto.TaskCommonQuery;
|
||||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
|
import org.activiti.engine.task.Task;
|
||||||
|
import org.apache.ibatis.annotations.Param;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
public interface TaskMapper extends BaseMapper<Task> {
|
||||||
|
|
||||||
|
|
||||||
|
List<Task> todoTaskList(Page<Task> page, @Param("pageVO") TaskCommonQuery taskCommonQuery);
|
||||||
|
|
||||||
|
long todoTaskListCount(@Param("pageVO") TaskCommonQuery taskCommonQuery);
|
||||||
|
|
||||||
|
}
|
||||||
+1
@@ -48,6 +48,7 @@ public class BusProcessNameServiceImpl extends ServiceImpl<BusProcessNameMapper,
|
|||||||
}else {
|
}else {
|
||||||
throw new ActivitiException("非法的流程类型: " + prcType);
|
throw new ActivitiException("非法的流程类型: " + prcType);
|
||||||
}
|
}
|
||||||
|
result.put("id",prcNum);
|
||||||
String numberByFlowType = ImpulseSenderUtils.getNumberByFlowType(prcType);
|
String numberByFlowType = ImpulseSenderUtils.getNumberByFlowType(prcType);
|
||||||
prcNum = prcNum + currentDay + numberByFlowType;
|
prcNum = prcNum + currentDay + numberByFlowType;
|
||||||
prcName = prcName + currentDay + numberByFlowType;
|
prcName = prcName + currentDay + numberByFlowType;
|
||||||
|
|||||||
@@ -7,7 +7,6 @@ import com.adc.da.wkflow.business_main.entity.BusProcessApprove;
|
|||||||
import com.adc.da.wkflow.business_main.entity.BusProcessNew;
|
import com.adc.da.wkflow.business_main.entity.BusProcessNew;
|
||||||
import com.adc.da.wkflow.business_main.service.IBusProcessApproveService;
|
import com.adc.da.wkflow.business_main.service.IBusProcessApproveService;
|
||||||
import com.adc.da.wkflow.business_main.service.IBusProcessNewService;
|
import com.adc.da.wkflow.business_main.service.IBusProcessNewService;
|
||||||
import com.adc.da.wkflow.listener.FlagEnum;
|
|
||||||
import com.adc.da.wkflow.util.SpringContextUtil;
|
import com.adc.da.wkflow.util.SpringContextUtil;
|
||||||
import com.alibaba.fastjson.JSONObject;
|
import com.alibaba.fastjson.JSONObject;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
@@ -48,11 +47,10 @@ public class aid1 implements TaskListener {
|
|||||||
//审批结果
|
//审批结果
|
||||||
LambdaQueryWrapper<BusProcessApprove> approveWrapper = new LambdaQueryWrapper<>();
|
LambdaQueryWrapper<BusProcessApprove> approveWrapper = new LambdaQueryWrapper<>();
|
||||||
approveWrapper.eq(BusProcessApprove::getTaskId, delegateTask.getId());
|
approveWrapper.eq(BusProcessApprove::getTaskId, delegateTask.getId());
|
||||||
BusProcessApprove one = approveService.getOne(approveWrapper);
|
List<BusProcessApprove> list = approveService.list(approveWrapper);
|
||||||
String fromValsJson = one.getFromValsJson();
|
String fromValsJson = list.get(0).getFromValsJson();
|
||||||
JSONObject object = JSONObject.parseObject(fromValsJson);
|
JSONObject object = JSONObject.parseObject(fromValsJson);
|
||||||
String s = object.getString("flag") == "" || object.getString("flag") == null ? FlagEnum.AGREE.getValue() : object.getString("flag");
|
delegateTask.setVariable("oneApprove",object.getString("oneApprove"));
|
||||||
// 1: 同意 2:退回
|
delegateTask.setVariable("twoApprove",object.getString("twoApprove"));
|
||||||
delegateTask.setVariable("flag",s);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,7 +7,6 @@ import com.adc.da.wkflow.business_main.entity.BusProcessApprove;
|
|||||||
import com.adc.da.wkflow.business_main.entity.BusProcessNew;
|
import com.adc.da.wkflow.business_main.entity.BusProcessNew;
|
||||||
import com.adc.da.wkflow.business_main.service.IBusProcessApproveService;
|
import com.adc.da.wkflow.business_main.service.IBusProcessApproveService;
|
||||||
import com.adc.da.wkflow.business_main.service.IBusProcessNewService;
|
import com.adc.da.wkflow.business_main.service.IBusProcessNewService;
|
||||||
import com.adc.da.wkflow.listener.FlagEnum;
|
|
||||||
import com.adc.da.wkflow.util.SpringContextUtil;
|
import com.adc.da.wkflow.util.SpringContextUtil;
|
||||||
import com.alibaba.fastjson.JSONObject;
|
import com.alibaba.fastjson.JSONObject;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
@@ -51,8 +50,8 @@ public class aid4 implements TaskListener {
|
|||||||
BusProcessApprove one = approveService.getOne(approveWrapper);
|
BusProcessApprove one = approveService.getOne(approveWrapper);
|
||||||
String fromValsJson = one.getFromValsJson();
|
String fromValsJson = one.getFromValsJson();
|
||||||
JSONObject object = JSONObject.parseObject(fromValsJson);
|
JSONObject object = JSONObject.parseObject(fromValsJson);
|
||||||
String s = object.getString("flag") == "" || object.getString("flag") == null ? FlagEnum.AGREE.getValue() : object.getString("flag");
|
|
||||||
// 1: 同意 2:退回
|
delegateTask.setVariable("oneApprove",object.getString("oneApprove"));
|
||||||
delegateTask.setVariable("flag",s);
|
delegateTask.setVariable("twoApprove",object.getString("twoApprove"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,69 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||||
|
<mapper namespace="com.adc.da.wkflow.business_main.mapper.TaskMapper">
|
||||||
|
|
||||||
|
<resultMap id="taskEntityMap" type="org.activiti.engine.task.TaskInfo">
|
||||||
|
<id property="id" column="ID_"/>
|
||||||
|
<result property="rev" column="REV_"/>
|
||||||
|
<result property="executionId" column="EXECUTION_ID_"/>
|
||||||
|
<result property="processInstanceId" column="PROC_INST_ID_"/>
|
||||||
|
<result property="processDefinitionId" column="PROC_DEF_ID_"/>
|
||||||
|
<result property="name" column="NAME_"/>
|
||||||
|
<result property="parentTaskId" column="PARENT_TASK_ID_"/>
|
||||||
|
<result property="description" column="DESCRIPTION_"/>
|
||||||
|
<result property="taskDefinitionKey" column="TASK_DEF_KEY_"/>
|
||||||
|
<result property="owner" column="OWNER_"/>
|
||||||
|
<result property="assignee" column="ASSIGNEE_"/>
|
||||||
|
<result property="delegation" column="DELEGATION_"/>
|
||||||
|
<result property="priority" column="PRIORITY_"/>
|
||||||
|
<result property="createTime" column="CREATE_TIME_" javaType="java.util.Date"/>
|
||||||
|
<result property="dueDate" column="DUE_DATE_" javaType="java.util.Date"/>
|
||||||
|
<result property="category" column="CATEGORY_"/>
|
||||||
|
<result property="suspensionState" column="SUSPENSION_STATE_"/>
|
||||||
|
<result property="tenantId" column="TENANT_ID_"/>
|
||||||
|
<result property="formKey" column="FORM_KEY_"/>
|
||||||
|
</resultMap>
|
||||||
|
|
||||||
|
<select id="todoTaskList" resultMap="taskEntityMap">
|
||||||
|
select distinct RES.* from ACT_RU_TASK RES
|
||||||
|
left join ACT_RU_IDENTITYLINK I on I.TASK_ID_ = RES.ID_
|
||||||
|
inner join ACT_RE_PROCDEF D on RES.PROC_DEF_ID_ = D.ID_
|
||||||
|
<where>
|
||||||
|
<if test="pageVO.name !='' and pageVO.name !=null">
|
||||||
|
and RES.NAME_ LIKE #{pageVO.name}
|
||||||
|
</if>
|
||||||
|
<if test="pageVO.startTime !='' and pageVO.startTime !=null">
|
||||||
|
and RES.CREATE_TIME_ >= #{pageVO.startTime}
|
||||||
|
</if>
|
||||||
|
<if test="pageVO.endTime !='' and pageVO.endTime !=null">
|
||||||
|
and RES.CREATE_TIME_ < #{pageVO.endTime}
|
||||||
|
</if>
|
||||||
|
(RES.ASSIGNEE_=#{pageVO.userId} or (RES.ASSIGNEE_ is null and I.TYPE_ = 'candidate' and
|
||||||
|
(I.USER_ID_=#{pageVO.userId} )))
|
||||||
|
or (RES.ASSIGNEE_ is null and I.TYPE_ = 'candidate' )
|
||||||
|
</where>
|
||||||
|
order by RES.CREATE_TIME_ desc
|
||||||
|
</select>
|
||||||
|
<select id="todoTaskListCount" resultType="java.lang.Long">
|
||||||
|
select count(1) from
|
||||||
|
( select distinct RES.* from ACT_RU_TASK RES
|
||||||
|
left join ACT_RU_IDENTITYLINK I on I.TASK_ID_ = RES.ID_
|
||||||
|
inner join ACT_RE_PROCDEF D on RES.PROC_DEF_ID_ = D.ID_
|
||||||
|
<where>
|
||||||
|
<if test="pageVO.name !='' and pageVO.name !=null">
|
||||||
|
and RES.NAME_ LIKE #{pageVO.name}
|
||||||
|
</if>
|
||||||
|
<if test="pageVO.startTime !='' and pageVO.startTime !=null">
|
||||||
|
and RES.CREATE_TIME_ >= #{pageVO.startTime}
|
||||||
|
</if>
|
||||||
|
<if test="pageVO.endTime !='' and pageVO.endTime !=null">
|
||||||
|
and RES.CREATE_TIME_ < #{pageVO.endTime}
|
||||||
|
</if>
|
||||||
|
(RES.ASSIGNEE_=#{pageVO.userId} or (RES.ASSIGNEE_ is null and I.TYPE_ = 'candidate' and (I.USER_ID_=#{pageVO.userId} )))
|
||||||
|
or (RES.ASSIGNEE_ is null and I.TYPE_ = 'candidate' )
|
||||||
|
</where>
|
||||||
|
|
||||||
|
order by RES.CREATE_TIME_ desc
|
||||||
|
)num
|
||||||
|
</select>
|
||||||
|
</mapper>
|
||||||
Reference in New Issue
Block a user