Browse Source

1.三方中转流程逻辑修改

pre-production
zhenghaoyu 2 months ago
parent
commit
e90383f12c
  1. 1
      blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/vo/TrunklineCarsLoadScanVO.java
  2. 61
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/controller/TripartiteTransferController.java
  3. 4
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadScanMapper.java
  4. 20
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadScanMapper.xml
  5. 2
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/IOpenOrderAsyncService.java
  6. 4
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/ITrunklineCarsLoadScanService.java
  7. 2
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/ITrunklineCarsLoadService.java
  8. 75
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/OpenOrderAsyncServiceImpl.java
  9. 10
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadScanServiceImpl.java
  10. 231
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadServiceImpl.java
  11. 18
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineWaybillTrackServiceImpl.java

1
blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/vo/TrunklineCarsLoadScanVO.java

@ -7,6 +7,7 @@ import lombok.Data;
public class TrunklineCarsLoadScanVO extends TrunklineCarsLoadScanEntity { public class TrunklineCarsLoadScanVO extends TrunklineCarsLoadScanEntity {
private Long signOrderId; private Long signOrderId;
private Long carsLoadScanId;
private String destinationWarehouseName; private String destinationWarehouseName;

61
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/controller/TripartiteTransferController.java

@ -175,6 +175,38 @@ public class TripartiteTransferController {
} }
@ResponseBody
@PostMapping("/startCarsBefore")
@ApiOperationSupport(order = 1)
@ApiOperation(value = "三方中转发车前验证", notes = "传入loadCarsDTO")
public R startCarsBefore(@RequestBody LoadCarsDTO loadCarsDTO) {
String method = "############startCars: ";
log.info(method+"请求参数{}",loadCarsDTO);
Long loadId = loadCarsDTO.getLoadId();
try{
//当前登录人选择的仓库
BasicdataWarehouseEntity myCurrentWarehouse = warehouseClient.getMyCurrentWarehouse();
if(Objects.isNull(myCurrentWarehouse)){
log.warn(method+"仓库信息为空 myCurrentWarehouse={}",myCurrentWarehouse);
return R.fail(400,"多仓权限无法操作,请选择仓库");
}
if(Objects.isNull(loadId)){
log.warn(method+"三方中转id为空 loadId={}",loadId);
return R.fail(400,"三方中转id为空");
}
return carsLoadService.startCarsBefore(loadId,myCurrentWarehouse.getId());
}catch (CustomerException e){
log.error(e.message,e);
return R.fail(e.code,e.message);
}catch (Exception e){
log.error(method+"系统异常",e);
return R.fail(500,"系统异常");
}
}
@ResponseBody @ResponseBody
@PostMapping("/startCars") @PostMapping("/startCars")
@ApiOperationSupport(order = 1) @ApiOperationSupport(order = 1)
@ -392,6 +424,7 @@ public class TripartiteTransferController {
String carNumber = carsLoadDTO.getCarNumber(); String carNumber = carsLoadDTO.getCarNumber();
String remark = carsLoadDTO.getRemark(); String remark = carsLoadDTO.getRemark();
String loadType = carsLoadDTO.getLoadType(); String loadType = carsLoadDTO.getLoadType();
String deliveryType = carsLoadDTO.getDeliveryType();
try{ try{
@ -406,18 +439,26 @@ public class TripartiteTransferController {
log.warn(method+"配载id为空 loadId={}",loadId); log.warn(method+"配载id为空 loadId={}",loadId);
return R.fail(400,"配载id为空"); return R.fail(400,"配载id为空");
} }
if(Objects.isNull(driverId)){
log.warn(method+"司机id为空 driverId={}",driverId);
return R.fail(400,"司机id为空");
}
if(StringUtil.isBlank(driverName)){ if(StringUtil.isBlank(deliveryType)){
log.warn(method+"司机名称为空 driverName={}",driverName); log.warn(method+"送货方式为空 deliveryType={}",deliveryType);
return R.fail(400,"司机名称为空"); return R.fail(400,"送货方式为空");
} }
if(StringUtil.isBlank(driverMobile)){
log.warn(method+"司机电话为空 driverMobile={}",driverMobile); if(deliveryType.equals("2")){
return R.fail(400,"司机电话为空"); if(Objects.isNull(driverId)){
log.warn(method+"司机id为空 driverId={}",driverId);
return R.fail(400,"司机id为空");
}
if(StringUtil.isBlank(driverName)){
log.warn(method+"司机名称为空 driverName={}",driverName);
return R.fail(400,"司机名称为空");
}
if(StringUtil.isBlank(driverMobile)){
log.warn(method+"司机电话为空 driverMobile={}",driverMobile);
return R.fail(400,"司机电话为空");
}
} }
if(StringUtil.isBlank(chargeType)){ if(StringUtil.isBlank(chargeType)){

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

@ -171,4 +171,8 @@ public interface TrunklineCarsLoadScanMapper extends BaseMapper<TrunklineCarsLoa
List<TrunklineCarsLoadScanEntity> findAbnormalZeroScanList(@Param("loadId") Long loadId, @Param("warehouseId") Long warehouseId); List<TrunklineCarsLoadScanEntity> findAbnormalZeroScanList(@Param("loadId") Long loadId, @Param("warehouseId") Long warehouseId);
List<ZeroNumVO> findZeroStartNum(@Param("loadId") Long loadId, @Param("warehouseId") Long warehouseId); List<ZeroNumVO> findZeroStartNum(@Param("loadId") Long loadId, @Param("warehouseId") Long warehouseId);
List<Long> findAllIdListByLoadIdAndNoScanStatus(@Param("loadId") Long loadId, @Param("scanStatus") String scanStatus);
List<LoadScanWaybillVO> findTransferLoadScanWaybillList(@Param("loadId") Long loadId, @Param("nodeId") Long nodeId);
} }

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

@ -80,7 +80,8 @@
<select id="loadingDetail" resultType="com.logpm.trunkline.vo.TrunklineCarsLoadScanVO"> <select id="loadingDetail" resultType="com.logpm.trunkline.vo.TrunklineCarsLoadScanVO">
select cls.*, select cls.*,
lww.destination_warehouse_name lww.destination_warehouse_name destinationWarehouseName,
cls.id carsLoadScanId
from logpm_trunkline_cars_load_scan cls from logpm_trunkline_cars_load_scan cls
left join logpm_warehouse_waybill lww on cls.waybill_id = lww.id left join logpm_warehouse_waybill lww on cls.waybill_id = lww.id
where cls.load_id = #{param.loadId} where cls.load_id = #{param.loadId}
@ -496,6 +497,16 @@
group by waybill_no group by waybill_no
</select> </select>
<select id="findTransferLoadScanWaybillList" resultType="com.logpm.trunkline.vo.LoadScanWaybillVO">
select waybill_no waybillNo,
sum(unload_num) num
from logpm_trunkline_cars_load_scan
where load_id = #{loadId}
and warehouse_id = #{nodeId}
and waybill_no is not null
group by waybill_no
</select>
<select id="findArriveLoadScanWaybillList" resultType="com.logpm.trunkline.vo.LoadScanWaybillVO"> <select id="findArriveLoadScanWaybillList" resultType="com.logpm.trunkline.vo.LoadScanWaybillVO">
select waybill_no waybillNo, select waybill_no waybillNo,
sum(num) num sum(num) num
@ -914,4 +925,11 @@
</select> </select>
<select id="findAllIdListByLoadIdAndNoScanStatus" resultType="java.lang.Long">
select id
from logpm_trunkline_cars_load_scan
where load_id = #{loadId}
and scan_status != #{scanStatus}
</select>
</mapper> </mapper>

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

@ -10,10 +10,12 @@ public interface IOpenOrderAsyncService {
void saveLog(Long waybillId, String waybillNo, String trackType, String refer, String operationRemark, String nickName,Long userId,Long warehouseId,String warehouseName); void saveLog(Long waybillId, String waybillNo, String trackType, String refer, String operationRemark, String nickName,Long userId,Long warehouseId,String warehouseName);
void saveStartCarLog(TrunklineCarsLoadLineEntity carsLoadLineEntity,String nickName,Long userId); void saveStartCarLog(TrunklineCarsLoadLineEntity carsLoadLineEntity,String nickName,Long userId);
void saveTripartiteStartCarLog(TrunklineCarsLoadLineEntity carsLoadLineEntity,String nickName,Long userId);
void saveCancelStartCarLog(TrunklineCarsLoadLineEntity currentCarsLoadLineEntity, String nickName,Long userId); void saveCancelStartCarLog(TrunklineCarsLoadLineEntity currentCarsLoadLineEntity, String nickName,Long userId);
void saveArriveCarLog(TrunklineCarsLoadLineEntity carsLoadLineEntity, String nickName,Long userId); void saveArriveCarLog(TrunklineCarsLoadLineEntity carsLoadLineEntity, String nickName,Long userId);
void saveTripartiteArriveCarLog(TrunklineCarsLoadLineEntity carsLoadLineEntity, String nickName,Long userId);
void saveCancelArriveCarLog(TrunklineCarsLoadLineEntity currentCarsLoadLineEntity, String nickName,Long userId); void saveCancelArriveCarLog(TrunklineCarsLoadLineEntity currentCarsLoadLineEntity, String nickName,Long userId);

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

@ -166,4 +166,8 @@ public interface ITrunklineCarsLoadScanService extends BaseService<TrunklineCars
List<TrunklineCarsLoadScanEntity> findAbnormalZeroScanList(Long loadId, Long warehouseId); List<TrunklineCarsLoadScanEntity> findAbnormalZeroScanList(Long loadId, Long warehouseId);
List<ZeroNumVO> findZeroStartNum(Long loadId, Long warehouseId); List<ZeroNumVO> findZeroStartNum(Long loadId, Long warehouseId);
List<Long> findAllIdListByLoadIdAndNoScanStatus(Long loadId, String scanStatus);
List<LoadScanWaybillVO> findTransferLoadScanWaybillList(Long loadId, Long nodeId);
} }

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

@ -223,4 +223,6 @@ public interface ITrunklineCarsLoadService extends BaseService<TrunklineCarsLoad
R selectEditDetailByLoadIdNoXz(Long loadId); R selectEditDetailByLoadIdNoXz(Long loadId);
R signOrderZeroSuppleList(LoadCarsDTO loadCarsDTO); R signOrderZeroSuppleList(LoadCarsDTO loadCarsDTO);
R startCarsBefore(Long loadId, Long warehouseId);
} }

75
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/OpenOrderAsyncServiceImpl.java

@ -170,6 +170,51 @@ public class OpenOrderAsyncServiceImpl implements IOpenOrderAsyncService {
} }
@LogpmAsync("asyncExecutor")
@Override
public void saveTripartiteStartCarLog(TrunklineCarsLoadLineEntity carsLoadLineEntity,String nickName,Long userId) {
Long loadId = carsLoadLineEntity.getLoadId();
Integer sort = carsLoadLineEntity.getSort();
String tenantId = AuthUtil.getTenantId();
BladeUser user = AuthUtil.getUser();
// DynamicDataSourceContextHolder.push(tenantId);
TrunklineCarsLoadEntity carsLoadEntity = trunklineCarsLoadService.getById(loadId);
if(Objects.isNull(carsLoadEntity)){
log.warn("##############saveStartCarLog: 配载信息不存在 loadId={}",loadId);
return;
}
String carsNo = carsLoadEntity.getCarsNo();
String carNumber = carsLoadEntity.getCarNumber();
String driverName = carsLoadEntity.getDriverName();
String driverMobile = carsLoadEntity.getDriverMobile();
Long nodeId = carsLoadLineEntity.getNodeId();
String nodeName = carsLoadLineEntity.getNodeName();
List<LoadScanWaybillVO> list = trunklineCarsLoadScanService.findTransferLoadScanWaybillList(loadId,nodeId);
for (LoadScanWaybillVO loadScanWaybillVO : list) {
String waybillNo = loadScanWaybillVO.getWaybillNo();
Integer num = loadScanWaybillVO.getNum();
WarehouseWaybillEntity waybillEntity = warehouseWaybillClient.findByWaybillNo(waybillNo);
if(Objects.isNull(waybillEntity)){
log.warn("##############saveStartCarLog: 运单信息不存在 waybillNo={}",waybillNo);
continue;
}
Long waybillId = waybillEntity.getId();
String operationRemark = "运单装车"+num+"件 三方中转批次号:"+carsNo+",车牌号:"+carNumber+",司机姓名:"+driverName+",司机手机:"+driverMobile;
saveLog(waybillId,waybillNo,"30",nodeName+" 三方中转装车",operationRemark,nickName,userId,nodeId,nodeName);
operationRemark = "三方中转从"+nodeName+"发车,实际发车时间"+ CommonUtil.dateToStringGeneral(new Date());
saveLog(waybillId,waybillNo,"40",nodeName+"已发车",operationRemark,nickName,userId,nodeId,nodeName);
}
}
private void saveTrackLog(Long waybillId, String waybillNo, String trackType, String refer, String operationRemark, String nickName,Long userId,Long warehouseId,String warehouseName) { private void saveTrackLog(Long waybillId, String waybillNo, String trackType, String refer, String operationRemark, String nickName,Long userId,Long warehouseId,String warehouseName) {
TrunklineWaybillTrackEntity waybillTrackEntity = new TrunklineWaybillTrackEntity(); TrunklineWaybillTrackEntity waybillTrackEntity = new TrunklineWaybillTrackEntity();
waybillTrackEntity.setWarehouseId(warehouseId); waybillTrackEntity.setWarehouseId(warehouseId);
@ -249,6 +294,36 @@ public class OpenOrderAsyncServiceImpl implements IOpenOrderAsyncService {
} }
} }
@LogpmAsync("asyncExecutor")
@Override
public void saveTripartiteArriveCarLog(TrunklineCarsLoadLineEntity carsLoadLineEntity, String nickName,Long userId) {
Long loadId = carsLoadLineEntity.getLoadId();
TrunklineCarsLoadEntity carsLoadEntity = trunklineCarsLoadService.getById(loadId);
if(Objects.isNull(carsLoadEntity)){
log.warn("##############saveCancelStartCarLog: 配载信息不存在 loadId={}",loadId);
return;
}
Long nodeId = carsLoadLineEntity.getNodeId();
String nodeName = carsLoadLineEntity.getNodeName();
List<LoadScanWaybillVO> list = trunklineCarsLoadScanService.findArriveLoadScanWaybillList(loadId,nodeId);
for (LoadScanWaybillVO loadScanWaybillVO : list) {
String waybillNo = loadScanWaybillVO.getWaybillNo();
WarehouseWaybillEntity waybillEntity = warehouseWaybillClient.findByWaybillNo(waybillNo);
if(Objects.isNull(waybillEntity)){
log.warn("##############saveCancelStartCarLog: 运单信息不存在 waybillNo={}",waybillNo);
continue;
}
Long waybillId = waybillEntity.getId();
String operationRemark = "三方中转到达"+nodeName+",到达时间"+ CommonUtil.dateToStringGeneral(new Date());
saveLog(waybillId,waybillNo,"60",nodeName+" 三方中转到达",operationRemark,nickName,userId,nodeId,nodeName);
}
}
@LogpmAsync("asyncExecutor") @LogpmAsync("asyncExecutor")
@Override @Override
public void saveCancelArriveCarLog(TrunklineCarsLoadLineEntity carsLoadLineEntity, String nickName,Long userId) { public void saveCancelArriveCarLog(TrunklineCarsLoadLineEntity carsLoadLineEntity, String nickName,Long userId) {

10
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadScanServiceImpl.java

@ -404,4 +404,14 @@ public class TrunklineCarsLoadScanServiceImpl extends BaseServiceImpl<TrunklineC
return baseMapper.findZeroStartNum(loadId,warehouseId); return baseMapper.findZeroStartNum(loadId,warehouseId);
} }
@Override
public List<Long> findAllIdListByLoadIdAndNoScanStatus(Long loadId, String scanStatus) {
return baseMapper.findAllIdListByLoadIdAndNoScanStatus(loadId,scanStatus);
}
@Override
public List<LoadScanWaybillVO> findTransferLoadScanWaybillList(Long loadId, Long nodeId) {
return baseMapper.findTransferLoadScanWaybillList(loadId,nodeId);
}
} }

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

@ -1719,6 +1719,22 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
return R.data(pageList); return R.data(pageList);
} }
@Override
public R startCarsBefore(Long loadId, Long warehouseId) {
QueryWrapper<TrunklineCarsLoadScanEntity> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("load_id",loadId);
List<TrunklineCarsLoadScanEntity> carsLoadScanEntityList = trunklineCarsLoadScanService.list(queryWrapper);
Integer loadingNum = carsLoadScanEntityList.stream().mapToInt(t -> Objects.nonNull(t.getNum()) ? t.getNum() : 0).sum();
Integer unloadNum = carsLoadScanEntityList.stream().mapToInt(t -> Objects.nonNull(t.getUnloadNum()) ? t.getUnloadNum() : 0).sum();
Map<String,Integer> map = new HashMap<>();
map.put("loadingNum",loadingNum);
map.put("unloadNum",unloadNum);
return R.data(map);
}
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
@Override @Override
@ -2355,10 +2371,65 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
try { try {
trunklineCarsLoadLogService.saveLog(carsLoadEntity, carsLoadLineEntity, CarsLoadLogTypeConstant.FIRST_START_CARS_LOAD.getValue()); trunklineCarsLoadLogService.saveLog(carsLoadEntity, carsLoadLineEntity, CarsLoadLogTypeConstant.FIRST_START_CARS_LOAD.getValue());
List<String> orderPackageCodes = trunklineCarsLoadScanService.findPackageListByLoadId(loadId); openOrderAsyncService.saveTripartiteStartCarLog(carsLoadLineEntity, AuthUtil.getNickName(), AuthUtil.getUserId());
String content = "包件在 " + warehouseEntity.getName() + "三方中转发车"; List<String> orderPackageCodes = new ArrayList<>();
packageTrackLogAsyncService.addPackageTrackLog(AuthUtil.getTenantId(), AuthUtil.getUserId(), Func.firstLong(AuthUtil.getDeptId()), AuthUtil.getNickName(), orderPackageCodes, warehouseId, warehouseEntity.getName(), WorkNodeEnums.TRIPARTITE_TRANSFER_DEPART.getCode(), content); List<String> noUnloadOrderPackageCodes = new ArrayList<>();
//处理三方中转未卸车数据
QueryWrapper<TrunklineCarsLoadScanEntity> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("load_id",loadId);
List<TrunklineCarsLoadScanEntity> carsLoadScanEntityList = trunklineCarsLoadScanService.list(queryWrapper);
//把carsLoadScanEntityList中所有元素通过type进行分组
//通过type分组区分零担和包件
Map<Integer, List<TrunklineCarsLoadScanEntity>> carsLoadScanEntityMap = carsLoadScanEntityList.stream().collect(Collectors.groupingBy(TrunklineCarsLoadScanEntity::getType));
carsLoadScanEntityMap.keySet().forEach(type -> {
List<TrunklineCarsLoadScanEntity> trunklineCarsLoadScanEntities = carsLoadScanEntityMap.get(type);
if(type == 1){
//包件
trunklineCarsLoadScanEntities.forEach(trunklineCarsLoadScanEntity -> {
String scanCode = trunklineCarsLoadScanEntity.getScanCode();
Integer num = trunklineCarsLoadScanEntity.getNum();
Integer unloadNum = trunklineCarsLoadScanEntity.getUnloadNum();
Integer isData = trunklineCarsLoadScanEntity.getIsData();
if(unloadNum == num){
orderPackageCodes.add(scanCode);
}else{
//未卸车包件
if(isData == 1){
noUnloadOrderPackageCodes.add(scanCode);
}
}
});
}else if(type == 2){
//零担
//把trunklineCarsLoadScanEntities通过orderCode进行分组
//通过orderCode分组
Map<String, List<TrunklineCarsLoadScanEntity>> orderCodeMap = trunklineCarsLoadScanEntities.stream().collect(Collectors.groupingBy(TrunklineCarsLoadScanEntity::getOrderCode));
orderCodeMap.keySet().forEach(orderCode -> {
List<TrunklineCarsLoadScanEntity> trunklineCarsLoadScanEntities1 = orderCodeMap.get(orderCode);
Integer loadingNum = trunklineCarsLoadScanEntities1.stream().mapToInt(t -> Objects.nonNull(t.getNum()) ? t.getNum() : 0).sum();
Integer unloadNum = trunklineCarsLoadScanEntities1.stream().mapToInt(t -> Objects.nonNull(t.getUnloadNum()) ? t.getUnloadNum() : 0).sum();
int i = loadingNum - unloadNum;
DistributionStockArticleEntity stockArticleEntity = distributionStockArticleClient.findZeroByOrderCodeAndWarehouseId(orderCode, warehouseId);
if(!Objects.isNull(stockArticleEntity)){
distributionStockArticleClient.addHandQuantity(stockArticleEntity.getId(), i);
}
});
}
});
if(CollUtil.isNotEmpty(orderPackageCodes)){
String content = "包件在 " + warehouseEntity.getName() + "三方中转发车";
packageTrackLogAsyncService.addPackageTrackLog(AuthUtil.getTenantId(), AuthUtil.getUserId(), Func.firstLong(AuthUtil.getDeptId()), AuthUtil.getNickName(), orderPackageCodes, warehouseId, warehouseEntity.getName(), WorkNodeEnums.TRIPARTITE_TRANSFER_DEPART.getCode(), content);
}
if(CollUtil.isNotEmpty(noUnloadOrderPackageCodes)){
String content = "包件在 " + warehouseEntity.getName() + "三方中转取消装车";
packageTrackLogAsyncService.addPackageTrackLog(AuthUtil.getTenantId(), AuthUtil.getUserId(), Func.firstLong(AuthUtil.getDeptId()), AuthUtil.getNickName(), noUnloadOrderPackageCodes, warehouseId, warehouseEntity.getName(), WorkNodeEnums.CANCEL_INITIAL_WAREHOUSE_LOADING.getCode(), content);
}
} catch (Exception e) { } catch (Exception e) {
log.warn("#############startCarByLoadId: 存入日志失败"); log.warn("#############startCarByLoadId: 存入日志失败");
@ -2493,6 +2564,8 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
trunklineCarsLoadLogService.saveLog(carsLoadEntity, carsLoadLineEntity, CarsLoadLogTypeConstant.END_ARRIVE_CARS_LOAD.getValue()); trunklineCarsLoadLogService.saveLog(carsLoadEntity, carsLoadLineEntity, CarsLoadLogTypeConstant.END_ARRIVE_CARS_LOAD.getValue());
List<String> orderPackageCodes = trunklineCarsLoadScanService.findPackageListByLoadId(loadId); List<String> orderPackageCodes = trunklineCarsLoadScanService.findPackageListByLoadId(loadId);
openOrderAsyncService.saveTripartiteArriveCarLog(carsLoadLineEntity,AuthUtil.getNickName(),AuthUtil.getUserId());
String content = "包件在 " + warehouseEntity.getName() + "三方中转到达"; String content = "包件在 " + warehouseEntity.getName() + "三方中转到达";
packageTrackLogAsyncService.addPackageTrackLog(AuthUtil.getTenantId(), AuthUtil.getUserId(), Func.firstLong(AuthUtil.getDeptId()), AuthUtil.getNickName(), orderPackageCodes, warehouseId, warehouseEntity.getName(), WorkNodeEnums.ARRICE_TRIPARTITE_TRANSFER_DEPART.getCode(), content); packageTrackLogAsyncService.addPackageTrackLog(AuthUtil.getTenantId(), AuthUtil.getUserId(), Func.firstLong(AuthUtil.getDeptId()), AuthUtil.getNickName(), orderPackageCodes, warehouseId, warehouseEntity.getName(), WorkNodeEnums.ARRICE_TRIPARTITE_TRANSFER_DEPART.getCode(), content);
@ -2535,27 +2608,30 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
throw new CustomerException(400, "三方中转节点不存在"); throw new CustomerException(400, "三方中转节点不存在");
} }
carsLoadEntity.setSignTime(new Date());
carsLoadEntity.setLoadStatus("90");
updateById(carsLoadEntity);
trunklineCarsLoadScanService.updateScanStatusByLoadId(loadId, "3", new Date(),AuthUtil.getNickName()); List<Long> scanLoadIds = trunklineCarsLoadScanService.findAllIdListByLoadIdAndNoScanStatus(loadId,"3");
try { return signLoadScanByIds(scanLoadIds,warehouseId);
trunklineCarsLoadLogService.saveLog(carsLoadEntity, carsLoadLineEntity, CarsLoadLogTypeConstant.TRIPARTITE_TRANSFER_SIGN.getValue());
List<String> orderPackageCodes = trunklineCarsLoadScanService.findSignListOrderPackageCodes(loadId); // carsLoadEntity.setSignTime(new Date());
// carsLoadEntity.setLoadStatus("90");
String content = "包件在" + warehouseEntity.getName() + "被三方中转整车签收"; // updateById(carsLoadEntity);
packageTrackLogAsyncService.addPackageTrackLog(AuthUtil.getTenantId(), AuthUtil.getUserId(), Func.firstLong(AuthUtil.getDeptId()), AuthUtil.getNickName(), orderPackageCodes, warehouseId, warehouseEntity.getName(), WorkNodeEnums.SIGN_TRIPARTITE_TRANSFER_DEPART.getCode(), content); //
// 推送签收数据给工厂 // trunklineCarsLoadScanService.updateScanStatusByLoadId(loadId, "3", new Date(),AuthUtil.getNickName());
sendFactorySignTriparite(warehouseId, orderPackageCodes, warehouseEntity); //
} catch (Exception e) { // try {
log.warn("###########存入日志失败"); // trunklineCarsLoadLogService.saveLog(carsLoadEntity, carsLoadLineEntity, CarsLoadLogTypeConstant.TRIPARTITE_TRANSFER_SIGN.getValue());
} //
// List<String> orderPackageCodes = trunklineCarsLoadScanService.findSignListOrderPackageCodes(loadId);
//
return R.success("签收成功"); // String content = "包件在" + warehouseEntity.getName() + "被三方中转整车签收";
// packageTrackLogAsyncService.addPackageTrackLog(AuthUtil.getTenantId(), AuthUtil.getUserId(), Func.firstLong(AuthUtil.getDeptId()), AuthUtil.getNickName(), orderPackageCodes, warehouseId, warehouseEntity.getName(), WorkNodeEnums.SIGN_TRIPARTITE_TRANSFER_DEPART.getCode(), content);
// // 推送签收数据给工厂
// sendFactorySignTriparite(warehouseId, orderPackageCodes, warehouseEntity);
// } catch (Exception e) {
// log.warn("###########存入日志失败");
// }
// return R.success("签收成功");
} }
@Override @Override
@ -3647,6 +3723,10 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
log.warn("##########addZeroSupple: 配载计划信息不存在 loadId={}", loadId); log.warn("##########addZeroSupple: 配载计划信息不存在 loadId={}", loadId);
return R.fail(405, "配载计划信息不存在"); return R.fail(405, "配载计划信息不存在");
} }
String carsNo = carsLoadEntity.getCarsNo();
String carNumber = carsLoadEntity.getCarNumber();
String driverName = carsLoadEntity.getDriverName();
String driverMobile = carsLoadEntity.getDriverMobile();
TrunklineCarsLoadLineEntity carsLoadLineEntity = trunklineCarsLoadLineService.findEntityByLoadIdAndNodeId(loadId, warehouseId); TrunklineCarsLoadLineEntity carsLoadLineEntity = trunklineCarsLoadLineService.findEntityByLoadIdAndNodeId(loadId, warehouseId);
if (Objects.isNull(carsLoadLineEntity)) { if (Objects.isNull(carsLoadLineEntity)) {
@ -3654,6 +3734,14 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
return R.fail(405, "配载计划节点信息不存在"); return R.fail(405, "配载计划节点信息不存在");
} }
BasicdataWarehouseEntity warehouseEntity = basicdataWarehouseClient.getEntityWarehouseId(warehouseId);
if(Objects.isNull(warehouseEntity)){
log.warn("##########addZeroSupple: 仓库信息不存在 warehouseId={}", warehouseId);
return R.fail(405, "仓库信息不存在");
}
String warehouseName = warehouseEntity.getName();
for (ZeroSuppleVO zeroSuppleVO : zeroSuppleList) { for (ZeroSuppleVO zeroSuppleVO : zeroSuppleList) {
String waybillNo = zeroSuppleVO.getWaybillNo(); String waybillNo = zeroSuppleVO.getWaybillNo();
String orderCode = zeroSuppleVO.getOrderCode(); String orderCode = zeroSuppleVO.getOrderCode();
@ -3666,6 +3754,7 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
log.warn("##########addZeroSupple: 运单信息不存在 loadId={} waybillNo={}", loadId, waybillNo); log.warn("##########addZeroSupple: 运单信息不存在 loadId={} waybillNo={}", loadId, waybillNo);
return R.fail(405, "运单信息不存在"); return R.fail(405, "运单信息不存在");
} }
Long waybillId = warehouseWaybillEntity.getId();
DistributionStockArticleEntity zeroStockArticleEntity = distributionStockArticleClient.findZeroByOrderCodeAndWarehouseId(orderCode, warehouseId); DistributionStockArticleEntity zeroStockArticleEntity = distributionStockArticleClient.findZeroByOrderCodeAndWarehouseId(orderCode, warehouseId);
if (Objects.isNull(zeroStockArticleEntity)) { if (Objects.isNull(zeroStockArticleEntity)) {
@ -3707,6 +3796,11 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
distributionStockArticleClient.saveOrUpdate(zeroStockArticleEntity); distributionStockArticleClient.saveOrUpdate(zeroStockArticleEntity);
waybillPackageService.updateWaybillStatus(warehouseWaybillEntity);
String operationRemark = "运单 补录装车"+enterNum+"件 干线批次号:"+carsNo+",车牌号:"+carNumber+",司机姓名:"+driverName+",司机手机:"+driverMobile;
openOrderAsyncService.saveLog(waybillId,waybillNo,"30",warehouseName+" 干线补录装车",operationRemark,AuthUtil.getNickName(),AuthUtil.getUserId(),warehouseId,warehouseName);
if(!Objects.isNull(signOrderId)){ if(!Objects.isNull(signOrderId)){
updateSignOrderNumBySignOrderId(signOrderId); updateSignOrderNumBySignOrderId(signOrderId);
// TrunklineLoadSignOrderEntity signOrderEntity = trunklineLoadSignOrderService.getById(signOrderId); // TrunklineLoadSignOrderEntity signOrderEntity = trunklineLoadSignOrderService.getById(signOrderId);
@ -5202,6 +5296,7 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
log.warn("##############signScanPackageCode: 仓库信息不存在 warehouseId={}", warehouseId); log.warn("##############signScanPackageCode: 仓库信息不存在 warehouseId={}", warehouseId);
return R.fail(405, "仓库信息不存在"); return R.fail(405, "仓库信息不存在");
} }
String warehouseName = warehouseEntity.getName();
TrunklineCarsLoadEntity carsLoadEntity = baseMapper.selectById(loadId); TrunklineCarsLoadEntity carsLoadEntity = baseMapper.selectById(loadId);
if (Objects.isNull(carsLoadEntity)) { if (Objects.isNull(carsLoadEntity)) {
@ -5211,6 +5306,8 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
String carsNo = carsLoadEntity.getCarsNo(); String carsNo = carsLoadEntity.getCarsNo();
Long waybillId = null;
Date date = new Date(); Date date = new Date();
TrunklineCarsLoadScanEntity carsLoadScanEntity = trunklineCarsLoadScanService.findEntityByLoadIdAndOrderPackageCode(loadId, orderPackageCode); TrunklineCarsLoadScanEntity carsLoadScanEntity = trunklineCarsLoadScanService.findEntityByLoadIdAndOrderPackageCode(loadId, orderPackageCode);
if (Objects.isNull(carsLoadScanEntity)) { if (Objects.isNull(carsLoadScanEntity)) {
@ -5230,6 +5327,8 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
inComingService.incomingPackage(inComingDTO); inComingService.incomingPackage(inComingDTO);
String orderCode = trunklineAdvanceDetail.getOrderCode(); String orderCode = trunklineAdvanceDetail.getOrderCode();
String waybillNo = trunklineAdvanceDetail.getWaybillNo();
waybillId = trunklineAdvanceDetail.getWaybillId();
DistributionParcelListEntity distributionParcelList = distributionParcelListClient.findByPacketBarCodeAndWarehouseId(orderPackageCode, warehouseId); DistributionParcelListEntity distributionParcelList = distributionParcelListClient.findByPacketBarCodeAndWarehouseId(orderPackageCode, warehouseId);
if(!Objects.isNull(distributionParcelList)){ if(!Objects.isNull(distributionParcelList)){
@ -5248,6 +5347,9 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
carsLoadScanEntity.setLoadCode(carsNo); carsLoadScanEntity.setLoadCode(carsNo);
carsLoadScanEntity.setWarehouseId(warehouseId); carsLoadScanEntity.setWarehouseId(warehouseId);
carsLoadScanEntity.setWarehouseName(warehouseEntity.getName()); carsLoadScanEntity.setWarehouseName(warehouseEntity.getName());
carsLoadScanEntity.setOrderCode(orderCode);
carsLoadScanEntity.setWaybillId(waybillId);
carsLoadScanEntity.setWaybillNo(waybillNo);
carsLoadScanEntity.setScanCode(orderPackageCode); carsLoadScanEntity.setScanCode(orderPackageCode);
carsLoadScanEntity.setScanStatus("3"); carsLoadScanEntity.setScanStatus("3");
carsLoadScanEntity.setNum(1); carsLoadScanEntity.setNum(1);
@ -5294,7 +5396,7 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
Long wid = parcelListEntity.getWarehouseId(); Long wid = parcelListEntity.getWarehouseId();
String wName = parcelListEntity.getWarehouse(); String wName = parcelListEntity.getWarehouse();
String waybillNumber = parcelListEntity.getWaybillNumber(); String waybillNumber = parcelListEntity.getWaybillNumber();
Long waybillId = parcelListEntity.getWaybillId(); waybillId = parcelListEntity.getWaybillId();
String orderCode = parcelListEntity.getOrderCode(); String orderCode = parcelListEntity.getOrderCode();
Long stockArticleId = parcelListEntity.getStockArticleId(); Long stockArticleId = parcelListEntity.getStockArticleId();
DistributionStockArticleEntity stockArticleEntity = distributionStockArticleClient.findEntityByStockArticleId(stockArticleId); DistributionStockArticleEntity stockArticleEntity = distributionStockArticleClient.findEntityByStockArticleId(stockArticleId);
@ -5399,6 +5501,8 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
carsLoadScanEntity.setSignAbnormal(0); carsLoadScanEntity.setSignAbnormal(0);
} }
waybillId = carsLoadScanEntity.getWaybillId();
// Long wid = carsLoadScanEntity.getWarehouseId(); // Long wid = carsLoadScanEntity.getWarehouseId();
// if (!wid.equals(warehouseId)) { // if (!wid.equals(warehouseId)) {
// log.warn("##############signScanPackageCode: 包件不在签收计划中 loadId={},orderPackageCode={} scanStatus={}", loadId, orderPackageCode, scanStatus); // log.warn("##############signScanPackageCode: 包件不在签收计划中 loadId={},orderPackageCode={} scanStatus={}", loadId, orderPackageCode, scanStatus);
@ -5426,6 +5530,26 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
List<String> orderPackageCodes = new ArrayList<>(); List<String> orderPackageCodes = new ArrayList<>();
try { try {
// if(!Objects.isNull(waybillId)){
// WarehouseWaybillEntity waybillEntity = warehouseWaybillClient.findByWaybillId(waybillId);
// waybillPackageService.updateWaybillStatus(waybillEntity);
// WaybillLogDTO waybillLogDTO = new WaybillLogDTO();
// waybillLogDTO.setWarehouseId(warehouseId);
// waybillLogDTO.setWarehouseName(warehouseName);
// waybillLogDTO.setWaybillNo(waybillEntity.getWaybillNo());
// waybillLogDTO.setTrainNumber(carsLoadEntity.getCarsNo());
// waybillLogDTO.setCarNumber(carsLoadEntity.getCarNumber());
// waybillLogDTO.setSignUser(AuthUtil.getNickName());
// waybillLogDTO.setSignTime(date);
// waybillLogDTO.setDriverName(carsLoadEntity.getDriverName());
// waybillLogDTO.setNum(unloadNum);
// waybillLogDTO.setSignOrderCode(carsLoadEntity.getCarsNo());
// waybillLogDTO.setType(1);
// waybillLogDTO.setUserId(AuthUtil.getUserId());
// waybillLogDTO.setNickName(AuthUtil.getNickName());
// waybillTrackService.addSignWaybillLog(waybillLogDTO);
// }
orderPackageCodes.add(orderPackageCode); orderPackageCodes.add(orderPackageCode);
String content = "包件在 " + warehouseEntity.getName() + "直发商家签收"; String content = "包件在 " + warehouseEntity.getName() + "直发商家签收";
packageTrackLogAsyncService.addPackageTrackLog(AuthUtil.getTenantId(), AuthUtil.getUserId(), Func.firstLong(AuthUtil.getDeptId()), AuthUtil.getNickName(), orderPackageCodes, warehouseId, warehouseEntity.getName(), WorkNodeEnums.SIGN_DIRECT_SHIPPER.getCode(), content); packageTrackLogAsyncService.addPackageTrackLog(AuthUtil.getTenantId(), AuthUtil.getUserId(), Func.firstLong(AuthUtil.getDeptId()), AuthUtil.getNickName(), orderPackageCodes, warehouseId, warehouseEntity.getName(), WorkNodeEnums.SIGN_DIRECT_SHIPPER.getCode(), content);
@ -5474,8 +5598,12 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
signOrderEntity.setSignStatus("20"); signOrderEntity.setSignStatus("20");
signOrderEntity.setSignTime(new Date()); signOrderEntity.setSignTime(new Date());
} else { } else {
signOrderEntity.setSignStatus("10"); if(signNum == 0){
signOrderEntity.setSignTime(new Date()); signOrderEntity.setSignStatus("0");
}else{
signOrderEntity.setSignStatus("10");
signOrderEntity.setSignTime(new Date());
}
} }
trunklineLoadSignOrderService.updateById(signOrderEntity); trunklineLoadSignOrderService.updateById(signOrderEntity);
@ -5528,6 +5656,8 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
return R.fail(405, "签收数量不能大于当前数据的装车数量"); return R.fail(405, "签收数量不能大于当前数据的装车数量");
} }
carsLoadScanEntity.setScanStatus("3"); carsLoadScanEntity.setScanStatus("3");
carsLoadScanEntity.setUnloadNum(enterNum); carsLoadScanEntity.setUnloadNum(enterNum);
carsLoadScanEntity.setUnloadAbnormal(0); carsLoadScanEntity.setUnloadAbnormal(0);
@ -5550,6 +5680,12 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
//重新计算签收单的数量 //重新计算签收单的数量
updateSignOrderNumBySignOrderId(signOrderId); updateSignOrderNumBySignOrderId(signOrderId);
Long waybillId = carsLoadScanEntity.getWaybillId();
if(!Objects.isNull(waybillId)){
WarehouseWaybillEntity waybillEntity = warehouseWaybillClient.findByWaybillId(waybillId);
waybillPackageService.updateWaybillStatus(waybillEntity);
}
// return Resp.scanSuccess("签收成功",enterNum+"件"); // return Resp.scanSuccess("签收成功",enterNum+"件");
return R.success("签收成功"); return R.success("签收成功");
@ -6028,6 +6164,7 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
Integer realLoadingNumber = carsLoadEntity.getRealLoadingNumber(); Integer realLoadingNumber = carsLoadEntity.getRealLoadingNumber();
String deliveryType = carsLoadEntity.getDeliveryType();
BasicdataWarehouseEntity warehouseEntity = basicdataWarehouseClient.getEntityWarehouseId(warehouseId); BasicdataWarehouseEntity warehouseEntity = basicdataWarehouseClient.getEntityWarehouseId(warehouseId);
if (Objects.isNull(warehouseEntity)) { if (Objects.isNull(warehouseEntity)) {
@ -6067,26 +6204,32 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
Map<String, List<TrunklineCarsLoadScanEntity>> map = trunklineCarsLoadScanEntities.stream().filter(t -> Objects.nonNull(t.getWaybillNo())).collect(Collectors.groupingBy(TrunklineCarsLoadScanEntity::getWaybillNo)); Map<String, List<TrunklineCarsLoadScanEntity>> map = trunklineCarsLoadScanEntities.stream().filter(t -> Objects.nonNull(t.getWaybillNo())).collect(Collectors.groupingBy(TrunklineCarsLoadScanEntity::getWaybillNo));
map.keySet().forEach(waybillNo -> { map.keySet().forEach(waybillNo -> {
List<TrunklineCarsLoadScanEntity> list = map.get(waybillNo); List<TrunklineCarsLoadScanEntity> list = map.get(waybillNo);
//把list中所有元素的unloadNum求和,没有值就取0 Integer signNum = 0;
Integer unloadNum = list.stream().mapToInt(t -> Objects.nonNull(t.getUnloadNum()) ? t.getUnloadNum() : 0).sum(); if("1".equals(deliveryType)){
signNum = list.stream().mapToInt(t -> Objects.nonNull(t.getNum()) ? t.getNum() : 0).sum();
WaybillLogDTO waybillLogDTO = new WaybillLogDTO(); }else if("2".equals(deliveryType)){
waybillLogDTO.setWarehouseId(warehouseId); signNum = list.stream().mapToInt(t -> Objects.nonNull(t.getUnloadNum()) ? t.getUnloadNum() : 0).sum();
waybillLogDTO.setWarehouseName(warehouseName); }
waybillLogDTO.setWaybillNo(waybillNo);
waybillLogDTO.setTrainNumber(carsLoadEntity.getCarsNo());
waybillLogDTO.setCarNumber(carsLoadEntity.getCarNumber());
waybillLogDTO.setSignUser(AuthUtil.getNickName());
waybillLogDTO.setSignTime(date);
waybillLogDTO.setDriverName(carsLoadEntity.getDriverName());
waybillLogDTO.setNum(unloadNum);
waybillLogDTO.setSignOrderCode(carsLoadEntity.getCarsNo());
waybillLogDTO.setType(1);
waybillLogDTO.setUserId(AuthUtil.getUserId());
waybillLogDTO.setNickName(AuthUtil.getNickName());
waybillTrackService.addSignWaybillLog(waybillLogDTO);
});
if(signNum > 0){
WaybillLogDTO waybillLogDTO = new WaybillLogDTO();
waybillLogDTO.setWarehouseId(warehouseId);
waybillLogDTO.setWarehouseName(warehouseName);
waybillLogDTO.setWaybillNo(waybillNo);
waybillLogDTO.setTrainNumber(carsLoadEntity.getCarsNo());
waybillLogDTO.setCarNumber(carsLoadEntity.getCarNumber());
waybillLogDTO.setSignUser(AuthUtil.getNickName());
waybillLogDTO.setSignTime(date);
waybillLogDTO.setDriverName(carsLoadEntity.getDriverName());
waybillLogDTO.setNum(signNum);
waybillLogDTO.setSignOrderCode(carsLoadEntity.getCarsNo());
waybillLogDTO.setType(1);
waybillLogDTO.setUserId(AuthUtil.getUserId());
waybillLogDTO.setNickName(AuthUtil.getNickName());
waybillTrackService.addSignWaybillLog(waybillLogDTO);
}
});
} catch (Exception e) { } catch (Exception e) {
log.warn("###########存入日志失败"); log.warn("###########存入日志失败");
@ -6395,7 +6538,7 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
List<WaybillLogDTO> waybillLogDTOList = new ArrayList<>(); List<WaybillLogDTO> waybillLogDTOList = new ArrayList<>();
QueryWrapper<TrunklineCarsLoadScanEntity> queryWrapper1 = new QueryWrapper<>(); QueryWrapper<TrunklineCarsLoadScanEntity> queryWrapper1 = new QueryWrapper<>();
queryWrapper1.eq("load_id",warehouseId) queryWrapper1.eq("load_id",loadId)
.eq("sign_order_id",signOrderId) .eq("sign_order_id",signOrderId)
.eq("scan_status","3"); .eq("scan_status","3");
List<TrunklineCarsLoadScanEntity> signCarsLoadScanEntityList = trunklineCarsLoadScanService.list(queryWrapper1); List<TrunklineCarsLoadScanEntity> signCarsLoadScanEntityList = trunklineCarsLoadScanService.list(queryWrapper1);

18
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineWaybillTrackServiceImpl.java

@ -100,6 +100,9 @@ public class TrunklineWaybillTrackServiceImpl extends BaseServiceImpl<TrunklineW
case 3: case 3:
typeStr = "配送签收"; typeStr = "配送签收";
break; break;
case 4:
typeStr = "自提签收";
break;
default: default:
typeStr = "未知签收"; typeStr = "未知签收";
} }
@ -114,7 +117,6 @@ public class TrunklineWaybillTrackServiceImpl extends BaseServiceImpl<TrunklineW
String operationRemark = warehouseName+" "+typeStr+num+"件,车次号:"+trainNumber+",司机:"+driverName+",车牌号:"+carNumber+",签收人"+ signUser+",签收单:"+signOrderCode+",签收时间"+ CommonUtil.dateToStringGeneral(signTime); String operationRemark = warehouseName+" "+typeStr+num+"件,车次号:"+trainNumber+",司机:"+driverName+",车牌号:"+carNumber+",签收人"+ signUser+",签收单:"+signOrderCode+",签收时间"+ CommonUtil.dateToStringGeneral(signTime);
openOrderAsyncService.saveLog(waybillId,waybillNo,"100",warehouseName+" "+typeStr,operationRemark,nickName,userId,warehouseId,warehouseName); openOrderAsyncService.saveLog(waybillId,waybillNo,"100",warehouseName+" "+typeStr,operationRemark,nickName,userId,warehouseId,warehouseName);
if(type != 2){ if(type != 2){
warehouseWaybillEntity.setWaybillStatus("100");
//需要更新运单的状态 //需要更新运单的状态
TrunklineWaybillOrderEntity waybillOrderEntity = waybillOrderService.findEntityByWaybillNoAndOrderCode(waybillNo, waybillNo); TrunklineWaybillOrderEntity waybillOrderEntity = waybillOrderService.findEntityByWaybillNoAndOrderCode(waybillNo, waybillNo);
@ -124,11 +126,20 @@ public class TrunklineWaybillTrackServiceImpl extends BaseServiceImpl<TrunklineW
Integer handleNumber = waybillOrderEntity.getHandleNumber(); Integer handleNumber = waybillOrderEntity.getHandleNumber();
int i = handleNumber + num; int i = handleNumber + num;
if(waybillStatusInt < 90){ if(waybillStatusInt < 90){
if(num == totalCount){
warehouseWaybillEntity.setWaybillStatus("100");
waybillOrderEntity.setHandleNumber(num);
}else{
warehouseWaybillEntity.setWaybillStatus("90");
waybillOrderEntity.setHandleNumber(num);
}
warehouseWaybillClient.updateEntity(warehouseWaybillEntity);
waybillOrderService.updateById(waybillOrderEntity);
}else if(waybillStatusInt == 90){
if(i == totalCount){ if(i == totalCount){
warehouseWaybillEntity.setWaybillStatus("100"); warehouseWaybillEntity.setWaybillStatus("100");
waybillOrderEntity.setHandleNumber(i); waybillOrderEntity.setHandleNumber(i);
}else{ }else{
warehouseWaybillEntity.setWaybillStatus("90");
waybillOrderEntity.setHandleNumber(i); waybillOrderEntity.setHandleNumber(i);
} }
warehouseWaybillClient.updateEntity(warehouseWaybillEntity); warehouseWaybillClient.updateEntity(warehouseWaybillEntity);
@ -168,6 +179,9 @@ public class TrunklineWaybillTrackServiceImpl extends BaseServiceImpl<TrunklineW
case 3: case 3:
typeStr = "配送签收"; typeStr = "配送签收";
break; break;
case 4:
typeStr = "自提签收";
break;
default: default:
typeStr = "未知签收"; typeStr = "未知签收";
} }

Loading…
Cancel
Save