Browse Source

增加查询管理精度策略接口。

master
刘忱 2 years ago
parent
commit
2959fe89d0
  1. 23
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/rule/RuleController.java
  2. 19
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/rule/vo/PrecisionStrategyReqVO2.java
  3. 7
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/rule/RuleService.java
  4. 14
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/rule/RuleServiceImpl.java

23
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.CommonResult;
import com.win.framework.common.pojo.CustomConditions; import com.win.framework.common.pojo.CustomConditions;
import com.win.framework.common.pojo.PageResult; 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.excel.core.util.ExcelUtils;
import com.win.framework.operatelog.core.annotations.OperateLog; import com.win.framework.operatelog.core.annotations.OperateLog;
import com.win.module.system.api.user.AdminUserApi; import com.win.module.system.api.user.AdminUserApi;
import com.win.module.system.api.user.dto.AdminUserRespDTO; 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.controller.rule.vo.*;
import com.win.module.wms.convert.itembasic.ItembasicConvert;
import com.win.module.wms.convert.rule.RuleConvert; 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.dal.dataobject.rule.RuleDO;
import com.win.module.wms.enums.DictTypeConstants;
import com.win.module.wms.service.rule.RuleService; import com.win.module.wms.service.rule.RuleService;
import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter; import io.swagger.v3.oas.annotations.Parameter;
@ -27,7 +21,6 @@ import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource; import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import javax.validation.Valid; import javax.validation.Valid;
import java.io.IOException; import java.io.IOException;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
@ -80,6 +73,7 @@ public class RuleController {
RuleDO rule = ruleService.getRule(id); RuleDO rule = ruleService.getRule(id);
return success(RuleConvert.INSTANCE.convert(rule)); return success(RuleConvert.INSTANCE.convert(rule));
} }
@PostMapping("/senior") @PostMapping("/senior")
@Operation(summary = "高级搜索获得物品基本信息分页") @Operation(summary = "高级搜索获得物品基本信息分页")
@PreAuthorize("@ss.hasPermission('wms:rule:query')") @PreAuthorize("@ss.hasPermission('wms:rule:query')")
@ -109,17 +103,26 @@ public class RuleController {
List<HashMap<String, Object>> list = ruleService.getPrecisionStrategyByItemCodes(reqVO); List<HashMap<String, Object>> list = ruleService.getPrecisionStrategyByItemCodes(reqVO);
return success(list); return success(list);
} }
@PostMapping("/getPrecisionStrategy")
@Operation(summary = "根据零件号和库位号查询管理精度策略")
@PreAuthorize("@ss.hasPermission('wms:rule:query')")
public CommonResult<Object> getPrecisionStrategy(@Valid @RequestBody List<PrecisionStrategyReqVO2> reqVO2List) {
List<HashMap<String, Object>> list = ruleService.getPrecisionStrategy(reqVO2List);
return success(list);
}
@GetMapping("/export-excel") @GetMapping("/export-excel")
@Operation(summary = "导出规则配置 Excel") @Operation(summary = "导出规则配置 Excel")
@PreAuthorize("@ss.hasPermission('wms:rule:export')") @PreAuthorize("@ss.hasPermission('wms:rule:export')")
@OperateLog(type = EXPORT) @OperateLog(type = EXPORT)
public void exportRuleExcel(@Valid RuleExportReqVO exportReqVO, public void exportRuleExcel(@Valid RuleExportReqVO exportReqVO, HttpServletResponse response) throws IOException {
HttpServletResponse response) throws IOException {
List<RuleDO> list =ruleService.getRuleList(exportReqVO); List<RuleDO> list =ruleService.getRuleList(exportReqVO);
Map<Integer, String[]> mapDropDown = new HashMap<>(); Map<Integer, String[]> mapDropDown = new HashMap<>();
List<RuleExcelVO> resultList = this.getExcelVo(list, mapDropDown); List<RuleExcelVO> resultList = this.getExcelVo(list, mapDropDown);
ExcelUtils.write(response, "物品基本信息.xlsx", "数据", RuleExcelVO.class, resultList, mapDropDown); ExcelUtils.write(response, "物品基本信息.xlsx", "数据", RuleExcelVO.class, resultList, mapDropDown);
} }
@PostMapping("/export-excel-senior") @PostMapping("/export-excel-senior")
@Operation(summary = "导出规则配置 Excel") @Operation(summary = "导出规则配置 Excel")
@PreAuthorize("@ss.hasPermission('wms:rule:export')") @PreAuthorize("@ss.hasPermission('wms:rule:export')")
@ -130,8 +133,8 @@ public class RuleController {
List<RuleExcelVO> resultList = this.getExcelVo(list, mapDropDown); List<RuleExcelVO> resultList = this.getExcelVo(list, mapDropDown);
ExcelUtils.write(response, "物品基本信息.xlsx", "数据", RuleExcelVO.class, resultList, mapDropDown); ExcelUtils.write(response, "物品基本信息.xlsx", "数据", RuleExcelVO.class, resultList, mapDropDown);
} }
private List<RuleExcelVO> getExcelVo(List<RuleDO> list, Map<Integer, String[]> mapDropDown) {
private List<RuleExcelVO> getExcelVo(List<RuleDO> list, Map<Integer, String[]> mapDropDown) {
// 导出 Excel // 导出 Excel
List<RuleExcelVO> resultList = RuleConvert.INSTANCE.convertList02(list); List<RuleExcelVO> resultList = RuleConvert.INSTANCE.convertList02(list);
for(RuleExcelVO vo : resultList) { for(RuleExcelVO vo : resultList) {

19
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;
}

7
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<HashMap<String, Object>> getPrecisionStrategyByItemCodes(PrecisionStrategyReqVO reqVO); List<HashMap<String, Object>> getPrecisionStrategyByItemCodes(PrecisionStrategyReqVO reqVO);
/**
* 获取根据物品代码以及库位代码管理精度策略
*
* @param reqVO2List
* @return
*/
List<HashMap<String, Object>> getPrecisionStrategy(List<PrecisionStrategyReqVO2> reqVO2List);
} }

14
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; return list;
} }
@Override
public List<HashMap<String, Object>> getPrecisionStrategy(List<PrecisionStrategyReqVO2> reqVO2List) {
List<HashMap<String, Object>> list = new ArrayList<>();
for (PrecisionStrategyReqVO2 reqVO2 : reqVO2List) {
HashMap<String, Object> 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;
}
/** /**
* 循环校验参数 * 循环校验参数
* *

Loading…
Cancel
Save