Browse Source

Merge branch 'dev' into pre-production

master
汤建军 7 months ago
parent
commit
ee4f8b8cf0
  1. 3
      blade-service-api/logpm-basicdata-api/src/main/java/com/logpm/basicdata/feign/IBasicdataTripartiteMallClient.java
  2. 5
      blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/feign/BasicdataTripartiteMallClient.java
  3. 2
      blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/mapper/BasicdataTripartiteMallMapper.java
  4. 16
      blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/mapper/BasicdataTripartiteMallMapper.xml
  5. 2
      blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/IBasicdataTripartiteMallService.java
  6. 9
      blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataTripartiteMallServiceImpl.java
  7. 18
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionStockArticleController.java
  8. 11
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/feign/DistributionParcelListClient.java
  9. 2
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryListMapper.xml
  10. 48
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionAsyncServiceImpl.java
  11. 50
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java
  12. 91
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionSignforServiceImpl.java
  13. 4
      blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportDeliverMapeer.java
  14. 3
      blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportDeliverMapper.xml
  15. 2
      blade-service/logpm-report/src/main/java/com/logpm/report/reader/DeliveryDetailReader.java
  16. 48
      blade-service/logpm-report/src/main/java/com/logpm/report/service/impl/ReportDeliverServiceImpl.java
  17. 2
      blade-service/logpm-report/src/main/java/com/logpm/report/service/impl/WarehouseIndexServiceImpl.java
  18. 2
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineAdvanceMapper.xml
  19. 5
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/InComingServiceImpl.java
  20. 4
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/OpenOrderServiceImpl.java
  21. 2
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineAdvanceDetailServiceImpl.java
  22. 1
      blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseRetentionRecordServiceImpl.java

3
blade-service-api/logpm-basicdata-api/src/main/java/com/logpm/basicdata/feign/IBasicdataTripartiteMallClient.java

@ -51,6 +51,9 @@ public interface IBasicdataTripartiteMallClient {
@GetMapping(GETNAMEBRAND)
Long getClientIdByNameAndBrand(@RequestParam String name, @RequestParam String brand);
@GetMapping(API_PREFIX+"/getClientIdByNameAndBrandAndCode")
Long getClientIdByNameAndBrandAndCode(@RequestParam String name, @RequestParam String code,@RequestParam String brand);
@GetMapping(API_PREFIX+"/findEntityByDealerNameAndDealerCodeAndBrand")
BasicdataTripartiteMallEntity findEntityByDealerNameAndDealerCodeAndBrand(@RequestParam String dealerName, @RequestParam String dealerCode, @RequestParam String brand);
}

5
blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/feign/BasicdataTripartiteMallClient.java

@ -59,6 +59,11 @@ public class BasicdataTripartiteMallClient implements IBasicdataTripartiteMallCl
return basicdataTripartiteMallService.getClientIdByNameAndBrand(name,brand);
}
@Override
public Long getClientIdByNameAndBrandAndCode(String name, String code, String brand) {
return basicdataTripartiteMallService.getClientIdByNameAndBrandAndCode(name,code,brand);
}
@Override
public BasicdataTripartiteMallEntity findEntityByDealerNameAndDealerCodeAndBrand(String dealerName, String dealerCode, String brand) {
QueryWrapper<BasicdataTripartiteMallEntity> queryWrapper = new QueryWrapper<>();

2
blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/mapper/BasicdataTripartiteMallMapper.java

@ -55,4 +55,6 @@ public interface BasicdataTripartiteMallMapper extends BaseMapper<BasicdataTripa
Long getClientIdByNameAndBrand(@Param("name") String name, @Param("brand") String brand);
List<BasicdataTripartiteMallEntity> getOwn();
Long getClientIdByNameAndBrandAndCode(@Param("name") String name, @Param("code") String code, @Param("brand") String brand);
}

16
blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/mapper/BasicdataTripartiteMallMapper.xml

@ -47,4 +47,20 @@
</select>
<select id="getClientIdByNameAndBrandAndCode" resultType="Long">
select client_id
from logpm_basicdata_tripartite_mall
where tripartite_mall = #{name}
and brand_name = #{brand}
and is_deleted = 0
<if test="code != null and code != ''">
and tripartite_coding = #{code}
</if>
<if test="code == null || code == ''">
and tripartite_coding is null
</if>
limit 1
</select>
</mapper>

2
blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/IBasicdataTripartiteMallService.java

@ -53,4 +53,6 @@ public interface IBasicdataTripartiteMallService extends BaseService<BasicdataTr
Long getClientIdByNameAndBrand(String name, String brand);
List<BasicdataTripartiteMallEntity> getOwn();
Long getClientIdByNameAndBrandAndCode(String name, String code, String brand);
}

9
blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataTripartiteMallServiceImpl.java

@ -61,4 +61,13 @@ public class BasicdataTripartiteMallServiceImpl extends BaseServiceImpl<Basicdat
public List<BasicdataTripartiteMallEntity> getOwn() {
return baseMapper.getOwn();
}
@Override
public Long getClientIdByNameAndBrandAndCode(String name, String code, String brand) {
if("".equals(code)){
code=null;
}
return baseMapper.getClientIdByNameAndBrandAndCode(name,code,brand);
}
}

18
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionStockArticleController.java

@ -350,7 +350,7 @@ public class DistributionStockArticleController extends BladeController {
public R updateClient(@Valid @RequestBody DistributionStockArticleEntity distributionStockArticle) {
Long id = distributionStockArticle.getId();
DistributionStockArticleEntity oldStockArticle = distributionStockArticleService.getById(id);
if (!OrderPackageReservationStatusConstant.daiyuyue.getValue().equals(oldStockArticle)) {
if (!OrderPackageReservationStatusConstant.daiyuyue.getValue().equals(oldStockArticle.getReservationStatus())) {
return R.fail(oldStockArticle.getOrderCode() + "存在预约信息");
}
DistributionStockArticleEntity newStockArticle = new DistributionStockArticleEntity();
@ -377,17 +377,25 @@ public class DistributionStockArticleController extends BladeController {
@ApiOperationSupport(order = 5)
@ApiOperation(value = "修改", notes = "传入distributionStockArticle")
public R updateBatchClient(@Valid @RequestBody DistributionStockArticleDTO distributionStockArticleDTO) {
// 获取勾选的需要修改的订单信息
List<Long> ids = distributionStockArticleDTO.getEntityList().stream().map(DistributionStockArticleEntity::getId).collect(Collectors.toList());
// 查询这个订单集合的预约状态
List<DistributionStockArticleEntity> realStockArticleList = distributionStockArticleService.listByIds(ids);
List<DistributionStockArticleEntity> entityList = distributionStockArticleDTO.getEntityList();
if (!entityList.isEmpty()) {
boolean flag = entityList.stream().anyMatch(a -> !OrderPackageReservationStatusConstant.daiyuyue.getValue().equals(a.getReservationStatus()));
if (!realStockArticleList.isEmpty()) {
boolean flag = realStockArticleList.stream().anyMatch(a -> !OrderPackageReservationStatusConstant.daiyuyue.getValue().equals(a.getReservationStatus()));
if (flag) {
String orderCode = entityList.stream().filter(f -> !OrderPackageReservationStatusConstant.daiyuyue.getValue().equals(f.getReservationStatus())).map(DistributionStockArticleEntity::getOrderCode).distinct().collect(Collectors.joining(","));
String orderCode = realStockArticleList.stream().filter(f -> !OrderPackageReservationStatusConstant.daiyuyue.getValue().equals(f.getReservationStatus())).map(DistributionStockArticleEntity::getOrderCode).distinct().collect(Collectors.joining(","));
return R.fail(orderCode + "存在预约信息");
}
}
for (DistributionStockArticleEntity stockArticleEntity : entityList) {
Long id = stockArticleEntity.getId();
DistributionStockArticleEntity oldStockArticle = distributionStockArticleService.getById(id);
DistributionStockArticleEntity oldStockArticle =realStockArticleList.stream().filter(f -> f.getId().equals(id)).findFirst().orElse(null);
DistributionStockArticleEntity newStockArticle = new DistributionStockArticleEntity();
BeanUtil.copy(oldStockArticle, newStockArticle);
String consigneePerson = stockArticleEntity.getConsigneePerson();

11
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/feign/DistributionParcelListClient.java

@ -16,6 +16,7 @@
*/
package com.logpm.distribution.feign;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.json.JSONUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@ -437,11 +438,19 @@ public class DistributionParcelListClient implements IDistributionParcelListClie
@Override
public List<DistributionParcelListEntity> findListByOrderPackageCodeList(FindParamterDTO findParamterDTO) {
List<String> orderPackageCodeList = findParamterDTO.getOrderPackageCodeList();
if(CollUtil.isNotEmpty(orderPackageCodeList)){
QueryWrapper<DistributionParcelListEntity> queryWrapper = new QueryWrapper<>();
queryWrapper.in("order_package_code", findParamterDTO.getOrderPackageCodeList())
.eq("warehouse_id", findParamterDTO.getWarehouseId());
return distributionParcelListService.list(queryWrapper);
}else{
log.info("############findListByOrderPackageCodeList: 当前包件信息为空 orderPackageCodeList={}",orderPackageCodeList);
return null;
}
}
@Override

2
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryListMapper.xml

@ -1622,7 +1622,7 @@
INNER JOIN logpm_distribution_parcel_list AS ldpl ON ldrp.parce_list_id = ldpl.id
<where>
ldrp.packet_bar_status != 2
<if test="deliveryListId != null and deliveryListId != ''">
<if test="deliveryListId != null ">
and lds.delivery_id = #{deliveryListId}
</if>
</where>

48
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionAsyncServiceImpl.java

@ -6,7 +6,6 @@ import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.StrUtil;
import cn.hutool.json.JSONUtil;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
@ -16,7 +15,6 @@ import com.logpm.basicdata.entity.BasicdataClientEntity;
import com.logpm.basicdata.entity.BasicdataWarehouseEntity;
import com.logpm.basicdata.feign.IBasicdataClientClient;
import com.logpm.basicdata.feign.IBasicdataWarehouseClient;
import com.logpm.business.entity.BusinessPreOrderEntity;
import com.logpm.distribution.dto.DistributionLoadingNumDTO;
import com.logpm.distribution.dto.DistributionParcelNumberDTO;
import com.logpm.distribution.dto.DistributionStockArticleDTO;
@ -25,28 +23,9 @@ import com.logpm.distribution.dto.app.DistrilbutionloadingscanDTO;
import com.logpm.distribution.dto.app.StockupDTO;
import com.logpm.distribution.dto.app.StockupZeroDTO;
import com.logpm.distribution.entity.*;
import com.logpm.distribution.mapper.DistributionBillLadingScanMapper;
import com.logpm.distribution.mapper.DistributionDeliveryDetailsMapper;
import com.logpm.distribution.mapper.DistributionDeliveryListMapper;
import com.logpm.distribution.mapper.DistributionLoadscanMapper;
import com.logpm.distribution.mapper.DistributionLoadscaninvnMapper;
import com.logpm.distribution.mapper.DistributionParcelListMapper;
import com.logpm.distribution.mapper.DistributionReservationMapper;
import com.logpm.distribution.mapper.DistributionReservationPackageMapper;
import com.logpm.distribution.mapper.DistributionReservationStockarticleMapper;
import com.logpm.distribution.mapper.DistributionReservationStocklistMapper;
import com.logpm.distribution.mapper.DistributionSignforMapper;
import com.logpm.distribution.mapper.DistributionStockListMapper;
import com.logpm.distribution.mapper.DistributionStockMapper;
import com.logpm.distribution.mapper.DistributionStockupInfoMapper;
import com.logpm.distribution.mapper.DistributionStockupMapper;
import com.logpm.distribution.mapper.DistrilbutionBillLadingMapper;
import com.logpm.distribution.mapper.*;
import com.logpm.distribution.service.*;
import com.logpm.distribution.vo.DistributionParcelNumberVO;
import com.logpm.distribution.vo.DistributionSignPrintVO;
import com.logpm.distribution.vo.DistributionStockPackageVO;
import com.logpm.distribution.vo.DistributionStockupSelfVO;
import com.logpm.distribution.vo.DistrilbutionBillStockVO;
import com.logpm.distribution.vo.*;
import com.logpm.factory.comfac.dto.OrderStatusDTO;
import com.logpm.factory.mt.dto.MtReceiveContentDTO;
import com.logpm.factory.mt.dto.MtReceiveDTO;
@ -58,11 +37,11 @@ import com.logpm.factorydata.util.FactoryDataMessageSender;
import com.logpm.factorydata.vo.NodePushMsg;
import com.logpm.factorydata.vo.PushData;
import com.logpm.trunkline.dto.AddWaybillTrackDTO;
import com.logpm.trunkline.feign.*;
import com.logpm.trunkline.feign.ITrunklinePackageTrackLogClient;
import com.logpm.trunkline.feign.ITrunklineWaybillTrackClient;
import com.logpm.warehouse.entity.WarehouseWaybillEntity;
import com.logpm.warehouse.feign.IWarehouseUpdownTypeClient;
import com.logpm.warehouse.feign.IWarehouseWaybillClient;
import com.logpm.warehouse.feign.IWarehouseWaybillDetailClient;
import lombok.AllArgsConstructor;
import lombok.extern.log4j.Log4j2;
import org.springblade.common.annotations.ChangeAsync;
@ -84,24 +63,14 @@ import org.springblade.common.constant.orderpackage.OrderPackageLoadingStatusCon
import org.springblade.common.constant.orderpackage.OrderPackageReservationStatusConstant;
import org.springblade.common.constant.orderpackage.OrderPackageStatusConstant;
import org.springblade.common.constant.orderpackage.OrderPackageStockupStatusConstant;
import org.springblade.common.constant.reservation.ReservationInventoryLoadingStatusConstant;
import org.springblade.common.constant.reservation.ReservationInventorySigningStatusConstant;
import org.springblade.common.constant.reservation.ReservationInventoryStatusConstant;
import org.springblade.common.constant.reservation.ReservationLoadingStatusConstant;
import org.springblade.common.constant.reservation.ReservationOrderStatusConstant;
import org.springblade.common.constant.reservation.ReservationPackageStatusConstant;
import org.springblade.common.constant.reservation.ReservationSigningStatusConstant;
import org.springblade.common.constant.reservation.ReservationStockupStatusConstant;
import org.springblade.common.constant.reservation.*;
import org.springblade.common.constant.signing.SignforStatusConstant;
import org.springblade.common.constant.stockup.StockupStatusConstant;
import org.springblade.common.constant.stockup.StockupTypeConstant;
import org.springblade.core.log.exception.ServiceException;
import org.springblade.core.secure.BladeUser;
import org.springblade.core.secure.utils.AuthUtil;
import org.springblade.core.tool.api.R;
import org.springblade.core.tool.utils.Func;
import org.springblade.core.tool.utils.ObjectUtil;
import org.springblade.system.entity.Tenant;
import org.springblade.system.feign.ISysClient;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.stereotype.Service;
@ -154,7 +123,6 @@ public class DistributionAsyncServiceImpl implements IDistributionAsyncService {
private final IDistrilbutionBillPackageService billPackageService;
private final IDistributionReservationZeroPackageService zeroPackageService;
private final DistributionSignforMapper distributionSignforService;
private final ITrunklineWaybillTrackClient trunklineWaybillTrackClient;
private final IWarehouseWaybillClient waybillClient;
@ -1578,7 +1546,7 @@ public class DistributionAsyncServiceImpl implements IDistributionAsyncService {
for (DistributionParcelListEntity distributionParcelListEntity : distributionParcelListEntities) {
// todo 查询签收信息
DistributionSignforEntity distributionSignfor = distributionSignforService.getByReservationId(distributionReservationStockarticleEntity.getReservationId());
DistributionSignforEntity distributionSignfor = distributionSignforMapper.getByReservationId(distributionReservationStockarticleEntity.getReservationId());
OrderStatusDTO orderStatusDTO = new OrderStatusDTO();
orderStatusDTO.setUnitNo(distributionParcelListEntity.getOrderPackageCode()); //单号
orderStatusDTO.setUsername(distributionSignfor.getSigneeName()); //操作人名称
@ -2209,7 +2177,9 @@ public class DistributionAsyncServiceImpl implements IDistributionAsyncService {
}
distributionReservationMapper.updateById(distributionReservationEntity);
if (distributionReservationEntity.getReservationNum() == 0 && distributionReservationEntity.getReservationStockListNum() == 0) {
distributionReservationMapper.deleteById(distributionReservationEntity);
distributionReservationEntity.setIsDeleted(1);
distributionReservationEntity.setReservationStatus(ReservationStatusConstant.yiquexiao.getValue());
distributionReservationMapper.updateById(distributionReservationEntity);
}
}
}

50
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java

@ -3576,10 +3576,6 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
break;
}
List<DistributionDeliverySelfDTO> allocationInfo = deliveryListDTO.getAllocationInfo();
if (Strings.isBlank(deliveryListDTO.getMasterDriverName())){
//无主司机信息 进行主司机默认赋予
deliveryListDTO.setMasterDriverName(allocationInfo.get(0).getDriverName());
}
if (Func.isEmpty(allocationInfo)) {
//这里就表示是三方配送
DistributionDeliveryTripartiteDTO tripartite = deliveryListDTO.getTripartite();
@ -6069,29 +6065,29 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
return Resp.scanFail("此包件存在异常未处理", "此包件存在异常未处理");
}
}
//如果均不存在则就该判断该货物是否属于当前的配送任务,如果属于则是未装车,如果不属于则此码无效
List<DistributionParcelListEntity> distributionParcelListEntities = baseMapper.selectPackageListByDeliveryListId(deliveryListEntity.getId());
boolean flag = false;
if (Func.isNotEmpty(distributionParcelListEntities)) {
List<DistributionParcelListEntity> isHave = distributionParcelListEntities.stream().filter(p -> p.getOrderPackageCode().equals(distrilbutionloadingscanDTO.getBarcode())).collect(Collectors.toList());
if (Func.isNotEmpty(isHave)) {
flag = isHave.size() == 1;
//判断是否存在有待处理的异常
}
} else {
List<DisStockListDetailEntity> disStockListDetailEntities = baseMapper.selectInventoryListByDeliveryListId(distrilbutionloadingscanDTO.getDeliveryId());
if (Func.isNotEmpty(disStockListDetailEntities)) {
List<DisStockListDetailEntity> isHaveinven = disStockListDetailEntities.stream().filter(inven -> Func.isNotEmpty(inven.getStockPackageCode()) && inven.getStockPackageCode().equals(distrilbutionloadingscanDTO.getBarcode())).collect(Collectors.toList());
if (Func.isNotEmpty(isHaveinven)) {
flag = isHaveinven.size() == 1;
}
}
}
if (!flag) {
//存在该订制品或者库存品包件信息但是未进行装车操作
return Resp.scanFail("包件未装车", "包件未装车");
}
// //如果均不存在则就该判断该货物是否属于当前的配送任务,如果属于则是未装车,如果不属于则此码无效
// List<DistributionParcelListEntity> distributionParcelListEntities = baseMapper.selectPackageListByDeliveryListId(deliveryListEntity.getId());
// boolean flag = false;
// if (Func.isNotEmpty(distributionParcelListEntities)) {
// List<DistributionParcelListEntity> isHave = distributionParcelListEntities.stream().filter(p -> p.getOrderPackageCode().equals(distrilbutionloadingscanDTO.getBarcode())).collect(Collectors.toList());
// if (Func.isNotEmpty(isHave)) {
// flag = isHave.size() == 1;
// //判断是否存在有待处理的异常
// }
// } else {
// List<DisStockListDetailEntity> disStockListDetailEntities = baseMapper.selectInventoryListByDeliveryListId(distrilbutionloadingscanDTO.getDeliveryId());
// if (Func.isNotEmpty(disStockListDetailEntities)) {
// List<DisStockListDetailEntity> isHaveinven = disStockListDetailEntities.stream().filter(inven -> Func.isNotEmpty(inven.getStockPackageCode()) && inven.getStockPackageCode().equals(distrilbutionloadingscanDTO.getBarcode())).collect(Collectors.toList());
// if (Func.isNotEmpty(isHaveinven)) {
// flag = isHaveinven.size() == 1;
// }
// }
// }
//
// if (!flag) {
// //存在该订制品或者库存品包件信息但是未进行装车操作
// return Resp.scanFail("包件未装车", "包件未装车");
// }
}
return R.data(retentionScanVos);
}

91
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionSignforServiceImpl.java

@ -251,11 +251,11 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl<Distribution
// 获取当前登录人仓库
BasicdataWarehouseEntity myCurrentWarehouse = basicdataWarehouseClient.getMyCurrentWarehouse();
if(null == myCurrentWarehouse){
if (null == myCurrentWarehouse) {
List<BasicdataWarehouseEntity> myWatchWarehouse = basicdataWarehouseClient.getMyWatchWarehouse();
List<Long> collect = myWatchWarehouse.stream().map(BasicdataWarehouseEntity::getId).collect(Collectors.toList());
distributionSignfor.setWarehouseIdList(collect);
}else{
} else {
List<Long> collect = new ArrayList<>();
collect.add(myCurrentWarehouse.getId());
distributionSignfor.setWarehouseIdList(collect);
@ -266,7 +266,7 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl<Distribution
try {
distributionSignforVOS = baseMapper.selectDistributionSignforPage(page, distributionSignfor);
} catch (Exception e) {
log.error(">>> selectDistributionSignforPage",e);
log.error(">>> selectDistributionSignforPage", e);
// 这里应该记录日志或者进行一些错误处理
return page.setRecords(Collections.emptyList());
}
@ -283,10 +283,10 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl<Distribution
private void processReservationIds(List<DistributionSignforVO> distributionSignforVOS, List<Long> reservationIds) {
List<DistributionParcelListVO> distributionParcelListEntities = distributionReservationMapper.selectPackageListByReservationIds(reservationIds);
List<DisStockListDetailEntity> list = disStockListDetailService.list(Wrappers.<DisStockListDetailEntity>query().lambda()
.in(DisStockListDetailEntity::getReservationId, reservationIds)
.ne(DisStockListDetailEntity::getStockPackageStatus, ReservationPackageStatusConstant.quxiao.getValue())
);
// List<DisStockListDetailEntity> list = disStockListDetailService.list(Wrappers.<DisStockListDetailEntity>query().lambda()
// .in(DisStockListDetailEntity::getReservationId, reservationIds)
// .ne(DisStockListDetailEntity::getStockPackageStatus, ReservationPackageStatusConstant.quxiao.getValue())
// );
List<DistributionReservationZeroPackageEntity> reservationZeroPackageEntities = distributionReservationZeroPackageService.list(Wrappers.<DistributionReservationZeroPackageEntity>query().lambda()
.in(DistributionReservationZeroPackageEntity::getReservationId, reservationIds)
.ne(DistributionReservationZeroPackageEntity::getZeroPackageStatus, ReservationPackageStatusConstant.quxiao.getValue())
@ -378,9 +378,11 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl<Distribution
private String getDeliveryTypeName(String type) {
switch (type) {
case "1":
return DistributionTypeConstant.shipie.getName();
case "2":
return DistributionTypeConstant.shangpei.getName();
case "2":
return DistributionTypeConstant.shipie.getName();
case "3":
return DistributionTypeConstant.ziti.getName();
default:
return "";
}
@ -890,9 +892,15 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl<Distribution
}
}
//统计客户装车数
Integer lad = distributionLoadscanMapper.selectCount(new QueryWrapper<DistributionLoadscanEntity>().lambda().eq(DistributionLoadscanEntity::getReservationId, signforEntity.getReservationId())).intValue();
Integer lad = distributionLoadscanMapper.selectCount(new QueryWrapper<DistributionLoadscanEntity>().lambda()
.eq(DistributionLoadscanEntity::getReservationId, signforEntity.getReservationId())
.ne(DistributionLoadscanEntity::getScanStatus, LoadingStatusConstant.quxiao.getValue()))
.intValue();
Integer nad = distributionLoadscaninvnMapper.selectCount(new QueryWrapper<DistributionLoadscaninvnEntity>().lambda().eq(DistributionLoadscaninvnEntity::getReservationId, signforEntity.getReservationId())).intValue();
Integer nad = distributionLoadscaninvnMapper.selectCount(new QueryWrapper<DistributionLoadscaninvnEntity>().lambda()
.eq(DistributionLoadscaninvnEntity::getReservationId, signforEntity.getReservationId())
.ne(DistributionLoadscaninvnEntity::getScanStatus, LoadingStatusConstant.quxiao.getValue()))
.intValue();
signforEntity.setLoadedNumber(lad);
signforEntity.setLoadedinNumber(nad);
//统计客户签收数
@ -1711,8 +1719,6 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl<Distribution
}
private List<DeliveryNodeVo> handleStockUp(DistributionStockupEntity distributionStockupEntity) {
List<DeliveryNodeVo> nodeVos = new ArrayList<>();
try {
@ -2378,19 +2384,17 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl<Distribution
@Override
public List<DistributionSignforOwnExcel> exportDistributionSignforOwn(DistributionSignforVO distributionSignforVO) {
try {
// 转换创建时间
distributionSignforVO.setCreateTime_query(DateUtil.format(distributionSignforVO.getCreateTime(), "yyyy:MM:dd HH:mm:ss"));
// 获取当前登录人仓库
BasicdataWarehouseEntity myCurrentWarehouse = basicdataWarehouseClient.getMyCurrentWarehouse();
if(null == myCurrentWarehouse){
if (null == myCurrentWarehouse) {
List<BasicdataWarehouseEntity> myWatchWarehouse = basicdataWarehouseClient.getMyWatchWarehouse();
List<Long> collect = myWatchWarehouse.stream().map(BasicdataWarehouseEntity::getId).collect(Collectors.toList());
distributionSignforVO.setWarehouseIdList(collect);
}else{
} else {
List<Long> collect = new ArrayList<>();
collect.add(myCurrentWarehouse.getId());
distributionSignforVO.setWarehouseIdList(collect);
@ -2401,7 +2405,7 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl<Distribution
try {
distributionSignforVOS = baseMapper.selectDistributionSignforPage(null, distributionSignforVO);
} catch (Exception e) {
log.error(">>> selectDistributionSignforPage",e);
log.error(">>> selectDistributionSignforPage", e);
// 这里应该记录日志或者进行一些错误处理
return Collections.emptyList();
}
@ -2445,35 +2449,17 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl<Distribution
signforExcel.setDeliveryStatusName(d.getSijiSigningStatus());
signforExcel.setExamineUserName(d.getExamineUserName());
signforExcel.setWarehouseName(d.getWarehouseName());
signforExcel.setUnsigneds(d.getTotalNum() - d.getSigningNum());
int unsigneds =d.getReservationNum() - d.getReceivedQuantity();
signforExcel.setUnsigneds(unsigneds);
a.add(signforExcel);
});
return a;
} catch (Exception e) {
e.printStackTrace();
}
return null;
// List<DistributionSignforVO> distributionSignforList = baseMapper.exportDistributionSignforSigningOwn(distributionSignforVO);
//
// List<DistributionSignforOwnExcel> list = new ArrayList<>();
// distributionSignforList.forEach(d -> {
// DistributionSignforOwnExcel signforExcel = Func.copy(d, DistributionSignforOwnExcel.class);
// assert signforExcel != null;
// signforExcel.setLoadingTime(d.getLoadingTime());
// signforExcel.setDeliveryDriverPhone(d.getDriverPhone());
// signforExcel.setDeliveryDriverName(d.getDriverName());
// signforExcel.setReservationNum(d.getTotalNum());
// signforExcel.setLoadedNumber(d.getPackageLoadingNum() + d.getInventoryLoadingNum());
// signforExcel.setReceivedQuantity(d.getPackageSigningNum() + d.getInventorySigningNum());
// signforExcel.setDeliveryStatusName(d.getDeliveryStatusName());
// signforExcel.setDeliveryPhone(d.getDeliveryPhone());
// signforExcel.setWithoutScanning(d.getTotalNum() - (d.getPackageLoadingNum() + d.getInventoryLoadingNum()));
// signforExcel.setUnsigneds(d.getTotalNum() - (d.getPackageSigningNum() + d.getInventorySigningNum()));
// signforExcel.setConsignee(d.getConsignee());
// list.add(signforExcel);
// });
// return list;
}
@Override
@ -2526,7 +2512,6 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl<Distribution
}
List<Long> packageLockIds = new ArrayList<>();
try {
@ -2767,7 +2752,7 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl<Distribution
.eq(DistributionLoadscanAbnormalEntity::getPackageCode, distrilbutionloadingscanDTO.getBarcode())
);
//查询是否存在驳回操作
if (!Func.isEmpty(abnormalEntity)){
if (!Func.isEmpty(abnormalEntity)) {
if (abnormalEntity.getAuditingStatus().equals(3)) {
return Resp.scanFail("包件异常已驳回,请扫滞留", "包件异常已驳回,请扫滞留");
}
@ -3959,7 +3944,6 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl<Distribution
List<DistributionStockArticleEntity> distributionStockArticleEntities = distributionStockArticleService.listByIds(orderIds);
List<DistributionReservationStockarticleEntity> reservationOrders = distributionReservationStockarticleService.list(Wrappers.<DistributionReservationStockarticleEntity>query().lambda()
.eq(DistributionReservationStockarticleEntity::getReservationId, distributionDeliveryList.getReservationId())
.in(DistributionReservationStockarticleEntity::getStockArticleId, orderIds)
@ -4099,6 +4083,7 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl<Distribution
/**
* 寻找预约单中订单
*
* @param reservationOrders
* @param id
* @return
@ -6407,7 +6392,6 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl<Distribution
return selectDistributionSignforPageCount;
}
@Override
@ -6700,11 +6684,10 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl<Distribution
}
private void buildReservationNameAndPhone(List<SignPushDataContactDTO> customers) {
for (SignPushDataContactDTO signPushDataUnitDTO : customers) {
User user = bladeRedis.get(RedisKeyConstant.USER_NAME_PHONE_KEY + signPushDataUnitDTO.getSignUserId());
log.info("buildNameAndPhone >>> 获取缓存的中的用户信息{}",user);
log.info("buildNameAndPhone >>> 获取缓存的中的用户信息{}", user);
if (user == null) {
R<User> userT = userClient.userInfoById(signPushDataUnitDTO.getSignUserId());
if (userT.isSuccess()) {
@ -6715,13 +6698,13 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl<Distribution
if (ObjectUtils.isNotNull(user)) {
assert user != null;
signPushDataUnitDTO.setSignUserName(user.getName());
if (ObjectUtils.isNotEmpty(user.getPhone())){
if (ObjectUtils.isNotEmpty(user.getPhone())) {
signPushDataUnitDTO.setSignUserPhone(user.getPhone());
}else {
if (ObjectUtils.isNotEmpty(user.getAccount())){
} else {
if (ObjectUtils.isNotEmpty(user.getAccount())) {
signPushDataUnitDTO.setSignUserPhone(user.getAccount());
}else {
log.info("用户无电话号码且账号信息为空>>用户名称:{}",user.getName());
} else {
log.info("用户无电话号码且账号信息为空>>用户名称:{}", user.getName());
}
}
}

4
blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportDeliverMapeer.java

@ -58,11 +58,11 @@ public interface ReportDeliverMapeer extends BaseMapper {
/**
* 查询零担明细
* @param page
*
* @param queryWrapper
* @return
*/
List<ReportDetailVO> getDetailsZeroPage(IPage<ReportDetailVO> page,@Param("ew") Wrapper queryWrapper);
List<ReportDetailVO> getDetailsZeroPage(@Param("limitA") long limitA, @Param("limitB") long limitB, @Param("ew") Wrapper queryWrapper);
Long getDetailsZeroPageCount(@Param("ew") Wrapper queryWrapper);
List<DeliveryTrainLoadedScanDTO> getDeliveryTrainLoadSacnByIds(@Param("idBatch") List<Long> idBatch);

3
blade-service/logpm-report/src/main/java/com/logpm/report/mapper/ReportDeliverMapper.xml

@ -521,7 +521,7 @@
obj.reservation_code reservation_code,
obj.reservation_date task_time,
dpl.warehouse warehouse_name,
dpl.warehouse warehouse_id,
dpl.warehouse_id warehouse_id,
CASE
WHEN obj.delivery_type = 1 THEN
'商配'
@ -642,6 +642,7 @@
</sql>
<select id="getDetailsZeroPage" resultType="com.logpm.report.vo.ReportDetailVO">
<include refid="detailsZeroPage"></include>
limit #{limitA},#{limitB}
</select>
<select id="getStockOrderPage" resultType="com.logpm.report.vo.StockOrderVO">
select waybill_number,

2
blade-service/logpm-report/src/main/java/com/logpm/report/reader/DeliveryDetailReader.java

@ -35,7 +35,7 @@ public class DeliveryDetailReader implements ExportReader {
@Override
public List<T> findList(Page page, Wrapper query) {
List detailsPage = reportDeliverMapeer.getDetailsPage(page, query);
List detailsZeroPage = reportDeliverMapeer.getDetailsZeroPage(page, query);
List detailsZeroPage = reportDeliverMapeer.getDetailsZeroPage(page.getCurrent(), page.getSize(), query);
detailsPage.addAll(detailsZeroPage);
return detailsPage;
}

48
blade-service/logpm-report/src/main/java/com/logpm/report/service/impl/ReportDeliverServiceImpl.java

@ -1,5 +1,7 @@
package com.logpm.report.service.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.convert.Convert;
import cn.hutool.core.util.NumberUtil;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
@ -35,6 +37,7 @@ import org.springblade.core.mp.support.Condition;
import org.springframework.stereotype.Service;
import javax.servlet.http.HttpServletResponse;
import java.util.ArrayList;
import java.util.List;
/**
@ -58,7 +61,7 @@ public class ReportDeliverServiceImpl implements ReportDeliverService {
@Override
public IPage<ReportDevilerVO> deliveryTrainPage(ReportDevilerVO vo, ReportDevilerQuery query) {
// 校验时间
if(ReportUtil.areAllPropertiesEmpty(vo)){
if (ReportUtil.areAllPropertiesEmpty(vo)) {
ReportUtil.dateIsWithinOneMonth(vo.getTaskTime(), query.getStartTaskTime(), query.getEndTaskTime(), "配送日期");
}
IPage<ReportDevilerVO> page = Condition.getPage(query);
@ -94,7 +97,7 @@ public class ReportDeliverServiceImpl implements ReportDeliverService {
@Override
public void exportTrain(HttpServletResponse response, ReportDevilerVO vo, ReportDevilerQuery query) {
// 添加时间校验
if(ReportUtil.areAllPropertiesEmpty(vo)){
if (ReportUtil.areAllPropertiesEmpty(vo)) {
ReportUtil.dateIsWithinOneMonth(vo.getTaskTime(), query.getStartTaskTime(), query.getEndTaskTime(), "配送日期");
}
QueryWrapper<ReportDevilerVO> queryWrapper = QueryUtil.buildQueryWrapper(vo, ReportDevilerVO.class);
@ -107,7 +110,7 @@ public class ReportDeliverServiceImpl implements ReportDeliverService {
@Override
public IPage<ReportCustomerVO> customerPage(ReportCustomerVO vo, ReportCustomerQuery query) {
// 添加时间校验
if(ReportUtil.areAllPropertiesEmpty(vo)){
if (ReportUtil.areAllPropertiesEmpty(vo)) {
ReportUtil.dateIsWithinOneMonth(vo.getTaskTime(), query.getStartTaskTime(), query.getEndTaskTime(), "配送日期");
}
// 构建前端查询参数
@ -142,7 +145,7 @@ public class ReportDeliverServiceImpl implements ReportDeliverService {
@Override
public void exportCustomer(HttpServletResponse response, ReportCustomerVO vo, ReportCustomerQuery query) {
// 添加时间校验
if(ReportUtil.areAllPropertiesEmpty(vo)) {
if (ReportUtil.areAllPropertiesEmpty(vo)) {
ReportUtil.dateIsWithinOneMonth(vo.getTaskTime(), query.getStartTaskTime(), query.getEndTaskTime(), "配送日期");
}
QueryWrapper<ReportCustomerVO> queryWrapper = QueryUtil.buildQueryWrapper(vo, ReportCustomerVO.class);
@ -155,7 +158,7 @@ public class ReportDeliverServiceImpl implements ReportDeliverService {
@Override
public IPage<ReportDetailVO> detailsPage(ReportDetailVO vo, DevilerDetailsQuery query) {
// 添加时间校验
if(ReportUtil.areAllPropertiesEmpty(vo)) {
if (ReportUtil.areAllPropertiesEmpty(vo)) {
ReportUtil.dateIsWithinOneMonth(vo.getTaskTime(), query.getStartTaskTime(), query.getEndTaskTime(), "配送日期");
}
Integer current = query.getCurrent();
@ -172,15 +175,30 @@ public class ReportDeliverServiceImpl implements ReportDeliverService {
Long detailsZeroPageCount = reportDeliverMapeer.getDetailsZeroPageCount(queryWrapper);
long allTotal = total + detailsZeroPageCount;
// 包件没数据查零担
if (detailsPage.size() < size) {
int zeroSize = size - detailsPage.size();
double div = NumberUtil.div(allTotal, size.doubleValue());
long zeroCurrent = current - (int) Math.ceil(div) + 1;
page.setCurrent(zeroCurrent);
page.setSize(zeroSize);
List<ReportDetailVO> zeroPage = reportDeliverMapeer.getDetailsZeroPage(page, queryWrapper);
page.setCurrent(current);
page.setSize(size);
int pageSize = current * size;
if (total < pageSize) {
// 剩余需要查询的数量
int zeroTotal = Convert.toInt(pageSize - total);
double div = NumberUtil.div(zeroTotal, size.doubleValue());
long zeroCurrent = (int) Math.ceil(div);
int zeroSize = zeroTotal % size;
IPage<ReportDetailVO> page1 = Condition.getPage(query);
page1.setCurrent(zeroCurrent);
long limitA = 0;
long limitB = 0;
if(zeroSize == 0){
zeroSize = size;
}
if (!NumberUtil.equals(zeroCurrent, 1)) {
limitA = zeroSize + (zeroCurrent - 2) * size;
zeroSize = size;
}
limitB = zeroSize;
page1.setSize(zeroSize);
List<ReportDetailVO> zeroPage = reportDeliverMapeer.getDetailsZeroPage(limitA, limitB, queryWrapper);
if(CollUtil.isEmpty(detailsPage)){
detailsPage = new ArrayList<>();
}
detailsPage.addAll(zeroPage);
}
page.setTotal(allTotal);
@ -211,7 +229,7 @@ public class ReportDeliverServiceImpl implements ReportDeliverService {
@Override
public void exportDetails(HttpServletResponse response, ReportDetailVO vo, DevilerDetailsQuery query) {
// 添加时间校验
if(ReportUtil.areAllPropertiesEmpty(vo)) {
if (ReportUtil.areAllPropertiesEmpty(vo)) {
ReportUtil.dateIsWithinOneMonth(vo.getTaskTime(), query.getStartTaskTime(), query.getEndTaskTime(), "配送日期");
}
QueryWrapper<ReportDetailVO> queryWrapper = QueryUtil.buildQueryWrapper(vo, ReportDetailVO.class);

2
blade-service/logpm-report/src/main/java/com/logpm/report/service/impl/WarehouseIndexServiceImpl.java

@ -119,7 +119,7 @@ public class WarehouseIndexServiceImpl implements IWarehouseIndexService {
public IndexHandOrderDataVO handOrderData(IndexDTO indexDTO) {
//增加缓存
BladeUser user = AuthUtil.getUser();
String key = CacheNames.tenantKey(user.getTenantId(), user.getUserId() + "", "allocationData");
String key = CacheNames.tenantKey(user.getTenantId(), user.getUserId() + "", "handOrderData");
IndexHandOrderDataVO indexHandOrderDataVO = bladeRedis.get(key);
if (Objects.isNull(indexHandOrderDataVO)) {

2
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineAdvanceMapper.xml

@ -15,7 +15,7 @@
select lta.*,
lbc.client_name htMallName
from logpm_trunkline_advance lta
left join logpm_basicdata_tripartite_mall lbtm on lbtm.tripartite_mall = lta.dealer_name and lbtm.brand_name = lta.brand and IFNULL(lta.dealer_code,'') = IFNULL(lbtm.tripartite_coding,'')
left join logpm_basicdata_tripartite_mall lbtm on lbtm.tripartite_mall = lta.dealer_name and lbtm.brand_name = lta.brand and IFNULL(lta.dealer_code,'') = IFNULL(lbtm.tripartite_coding,'') and lbtm.is_deletd = 0
left join logpm_basicdata_client lbc on lbc.id = lbtm.client_id
where lta.is_deleted = 0
and lta.waybill_status = 0

5
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/InComingServiceImpl.java

@ -699,13 +699,16 @@ public class InComingServiceImpl implements IInComingService {
Set<Long> waybillIdSet = map.keySet();
List<WarehouseWaybillEntity> waybillEntityList = warehouseWaybillClient.findListByWaybillIds(new ArrayList<>(waybillIdSet));
if(CollUtil.isNotEmpty(waybillIdSet)){
List<WarehouseWaybillEntity> waybillEntityList = warehouseWaybillClient.findListByWaybillIds(new ArrayList<>(waybillIdSet));
waybillEntityList.forEach(wb -> {
Integer totalCount = wb.getTotalCount();
Integer stockCount = wb.getStockCount();
openOrderAsyncService.saveLog(waybillEntity.getId(), waybillEntity.getWaybillNo(), "20", "已入库", "运单入库:"+stockCount+"/"+totalCount+",入库类型:【"+IncomingTypeEnum.getValue(incomingType)+"】,入库时间:"+ CommonUtil.dateToStringGeneral(new Date()), AuthUtil.getNickName(), AuthUtil.getUserId(), warehouseId, warehouseName);
});
}
//把waybillEntityList转化成id为key的Map
// Map<Long, WarehouseWaybillEntity> waybillEntityMap = waybillEntityList.stream().collect(Collectors.toMap(WarehouseWaybillEntity::getId, Function.identity()));

4
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/OpenOrderServiceImpl.java

@ -132,11 +132,13 @@ public class OpenOrderServiceImpl implements IOpenOrderService {
return R.fail(405, "暂存单数据不存在");
}
String dealerName = null;
String dealerCode = null;
String brand = null;
Integer totalNum = 0;
for (TrunklineAdvanceEntity advanceEntity : list) {
if (StringUtil.isBlank(dealerName)) {
dealerName = advanceEntity.getDealerName();
dealerCode = advanceEntity.getDealerCode();
}
if (StringUtil.isBlank(brand)) {
brand = advanceEntity.getBrand();
@ -191,7 +193,7 @@ public class OpenOrderServiceImpl implements IOpenOrderService {
//收货单位-----根据三方商场找到对应的clientId
Long clientId = basicdataTripartiteMallClient.getClientIdByNameAndBrand(dealerName, brand);
Long clientId = basicdataTripartiteMallClient.getClientIdByNameAndBrandAndCode(dealerName,StringUtil.isBlank(dealerCode)?"":dealerCode, brand);
BasicdataClientVO basicdataClientEntity = basicdataClientClient.findEntityVoById(clientId);
if (!Objects.isNull(basicdataClientEntity)) {
openOrderVO.setConsigneeClientId(clientId);

2
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineAdvanceDetailServiceImpl.java

@ -294,7 +294,7 @@ public class TrunklineAdvanceDetailServiceImpl extends BaseServiceImpl<Trunkline
public R findOrderDetails(OrderDetailsDTO orderDetailsDTO) {
//判断orderDetailsDTO中的订单号 运单号 包件码 服务号 客户车次号至少有一个有值
if(StringUtil.isBlank(orderDetailsDTO.getOrderCode()) && StringUtil.isBlank(orderDetailsDTO.getWaybillNo()) && !StringUtil.isBlank(orderDetailsDTO.getOrderPackageCode()) && StringUtil.isBlank(orderDetailsDTO.getServiceNumber()) && StringUtil.isBlank(orderDetailsDTO.getTrunklineCarsNo())){
if(StringUtil.isBlank(orderDetailsDTO.getOrderCode()) && StringUtil.isBlank(orderDetailsDTO.getWaybillNo()) && StringUtil.isBlank(orderDetailsDTO.getOrderPackageCode()) && StringUtil.isBlank(orderDetailsDTO.getServiceNumber()) && StringUtil.isBlank(orderDetailsDTO.getTrunklineCarsNo())){
return R.fail("订单号 运单号 包件码 服务号 客户车次号至少有一个有值");
}

1
blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseRetentionRecordServiceImpl.java

@ -197,6 +197,7 @@ public class WarehouseRetentionRecordServiceImpl extends BaseServiceImpl<Warehou
.eq(WarehouseRetentionScanEntity::getOrderId, r.getOrderId())
.eq(WarehouseRetentionScanEntity::getOrderCode, r.getOrderCode())
.eq(WarehouseRetentionScanEntity::getScanType, r.getScanType())
.eq(WarehouseRetentionScanEntity::getLoadingId, r.getLoadingId())
.eq(WarehouseRetentionScanEntity::getCancelRetentionStatus, IsOrNoConstant.no.getValue())
);
//避免重复添加相同的滞留包件数据

Loading…
Cancel
Save