This commit is contained in:
parent
232c8d8f3c
commit
287a019e4d
|
|
@ -23,9 +23,9 @@ public class SysWorkflowRecordHisController extends BaseController {
|
|||
private SysWorkflowRecordHistoryService sysWorkflowRecordHistoryService;
|
||||
|
||||
/**
|
||||
* 修改工作流详情
|
||||
* 审批
|
||||
*/
|
||||
@ApiOperation(value = "修改工作流详情")
|
||||
@ApiOperation(value = "审批")
|
||||
@PostMapping("/update")
|
||||
public AjaxResult update(@RequestBody SysWorkflowRecordHistory sysWorkflowRecordHistory)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -81,4 +81,15 @@ public class SysWorkflowNode {
|
|||
* 审批结果,0拒绝 1通过
|
||||
*/
|
||||
private int isAccept;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
private Integer recordId;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
private Integer nodeId;
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -56,4 +56,9 @@ public class SysWorkflowRecordHistory {
|
|||
* 任务Id
|
||||
*/
|
||||
private Integer taskId;
|
||||
|
||||
/**
|
||||
* 所属流程类型ID
|
||||
*/
|
||||
private Integer typeId;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -7,4 +7,6 @@ public interface SysWorkflowRecordHistoryMapper {
|
|||
|
||||
|
||||
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.utils.DateUtils;
|
||||
import com.bonus.common.core.utils.StringUtils;
|
||||
import com.bonus.common.security.utils.SecurityUtils;
|
||||
import com.bonus.material.work.domain.SysWorkflowConfig;
|
||||
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.SysWorkflowNodeMapper;
|
||||
import com.bonus.material.work.mapper.SysWorkflowRecordHistoryMapper;
|
||||
import com.bonus.material.work.service.SysWorkflowNodeService;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
|
@ -23,6 +26,9 @@ public class SysWorkflowNodeServiceImpl implements SysWorkflowNodeService {
|
|||
@Resource
|
||||
private SysWorkflowConfigMapper sysWorkflowConfigMapper;
|
||||
|
||||
@Resource
|
||||
private SysWorkflowRecordHistoryMapper sysWorkflowRecordHistoryMapper;
|
||||
|
||||
/**
|
||||
* 工作流详情列表
|
||||
*/
|
||||
|
|
@ -96,7 +102,18 @@ public class SysWorkflowNodeServiceImpl implements SysWorkflowNodeService {
|
|||
|
||||
@Override
|
||||
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
|
||||
@Transactional
|
||||
public int updateSysWorkflowRecordHistory(SysWorkflowRecordHistory 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 {
|
||||
SysWorkflowRecord sysWorkflowRecord = new SysWorkflowRecord();
|
||||
sysWorkflowRecord.setTaskId(sysWorkflowRecordHistory.getTaskId());
|
||||
|
|
|
|||
|
|
@ -69,10 +69,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
</select>
|
||||
<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,
|
||||
swn.node_sign_type as nodeSignType, swn.node_sign_config as nodeSignConfig,
|
||||
swrh.create_by as createBy,swrh.create_time as createTime,swn.is_enable as isEnable,
|
||||
GROUP_CONCAT(sec.config_value SEPARATOR ',') AS configValues,
|
||||
swrh.remark as remark,swrh.is_accept as isAccept
|
||||
swn.node_sign_type as nodeSignType, swn.node_sign_config as nodeSignConfig,swn.id as nodeId,
|
||||
swrh.create_by as createBy,swn.is_enable as isEnable,
|
||||
GROUP_CONCAT(DISTINCT sec.config_value SEPARATOR ',') AS configValues,
|
||||
swrh.remark as remark,swr.id as recordId
|
||||
from sys_workflow_node swn
|
||||
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
|
||||
|
|
|
|||
|
|
@ -23,7 +23,13 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
<if test="isAccept != null">#{isAccept},</if>
|
||||
<if test="createBy != null">#{createBy},</if>
|
||||
now(),
|
||||
<if test="remark != null">remark,</if>
|
||||
<if test="remark != null">#{remark},</if>
|
||||
</trim>
|
||||
</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>
|
||||
|
|
|
|||
Loading…
Reference in New Issue