Commit c0e12a85 by 王炜晨

工作流增加条件

parent 97aebbb0
...@@ -589,6 +589,11 @@ public class WorkflowGenerator { ...@@ -589,6 +589,11 @@ public class WorkflowGenerator {
equipCount.put("key", "equipCount"); equipCount.put("key", "equipCount");
equipCount.put("type", "int"); equipCount.put("type", "int");
JSONObject regionalCompanyName = new JSONObject();
totalValue.put("name", "regionalCompanyName");
totalValue.put("key", "regionalCompanyName");
totalValue.put("type", "String");
array.put(arg1); array.put(arg1);
array.put(arg2); array.put(arg2);
array.put(arg3); array.put(arg3);
...@@ -604,6 +609,7 @@ public class WorkflowGenerator { ...@@ -604,6 +609,7 @@ public class WorkflowGenerator {
array.put(value); array.put(value);
array.put(totalValue); array.put(totalValue);
array.put(equipCount); array.put(equipCount);
array.put(regionalCompanyName);
return array; return array;
} }
......
...@@ -2,6 +2,8 @@ package com.xyst.dinas.contract.entity; ...@@ -2,6 +2,8 @@ package com.xyst.dinas.contract.entity;
import java.io.Serializable; import java.io.Serializable;
import org.json.JSONObject;
public class BaseEntity implements Serializable{ public class BaseEntity implements Serializable{
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
...@@ -10,6 +12,8 @@ public class BaseEntity implements Serializable{ ...@@ -10,6 +12,8 @@ public class BaseEntity implements Serializable{
private Long version; private Long version;
private JSONObject approvalParams;
public String getId() { public String getId() {
...@@ -27,6 +31,16 @@ public class BaseEntity implements Serializable{ ...@@ -27,6 +31,16 @@ public class BaseEntity implements Serializable{
public void setVersion(Long version) { public void setVersion(Long version) {
this.version = version; this.version = version;
} }
public JSONObject getApprovalParams() {
return approvalParams;
}
public void setApprovalParams(JSONObject approvalParams) {
this.approvalParams = approvalParams;
}
} }
...@@ -119,10 +119,10 @@ public class ContractServiceImpl implements ContractService { ...@@ -119,10 +119,10 @@ public class ContractServiceImpl implements ContractService {
@Transactional @Transactional
@Override @Override
public void submitFlowForInsert(UUID id) { public void submitFlowForInsert(UUID id, Map<String,Object> params) {
KObject kobject = contractDao.load(id); KObject kobject = contractDao.load(id);
if (needSubmitFlow(ContractConstant.BIZ_TYPE,kobject,"SUBMIT")) { if (needSubmitFlow(ContractConstant.BIZ_TYPE,kobject,"SUBMIT")) {
inzWorkflowService.startWorkflow("SUBMIT", ContractConstant.BIZ_TYPE, kobject.getString(ContractConstant.CONTRACT_NAME),kobject); inzWorkflowService.startWorkflow("SUBMIT", ContractConstant.BIZ_TYPE, kobject.getString(ContractConstant.CONTRACT_NAME),kobject, params);
} }
// else{ // else{
// afterApprovedForInsert(kobject); // afterApprovedForInsert(kobject);
...@@ -131,10 +131,10 @@ public class ContractServiceImpl implements ContractService { ...@@ -131,10 +131,10 @@ public class ContractServiceImpl implements ContractService {
@Override @Override
@Transactional @Transactional
public void submitFlowForUpdate(UUID id) { public void submitFlowForUpdate(UUID id, Map<String,Object> params) {
KObject kobject = contractDao.load(id); KObject kobject = contractDao.load(id);
if (needSubmitFlow(ContractConstant.BIZ_TYPE,kobject,"CHANGE")) { if (needSubmitFlow(ContractConstant.BIZ_TYPE,kobject,"CHANGE")) {
inzWorkflowService.startWorkflow("SUBMIT", ContractConstant.BIZ_TYPE_UPDATE, kobject.getString(ContractConstant.CONTRACT_NAME),kobject); inzWorkflowService.startWorkflow("SUBMIT", ContractConstant.BIZ_TYPE_UPDATE, kobject.getString(ContractConstant.CONTRACT_NAME),kobject, params);
} }
// else{ // else{
// afterApprovedForUpdate(kobject); // afterApprovedForUpdate(kobject);
......
...@@ -2,6 +2,7 @@ package com.xyst.dinas.contract.service; ...@@ -2,6 +2,7 @@ package com.xyst.dinas.contract.service;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
import java.util.Map;
import java.util.UUID; import java.util.UUID;
import org.json.JSONArray; import org.json.JSONArray;
...@@ -70,14 +71,15 @@ public interface ContractService { ...@@ -70,14 +71,15 @@ public interface ContractService {
/** /**
* 新增合同-提交工作流 * 新增合同-提交工作流
* @param id * @param id
* @param params
*/ */
void submitFlowForInsert(UUID id); void submitFlowForInsert(UUID id, Map<String, Object> params);
/** /**
* 变更合同-提交工作流 * 变更合同-提交工作流
* @param id * @param id
*/ */
void submitFlowForUpdate(UUID id); void submitFlowForUpdate(UUID id, Map<String, Object> params);
/** /**
* 新增合同- 审批通过后的回调 * 新增合同- 审批通过后的回调
......
...@@ -2,7 +2,9 @@ package com.xyst.dinas.contract.web; ...@@ -2,7 +2,9 @@ package com.xyst.dinas.contract.web;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Date; import java.util.Date;
import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map;
import java.util.UUID; import java.util.UUID;
import org.json.JSONArray; import org.json.JSONArray;
...@@ -138,8 +140,13 @@ public class ContractController { ...@@ -138,8 +140,13 @@ public class ContractController {
@PostMapping("/contract/submitFlow") @PostMapping("/contract/submitFlow")
public Object submitFlow(@RequestBody BaseEntity baseEntity) { public Object submitFlow(@RequestBody BaseEntity baseEntity) {
UUID id = UUID.fromString(baseEntity.getId()); UUID id = UUID.fromString(baseEntity.getId());
JSONObject approvalParams = baseEntity.getApprovalParams();
Map<String, Object> params = new HashMap<>();
for(String approvalParamsName : approvalParams.keySet()) {
params.put(approvalParamsName, approvalParams.get(approvalParamsName));
}
try{ try{
contractService.submitFlowForInsert(id); contractService.submitFlowForInsert(id,params);
}catch (Exception e){ }catch (Exception e){
e.printStackTrace(); e.printStackTrace();
return ResponseObj.error("提交审核失败", e.getMessage()); return ResponseObj.error("提交审核失败", e.getMessage());
...@@ -150,8 +157,13 @@ public class ContractController { ...@@ -150,8 +157,13 @@ public class ContractController {
@PostMapping("/contract/update/submitFlow") @PostMapping("/contract/update/submitFlow")
public Object submitFlowForUpdate(@RequestBody BaseEntity baseEntity) { public Object submitFlowForUpdate(@RequestBody BaseEntity baseEntity) {
UUID id = UUID.fromString(baseEntity.getId()); UUID id = UUID.fromString(baseEntity.getId());
JSONObject approvalParams = baseEntity.getApprovalParams();
Map<String, Object> params = new HashMap<>();
for(String approvalParamsName : approvalParams.keySet()) {
params.put(approvalParamsName, approvalParams.get(approvalParamsName));
}
try{ try{
contractService.submitFlowForUpdate(id); contractService.submitFlowForUpdate(id, params);
}catch (Exception e){ }catch (Exception e){
e.printStackTrace(); e.printStackTrace();
return ResponseObj.error("变更审核失败", e.getMessage()); return ResponseObj.error("变更审核失败", e.getMessage());
......
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