集成CID仿真评审流
This commit is contained in:
@@ -20,13 +20,12 @@ public class SimuluationTaskPoolController {
|
||||
@ResponseBody
|
||||
SdmResponse createSimulationTaskPool(@RequestBody JSONObject jsonObject )
|
||||
{
|
||||
|
||||
return service.createTaskPool(jsonObject);
|
||||
}
|
||||
|
||||
@GetMapping(value = "/getTaskPool")
|
||||
@ResponseBody
|
||||
SdmResponse createSimulationTaskPool(@RequestParam String poolName,@RequestParam String version )
|
||||
SdmResponse getSimulationTaskPool(@RequestParam String poolName,@RequestParam String version )
|
||||
{
|
||||
return service.getPoolTreeByVersion(poolName,version);
|
||||
}
|
||||
@@ -86,5 +85,7 @@ public class SimuluationTaskPoolController {
|
||||
{
|
||||
return service.getSimulationPoolTasks(poolName,version);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -8,6 +8,9 @@ import java.util.List;
|
||||
public class TaskPoolTree extends BaseBean {
|
||||
public TaskPoolBrief poolBrief;
|
||||
public List<TaskPoolNode> nodes = new ArrayList<>();
|
||||
public boolean bApprove = false;
|
||||
public String approveTemplateId;
|
||||
public String approveTemplateName;
|
||||
|
||||
public void addTopNodeOrder(TaskPoolNode node)
|
||||
{
|
||||
|
||||
@@ -6,7 +6,7 @@ import com.sdm.common.entity.bo.BaseBean;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class TaskPoolUpdateBean {
|
||||
public class TaskPoolUpdateBean extends BaseBean{
|
||||
|
||||
public static class TaskPoolNodeAdd extends BaseBean
|
||||
{
|
||||
|
||||
@@ -4,6 +4,7 @@ package com.sdm.task.service;
|
||||
import com.alibaba.fastjson2.JSONObject;
|
||||
|
||||
import com.sdm.common.common.SdmResponse;
|
||||
import com.sdm.common.entity.req.system.LaunchApproveReq;
|
||||
import com.sdm.task.model.entity.TaskPoolUpdateBean;
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
@@ -30,4 +31,6 @@ public interface ISimulationTaskPoolService {
|
||||
SdmResponse importTaskPool(MultipartFile multipartFile,String dicts,String poolName);
|
||||
|
||||
SdmResponse exportTaskPool(HttpServletResponse httpServletResponse,JSONObject jsonObject);
|
||||
|
||||
SdmResponse handleApproveNotice(LaunchApproveReq req, int status);
|
||||
}
|
||||
|
||||
@@ -1,11 +1,14 @@
|
||||
package com.sdm.task.service.impl;
|
||||
|
||||
import cn.hutool.poi.excel.cell.CellSetter;
|
||||
import com.alibaba.fastjson2.JSONArray;
|
||||
import com.alibaba.fastjson2.JSONObject;
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
import com.fasterxml.jackson.databind.json.JsonMapper;
|
||||
import com.sdm.common.common.ResultCode;
|
||||
import com.sdm.common.common.SdmResponse;
|
||||
import com.sdm.common.common.ThreadLocalContext;
|
||||
import com.sdm.common.entity.req.system.LaunchApproveReq;
|
||||
import com.sdm.common.feign.inter.system.IApproveFeignClient;
|
||||
import com.sdm.common.service.BaseService;
|
||||
import com.sdm.common.utils.SystemOperate;
|
||||
import com.sdm.task.dao.SimulationPoolMapper;
|
||||
@@ -14,14 +17,10 @@ import com.sdm.task.model.entity.*;
|
||||
import com.sdm.task.service.ISimulationTaskPoolService;
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.http.MediaType;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import java.io.*;
|
||||
import java.net.URLEncoder;
|
||||
import java.nio.file.Files;
|
||||
import java.nio.file.Paths;
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
@@ -35,6 +34,9 @@ public class SimulationTaskPoolServiceImpl extends BaseService implements ISimul
|
||||
@Autowired
|
||||
private TaskPoolOperate poolOperate;
|
||||
|
||||
@Autowired
|
||||
private IApproveFeignClient approveFeignClient;
|
||||
|
||||
/**
|
||||
* 添加仿真分析库节点以及分析项
|
||||
* @param poolTree
|
||||
@@ -371,6 +373,30 @@ public class SimulationTaskPoolServiceImpl extends BaseService implements ISimul
|
||||
return response;
|
||||
}
|
||||
|
||||
/**
|
||||
* 发起仿真库评审
|
||||
* @param templateId
|
||||
* @param templateName
|
||||
* @param approveContents
|
||||
* @param approveAction
|
||||
* @return
|
||||
*/
|
||||
private boolean launchTaskPoolApprove(String templateId, String templateName,String approveContents,int approveAction)
|
||||
{
|
||||
LaunchApproveReq req = new LaunchApproveReq();
|
||||
req.templateId = templateId;
|
||||
req.templateName = templateName;
|
||||
req.approveContents = approveContents;
|
||||
req.approveAction = approveAction;
|
||||
req.approveType = 1;
|
||||
req.approveTitle = "仿真地图评审";
|
||||
req.tenantId = ThreadLocalContext.getTenantId();
|
||||
req.userId = ThreadLocalContext.getUserId();
|
||||
req.creator = ThreadLocalContext.getUserName();
|
||||
SdmResponse response = approveFeignClient.launchApproval(req);
|
||||
return response.isSuccess();
|
||||
}
|
||||
|
||||
/**
|
||||
* 创建仿真分析项库
|
||||
* @param poolTreeObj
|
||||
@@ -379,6 +405,20 @@ public class SimulationTaskPoolServiceImpl extends BaseService implements ISimul
|
||||
public SdmResponse createTaskPool(JSONObject poolTreeObj)
|
||||
{
|
||||
TaskPoolTree poolTree = paraseTaskPoolTree(poolTreeObj);
|
||||
if(poolTree.bApprove)
|
||||
{
|
||||
String approveContents = poolTreeObj.toJSONString();
|
||||
int approveAction = 1;
|
||||
//发起评审
|
||||
if(launchTaskPoolApprove(poolTree.approveTemplateId,poolTree.approveTemplateName,approveContents,approveAction))
|
||||
{
|
||||
return SdmResponse.success();
|
||||
}
|
||||
else
|
||||
{
|
||||
return SdmResponse.failed("发起评审失败");
|
||||
}
|
||||
}
|
||||
SdmResponse response = SdmResponse.success();
|
||||
TaskPoolBrief poolBrief = poolTree.poolBrief;
|
||||
poolBrief.currentVersion = "V1.0"; //新建时初始版本号
|
||||
@@ -977,6 +1017,21 @@ public class SimulationTaskPoolServiceImpl extends BaseService implements ISimul
|
||||
@Override
|
||||
public SdmResponse updateTaskPoolTree(TaskPoolUpdateBean updateBean)
|
||||
{
|
||||
//评审处理
|
||||
if(updateBean.bApprove)
|
||||
{
|
||||
String approveContents = updateBean.toString();
|
||||
int approveAction = 2;
|
||||
//发起评审
|
||||
if(launchTaskPoolApprove(updateBean.approveTemplateId,updateBean.approveTemplateName,approveContents,approveAction))
|
||||
{
|
||||
return SdmResponse.success();
|
||||
}
|
||||
else
|
||||
{
|
||||
return SdmResponse.failed("发起评审失败");
|
||||
}
|
||||
}
|
||||
SdmResponse response = SdmResponse.success();
|
||||
if(!preProcessTaskUpdateBean(updateBean))
|
||||
{
|
||||
@@ -1238,7 +1293,8 @@ public class SimulationTaskPoolServiceImpl extends BaseService implements ISimul
|
||||
{
|
||||
poolBriefObj.put("poolName",poolName);
|
||||
}
|
||||
response = createTaskPool(poolTreeObj);
|
||||
//response = createTaskPool(poolTreeObj);
|
||||
response.setData(poolBriefObj);
|
||||
}
|
||||
return response;
|
||||
}
|
||||
@@ -1420,12 +1476,71 @@ public class SimulationTaskPoolServiceImpl extends BaseService implements ISimul
|
||||
SystemOperate.outputHttpFileStream(httpServletResponse, taskPoolFileName, taskPoolSaveName);
|
||||
file.delete();
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
return response;
|
||||
}
|
||||
|
||||
/**
|
||||
* 评审处理
|
||||
* @param approveReq
|
||||
* @param status
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public SdmResponse handleApproveNotice(LaunchApproveReq approveReq,int status)
|
||||
{
|
||||
SdmResponse response = SdmResponse.success();
|
||||
String contents = approveReq.approveContents;
|
||||
int approveAction = approveReq.approveAction;
|
||||
if(status == 2 && contents != null) //评审成功
|
||||
{
|
||||
switch(approveAction)
|
||||
{
|
||||
case 1:
|
||||
createTaskPoolApprovePostHandle(contents);
|
||||
break;
|
||||
case 2:
|
||||
updateTaskPoolApprovePostHandle(contents);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
return response;
|
||||
}
|
||||
|
||||
/**
|
||||
* 创建仿真地图评审后处理
|
||||
* @param approveContents
|
||||
*/
|
||||
private void createTaskPoolApprovePostHandle(String approveContents)
|
||||
{
|
||||
JSONObject poolTreeObj = JSONObject.from(approveContents);
|
||||
poolTreeObj.put("bApprove",false); //清除上次评审标记
|
||||
createTaskPool(poolTreeObj);
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新仿真地图评审后处理
|
||||
* @param approveContents
|
||||
*/
|
||||
private void updateTaskPoolApprovePostHandle(String approveContents)
|
||||
{
|
||||
ObjectMapper objectMapper = new ObjectMapper();
|
||||
try {
|
||||
TaskPoolUpdateBean updateBean = objectMapper.readValue(approveContents, TaskPoolUpdateBean.class);
|
||||
if(updateBean != null)
|
||||
{
|
||||
updateBean.bApprove = false;//清除上次评审标记
|
||||
updateTaskPoolTree(updateBean);
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
ex.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user