From 98c85c10201e1828be6f4e154f3312eaf321839a Mon Sep 17 00:00:00 2001 From: "pref_mail@163.com" <pref_mail@163.com> Date: Mon, 24 Jun 2024 18:09:06 +0800 Subject: [PATCH] =?UTF-8?q?=E9=97=AD=E7=8E=AF=E5=B9=B2=E4=BB=93=E9=85=8D?= =?UTF-8?q?=E7=A7=9F=E6=88=B7=E7=9A=84=E4=BD=9C=E4=B8=9A=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/constant/RedisKeyConstant.java | 2 +- .../feign/IBasicdataDriverArteryClient.java | 3 ++ .../IDistributionDeliveryListClient.java | 2 +- .../feign/BasicdataDriverArteryClient.java | 5 ++ .../service/IBusinessAsyncService.java | 2 + .../impl/BusinessAsyncServiceImpl.java | 4 ++ .../impl/BusinessPreOrderServiceImpl.java | 23 ++++++--- .../feign/DistributionDeliveryListClient.java | 4 +- .../IDistributionDeliveryListService.java | 1 + .../DistributionDeliveryListServiceImpl.java | 49 +++++++++++-------- 10 files changed, 65 insertions(+), 30 deletions(-) diff --git a/blade-biz-common/src/main/java/org/springblade/common/constant/RedisKeyConstant.java b/blade-biz-common/src/main/java/org/springblade/common/constant/RedisKeyConstant.java index 62581c566..b592df783 100644 --- a/blade-biz-common/src/main/java/org/springblade/common/constant/RedisKeyConstant.java +++ b/blade-biz-common/src/main/java/org/springblade/common/constant/RedisKeyConstant.java @@ -28,7 +28,7 @@ public class RedisKeyConstant { /** * 异常件数 */ - public static final String BUSINESS_INEXCE_CARNUMBER ="business:in:carnumber:"; + public static final String BUSINESS_INEXCE_CARNUMBER ="business:inexce:carnumber:"; } diff --git a/blade-service-api/logpm-basicdata-api/src/main/java/com/logpm/basicdata/feign/IBasicdataDriverArteryClient.java b/blade-service-api/logpm-basicdata-api/src/main/java/com/logpm/basicdata/feign/IBasicdataDriverArteryClient.java index f443a4db1..72602fafa 100644 --- a/blade-service-api/logpm-basicdata-api/src/main/java/com/logpm/basicdata/feign/IBasicdataDriverArteryClient.java +++ b/blade-service-api/logpm-basicdata-api/src/main/java/com/logpm/basicdata/feign/IBasicdataDriverArteryClient.java @@ -60,4 +60,7 @@ public interface IBasicdataDriverArteryClient { @GetMapping(API_PREFIX+"/findDriverListByName") List<JSONObject> findDriverListByName(@RequestParam String driverName); + + @GetMapping(API_PREFIX+"/getDriverArteryById") + BasicdataDriverArteryEntity getDriverArteryById(Long id); } diff --git a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/feign/IDistributionDeliveryListClient.java b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/feign/IDistributionDeliveryListClient.java index 70314e926..a9499e68a 100644 --- a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/feign/IDistributionDeliveryListClient.java +++ b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/feign/IDistributionDeliveryListClient.java @@ -132,7 +132,7 @@ public interface IDistributionDeliveryListClient { void pushNotification(@RequestParam("warehouseIds")String warehouseIds,@RequestParam("reservationCode")String reservationCode); @GetMapping(TOP+"/mallClientSignfor") - void mallClientSignfor(@RequestParam("trainNumber")String trainNumber,@RequestParam("warehouseId")Long warehouseId,@RequestParam("orderPackageCode")String orderPackageCode); + void mallClientSignfor(@RequestParam("tenantId") String tenantId,@RequestParam("trainNumber")String trainNumber,@RequestParam("warehouseId")Long warehouseId,@RequestParam("orderPackageCode")String orderPackageCode,@RequestParam("nowTenantId")String nowTenantId); // /** diff --git a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/feign/BasicdataDriverArteryClient.java b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/feign/BasicdataDriverArteryClient.java index 52c4e2936..c88cda213 100644 --- a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/feign/BasicdataDriverArteryClient.java +++ b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/feign/BasicdataDriverArteryClient.java @@ -82,4 +82,9 @@ public class BasicdataDriverArteryClient implements IBasicdataDriverArteryClient return list; } + @Override + public BasicdataDriverArteryEntity getDriverArteryById(Long id) { + return basicdataDriverArteryService.getById(id); + } + } diff --git a/blade-service/logpm-business/src/main/java/com/logpm/business/service/IBusinessAsyncService.java b/blade-service/logpm-business/src/main/java/com/logpm/business/service/IBusinessAsyncService.java index fb565f6b7..e5d6996c8 100644 --- a/blade-service/logpm-business/src/main/java/com/logpm/business/service/IBusinessAsyncService.java +++ b/blade-service/logpm-business/src/main/java/com/logpm/business/service/IBusinessAsyncService.java @@ -8,4 +8,6 @@ import java.util.List; public interface IBusinessAsyncService { public void saveOtherDataBaseNew(String tenantId, List<BusinessPreOrderEntity> dataResult, String mallName); + + } diff --git a/blade-service/logpm-business/src/main/java/com/logpm/business/service/impl/BusinessAsyncServiceImpl.java b/blade-service/logpm-business/src/main/java/com/logpm/business/service/impl/BusinessAsyncServiceImpl.java index b8ea888d3..01572de3e 100644 --- a/blade-service/logpm-business/src/main/java/com/logpm/business/service/impl/BusinessAsyncServiceImpl.java +++ b/blade-service/logpm-business/src/main/java/com/logpm/business/service/impl/BusinessAsyncServiceImpl.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.logpm.business.entity.BusinessPreOrderEntity; import com.logpm.business.service.IBusinessAsyncService; import com.logpm.business.service.IBusinessPreOrderService; +import com.logpm.distribution.feign.IDistributionDeliveryListClient; import lombok.AllArgsConstructor; import lombok.extern.log4j.Log4j2; import org.springblade.common.annotations.ChangeAsync; @@ -24,6 +25,7 @@ public class BusinessAsyncServiceImpl implements IBusinessAsyncService { private final IBusinessPreOrderService businessPreOrderService; private final ISysClient sysClient; + private final IDistributionDeliveryListClient distributionDeliveryListClient; @ChangeAsync() @Override @@ -80,4 +82,6 @@ public class BusinessAsyncServiceImpl implements IBusinessAsyncService { } } + + } diff --git a/blade-service/logpm-business/src/main/java/com/logpm/business/service/impl/BusinessPreOrderServiceImpl.java b/blade-service/logpm-business/src/main/java/com/logpm/business/service/impl/BusinessPreOrderServiceImpl.java index acef10564..751af971b 100644 --- a/blade-service/logpm-business/src/main/java/com/logpm/business/service/impl/BusinessPreOrderServiceImpl.java +++ b/blade-service/logpm-business/src/main/java/com/logpm/business/service/impl/BusinessPreOrderServiceImpl.java @@ -13,9 +13,11 @@ import com.logpm.business.dto.BusinessPreOrderDTO; import com.logpm.business.dto.BusinessSanDTO; import com.logpm.business.entity.BusinessPreOrderEntity; import com.logpm.business.mapper.BusinessPreOrderMapper; +import com.logpm.business.service.IBusinessAsyncService; import com.logpm.business.service.IBusinessPreOrderService; import com.logpm.business.vo.*; import com.logpm.distribution.entity.DistributionParcelListEntity; +import com.logpm.distribution.feign.IDistributionDeliveryListClient; import com.logpm.distribution.feign.IDistributionParcelListClient; import com.logpm.trunkline.dto.InComingDTO; import com.logpm.trunkline.entity.TrunklineAdvanceDetailEntity; @@ -32,6 +34,7 @@ import org.springblade.common.exception.CustomerException; import org.springblade.core.log.exception.ServiceException; import org.springblade.core.mp.base.BaseServiceImpl; import org.springblade.core.redis.cache.BladeRedis; +import org.springblade.core.secure.utils.AuthUtil; import org.springblade.core.tool.api.R; import org.springblade.core.tool.utils.BeanUtil; import org.springblade.core.tool.utils.Func; @@ -51,9 +54,8 @@ public class BusinessPreOrderServiceImpl extends BaseServiceImpl<BusinessPreOrde private final IInComingClient inComingClient; private final ITrunklineAdvanceDetailClient trunklineAdvanceDetailClient; private final BladeRedis bladeRedis; - private final IDistributionParcelListClient distributionParcelListClient; private final IWarehouseTrayTypeClient warehouseTrayTypeClient; - + private final IDistributionDeliveryListClient distributionDeliveryListClient; @@ -78,7 +80,6 @@ public class BusinessPreOrderServiceImpl extends BaseServiceImpl<BusinessPreOrde List<BusinessPreOrderEntity> list = baseMapper.selectList(wrapper); List<BusinessPreOrderEntity> data = new ArrayList<>(); - List<String> carNumberList = new ArrayList<>(); for (BusinessPreOrderEntity distributionBusinessPreOrderEntity : list) { if (distributionBusinessPreOrderEntity.getInWarehouse() == 1) { @@ -320,7 +321,7 @@ public class BusinessPreOrderServiceImpl extends BaseServiceImpl<BusinessPreOrde } }else{ - String key =RedisKeyConstant.BUSINESS_IN_CARNUMBER + businessSanDTO.getDistrCarNumber()+":"+businessSanDTO.getTrayCode(); + String key =RedisKeyConstant.BUSINESS_IN_CARNUMBER +businessSanDTO.getTrayCode(); Object o = bladeRedis.get(key); if (Objects.isNull(o)) { @@ -342,6 +343,10 @@ public class BusinessPreOrderServiceImpl extends BaseServiceImpl<BusinessPreOrde } + // 推送业务系统 + + distributionDeliveryListClient.mallClientSignfor(selectD.getFromTenantId(), businessSanDTO.getDistrCarNumber(), selectD.getAcceptWarehouseId(), orderPackageCode, AuthUtil.getTenantId()); + return Resp.scanSuccess("扫描成功", a + "件"); } @@ -372,6 +377,10 @@ public class BusinessPreOrderServiceImpl extends BaseServiceImpl<BusinessPreOrde t.setFromTenantId(distributionBusinessPreOrderEntity.getFromTenantId()); t.setOperationStatus(1); t.setInWarehouse(0); + t.setAcceptWarehouseId(distributionBusinessPreOrderEntity.getAcceptWarehouseId()); + t.setAcceptWarehouseName(distributionBusinessPreOrderEntity.getAcceptWarehouseName()); + t.setSendWarehouseId(distributionBusinessPreOrderEntity.getSendWarehouseId()); + t.setSendWarehouseName(distributionBusinessPreOrderEntity.getSendWarehouseName()); this.save(t); } R r = inOrderWarehourseByFeign(businessSanDTO); @@ -383,7 +392,7 @@ public class BusinessPreOrderServiceImpl extends BaseServiceImpl<BusinessPreOrde if(StringUtil.isNotBlank(businessSanDTO.getTrayCode())){ - String key =RedisKeyConstant.BUSINESS_IN_CARNUMBER + businessSanDTO.getDistrCarNumber()+":"+businessSanDTO.getTrayCode(); + String key =RedisKeyConstant.BUSINESS_IN_CARNUMBER +businessSanDTO.getTrayCode(); Object o = bladeRedis.get(key); if (Objects.isNull(o)) { @@ -404,7 +413,7 @@ public class BusinessPreOrderServiceImpl extends BaseServiceImpl<BusinessPreOrde }else{ //记录当前车次的异常件数 Object o = bladeRedis.get(RedisKeyConstant.BUSINESS_INEXCE_CARNUMBER + businessSanDTO.getDistrCarNumber()); - String key =RedisKeyConstant.BUSINESS_INEXCE_CARNUMBER + businessSanDTO.getDistrCarNumber()+businessSanDTO.getTrayCode(); + String key =RedisKeyConstant.BUSINESS_INEXCE_CARNUMBER +businessSanDTO.getTrayCode(); if (Objects.isNull(o)) { // 查询当前车次的异常入库数量 @@ -427,7 +436,9 @@ public class BusinessPreOrderServiceImpl extends BaseServiceImpl<BusinessPreOrde } } + // 推送业务系统 + distributionDeliveryListClient.mallClientSignfor(t.getFromTenantId(), businessSanDTO.getDistrCarNumber(), t.getAcceptWarehouseId(), orderPackageCode, AuthUtil.getTenantId()); return Resp.scanSuccess("扫描成功", "异常" + a + "件"); } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/feign/DistributionDeliveryListClient.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/feign/DistributionDeliveryListClient.java index add513e94..7ca58634b 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/feign/DistributionDeliveryListClient.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/feign/DistributionDeliveryListClient.java @@ -27,6 +27,7 @@ import com.logpm.distribution.vo.DistributionDeliverySelfVO; import com.logpm.distribution.vo.DistributionRetentionScanVo; import lombok.AllArgsConstructor; import org.apache.logging.log4j.util.Strings; +import org.springblade.common.annotations.ChangeAsync; import org.springblade.core.mp.support.BladePage; import org.springblade.core.mp.support.Condition; import org.springblade.core.mp.support.Query; @@ -129,8 +130,9 @@ public class DistributionDeliveryListClient implements IDistributionDeliveryList /** * @param */ + @ChangeAsync @Override - public void mallClientSignfor(String trainNumber,Long warehouseId,String orderPackageCode) { + public void mallClientSignfor(String tenantId,String trainNumber,Long warehouseId,String orderPackageCode,String nowTenantId) { distributionDeliveryListService.mallClientSignfor(trainNumber,warehouseId,orderPackageCode); } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionDeliveryListService.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionDeliveryListService.java index eb04df5fa..1be24666b 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionDeliveryListService.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionDeliveryListService.java @@ -464,6 +464,7 @@ public interface IDistributionDeliveryListService extends BaseService<Distributi void mallClientSignfor(String trainNumber, Long warehouseId, String orderPackageCode); + /** * 查询签收预约客户包件信息 * @param reservationId diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java index 66c7a8f1d..7201c088b 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java @@ -249,6 +249,9 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib @Autowired private IUserClient userClient; + @Autowired + private IBasicdataDriverArteryClient arteryClient; + // private final IWarehouseRetentionScanClient warehouseRetentionScanClient; // @Lazy @@ -7235,6 +7238,7 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib } @Override + @Transactional public void mallClientSignfor(String trainNumber, Long warehouseId, String orderPackageCode) { //查询包件是否合法 DistributionParcelListEntity packageObj = distributionParcelListService.getOne(Wrappers.<DistributionParcelListEntity>query().lambda() @@ -7265,7 +7269,7 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib log.error("仓库查询错误"); } - DistributionStockArticleEntity stockArticleEntity = distributionStockArticleService.getById(packageObj.getId()); + DistributionStockArticleEntity stockArticleEntity = distributionStockArticleService.getById(packageObj.getStockArticleId()); if (Func.isEmpty(stockArticleEntity)) { //订单查询错误 log.error("订单查询错误"); @@ -7315,7 +7319,7 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib .eq(DistributionLoadscanEntity::getSignforState, LoadScanSigningStatusConstant.weiqianshou.getValue()) .ne(DistributionLoadscanEntity::getScanStatus, LoadingStatusConstant.quxiao.getValue()) ); - if (Func.isEmpty(loadscanEntity)) { + if (!Func.isEmpty(loadscanEntity)) { //存在装车数据 loadscanEntity.setSigningTime(simpleDateFormat.format(new Date())); loadscanEntity.setSignforState(2); @@ -7389,7 +7393,7 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib Integer m = distributionSignforMapper.updateSignUser(distributionLoadscanEntity.getDeliveryId(), distributionLoadscanEntity.getReservationId(), user); //包件解托下架 warehouseUpdownTypeClient.downPackageOrDelTray(packageObj.getOrderPackageCode(), warehouseId, "签收下架解托"); - content = "包件在" + entityWarehouseId.getName() + "由" + loadscanEntity.getSigningUser() + "扫描签收,签收方式:司机未进行装车,由商家端进行签收,配送车次号:" + deliveryListEntity.getTrainNumber() + "预约任务号:" + reservationEntity.getReservationCode(); + content = "包件在" + entityWarehouseId.getName() + "由" + distributionLoadscanEntity.getSigningUser() + "扫描签收,签收方式:司机未进行装车,由商家端进行签收,配送车次号:" + deliveryListEntity.getTrainNumber() + "预约任务号:" + reservationEntity.getReservationCode(); } } } else { @@ -7521,7 +7525,6 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib packageObj.setOrderPackageStatus(OrderPackageStatusConstant.yiqianshou.getValue()); distributionParcelListService.updateById(packageObj); //下架解托 - Map<String, Object> info = new HashMap<>(); warehouseUpdownTypeClient.downPackageAndDelTrayAndIsUpdate(packageObj.getOrderPackageCode(), entityWarehouseId.getId(), "扫描装车进行下架、解托", false); //维护订单 distributionStockArticleService.maintenanceOrderInfo(stockArticleEntity.getOrderCode(),warehouseId); @@ -7674,23 +7677,27 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl<Distrib private List<JSONObject> handleMallLogJSONObject(BasicdataWarehouseEntity warehouse, Long userId, String orderPackageCode, String content, Integer node) { List<JSONObject> trunklinePackageTrackLog = new ArrayList<>(); JSONObject js = new JSONObject(); - R<User> userR = userClient.userInfoById(userId); - User user = userR.getData(); - js.put("tenantId", user.getTenantId()); - js.put("createTime", new Date()); - js.put("createUser", user.getId()); - js.put("updateUser", user.getId()); - js.put("updateTime", new Date()); - js.put("isDeleted", 0); - js.put("status", 1); - js.put("createDept", warehouse.getDepartment()); - js.put("orderPackageCode", orderPackageCode); - js.put("warehouseId", warehouse.getId()); - js.put("warehouseName", warehouse.getName()); - js.put("workNode", node); - js.put("content", content); - js.put("operator", user.getName()); - trunklinePackageTrackLog.add(js); + //查询司机用户 + BasicdataDriverArteryEntity driverArtery = arteryClient.getDriverArteryById(userId); + if (!Func.isEmpty(driverArtery)){ + R<User> userR = userClient.userInfoById(driverArtery.getUserId()); + User user = userR.getData(); + js.put("tenantId", user.getTenantId()); + js.put("createTime", new Date()); + js.put("createUser", user.getId()); + js.put("updateUser", user.getId()); + js.put("updateTime", new Date()); + js.put("isDeleted", 0); + js.put("status", 1); + js.put("createDept", warehouse.getDepartment()); + js.put("orderPackageCode", orderPackageCode); + js.put("warehouseId", warehouse.getId()); + js.put("warehouseName", warehouse.getName()); + js.put("workNode", node); + js.put("content", content); + js.put("operator", user.getName()); + trunklinePackageTrackLog.add(js); + } return trunklinePackageTrackLog; } }