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 b6ff47599..5633f055d 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 @@ -18,5 +18,8 @@ public class RedisKeyConstant { */ public static final String TASK_QUEST_CHILD_KEY ="cache:task-quest-child-key:"; + public static final String BASIC_DATA_WAREHOUSE_KEY ="cache:basic-data-list:"; + + } diff --git a/blade-service-api/logpm-basicdata-api/src/main/java/com/logpm/basicdata/entity/BasicdataWarehouseEntity.java b/blade-service-api/logpm-basicdata-api/src/main/java/com/logpm/basicdata/entity/BasicdataWarehouseEntity.java index 39fbc2e19..aba5e763b 100644 --- a/blade-service-api/logpm-basicdata-api/src/main/java/com/logpm/basicdata/entity/BasicdataWarehouseEntity.java +++ b/blade-service-api/logpm-basicdata-api/src/main/java/com/logpm/basicdata/entity/BasicdataWarehouseEntity.java @@ -110,7 +110,7 @@ public class BasicdataWarehouseEntity extends TenantEntity { * 基地仓 */ @ApiModelProperty(value = "基地仓") - private Integer functionType; + private String functionType; /** * 备注 */ diff --git a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/feign/BasicdataWarehouseClient.java b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/feign/BasicdataWarehouseClient.java index ea0e2dc7d..419bfb59c 100644 --- a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/feign/BasicdataWarehouseClient.java +++ b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/feign/BasicdataWarehouseClient.java @@ -19,14 +19,19 @@ package com.logpm.basicdata.feign; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.core.toolkit.StringUtils; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.logpm.basicdata.entity.BasicdataWarehouseEntity; import com.logpm.basicdata.service.IBasicdataWarehouseService; import lombok.AllArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springblade.common.constant.RedisKeyConstant; import org.springblade.core.mp.support.BladePage; 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.redis.cache.CacheKey; import org.springblade.core.tool.api.R; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; @@ -46,10 +51,13 @@ import java.util.Objects; @ApiIgnore() @RestController @AllArgsConstructor +@Slf4j public class BasicdataWarehouseClient implements IBasicdataWarehouseClient { private final IBasicdataWarehouseService warehouseWarehouseService; + private final BladeRedis bladeRedis; + @Override @GetMapping(TOP) public BladePage topWarehouse(Integer current, Integer size) { @@ -97,18 +105,40 @@ public class BasicdataWarehouseClient implements IBasicdataWarehouseClient { @Override public BasicdataWarehouseEntity getWarehouseEntityByWarehouseCode(String warehouseCode) { - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.eq("warehouse_code",warehouseCode) - .eq("is_deleted",0) - .eq("enable_status",2); - List list = warehouseWarehouseService.list(queryWrapper); - if(!Objects.isNull(list) && !list.isEmpty()){ - return list.get(0); - }else{ - return null; + String key =RedisKeyConstant.BASIC_DATA_WAREHOUSE_KEY + warehouseCode; + BasicdataWarehouseEntity o = bladeRedis.get(key); + log.info(">>> 获取的仓库的信息 o ={}",o); + if(ObjectUtils.isNull(o)){ + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("warehouse_code",warehouseCode) + .eq("is_deleted",0) + .eq("enable_status",2); + List list = warehouseWarehouseService.list(queryWrapper); + if(!Objects.isNull(list) && !list.isEmpty()){ + + // 寻找中心仓 + for (BasicdataWarehouseEntity basicdataWarehouseEntity : list) { + if(basicdataWarehouseEntity.getFunctionType().equals("2")){ + o = basicdataWarehouseEntity; + } + } + // 找不到 就去第一个 + if(ObjectUtils.isNull(o)){ + o= list.get(0); + } + + // 设定缓存时间 1小时的缓存时间 + bladeRedis.setEx(key,o, 60 * 60L); + } + } + + return o; + + + } @@ -159,11 +189,19 @@ public class BasicdataWarehouseClient implements IBasicdataWarehouseClient { @Override @GetMapping(WAREHOUSEBYDEPARTMENT) public BasicdataWarehouseEntity getWarehouseByDepartment(String deptId) { + + + + QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("department",deptId) .eq("is_deleted",0) .eq("enable_status",2); - return warehouseWarehouseService.getOne(queryWrapper); + List list = warehouseWarehouseService.list(queryWrapper); + + + + return list.get(0); } @Override diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/appcontroller/DistributionSignforAppController.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/appcontroller/DistributionSignforAppController.java index 7a1aa630a..09b1465e6 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/appcontroller/DistributionSignforAppController.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/appcontroller/DistributionSignforAppController.java @@ -152,14 +152,17 @@ public class DistributionSignforAppController { List packageCodes = (List) r.getData(); log.info("#############signfor:"+time+" 处理下架的包件 packageCodes={}",packageCodes); String orderPackageCodes = null; - for (String packageCode : packageCodes) { - if(StringUtils.isBlank(orderPackageCodes)){ - orderPackageCodes = packageCode; - }else{ - orderPackageCodes = orderPackageCodes + "," + packageCode; + if(packageCodes!=null){ + for (String packageCode : packageCodes) { + if(StringUtils.isBlank(orderPackageCodes)){ + orderPackageCodes = packageCode; + }else{ + orderPackageCodes = orderPackageCodes + "," + packageCode; + } } + updownTypeClient.downPackageOrDelTray(orderPackageCodes,myCurrentWarehouse.getId()); } - updownTypeClient.downPackageOrDelTray(orderPackageCodes,myCurrentWarehouse.getId()); + }catch (Exception e){ log.error("#############signfor:"+time+" 下架失败",e); }