|
|
@@ -109,8 +109,11 @@ public class KwcContractTradeService {
|
|
|
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());
|
|
|
+
|
|
|
+ if (Objects.nonNull(queryListResDto.getUnitType())) {
|
|
|
+ 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());
|
|
|
+ }
|
|
|
|
|
|
UserCacheResDto userCacheResDto = longUserCacheResDtoMap.get(queryListResDto.getInitiateBy());
|
|
|
if (Objects.nonNull(userCacheResDto)) {
|
|
|
@@ -207,7 +210,8 @@ public class KwcContractTradeService {
|
|
|
throw new SystemException(HttpStatus.QUERY_FAIL_CODE, HttpStatus.CONTRACT_NOT_EXISTS);
|
|
|
}
|
|
|
|
|
|
- addTradeContract(reqVo);
|
|
|
+ submit(reqVo);
|
|
|
+// addTradeContract(reqVo);
|
|
|
}
|
|
|
|
|
|
|
|
|
@@ -243,30 +247,38 @@ public class KwcContractTradeService {
|
|
|
tradeBaseInfoResVo.setContractName(kwcContractTrade.getName());
|
|
|
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.setSigningWay(StringUtils.objectStr(kwcContractTrade.getSigningWay()));
|
|
|
tradeBaseInfoResVo.setStartTime(kwcContractTrade.getStartTime());
|
|
|
tradeBaseInfoResVo.setTradingName(DictEnum.getLabel(DictTypeEnum.TRADE_TYPE.getType(), String.valueOf(kwcContractTrade.getTrading())));
|
|
|
- tradeBaseInfoResVo.setTrading(String.valueOf(kwcContractTrade.getTrading()));
|
|
|
+ tradeBaseInfoResVo.setTrading(StringUtils.objectStr(kwcContractTrade.getTrading()));
|
|
|
|
|
|
ContractTradeDetailResVo contractTradeDetailResVo = new ContractTradeDetailResVo();
|
|
|
+ contractTradeDetailResVo.setStatus(kwcContractTrade.getStatus());
|
|
|
+ contractTradeDetailResVo.setStatusName(ContractStatusEnum.getName(kwcContractTrade.getStatus()).getName());
|
|
|
+ contractTradeDetailResVo.setRemark(kwcContractTrade.getRemark());
|
|
|
+
|
|
|
+
|
|
|
List<KwcContractTradeUnit> kwcContractTradeUnits = kwcContractTradeUnitService.queryByContractId(id);
|
|
|
if (CollectionUtils.isNotEmpty(kwcContractTradeUnits)) {
|
|
|
for (KwcContractTradeUnit kwcContractTradeUnit : kwcContractTradeUnits) {
|
|
|
if (kwcContractTradeUnit.getUnitType().compareTo(EntTypeEnum.SUPPLIER.getCode()) == 0) {
|
|
|
tradeBaseInfoResVo.setProvideEntName(kwcContractTradeUnit.getFirmName());
|
|
|
tradeBaseInfoResVo.setProvidePhone(kwcContractTradeUnit.getSignPhone());
|
|
|
+ tradeBaseInfoResVo.setProvideContacts(kwcContractTradeUnit.getContacts());
|
|
|
tradeBaseInfoResVo.setProvideEntId(kwcContractTradeUnit.getEntId());
|
|
|
}
|
|
|
|
|
|
if (kwcContractTradeUnit.getUnitType().compareTo(EntTypeEnum.PURCHASER.getCode()) == 0) {
|
|
|
tradeBaseInfoResVo.setPurchaseEntName(kwcContractTradeUnit.getFirmName());
|
|
|
- tradeBaseInfoResVo.setPurchasePhone(kwcContractTradeUnit.getPhone());
|
|
|
+ tradeBaseInfoResVo.setPurchasePhone(kwcContractTradeUnit.getSignPhone());
|
|
|
+ tradeBaseInfoResVo.setPurchaseContacts(kwcContractTradeUnit.getContacts());
|
|
|
tradeBaseInfoResVo.setPurchaseEntId(kwcContractTradeUnit.getEntId());
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
contractTradeDetailResVo.setBaseInfo(tradeBaseInfoResVo);
|
|
|
contractTradeDetailResVo.setId(id);
|
|
|
+
|
|
|
//标的信息
|
|
|
List<KwcContractTradeGoods> kwcContractTradeGoodsList = kwcContractTradeGoodsService.queryGoodsInfoByContractId(id);
|
|
|
List<Long> goodsIdList = kwcContractTradeGoodsList.stream().map(KwcContractTradeGoods::getGoodsId).toList();
|
|
|
@@ -286,7 +298,7 @@ public class KwcContractTradeService {
|
|
|
tradeGoodsInfoResVo.setAmount(kwcContractTradeGoods.getAmount());
|
|
|
tradeGoodsInfoResVo.setPrice(kwcContractTradeGoods.getPrice());
|
|
|
tradeGoodsInfoResVo.setUnit(kwcContractTradeGoods.getUnit());
|
|
|
-
|
|
|
+ tradeGoodsInfoResVo.setGoodsId(kwcContractTradeGoods.getGoodsId());
|
|
|
KwpGoods kwpGoods = goodsMap.get(kwcContractTradeGoods.getGoodsId());
|
|
|
if (Objects.nonNull(kwpGoods)) {
|
|
|
tradeGoodsInfoResVo.setGoodsName(kwpGoods.getName());
|
|
|
@@ -302,10 +314,14 @@ public class KwcContractTradeService {
|
|
|
contractTradeDetailResVo.setGoodsInfo(tradeGoodsInfoResVoList);
|
|
|
}
|
|
|
|
|
|
+ //合同文件
|
|
|
List<String> fileList = new ArrayList<>();
|
|
|
fileList.add(kwcContractTrade.getSigningUrl());
|
|
|
fileList.add(kwcContractTrade.getSignedUrl());
|
|
|
- contractTradeDetailResVo.setContractFile(fileList);
|
|
|
+ contractTradeDetailResVo.setContractFile(fileList.stream().filter(StringUtils::isNotBlank).toList());
|
|
|
+
|
|
|
+ //流程记录
|
|
|
+ contractTradeDetailResVo.setTrackInfo(kwcContractTradeTrackService.queryContractTrackByContractId(kwcContractTrade.getId()));
|
|
|
|
|
|
List<KwcContractTrade> supplementList = getSupplementList(id);
|
|
|
if (CollectionUtils.isNotEmpty(supplementList)) {
|
|
|
@@ -323,7 +339,7 @@ public class KwcContractTradeService {
|
|
|
LambdaQueryWrapper<KwcContractTrade> wrapper = new LambdaQueryWrapper<>();
|
|
|
wrapper.eq(KwcContractTrade::getContractPid, id);
|
|
|
wrapper.eq(KwcContractTrade::getDelFlag, Global.NO);
|
|
|
- wrapper.eq(KwcContractTrade::getStatus, Global.NO);
|
|
|
+// wrapper.eq(KwcContractTrade::getStatus, Global.NO);
|
|
|
return kwcContractTradeMapper.selectList(wrapper);
|
|
|
}
|
|
|
|
|
|
@@ -334,30 +350,35 @@ public class KwcContractTradeService {
|
|
|
* @author: czh
|
|
|
* @date 2023/7/16
|
|
|
*/
|
|
|
+ @Transactional(rollbackFor = {})
|
|
|
public void submit(ContractTradeReqVo reqVo) {
|
|
|
Long id = reqVo.getId();
|
|
|
if (Objects.isNull(id)) {
|
|
|
//创建合同
|
|
|
- KwcContractTrade kwcContractLogistics = getKwcContractTrade(reqVo.getBaseInfo(), reqVo.getGoodsInfo(), reqVo.getRemark(), reqVo.getPid());
|
|
|
- id = new IdWorker(1L).nextId();
|
|
|
- kwcContractLogistics.setId(id);
|
|
|
- kwcContractLogistics.setStatus(ContractStatusEnum.SUBMIT.getCode());
|
|
|
- kwcContractLogistics.setSigningUrl(reqVo.getContractFile());
|
|
|
- if (kwcContractTradeMapper.insert(kwcContractLogistics) <= 0) {
|
|
|
- throw new SystemException(HttpStatus.CRUD_FAIL_CODE, HttpStatus.INSERT_FAIL);
|
|
|
- }
|
|
|
-
|
|
|
- //存审批记录
|
|
|
- kwcContractTradeTrackService.saveContractTradeTrack(id);
|
|
|
+ id = addTradeContract(reqVo);
|
|
|
+ changeToSubmit(id);
|
|
|
return;
|
|
|
}
|
|
|
+ update(reqVo);
|
|
|
+ changeToSubmit(id);
|
|
|
+ }
|
|
|
|
|
|
- id = addTradeContract(reqVo);
|
|
|
- //存审批记录
|
|
|
+
|
|
|
+ /**
|
|
|
+ * @param id 合同id
|
|
|
+ * @desc: 更新合同为发起
|
|
|
+ * @author: czh
|
|
|
+ * @date: 2023/7/20
|
|
|
+ */
|
|
|
+ private void changeToSubmit(Long id) {
|
|
|
+ KwcContractTrade kwcContractTrade = kwcContractTradeMapper.selectById(id);
|
|
|
+ kwcContractTrade.setStatus(ContractStatusEnum.SUBMIT.getCode());
|
|
|
+ if (kwcContractTradeMapper.updateById(kwcContractTrade) <= 0) {
|
|
|
+ throw new SystemException(HttpStatus.CRUD_FAIL_CODE, HttpStatus.UPDATE_FAIL);
|
|
|
+ }
|
|
|
kwcContractTradeTrackService.saveContractTradeTrack(id);
|
|
|
}
|
|
|
|
|
|
-
|
|
|
/**
|
|
|
* @desc: 修改草稿
|
|
|
* @param: reqVo 入参
|