Browse Source

Merge remote-tracking branch 'origin/pre-production'

master
zhenghaoyu 5 months ago
parent
commit
64ef4d175a
  1. 7
      blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/feign/IDistributionReservationClient.java
  2. 9
      blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/dto/LoadCarsDTO.java
  3. 2
      blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/vo/WarehouseWaybillVO.java
  4. 3
      blade-service/logpm-basic/src/main/java/com/logpm/basic/controller/BasicMaterialController.java
  5. 3
      blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/controller/BasicdataWarehouseController.java
  6. 8
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionReservationController.java
  7. 19
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/feign/DistributionReservationClient.java
  8. 7
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryListMapper.java
  9. 10
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryListMapper.xml
  10. 2
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/receiver/WarehouseTrayAllocationListener.java
  11. 9
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionReservationService.java
  12. 97
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java
  13. 59
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionReservationServiceImpl.java
  14. 5
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionSignforServiceImpl.java
  15. 3
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionStockupServiceImpl.java
  16. 13
      blade-service/logpm-patch/src/main/java/com/logpm/patch/jobhandle/DistributionDatarepair.java
  17. 1
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadScanMapper.xml
  18. 122
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineLoadSignOrderMapper.xml
  19. 22
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadServiceImpl.java
  20. 28
      blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseWaybillMapper.xml

7
blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/feign/IDistributionReservationClient.java

@ -95,4 +95,11 @@ public interface IDistributionReservationClient {
@GetMapping(TOP+"/getRetentionMa")
String getRetentionMa();
/**
* 维护预约信息
* @param params
* @return
*/
@GetMapping(TOP+"/maintainReservationInfo")
Boolean maintainReservationInfo(String params);
}

9
blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/dto/LoadCarsDTO.java

@ -215,4 +215,13 @@ public class LoadCarsDTO implements Serializable {
private String createTime;
private String ids;
/**
* 商场联系人
*/
private String mallPerson;
/**
* 商场联系电话
*/
private String mallMobile;
}

2
blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/vo/WarehouseWaybillVO.java

@ -21,6 +21,7 @@ import com.logpm.warehouse.entity.WarehouseWaybillEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;
@ -50,5 +51,6 @@ public class WarehouseWaybillVO extends WarehouseWaybillEntity {
private String productPrice;
private String productVolume;
private String productWeight;
private BigDecimal totalFee;
}

3
blade-service/logpm-basic/src/main/java/com/logpm/basic/controller/BasicMaterialController.java

@ -202,6 +202,9 @@ public class BasicMaterialController extends BladeController {
log.info("物料添加失败!");
return R.fail("添加失败,必填物料信息不完整为空!");
}
checkBasicMaterialEntity(basicMaterial);
return R.status(basicMaterialService.saveOrUpdateOwn(basicMaterial));
}

3
blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/controller/BasicdataWarehouseController.java

@ -227,11 +227,10 @@ public class BasicdataWarehouseController extends BladeController {
List<BasicdataWarehouseEntity> warehouseList = warehouseService.list();
List<BasicdataWarehouseEntity> names = warehouseList.stream().filter(warehouseEntity -> warehouseEntity.getName().equals(warehouseWarehouse.getName())).collect(Collectors.toList());
List<BasicdataWarehouseEntity> codes = warehouseList.stream().filter(warehouseEntity -> warehouseEntity.getCode().equals(warehouseWarehouse.getCode())).collect(Collectors.toList());
List<BasicdataWarehouseEntity> codes = warehouseList.stream().filter(warehouseEntity -> warehouseEntity.getWarehouseCode().equals(warehouseWarehouse.getWarehouseCode())).collect(Collectors.toList());
if(!names.isEmpty()){
throw new CustomerException("仓库名称重复,请重新输入");
}
if(!codes.isEmpty()){
throw new CustomerException("仓库编号重复,请重新输入");
}

8
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionReservationController.java

@ -202,8 +202,12 @@ public class DistributionReservationController extends BladeController {
@ApiOperationSupport(order = 5)
@ApiOperation(value = "修改", notes = "传入distrbutionReservation")
public R update(@Valid @RequestBody DistributionReservationDTO distributionReservationDTO) {
R result = reservationService.updateReservation(distributionReservationDTO);
return result;
try{
R result = reservationService.updateReservation(distributionReservationDTO);
return result;
}catch (Exception e){
return R.fail(e.getMessage());
}
}
/**

19
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/feign/DistributionReservationClient.java

@ -17,6 +17,7 @@
package com.logpm.distribution.feign;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.logpm.distribution.dto.DistributionCancelReservationPackageDTO;
import com.logpm.distribution.entity.DistributionReservationEntity;
import com.logpm.distribution.service.IDistributionReservationService;
@ -27,11 +28,13 @@ import org.springblade.core.mp.support.Condition;
import org.springblade.core.mp.support.Query;
import org.springblade.core.tool.api.R;
import org.springblade.core.tool.utils.Func;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
import springfox.documentation.annotations.ApiIgnore;
import java.util.List;
import java.util.Objects;
/**
* 预约列表 Feign实现类
@ -98,5 +101,21 @@ public class DistributionReservationClient implements IDistributionReservationCl
return reservationService.retentionMa();
}
@Override
@Transactional
public Boolean maintainReservationInfo(String params) {
DistributionReservationEntity one = reservationService.getOne(Wrappers.<DistributionReservationEntity>query().lambda()
.eq(DistributionReservationEntity::getReservationCode, params)
);
if (Objects.isNull(one)){
reservationService.maintenanceReservationInfo(one.getId());
reservationService.maintenanceReservationInfo(one.getId());
return true;
}
return false;
}
}

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

@ -604,4 +604,11 @@ public interface DistributionDeliveryListMapper extends BaseMapper<DistributionD
* @return
*/
Integer selectDeliveryZeroPackagePlanNum(@Param("orderId")Long orderId,@Param("deliveryId") Long deliveryId,@Param("packageId") Long packageId);
/**
* 查询车次的装车数量
* @param deliveryListId
* @return
*/
Integer selectLoadingNum(@Param("deliveryId")Long deliveryListId);
}

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

@ -1817,6 +1817,8 @@
ldr.cancel_reason,
ldr.is_urgent,
ldr.collection_fee,
ldr.receiving_unit,
ldr.mall_name,
ldr.signing_status
FROM
logpm_distribution_signfor AS lds
@ -2710,5 +2712,13 @@
and ldrs.stock_article_status in ('1','3')
AND ldrzp.zero_package_status IN ( '1', '3' )
</select>
<select id="selectLoadingNum" resultType="java.lang.Integer">
SELECT (SELECT IFNULL(SUM(package_nub),0) FROM logpm_distribution_loadscan WHERE delivery_id = #{deliveryId} AND scan_status != 1 AND is_deleted = 0)
+
(SELECT IFNULL(SUM(package_nub),0) FROM logpm_distribution_loadscaninvn WHERE delivery_id = #{deliveryId} AND scan_status != 1 AND is_deleted = 0)
</select>
</mapper>

2
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/receiver/WarehouseTrayAllocationListener.java

@ -16,6 +16,7 @@ import com.logpm.distribution.service.IDistributionStockListService;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springblade.common.constant.broadcast.FanoutConstants;
import org.springblade.common.constant.orderpackage.OrderPackageStockupStatusConstant;
import org.springblade.core.tool.utils.StringUtil;
import org.springframework.amqp.core.ExchangeTypes;
import org.springframework.amqp.rabbit.annotation.Exchange;
@ -989,6 +990,7 @@ public class WarehouseTrayAllocationListener {
updateParcelListEntity.setId(parcelListEntity.getId());
updateParcelListEntity.setGoodsAllocation(allocationName);
updateParcelListEntity.setOrderPackageGroundingStatus("20");
updateParcelListEntity.setOrderPackageStockupStatus(OrderPackageStockupStatusConstant.daibeihuo.getValue());
updateParcelListList.add(updateParcelListEntity);
});
}

9
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionReservationService.java

@ -18,6 +18,7 @@ package com.logpm.distribution.service;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.logpm.basicdata.entity.BasicdataWarehouseEntity;
import com.logpm.distribution.dto.DistributionCancelReservationPackageDTO;
import com.logpm.distribution.dto.DistributionDeliveryAllocationDTO;
import com.logpm.distribution.dto.DistributionReservationDTO;
@ -30,6 +31,7 @@ import org.springblade.common.enums.BizOperationEnums;
import org.springblade.common.model.NodeFanoutMsg;
import org.springblade.common.model.ReservationVO;
import org.springblade.core.mp.base.BaseService;
import org.springblade.core.secure.BladeUser;
import org.springblade.core.tool.api.R;
import java.util.List;
@ -145,6 +147,8 @@ public interface IDistributionReservationService extends BaseService<Distributio
*/
R updateReservation(DistributionReservationDTO distributionReservationDTO);
void compareReservation(DistributionReservationEntity reservationEntity, DistributionReservationEntity oldReservation, BladeUser user, BasicdataWarehouseEntity myCurrentWarehouse);
/**
* 商配配送计划添加
* @param allocationDTO
@ -218,6 +222,11 @@ public interface IDistributionReservationService extends BaseService<Distributio
@NotNull
ReservationVO getReservationVO(DistributionReservationEntity reservationEntity);
void handleCreatedReservationPlanLog(DistributionReservationEntity reservationEntity, BladeUser user, BasicdataWarehouseEntity warehouse);
void handleCancelReservationPlanLog(DistributionReservationEntity reservationEntity, BladeUser user, BasicdataWarehouseEntity warehouse, String cancelReason);
/**
* 自提查询库存数量
* @param reservationId

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

@ -2874,6 +2874,7 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
//查询出该配送任务下的客户,并将这些客户根据运单号进行分组
List<DistributionReservationEntity> reservationEntityList = distributionReservationMapper.getDeliveryReservation(deliveryListEntity.getId());
Map<String, List<DistributionReservationEntity>> oldClient = reservationEntityList.stream().collect(Collectors.groupingBy(DistributionReservationEntity::getReceivingUnit));
String oldReservationCode = reservationEntityList.stream().map(DistributionReservationEntity::getReservationCode).collect(Collectors.joining(","));
//订单总数量
AtomicInteger orderTotal = new AtomicInteger();
//配送任务仓库名称
@ -2885,6 +2886,7 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
Date reservationDate = new Date();
List<DistributionReservationPackageEntity> allPackageList = new ArrayList<>();
List<DistributionReservationZeroPackageEntity> allZeroPackageList = new ArrayList<>();
StringBuilder saa = new StringBuilder();
newClient.forEach((k, v) -> {
HashSet<String> orderNumber = new HashSet<>();
//运单号
@ -2923,6 +2925,8 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
reservationEntity.setStockupStatus(ReservationStockupStatusConstant.daibeihuo.getValue());
reservationEntity.setWarehouseId(myCurrentWarehouse.getId());
reservationEntity.setReservationCode(reservationMa());
reservationEntity.setReceivingUnit(k);
reservationEntity.setMallName(k);
BladeUser user = AuthUtil.getUser();
reservationEntity.setCreateUser(user.getUserId());
reservationEntity.setDeliveryWay(reservation.getDeliveryWay());
@ -2958,6 +2962,7 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
reservationEntity.setStoreId(storeIds.get(0));
}
reservationEntity.setStatus(1);
saa.append(reservationEntity.getReservationCode()).append(",");
distributionReservationMapper.insert(reservationEntity);
//新增一个客户
v.forEach(s -> {
@ -3177,6 +3182,7 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
reservationEntity.setStoreName(String.join(",", storeName));
//预约添加订单数量
reservationEntity.setReservationNum(packageTotal.get());
distributionReservationService.handleCreatedReservationPlanLog(reservationEntity,AuthUtil.getUser(),myCurrentWarehouse);
distributionReservationMapper.updateById(reservationEntity);
//推送广播
//进行节点推送
@ -3201,10 +3207,12 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
} else {
//根据配送计划和运单号查询出该预约
DistributionReservationEntity reservationEntity = baseMapper.selectReservationByDeliveryListIdAndCustomerUnit(deliveryListEntityId, k);
DistributionReservationEntity oldReservation = BeanUtil.copy(reservationEntity, DistributionReservationEntity.class);
DistributionSignforEntity signforEntity = distributionSignforService.getOne(Wrappers.<DistributionSignforEntity>query().lambda()
.eq(DistributionSignforEntity::getReservationId, reservationEntity.getId())
.eq(DistributionSignforEntity::getDeliveryId, deliveryListEntity.getId())
);
saa.append(reservationEntity.getReservationCode()).append(",");
//查询出该预约下的订单信息
List<DistributionReservationStockarticleEntity> reservationStockarticleEntityList = distributionReservationStockarticleMapper.selectList(Wrappers.<DistributionReservationStockarticleEntity>query().lambda().eq(DistributionReservationStockarticleEntity::getReservationId, reservationEntity.getId()).ne(DistributionReservationStockarticleEntity::getStockArticleStatus, ReservationOrderStatusConstant.quxiao.getValue()));
Map<Long, List<DistributionReservationStockarticleEntity>> oldOrder = reservationStockarticleEntityList.stream().collect(Collectors.groupingBy(DistributionReservationStockarticleEntity::getStockArticleId));
@ -3672,6 +3680,7 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
reservationEntity.setStoreName(String.join(",", storeName));
//预约添加订单数量
reservationEntity.setReservationNum(packageTotal.get());
distributionReservationService.compareReservation(reservationEntity,oldReservation,AuthUtil.getUser(),myCurrentWarehouse);
distributionReservationMapper.updateById(reservationEntity);
deliveryPackageTotal.getAndAdd(reservationEntity.getReservationNum());
}
@ -3682,6 +3691,7 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
DistributionReservationEntity reservationEntity = baseMapper.selectReservationByDeliveryListIdAndCustomerUnit(deliveryListEntity.getId(), f);
reservationEntity.setReservationStatus(ReservationStatusConstant.yiquexiao.getValue());
distributionReservationMapper.updateById(reservationEntity);
distributionReservationService.handleCancelReservationPlanLog(reservationEntity,AuthUtil.getUser(),myCurrentWarehouse,"商配取消所有订单");
//这里还需要将减少的预约单下的所有订单、包件进行取消状态
List<DistributionReservationStockarticleEntity> entities = distributionReservationStockarticleMapper.selectList(Wrappers.<DistributionReservationStockarticleEntity>query().lambda().ne(DistributionReservationStockarticleEntity::getStockArticleStatus, "2").eq(DistributionReservationStockarticleEntity::getReservationId, reservationEntity.getId()));
entities.forEach(e -> {
@ -3810,7 +3820,8 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
//对配送进行更改
this.updateById(deliveryListEntity);
//对修改计划下的所有包件进行维护
//进行配送日志记录
handleUpdateDistributionLog(deliveryListEntity,oldReservationCode,saa.deleteCharAt(saa.lastIndexOf(",")).toString(),myCurrentWarehouse,AuthUtil.getUser());
// 作业节点推送
// distributionNodeWorkService.planDelivery(deliveryListEntity, AuthUtil.getUser(), BizOperationEnums.MODIFY);
@ -4211,25 +4222,41 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
distributionAsyncService.recordsReservationDeliveryLog(newReservationEntities, myCurrentWarehouse, AuthUtil.getUser(), deliveryListEntity, WorkNodeEnums.PLAN_DISTRIBUTION.getCode(), content);
}
List<DistributionReservationEntity> oldReservationEntities = new ArrayList<>();
oldReservation.forEach((m, n) -> {
//这里就是取消的预约单,进行状态回退
DistributionReservationEntity reservationEntity = n.get(0);
reservationEntity.setReservationStatus(ReservationStatusConstant.yiqueren.getValue());
reservationEntity.setStockupStatus(ReservationStockupStatusConstant.weibeihuo.getValue());
distributionReservationMapper.updateById(reservationEntity);
//删除配送预约中间表信息
distributionSignforMapper.deleteByReservationAndDeliveryId(reservationEntity.getId(), deliveryListEntity.getId());
//删除Redis中的reservationCode
bladeRedis.del(user.getTenantId() + ":" + ModuleNameConstant.APPLICATION_DISTRIBUTION_NAME + ":reservationLock" + reservationEntity.getReservationCode());
//取消备货中间表
distributionStockupInfoService.update(Wrappers.<DistributionStockupInfoEntity>update().lambda()
.eq(DistributionStockupInfoEntity::getReservationId, reservationEntity.getId())
.set(DistributionStockupInfoEntity::getStockStatus, "4")
);
oldReservationEntities.add(reservationEntity);
oldIds.add(reservationEntity.getId());
});
if (!oldReservation.isEmpty()) {
oldReservation.forEach((m, n) -> {
//这里就是取消的预约单,进行状态回退
DistributionReservationEntity reservationEntity = n.get(0);
reservationEntity.setReservationStatus(ReservationStatusConstant.yiqueren.getValue());
reservationEntity.setStockupStatus(ReservationStockupStatusConstant.weibeihuo.getValue());
distributionReservationMapper.updateById(reservationEntity);
//删除配送预约中间表信息
distributionSignforMapper.deleteByReservationAndDeliveryId(reservationEntity.getId(), deliveryListEntity.getId());
//删除Redis中的reservationCode
bladeRedis.del(user.getTenantId() + ":" + ModuleNameConstant.APPLICATION_DISTRIBUTION_NAME + ":reservationLock" + reservationEntity.getReservationCode());
//取消备货中间表
distributionStockupInfoService.update(Wrappers.<DistributionStockupInfoEntity>update().lambda()
.eq(DistributionStockupInfoEntity::getReservationId, reservationEntity.getId())
.set(DistributionStockupInfoEntity::getStockStatus, "4")
);
oldReservationEntities.add(reservationEntity);
oldIds.add(reservationEntity.getId());
});
}
if (!oldIds.isEmpty()) {
//查询这些计划是否存在有装车数
long packageCount = distributionLoadscanService.count(Wrappers.<DistributionLoadscanEntity>query().lambda()
.in(DistributionLoadscanEntity::getReservationId, oldIds)
.ne(DistributionLoadscanEntity::getScanStatus, LoadingStatusConstant.quxiao.getValue())
);
long inventorycount = distributionLoadscaninvnService.count(Wrappers.<DistributionLoadscaninvnEntity>query().lambda()
.in(DistributionLoadscaninvnEntity::getReservationId, oldIds)
.ne(DistributionLoadscaninvnEntity::getScanStatus, LoadingStatusConstant.quxiao.getValue())
);
if ((packageCount + inventorycount) > 0) {
String s = oldReservationEntities.stream().filter(f -> oldIds.contains(f.getId())).map(DistributionReservationEntity::getReservationCode).collect(Collectors.joining(","));
throw new CustomerException(s+"存在装车或签收数据,无法移除");
}
String content = "包件在" + myCurrentWarehouse.getName() + "由" + AuthUtil.getUser().getNickName() + "取消配车计划,操作方式:车次移除预约计划,车次号:" + deliveryListEntity.getTrainNumber();
distributionAsyncService.recordsReservationDeliveryLog(oldReservationEntities, myCurrentWarehouse, AuthUtil.getUser(), deliveryListEntity, WorkNodeEnums.CANCEL_DISTRIBUTION.getCode(), content);
}
@ -4385,6 +4412,23 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
}
}
private void handleUpdateDistributionLog(DistributionDeliveryListEntity deliveryListEntity, String oldReservationCode, String newReservationCode, BasicdataWarehouseEntity myCurrentWarehouse,BladeUser user) {
String distributionContent = user.getNickName() + "在" + myCurrentWarehouse.getName()
+ "修改市配配送计划;车次号:" + deliveryListEntity.getTrainNumber()
+ "预约编号:[" +oldReservationCode + "]变更为-->[" + newReservationCode + "]" + "当前总件数:" + (deliveryListEntity.getDeliveryNumber());
DistributionPlanLogEntity distributionPlanLogEntity = new DistributionPlanLogEntity();
distributionPlanLogEntity.setContent(distributionContent);
distributionPlanLogEntity.setRefId(deliveryListEntity.getId());
distributionPlanLogEntity.setRefCode(deliveryListEntity.getTrainNumber());
distributionPlanLogEntity.setWarehouseId(myCurrentWarehouse.getId());
distributionPlanLogEntity.setWarehouseName(myCurrentWarehouse.getName());
distributionPlanLogEntity.setOperator(user.getNickName());
distributionPlanLogEntity.setType(3);
distributionPlanLogService.save(distributionPlanLogEntity);
}
@Override
public IPage<DistributionParcelListVO> getPackageListByDeliverylistId(IPage<DistributionParcelListEntity> page, Map<String, Object> distributionDeliveryInfoDTO) throws ParseException {
if (Func.isEmpty(distributionDeliveryInfoDTO.get("deliveryId"))) {
@ -5190,9 +5234,16 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
if (Objects.isNull(myCurrentWarehouse)) {
return R.fail(403, "未授权!!!");
}
if (Objects.isNull(distributionDeliveryListDTO.get("deliveryListId"))) {
return R.fail("deliveryListId参数缺失");
}
String deliveryListId = (String) distributionDeliveryListDTO.get("deliveryListId");
DistributionDeliveryListEntity deliveryListEntity = this.getById(deliveryListId);
Integer loadingNum = baseMapper.selectLoadingNum(Long.parseLong(deliveryListId));
if (loadingNum > 0){
return R.fail("存在装车或签收数据无法进行配送取消!!!");
}
List<DistributionSignforEntity> distributionSignforEntities = distributionSignforServicer.getBaseMapper().selectList(Wrappers.<DistributionSignforEntity>query().lambda().eq(DistributionSignforEntity::getDeliveryId, deliveryListEntity.getId()));
BladeUser user = AuthUtil.getUser();
List<DistributionReservationEntity> reservationList = new ArrayList<>();
@ -5213,7 +5264,6 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
List<DistributionReservationPackageEntity> reservationPackageEntityList = distributionReservationPackageMapper.selectList(Wrappers.<DistributionReservationPackageEntity>query().lambda().eq(DistributionReservationPackageEntity::getReservationId, reservationEntity.getId()).eq(DistributionReservationPackageEntity::getStockArticleId, o.getStockArticleId()).ne(DistributionReservationPackageEntity::getPacketBarStatus, ReservationPackageStatusConstant.quxiao.getValue()));
reservationPackageEntityList.forEach(p -> {
DistributionParcelListEntity parcelListEntity = distributionParcelListService.getById(p.getParceListId());
//TODO 这里取消应该有一个取消的任务
parcelListEntity.setOrderPackageLoadingStatus(OrderPackageLoadingStatusConstant.weizhuancghe.getValue());
parcelListEntity.setOrderPackageStatus(OrderPackageStatusConstant.yiruku.getValue());
distributionParcelListService.updateById(parcelListEntity);
@ -9031,7 +9081,8 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
warehouseUpdownTypeClient.downPackageOrDelTray(parcelListEntity.getOrderPackageCode(), myCurrentWarehouse.getId(), "扫描装车进行下架、解托");
}
//检查是否存在有装车异常,进行处理
distributionSignforService.maintenanceSignfor(reservationId);
// distributionSignforService.maintenanceSignfor(reservationId);
distributionSignforMapper.autoDpdateSignfor(reservationId);
String content = "包件在" + myCurrentWarehouse.getName() + "由" + loadscanEntity.getScanUser() + "扫描装车,配送车次号:" + deliveryListEntity.getTrainNumber() + "预约任务号:" + reservationEntity.getReservationCode();
JSONObject packageLog = handleLogJSONObject(myCurrentWarehouse, AuthUtil.getUser(), parcelListEntity.getOrderPackageCode(), content, WorkNodeEnums.DISTRIBUTION_LOADING.getCode());
packageLogs.add(packageLog);
@ -9200,7 +9251,9 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
} else {
log.error("#######################查询预约订单信息错误,reservationID:{}", distrilbutionloadingscanDTO.getReservationId());
}
distributionSignforService.maintenanceSignfor(distrilbutionloadingscanDTO.getReservationId());
// distributionSignforService.maintenanceSignfor(distrilbutionloadingscanDTO.getReservationId());
distributionSignforMapper.autoDpdateSignfor(distrilbutionloadingscanDTO.getReservationId());
}
break;
case 3:

59
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionReservationServiceImpl.java

@ -145,7 +145,6 @@ import java.util.Objects;
import java.util.Set;
import java.util.concurrent.atomic.AtomicInteger;
import java.util.concurrent.atomic.AtomicReference;
import java.util.function.Function;
import java.util.stream.Collectors;
/**
@ -1546,6 +1545,21 @@ public class DistributionReservationServiceImpl extends BaseServiceImpl<Distribu
distributionPlanLogService.save(distributionPlanLogEntity);
}
private void handleCreatedDistributionLog(DistributionDeliveryListEntity distributionDeliveryListEntity, BasicdataWarehouseEntity myCurrentWarehouse, BladeUser user,String reservationCodes) {
String distributionContent = user.getNickName() + "在" + myCurrentWarehouse.getName()
+ "创建市配配送计划;车次号:" + distributionDeliveryListEntity.getTrainNumber()
+ "预约编号:[" + reservationCodes + "],总件数:" + distributionDeliveryListEntity.getDeliveryNumber();
DistributionPlanLogEntity distributionPlanLogEntity = new DistributionPlanLogEntity();
distributionPlanLogEntity.setContent(distributionContent);
distributionPlanLogEntity.setRefId(distributionDeliveryListEntity.getId());
distributionPlanLogEntity.setRefCode(distributionDeliveryListEntity.getTrainNumber());
distributionPlanLogEntity.setWarehouseId(myCurrentWarehouse.getId());
distributionPlanLogEntity.setWarehouseName(myCurrentWarehouse.getName());
distributionPlanLogEntity.setOperator(user.getNickName());
distributionPlanLogEntity.setType(3);
distributionPlanLogService.save(distributionPlanLogEntity);
}
@Override
@ -2212,7 +2226,8 @@ public class DistributionReservationServiceImpl extends BaseServiceImpl<Distribu
* @param user
* @param myCurrentWarehouse
*/
private void compareReservation(DistributionReservationEntity reservationEntity, DistributionReservationEntity oldReservation, BladeUser user, BasicdataWarehouseEntity myCurrentWarehouse) {
@Override
public void compareReservation(DistributionReservationEntity reservationEntity, DistributionReservationEntity oldReservation, BladeUser user, BasicdataWarehouseEntity myCurrentWarehouse) {
Integer newPlanNum = reservationEntity.getReservationNum() + reservationEntity.getReservationStockListNum();
Integer oldPlanNum = oldReservation.getReservationNum() + oldReservation.getReservationStockListNum();
String planContent = user.getNickName() + "在" + myCurrentWarehouse.getName()
@ -2301,12 +2316,14 @@ public class DistributionReservationServiceImpl extends BaseServiceImpl<Distribu
//收货单位
Date date = new Date();
List<JSONObject> aaa = new ArrayList<>();
StringBuffer saa = new StringBuffer();
mallClient.forEach((k, v) -> {
clientTotal.getAndIncrement();
DistributionReservationDTO reservation = allocationDTO.getReservation();
DistributionReservationEntity reservationEntity = Func.copy(reservation, DistributionReservationEntity.class);
reservationEntity.setWaybillNo(k);
reservationEntity.setReservationCode(reservationMa());
reservationEntity.setReceivingUnit(k);
reservationEntity.setMallName(k);
reservationEntity.setWarehouseId(myCurrentWarehouse.getId());
reservationEntity.setReservationStatus(ReservationStatusConstant.daipeisong.getValue());
//这里采用订单上的收货信息
@ -2540,6 +2557,7 @@ public class DistributionReservationServiceImpl extends BaseServiceImpl<Distribu
reservationStockarticleEntity.setStockArticleCode(s.getStockArticleCode());
reservationStockarticleEntity.setStockArticleId(s.getId());
reservationStockarticleEntity.setIsHaveData(s.getIsHaveData());
//进行日志记录
distributionReservationStockarticleService.save(reservationStockarticleEntity);
packageTotal.getAndAdd(reservationStockarticleEntity.getReservationNum());
orderTotal.getAndIncrement();
@ -2609,6 +2627,9 @@ public class DistributionReservationServiceImpl extends BaseServiceImpl<Distribu
reservationEntity.setSigningStatus(ReservationSigningStatusConstant.daiqianshou.getValue());
//预约添加订单数量
reservationEntity.setReservationNum(packageTotal.get());
reservationEntity.setReservationStockListNum(0);
saa.append(reservationEntity.getReservationCode()).append(",");
handleCreatedReservationPlanLog(reservationEntity,user,myCurrentWarehouse);
this.updateById(reservationEntity);
deliveryPackageTotal.getAndAdd(reservationEntity.getReservationNum());
if (Func.isNotEmpty(reservationEntity.getReservationStockListNum())) {
@ -2718,6 +2739,8 @@ public class DistributionReservationServiceImpl extends BaseServiceImpl<Distribu
distributionDeliveryListEntity.setIsStart(DeliveryStartStatusConstant.daifache.getValue());
distributionDeliveryListEntity.setIsAll(allocationDTO.getIsAll());
distributionDeliveryListService.updateById(distributionDeliveryListEntity);
handleCreatedDistributionLog(distributionDeliveryListEntity, myCurrentWarehouse, user,saa.deleteCharAt(saa.lastIndexOf(",")).toString());
//推送信息至运单追中日志
if (!aaa.isEmpty()) {
trunklinePackageTrackLogClient.addPackageTrackLog(aaa);
@ -2907,9 +2930,8 @@ public class DistributionReservationServiceImpl extends BaseServiceImpl<Distribu
}
}
handleCancelReservationPlanLog(reservationEntity,AuthUtil.getUser(),myCurrentWarehouse,reservationDTO.getCancelReason());
NodeFanoutMsg<ReservationVO> nodeFanoutMsg =buildNodeFanoutMsgByReservationByCancel(reservationEntity);
distributionNodeWorkService.cancelReservation(nodeFanoutMsg,AuthUtil.getUser());
@ -3673,7 +3695,8 @@ public class DistributionReservationServiceImpl extends BaseServiceImpl<Distribu
return reservationVO;
}
private void handleCreatedReservationPlanLog(DistributionReservationEntity reservationEntity, BladeUser user, BasicdataWarehouseEntity warehouse) {
@Override
public void handleCreatedReservationPlanLog(DistributionReservationEntity reservationEntity, BladeUser user, BasicdataWarehouseEntity warehouse) {
String planContent = user.getNickName() + "在" + warehouse.getName()
+ "创建预约计划;预约计划编号:" + reservationEntity.getReservationCode()
+ ";收货单位:" + reservationEntity.getReceivingUnit()
@ -3681,7 +3704,29 @@ public class DistributionReservationServiceImpl extends BaseServiceImpl<Distribu
+ ",联系电话:" + reservationEntity.getDeliveryPhone()
+ ",收货地址:" + reservationEntity.getDeliveryAddress()
+ ",计划件数:" + (reservationEntity.getReservationNum() + reservationEntity.getReservationStockListNum())
+ ",配送类型:" + (reservationEntity.getDeliveryWay().equals(DistributionTypeConstant.shangpei.getValue()) ? "商配" : "市配");
+ ",配送类型:" + (reservationEntity.getDeliveryType().equals(DistributionTypeConstant.shangpei.getValue()) ? "商配" : "市配");
DistributionPlanLogEntity distributionPlanLogEntity = new DistributionPlanLogEntity();
distributionPlanLogEntity.setContent(planContent);
distributionPlanLogEntity.setRefId(reservationEntity.getId());
distributionPlanLogEntity.setRefCode(reservationEntity.getReservationCode());
distributionPlanLogEntity.setWarehouseId(warehouse.getId());
distributionPlanLogEntity.setWarehouseName(warehouse.getName());
distributionPlanLogEntity.setOperator(user.getNickName());
distributionPlanLogEntity.setType(1);
distributionPlanLogService.save(distributionPlanLogEntity);
}
@Override
public void handleCancelReservationPlanLog(DistributionReservationEntity reservationEntity, BladeUser user, BasicdataWarehouseEntity warehouse, String cancelReason) {
String planContent = user.getNickName() + "在" + warehouse.getName()
+ "取消预约计划;预约计划编号:" + reservationEntity.getReservationCode()
+ ";收货单位:" + reservationEntity.getReceivingUnit()
+ ",收货人:" + reservationEntity.getConsignee()
+ ",联系电话:" + reservationEntity.getDeliveryPhone()
+ ",收货地址:" + reservationEntity.getDeliveryAddress()
+ ",计划件数:" + (reservationEntity.getReservationNum() + reservationEntity.getReservationStockListNum())
+ ",配送类型:" + (reservationEntity.getDeliveryType().equals(DistributionTypeConstant.shangpei.getValue()) ? "商配" : "市配")
+ ",取消原因:" + cancelReason;
DistributionPlanLogEntity distributionPlanLogEntity = new DistributionPlanLogEntity();
distributionPlanLogEntity.setContent(planContent);
distributionPlanLogEntity.setRefId(reservationEntity.getId());

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

@ -741,6 +741,11 @@ public class DistributionSignforServiceImpl extends BaseServiceImpl<Distribution
if (!flag) {
if (Integer.parseInt(IsOrNoConstant.yes.getValue()) == isAutoRelease) {
distributionAsyncService.releaseSource(distributionSignfor.getReservationId(), myCurrentWarehouse, AuthUtil.getUser(), deliveryListEntity.getTrainNumber());
distributionReservationService.maintenanceReservationNum(distributionSignfor.getReservationId());
distributionReservationService.maintenanceReservationInfo(distributionSignfor.getReservationId());
} else {
return R.fail("请手动调整计划");
}
}
//查看是否需要进行安装

3
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionStockupServiceImpl.java

@ -402,7 +402,8 @@ public class DistributionStockupServiceImpl extends BaseServiceImpl<Distribution
// vo.setPlanNum(nu.get());
// }
//查询以扫数量
List<DistributionStockEntity> list = distributionStockService.list(Wrappers.<DistributionStockEntity>query().lambda().eq(DistributionStockEntity::getStockupId, vo.getId()));
List<DistributionStockEntity> list = distributionStockService.list(Wrappers.<DistributionStockEntity>query().lambda()
.eq(DistributionStockEntity::getStockupId, vo.getId()));
if (list.isEmpty()) {
vo.setRealNum(0);
} else {

13
blade-service/logpm-patch/src/main/java/com/logpm/patch/jobhandle/DistributionDatarepair.java

@ -318,4 +318,17 @@ public class DistributionDatarepair {
}
/**
* 推送自提签收信息至工厂
*
* @return
*/
@XxlJob("sendFactorySignforInfo")
public ReturnT<String> maintainReservationInfo(String params) {
// 得到当前仓库所有的签收任务
Boolean b = distributionReservationClient.maintainReservationInfo(params);
return ReturnT.SUCCESS;
}
}

1
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadScanMapper.xml

@ -1161,6 +1161,7 @@
from logpm_trunkline_cars_load_scan ltcls
left join logpm_trunkline_advance_detail ltad on ltad.order_package_code = ltcls.scan_code
where ltcls.load_id = #{loadId}
group by ltcls.scan_code
</select>
<select id="findUnloadNoDataList" resultType="com.logpm.trunkline.entity.TrunklineCarsLoadScanEntity">

122
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineLoadSignOrderMapper.xml

@ -9,7 +9,7 @@
and ltlso.warehouse_id = #{warehouseId}
</select>
<delete id="deleteListBySignStatusAndLoadIdAndWarehouseId" >
<delete id="deleteListBySignStatusAndLoadIdAndWarehouseId">
delete from logpm_trunkline_load_sign_order
where load_id = #{loadId}
and warehouse_id = #{warehouseId}
@ -39,7 +39,8 @@
left join logpm_trunkline_cars_load ltcl on ltcl.id = ltlso.load_id
LEFT JOIN logpm_trunkline_cars_order ltco on ltco.sign_order_id = ltlso.id
<where>
and (ltlso.warehouse_id = #{param.warehouseId} or ltlso.final_node_id = #{param.warehouseId} or ltlso.driver_user_id = #{param.userId} or ltlso.assistant_user_id = #{param.userId})
and (ltlso.warehouse_id = #{param.warehouseId} or ltlso.final_node_id = #{param.warehouseId} or
ltlso.driver_user_id = #{param.userId} or ltlso.assistant_user_id = #{param.userId})
<if test="param.loadId != null">
and ltlso.load_id = #{param.loadId}
@ -60,57 +61,88 @@
<select id="finaSignOrderDetail" resultType="com.logpm.trunkline.vo.TrunklineLoadSignOrderVO">
select ltlso.id id,
ltlso.load_id loadId,
ltlso.warehouse_id warehouseId,
ltlso.plan_num planNum,
ltlso.load_sign_code loadSignCode,
ltlso.sign_num signNum,
ltcl.driver_name driverName,
ltcl.driver_mobile driverMobile,
ltcl.car_number carNumber,
ltcl.cars_line_name carsLineName,
ltcl.cars_no carsNo,
SUM(ltco.real_num) AS loadingNum
ltlso.load_id loadId,
ltlso.warehouse_id warehouseId,
ltlso.plan_num planNum,
ltlso.load_sign_code loadSignCode,
ltlso.sign_num signNum,
ltcl.driver_name driverName,
ltcl.driver_mobile driverMobile,
ltcl.car_number carNumber,
ltcl.cars_line_name carsLineName,
ltcl.cars_no carsNo,
SUM(ltco.real_num) AS loadingNum
from logpm_trunkline_load_sign_order ltlso
left join logpm_trunkline_cars_load ltcl on ltcl.id = ltlso.load_id
LEFT JOIN logpm_trunkline_cars_order ltco on ltco.sign_order_id = ltlso.id
left join logpm_trunkline_cars_load ltcl on ltcl.id = ltlso.load_id
LEFT JOIN logpm_trunkline_cars_order ltco on ltco.sign_order_id = ltlso.id
where ltlso.id = #{signOrderId}
GROUP BY ltlso.id
</select>
<select id="findSignOrderDetailList" resultType="com.logpm.trunkline.vo.SignOrderDetailVO">
select ltcls.id loadScanId,
ltcls.waybill_no waybillNo,
ltcls.order_code orderCode,
ltcls.warehouse_name warehouseName,
ldsa.mall_name mallName,
ldsa.consignee_person mallPerson,
ldsa.consignee_mobile mallMobile,
ldsa.consignee_address mallAddress,
ltcls.scan_code scanCode,
ltcls.scan_status scanStatus,
ltcls.type type,
ltcls.num num,
ltcls.unload_num unloadNum,
ltcls.unload_num signNum,
ltcls.remark remak,
ltcls.load_code carsNo,
ltcls.sign_user_name signUserName,
ltcls.sign_time signTime,
ltcls.unload_time unloadTime,
ltco.sign_order_id signOrderId
ltcls.waybill_no waybillNo,
ltcls.order_code orderCode,
ltcls.warehouse_name warehouseName,
ldsa.mall_name mallName,
ldsa.consignee_person mallPerson,
ldsa.consignee_mobile mallMobile,
ldsa.consignee_address mallAddress,
ltcls.scan_code scanCode,
ltcls.scan_status scanStatus,
ltcls.type type,
ltcls.num num,
ltcls.unload_num unloadNum,
ltcls.unload_num signNum,
ltcls.remark remak,
ltcls.load_code carsNo,
ltcls.sign_user_name signUserName,
ltcls.sign_time signTime,
ltcls.unload_time unloadTime,
ltco.sign_order_id signOrderId
from logpm_trunkline_cars_order ltco
left join logpm_trunkline_cars_load_scan ltcls on ltco.load_id = ltcls.load_id and ltco.node_id = ltcls.warehouse_id and ltcls.order_code = ltco.order_code and ltcls.waybill_no = ltco.waybill_no
left join logpm_distribution_stock_article ldsa on ldsa.order_code = ltco.order_code and ldsa.warehouse_id = ltco.node_id
left join logpm_trunkline_cars_load_scan ltcls on ltco.load_id = ltcls.load_id and ltco.node_id =
ltcls.warehouse_id and ltcls.order_code = ltco.order_code and ltcls.waybill_no = ltco.waybill_no
left join logpm_distribution_stock_article ldsa on ldsa.order_code = ltco.order_code and ldsa.warehouse_id =
ltco.node_id
where ltco.sign_order_id = #{param.signOrderId}
and ltco.is_customer = '1'
and ltcls.id is not null
<if test="param.mallName != null and param.mallName !='' ">
and ldsa.mall_name like concat('%',#{param.mallName},'%')
</if>
<if test="param.scanCode != null and param.scanCode != '' ">
and ltcls.scan_code = #{param.scanCode}
</if>
<if test="param.waybillNo != null and param.waybillNo != '' ">
and ltcls.waybill_no = #{param.waybillNo}
</if>
<if test="param.orderCode != null and param.orderCode != '' ">
and ltco.order_code = #{param.orderCode}
</if>
<if test="param.carsNo != null and param.carsNo != '' ">
and ltcls.load_code = #{param.carsNo}
</if>
<if test="param.mallPerson != null and param.mallPerson != '' ">
and ldsa.consignee_person = #{param.mallPerson}
</if>
<if test="param.mallMobile != null and param.mallMobile != '' ">
and ldsa.consignee_mobile = #{param.mallMobile}
</if>
<if test="param.scanStatus != null ">
and ltcls.scan_status = #{param.scanStatus}
</if>
<if test="param.type != null ">
and ltcls.type = #{param.type}
</if>
</select>
<update id="updateBelongToWarehouse">
update logpm_trunkline_load_sign_order
set belong_to_warehouse_id = #{warehouseId},
belong_to_warehouse_name = #{warehouseName}
belong_to_warehouse_name = #{warehouseName}
where id = #{signOrderId}
</update>
@ -138,17 +170,17 @@
from logpm_trunkline_load_sign_order ltlso
left join logpm_trunkline_cars_load ltcl on ltcl.id = ltlso.load_id
LEFT JOIN logpm_trunkline_cars_order ltco on ltco.sign_order_id = ltlso.id
left join logpm_warehouse_warehouse lww on lww.id = ltlso.warehouse_id
left join logpm_warehouse_warehouse lww on lww.id = ltlso.warehouse_id
<where>
and (ltlso.warehouse_id in
<foreach collection="param.warehouseIds" item="item" open="(" separator="," close=")">
#{item}
</foreach>
<foreach collection="param.warehouseIds" item="item" open="(" separator="," close=")">
#{item}
</foreach>
or ltlso.final_node_id in
<foreach collection="param.warehouseIds" item="item" open="(" separator="," close=")">
#{item}
</foreach>)
<foreach collection="param.warehouseIds" item="item" open="(" separator="," close=")">
#{item}
</foreach>)
<if test="param.loadId != null">
and ltlso.load_id = #{param.loadId}
@ -171,7 +203,7 @@
</select>
<delete id="deleteListBySignOrderIds" >
<delete id="deleteListBySignOrderIds">
delete from logpm_trunkline_load_sign_order
where id in
<foreach collection="delSignOrderList" item="signOrderId" open="(" separator="," close=")">

22
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadServiceImpl.java

@ -4851,6 +4851,8 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
resulOrderList.add(carsLoadOrderInfoVO);
});
}else{
resulOrderList.addAll(carsLoadOrderInfoVOList);
}
TrunklineCostShareRecordEntity costShareRecordEntity = trunklineCostShareRecordService.findTotalUnloadNumByLoadAndWaybillNo(loadId, waybillNo);
@ -7331,6 +7333,14 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
carsLoadScanEntity.setSignUserName(AuthUtil.getNickName());
carsLoadScanEntity.setSignOrderId(signOrderId);
carsLoadScanEntity.setUnloadTime(date);
carsLoadScanEntity.setCustomerName(distributionStockArticle.getCustomerName());
carsLoadScanEntity.setCustomerTelephone(distributionStockArticle.getCustomerTelephone());
carsLoadScanEntity.setCustomerAddress(distributionStockArticle.getCustomerAddress());
carsLoadScanEntity.setFirsts(parcelListEntity.getFirsts());
carsLoadScanEntity.setSenconds(parcelListEntity.getSecond());
carsLoadScanEntity.setThirds(parcelListEntity.getThirdProduct());
carsLoadScanEntity.setMaterialCode(parcelListEntity.getMaterialCode());
carsLoadScanEntity.setMaterialName(parcelListEntity.getMaterialName());
carsLoadScanEntity.setRemark("未入库签收");
trunklineCarsLoadScanService.save(carsLoadScanEntity);
Long loadScanId = carsLoadScanEntity.getId();
@ -7400,6 +7410,14 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
carsLoadScanEntity.setSignUserName(AuthUtil.getNickName());
carsLoadScanEntity.setSignOrderId(signOrderId);
carsLoadScanEntity.setUnloadTime(date);
carsLoadScanEntity.setCustomerName(stockArticleEntity.getCustomerName());
carsLoadScanEntity.setCustomerTelephone(stockArticleEntity.getCustomerTelephone());
carsLoadScanEntity.setCustomerAddress(stockArticleEntity.getCustomerAddress());
carsLoadScanEntity.setFirsts(parcelListEntity.getFirsts());
carsLoadScanEntity.setSenconds(parcelListEntity.getSecond());
carsLoadScanEntity.setThirds(parcelListEntity.getThirdProduct());
carsLoadScanEntity.setMaterialCode(parcelListEntity.getMaterialCode());
carsLoadScanEntity.setMaterialName(parcelListEntity.getMaterialName());
carsLoadScanEntity.setRemark("有数据异常签收");
trunklineCarsLoadScanService.save(carsLoadScanEntity);
Long loadScanId = carsLoadScanEntity.getId();
@ -8185,8 +8203,8 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
}
loadingMainList.addAll(unloadMainList);
//把loadingMainList通过waybillNo进行排序
loadingMainList.sort(Comparator.comparing(LoadingListMainVO::getWaybillNo));
// //把loadingMainList通过waybillNo进行排序
// loadingMainList.sort(Comparator.comparing(LoadingListMainVO::getWaybillNo));
trunklineCarsLoadLoadingListVO.setMainList(loadingMainList);
trunklineCarsLoadLoadingListVO.setCarsNoBase64(QRCodeUtil.getEmpAutograph(QRCodeUtil.createCodeToFileType(carsNo)));

28
blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseWaybillMapper.xml

@ -372,6 +372,14 @@
or GROUP_CONCAT(DISTINCT ltwt.warehouse_id) like CONCAT('%',#{item},'%')
</if>
</foreach>
or group_concat(lww.departure_warehouse_id) in
<foreach collection="param.warehouseIds" item="item" open="(" separator="," close=")">
#{item}
</foreach>
or group_concat(lww.destination_warehouse_id) in
<foreach collection="param.warehouseIds" item="item" open="(" separator="," close=")">
#{item}
</foreach>
</if>
order by lww.create_time desc
</select>
@ -1151,6 +1159,25 @@
</foreach>
</if>
group by lww.id
<if test="param.warehouseIds != null and param.warehouseIds.size() > 0">
HAVING
<foreach collection="param.warehouseIds" item="item" index="index" open="(" close=")">
<if test="index == 0">
GROUP_CONCAT(DISTINCT ltwt.warehouse_id) like CONCAT('%',#{item},'%')
</if>
<if test="index != 0">
or GROUP_CONCAT(DISTINCT ltwt.warehouse_id) like CONCAT('%',#{item},'%')
</if>
</foreach>
or group_concat(lww.departure_warehouse_id) in
<foreach collection="param.warehouseIds" item="item" open="(" separator="," close=")">
#{item}
</foreach>
or group_concat(lww.destination_warehouse_id) in
<foreach collection="param.warehouseIds" item="item" open="(" separator="," close=")">
#{item}
</foreach>
</if>
order by lww.create_time desc
</select>
@ -1192,6 +1219,7 @@
IFNULL(lww.handling_fee,0) handlingFee,
IFNULL(lww.other_fee,0) otherFee,
IFNULL(lww.insurance_fee,0) insuranceFee,
IFNULL(lww.x_pay,0)+IFNULL(lww.d_pay,0)+IFNULL(lww.y_pay,0)+IFNULL(lww.h_pay,0) totalFee,
IFNULL(lww.cost_piece,0) costPiece,
IFNULL(lww.cost_zhang,0) costZhang,
IFNULL(lww.cost_num,0) costNum

Loading…
Cancel
Save