Commit 78917e80 authored by chenzhao's avatar chenzhao

施工并网验收工作流程节点校验

parent fa55ea51
package com.yeejoin.amos.boot.module.hygf.api.Enum;
import lombok.AllArgsConstructor;
import lombok.Getter;
@Getter
@AllArgsConstructor
public enum BusinessWorkflowKey {
经销商管理员审核("经销商管理员审核","Activity_0r2x1es,Activity_0ojajec"),
完工登记("完工登记","Activity_1spujef"),
施工完成提交("施工完成提交","Activity_0bs6t4g"),
并网登记("并网登记","Activity_0bs6t4g"),
验收提交("验收提交","Activity_0bs6t4g"),
完工自审("完工自审","Activity_16r1828"),
片区运营审核("片区运营审核","Activity_1bldcno,Activity_05nlkey,Activity_0edftmv"),
设计审核("设计审核","Activity_095if3p,Activity_0k4o46e"),
工程审核("工程审核","Activity_1yftt2k,Activity_0k4o46e"),
投融审核("投融审核","Activity_1rjn5s1"),
法务审核("法务审核","Activity_1rjn5s1"),
资产审核("资产审核","Activity_0rbc0gc");
private String name;
private String code;
}
......@@ -10,6 +10,7 @@ import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.yeejoin.amos.boot.biz.common.entity.BaseEntity;
import com.yeejoin.amos.boot.module.hygf.api.Enum.ArrivalStateeEnum;
import com.yeejoin.amos.boot.module.hygf.api.Enum.BusinessWorkflowKey;
import com.yeejoin.amos.boot.module.hygf.api.Enum.GridStatusEnum;
import com.yeejoin.amos.boot.module.hygf.api.Enum.WorkOrderEnum;
import com.yeejoin.amos.boot.module.hygf.api.dto.*;
......@@ -114,7 +115,7 @@ public class AcceptanceCheckServiceImpl extends BaseService<AcceptanceCheckDto,A
update.set(AcceptanceCheck::getBasicGridNode,"jxsAdmin");
if (model.get("type") != null && "1".equals(model.get("type").toString())) {
// 执行工作流
this.wofkflowExcute(basicGridRecord.getInstanceId(),"0","重新验收");
this.wofkflowExcute(basicGridRecord.getInstanceId(),"0","重新验收",BusinessWorkflowKey.验收提交.getCode());
update.set(AcceptanceCheck::getPowerStationAreaStatus,null);
update.set(AcceptanceCheck::getPowerStationLegalStatus,null);
update.set(AcceptanceCheck::getPowerStationFinancingStatus,null);
......@@ -176,12 +177,15 @@ public class AcceptanceCheckServiceImpl extends BaseService<AcceptanceCheckDto,A
// 工作流执行一步
public void wofkflowExcute(String instanceId, String approvalStatus,String comment) {
public void wofkflowExcute(String instanceId, String approvalStatus,String comment,String taskKey) {
LambdaQueryWrapper<AcceptanceCheckAuditing> query = new LambdaQueryWrapper<>();
query.eq(AcceptanceCheckAuditing::getInstanceId, instanceId);
query.orderByDesc(BaseEntity::getRecDate);
query.last("limit 1");
AcceptanceCheckAuditing basicGridAuditing = acceptanceCheckAuditingService.getBaseMapper().selectOne(query);
if (!taskKey.contains(basicGridAuditing.getNextNodeKey())){
throw new BadRequest("无可执行任务");
}
//组装信息
TaskResultDTO task = new TaskResultDTO();
......@@ -215,7 +219,7 @@ public class AcceptanceCheckServiceImpl extends BaseService<AcceptanceCheckDto,A
AcceptanceCheck basicGridRecord = this.getBaseMapper().selectById(sequenceNbr);
//执行工作流
this.wofkflowExcute(instanceId, approvalStatus , comment);
this.wofkflowExcute(instanceId, approvalStatus , comment, BusinessWorkflowKey.经销商管理员审核.getCode());
//修改并网数据状态
basicGridRecord.setAcceptanceCheckStatus(approvalStatus.equals("0")?GridStatusEnum.PQYYDSH.getCode():GridStatusEnum.WTG.getCode());
basicGridRecord.setBasicGridNode(approvalStatus.equals("0")?"ys-area":null);
......@@ -265,14 +269,14 @@ public class AcceptanceCheckServiceImpl extends BaseService<AcceptanceCheckDto,A
up.set(AcceptanceCheck::getAcceptanceCheckStatus,GridStatusEnum.DZG.getCode());
}
}
this.wofkflowExcute(instanceId, approvalStatus , comment );
this.wofkflowExcute(instanceId, approvalStatus , comment ,BusinessWorkflowKey.片区运营审核.getCode() );
break;
case "ys-fawu":
up.set(AcceptanceCheck::getPowerStationLegalStatus,approvalStatus.equals("0")?"通过":"驳回");
da.setOperationContent("验收审核-法务审核-" + (approvalStatus.equals("0")?"通过":"驳回"));
if (basicGridRecord.getPowerStationFinancingStatus() != null && basicGridRecord.getPowerStationFinancingStatus().equals("通过")&&approvalStatus.equals("0") ){
up.set(AcceptanceCheck::getAcceptanceCheckStatus,GridStatusEnum.ZCDSH.getCode());
this.wofkflowExcute(instanceId, approvalStatus , comment );
this.wofkflowExcute(instanceId, approvalStatus , comment,BusinessWorkflowKey.法务审核.getCode() );
up.set(AcceptanceCheck::getBasicGridNode,"ys-zichan");
}else if( null == basicGridRecord.getPowerStationFinancingStatus() && approvalStatus.equals("0") && ( Objects.isNull(basicGridRecord.getRectificationStatus())||(!basicGridRecord.getRectificationStatus().contains("ys-tourong")) ) ) {
......@@ -296,7 +300,7 @@ public class AcceptanceCheckServiceImpl extends BaseService<AcceptanceCheckDto,A
else if (null != basicGridRecord.getPowerStationFinancingStatus() && basicGridRecord.getPowerStationFinancingStatus().equals("驳回")){
return CommonResponseNewUtil.failureMessage("该流程已被投融人员审核驳回,请刷新列表");
}else {
this.wofkflowExcute(instanceId, approvalStatus , comment );
this.wofkflowExcute(instanceId, approvalStatus , comment,BusinessWorkflowKey.法务审核.getCode() );
}
break;
case "ys-tourong":
......@@ -304,7 +308,7 @@ public class AcceptanceCheckServiceImpl extends BaseService<AcceptanceCheckDto,A
da.setOperationContent("验收审核-投融审核-" + (approvalStatus.equals("0")?"通过":"驳回"));
if (basicGridRecord.getPowerStationLegalStatus() != null && basicGridRecord.getPowerStationLegalStatus().equals("通过")&&approvalStatus.equals("0") ){
up.set(AcceptanceCheck::getAcceptanceCheckStatus,GridStatusEnum.ZCDSH.getCode());
this.wofkflowExcute(instanceId, approvalStatus , comment );
this.wofkflowExcute(instanceId, approvalStatus , comment ,BusinessWorkflowKey.投融审核.getCode());
up.set(AcceptanceCheck::getBasicGridNode,"ys-zichan");
}else if( null == basicGridRecord.getPowerStationLegalStatus() && approvalStatus.equals("0") && ( Objects.isNull(basicGridRecord.getRectificationStatus())||(!basicGridRecord.getRectificationStatus().contains("ys-fawu")) )) {
up.set(AcceptanceCheck::getBasicGridNode,"ys-fawu");
......@@ -326,7 +330,7 @@ public class AcceptanceCheckServiceImpl extends BaseService<AcceptanceCheckDto,A
} else if (null != basicGridRecord.getPowerStationLegalStatus() && basicGridRecord.getPowerStationLegalStatus().equals("驳回")){
return CommonResponseNewUtil.failureMessage("该流程已被法务人员审核驳回,请刷新列表");
}else {
this.wofkflowExcute(instanceId, approvalStatus , comment );
this.wofkflowExcute(instanceId, approvalStatus , comment ,BusinessWorkflowKey.投融审核.getCode() );
}
break;
default:
......@@ -337,7 +341,7 @@ public class AcceptanceCheckServiceImpl extends BaseService<AcceptanceCheckDto,A
up.set(AcceptanceCheck::getAcceptanceTime,new Date());
up.set(AcceptanceCheck::getAcceptanceCheckStatus,GridStatusEnum.YWC.getCode());
}
this.wofkflowExcute(instanceId, approvalStatus , comment );
this.wofkflowExcute(instanceId, approvalStatus , comment ,BusinessWorkflowKey.资产审核.getCode() );
// 线上验收
......
......@@ -195,7 +195,7 @@ public class BasicGridAcceptanceServiceImpl
update.set(BasicGridRecord::getBasicGridNode,"jxsAdmin");
if (grid.getType() != null && "1".equals(grid.getType())) {
// 执行工作流
this.wofkflowExcute(basicGridRecord.getInstanceId(),"0","重新登记");
this.wofkflowExcute(basicGridRecord.getInstanceId(),"0","重新登记",BusinessWorkflowKey.并网登记.getCode());
update.set(BasicGridRecord::getPowerStationAreaStatus,null);
update.set(BasicGridRecord::getPowerStationDesignStatus,null);
update.set(BasicGridRecord::getPowerStationEngineeringStatus,null);
......@@ -444,13 +444,16 @@ public class BasicGridAcceptanceServiceImpl
}
// 工作流执行一步
public void wofkflowExcute(String instanceId, String approvalStatus,String comment) {
public void wofkflowExcute(String instanceId, String approvalStatus,String comment,String taskKey) {
LambdaQueryWrapper<BasicGridAuditing> query = new LambdaQueryWrapper<>();
query.eq(BasicGridAuditing::getInstanceId, instanceId);
query.orderByDesc(BaseEntity::getRecDate);
query.last("limit 1");
BasicGridAuditing basicGridAuditing = basicGridAuditingService.getBaseMapper().selectOne(query);
if (!taskKey.contains(basicGridAuditing.getNextNodeKey())){
throw new BadRequest("无可执行任务");
}
//组装信息
TaskResultDTO task = new TaskResultDTO();
......@@ -486,7 +489,7 @@ public class BasicGridAcceptanceServiceImpl
BasicGridRecord basicGridRecord = basicGridRecordService.getBaseMapper().selectById(sequenceNbr);
//执行工作流
this.wofkflowExcute(instanceId, approvalStatus , comment);
this.wofkflowExcute(instanceId, approvalStatus , comment,BusinessWorkflowKey.经销商管理员审核.getCode());
//修改并网数据状态
basicGridRecord.setGridStatus(approvalStatus.equals("0")?GridStatusEnum.PQYYDSH.getCode():GridStatusEnum.WTG.getCode());
basicGridRecord.setBasicGridNode(approvalStatus.equals("0")?"bw-area":null);
......@@ -539,14 +542,14 @@ public class BasicGridAcceptanceServiceImpl
up.set(BasicGridRecord::getGridStatus,GridStatusEnum.DZG.getCode());
}
}
this.wofkflowExcute(instanceId, approvalStatus , comment );
this.wofkflowExcute(instanceId, approvalStatus , comment ,BusinessWorkflowKey.片区运营审核.getCode() );
break;
case "bw-design":
up.set(BasicGridRecord::getPowerStationDesignStatus,approvalStatus.equals("0")?"通过":"驳回");
da.setOperationContent("并网验收-设计审核-" + (approvalStatus.equals("0")?"通过":"驳回"));
if (basicGridRecord.getPowerStationEngineeringStatus() != null && basicGridRecord.getPowerStationEngineeringStatus().equals("通过")&&approvalStatus.equals("0") ){
up.set(BasicGridRecord::getGridStatus,GridStatusEnum.YWC.getCode());
this.wofkflowExcute(instanceId, approvalStatus , comment );
this.wofkflowExcute(instanceId, approvalStatus , comment ,BusinessWorkflowKey.设计审核.getCode() );
up.set(BasicGridRecord::getBasicGridNode,"all");
up.set(BasicGridRecord::getGridTime,new Date());
LambdaUpdateWrapper<PeasantHousehold> wrapper = new LambdaUpdateWrapper<>();
......@@ -584,7 +587,7 @@ public class BasicGridAcceptanceServiceImpl
else if (null != basicGridRecord.getPowerStationEngineeringStatus() && basicGridRecord.getPowerStationEngineeringStatus().equals("驳回")){
return CommonResponseNewUtil.failureMessage("该流程已被工程人员审核驳回,请刷新列表");
}else {
this.wofkflowExcute(instanceId, approvalStatus , comment );
this.wofkflowExcute(instanceId, approvalStatus , comment,BusinessWorkflowKey.设计审核.getCode() );
}
break;
default:
......@@ -592,7 +595,7 @@ public class BasicGridAcceptanceServiceImpl
da.setOperationContent("并网验收-工程审核-" + (approvalStatus.equals("0")?"通过":"驳回"));
if (basicGridRecord.getPowerStationDesignStatus() != null && basicGridRecord.getPowerStationDesignStatus().equals("通过")&&approvalStatus.equals("0") ){
up.set(BasicGridRecord::getGridStatus,GridStatusEnum.YWC.getCode());
this.wofkflowExcute(instanceId, approvalStatus , comment );
this.wofkflowExcute(instanceId, approvalStatus , comment ,BusinessWorkflowKey.工程审核.getCode() );
up.set(BasicGridRecord::getBasicGridNode,"all");
up.set(BasicGridRecord::getGridTime,new Date());
LambdaUpdateWrapper<PeasantHousehold> wrapper = new LambdaUpdateWrapper<>();
......@@ -630,7 +633,7 @@ public class BasicGridAcceptanceServiceImpl
} else if (null != basicGridRecord.getPowerStationDesignStatus() && basicGridRecord.getPowerStationDesignStatus().equals("驳回")){
return CommonResponseNewUtil.failureMessage("该流程已被设计人员审核驳回,请刷新列表");
}else {
this.wofkflowExcute(instanceId, approvalStatus , comment );
this.wofkflowExcute(instanceId, approvalStatus , comment ,BusinessWorkflowKey.工程审核.getCode() );
}
break;
}
......
......@@ -366,7 +366,7 @@ public class WorkOrderServiceImpl extends BaseService<WorkOrderDto, WorkOrder, W
hygfWorkOrderStationAuditingDto.setPromoter(RequestContext.getExeUserId());
hygfWorkOrderStationAuditingService.createWithModel(hygfWorkOrderStationAuditingDto);
}else {
this.wofkflowExcute(workOrderStationAuditing.getInstanceId(),"0","通过");
this.wofkflowExcute(workOrderStationAuditing.getInstanceId(),"0","通过",BusinessWorkflowKey.施工完成提交.getCode());
}
......@@ -468,13 +468,15 @@ public class WorkOrderServiceImpl extends BaseService<WorkOrderDto, WorkOrder, W
}
// 工作流执行一步
public void wofkflowExcute(String instanceId, String approvalStatus,String comment) {
public void wofkflowExcute(String instanceId, String approvalStatus,String comment,String taskKey) {
LambdaQueryWrapper<HygfWorkOrderStationAuditing> query = new LambdaQueryWrapper<>();
query.eq(HygfWorkOrderStationAuditing::getInstanceId, instanceId);
query.orderByDesc(BaseEntity::getRecDate);
query.last("limit 1");
HygfWorkOrderStationAuditing hygfWorkOrderStationAuditing = hygfWorkOrderStationAuditingService.getBaseMapper().selectOne(query);
if (!taskKey.contains(hygfWorkOrderStationAuditing.getNextNodeKey())){
throw new BadRequest("无可执行任务");
}
//组装信息
TaskResultDTO task = new TaskResultDTO();
......@@ -1080,7 +1082,7 @@ public class WorkOrderServiceImpl extends BaseService<WorkOrderDto, WorkOrder, W
HygfWorkOrderStationAuditing workOrderStationAuditing = hygfWorkOrderStationAuditingService.getBaseMapper().selectOne(audit);
//兼容历史数据
if(!Objects.isNull(workOrderStationAuditing )){
this.wofkflowExcute(workOrderStationAuditing.getInstanceId(), "0", "通过");
this.wofkflowExcute(workOrderStationAuditing.getInstanceId(), "0", "通过",BusinessWorkflowKey.完工登记.getCode());
}
......@@ -1226,7 +1228,7 @@ public class WorkOrderServiceImpl extends BaseService<WorkOrderDto, WorkOrder, W
if(!Objects.isNull(workOrderStationAuditing)){
this.wofkflowExcute(workOrderStationAuditing.getInstanceId(),
constructionRecords.getOperationResults().equals("通过")?"0":"1",
constructionRecords.getOperationResults());
constructionRecords.getOperationResults(),BusinessWorkflowKey.完工自审.getCode());
}
......@@ -1249,7 +1251,8 @@ public class WorkOrderServiceImpl extends BaseService<WorkOrderDto, WorkOrder, W
audit.eq(HygfWorkOrderStationAuditing::getWorkOrderPowerStationId, powerStationId);
audit.last("limit 1");
HygfWorkOrderStationAuditing workOrderStationAuditing = hygfWorkOrderStationAuditingService.getBaseMapper().selectOne(audit);
this.wofkflowExcute(workOrderStationAuditing.getInstanceId(), approvalStatus , comment );
String taskKey = "";
LambdaQueryWrapper<WorkOrderPowerStation> qu = new LambdaQueryWrapper();
qu.eq(WorkOrderPowerStation::getSequenceNbr, powerStationId);
......@@ -1261,20 +1264,24 @@ public class WorkOrderServiceImpl extends BaseService<WorkOrderDto, WorkOrder, W
constructionRecords.setOperationContent("施工验收-片区运营审核-" +workOrderPowerStation.getPowerStationAreaStatus());
workOrderPowerStation.setWorkOrderPowerStationNode(WorkOrderEnum.工程待审核.getCode());
workOrderPowerStation.setPowerStationConstructionStatus(WorkOrderEnum.待审核.getName());
taskKey = BusinessWorkflowKey.片区运营审核.getCode();
break;
case "design":
workOrderPowerStation.setPowerStationDesignStatus(approvalStatus.equals("0")?"通过":"驳回");
constructionRecords.setOperationContent("施工验收-设计审核-" + workOrderPowerStation.getPowerStationDesignStatus());
workOrderPowerStation.setPowerStationConstructionStatus(WorkOrderEnum.已完工.getCode());
workOrderPowerStation.setWorkOrderPowerStationNode(WorkOrderEnum.全部节点.getCode());
taskKey = BusinessWorkflowKey.设计审核.getCode();
break;
default:
workOrderPowerStation.setPowerStationEngineeringStatus(approvalStatus.equals("0")?"通过":"驳回");
constructionRecords.setOperationContent("施工验收-工程审核-" + workOrderPowerStation.getPowerStationEngineeringStatus());
workOrderPowerStation.setPowerStationConstructionStatus(WorkOrderEnum.待审核.getName());
workOrderPowerStation.setWorkOrderPowerStationNode(WorkOrderEnum.设计待审核.getCode());
taskKey = BusinessWorkflowKey.工程审核.getCode();
break;
}
this.wofkflowExcute(workOrderStationAuditing.getInstanceId(), approvalStatus , comment ,taskKey );
//若驳回则修改施工场站状态为未通过 上述switch作通过状态的统一处理 且节点恢复为null
if (approvalStatus.equals("1")){
workOrderPowerStation.setPowerStationConstructionStatus(WorkOrderEnum.未通过.getCode());
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment