|
@@ -18,6 +18,8 @@ import com.siwei.apply.domain.Workflow;
|
|
import com.siwei.apply.mapper.ProjectWorkflowMapper;
|
|
import com.siwei.apply.mapper.ProjectWorkflowMapper;
|
|
import com.siwei.apply.mapper.WorkflowMapper;
|
|
import com.siwei.apply.mapper.WorkflowMapper;
|
|
|
|
|
|
|
|
+import java.util.List;
|
|
|
|
+
|
|
import static com.siwei.apply.common.Common.UserId;
|
|
import static com.siwei.apply.common.Common.UserId;
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -42,17 +44,30 @@ public class YdbpImpl implements YdbpService {
|
|
@Override
|
|
@Override
|
|
@Transactional(rollbackFor = Exception.class)
|
|
@Transactional(rollbackFor = Exception.class)
|
|
public String add(YdbpVo ydbpVo) {
|
|
public String add(YdbpVo ydbpVo) {
|
|
|
|
+ // 添加
|
|
Ydbp ydbp = new Ydbp();
|
|
Ydbp ydbp = new Ydbp();
|
|
BeanUtils.copyProperties(ydbpVo, ydbp);
|
|
BeanUtils.copyProperties(ydbpVo, ydbp);
|
|
ydbp.generateId();
|
|
ydbp.generateId();
|
|
ydbp.setCreatorId(UserId);
|
|
ydbp.setCreatorId(UserId);
|
|
ydbpMapper.add(ydbp);
|
|
ydbpMapper.add(ydbp);
|
|
// 添加项目流程
|
|
// 添加项目流程
|
|
|
|
+
|
|
|
|
+ /*1.获取项目类型*/
|
|
Integer projectType = projectMapper.getProjectTypeById(ydbp.getProjectId());
|
|
Integer projectType = projectMapper.getProjectTypeById(ydbp.getProjectId());
|
|
|
|
+ /*2.获取当前位置工作流*/
|
|
Workflow workflow = workflowMapper.selectByProjectTypeAndTableName(projectType, "t_ydbp");
|
|
Workflow workflow = workflowMapper.selectByProjectTypeAndTableName(projectType, "t_ydbp");
|
|
|
|
+ /*3.获取上一个工作流*/
|
|
|
|
+ Workflow workflowPrev = workflowMapper.selectPrevByProjectTypeAndTableName(projectType, "t_ydbp");
|
|
|
|
+ /*4.获取上一个工作流的节点信息*/
|
|
|
|
+ List<ProjectWorkflow> projectWorkflows = projectWorkflowMapper.selectByProjectIdAndNodeTableName(ydbp.getProjectId(), workflow.getTableName());
|
|
|
|
+ String parentId = "";
|
|
|
|
+ if (projectWorkflows != null && !projectWorkflows.isEmpty()) {
|
|
|
|
+ // TODO: 如果有多个上一个工作流节点,应该如何处理?目前取第一个
|
|
|
|
+ parentId = projectWorkflows.get(0).getNodeId();
|
|
|
|
+ }
|
|
ProjectWorkflow projectWorkflow = new ProjectWorkflow();
|
|
ProjectWorkflow projectWorkflow = new ProjectWorkflow();
|
|
projectWorkflow.setId(ydbp.getId());
|
|
projectWorkflow.setId(ydbp.getId());
|
|
- projectWorkflow.setParentId("");
|
|
|
|
|
|
+ projectWorkflow.setParentId(parentId);
|
|
projectWorkflow.setProjectId(ydbp.getProjectId());
|
|
projectWorkflow.setProjectId(ydbp.getProjectId());
|
|
projectWorkflow.setNodeId(ydbp.getId());
|
|
projectWorkflow.setNodeId(ydbp.getId());
|
|
projectWorkflow.setNodeTableName(workflow.getTableName());
|
|
projectWorkflow.setNodeTableName(workflow.getTableName());
|
|
@@ -66,7 +81,7 @@ public class YdbpImpl implements YdbpService {
|
|
Project project = projectMapper.get(projectId);
|
|
Project project = projectMapper.get(projectId);
|
|
|
|
|
|
YdbpRes ydbpRes = new YdbpRes();
|
|
YdbpRes ydbpRes = new YdbpRes();
|
|
- if(ydbp != null){
|
|
|
|
|
|
+ if (ydbp != null) {
|
|
BeanUtils.copyProperties(ydbp, ydbpRes);
|
|
BeanUtils.copyProperties(ydbp, ydbpRes);
|
|
}
|
|
}
|
|
ydbpRes.setProjectId(projectId);
|
|
ydbpRes.setProjectId(projectId);
|