|
|
@@ -1,4 +1,5 @@
|
|
|
package com.sckw.contract.service;
|
|
|
+
|
|
|
import java.io.IOException;
|
|
|
import java.util.Date;
|
|
|
|
|
|
@@ -13,20 +14,20 @@ import com.sckw.contract.model.vo.req.*;
|
|
|
import com.sckw.contract.model.vo.res.*;
|
|
|
import com.sckw.core.common.enums.enums.DictEnum;
|
|
|
import com.sckw.core.common.enums.enums.DictTypeEnum;
|
|
|
+import com.sckw.core.exception.BusinessException;
|
|
|
import com.sckw.core.exception.SystemException;
|
|
|
import com.sckw.core.model.constant.Global;
|
|
|
import com.sckw.core.model.enums.ContractStatusEnum;
|
|
|
import com.sckw.core.model.enums.EntTypeEnum;
|
|
|
import com.sckw.core.model.page.PageHelperUtil;
|
|
|
import com.sckw.core.model.page.PageResult;
|
|
|
-import com.sckw.core.utils.BeanUtils;
|
|
|
-import com.sckw.core.utils.CollectionUtils;
|
|
|
-import com.sckw.core.utils.IdWorker;
|
|
|
-import com.sckw.core.utils.StringUtils;
|
|
|
+import com.sckw.core.utils.*;
|
|
|
import com.sckw.core.web.constant.HttpStatus;
|
|
|
import com.sckw.core.web.context.LoginUserHolder;
|
|
|
import com.sckw.excel.utils.EasyExcelUtil;
|
|
|
import com.sckw.product.api.dubbo.GoodsInfoService;
|
|
|
+import com.sckw.product.api.model.KwpGoods;
|
|
|
+import com.sckw.system.api.model.dto.res.SysDictResDto;
|
|
|
import com.sckw.system.api.model.dto.res.UserCacheResDto;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
import org.apache.dubbo.config.annotation.DubboReference;
|
|
|
@@ -34,16 +35,18 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
import com.sckw.system.api.RemoteSystemService;
|
|
|
+
|
|
|
import java.math.BigDecimal;
|
|
|
import java.util.*;
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
import com.sckw.contract.dao.KwcContractTradeMapper;
|
|
|
|
|
|
/**
|
|
|
-* @author PC
|
|
|
-* @description 针对表【kwc_contract_trade(交易合同(采购合同/销售合同))】的数据库操作Service实现
|
|
|
-* @createDate 2023-07-13 13:36:19
|
|
|
-*/
|
|
|
+ * @author PC
|
|
|
+ * @description 针对表【kwc_contract_trade(交易合同(采购合同/销售合同))】的数据库操作Service实现
|
|
|
+ * @createDate 2023-07-13 13:36:19
|
|
|
+ */
|
|
|
@Service
|
|
|
@Slf4j
|
|
|
public class KwcContractTradeService {
|
|
|
@@ -68,11 +71,11 @@ public class KwcContractTradeService {
|
|
|
private GoodsInfoService goodsInfoService;
|
|
|
|
|
|
/**
|
|
|
+ * @return PageResult
|
|
|
* @desc: 分页查询
|
|
|
- * @param: reqVo
|
|
|
+ * @param: reqVo
|
|
|
* @author: sky
|
|
|
* @date 2023/7/17
|
|
|
- * @return PageResult
|
|
|
*/
|
|
|
public PageResult queryListByPage(QueryListReqVo reqVo) {
|
|
|
PageHelper.startPage(reqVo.getPage(), reqVo.getPageSize());
|
|
|
@@ -105,6 +108,8 @@ public class KwcContractTradeService {
|
|
|
List<QueryListResVo> list = new ArrayList<>();
|
|
|
for (QueryListResDto queryListResDto : queryListResDtos) {
|
|
|
QueryListResVo queryListResVo = new QueryListResVo();
|
|
|
+ BeanUtils.copyProperties(queryListResDto, queryListResVo);
|
|
|
+
|
|
|
queryListResVo.setProvideEntName(queryListResDto.getUnitType().compareTo(EntTypeEnum.SUPPLIER.getCode()) == 0 ? queryListResDto.getEntName() : queryListResDto.getTargetEntName());
|
|
|
queryListResVo.setPurchaseEntName(queryListResDto.getUnitType().compareTo(EntTypeEnum.SUPPLIER.getCode()) == 0 ? queryListResDto.getTargetEntName() : queryListResDto.getEntName());
|
|
|
|
|
|
@@ -115,8 +120,8 @@ public class KwcContractTradeService {
|
|
|
}
|
|
|
queryListResVo.setTradingName(DictEnum.getLabel(DictTypeEnum.TRADE_TYPE.getType(), String.valueOf(queryListResDto.getTrading())));
|
|
|
queryListResVo.setStatusName(ContractStatusEnum.getName(queryListResDto.getStatus()).getName());
|
|
|
-
|
|
|
- // todo
|
|
|
+ queryListResVo.setSigningWayName(DictEnum.getLabel(DictTypeEnum.SIGNING_TYPE.getType(), String.valueOf(queryListResDto.getSigningWay())));
|
|
|
+ queryListResVo.setAmount(queryListResDto.getAmount());
|
|
|
queryListResVo.setPerformedAmount(new BigDecimal("0"));
|
|
|
list.add(queryListResVo);
|
|
|
}
|
|
|
@@ -125,11 +130,17 @@ public class KwcContractTradeService {
|
|
|
|
|
|
@Transactional(rollbackFor = {})
|
|
|
public Long addTradeContract(ContractTradeReqVo reqVo) {
|
|
|
+ Long id = reqVo.getId();
|
|
|
+ //不为空时是修改
|
|
|
+ if (Objects.nonNull(id)) {
|
|
|
+ update(reqVo);
|
|
|
+ return id;
|
|
|
+ }
|
|
|
+
|
|
|
TradeBaseInfoReqVo baseInfo = reqVo.getBaseInfo();
|
|
|
List<TradeGoodsInfoReqVo> goodsInfoList = reqVo.getGoodsInfo();
|
|
|
-
|
|
|
//创建合同
|
|
|
- KwcContractTrade kwcContractTrade = getKwcContractTrade(baseInfo, reqVo.getRemark(), reqVo.getPId());
|
|
|
+ KwcContractTrade kwcContractTrade = getKwcContractTrade(baseInfo, reqVo.getGoodsInfo(), reqVo.getRemark(), reqVo.getPId());
|
|
|
long contactId = new IdWorker(1L).nextId();
|
|
|
kwcContractTrade.setId(contactId);
|
|
|
kwcContractTrade.setStatus(ContractStatusEnum.SAVE.getCode());
|
|
|
@@ -153,7 +164,7 @@ public class KwcContractTradeService {
|
|
|
* @author: czh
|
|
|
* @date: 2023/7/20
|
|
|
*/
|
|
|
- public KwcContractTrade getKwcContractTrade(TradeBaseInfoReqVo baseInfo, String remark, Long pid) {
|
|
|
+ public KwcContractTrade getKwcContractTrade(TradeBaseInfoReqVo baseInfo, List<TradeGoodsInfoReqVo> goodsInfo, String remark, Long pid) {
|
|
|
Date date = new Date();
|
|
|
KwcContractTrade kwcContractTrade = new KwcContractTrade();
|
|
|
kwcContractTrade.setEntId(LoginUserHolder.getEntId());
|
|
|
@@ -171,6 +182,16 @@ public class KwcContractTradeService {
|
|
|
kwcContractTrade.setUpdateBy(LoginUserHolder.getUserId());
|
|
|
kwcContractTrade.setUpdateTime(date);
|
|
|
kwcContractTrade.setDelFlag(Global.NO);
|
|
|
+
|
|
|
+ BigDecimal amountTotal = new BigDecimal(Global.NUMERICAL_ZERO);
|
|
|
+ if (CollectionUtils.isNotEmpty(goodsInfo)) {
|
|
|
+ for (TradeGoodsInfoReqVo tradeGoodsInfoReqVo : goodsInfo) {
|
|
|
+ if (Objects.nonNull(tradeGoodsInfoReqVo.getAmount())) {
|
|
|
+ amountTotal = amountTotal.add(tradeGoodsInfoReqVo.getAmount());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ kwcContractTrade.setAmount(amountTotal);
|
|
|
return kwcContractTrade;
|
|
|
}
|
|
|
|
|
|
@@ -182,8 +203,8 @@ public class KwcContractTradeService {
|
|
|
*/
|
|
|
public void supplement(ContractTradeReqVo reqVo) {
|
|
|
Long id = reqVo.getPId();
|
|
|
- KwcContractTrade KwcContractTrade = kwcContractTradeMapper.selectById(id);
|
|
|
- if (Objects.isNull(KwcContractTrade)) {
|
|
|
+ KwcContractTrade kwcContractTrade = kwcContractTradeMapper.selectById(id);
|
|
|
+ if (Objects.isNull(kwcContractTrade)) {
|
|
|
throw new SystemException(HttpStatus.QUERY_FAIL_CODE, HttpStatus.CONTRACT_NOT_EXISTS);
|
|
|
}
|
|
|
|
|
|
@@ -192,11 +213,11 @@ public class KwcContractTradeService {
|
|
|
|
|
|
|
|
|
/**
|
|
|
+ * @param id 合同id
|
|
|
+ * @return ContractTradeDetailResVo
|
|
|
* @desc: 合同详情
|
|
|
- * @param id 合同id
|
|
|
* @author: czh
|
|
|
* @date 2023/7/16
|
|
|
- * @return ContractTradeDetailResVo
|
|
|
*/
|
|
|
public ContractTradeDetailResVo detail(Long id) {
|
|
|
//基础信息
|
|
|
@@ -221,10 +242,12 @@ public class KwcContractTradeService {
|
|
|
TradeBaseInfoResVo tradeBaseInfoResVo = new TradeBaseInfoResVo();
|
|
|
tradeBaseInfoResVo.setContractCode(kwcContractTrade.getContractNo());
|
|
|
tradeBaseInfoResVo.setContractName(kwcContractTrade.getName());
|
|
|
- tradeBaseInfoResVo.setEndTime(kwcContractTrade.getEndTime());
|
|
|
+ tradeBaseInfoResVo.setEndTime(Objects.isNull(kwcContractTrade.getEndTime()) ? Global.EMPTY_STRING : DateUtils.format(kwcContractTrade.getEndTime()));
|
|
|
tradeBaseInfoResVo.setSigningWayName(DictEnum.getLabel(DictTypeEnum.SIGNING_WAY.getType(), String.valueOf(kwcContractTrade.getSigningWay())));
|
|
|
+ tradeBaseInfoResVo.setSigningWay(String.valueOf(kwcContractTrade.getSigningWay()));
|
|
|
tradeBaseInfoResVo.setStartTime(kwcContractTrade.getStartTime());
|
|
|
tradeBaseInfoResVo.setTradingName(DictEnum.getLabel(DictTypeEnum.TRADE_TYPE.getType(), String.valueOf(kwcContractTrade.getTrading())));
|
|
|
+ tradeBaseInfoResVo.setTrading(String.valueOf(kwcContractTrade.getTrading()));
|
|
|
|
|
|
ContractTradeDetailResVo contractTradeDetailResVo = new ContractTradeDetailResVo();
|
|
|
List<KwcContractTradeUnit> kwcContractTradeUnits = kwcContractTradeUnitService.queryByContractId(id);
|
|
|
@@ -233,11 +256,13 @@ public class KwcContractTradeService {
|
|
|
if (kwcContractTradeUnit.getUnitType().compareTo(EntTypeEnum.SUPPLIER.getCode()) == 0) {
|
|
|
tradeBaseInfoResVo.setProvideEntName(kwcContractTradeUnit.getFirmName());
|
|
|
tradeBaseInfoResVo.setProvidePhone(kwcContractTradeUnit.getSignPhone());
|
|
|
+ tradeBaseInfoResVo.setProvideEntId(kwcContractTradeUnit.getEntId());
|
|
|
}
|
|
|
|
|
|
if (kwcContractTradeUnit.getUnitType().compareTo(EntTypeEnum.PURCHASER.getCode()) == 0) {
|
|
|
tradeBaseInfoResVo.setPurchaseEntName(kwcContractTradeUnit.getFirmName());
|
|
|
tradeBaseInfoResVo.setPurchasePhone(kwcContractTradeUnit.getPhone());
|
|
|
+ tradeBaseInfoResVo.setPurchaseEntId(kwcContractTradeUnit.getEntId());
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
@@ -245,15 +270,34 @@ public class KwcContractTradeService {
|
|
|
|
|
|
//标的信息
|
|
|
List<KwcContractTradeGoods> kwcContractTradeGoodsList = kwcContractTradeGoodsService.queryGoodsInfoByContractId(id);
|
|
|
+ List<Long> goodsIdList = kwcContractTradeGoodsList.stream().map(KwcContractTradeGoods::getGoodsId).toList();
|
|
|
+ Map<Long, KwpGoods> goodsMap = goodsInfoService.getGoodsByIds(goodsIdList);
|
|
|
if (CollectionUtils.isNotEmpty(kwcContractTradeGoodsList)) {
|
|
|
- //todo 通过商品id查商品信息,填充商品名
|
|
|
List<TradeGoodsInfoResVo> tradeGoodsInfoResVoList = new ArrayList<>();
|
|
|
+
|
|
|
+ StringBuilder keys = new StringBuilder();
|
|
|
+ for (KwcContractTradeGoods item : kwcContractTradeGoodsList) {
|
|
|
+ keys.append(DictTypeEnum.UNIT_TYPE.getType()).append(Global.POUND).append(item.getUnit()).append(Global.COMMA);
|
|
|
+ }
|
|
|
+ Map<String, SysDictResDto> stringSysDictResDtoMap = remoteSystemService.queryDictMapByTypeValues(keys.toString());
|
|
|
+
|
|
|
+
|
|
|
for (KwcContractTradeGoods kwcContractTradeGoods : kwcContractTradeGoodsList) {
|
|
|
TradeGoodsInfoResVo tradeGoodsInfoResVo = new TradeGoodsInfoResVo();
|
|
|
tradeGoodsInfoResVo.setAmount(kwcContractTradeGoods.getAmount());
|
|
|
-// tradeGoodsInfoResVo.setGoodsName();
|
|
|
tradeGoodsInfoResVo.setPrice(kwcContractTradeGoods.getPrice());
|
|
|
-// tradeGoodsInfoResVo.setUnit(0);
|
|
|
+ tradeGoodsInfoResVo.setUnit(kwcContractTradeGoods.getUnit());
|
|
|
+
|
|
|
+ KwpGoods kwpGoods = goodsMap.get(kwcContractTradeGoods.getGoodsId());
|
|
|
+ if (Objects.nonNull(kwpGoods)) {
|
|
|
+ tradeGoodsInfoResVo.setGoodsName(kwpGoods.getName());
|
|
|
+ }
|
|
|
+
|
|
|
+ SysDictResDto sysDictResDto = stringSysDictResDtoMap.get(DictTypeEnum.UNIT_TYPE.getType() + Global.POUND + kwcContractTradeGoods.getUnit());
|
|
|
+ if (Objects.nonNull(sysDictResDto)) {
|
|
|
+ tradeGoodsInfoResVo.setUnitName(sysDictResDto.getLabel());
|
|
|
+ }
|
|
|
+
|
|
|
tradeGoodsInfoResVoList.add(tradeGoodsInfoResVo);
|
|
|
}
|
|
|
contractTradeDetailResVo.setGoodsInfo(tradeGoodsInfoResVoList);
|
|
|
@@ -286,8 +330,8 @@ public class KwcContractTradeService {
|
|
|
|
|
|
|
|
|
/**
|
|
|
- * @desc: 发起签约
|
|
|
* @param reqVo id
|
|
|
+ * @desc: 发起签约
|
|
|
* @author: czh
|
|
|
* @date 2023/7/16
|
|
|
*/
|
|
|
@@ -295,7 +339,7 @@ public class KwcContractTradeService {
|
|
|
Long id = reqVo.getId();
|
|
|
if (Objects.isNull(id)) {
|
|
|
//创建合同
|
|
|
- KwcContractTrade kwcContractLogistics = getKwcContractTrade(reqVo.getBaseInfo(), reqVo.getRemark(), reqVo.getPId());
|
|
|
+ KwcContractTrade kwcContractLogistics = getKwcContractTrade(reqVo.getBaseInfo(), reqVo.getGoodsInfo(), reqVo.getRemark(), reqVo.getPId());
|
|
|
id = new IdWorker(1L).nextId();
|
|
|
kwcContractLogistics.setId(id);
|
|
|
kwcContractLogistics.setStatus(ContractStatusEnum.SUBMIT.getCode());
|
|
|
@@ -324,17 +368,17 @@ public class KwcContractTradeService {
|
|
|
@Transactional(rollbackFor = {})
|
|
|
public void update(ContractTradeReqVo reqVo) {
|
|
|
Long contractId = reqVo.getId();
|
|
|
+ Date date = new Date();
|
|
|
KwcContractTrade kwcContractTrade = kwcContractTradeMapper.selectById(contractId);
|
|
|
if (Objects.isNull(kwcContractTrade)) {
|
|
|
throw new SystemException(HttpStatus.QUERY_FAIL_CODE, HttpStatus.CONTRACT_NOT_EXISTS);
|
|
|
}
|
|
|
-
|
|
|
- KwcContractTrade param = getKwcContractTrade(reqVo.getBaseInfo(), reqVo.getRemark(), reqVo.getPId());
|
|
|
+ KwcContractTrade param = getKwcContractTrade(reqVo.getBaseInfo(), reqVo.getGoodsInfo(), reqVo.getRemark(), reqVo.getPId());
|
|
|
param.setId(contractId);
|
|
|
param.setSigningUrl(reqVo.getContractFile());
|
|
|
param.setStatus(ContractStatusEnum.SAVE.getCode());
|
|
|
param.setUpdateBy(LoginUserHolder.getUserId());
|
|
|
- param.setUpdateTime(new Date());
|
|
|
+ param.setUpdateTime(date);
|
|
|
if (kwcContractTradeMapper.updateById(param) <= 0) {
|
|
|
throw new SystemException(HttpStatus.CRUD_FAIL_CODE, HttpStatus.UPDATE_FAIL);
|
|
|
}
|
|
|
@@ -343,7 +387,6 @@ public class KwcContractTradeService {
|
|
|
//保存交易合同商品信息-先把以前的删除
|
|
|
List<KwcContractTradeGoods> kwcContractTradeGoodsList = kwcContractTradeGoodsService.queryGoodsInfoByContractId(contractId);
|
|
|
if (CollectionUtils.isNotEmpty(kwcContractTradeGoodsList)) {
|
|
|
- Date date = new Date();
|
|
|
kwcContractTradeGoodsList.forEach(item -> {
|
|
|
item.setDelFlag(Global.YES);
|
|
|
item.setUpdateBy(LoginUserHolder.getUserId());
|
|
|
@@ -355,6 +398,21 @@ public class KwcContractTradeService {
|
|
|
}
|
|
|
}
|
|
|
kwcContractTradeGoodsService.saveContractTradeGoods(kwcContractTrade.getId(), reqVo.getGoodsInfo());
|
|
|
+
|
|
|
+ //保存单位信息-先把以前的删除
|
|
|
+ List<KwcContractTradeUnit> kwcContractTradeUnits = kwcContractTradeUnitService.queryByContractId(contractId);
|
|
|
+ if (CollectionUtils.isNotEmpty(kwcContractTradeUnits)) {
|
|
|
+ kwcContractTradeUnits.forEach(item -> {
|
|
|
+ item.setDelFlag(Global.YES);
|
|
|
+ item.setUpdateBy(LoginUserHolder.getUserId());
|
|
|
+ item.setUpdateTime(date);
|
|
|
+ });
|
|
|
+
|
|
|
+ if (kwcContractTradeUnitService.updateBatch(kwcContractTradeUnits) != kwcContractTradeUnits.size()) {
|
|
|
+ throw new SystemException(HttpStatus.CRUD_FAIL_CODE, HttpStatus.UPDATE_FAIL);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ kwcContractTradeUnitService.saveContractTradeUnit(contractId, reqVo.getBaseInfo());
|
|
|
}
|
|
|
|
|
|
|
|
|
@@ -365,18 +423,19 @@ public class KwcContractTradeService {
|
|
|
* @date 2023/7/16
|
|
|
*/
|
|
|
@Transactional(rollbackFor = {})
|
|
|
- public void complete(String ids) {
|
|
|
- List<Long> contractIdList = Arrays.stream(ids.split(Global.COMMA)).map(Long::parseLong).toList();
|
|
|
- List<KwcContractTrade> kwcContractTradeList = kwcContractTradeMapper.selectBatchIds(contractIdList);
|
|
|
- Date date = new Date();
|
|
|
- kwcContractTradeList.forEach(item -> {
|
|
|
- item.setStatus(ContractStatusEnum.COMPLETE.getCode());
|
|
|
- item.setUpdateBy(LoginUserHolder.getUserId());
|
|
|
- item.setUpdateTime(date);
|
|
|
- if (kwcContractTradeMapper.updateById(item) <= 0) {
|
|
|
- throw new SystemException(HttpStatus.CRUD_FAIL_CODE, HttpStatus.UPDATE_FAIL);
|
|
|
- }
|
|
|
- });
|
|
|
+ public void complete(CompleteReqVo reqVo) {
|
|
|
+ KwcContractTrade kwcContractTrade = kwcContractTradeMapper.selectById(reqVo.getId());
|
|
|
+ if (!kwcContractTrade.getStatus().equals(ContractStatusEnum.SIGNED.getCode())) {
|
|
|
+ throw new SystemException(HttpStatus.CODE_10301, HttpStatus.MSG_028);
|
|
|
+ }
|
|
|
+ kwcContractTrade.setStatus(ContractStatusEnum.COMPLETE.getCode());
|
|
|
+ kwcContractTrade.setUpdateBy(LoginUserHolder.getUserId());
|
|
|
+ kwcContractTrade.setUpdateTime(new Date());
|
|
|
+ kwcContractTrade.setPerformedAmount(reqVo.getPerformedAmount());
|
|
|
+ kwcContractTrade.setRemark(reqVo.getRemark());
|
|
|
+ if (kwcContractTradeMapper.updateById(kwcContractTrade) <= 0) {
|
|
|
+ throw new SystemException(HttpStatus.CRUD_FAIL_CODE, HttpStatus.UPDATE_FAIL);
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
|
|
|
@@ -404,6 +463,12 @@ public class KwcContractTradeService {
|
|
|
});
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * @param reqVo 查询入参
|
|
|
+ * @desc: 导出
|
|
|
+ * @author: czh
|
|
|
+ * @date 2023/7/17
|
|
|
+ */
|
|
|
public void export(QueryListReqVo reqVo) {
|
|
|
QueryListReqDto queryListReqDto = new QueryListReqDto();
|
|
|
BeanUtils.copyProperties(reqVo, queryListReqDto);
|
|
|
@@ -444,6 +509,44 @@ public class KwcContractTradeService {
|
|
|
}
|
|
|
return getQueryListResVos(queryListResDtos);
|
|
|
}
|
|
|
+
|
|
|
+
|
|
|
+ /**
|
|
|
+ * @return FindListGroupResVo
|
|
|
+ * @desc: 分组查询
|
|
|
+ * @author: czh
|
|
|
+ * @date: 2023/7/18
|
|
|
+ */
|
|
|
+ public List<FindListGroupResVo> findListGroup(QueryListReqVo reqVo) {
|
|
|
+ ContractStatusEnum[] values = ContractStatusEnum.values();
|
|
|
+ List<FindListGroupResVo> list = new ArrayList<>();
|
|
|
+ FindListGroupResVo total = new FindListGroupResVo();
|
|
|
+ total.setCount(0);
|
|
|
+ list.add(total);
|
|
|
+ for (ContractStatusEnum contractStatusEnum : values) {
|
|
|
+ FindListGroupResVo findListGroupResVo = new FindListGroupResVo();
|
|
|
+ findListGroupResVo.setStatus(contractStatusEnum.getCode());
|
|
|
+ findListGroupResVo.setStatusName(contractStatusEnum.getName());
|
|
|
+ findListGroupResVo.setCount(0);
|
|
|
+ list.add(findListGroupResVo);
|
|
|
+ }
|
|
|
+
|
|
|
+ QueryListReqDto queryListReqDto = new QueryListReqDto();
|
|
|
+ BeanUtils.copyProperties(reqVo, queryListReqDto);
|
|
|
+ queryListReqDto.setEntId(LoginUserHolder.getEntId());
|
|
|
+ List<QueryListResDto> queryListResDtoList = kwcContractTradeMapper.queryList(queryListReqDto);
|
|
|
+ if (CollectionUtils.isNotEmpty(queryListResDtoList)) {
|
|
|
+ Map<Integer, List<QueryListResDto>> collect = queryListResDtoList.stream().collect(Collectors.groupingBy(QueryListResDto::getStatus));
|
|
|
+ for (FindListGroupResVo findListGroupResVo : list) {
|
|
|
+ List<QueryListResDto> queryListResDtos = collect.get(findListGroupResVo.getStatus());
|
|
|
+ findListGroupResVo.setCount(CollectionUtils.isEmpty(queryListResDtos) ? Global.NUMERICAL_ZERO : queryListResDtos.size());
|
|
|
+ }
|
|
|
+ //给汇总项求和
|
|
|
+ list.get(0).setCount(queryListResDtoList.size());
|
|
|
+ }
|
|
|
+ return list;
|
|
|
+ }
|
|
|
+
|
|
|
}
|
|
|
|
|
|
|