From 097433ca16e6f8aa7ec736298693dd5c7613e811 Mon Sep 17 00:00:00 2001 From: pjb <pjb123456> Date: 星期日, 13 七月 2025 10:19:12 +0800 Subject: [PATCH] 堆垛机分配库位加入可入条件限制 --- src/main/java/com/zy/asrs/controller/BasCrnErrorController.java | 52 ++++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 38 insertions(+), 14 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/BasCrnErrorController.java b/src/main/java/com/zy/asrs/controller/BasCrnErrorController.java index 86e4584..ed1dc0e 100644 --- a/src/main/java/com/zy/asrs/controller/BasCrnErrorController.java +++ b/src/main/java/com/zy/asrs/controller/BasCrnErrorController.java @@ -1,21 +1,27 @@ package com.zy.asrs.controller; +import com.alibaba.excel.EasyExcel; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.baomidou.mybatisplus.mapper.Wrapper; import com.baomidou.mybatisplus.plugins.Page; -import com.zy.asrs.entity.BasCrnError; -import com.zy.asrs.service.BasCrnErrorService; -import com.zy.common.web.BaseController; import com.core.annotations.ManagerAuth; import com.core.common.BaseRes; import com.core.common.Cools; import com.core.common.DateUtils; import com.core.common.R; +import com.zy.asrs.entity.BasCrnError; +import com.zy.asrs.importexcle.ImportCrnErrDto; +import com.zy.asrs.importexcle.ImportCrnErrListener; +import com.zy.asrs.service.BasCrnErrorService; +import com.zy.common.web.BaseController; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.transaction.annotation.Transactional; import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; +import java.io.IOException; import java.util.*; @RestController @@ -28,6 +34,24 @@ @ManagerAuth public R get(@PathVariable("id") Long id) { return R.ok(basCrnErrorService.selectById(String.valueOf(id))); + } + + @PostMapping("/importCrnErr") + @ManagerAuth(memo = "瀵煎叆鍫嗗灈鏈哄紓甯歌〃") + public R importCrnErr(@RequestParam("file") MultipartFile multipartFile) { + try { + importCrnErrExec(multipartFile); + } catch (Exception e) { + e.printStackTrace(); + return R.error(e.getMessage()); + } + return R.ok("瀵煎叆鎴愬姛"); + } + + @Transactional(rollbackFor = Exception.class) + public void importCrnErrExec(MultipartFile multipartFile) throws IOException { + EasyExcel.read(multipartFile.getInputStream(), ImportCrnErrDto.class, + new ImportCrnErrListener(basCrnErrorService)).sheet().doReadSync(); } @RequestMapping(value = "/basCrnError/list/auth") @@ -44,20 +68,20 @@ return R.ok(basCrnErrorService.selectPage(new Page<>(curr, limit), wrapper)); } - private void convert(Map<String, Object> map, EntityWrapper wrapper){ + private <T> void convert(Map<String, Object> map, EntityWrapper<T> wrapper){ for (Map.Entry<String, Object> entry : map.entrySet()){ - if (entry.getKey().endsWith(">")) { - wrapper.ge(Cools.deleteChar(entry.getKey()), DateUtils.convert(String.valueOf(entry.getValue()))); - } else if (entry.getKey().endsWith("<")) { - wrapper.le(Cools.deleteChar(entry.getKey()), DateUtils.convert(String.valueOf(entry.getValue()))); + String val = String.valueOf(entry.getValue()); + if (val.contains(RANGE_TIME_LINK)){ + String[] dates = val.split(RANGE_TIME_LINK); + wrapper.ge(entry.getKey(), DateUtils.convert(dates[0])); + wrapper.le(entry.getKey(), DateUtils.convert(dates[1])); } else { - wrapper.eq(entry.getKey(), String.valueOf(entry.getValue())); + wrapper.like(entry.getKey(), val); } } } - @RequestMapping(value = "/basCrnError/add/auth") - @ManagerAuth + @ManagerAuth(memo = "鍫嗗灈鏈哄紓甯哥爜娣诲姞") public R add(BasCrnError basCrnError) { basCrnError.setModiUser(getUserId()); basCrnError.setModiTime(new Date()); @@ -68,7 +92,7 @@ } @RequestMapping(value = "/basCrnError/update/auth") - @ManagerAuth + @ManagerAuth(memo = "鍫嗗灈鏈哄紓甯哥爜淇敼") public R update(BasCrnError basCrnError){ if (Cools.isEmpty(basCrnError) || null==basCrnError.getErrorCode()){ return R.error(); @@ -80,7 +104,7 @@ } @RequestMapping(value = "/basCrnError/delete/auth") - @ManagerAuth + @ManagerAuth(memo = "鍫嗗灈鏈哄紓甯哥爜鍒犻櫎") public R delete(@RequestParam String param){ List<BasCrnError> list = JSONArray.parseArray(param, BasCrnError.class); if (Cools.isEmpty(list)){ @@ -93,7 +117,7 @@ } @RequestMapping(value = "/basCrnError/export/auth") - @ManagerAuth + @ManagerAuth(memo = "鍫嗗灈鏈哄紓甯哥爜瀵煎嚭") public R export(@RequestBody JSONObject param){ List<String> fields = JSONObject.parseArray(param.getJSONArray("fields").toJSONString(), String.class); EntityWrapper<BasCrnError> wrapper = new EntityWrapper<>(); -- Gitblit v1.9.1