diff --git a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistrilbutionBillLadingVO.java b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistrilbutionBillLadingVO.java index e3f15f1a8..d80df5be1 100644 --- a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistrilbutionBillLadingVO.java +++ b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistrilbutionBillLadingVO.java @@ -87,4 +87,7 @@ public class DistrilbutionBillLadingVO extends DistrilbutionBillLadingEntity { private String otherFee; + + + } diff --git a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataGoodsAllocationServiceImpl.java b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataGoodsAllocationServiceImpl.java index a3681cdef..658f0a4e6 100644 --- a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataGoodsAllocationServiceImpl.java +++ b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataGoodsAllocationServiceImpl.java @@ -48,6 +48,7 @@ import org.springblade.core.log.exception.ServiceException; import org.springblade.core.mp.base.BaseServiceImpl; import org.springblade.core.mp.support.Condition; import org.springblade.core.mp.support.Query; +import org.springblade.core.redis.cache.BladeRedis; import org.springblade.core.secure.BladeUser; import org.springblade.core.secure.utils.AuthUtil; import org.springblade.core.tool.api.R; @@ -57,10 +58,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; -import java.util.Map; +import java.util.*; import java.util.stream.Collectors; /** @@ -88,6 +86,8 @@ public class BasicdataGoodsAllocationServiceImpl extends BaseServiceImpl selectBasicdataGoodsAllocationPage(IPage page, BasicdataGoodsAllocationVO BasicdataGoodsAllocation) { @@ -278,6 +278,12 @@ public class BasicdataGoodsAllocationServiceImpl extends BaseServiceImpl().lambda() .set(BasicdataGoodsAllocationEntity::getEnableStatus, 1) .in(BasicdataGoodsAllocationEntity::getId, Func.toLongList(ids))); + + BasicdataWarehouseEntity myCurrentWarehouse = basicdataWarehouseService.getMyCurrentWarehouse(); + if(Objects.isNull(myCurrentWarehouse)){ + bladeRedis.del("warehouse:all:allocationIds:" + myCurrentWarehouse.getId()); + } + return update ? R.success("成功") : R.fail("失败"); } @@ -293,6 +299,13 @@ public class BasicdataGoodsAllocationServiceImpl extends BaseServiceImpl().lambda() .set(BasicdataGoodsAllocationEntity::getEnableStatus, 2) .in(BasicdataGoodsAllocationEntity::getId, Func.toLongList(ids))); + + BasicdataWarehouseEntity myCurrentWarehouse = basicdataWarehouseClient.getMyCurrentWarehouse(); + if(!Objects.isNull(myCurrentWarehouse)){ + bladeRedis.del("warehouse:all:allocationIds:" + myCurrentWarehouse.getId()); + } + + return update ? R.success("成功") : R.fail("失败"); } diff --git a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataGoodsShelfServiceImpl.java b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataGoodsShelfServiceImpl.java index 301d2bb0d..f91d05ded 100644 --- a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataGoodsShelfServiceImpl.java +++ b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataGoodsShelfServiceImpl.java @@ -28,10 +28,8 @@ import com.logpm.basic.feign.IBasicPrintTemplateClient; import com.logpm.basic.feign.IBasicTenantCodeClient; import com.logpm.basicdata.dto.BasicdataGoodsShelfDTO; import com.logpm.basicdata.entity.BasicdataGoodsAllocationEntity; -import com.logpm.basicdata.entity.BasicdataGoodsAreaEntity; import com.logpm.basicdata.entity.BasicdataGoodsShelfEntity; import com.logpm.basicdata.entity.BasicdataWarehouseEntity; -import com.logpm.basicdata.excel.BasicdataGoodsAreaExcel; import com.logpm.basicdata.excel.BasicdataGoodsShelfExcel; import com.logpm.basicdata.feign.IBasicdataWarehouseClient; import com.logpm.basicdata.mapper.BasicdataGoodsAllocationMapper; @@ -47,6 +45,7 @@ import org.springblade.common.utils.FileUtil; import org.springblade.common.utils.QRCodeUtil; import org.springblade.common.utils.TemplateUtil; 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.Func; @@ -93,6 +92,8 @@ public class BasicdataGoodsShelfServiceImpl extends BaseServiceImpl 0 ? R.success("删除成功") : R.fail("删除失败"); } @@ -662,6 +677,7 @@ public class BasicdataGoodsShelfServiceImpl extends BaseServiceImpl> listOwn(@ApiIgnore @RequestParam Map distrilbutionBillLading, Query query) { - IPage pages = distrilbutionBillLadingService.pageList(Condition.getPage(query), distrilbutionBillLading); - List records = pages.getRecords(); - records.forEach( i ->{ - i.setTypeServiceName(DictBizCache.getValue(DictBizConstant.DISTRIBUTION_TYPE, i.getTypeService())); - i.setCertificateTypeName(DictBizCache.getValue(DictBizConstant.CERTIFICATE_TYPE, i.getCertificateType())); - //查询图片数据 - // 遍历BillLadingStatusConstant的所有枚举值 - Arrays.stream(BillLadingStatusConstant.values()) - .filter(ii -> i.getConditions().equals(ii.getValue())) // 根据条件过滤 - .findFirst() // 找到第一个匹配的枚举值 - .ifPresent(ii -> i.setConditionName(ii.getName())); // 修改属性值(如果有匹配的枚举值) - - }); - return R.data(pages); + try { + IPage pages = distrilbutionBillLadingService.pageList(Condition.getPage(query), distrilbutionBillLading); + List records = pages.getRecords(); + records.forEach( i ->{ + i.setTypeServiceName(DictBizCache.getValue(DictBizConstant.DISTRIBUTION_TYPE, i.getTypeService())); + i.setCertificateTypeName(DictBizCache.getValue(DictBizConstant.CERTIFICATE_TYPE, i.getCertificateType())); + //查询图片数据 + // 遍历BillLadingStatusConstant的所有枚举值 + Arrays.stream(BillLadingStatusConstant.values()) + .filter(ii -> i.getConditions().equals(ii.getValue())) // 根据条件过滤 + .findFirst() // 找到第一个匹配的枚举值 + .ifPresent(ii -> i.setConditionName(ii.getName())); // 修改属性值(如果有匹配的枚举值) + + }); + return R.data(pages); + }catch (Exception e){ + log.error(e.getMessage(), e); + } + return R.data(null); + } /** diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/dto/DistrilbutionBillLadingDTO.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/dto/DistrilbutionBillLadingDTO.java index e7b52e7ac..d8b77441e 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/dto/DistrilbutionBillLadingDTO.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/dto/DistrilbutionBillLadingDTO.java @@ -179,6 +179,8 @@ public class DistrilbutionBillLadingDTO extends DistrilbutionBillLadingEntity { private String packageIds; // 1 不是零担 2 是零担 private String zeroType; + private String pickUpTimeStart; + private String pickUpTimeEnd; @Data public static class Print{ diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionReservationMapper.xml b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionReservationMapper.xml index c4eb4799f..68e7b444a 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionReservationMapper.xml +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionReservationMapper.xml @@ -353,18 +353,22 @@ FROM logpm_warehouse_updown_goods lwug LEFT JOIN logpm_distribution_parcel_list ldpl ON ldpl.id = lwug.association_id + LEFT JOIN logpm_distribution_stock_article ldsa ON ldsa.id = ldpl.stock_article_id WHERE lwug.association_type != 4 AND ldpl.conditions = 2 AND ldpl.warehouse_id = #{warehouseId} + AND ldsa.mall_name = #{mallName} GROUP BY ldpl.material_code ) AS t1 ON t.cargo_number = t1.material_code LEFT JOIN ( SELECT association_value, GROUP_CONCAT( DISTINCT ( allocation_id )) AS allocation_ids FROM - logpm_warehouse_updown_goods WHERE warehouse_id = #{warehouseId} AND association_type = 4 GROUP BY + logpm_warehouse_updown_goods WHERE warehouse_id = #{warehouseId} AND association_type = 4 AND market_name = #{mallName} GROUP BY association_value ) AS t2 ON t.cargo_number = t2.association_value where ldslNew.is_deleted = 0 AND ldslNew.warehouse_id=#{warehouseId} + GROUP BY + ldslNew.cargo_number + diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistrilbutionBillStockMapper.xml b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistrilbutionBillStockMapper.xml index ae459a3af..ad08bce5d 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistrilbutionBillStockMapper.xml +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistrilbutionBillStockMapper.xml @@ -131,11 +131,12 @@ END handQuantity, (select IFNULL(sum(quantity) ,0) from logpm_distribution_bill_lading_scan where stock_article_id = ldsa.id AND bill_lading_id = #{param.billLadingId} AND is_deleted = 0 ) pick_up_quantity, - CASE - WHEN (SELECT COUNT(id) FROM logpm_distribution_bill_lading_scan WHERE stock_article_id = ldsa.id AND is_deleted = 0) - (SELECT COUNT(id) FROM logpm_distrilbution_bill_package WHERE stock_article_id = ldsa.id AND packet_bar_status IN (1,3) AND is_deleted = 0) = 0 THEN '30' - WHEN (SELECT COUNT(id) FROM logpm_distribution_bill_lading_scan WHERE stock_article_id = ldsa.id AND is_deleted = 0) = 0 THEN '10' - WHEN (SELECT COUNT(id) FROM logpm_distribution_bill_lading_scan WHERE stock_article_id = ldsa.id AND is_deleted = 0) - (SELECT COUNT(id) FROM logpm_distrilbution_bill_package WHERE stock_article_id = ldsa.id AND packet_bar_status IN (1,3) AND is_deleted = 0) < 0 THEN '20' - END AS conditions, + CASE ldsa.is_zero + WHEN 1 THEN + IF(( SELECT IFNULL(SUM(quantity),0) FROM logpm_distribution_bill_lading_scan WHERE stock_article_id = ldsa.id AND is_deleted = 0 ) - ( SELECT IFNULL(sum( quantity ),0) FROM logpm_distribution_reservation_zero_package WHERE stock_article_id = ldsa.id AND zero_package_status IN ( 1, 3 ) AND is_deleted = 0 ) = 0,'30',IF(( SELECT IFNULL(sum( quantity ),0) FROM logpm_distribution_bill_lading_scan WHERE stock_article_id = ldsa.id AND is_deleted = 0 ) = 0,'10','20')) + ELSE + IF(( SELECT IFNULL(sum( quantity ),0) FROM logpm_distribution_bill_lading_scan WHERE stock_article_id = ldsa.id AND is_deleted = 0 ) - ( SELECT count( id ) FROM logpm_distrilbution_bill_package WHERE stock_article_id = ldsa.id AND packet_bar_status IN ( 1, 3 ) AND is_deleted = 0 ) = 0,'30',IF(( SELECT IFNULL(sum( quantity ),0) FROM logpm_distribution_bill_lading_scan WHERE stock_article_id = ldsa.id AND is_deleted = 0 ) = 0,'10','20')) + END conditions, (select GROUP_CONCAT(DISTINCT ldpl.material_name ) from logpm_distribution_parcel_list ldpl where ldpl.material_name is not null and ldpl.stock_article_id = ldbs.stock_article_id) materialName, diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionAsyncServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionAsyncServiceImpl.java index fcd79f390..6c064993a 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionAsyncServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionAsyncServiceImpl.java @@ -1854,7 +1854,7 @@ public class DistributionAsyncServiceImpl implements IDistributionAsyncService { List ids = list.stream().map(DistrilbutionBillPackageEntity::getParceListId).collect(Collectors.toList()); //查询包件 List distributionParcelListEntities = distributionParcelListService.listByIds(ids); - List packageIds = distributionParcelListEntities.stream().filter(f -> OrderPackageLoadingStatusConstant.yizhuangche.getValue().equals(f.getOrderPackageLoadingStatus()) || !OrderPackageStatusConstant.yiqianshou.getValue().equals(f.getOrderPackageStatus())).map(DistributionParcelListEntity::getId).collect(Collectors.toList()); + List packageIds = distributionParcelListEntities.stream().filter(f -> !OrderPackageLoadingStatusConstant.yizhuangche.getValue().equals(f.getOrderPackageLoadingStatus()) || !OrderPackageStatusConstant.yiqianshou.getValue().equals(f.getOrderPackageStatus())).map(DistributionParcelListEntity::getId).collect(Collectors.toList()); if (Func.isNotEmpty(packageIds)) { distributionParcelListService.update(new UpdateWrapper().lambda() .set(DistributionParcelListEntity::getOrderPackageReservationStatus, OrderPackageReservationStatusConstant.daiyuyue.getValue()) diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistrilbutionBillLadingServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistrilbutionBillLadingServiceImpl.java index e0060202f..6c43ede36 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistrilbutionBillLadingServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistrilbutionBillLadingServiceImpl.java @@ -2353,18 +2353,20 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl collect = null; - + IPage distrilbutionBillLadingVOIPage = null; if (Func.isNotEmpty(myCurrentWarehouse)) { collect = new ArrayList<>(); collect.add(myCurrentWarehouse.getId()); + } else { +// distrilbutionBillLadingVOIPage = baseMapper.getAllBillLadingByView(page, distrilbutionBillLadingDTO, collect); collect = warehouseList.stream() .map(BasicdataWarehouseEntity::getId) .collect(Collectors.toList()); } + distrilbutionBillLadingVOIPage = baseMapper.pageList(page, distrilbutionBillLadingDTO, collect); - IPage distrilbutionBillLadingVOIPage = baseMapper.pageList(page, distrilbutionBillLadingDTO, collect); List records = distrilbutionBillLadingVOIPage.getRecords(); // 获取所有的提货单ID @@ -2403,8 +2405,11 @@ public class DistrilbutionBillLadingServiceImpl extends BaseServiceImpl { if (groupedEntities != null) { List list = groupedEntities.get(i.getId()); - list.forEach(ii -> ii.setCostName(DictBizCache.getValue(DictBizConstant.DELIVERY_COST, ii.getCost()))); - i.setList(list); + if (!Func.isEmpty(groupedEntities.get(i.getId()))){ + list.forEach(ii -> ii.setCostName(DictBizCache.getValue(DictBizConstant.DELIVERY_COST, ii.getCost()))); + i.setList(list); + } + } if (groupDistributionPrintEntityEntities != null) { List list1 = groupDistributionPrintEntityEntities.get(i.getId()); diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistrilbutionBillStockServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistrilbutionBillStockServiceImpl.java index 1a3b4cc74..b128104d9 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistrilbutionBillStockServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistrilbutionBillStockServiceImpl.java @@ -53,6 +53,7 @@ import org.springframework.transaction.annotation.Transactional; import java.util.ArrayList; import java.util.List; import java.util.Map; +import java.util.Objects; import java.util.stream.Collectors; /** @@ -254,6 +255,7 @@ public class DistrilbutionBillStockServiceImpl extends BaseServiceImpl ids = new ArrayList<>(); + List completeIds = new ArrayList<>(); if (Func.isNotEmpty(entityList)){ for (DistrilbutionBillStockEntity distrilbutionBillStockEntity : entityList) { List packageEntities = distrilbutionBillPackageService.list(Wrappers.query().lambda() @@ -266,9 +268,13 @@ public class DistrilbutionBillStockServiceImpl extends BaseServiceImpl().lambda() + .set(DistrilbutionBillStockEntity::getConditions, "30") + .in(DistrilbutionBillStockEntity::getId, completeIds) + ); + } } @Override diff --git a/blade-service/logpm-factory/src/main/java/com/logpm/factory/jobhandler/FactoryXxlJob.java b/blade-service/logpm-factory/src/main/java/com/logpm/factory/jobhandler/FactoryXxlJob.java index 28cc15b2c..c7d5cfeb4 100644 --- a/blade-service/logpm-factory/src/main/java/com/logpm/factory/jobhandler/FactoryXxlJob.java +++ b/blade-service/logpm-factory/src/main/java/com/logpm/factory/jobhandler/FactoryXxlJob.java @@ -147,7 +147,7 @@ public class FactoryXxlJob { //XxlJobLogger.log("日志对象 {}", orderLogEntity); Map map = orderService.dataRelative(orderLogEntity); List dataList = map.get(StationOrderEntity.class.getName()); - if (dataList.size() == 0) { + if (dataList.isEmpty()) { //XxlJobLogger.log("本次解析操作没有数据"); //更新数据库请求日志状态 orderLogEntity.setStatus(0); @@ -175,6 +175,11 @@ public class FactoryXxlJob { } } }); + + /*************** SNM 存在 相同的车次 多次推送 重复的包件的操作**************/ + // 需要移除 当前合同号下的已经存在的包件 + + dataList.forEach(v -> { for (int i = 0; i < staorderPackagesEntityList.size(); i++) { if (staorderPackagesEntityList.get(i).getTcPoa014().equals(v.getTcWlb008())) { @@ -184,7 +189,7 @@ public class FactoryXxlJob { }); // 插入数据库 - if (staorderPackagesEntityList != null && staorderPackagesEntityList.size() != 0) { + if (staorderPackagesEntityList != null && !staorderPackagesEntityList.isEmpty()) { //XxlJobLogger.log("保存对象StaorderPackagesEntity {}", staorderPackagesEntityList); staorderPackagesService.saveBatch(staorderPackagesEntityList); } diff --git a/blade-service/logpm-factory/src/main/java/com/logpm/factory/snm/service/impl/OrderServiceImpl.java b/blade-service/logpm-factory/src/main/java/com/logpm/factory/snm/service/impl/OrderServiceImpl.java index 99b8e1a8b..fef7abcdc 100644 --- a/blade-service/logpm-factory/src/main/java/com/logpm/factory/snm/service/impl/OrderServiceImpl.java +++ b/blade-service/logpm-factory/src/main/java/com/logpm/factory/snm/service/impl/OrderServiceImpl.java @@ -157,6 +157,9 @@ public class OrderServiceImpl implements IOrderService { StaorderPackagesEntity staorderPackagesEntity = new StaorderPackagesEntity(); try { buildStationOrderPackageByRelative(orderPackageInfoT,staorderPackagesEntity); + + + staorderPackagesEntityList.add(staorderPackagesEntity); } catch (NoSuchFieldException e) { e.printStackTrace(); diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/service/impl/ReportDeliverServiceImpl.java b/blade-service/logpm-report/src/main/java/com/logpm/report/service/impl/ReportDeliverServiceImpl.java index 63b77380c..e62f16a56 100644 --- a/blade-service/logpm-report/src/main/java/com/logpm/report/service/impl/ReportDeliverServiceImpl.java +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/service/impl/ReportDeliverServiceImpl.java @@ -196,7 +196,7 @@ public class ReportDeliverServiceImpl implements ReportDeliverService { trainCustomQuery(query, queryWrapper); // 仓库权限 ReportUtil.buildReportWarehouseAuth(vo.getWarehouseName(), query.getWarehouseNameRange(), queryWrapper, warehouseClient); - reportExcelUtil.export(response, deliveryTrainReader, ReportDevilerVO.class, queryWrapper, "配送车次维度报表"); + reportExcelUtil.export(response, deliveryTrainReader, ReportDevilerVO.class, queryWrapper, "配送车次维度报表",20L, ReportExcelUtil.SHEETDATANUM); } @Override