|
|
@ -1,18 +1,30 @@ |
|
|
|
package com.qs.serve.modules.tbs.service.impl; |
|
|
|
|
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
|
|
|
import com.qs.serve.common.framework.manager.AsyncFactory; |
|
|
|
import com.qs.serve.common.framework.manager.AsyncManager; |
|
|
|
import com.qs.serve.common.model.enums.BudgetLogOptFlag; |
|
|
|
import com.qs.serve.common.util.Assert; |
|
|
|
import com.qs.serve.common.util.AuthContextUtils; |
|
|
|
import com.qs.serve.modules.seeyon.service.SeeYonOperationService; |
|
|
|
import com.qs.serve.modules.sys.entity.SysUser; |
|
|
|
import com.qs.serve.modules.tbs.common.TbsBudgetCheckState; |
|
|
|
import com.qs.serve.modules.tbs.common.TbsSeeYonConst; |
|
|
|
import com.qs.serve.modules.tbs.common.util.TbsBudgetLogBuildUtil; |
|
|
|
import com.qs.serve.modules.tbs.entity.TbsBudget; |
|
|
|
import com.qs.serve.modules.tbs.entity.TbsBudgetLog; |
|
|
|
import com.qs.serve.modules.tbs.entity.TbsScheduleItemBudget; |
|
|
|
import com.qs.serve.modules.tbs.entity.bo.TbsAffairCommitBo; |
|
|
|
import com.qs.serve.modules.tbs.mapper.TbsBudgetMapper; |
|
|
|
import com.qs.serve.modules.tbs.service.TbsBudgetLogService; |
|
|
|
import com.qs.serve.modules.tbs.service.TbsScheduleItemBudgetService; |
|
|
|
import lombok.AllArgsConstructor; |
|
|
|
import lombok.extern.slf4j.Slf4j; |
|
|
|
import org.springframework.stereotype.Service; |
|
|
|
|
|
|
|
import java.util.ArrayList; |
|
|
|
import java.util.List; |
|
|
|
|
|
|
|
/** |
|
|
|
* 预算申请 |
|
|
|
* @author YenHex |
|
|
@ -23,7 +35,9 @@ import org.springframework.stereotype.Service; |
|
|
|
@AllArgsConstructor |
|
|
|
public class TbsBudgetApplyOperationServiceImpl implements SeeYonOperationService { |
|
|
|
|
|
|
|
private TbsBudgetMapper budgetMapper; |
|
|
|
private final TbsBudgetMapper budgetMapper; |
|
|
|
private final TbsBudgetLogService budgetLogService; |
|
|
|
private final TbsScheduleItemBudgetService scheduleItemBudgetService; |
|
|
|
|
|
|
|
@Override |
|
|
|
public boolean checkSyFormIdIsNotNull(String targetId) { |
|
|
@ -68,6 +82,21 @@ public class TbsBudgetApplyOperationServiceImpl implements SeeYonOperationServic |
|
|
|
//启用预算
|
|
|
|
tbsBudget.setBudgetState(1); |
|
|
|
budgetMapper.updateById(tbsBudget); |
|
|
|
|
|
|
|
SysUser sysUser = getSysUserService().getById(AuthContextUtils.getSysUserId()); |
|
|
|
LambdaQueryWrapper<TbsScheduleItemBudget> lqw = new LambdaQueryWrapper<>(); |
|
|
|
lqw.eq(TbsScheduleItemBudget::getBudgetId,param.getTargetId()); |
|
|
|
List<TbsScheduleItemBudget> scheduleItemBudgets = scheduleItemBudgetService.list(lqw); |
|
|
|
//保存预算流水日志
|
|
|
|
List<TbsBudgetLog> budgetLogList = new ArrayList<>(); |
|
|
|
for (TbsScheduleItemBudget scheduleItemBudget : scheduleItemBudgets) { |
|
|
|
TbsBudgetLog budgetLog = TbsBudgetLogBuildUtil.toTbsBudgetLog(sysUser, tbsBudget, scheduleItemBudget, BudgetLogOptFlag.State_0,scheduleItemBudget.getBudgetAmount()); |
|
|
|
if (budgetLog!=null){ |
|
|
|
budgetLogList.add(budgetLog); |
|
|
|
} |
|
|
|
} |
|
|
|
budgetLogService.saveBatch(budgetLogList); |
|
|
|
|
|
|
|
} |
|
|
|
return null; |
|
|
|
} |
|
|
|