|
|
@ -188,6 +188,82 @@ public class TbsCostApplyServiceImpl extends ServiceImpl<TbsCostApplyMapper,TbsC |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
public void rebuildBudgetInit(Long costId) { |
|
|
|
|
|
|
|
TbsCostApply costApply = this.getById(costId); |
|
|
|
SysUser sysUser = sysUserService.getById(costApply.getUserId()); |
|
|
|
//相关活动
|
|
|
|
LambdaQueryWrapper<TbsActivity> actLqw = new LambdaQueryWrapper<>(); |
|
|
|
actLqw.eq(TbsActivity::getCostApplyId,costId); |
|
|
|
List<TbsActivity> activityList = tbsActivityMapper.selectList(actLqw); |
|
|
|
|
|
|
|
List<TbsBudgetCostItem> allBudgetItem = new ArrayList<>(); |
|
|
|
|
|
|
|
TbsBudgetTableResultVo result1 = tbsBudgetMatchApplication.getMatchResult(costApply.getId(),false,true); |
|
|
|
Map<Long, TbsScheduleItemBudget> matchItemBudgetsMap = result1.getMatchItemBudgetsMap(); |
|
|
|
List<TbsBudgetLog> budgetLogList = new ArrayList<>(); |
|
|
|
for (TbsActivityCenterGoods centerGoods : result1.getActivityCenterGoodsList()) { |
|
|
|
TbsBudgetCostItem costItem = new TbsBudgetCostItem(); |
|
|
|
costItem.setCenterGoodsCode(centerGoods.getCenterGoodsCode()); |
|
|
|
costItem.setCostApplyId(centerGoods.getCostApplyId()); |
|
|
|
costItem.setActivityId(centerGoods.getActivityId()); |
|
|
|
costItem.setActivityCode(centerGoods.getActivityCode()); |
|
|
|
costItem.setSupplierId(centerGoods.getSupplierId()); |
|
|
|
costItem.setSupplierCode(centerGoods.getSupplierCode()); |
|
|
|
costItem.setSupplierName(centerGoods.getSupplierName()); |
|
|
|
costItem.setSubjectId(centerGoods.getSubjectId()); |
|
|
|
costItem.setSubjectCode(centerGoods.getSubjectCode()); |
|
|
|
costItem.setSubjectName(centerGoods.getSubjectName()); |
|
|
|
costItem.setCenterType(centerGoods.getCenterType()); |
|
|
|
costItem.setCenterId(centerGoods.getCenterId()); |
|
|
|
costItem.setCenterCode(centerGoods.getCenterCode()); |
|
|
|
costItem.setCenterName(centerGoods.getCenterName()); |
|
|
|
costItem.setCenterAmount(centerGoods.getCenterAmount()); |
|
|
|
costItem.setCenterRate(centerGoods.getCenterRate()); |
|
|
|
costItem.setCenterGoodsAmount(centerGoods.getCenterGoodsAmount()); |
|
|
|
costItem.setCenterGoodsRate(centerGoods.getCenterGoodsRate()); |
|
|
|
costItem.setTargetType(centerGoods.getTargetType()); |
|
|
|
costItem.setTargetId(centerGoods.getTargetId()); |
|
|
|
costItem.setTargetCode(centerGoods.getTargetCode()); |
|
|
|
costItem.setTargetName(centerGoods.getTargetName()); |
|
|
|
costItem.setTargetLevelPathIds(centerGoods.getTargetLevelPathIds()); |
|
|
|
costItem.setTargetLevelPathNames(centerGoods.getTargetLevelPathNames()); |
|
|
|
costItem.setActStartDate(centerGoods.getActStartDate()); |
|
|
|
costItem.setActEndDate(centerGoods.getActEndDate()); |
|
|
|
costItem.setPreStartDate(centerGoods.getPreStartDate()); |
|
|
|
costItem.setPreEndDate(centerGoods.getPreEndDate()); |
|
|
|
costItem.setPreCheckDate(centerGoods.getPreCheckDate()); |
|
|
|
costItem.setCenterGoodItemId(centerGoods.getId()); |
|
|
|
|
|
|
|
if(centerGoods.getScheduleItemBudgetId()!=null){ |
|
|
|
TbsScheduleItemBudget itemBudget = matchItemBudgetsMap.get(centerGoods.getScheduleItemBudgetId()); |
|
|
|
TbsActivity currActivity = null; |
|
|
|
for (TbsActivity activity : activityList) { |
|
|
|
if(centerGoods.getActivityId().equals(activity.getId())){ |
|
|
|
currActivity = activity; |
|
|
|
} |
|
|
|
} |
|
|
|
TbsBudgetLog budgetLog = TbsBudgetLogBuildUtil.buildTbsBudgetLog(BudgetLogOptFlag.State_1,sysUser, costApply, itemBudget, centerGoods,centerGoods.getCenterGoodsAmount(),currActivity); |
|
|
|
budgetLogList.add(budgetLog); |
|
|
|
|
|
|
|
costItem.setBudgetId(itemBudget.getBudgetId()); |
|
|
|
costItem.setScheduleId(itemBudget.getScheduleId()); |
|
|
|
costItem.setScheduleItemId(itemBudget.getScheduleItemId()); |
|
|
|
costItem.setScheduleItemName(itemBudget.getItemName()); |
|
|
|
costItem.setScheduleItemAmount(itemBudget.getFinalBudgetAmount()); |
|
|
|
costItem.setScheduleItemAmountUsed(itemBudget.getUsedBudgetAmount()); |
|
|
|
costItem.setScheduleItemAmountApply(itemBudget.getUnUsedBudgetAmount()); |
|
|
|
costItem.setScheduleItemBudgetId(itemBudget.getId()); |
|
|
|
} |
|
|
|
allBudgetItem.add(costItem); |
|
|
|
} |
|
|
|
// budgetCostItemService.saveBatch(allBudgetItem);
|
|
|
|
// if(CollectionUtil.isNotEmpty(budgetLogList)){
|
|
|
|
// budgetLogService.saveBatch(budgetLogList);
|
|
|
|
// }
|
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
public Long selectCountOverdueState(String userId) { |
|
|
|
int sysConfOfWarningDays = 0; |
|
|
@ -452,7 +528,7 @@ public class TbsCostApplyServiceImpl extends ServiceImpl<TbsCostApplyMapper,TbsC |
|
|
|
Assert.throwEx("远程服务调用失败:"+flowIdResult.getMsg()); |
|
|
|
} |
|
|
|
String flowId = flowIdResult.getData(); |
|
|
|
if(flowId.length()>45){ |
|
|
|
if(flowId!=null&&flowId.length()>45){ |
|
|
|
flowId = flowId.substring(0,40); |
|
|
|
} |
|
|
|
String formId = null; |
|
|
|