Browse Source

Merge branch 'dev' into pre-production

master
pref_mail@163.com 5 months ago
parent
commit
1b2a7e9347
  1. 2
      blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/feign/IDistributionStockArticleClient.java
  2. 3
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/excel/DistributionDeliveryListExcel.java
  3. 10
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/feign/DistributionStockArticleClient.java
  4. 52
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java
  5. 3
      blade-service/logpm-factory-data/logpm-factory-data-zbom/src/main/java/com/logpm/factorydata/zbom/service/impl/ReceiptServiceImpl.java
  6. 14
      blade-service/logpm-factory/src/main/java/com/logpm/factory/comfac/service/impl/AsyncDataServiceImpl.java
  7. 2
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadMapper.xml
  8. 2
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadScanMapper.xml
  9. 32
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadServiceImpl.java
  10. 70
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineWaybillTrackServiceImpl.java

2
blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/feign/IDistributionStockArticleClient.java

@ -211,4 +211,6 @@ public interface IDistributionStockArticleClient {
@GetMapping(API_PREFIX + "/findSignNumByWaybillNo")
Integer findSignNumByWaybillNo(@RequestParam String waybillNo, @RequestParam Long destinationWarehouseId);
@GetMapping(API_PREFIX + "/addSignNum")
void addSignNum(@RequestParam Long orderId, @RequestParam Integer unloadNum);
}

3
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/excel/DistributionDeliveryListExcel.java

@ -42,6 +42,9 @@ public class DistributionDeliveryListExcel implements Serializable {
private static final long serialVersionUID = 1L;
private Long id;
/**
* 车次
*/

10
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/feign/DistributionStockArticleClient.java

@ -414,4 +414,14 @@ public class DistributionStockArticleClient implements IDistributionStockArticle
return distributionStockArticleService.findSignNumByWaybillNo(waybillNo,destinationWarehouseId);
}
@Override
public void addSignNum(Long orderId, Integer unloadNum) {
DistributionStockArticleEntity stockArticle = distributionStockArticleService.getById(orderId);
Integer signinQuantity = stockArticle.getSigninQuantity();
DistributionStockArticleEntity updateEntity = new DistributionStockArticleEntity();
updateEntity.setId(orderId);
updateEntity.setSigninQuantity(signinQuantity+unloadNum);
distributionStockArticleService.updateById(updateEntity);
}
}

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

@ -307,6 +307,30 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
}
List<DistributionDeliveryListEntity> distributionDeliveryListEntities = baseMapper.selectDistributionDeliveryListPage(page, distributionDeliveryList);
// 获取集合中 kind =2 的id集合
List<Long> ids = distributionDeliveryListEntities.stream().filter(item -> "2".equals(item.getKind())).map(DistributionDeliveryListEntity::getId).collect(Collectors.toList());
if(!ids.isEmpty()){
// 关联查询所有的三方配送信息表
LambdaQueryWrapper<DistributionDeliveryTripartiteEntity> wrapper = new LambdaQueryWrapper<>();
wrapper.in(DistributionDeliveryTripartiteEntity::getDeliveryId, ids);
List<DistributionDeliveryTripartiteEntity> distributionDeliveryTripartiteEntities = distributionDeliveryTripartiteService.list(wrapper);
for (DistributionDeliveryListEntity distributionDeliveryListEntity : distributionDeliveryListEntities) {
if(Objects.equals( "2",distributionDeliveryListEntity.getKind())){
// 在集合 distributionDeliveryTripartiteEntities 中寻找 distributionDeliveryListEntity的ID相同的
DistributionDeliveryTripartiteEntity tripartiteEntity = distributionDeliveryTripartiteEntities.stream().filter(item -> item.getDeliveryId().equals(distributionDeliveryListEntity.getId())).findFirst().orElse(null);
if(tripartiteEntity != null){
// 保留2为小数
if(tripartiteEntity.getDeliveryFee()!=null){
distributionDeliveryListEntity.setPrice(tripartiteEntity.getDeliveryFee().setScale(2));
}
}
}
}
}
return page.setRecords(distributionDeliveryListEntities);
}
@ -336,6 +360,34 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib
distributionDeliveryList.put("warehouseIds", ids);
}
List<DistributionDeliveryListExcel> distributionDeliveryListExcels = baseMapper.exportDistributionDeliveryList(distributionDeliveryList);
// 获取集合中 kind =2 的id集合
List<Long> ids = distributionDeliveryListExcels.stream().filter(item -> "三方配送".equals(item.getKind())).map(DistributionDeliveryListExcel::getId).collect(Collectors.toList());
if(!ids.isEmpty()){
// 关联查询所有的三方配送信息表
LambdaQueryWrapper<DistributionDeliveryTripartiteEntity> wrapper = new LambdaQueryWrapper<>();
wrapper.in(DistributionDeliveryTripartiteEntity::getDeliveryId, ids);
List<DistributionDeliveryTripartiteEntity> distributionDeliveryTripartiteEntities = distributionDeliveryTripartiteService.list(wrapper);
for (DistributionDeliveryListExcel distributionDeliveryListEntity : distributionDeliveryListExcels) {
if(Objects.equals( "三方配送",distributionDeliveryListEntity.getKind())){
// 在集合 distributionDeliveryTripartiteEntities 中寻找 distributionDeliveryListEntity的ID相同的
DistributionDeliveryTripartiteEntity tripartiteEntity = distributionDeliveryTripartiteEntities.stream().filter(item -> item.getDeliveryId().equals(distributionDeliveryListEntity.getId())).findFirst().orElse(null);
if(tripartiteEntity != null){
// 保留2为小数
if(tripartiteEntity.getDeliveryFee()!=null){
distributionDeliveryListEntity.setPrice(tripartiteEntity.getDeliveryFee().setScale(2));
}
}
}
}
}
return distributionDeliveryListExcels;
}

3
blade-service/logpm-factory-data/logpm-factory-data-zbom/src/main/java/com/logpm/factorydata/zbom/service/impl/ReceiptServiceImpl.java

@ -27,6 +27,7 @@ import cn.hutool.json.JSONUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.logpm.factorydata.base.feign.IFactoryDataBaseClient;
import com.logpm.factorydata.base.vo.FactoryWarehouseBindVO;
import com.logpm.factorydata.enums.BrandEnums;
import com.logpm.factorydata.feign.IFactoryDataClient;
import com.logpm.factorydata.vo.SendMsg;
import com.logpm.factorydata.zbom.entity.ZbCategoryContrastEntity;
@ -88,7 +89,7 @@ public class ReceiptServiceImpl extends BaseServiceImpl<ReceiptMapper, ZbReceipt
String startWarehouseName = null;
String tenantId = null;
// 获取工厂基地绑定的始发仓信息
R<FactoryWarehouseBindVO> warehouseByBrandAndSiteName = baseClient.getWarehouseByBrandAndSiteName(zbReceiptDTO.getSenderName(), zbReceiptDTO.getSenderName());
R<FactoryWarehouseBindVO> warehouseByBrandAndSiteName = baseClient.getWarehouseByBrandAndSiteName(BrandEnums.ZB.getValue(), zbReceiptDTO.getSenderCity());
if (ObjectUtil.equal(HttpConstants.HTTP.HTTP_RESOURCE_CODE.SUCCESS_CODE, warehouseByBrandAndSiteName.getCode())) {
FactoryWarehouseBindVO data = warehouseByBrandAndSiteName.getData();
if (ObjectUtil.isNotNull(data)) {

14
blade-service/logpm-factory/src/main/java/com/logpm/factory/comfac/service/impl/AsyncDataServiceImpl.java

@ -96,6 +96,7 @@ public class AsyncDataServiceImpl implements IAsyncDataService {
private final IAdvanceDetailClient advanceDetailClient;
private final IServiceNumClient serviceNumClient;
private final IDetailProductClient detailProductClient;
private final IFactoryDataBaseClient factoryDataBaseClient;
/* pan */
private final IPanFactoryOrderService panFactoryOrderService;
private final IPanPackageInfoService panPackageInfoService;
@ -128,7 +129,6 @@ public class AsyncDataServiceImpl implements IAsyncDataService {
private final OuPaiProperties ouPaiProperties;
private final IFactoryDataBaseClient factoryDataBaseClient;
private final IFactoryDataClient factoryDataClient;
/**
@ -1489,10 +1489,16 @@ public class AsyncDataServiceImpl implements IAsyncDataService {
private AdvanceEntity saveAdvanceInfor(ZbOrderPackageEntity serviceNumEntity, List<ZbOrderPackageEntity> zbOrderPackageEntityList) {
Long orderId = serviceNumEntity.getId();
log.info("#########handlerDataToHt: 当前处理的订单id={}", orderId);
Integer warehouseId = 54;
// 查询订单对应的发货单
ZbReceiptEntity zbReceiptEntity = findZbReceiptEntityUseCacheById(serviceNumEntity.getReceiptId());
R<FactoryWarehouseBindVO> r = factoryDataBaseClient.getWarehouseByBrandAndSiteName(BrandEnums.ZB.getValue(), zbReceiptEntity.getSenderCity());
if(r.isSuccess()){
FactoryWarehouseBindVO data = r.getData();
if(ObjectUtil.isNotEmpty(data) && ObjectUtil.isNotEmpty(data.getOldWarehouseId())){
warehouseId = Convert.toInt(data.getWarehouseId());
}
}
AdvanceEntity advanceEntity = findAdvanceEntityUseCacheByOrderSelfNumAndReceiptId(serviceNumEntity.getReceiptId(), serviceNumEntity.getPlatformOrderCode(), zbReceiptEntity.getDepartCode());
if (ObjectUtils.isNotNull(advanceEntity)) {
return advanceEntity;
@ -1541,7 +1547,7 @@ public class AsyncDataServiceImpl implements IAsyncDataService {
advanceEntity.setCarsNum(""); //派车单--snm 可以为空
advanceEntity.setDeleteTime(0); // 删除时间
advanceEntity.setWaybillNo("");//运单号 可以为空
Integer warehouseId = 54;
advanceEntity.setWarehouseId(warehouseId); //导入人仓库id
advanceEntity.setWaybillStatus(Integer.parseInt("1"));//开单状态:1=未开单,2=已开单

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

@ -404,6 +404,8 @@
ltcl.cars_no carsNo,
ltcl.carrier_name carrierName,
ltcl.carrier_time carrierTime,
ltcl.driver_name driverName,
ltcl.driver_mobile driverMobile,
ltcl.pay_method payMethod,
ltcl.count_transport_cost countTransportCost,
ltcl.replace_price replacePrice,

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

@ -451,7 +451,7 @@
lww.consignee_mobile consigneeMobile,
IFNULL(ltco.plan_num,0) AS planNum,
sum(case when ltcls.scan_status != 1 then ltcls.num else 0 end) unloadNum,
sum( ltcls.num ) AS smallTota
IFNULL(sum( ltcls.num ),0) AS smallTotal
from logpm_trunkline_cars_load_scan ltcls
left join logpm_trunkline_cars_order ltco on ltco.order_code = ltcls.order_code and ltco.waybill_no = ltcls.waybill_no and ltco.load_id = ltcls.load_id and ltco.node_id = ltcls.warehouse_id
left join logpm_distribution_stock_article ldsa on ldsa.order_code = ltcls.order_code and ldsa.warehouse_id = ltcls.from_warehouse_id

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

@ -2958,10 +2958,13 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
trunklineCarsLoadScanService.save(carsLoadScanEntity);
loadScanId = carsLoadScanEntity.getId();
List<String> orderPackageCodes = new ArrayList<>();
orderPackageCodes.add(orderPackageCode);
String content = "包件在 " + warehouseName + " " + (StringUtil.isBlank(trayName) ? "扫码" : "托盘(" + trayName + ")") + " 装车, 车次号:"+loadCode+" ,配载计划目的仓 " + carsLoadScanEntity.getFinalNodeName() + ",数据来源仓库 " + fromWarehouseName;
packageTrackLogAsyncService.addPackageTrackLog(AuthUtil.getTenantId(), AuthUtil.getUserId(), Func.firstLong(AuthUtil.getDeptId()), AuthUtil.getNickName(), orderPackageCodes, warehouseId, warehouseName, WorkNodeEnums.INITIAL_WAREHOUSE_LOADING.getCode(), content);
String loadType = carsLoadEntity.getLoadType();
if(!"4".equals(loadType)){
List<String> orderPackageCodes = new ArrayList<>();
orderPackageCodes.add(orderPackageCode);
String content = "包件在 " + warehouseName + " " + (StringUtil.isBlank(trayName) ? "扫码" : "托盘(" + trayName + ")") + " 装车, 车次号:"+loadCode+" ,配载计划目的仓 " + carsLoadScanEntity.getFinalNodeName() + ",数据来源仓库 " + fromWarehouseName;
packageTrackLogAsyncService.addPackageTrackLog(AuthUtil.getTenantId(), AuthUtil.getUserId(), Func.firstLong(AuthUtil.getDeptId()), AuthUtil.getNickName(), orderPackageCodes, warehouseId, warehouseName, WorkNodeEnums.INITIAL_WAREHOUSE_LOADING.getCode(), content);
}
trunklineCarsLoadingLogService.savaLoadingLog(warehouseId, warehouseName, loadId, loadCode, waybillId, waybillNo, orderCode, orderPackageCode, 1,
1, isData, isAbnormal, trayId, trayCode, trayName, fromWarehouseId, loadScanId, remark);
@ -4329,10 +4332,10 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
Long waybillId = carsLoadScanEntity.getWaybillId();
String scanCode = carsLoadScanEntity.getScanCode();
Long loadScanId = carsLoadScanEntity.getId();
if (!Objects.equals(enterNum, num)) {
log.warn("#############transferUnloadZero: 零担信息卸车数量不正确 enterNun={} num={}", enterNum, num);
return R.fail(405, "零担信息卸车数量不正确");
}
// if (!Objects.equals(enterNum, num)) {
// log.warn("#############transferUnloadZero: 零担信息卸车数量不正确 enterNun={} num={}", enterNum, num);
// return R.fail(405, "零担信息卸车数量不正确");
// }
carsLoadScanEntity.setUnloadNum(enterNum);
carsLoadScanEntity.setUnloadNodeId(warehouseId);
@ -5680,11 +5683,11 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
//重新计算签收单的数量
updateSignOrderNumBySignOrderId(signOrderId);
Long waybillId = carsLoadScanEntity.getWaybillId();
if(!Objects.isNull(waybillId)){
WarehouseWaybillEntity waybillEntity = warehouseWaybillClient.findByWaybillId(waybillId);
waybillPackageService.updateWaybillStatus(waybillEntity);
}
// Long waybillId = carsLoadScanEntity.getWaybillId();
// if(!Objects.isNull(waybillId)){
// WarehouseWaybillEntity waybillEntity = warehouseWaybillClient.findByWaybillId(waybillId);
// waybillPackageService.updateWaybillStatus(waybillEntity);
// }
// return Resp.scanSuccess("签收成功",enterNum+"件");
return R.success("签收成功");
@ -6523,11 +6526,12 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
Integer unloadNum = carsLoadScanEntity.getUnloadNum();
String orderCode = carsLoadScanEntity.getOrderCode();
Long fromWarehouseId = carsLoadScanEntity.getFromWarehouseId();
DistributionStockArticleEntity stockArticle = distributionStockArticleClient.findZeroByOrderCodeAndWarehouseId(orderCode, fromWarehouseId);
if(unloadNum != num){
int diff = num - unloadNum;
DistributionStockArticleEntity stockArticle = distributionStockArticleClient.findZeroByOrderCodeAndWarehouseId(orderCode, fromWarehouseId);
distributionStockArticleClient.addHandQuantity(stockArticle.getId(), diff);
}
distributionStockArticleClient.addSignNum(stockArticle.getId(),unloadNum);
});
trunklineLoadSignOrderService.updateById(signOrderEntity);

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

@ -3,7 +3,6 @@ package com.logpm.trunkline.service.impl;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.logpm.trunkline.dto.OpenOrderDTO;
import com.logpm.trunkline.dto.WaybillLogDTO;
import com.logpm.trunkline.entity.TrunklineWaybillOrderEntity;
import com.logpm.trunkline.entity.TrunklineWaybillTrackEntity;
import com.logpm.trunkline.mapper.TrunklineWaybillTrackMapper;
import com.logpm.trunkline.service.IOpenOrderAsyncService;
@ -22,7 +21,6 @@ import org.springframework.stereotype.Service;
import java.util.Date;
import java.util.List;
import java.util.Objects;
@Slf4j
@Service
@ -116,39 +114,41 @@ public class TrunklineWaybillTrackServiceImpl extends BaseServiceImpl<TrunklineW
//存入签收日志
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);
if(type != 2){
//需要更新运单的状态
TrunklineWaybillOrderEntity waybillOrderEntity = waybillOrderService.findEntityByWaybillNoAndOrderCode(waybillNo, waybillNo);
if(!Objects.isNull(waybillOrderEntity)){
int waybillStatusInt = Integer.parseInt(warehouseWaybillEntity.getWaybillStatus());
Integer totalCount = warehouseWaybillEntity.getTotalCount();
Integer handleNumber = waybillOrderEntity.getHandleNumber();
int i = handleNumber + num;
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){
warehouseWaybillEntity.setWaybillStatus("100");
waybillOrderEntity.setHandleNumber(i);
}else{
waybillOrderEntity.setHandleNumber(i);
}
warehouseWaybillClient.updateEntity(warehouseWaybillEntity);
waybillOrderService.updateById(waybillOrderEntity);
}
}
}else{
trunklineWaybillPackageService.updateWaybillStatus(warehouseWaybillEntity);
}
trunklineWaybillPackageService.updateWaybillStatus(warehouseWaybillEntity);
// if(type != 2){
//
// //需要更新运单的状态
// TrunklineWaybillOrderEntity waybillOrderEntity = waybillOrderService.findEntityByWaybillNoAndOrderCode(waybillNo, waybillNo);
// if(!Objects.isNull(waybillOrderEntity)){
// int waybillStatusInt = Integer.parseInt(warehouseWaybillEntity.getWaybillStatus());
// Integer totalCount = warehouseWaybillEntity.getTotalCount();
// Integer handleNumber = waybillOrderEntity.getHandleNumber();
// int i = handleNumber + num;
// 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){
// warehouseWaybillEntity.setWaybillStatus("100");
// waybillOrderEntity.setHandleNumber(i);
// }else{
// waybillOrderEntity.setHandleNumber(i);
// }
// warehouseWaybillClient.updateEntity(warehouseWaybillEntity);
// waybillOrderService.updateById(waybillOrderEntity);
// }
// }
// }else{
// trunklineWaybillPackageService.updateWaybillStatus(warehouseWaybillEntity);
// }
}
private void addPackageWaybillTrackLog(WaybillLogDTO waybillLogDTO,Long waybillId) {

Loading…
Cancel
Save