From 2959fe89d023de380a202bd1373049f51c784866 Mon Sep 17 00:00:00 2001 From: liuchen864 <23082234@qq.com> Date: Tue, 19 Dec 2023 15:21:25 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=9F=A5=E8=AF=A2=E7=AE=A1?= =?UTF-8?q?=E7=90=86=E7=B2=BE=E5=BA=A6=E7=AD=96=E7=95=A5=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../wms/controller/rule/RuleController.java | 23 +++++++++++-------- .../rule/vo/PrecisionStrategyReqVO2.java | 19 +++++++++++++++ .../module/wms/service/rule/RuleService.java | 7 ++++++ .../wms/service/rule/RuleServiceImpl.java | 14 +++++++++++ 4 files changed, 53 insertions(+), 10 deletions(-) create mode 100644 win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/rule/vo/PrecisionStrategyReqVO2.java diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/rule/RuleController.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/rule/RuleController.java index 3bf3efa3..058282c4 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/rule/RuleController.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/rule/RuleController.java @@ -3,19 +3,13 @@ package com.win.module.wms.controller.rule; import com.win.framework.common.pojo.CommonResult; import com.win.framework.common.pojo.CustomConditions; import com.win.framework.common.pojo.PageResult; -import com.win.framework.dict.core.util.DictFrameworkUtils; import com.win.framework.excel.core.util.ExcelUtils; import com.win.framework.operatelog.core.annotations.OperateLog; import com.win.module.system.api.user.AdminUserApi; import com.win.module.system.api.user.dto.AdminUserRespDTO; -import com.win.module.wms.controller.itembasic.vo.ItembasicExcelVO; -import com.win.module.wms.controller.itembasic.vo.ItembasicExportReqVO; import com.win.module.wms.controller.rule.vo.*; -import com.win.module.wms.convert.itembasic.ItembasicConvert; import com.win.module.wms.convert.rule.RuleConvert; -import com.win.module.wms.dal.dataobject.itembasic.ItembasicDO; import com.win.module.wms.dal.dataobject.rule.RuleDO; -import com.win.module.wms.enums.DictTypeConstants; import com.win.module.wms.service.rule.RuleService; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Parameter; @@ -27,7 +21,6 @@ import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import javax.servlet.http.HttpServletResponse; import javax.validation.Valid; - import java.io.IOException; import java.util.HashMap; import java.util.List; @@ -80,6 +73,7 @@ public class RuleController { RuleDO rule = ruleService.getRule(id); return success(RuleConvert.INSTANCE.convert(rule)); } + @PostMapping("/senior") @Operation(summary = "高级搜索获得物品基本信息分页") @PreAuthorize("@ss.hasPermission('wms:rule:query')") @@ -109,17 +103,26 @@ public class RuleController { List> list = ruleService.getPrecisionStrategyByItemCodes(reqVO); return success(list); } + + @PostMapping("/getPrecisionStrategy") + @Operation(summary = "根据零件号和库位号查询管理精度策略") + @PreAuthorize("@ss.hasPermission('wms:rule:query')") + public CommonResult getPrecisionStrategy(@Valid @RequestBody List reqVO2List) { + List> list = ruleService.getPrecisionStrategy(reqVO2List); + return success(list); + } + @GetMapping("/export-excel") @Operation(summary = "导出规则配置 Excel") @PreAuthorize("@ss.hasPermission('wms:rule:export')") @OperateLog(type = EXPORT) - public void exportRuleExcel(@Valid RuleExportReqVO exportReqVO, - HttpServletResponse response) throws IOException { + public void exportRuleExcel(@Valid RuleExportReqVO exportReqVO, HttpServletResponse response) throws IOException { List list =ruleService.getRuleList(exportReqVO); Map mapDropDown = new HashMap<>(); List resultList = this.getExcelVo(list, mapDropDown); ExcelUtils.write(response, "物品基本信息.xlsx", "数据", RuleExcelVO.class, resultList, mapDropDown); } + @PostMapping("/export-excel-senior") @Operation(summary = "导出规则配置 Excel") @PreAuthorize("@ss.hasPermission('wms:rule:export')") @@ -130,8 +133,8 @@ public class RuleController { List resultList = this.getExcelVo(list, mapDropDown); ExcelUtils.write(response, "物品基本信息.xlsx", "数据", RuleExcelVO.class, resultList, mapDropDown); } - private List getExcelVo(List list, Map mapDropDown) { + private List getExcelVo(List list, Map mapDropDown) { // 导出 Excel List resultList = RuleConvert.INSTANCE.convertList02(list); for(RuleExcelVO vo : resultList) { diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/rule/vo/PrecisionStrategyReqVO2.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/rule/vo/PrecisionStrategyReqVO2.java new file mode 100644 index 00000000..fc7a27b1 --- /dev/null +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/rule/vo/PrecisionStrategyReqVO2.java @@ -0,0 +1,19 @@ +package com.win.module.wms.controller.rule.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +import javax.validation.constraints.NotBlank; + +@Schema(description = "APP管理精度策略") +@Data +public class PrecisionStrategyReqVO2 { + + @Schema(description = "物品代码") + @NotBlank(message = "物品代码不能为空") + private String itemCode; + + @Schema(description = "库位代码") + @NotBlank(message = "库位代码不能为空") + private String locationCode; +} diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/rule/RuleService.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/rule/RuleService.java index aa8f2963..93ae05ac 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/rule/RuleService.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/rule/RuleService.java @@ -210,4 +210,11 @@ public interface RuleService { */ List> getPrecisionStrategyByItemCodes(PrecisionStrategyReqVO reqVO); + /** + * 获取根据物品代码以及库位代码管理精度策略 + * + * @param reqVO2List + * @return + */ + List> getPrecisionStrategy(List reqVO2List); } diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/rule/RuleServiceImpl.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/rule/RuleServiceImpl.java index f233c3df..b2cf71bd 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/rule/RuleServiceImpl.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/rule/RuleServiceImpl.java @@ -513,6 +513,20 @@ public class RuleServiceImpl implements RuleService { return list; } + @Override + public List> getPrecisionStrategy(List reqVO2List) { + List> list = new ArrayList<>(); + for (PrecisionStrategyReqVO2 reqVO2 : reqVO2List) { + HashMap map = new HashMap<>(); + RuleRespVO RespVO = management(null, null, reqVO2.getItemCode(), reqVO2.getLocationCode(), null, null); + JSONObject entries = JSONUtil.parseObj(RespVO.getConfiguration()); + map.put("ManagementPrecision", entries.get("ManagementPrecision")); + map.put("itemCode", reqVO2.getItemCode()); + list.add(map); + } + return list; + } + /** * 循环校验参数 *