Merge remote-tracking branch 'origin/master'
This commit is contained in:
commit
bba09a7220
|
|
@ -23,9 +23,9 @@ public class SysWorkflowRecordHisController extends BaseController {
|
||||||
private SysWorkflowRecordHistoryService sysWorkflowRecordHistoryService;
|
private SysWorkflowRecordHistoryService sysWorkflowRecordHistoryService;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 修改工作流详情
|
* 审批
|
||||||
*/
|
*/
|
||||||
@ApiOperation(value = "修改工作流详情")
|
@ApiOperation(value = "审批")
|
||||||
@PostMapping("/update")
|
@PostMapping("/update")
|
||||||
public AjaxResult update(@RequestBody SysWorkflowRecordHistory sysWorkflowRecordHistory)
|
public AjaxResult update(@RequestBody SysWorkflowRecordHistory sysWorkflowRecordHistory)
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -81,4 +81,15 @@ public class SysWorkflowNode {
|
||||||
* 审批结果,0拒绝 1通过
|
* 审批结果,0拒绝 1通过
|
||||||
*/
|
*/
|
||||||
private int isAccept;
|
private int isAccept;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
private Integer recordId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
private Integer nodeId;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -56,4 +56,9 @@ public class SysWorkflowRecordHistory {
|
||||||
* 任务Id
|
* 任务Id
|
||||||
*/
|
*/
|
||||||
private Integer taskId;
|
private Integer taskId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 所属流程类型ID
|
||||||
|
*/
|
||||||
|
private Integer typeId;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -7,4 +7,6 @@ public interface SysWorkflowRecordHistoryMapper {
|
||||||
|
|
||||||
|
|
||||||
int addSysWorkflowRecordHistory(SysWorkflowRecordHistory sysWorkflowRecordHistory);
|
int addSysWorkflowRecordHistory(SysWorkflowRecordHistory sysWorkflowRecordHistory);
|
||||||
|
|
||||||
|
SysWorkflowRecordHistory seleteSysWorkflowRecordHistory(SysWorkflowRecordHistory sysWorkflowRecordHistory);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -2,11 +2,14 @@ package com.bonus.material.work.service.impl;
|
||||||
|
|
||||||
import com.bonus.common.core.exception.ServiceException;
|
import com.bonus.common.core.exception.ServiceException;
|
||||||
import com.bonus.common.core.utils.DateUtils;
|
import com.bonus.common.core.utils.DateUtils;
|
||||||
|
import com.bonus.common.core.utils.StringUtils;
|
||||||
import com.bonus.common.security.utils.SecurityUtils;
|
import com.bonus.common.security.utils.SecurityUtils;
|
||||||
import com.bonus.material.work.domain.SysWorkflowConfig;
|
import com.bonus.material.work.domain.SysWorkflowConfig;
|
||||||
import com.bonus.material.work.domain.SysWorkflowNode;
|
import com.bonus.material.work.domain.SysWorkflowNode;
|
||||||
|
import com.bonus.material.work.domain.SysWorkflowRecordHistory;
|
||||||
import com.bonus.material.work.mapper.SysWorkflowConfigMapper;
|
import com.bonus.material.work.mapper.SysWorkflowConfigMapper;
|
||||||
import com.bonus.material.work.mapper.SysWorkflowNodeMapper;
|
import com.bonus.material.work.mapper.SysWorkflowNodeMapper;
|
||||||
|
import com.bonus.material.work.mapper.SysWorkflowRecordHistoryMapper;
|
||||||
import com.bonus.material.work.service.SysWorkflowNodeService;
|
import com.bonus.material.work.service.SysWorkflowNodeService;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
@ -23,6 +26,9 @@ public class SysWorkflowNodeServiceImpl implements SysWorkflowNodeService {
|
||||||
@Resource
|
@Resource
|
||||||
private SysWorkflowConfigMapper sysWorkflowConfigMapper;
|
private SysWorkflowConfigMapper sysWorkflowConfigMapper;
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private SysWorkflowRecordHistoryMapper sysWorkflowRecordHistoryMapper;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 工作流详情列表
|
* 工作流详情列表
|
||||||
*/
|
*/
|
||||||
|
|
@ -96,7 +102,18 @@ public class SysWorkflowNodeServiceImpl implements SysWorkflowNodeService {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<SysWorkflowNode> listByTaskId(SysWorkflowNode sysWorkflowNode) {
|
public List<SysWorkflowNode> listByTaskId(SysWorkflowNode sysWorkflowNode) {
|
||||||
|
List<SysWorkflowNode> sysWorkflowNodeList = sysWorkflowNodeMapper.listByTaskId(sysWorkflowNode);
|
||||||
|
for (SysWorkflowNode SysWorkflowNode: sysWorkflowNodeList) {
|
||||||
|
SysWorkflowRecordHistory sysWorkflowRecordHistory = new SysWorkflowRecordHistory();
|
||||||
|
sysWorkflowRecordHistory.setRecordId(SysWorkflowNode.getRecordId());
|
||||||
|
sysWorkflowRecordHistory.setNodeId(SysWorkflowNode.getNodeId());
|
||||||
|
SysWorkflowRecordHistory sysWorkflowRecordHistoryNew = sysWorkflowRecordHistoryMapper.seleteSysWorkflowRecordHistory(sysWorkflowRecordHistory);
|
||||||
|
if (StringUtils.isNotNull(sysWorkflowRecordHistoryNew)){
|
||||||
|
SysWorkflowNode.setIsAccept(sysWorkflowRecordHistoryNew.getIsAccept());
|
||||||
|
SysWorkflowNode.setCreateTime(sysWorkflowRecordHistoryNew.getCreateTime());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return sysWorkflowNodeMapper.listByTaskId(sysWorkflowNode);
|
return sysWorkflowNodeList;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -36,11 +36,37 @@ public class SysWorkflowRecordHistoryServiceImpl implements SysWorkflowRecordHis
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@Transactional
|
||||||
public int updateSysWorkflowRecordHistory(SysWorkflowRecordHistory sysWorkflowRecordHistory) {
|
public int updateSysWorkflowRecordHistory(SysWorkflowRecordHistory sysWorkflowRecordHistory) {
|
||||||
sysWorkflowRecordHistoryMapper.addSysWorkflowRecordHistory(sysWorkflowRecordHistory);
|
sysWorkflowRecordHistoryMapper.addSysWorkflowRecordHistory(sysWorkflowRecordHistory);
|
||||||
//根据当前审批状态,修改流程状态
|
//根据当前审批状态,修改流程状态
|
||||||
if ("1".equals(sysWorkflowRecordHistory.getIsAccept())){
|
if (sysWorkflowRecordHistory.getIsAccept()==1){
|
||||||
|
SysWorkflowNode sysWorkflowNode = new SysWorkflowNode();
|
||||||
|
sysWorkflowNode.setTypeId(sysWorkflowRecordHistory.getTypeId());
|
||||||
|
List<SysWorkflowNode> sysWorkflowNodeList = sysWorkflowNodeMapper.selectSysWorkflowNodeList(sysWorkflowNode);
|
||||||
|
int fly =0;
|
||||||
|
for (int i = 0; i < sysWorkflowNodeList.size(); i++) {
|
||||||
|
sysWorkflowNode = sysWorkflowNodeList.get(i);
|
||||||
|
if (sysWorkflowRecordHistory.getNodeId().equals(sysWorkflowNode.getId())){
|
||||||
|
//判断当前用户是否是这个节点审核人员
|
||||||
|
if (sysWorkflowNode.getConfigValues().contains(SecurityUtils.getLoginUser().getUserid().toString())){
|
||||||
|
SysWorkflowRecord sysWorkflowRecord = new SysWorkflowRecord();
|
||||||
|
sysWorkflowRecord.setTaskId(sysWorkflowRecordHistory.getTaskId());
|
||||||
|
sysWorkflowRecord.setWorkflowStatus(1);
|
||||||
|
sysWorkflowRecordMapper.updateSysWorkflowRecord(sysWorkflowRecord);
|
||||||
|
fly = i;
|
||||||
|
}else {
|
||||||
|
throw new ServiceException("当前节点不在审核中");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//判断是否是最后一级
|
||||||
|
if (sysWorkflowNodeList.get(sysWorkflowNodeList.size()-1).getId().equals(sysWorkflowRecordHistory.getNodeId())){
|
||||||
|
SysWorkflowRecord sysWorkflowRecord = new SysWorkflowRecord();
|
||||||
|
sysWorkflowRecord.setTaskId(sysWorkflowRecordHistory.getTaskId());
|
||||||
|
sysWorkflowRecord.setWorkflowStatus(2);
|
||||||
|
sysWorkflowRecordMapper.updateSysWorkflowRecord(sysWorkflowRecord);
|
||||||
|
}
|
||||||
}else {
|
}else {
|
||||||
SysWorkflowRecord sysWorkflowRecord = new SysWorkflowRecord();
|
SysWorkflowRecord sysWorkflowRecord = new SysWorkflowRecord();
|
||||||
sysWorkflowRecord.setTaskId(sysWorkflowRecordHistory.getTaskId());
|
sysWorkflowRecord.setTaskId(sysWorkflowRecordHistory.getTaskId());
|
||||||
|
|
|
||||||
|
|
@ -69,10 +69,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
</select>
|
</select>
|
||||||
<select id="listByTaskId" resultType="com.bonus.material.work.domain.SysWorkflowNode">
|
<select id="listByTaskId" resultType="com.bonus.material.work.domain.SysWorkflowNode">
|
||||||
select swn.id as id, swn.type_id typeId, swn.node_name as nodeName, swn.node_sort as nodeSort,
|
select swn.id as id, swn.type_id typeId, swn.node_name as nodeName, swn.node_sort as nodeSort,
|
||||||
swn.node_sign_type as nodeSignType, swn.node_sign_config as nodeSignConfig,
|
swn.node_sign_type as nodeSignType, swn.node_sign_config as nodeSignConfig,swn.id as nodeId,
|
||||||
swrh.create_by as createBy,swrh.create_time as createTime,swn.is_enable as isEnable,
|
swrh.create_by as createBy,swn.is_enable as isEnable,
|
||||||
GROUP_CONCAT(sec.config_value SEPARATOR ',') AS configValues,
|
GROUP_CONCAT(DISTINCT sec.config_value SEPARATOR ',') AS configValues,
|
||||||
swrh.remark as remark,swrh.is_accept as isAccept
|
swrh.remark as remark,swr.id as recordId
|
||||||
from sys_workflow_node swn
|
from sys_workflow_node swn
|
||||||
left join sys_workflow_config sec on swn.id= sec.node_id
|
left join sys_workflow_config sec on swn.id= sec.node_id
|
||||||
left join sys_workflow_record swr on swr.workflow_id = swn.type_id
|
left join sys_workflow_record swr on swr.workflow_id = swn.type_id
|
||||||
|
|
|
||||||
|
|
@ -23,7 +23,13 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
<if test="isAccept != null">#{isAccept},</if>
|
<if test="isAccept != null">#{isAccept},</if>
|
||||||
<if test="createBy != null">#{createBy},</if>
|
<if test="createBy != null">#{createBy},</if>
|
||||||
now(),
|
now(),
|
||||||
<if test="remark != null">remark,</if>
|
<if test="remark != null">#{remark},</if>
|
||||||
</trim>
|
</trim>
|
||||||
</insert>
|
</insert>
|
||||||
|
<select id="seleteSysWorkflowRecordHistory"
|
||||||
|
resultType="com.bonus.material.work.domain.SysWorkflowRecordHistory">
|
||||||
|
select swrh.is_accept as isAccept,swrh.create_time as createTime
|
||||||
|
from sys_workflow_record_history swrh
|
||||||
|
where swrh.record_id=#{recordId} and swrh.node_id= #{nodeId}
|
||||||
|
</select>
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue