diff --git a/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/feign/IWarehouseGoodsAllocationClient.java b/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/feign/IWarehouseGoodsAllocationClient.java index 67d73ee3a..53fe7bebb 100644 --- a/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/feign/IWarehouseGoodsAllocationClient.java +++ b/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/feign/IWarehouseGoodsAllocationClient.java @@ -56,7 +56,7 @@ public interface IWarehouseGoodsAllocationClient { /** - * 跟新货位缓存 + * 查询货位信息 */ @GetMapping(TOP+ "/getAllocationInforByIds") List getAllocationInforByIds(@RequestParam("ids") String [] ids); diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionStockListController.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionStockListController.java index 73d095ac0..1bb29eab6 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionStockListController.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionStockListController.java @@ -275,12 +275,23 @@ public class DistributionStockListController extends BladeController { */ @GetMapping("/packageList") @ApiOperationSupport(order = 7) - @ApiOperation(value = "逻辑删除", notes = "传入ids") + @ApiOperation(value = "获取批量在库订单信息", notes = "传入ids") public R getPackageList(@RequestParam String id) { R> result = distributionStockListService.getPackageList(id); return result; } + /** + * 获取批量在库订单信息 + */ + @GetMapping("/findStockListAllocation") + @ApiOperationSupport(order = 7) + @ApiOperation(value = "查询库存品的库位信息", notes = "传入ids") + public R findStockListAllocation(@RequestParam String sourceType,@RequestParam Long marketId,@RequestParam String materielCode) { + R result = distributionStockListService.findStockListAllocation(sourceType,marketId,materielCode); + return result; + } + // /** // * 查询库存品详情 // */ diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockListMapper.xml b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockListMapper.xml index a1697f7f5..8ac7206aa 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockListMapper.xml +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockListMapper.xml @@ -84,6 +84,7 @@ ldsi.market_id marketId,ldsi.store_id storeId,ldsi.material_id materialId,ldsi.id, ( select CONCAT(GROUP_CONCAT(lwtg.tray_code SEPARATOR ','), ',(', SUM(lwtg.num), ') ') from logpm_warehouse_tray_goods lwtg where ldsi.market_id = lwtg.market_id and lwtg.association_id = ldsi.material_id ) trayQuantity, + ldsi.source_type AS sourceType, (select package_num from logpm_basicdata_material where id = material_id) packageNum from logpm_distribution_stock_list ldsi diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionStockListService.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionStockListService.java index cbb0911c2..b9650dab5 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionStockListService.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionStockListService.java @@ -205,6 +205,15 @@ public interface IDistributionStockListService extends BaseService getListByMarketIdAndSku(Long mallId, String sku, Long warehouseId); + /** + * 查询库存品库位信息 + * @param sourceType + * @param marketId + * @param materielCode + * @return + */ + R findStockListAllocation(String sourceType, Long marketId, String materielCode); + // /** // * 查询库存品详情 diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionReservationServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionReservationServiceImpl.java index 7e7977684..f20979576 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionReservationServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionReservationServiceImpl.java @@ -2689,15 +2689,15 @@ public class DistributionReservationServiceImpl extends BaseServiceImpl> mapList = new ArrayList<>(); + switch (sourceType){ + case "1": + //有数据 + break; + case "2": + //无数据 + WarehouseUpdownGoodsEntity warehouseUpdownGoodsEntity = new WarehouseUpdownGoodsEntity(); + warehouseUpdownGoodsEntity.setAssociationValue(materielCode); + warehouseUpdownGoodsEntity.setMarketId(marketId); + warehouseUpdownGoodsEntity.setAssociationType("4"); + warehouseUpdownGoodsEntity.setWarehouseId(myCurrentWarehouse.getId()); + List locationStockListInformation = warehouseUpdownGoodsClient.getLocationStockListInformation(warehouseUpdownGoodsEntity); + if (Func.isNotEmpty(locationStockListInformation)){ + List collect = locationStockListInformation.stream().map(WarehouseUpdownGoodsEntity::getAllocationId).map(String::valueOf).collect(Collectors.toList()); + String[] array = collect.stream().toArray(String[]::new); + List allocationInforByIds = warehouseGoodsAllocationClient.getAllocationInforByIds(array); + Map collected = allocationInforByIds.stream().collect(Collectors.toMap(WarehouseGoodsAllocationEntity::getId, WarehouseGoodsAllocationEntity::getQrCode)); + for (WarehouseUpdownGoodsEntity updownGoodsEntity : locationStockListInformation) { + Map map = new HashMap<>(); + map.put("allocationId",updownGoodsEntity.getAllocationId()); + map.put("allocationName",collected.get(updownGoodsEntity.getAllocationId())); + map.put("handleQuantity",updownGoodsEntity.getNum()); + mapList.add(map); + } + } + return R.data(mapList); + } + + return null; + } + + @Override public OrderPackgeCodeDataVO showInventorySourcePackageCode(String incomingBatch, Long packageIds) throws Exception { OrderPackgeCodeDataVO orderPackgeCodeDataVO = new OrderPackgeCodeDataVO(); diff --git a/blade-service/logpm-patch/src/main/java/com/logpm/patch/jobhandle/SyncOrderInfoToPlatform.java b/blade-service/logpm-patch/src/main/java/com/logpm/patch/jobhandle/SyncOrderInfoToPlatform.java index 47d5fb990..51b0bf05e 100644 --- a/blade-service/logpm-patch/src/main/java/com/logpm/patch/jobhandle/SyncOrderInfoToPlatform.java +++ b/blade-service/logpm-patch/src/main/java/com/logpm/patch/jobhandle/SyncOrderInfoToPlatform.java @@ -4,6 +4,7 @@ import cn.hutool.json.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.logpm.basicdata.entity.BasicdataWarehouseEntity; import com.logpm.basicdata.feign.IBasicdataWarehouseClient; +import com.logpm.distribution.entity.DistributionParcelListEntity; import com.logpm.distribution.entity.DistributionStockArticleEntity; import com.logpm.distribution.feign.IDistributionStockArticleClient; import com.logpm.oldproject.entity.AdvanceDetailEntity; @@ -13,6 +14,7 @@ import com.logpm.oldproject.feign.*; import com.logpm.patch.entity.OrderSyncRecordEntity; import com.logpm.patch.entity.WarehouseMappingDataEntity; import com.logpm.patch.service.IOrderSyncRecordService; +import com.logpm.patch.service.ISyncDistributionParcelListService; import com.logpm.patch.service.ISyncOrderInfoService; import com.logpm.patch.service.IWarehouseMappingDataService; import com.logpm.trunkline.entity.TrunklineAdvanceDetailEntity; @@ -29,9 +31,12 @@ import com.xxl.job.core.biz.model.ReturnT; import com.xxl.job.core.handler.annotation.XxlJob; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.apache.logging.log4j.util.Strings; import org.springblade.common.constant.TenantNum; +import org.springblade.common.constant.orderpackage.*; import org.springblade.common.exception.CustomerException; import org.springblade.common.utils.CommonUtil; +import org.springblade.core.tool.utils.Func; import org.springblade.core.tool.utils.StringUtil; import org.springframework.stereotype.Component; @@ -51,6 +56,7 @@ public class SyncOrderInfoToPlatform { private final IOrderSyncRecordService orderSyncRecordService; private final ISyncOrderInfoService syncOrderInfoService; + private final IDistributionStockArticleClient distributionStockArticleClient; private final ITrunklineWaybillOrderClient waybillOrderClient; private final ITrunklineAdvanceClient trunklineAdvanceClient; @@ -62,7 +68,6 @@ public class SyncOrderInfoToPlatform { private final IAdvanceDetailClient advanceDetailClient; private final IWarehouseWaybillClient warehouseWaybillClient; private final IInventoryDetailClient inventoryDetailClient; - private final IDistributionStockArticleClient distributionStockArticleClient; @XxlJob("syncOrderInfo") @@ -693,6 +698,29 @@ public class SyncOrderInfoToPlatform { return ReturnT.SUCCESS; } + @XxlJob("clearOrderPackageStatusSign") + public ReturnT recoverOrderPackageStatus(String order,String packageCodes,Long warehouseId) { + log.info("############clearOrderPackageStatusSign: 恢复包件数据为可初始状态 开始"); + List strList = null; + if (Strings.isNotBlank(packageCodes)){ + log.info("############recoverOrderPackageStatus: 恢复整单包件状态 开始"); + strList = Func.toStrList(packageCodes); + } + + List ls = warehouseMappingDataService.findOrderPackageByOrderCodeAndPckageCode(order,strList,warehouseId); + List ids = new ArrayList<>(); + for (JSONObject l : ls) { +// String orderPackageCode = l.getStr("orderPackageCode"); + Long packageId = l.getLong("packageId"); + ids.add(packageId); + } + //修改包件状态 + warehouseMappingDataService.recoverOrderPackageStatus(ids); + distributionStockArticleClient.updateOrderInfo(order,warehouseId); + log.info("############repairNoOpenOrderOrderInfo: 清理包件数据为已签收 完成"); + + return ReturnT.SUCCESS; + } diff --git a/blade-service/logpm-patch/src/main/java/com/logpm/patch/mapper/WarehouseMappingDataMapper.java b/blade-service/logpm-patch/src/main/java/com/logpm/patch/mapper/WarehouseMappingDataMapper.java index 19c03ebbe..b438e11b5 100644 --- a/blade-service/logpm-patch/src/main/java/com/logpm/patch/mapper/WarehouseMappingDataMapper.java +++ b/blade-service/logpm-patch/src/main/java/com/logpm/patch/mapper/WarehouseMappingDataMapper.java @@ -56,4 +56,14 @@ public interface WarehouseMappingDataMapper { List findAllOrderPackage(); void updateClearOrderPackageStatusSignStatus(@Param("orderPackageCode") String orderPackageCode, @Param("warehouseId") Long warehouseId, @Param("dealStatus") Integer dealStatus); + + /** + * 查询订单指定包件列表 + * @param order + * @param strList + * @return + */ + List findOrderPackageByOrderCodeAndPckageCode(@Param("orderCode")String order,@Param("packageCodes") List strList,@Param("warehouseId")Long warehouseId); + + void recoverOrderPackageStatus(List ids); } diff --git a/blade-service/logpm-patch/src/main/java/com/logpm/patch/mapper/WarehouseMappingDataMapper.xml b/blade-service/logpm-patch/src/main/java/com/logpm/patch/mapper/WarehouseMappingDataMapper.xml index 917c4baf5..cc26b4b16 100644 --- a/blade-service/logpm-patch/src/main/java/com/logpm/patch/mapper/WarehouseMappingDataMapper.xml +++ b/blade-service/logpm-patch/src/main/java/com/logpm/patch/mapper/WarehouseMappingDataMapper.xml @@ -168,6 +168,20 @@ from clear_package_status_record where deal_status = 0 + update clear_package_status_record @@ -175,5 +189,11 @@ where order_package_code = #{orderPackageCode} and warehouse_id = #{warehouseId} + + UPDATE logpm_distribution_parcel_list SET order_package_status = '20',order_package_reservation_status = '10',order_package_loading_status ='10',order_package_stockup_status = '10' WHERE id in + + #{item} + + diff --git a/blade-service/logpm-patch/src/main/java/com/logpm/patch/service/IWarehouseMappingDataService.java b/blade-service/logpm-patch/src/main/java/com/logpm/patch/service/IWarehouseMappingDataService.java index e9c5f032a..2c864e63d 100644 --- a/blade-service/logpm-patch/src/main/java/com/logpm/patch/service/IWarehouseMappingDataService.java +++ b/blade-service/logpm-patch/src/main/java/com/logpm/patch/service/IWarehouseMappingDataService.java @@ -52,4 +52,18 @@ public interface IWarehouseMappingDataService { List findAllOrderPackage(); void updateClearOrderPackageStatusSignStatus(String orderPackageCode, Long warehouseId, Integer dealStatus); + + /** + * 查订单下指定包件列表 + * @param order + * @param strList + * @return + */ + List findOrderPackageByOrderCodeAndPckageCode(String order, List strList,Long warehouseId); + + /** + * 恢复包件状态 + * @param ids + */ + void recoverOrderPackageStatus(List ids); } diff --git a/blade-service/logpm-patch/src/main/java/com/logpm/patch/service/impl/WarehouseMappingDataServiceImpl.java b/blade-service/logpm-patch/src/main/java/com/logpm/patch/service/impl/WarehouseMappingDataServiceImpl.java index cb1f277e5..17c88c818 100644 --- a/blade-service/logpm-patch/src/main/java/com/logpm/patch/service/impl/WarehouseMappingDataServiceImpl.java +++ b/blade-service/logpm-patch/src/main/java/com/logpm/patch/service/impl/WarehouseMappingDataServiceImpl.java @@ -131,4 +131,24 @@ public class WarehouseMappingDataServiceImpl implements IWarehouseMappingDataSer public void updateClearOrderPackageStatusSignStatus(String orderPackageCode, Long warehouseId, Integer dealStatus) { warehouseMappingDataMapper.updateClearOrderPackageStatusSignStatus(orderPackageCode,warehouseId,dealStatus); } + + /** + * @param order + * @param strList + * @return + */ + @Override + public List findOrderPackageByOrderCodeAndPckageCode(String order, List strList,Long warehouseId) { + + return warehouseMappingDataMapper.findOrderPackageByOrderCodeAndPckageCode(order,strList,warehouseId); + } + + /** + * @param ids + */ + @Override + public void recoverOrderPackageStatus(List ids) { + warehouseMappingDataMapper.recoverOrderPackageStatus(ids); + + } }