|
@@ -1,12 +1,15 @@
|
|
|
package com.sckw.contract.dubbo;
|
|
package com.sckw.contract.dubbo;
|
|
|
|
|
|
|
|
import com.alibaba.fastjson.JSON;
|
|
import com.alibaba.fastjson.JSON;
|
|
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.google.common.collect.Sets;
|
|
import com.google.common.collect.Sets;
|
|
|
import com.sckw.contract.api.RemoteContractService;
|
|
import com.sckw.contract.api.RemoteContractService;
|
|
|
import com.sckw.contract.api.model.dto.res.*;
|
|
import com.sckw.contract.api.model.dto.res.*;
|
|
|
-import com.sckw.contract.dao.KwcContractLogisticsMapper;
|
|
|
|
|
-import com.sckw.contract.dao.KwcContractLogisticsUnitMapper;
|
|
|
|
|
-import com.sckw.contract.dao.KwcContractTradeMapper;
|
|
|
|
|
|
|
+import com.sckw.contract.api.model.vo.GoodsInfoDto;
|
|
|
|
|
+import com.sckw.contract.api.model.vo.TradeContractGoodsDto;
|
|
|
|
|
+import com.sckw.contract.api.model.vo.TradeContractResDto;
|
|
|
|
|
+import com.sckw.contract.api.model.vo.TradeContractUnitDto;
|
|
|
|
|
+import com.sckw.contract.dao.*;
|
|
|
import com.sckw.contract.model.dto.res.QueryContractValidCountResDto;
|
|
import com.sckw.contract.model.dto.res.QueryContractValidCountResDto;
|
|
|
import com.sckw.contract.model.entity.*;
|
|
import com.sckw.contract.model.entity.*;
|
|
|
import com.sckw.contract.repository.*;
|
|
import com.sckw.contract.repository.*;
|
|
@@ -17,6 +20,7 @@ import com.sckw.core.model.constant.Global;
|
|
|
import com.sckw.core.model.enums.ContractStatusEnum;
|
|
import com.sckw.core.model.enums.ContractStatusEnum;
|
|
|
import com.sckw.core.model.enums.CooperateTypeEnum;
|
|
import com.sckw.core.model.enums.CooperateTypeEnum;
|
|
|
import com.sckw.core.model.enums.SigningWayEnum;
|
|
import com.sckw.core.model.enums.SigningWayEnum;
|
|
|
|
|
+import com.sckw.core.utils.BeanUtils;
|
|
|
import com.sckw.core.utils.CollectionUtils;
|
|
import com.sckw.core.utils.CollectionUtils;
|
|
|
import com.sckw.system.api.RemoteSystemService;
|
|
import com.sckw.system.api.RemoteSystemService;
|
|
|
import com.sckw.transport.api.dubbo.TransportRemoteService;
|
|
import com.sckw.transport.api.dubbo.TransportRemoteService;
|
|
@@ -54,13 +58,16 @@ public class RemoteContractServiceImpl implements RemoteContractService {
|
|
|
|
|
|
|
|
@Autowired
|
|
@Autowired
|
|
|
private KwcContractTradeMapper kwcContractTradeMapper;
|
|
private KwcContractTradeMapper kwcContractTradeMapper;
|
|
|
-
|
|
|
|
|
|
|
+ @Autowired
|
|
|
|
|
+ private KwcContractTradeGoodsMapper kwcContractTradeGoodsMapper;
|
|
|
|
|
+ @Autowired
|
|
|
|
|
+ private KwcContractTradeUnitMapper kwcContractTradeUnitMapper;
|
|
|
@DubboReference(version = "1.0.0", group = "design", check = false, timeout = 8000)
|
|
@DubboReference(version = "1.0.0", group = "design", check = false, timeout = 8000)
|
|
|
private RemoteSystemService remoteSystemService;
|
|
private RemoteSystemService remoteSystemService;
|
|
|
@DubboReference(version = "1.0.0", group = "design", check = false, timeout = 8000)
|
|
@DubboReference(version = "1.0.0", group = "design", check = false, timeout = 8000)
|
|
|
- private TransportRemoteService transportRemoteService ;
|
|
|
|
|
|
|
+ private TransportRemoteService transportRemoteService;
|
|
|
|
|
|
|
|
- private final KwcContractTradeRepository kwcContractTradeRepository ;
|
|
|
|
|
|
|
+ private final KwcContractTradeRepository kwcContractTradeRepository;
|
|
|
private final KwcContractLogisticsRepository contractLogisticsRepository;
|
|
private final KwcContractLogisticsRepository contractLogisticsRepository;
|
|
|
private final KwcContractTradeUnitRepository kwcContractTradeUnitRepository;
|
|
private final KwcContractTradeUnitRepository kwcContractTradeUnitRepository;
|
|
|
private final KwcContractTradeGoodsRepository kwcContractTradeGoodsRepository;
|
|
private final KwcContractTradeGoodsRepository kwcContractTradeGoodsRepository;
|
|
@@ -212,11 +219,11 @@ public class RemoteContractServiceImpl implements RemoteContractService {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
@Override
|
|
|
- public ContractLogisticsAndTradeOrderResDto queryContractByContractId(Long tradeOrderContractId,Long tradeId) {
|
|
|
|
|
|
|
+ public ContractLogisticsAndTradeOrderResDto queryContractByContractId(Long tradeOrderContractId, Long tradeId) {
|
|
|
//根据贸易合同查询贸易合同
|
|
//根据贸易合同查询贸易合同
|
|
|
KwcContractTrade kwcContractTrade = kwcContractTradeRepository.queryByContractId(tradeOrderContractId);
|
|
KwcContractTrade kwcContractTrade = kwcContractTradeRepository.queryByContractId(tradeOrderContractId);
|
|
|
- if (Objects.isNull(kwcContractTrade)){
|
|
|
|
|
- return new ContractLogisticsAndTradeOrderResDto() ;
|
|
|
|
|
|
|
+ if (Objects.isNull(kwcContractTrade)) {
|
|
|
|
|
+ return new ContractLogisticsAndTradeOrderResDto();
|
|
|
}
|
|
}
|
|
|
ContractLogisticsAndTradeOrderResDto contractLogisticsAndTradeOrderResDto = new ContractLogisticsAndTradeOrderResDto();
|
|
ContractLogisticsAndTradeOrderResDto contractLogisticsAndTradeOrderResDto = new ContractLogisticsAndTradeOrderResDto();
|
|
|
contractLogisticsAndTradeOrderResDto.setId(kwcContractTrade.getId());
|
|
contractLogisticsAndTradeOrderResDto.setId(kwcContractTrade.getId());
|
|
@@ -225,13 +232,13 @@ public class RemoteContractServiceImpl implements RemoteContractService {
|
|
|
//根据贸易订单id查询物流订单和物流合同关联信息
|
|
//根据贸易订单id查询物流订单和物流合同关联信息
|
|
|
List<LogisticContractVo> logisticContractVos = transportRemoteService.queryLogisticContractByTradeId(tradeId);
|
|
List<LogisticContractVo> logisticContractVos = transportRemoteService.queryLogisticContractByTradeId(tradeId);
|
|
|
Set<Long> logContractIds = Sets.newHashSet();
|
|
Set<Long> logContractIds = Sets.newHashSet();
|
|
|
- if (CollectionUtils.isNotEmpty(logisticContractVos)){
|
|
|
|
|
|
|
+ if (CollectionUtils.isNotEmpty(logisticContractVos)) {
|
|
|
logContractIds =
|
|
logContractIds =
|
|
|
logisticContractVos.stream().map(LogisticContractVo::getLogContractId).collect(Collectors.toSet());
|
|
logisticContractVos.stream().map(LogisticContractVo::getLogContractId).collect(Collectors.toSet());
|
|
|
}
|
|
}
|
|
|
//查询物流合同
|
|
//查询物流合同
|
|
|
List<KwcContractLogistics> contractLogistics = contractLogisticsRepository.queryByLogisticContractIds(logContractIds);
|
|
List<KwcContractLogistics> contractLogistics = contractLogisticsRepository.queryByLogisticContractIds(logContractIds);
|
|
|
- if (CollectionUtils.isNotEmpty(contractLogistics)){
|
|
|
|
|
|
|
+ if (CollectionUtils.isNotEmpty(contractLogistics)) {
|
|
|
List<ContractLogisticsAndTradeOrderResDto.ContractLogisticsOrder> contractLogisticsOrders = contractLogistics.stream().map(c -> {
|
|
List<ContractLogisticsAndTradeOrderResDto.ContractLogisticsOrder> contractLogisticsOrders = contractLogistics.stream().map(c -> {
|
|
|
ContractLogisticsAndTradeOrderResDto.ContractLogisticsOrder contractLogisticsOrder = new ContractLogisticsAndTradeOrderResDto.ContractLogisticsOrder();
|
|
ContractLogisticsAndTradeOrderResDto.ContractLogisticsOrder contractLogisticsOrder = new ContractLogisticsAndTradeOrderResDto.ContractLogisticsOrder();
|
|
|
contractLogisticsOrder.setLogisticsContractId(c.getId());
|
|
contractLogisticsOrder.setLogisticsContractId(c.getId());
|
|
@@ -245,9 +252,38 @@ public class RemoteContractServiceImpl implements RemoteContractService {
|
|
|
return contractLogisticsAndTradeOrderResDto;
|
|
return contractLogisticsAndTradeOrderResDto;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ @Override
|
|
|
|
|
+ public TradeContractResDto queryTradeContract(Long tradeContractId, Long goodsId) {
|
|
|
|
|
+ KwcContractTrade kwcContractTrade = kwcContractTradeMapper.selectById(tradeContractId);
|
|
|
|
|
+ if (Objects.nonNull(kwcContractTrade)) {
|
|
|
|
|
+ TradeContractResDto tradeContractResDto = BeanUtils.toBean(kwcContractTrade, TradeContractResDto.class);
|
|
|
|
|
+ tradeContractResDto.setId(kwcContractTrade.getId());
|
|
|
|
|
+ tradeContractResDto.setContactName(kwcContractTrade.getName());
|
|
|
|
|
+ tradeContractResDto.setContractNo(kwcContractTrade.getContractNo());
|
|
|
|
|
+ KwcContractTradeGoods kwcContractTradeGoods = kwcContractTradeGoodsMapper.selectOne(new LambdaQueryWrapper<KwcContractTradeGoods>()
|
|
|
|
|
+ .eq(KwcContractTradeGoods::getContractId, tradeContractId)
|
|
|
|
|
+ .eq(KwcContractTradeGoods::getGoodsId, goodsId)
|
|
|
|
|
+ .eq(KwcContractTradeGoods::getDelFlag, 0)
|
|
|
|
|
+ );
|
|
|
|
|
+ Optional.ofNullable(kwcContractTradeGoods).ifPresent(d -> tradeContractResDto.setGoodsInfoDto(BeanUtils.toBean(d, GoodsInfoDto.class)));
|
|
|
|
|
+
|
|
|
|
|
+ List<KwcContractTradeUnit> kwcContractTradeUnits = kwcContractTradeUnitMapper.selectList(new LambdaQueryWrapper<KwcContractTradeUnit>().eq(KwcContractTradeUnit::getContractId, tradeContractId)
|
|
|
|
|
+ .eq(KwcContractTradeUnit::getDelFlag, 0));
|
|
|
|
|
+ Optional.ofNullable(kwcContractTradeUnits).ifPresent(d -> tradeContractResDto.setUnitList(d.stream().map(t -> BeanUtils.toBean(t, TradeContractUnitDto.class)).toList()));
|
|
|
|
|
+
|
|
|
|
|
+ return tradeContractResDto;
|
|
|
|
|
+ }
|
|
|
|
|
+ return null;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ @Override
|
|
|
|
|
+ public TradeContractGoodsDto queryTradeContractNew(Long entId, Long goodsId) {
|
|
|
|
|
+ return kwcContractTradeMapper.queryNewSignPrice(entId,goodsId);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
@Override
|
|
@Override
|
|
|
public List<ContractLogisticsOrderResDto> queryContractLogisticsOrder(LogisticsOrderDto logisticsOrderDto) {
|
|
public List<ContractLogisticsOrderResDto> queryContractLogisticsOrder(LogisticsOrderDto logisticsOrderDto) {
|
|
|
- log.info("查询物流合同请求:{}",JSON.toJSONString( logisticsOrderDto));
|
|
|
|
|
|
|
+ log.info("查询物流合同请求:{}", JSON.toJSONString(logisticsOrderDto));
|
|
|
return kwcContractTradeService.queryContractLogisticsOrder(logisticsOrderDto);
|
|
return kwcContractTradeService.queryContractLogisticsOrder(logisticsOrderDto);
|
|
|
|
|
|
|
|
}
|
|
}
|