|
@@ -19,6 +19,7 @@ package com.fjhx.funds.v2.service.impl;
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
|
|
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
|
import com.fjhx.activiti.ProcessTaskReferBuilder;
|
|
|
import com.fjhx.activiti.ProcessTaskResult;
|
|
|
import com.fjhx.activiti.SubmitFlowCondition;
|
|
@@ -57,6 +58,7 @@ import org.springblade.common.constant.AttachmentConstant;
|
|
|
import org.springblade.common.constant.CurrencyCodeEnum;
|
|
|
import org.springblade.common.enums.YesOrNoEnum;
|
|
|
import org.springblade.core.log.exception.ServiceException;
|
|
|
+import org.springblade.core.mp.base.BasicsEntity;
|
|
|
import org.springblade.core.mp.base.BasicsServiceImpl;
|
|
|
import org.springblade.core.secure.BladeUser;
|
|
|
import org.springblade.core.secure.utils.AuthUtil;
|
|
@@ -160,11 +162,11 @@ public class RequestFundsV2ServiceImpl extends BasicsServiceImpl<RequestFundsV2M
|
|
|
Map<String, User> userMap = iUserClient.userInfoByIdsToMap(userIds);
|
|
|
|
|
|
//下个节点审批人ID集合
|
|
|
- List<String> processInstanceUserIds = list.stream().filter(o -> StringUtils.isNotBlank(o.getProcessInstanceUserId())).map(RequestFundsV2::getProcessInstanceUserId).distinct().collect(Collectors.toList());
|
|
|
+ List<String> processInstanceUserIds = list.stream().map(RequestFundsV2::getProcessInstanceUserId).filter(StringUtils::isNotBlank).distinct().collect(Collectors.toList());
|
|
|
Map<String, User> processUserMap = iUserClient.userInfoByIdsToMap(processInstanceUserIds);
|
|
|
|
|
|
//打款账号ID集合
|
|
|
- List<String> accountIds = list.stream().filter(o -> StringUtils.isNotBlank(o.getAccountId())).map(RequestFundsV2::getAccountId).distinct().collect(Collectors.toList());
|
|
|
+ List<String> accountIds = list.stream().map(RequestFundsV2::getAccountId).filter(StringUtils::isNotBlank).distinct().collect(Collectors.toList());
|
|
|
Map<String, FundAccount> fundAccountsMap = new HashMap<>();
|
|
|
if (CollectionUtils.isNotEmpty(accountIds)) {
|
|
|
List<FundAccount> fundAccounts = iFundAccountService.lambdaQuery().in(FundAccount::getId, accountIds).list();
|
|
@@ -173,13 +175,23 @@ public class RequestFundsV2ServiceImpl extends BasicsServiceImpl<RequestFundsV2M
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- //公司ID集合
|
|
|
+ // 公司ID集合
|
|
|
List<String> companyIds = list.stream().map(RequestFundsV2::getCompanyId).distinct().collect(Collectors.toList());
|
|
|
- //查询公司信息
|
|
|
+ // 查询公司信息
|
|
|
Map<String, Company> companyMap = iCompanyService.getByIdsToMap(companyIds);
|
|
|
|
|
|
+ List<String> idList = list.stream().filter(item -> Objects.equals("10", item.getPaymentRequestType()))
|
|
|
+ .map(BasicsEntity::getId).collect(Collectors.toList());
|
|
|
+
|
|
|
+ Map<String, List<RequestFundsV2>> requestFundsV2Map = new HashMap<>();
|
|
|
+ if (idList.size() > 0) {
|
|
|
+ List<RequestFundsV2> requestFundsV2List = this.list(
|
|
|
+ Wrappers.<RequestFundsV2>lambdaQuery().in(RequestFundsV2::getAdvanceReceiptId, idList));
|
|
|
+ requestFundsV2Map = requestFundsV2List.stream().collect(Collectors.groupingBy(RequestFundsV2::getAdvanceReceiptId));
|
|
|
+ }
|
|
|
+
|
|
|
for (RequestFundsV2 v2 : list) {
|
|
|
- //处理请款明细
|
|
|
+ // 处理请款明细
|
|
|
// if (MapUtils.isNotEmpty(oldDetailsMap) && CollectionUtils.isNotEmpty(oldDetailsMap.get(v2.getId()))) {
|
|
|
// v2.setOldDetails(oldDetailsMap.get(v2.getId()));
|
|
|
// } else {
|
|
@@ -213,16 +225,21 @@ public class RequestFundsV2ServiceImpl extends BasicsServiceImpl<RequestFundsV2M
|
|
|
v2.setAccountName(account.getName());
|
|
|
}
|
|
|
|
|
|
- //处理公司名称
|
|
|
+ // 处理公司名称
|
|
|
if (MapUtils.isNotEmpty(companyMap) && Func.isNotEmpty(companyMap.get(v2.getCompanyId()))) {
|
|
|
Company company = companyMap.get(v2.getCompanyId());
|
|
|
v2.setCompanyName(company.getNameChinese());
|
|
|
}
|
|
|
|
|
|
- //核销状态显示
|
|
|
- if(v2.getPaymentRequestType().equals("10")){
|
|
|
- v2.setVerificationStatus("预支(待核销)");
|
|
|
+ // 核销状态显示
|
|
|
+ if (v2.getPaymentRequestType().equals("10")) {
|
|
|
+ String id = v2.getId();
|
|
|
+ List<RequestFundsV2> requestFundsV2List = requestFundsV2Map.get(id);
|
|
|
+ if (ObjectUtil.isNotEmpty(requestFundsV2List)) {
|
|
|
+ v2.setVerificationList(requestFundsV2List);
|
|
|
+ }
|
|
|
}
|
|
|
+
|
|
|
}
|
|
|
}
|
|
|
return list;
|