变更接口完善。
studio编辑法规清单,同步影响设计符合性流程、prehomo确认流程、验证符合性流程。
This commit is contained in:
+2
@@ -23,6 +23,8 @@ public enum OperatorTypeEnum {
|
||||
UPDATE_TASK_INVENTORY_DETAIL("更新法规清单明细信息","updateTaskInventoryDetail"),
|
||||
UPDATE_DRE_TASK_STATUS("更新法规清单明细信息,dre任务状态","updateDreTaskStatus"),
|
||||
|
||||
GET_CURRENT_USER_ID("获取当前登录用户id","getCurrentUserId"),
|
||||
|
||||
|
||||
/**
|
||||
* 项目库 - 项目详情 统计查询 操作类型枚举
|
||||
|
||||
+132
-9
@@ -54,6 +54,9 @@ import com.jero.modules.system.service.ISysUserService;
|
||||
import com.jero.modules.system.service.impl.SysCategoryServiceImpl;
|
||||
import com.jero.modules.system.service.impl.SysDictItemServiceImpl;
|
||||
import com.jero.modules.wkflow.entity.ProcessHistoryEO;
|
||||
import com.jero.modules.wkflow.enums.DesignComplianceNodeEnum;
|
||||
import com.jero.modules.wkflow.enums.FlowTypeEnum;
|
||||
import com.jero.modules.wkflow.feginClient.impl.WorkFlowFeignClientImpl;
|
||||
import com.jero.modules.wkflow.service.IProcessHistoryEOService;
|
||||
import com.jero.modules.wkflow.service.impl.ProcessHistoryEOServiceImpl;
|
||||
import lombok.SneakyThrows;
|
||||
@@ -187,6 +190,9 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
||||
@Autowired
|
||||
private IConditionAssessmentEOService conditionAssessmentEOService;
|
||||
|
||||
@Autowired
|
||||
private WorkFlowFeignClientImpl workFlowFeignClient;
|
||||
|
||||
/**
|
||||
* 保存
|
||||
*
|
||||
@@ -371,11 +377,102 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
||||
//设置更新log
|
||||
contentLog = setContentLog(infoDiff,contentLog);
|
||||
projectLawsInventoryLogEOService.updateLog(contentLog, projectLawsInventoryEO.getProjectLibraryId());
|
||||
|
||||
//验证用户是否是该法规上级 项目库的studio, 如果是,则同步更新流程
|
||||
int roleCode = checkUserRole(projectLawsInventoryEO.getProjectLibraryId(), currentUser.getId(), "");
|
||||
if (StringUtils.equals(String.valueOf(roleCode),ProjectRoleEnum.STUDIO_ENGINEER.getValue())){
|
||||
//更新流程信息
|
||||
updateFlowInfo(projectLawsInventoryEO);
|
||||
}
|
||||
}else {
|
||||
throw new JeroBootException("该用户没有权限操作该数据!");
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新流程信息
|
||||
* @param projectLawsInventoryEO
|
||||
*/
|
||||
public void updateFlowInfo(ProjectLawsInventoryEO projectLawsInventoryEO){
|
||||
//只有法规的 任务确认状态为接受,才能启动 设计、验证、prehomo三个流程。
|
||||
if(StringUtils.equals(projectLawsInventoryEO.getTaskAffirmStatus(),TaskAffirmStatusEnum.ACCEPTED.getValue())){
|
||||
QueryWrapper<ProjectTaskInventoryEO> taskInventoryQueryWrapper = new QueryWrapper<>();
|
||||
taskInventoryQueryWrapper.lambda().eq(ProjectTaskInventoryEO::getProjectLawsInventoryId,projectLawsInventoryEO.getId());
|
||||
ProjectTaskInventoryEO projectTaskInventoryEO = projectTaskInventoryEOService.getBaseMapper().selectOne(taskInventoryQueryWrapper);
|
||||
if(projectTaskInventoryEO != null){
|
||||
String designPId = projectTaskInventoryEO.getDesignPId();
|
||||
if(StringUtils.isNotEmpty(designPId)){
|
||||
updateFlowAssignee(projectLawsInventoryEO,projectTaskInventoryEO,designPId, FlowTypeEnum.SJFHXSHLC.getValue());
|
||||
}
|
||||
|
||||
String verifyPId = projectTaskInventoryEO.getVerifyPId();
|
||||
if(StringUtils.isNotEmpty(verifyPId)){
|
||||
updateFlowAssignee(projectLawsInventoryEO,projectTaskInventoryEO,verifyPId, FlowTypeEnum.YZFHXSCLC.getValue());
|
||||
}
|
||||
|
||||
String prehomoPId = projectTaskInventoryEO.getPrehomoPId();
|
||||
if(StringUtils.isNotEmpty(prehomoPId)){
|
||||
updateFlowAssignee(projectLawsInventoryEO,projectTaskInventoryEO,prehomoPId, FlowTypeEnum.PREHOMOQRLC.getValue());
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新流程办理人
|
||||
* @param projectLawsInventoryEO 法规清单数据
|
||||
* @param projectTaskInventoryEO 任务清单数据
|
||||
* @param pId 流程实例id
|
||||
* @param flowType 流程类型
|
||||
*/
|
||||
public void updateFlowAssignee(ProjectLawsInventoryEO projectLawsInventoryEO,ProjectTaskInventoryEO projectTaskInventoryEO,String pId,String flowType){
|
||||
QueryWrapper<ProjectTaskInventoryDetailEO> taskInventoryDetailWrapper = new QueryWrapper<>();
|
||||
taskInventoryDetailWrapper.lambda().eq(ProjectTaskInventoryDetailEO::getProjectTaskInventoryId,projectTaskInventoryEO.getProjectLawsInventoryId());
|
||||
taskInventoryDetailWrapper.lambda().eq(ProjectTaskInventoryDetailEO::getActiProcInstId,pId);
|
||||
taskInventoryDetailWrapper.lambda().eq(ProjectTaskInventoryDetailEO::getFlowType,flowType);
|
||||
List<ProjectTaskInventoryDetailEO> taskInventoryDetailList = projectTaskInventoryDetailEOService.getBaseMapper().selectList(taskInventoryDetailWrapper);
|
||||
|
||||
if(CollectionUtils.isNotEmpty(taskInventoryDetailList)){
|
||||
if(StringUtils.equals(flowType,FlowTypeEnum.SJFHXSHLC.getValue())){
|
||||
for (ProjectTaskInventoryDetailEO projectTaskInventoryDetailEO : taskInventoryDetailList) {
|
||||
if(StringUtils.equals(projectTaskInventoryDetailEO.getTaskDefinitionKey(), DesignComplianceNodeEnum.THE_RESPONSIBLE_PERSON_HANDLES_THE_TASK.getKey())){
|
||||
//更新责任人的任务
|
||||
projectTaskInventoryDetailEO.setUserId(projectLawsInventoryEO.getDesignDutyId());
|
||||
}
|
||||
if(StringUtils.equals(projectTaskInventoryDetailEO.getTaskDefinitionKey(), DesignComplianceNodeEnum.SPONSOR_REVIEW.getKey())){
|
||||
//更新发起人的任务
|
||||
projectTaskInventoryDetailEO.setUserId(projectLawsInventoryEO.getDesignInitiatorId());
|
||||
}
|
||||
this.projectTaskInventoryDetailEOService.updateById(projectTaskInventoryDetailEO);
|
||||
}
|
||||
}else if(StringUtils.equals(flowType,FlowTypeEnum.PREHOMOQRLC.getValue())){
|
||||
for (ProjectTaskInventoryDetailEO projectTaskInventoryDetailEO : taskInventoryDetailList) {
|
||||
if(StringUtils.equals(projectTaskInventoryDetailEO.getTaskDefinitionKey(), DesignComplianceNodeEnum.THE_RESPONSIBLE_PERSON_HANDLES_THE_TASK.getKey())){
|
||||
//更新责任人的任务
|
||||
projectTaskInventoryDetailEO.setUserId(projectLawsInventoryEO.getPrehomoDutyId());
|
||||
}
|
||||
if(StringUtils.equals(projectTaskInventoryDetailEO.getTaskDefinitionKey(), DesignComplianceNodeEnum.SPONSOR_REVIEW.getKey())){
|
||||
//更新发起人的任务
|
||||
projectTaskInventoryDetailEO.setUserId(projectLawsInventoryEO.getPrehomoInitiatorId());
|
||||
}
|
||||
this.projectTaskInventoryDetailEOService.updateById(projectTaskInventoryDetailEO);
|
||||
}
|
||||
}else if(StringUtils.equals(flowType,FlowTypeEnum.YZFHXSCLC.getValue())){
|
||||
for (ProjectTaskInventoryDetailEO projectTaskInventoryDetailEO : taskInventoryDetailList) {
|
||||
if(StringUtils.equals(projectTaskInventoryDetailEO.getTaskDefinitionKey(), DesignComplianceNodeEnum.THE_RESPONSIBLE_PERSON_HANDLES_THE_TASK.getKey())){
|
||||
//更新责任人的任务
|
||||
projectTaskInventoryDetailEO.setUserId(projectLawsInventoryEO.getVerifyDutyId());
|
||||
}
|
||||
if(StringUtils.equals(projectTaskInventoryDetailEO.getTaskDefinitionKey(), DesignComplianceNodeEnum.SPONSOR_REVIEW.getKey())){
|
||||
//更新发起人的任务
|
||||
projectTaskInventoryDetailEO.setUserId(projectLawsInventoryEO.getVerifyInitiatorId());
|
||||
}
|
||||
this.projectTaskInventoryDetailEOService.updateById(projectTaskInventoryDetailEO);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id删除
|
||||
*
|
||||
@@ -1210,7 +1307,20 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
||||
|
||||
}
|
||||
if(StringUtils.equals(operatorType,OperatorTypeEnum.QUERY.getValue())){
|
||||
|
||||
Result<ProjectLawsInventoryEO> objectResult = new Result<>();
|
||||
try {
|
||||
String projectLawsInventoryId = jsonObject.getString("projectLawsInventoryId");
|
||||
QueryWrapper<ProjectLawsInventoryEO> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.lambda().eq(ProjectLawsInventoryEO::getId,projectLawsInventoryId);
|
||||
ProjectLawsInventoryEO projectLawsInventoryEO = this.baseMapper.selectOne(queryWrapper);
|
||||
objectResult.setResult(projectLawsInventoryEO);
|
||||
objectResult.setSuccess(true);
|
||||
}catch (Exception ex){
|
||||
objectResult.setSuccess(false);
|
||||
ex.printStackTrace();
|
||||
log.error("工作流后端查询法规清单失败:" + ex.getMessage());
|
||||
}
|
||||
return objectResult;
|
||||
}
|
||||
if(StringUtils.equals(operatorType,OperatorTypeEnum.SEND_MSG.getValue())){
|
||||
workFlowSendMsg(jsonObject);
|
||||
@@ -1643,17 +1753,17 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
||||
}
|
||||
|
||||
//责任人
|
||||
if (StringUtils.isBlank(projectLawsInventoryEO.getDesignDutyId())) {
|
||||
if (StringUtils.isNotBlank(projectLawsInventoryEO.getDesignDutyId())) {
|
||||
userIdList.add(projectLawsInventoryEO.getDesignDutyId());
|
||||
}else {
|
||||
projectLawsInventoryEO.setDesignDutyName("空");
|
||||
}
|
||||
if (StringUtils.isBlank(projectLawsInventoryEO.getPrehomoDutyId())) {
|
||||
if (StringUtils.isNotBlank(projectLawsInventoryEO.getPrehomoDutyId())) {
|
||||
userIdList.add(projectLawsInventoryEO.getPrehomoDutyId());
|
||||
}else {
|
||||
projectLawsInventoryEO.setPrehomoDutyName("空");
|
||||
}
|
||||
if (StringUtils.isBlank(projectLawsInventoryEO.getVerifyDutyId())) {
|
||||
if (StringUtils.isNotBlank(projectLawsInventoryEO.getVerifyDutyId())) {
|
||||
userIdList.add(projectLawsInventoryEO.getVerifyDutyId());
|
||||
}else {
|
||||
projectLawsInventoryEO.setVerifyDutyName("空");
|
||||
@@ -2406,8 +2516,12 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
||||
@Override
|
||||
@Transactional
|
||||
public Result<?> change(Map<String, Object> parmas) {
|
||||
List<String> idList = Arrays.asList(parmas.get("ids").toString().split(","));
|
||||
if(CollectionUtils.isNotEmpty(idList)){
|
||||
String ids = parmas.get("ids").toString();
|
||||
if(StringUtils.isNotEmpty(ids)){
|
||||
List<String> idList = Arrays.asList(ids.split(","));
|
||||
String projectLawsInventoryIds = ids;
|
||||
String pIds = "";
|
||||
|
||||
QueryWrapper<ProjectLawsInventoryEO> updateLawsInventoryWrapper = new QueryWrapper<>();
|
||||
updateLawsInventoryWrapper.lambda().in(ProjectLawsInventoryEO::getId,idList);
|
||||
ProjectLawsInventoryEO projectLawsInventoryEO = new ProjectLawsInventoryEO();
|
||||
@@ -2437,6 +2551,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
||||
processHistoryDeleteWrapper.lambda().in(ProcessHistoryEO::getActiProcInstId,actiProcInstIdList);
|
||||
processHistoryEOService.remove(processHistoryDeleteWrapper);
|
||||
}
|
||||
pIds = actiProcInstIdList.stream().map(String::valueOf).collect(Collectors.joining(","));
|
||||
}
|
||||
|
||||
List<ProjectTaskInventoryEO> projectTaskInventoryEOList = new ArrayList<>();
|
||||
@@ -2461,9 +2576,11 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
||||
queryTaskInventoryFeedbackWrapper.lambda().in(ProjectTaskInventoryFeedbackEO::getProjectTaskInventoryId,idList);
|
||||
List<ProjectTaskInventoryFeedbackEO> projectTaskInventoryFeedbackEOList = projectTaskInventoryFeedbackEOService.getBaseMapper().selectList(queryTaskInventoryFeedbackWrapper);
|
||||
List<String> feedbackIdList = projectTaskInventoryFeedbackEOList.stream().map(ProjectTaskInventoryFeedbackEO::getId).distinct().collect(Collectors.toList());
|
||||
QueryWrapper<FeedbackHistory> deleteFeedbackHistoryWrapper = new QueryWrapper<>();
|
||||
deleteFeedbackHistoryWrapper.lambda().in(FeedbackHistory::getFeedbackId,feedbackIdList);
|
||||
feedbackHistoryService.remove(deleteFeedbackHistoryWrapper);
|
||||
if(CollectionUtils.isNotEmpty(feedbackIdList)){
|
||||
QueryWrapper<FeedbackHistory> deleteFeedbackHistoryWrapper = new QueryWrapper<>();
|
||||
deleteFeedbackHistoryWrapper.lambda().in(FeedbackHistory::getFeedbackId,feedbackIdList);
|
||||
feedbackHistoryService.remove(deleteFeedbackHistoryWrapper);
|
||||
}
|
||||
|
||||
//删除反馈意见数据
|
||||
QueryWrapper<ProjectTaskInventoryFeedbackEO> deleteTaskInventoryFeedbackWrapper = new QueryWrapper<>();
|
||||
@@ -2474,6 +2591,12 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
||||
QueryWrapper<ConditionAssessmentEO> deleteConditionAssessmentWrapper = new QueryWrapper<>();
|
||||
deleteConditionAssessmentWrapper.lambda().in(ConditionAssessmentEO::getProjectLawsInventoryId,idList);
|
||||
this.conditionAssessmentEOService.remove(deleteConditionAssessmentWrapper);
|
||||
|
||||
Map<String,Object> params = new HashMap<>();
|
||||
params.put("projectLawsInventoryIds",projectLawsInventoryIds);
|
||||
params.put("pIds",pIds);
|
||||
//根据流程实例id 、 法规清单id 删除相关流程。
|
||||
workFlowFeignClient.deleteProcessInstanceByProjectLawsInventoryIds(params);
|
||||
}
|
||||
return Result.OK("变更成功!");
|
||||
}
|
||||
|
||||
+3
-2
@@ -363,7 +363,7 @@ public class ProjectLibraryBaseServiceImpl extends ServiceImpl<ProjectLibraryBas
|
||||
public Map<String, Object> getProjectDetailsStatisticsGroupByTerritory(Map<String, Object> params) {
|
||||
String operatorType = (String) params.get("operatorType");
|
||||
String projectLibraryId = (String) params.get("projectLibraryId");
|
||||
if(org.apache.commons.lang3.StringUtils.isEmpty(projectLibraryId)){
|
||||
if(StringUtils.isEmpty(projectLibraryId)){
|
||||
throw new JeroBootException("项目库id不能为空!");
|
||||
}
|
||||
String cut = (String) params.get("cut");
|
||||
@@ -553,7 +553,8 @@ public class ProjectLibraryBaseServiceImpl extends ServiceImpl<ProjectLibraryBas
|
||||
if(StringUtils.isNotEmpty(dutyTerritories)){
|
||||
dutyTerritories = dutyTerritories.substring(0,dutyTerritories.length()-1);
|
||||
}
|
||||
data.put("dutyTerritory",dutyTerritories);
|
||||
// data.put("dutyTerritory",dutyTerritories);
|
||||
data.put("dutyTerritoryName",dutyTerritories);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+4
@@ -72,6 +72,10 @@ public class workFlowController {
|
||||
@ApiOperation(value="完成任务", notes="完成任务")
|
||||
@PostMapping("/completeTask")
|
||||
public Result<String> completeTaskByUserId(@RequestBody BusMes busMes){
|
||||
if(StringUtils.isEmpty(busMes.getUserId())){
|
||||
LoginUser currentUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||
busMes.setUserId(currentUser.getId());
|
||||
}
|
||||
Result<String> str = workFlowFeignClient.completeTaskByUserId(busMes);
|
||||
if(str.getCode() == 500){
|
||||
str.setSuccess(false);
|
||||
|
||||
+8
@@ -79,6 +79,14 @@ public interface WorkFlowFeignClient {
|
||||
@RequestMapping(value = "/bat-wkflow/deleteProcessInstance",method = RequestMethod.GET)
|
||||
Result<String> deleteProcessInstance(@RequestParam("pId") String pId);
|
||||
|
||||
/**
|
||||
* 根据法规清单id删除流程
|
||||
* @param params
|
||||
* @return
|
||||
*/
|
||||
@RequestMapping(value = "/bat-wkflow/deleteProcessInstanceByProjectLawsInventoryIds",method = RequestMethod.GET)
|
||||
Result<String> deleteProcessInstanceByProjectLawsInventoryIds(@RequestParam Map<String,Object> params);
|
||||
|
||||
/**
|
||||
* 流程实例明细列表
|
||||
* @param prcNum
|
||||
|
||||
+9
@@ -96,6 +96,15 @@ public class WorkFlowFeignClientImpl{
|
||||
return workFlowFeignClient.deleteProcessInstance(pId);
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据法规清单id删除流程
|
||||
* @param params
|
||||
* @return
|
||||
*/
|
||||
public Result<String> deleteProcessInstanceByProjectLawsInventoryIds(@RequestParam Map<String,Object> params){
|
||||
return workFlowFeignClient.deleteProcessInstanceByProjectLawsInventoryIds(params);
|
||||
}
|
||||
|
||||
/**
|
||||
* 流程实例明细列表
|
||||
* @param prcNum
|
||||
|
||||
Reference in New Issue
Block a user