Browse Source

费用申请添加回退功能

mssql
Yen 3 years ago
parent
commit
e0dc1e0f7d
  1. 21
      src/main/java/com/qs/serve/modules/tbs/controller/TbsCostApplyController.java
  2. 71
      src/main/java/com/qs/serve/modules/tbs/service/impl/TbsCostApplyServiceImpl.java

21
src/main/java/com/qs/serve/modules/tbs/controller/TbsCostApplyController.java

@ -372,6 +372,7 @@ public class TbsCostApplyController {
return R.error("费用申请处于未非审批状态!");
}
R<String> result = seeYonService.commonCommit(affairCommit,TbsSeeYonConst.COST_APPLY_FORM);
boolean isBackCommit = affairCommit.getState()==2;
if(result.getStatus()==200){
// 判断是否含有下个节点
String flag = result.getData();
@ -383,12 +384,20 @@ public class TbsCostApplyController {
tbsCostApplyService.updateById(apply);
return R.ok();
}else if ("stop".equals(flag)){
TbsCostApply apply = new TbsCostApply();
apply.setId(costApply.getId());
apply.setChargeState(TbsCostApplyState.State_5_stop.getCode());
tbsCostApplyService.updateById(apply);
tbsCostApplyService.releaseCost(costApply.getId(), 1);
return R.ok();
if(isBackCommit){
TbsCostApply apply = new TbsCostApply();
apply.setId(costApply.getId());
apply.setChargeState(TbsCostApplyState.State_4_refused.getCode());
tbsCostApplyService.updateById(apply);
return R.ok();
}else {
TbsCostApply apply = new TbsCostApply();
apply.setId(costApply.getId());
apply.setChargeState(TbsCostApplyState.State_5_stop.getCode());
tbsCostApplyService.updateById(apply);
tbsCostApplyService.releaseCost(costApply.getId(), 1);
return R.ok();
}
}else if ("next".equals(flag)){
return R.ok();
}

71
src/main/java/com/qs/serve/modules/tbs/service/impl/TbsCostApplyServiceImpl.java

@ -60,45 +60,40 @@ public class TbsCostApplyServiceImpl extends ServiceImpl<TbsCostApplyMapper,TbsC
sysUser.checkSyAccount();
//恢复绑定
this.releaseCost(tbsCostApply.getId(),0);
if(tbsCostApply.getChargeState().equals(TbsCostApplyState.State_0_unPublish.getCode())){
Map<String, Object> data = new HashMap<>(10);
data.put("empId",sysUser.getCode());
data.put("applyTime", DateUtils.format(LocalDateTime.now(), DateFormatString.DATE_TIME));
data.put("money",tbsCostApply.getTotalActivityAmount());
data.put("costApplyCode",tbsCostApply.getId());
data.put("costApplyId",tbsCostApply.getId());
BaseCreateProcessBo createProcess = new BaseCreateProcessBo();
createProcess.setTemplateCode(TbsSeeYonConst.COST_APPLY_FORM);
createProcess.setMemberLoginName(sysUser.getSyAccount());
createProcess.setSubjectTitle(TbsSeeYonConst.PRE_TITLE_COST_APPLY + tbsCostApply.getChargeTheme());
createProcess.setDataJson(JsonUtil.objectToJson(data));
R<String> flowIdResult = seeYonService.baseCreateProcess(createProcess);
if(flowIdResult.getStatus()!=200){
Assert.throwEx("远程服务调用失败");
}
String flowId = flowIdResult.getData();
String formId = null;
R<String> formIdResult = seeYonService.getCostFormId(tbsCostApply.getId());
if(formIdResult.getStatus()==200){
formId = formIdResult.getData();
}
TbsCostApply costApply = new TbsCostApply();
costApply.setId(tbsCostApply.getId());
costApply.setSyFlowId(flowId);
costApply.setSyFormId(formId);
costApply.setChargeState(TbsCostApplyState.State_1_apply.getCode());
this.updateById(costApply);
//移除历史记录
budgetCostItemService.removeByCostApplyId(costApply.getId());
//重新保存
List<TbsBudgetCostItem> allBudgetItem = new ArrayList<>();
allBudgetItem.addAll(result.getBudgetMatchList());
allBudgetItem.addAll(result.getBudgetUnMatchList());
budgetCostItemService.saveBatch(allBudgetItem);
}else if (tbsCostApply.getChargeState().equals(TbsCostApplyState.State_4_refused.getCode())){
//todo 驳回重新申请
Map<String, Object> data = new HashMap<>(10);
data.put("empId",sysUser.getCode());
data.put("applyTime", DateUtils.format(LocalDateTime.now(), DateFormatString.DATE_TIME));
data.put("money",tbsCostApply.getTotalActivityAmount());
data.put("costApplyCode",tbsCostApply.getId());
data.put("costApplyId",tbsCostApply.getId());
BaseCreateProcessBo createProcess = new BaseCreateProcessBo();
createProcess.setTemplateCode(TbsSeeYonConst.COST_APPLY_FORM);
createProcess.setMemberLoginName(sysUser.getSyAccount());
createProcess.setSubjectTitle(TbsSeeYonConst.PRE_TITLE_COST_APPLY + tbsCostApply.getChargeTheme());
createProcess.setDataJson(JsonUtil.objectToJson(data));
R<String> flowIdResult = seeYonService.baseCreateProcess(createProcess);
if(flowIdResult.getStatus()!=200){
Assert.throwEx("远程服务调用失败");
}
String flowId = flowIdResult.getData();
String formId = null;
R<String> formIdResult = seeYonService.getCostFormId(tbsCostApply.getId());
if(formIdResult.getStatus()==200){
formId = formIdResult.getData();
}
TbsCostApply costApply = new TbsCostApply();
costApply.setId(tbsCostApply.getId());
costApply.setSyFlowId(flowId);
costApply.setSyFormId(formId);
costApply.setChargeState(TbsCostApplyState.State_1_apply.getCode());
this.updateById(costApply);
//移除历史记录
budgetCostItemService.removeByCostApplyId(costApply.getId());
//重新保存
List<TbsBudgetCostItem> allBudgetItem = new ArrayList<>();
allBudgetItem.addAll(result.getBudgetMatchList());
allBudgetItem.addAll(result.getBudgetUnMatchList());
budgetCostItemService.saveBatch(allBudgetItem);
}
@Override

Loading…
Cancel
Save