From 444eb3f5a4b379c89040e03fc417066f0795d9b4 Mon Sep 17 00:00:00 2001 From: erdanergou Date: Fri, 3 Mar 2023 09:47:36 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=BA=93=E4=BD=8D=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/DepositoryController.java | 30 +++++++++++++++++ .../controller/PlaceController.java | 32 +++++++++++++++---- .../controller/UserController.java | 14 ++++++-- .../mapper/MaterialMapper.java | 7 ++++ .../mapper/MaterialMapper.xml | 11 +++++++ .../service/MaterialService.java | 8 +++++ .../service/impl/MaterialServiceImpl.java | 10 ++++++ .../templates/pages/place/place_edit.html | 13 +++++--- .../mapper/MaterialMapper.xml | 11 +++++++ .../templates/pages/place/place_edit.html | 18 +++++++++-- 10 files changed, 139 insertions(+), 15 deletions(-) diff --git a/src/main/java/com/dreamchaser/depository_manage/controller/DepositoryController.java b/src/main/java/com/dreamchaser/depository_manage/controller/DepositoryController.java index 90878cc0..20ad6d4c 100644 --- a/src/main/java/com/dreamchaser/depository_manage/controller/DepositoryController.java +++ b/src/main/java/com/dreamchaser/depository_manage/controller/DepositoryController.java @@ -1574,6 +1574,36 @@ public class DepositoryController { } + @GetMapping("/findDepositoryCountInfo") + public RestResponse findDepositoryCountInfo(HttpServletRequest request){ + // 获取当前登录的用户 + UserByPort userToken = (UserByPort) request.getAttribute("userToken"); + // 获取当前用户管理的仓库 + // 查询当前用户管理的仓库 + List depositoryAndRole = roleService.findDepositoryAndRole(userToken.getId()); + // 查询当前用户部门拥有的仓库 + List depositoryByAdminorg = depositoryService.findDepositoryByAdminorg(userToken.getMaindeparment().toString()); + List depositoryIdList = new ArrayList<>(); + for (Depository depository : depositoryByAdminorg + ) { + depositoryIdList.add(depository.getId()); + } + for (RoleAndDepository rad : depositoryAndRole + ) { + if (!depositoryIdList.contains(rad.getDepositoryId())) { + depositoryIdList.add(rad.getDepositoryId()); + } + } + + Integer inventoryCount = materialService.findInventoryCountByDepository(depositoryIdList); + + Map result = new HashMap<>(); + result.put("wareHouseCount",depositoryIdList.size()); + result.put("inventoryCount",inventoryCount); + return new RestResponse(result); + } + + // 构造仓库二维码 @PostMapping("/createQrCode") public RestResponse createQrCode(@RequestBody Map map) { diff --git a/src/main/java/com/dreamchaser/depository_manage/controller/PlaceController.java b/src/main/java/com/dreamchaser/depository_manage/controller/PlaceController.java index 68781b63..5f811430 100644 --- a/src/main/java/com/dreamchaser/depository_manage/controller/PlaceController.java +++ b/src/main/java/com/dreamchaser/depository_manage/controller/PlaceController.java @@ -182,19 +182,39 @@ public class PlaceController { }else{ map.put("state",2); } + Object id = map.get("id"); + // 获取当前修改的库位 + Place placeById = placeService.findPlaceById(ObjectFormatUtil.toInteger(id)); + Map update = new HashMap<>(); Integer place_x = ObjectFormatUtil.toInteger(map.get("place_x")); // Integer place_y = ObjectFormatUtil.toInteger(map.get("place_y")); Integer place_z = ObjectFormatUtil.toInteger(map.get("place_z")); + String newCode = ""; + if(Integer.compare(placeById.getX(),place_x) != 0 || Integer.compare(placeById.getZ(),place_z) != 0){ + // 如果更改了行层 + // String code = String.format("%02d", place_x) + String.format("%02d", place_y) + String.format("%02d", place_z); + newCode = String.format("%02d", place_x) + String.format("%02d", place_z); + }else{ + newCode = (String)map.get("code"); + } + String oldCode = placeById.getCode(); + if(!newCode.equals(oldCode)){ + // 如果编码发生改变 + + // 获取当前修改后的库位编码是否存在 + Place placeByDidAndCode = placeService.findPlaceByDidAndCode(placeById.getDid(), oldCode); + if(placeByDidAndCode != null){ + // 如果存在 + return new RestResponse("",12345,new StatusInfo("修改失败","该编码或位置已经存在")); + } + } String min = (String) map.get("min"); String max = (String) map.get("max"); -// String code = String.format("%02d", place_x) + String.format("%02d", place_y) + String.format("%02d", place_z); - String oldCode = (String)map.get("code"); - String code = String.format("%02d", place_x) + String.format("%02d", place_z); update.put("x", place_x); // update.put("y", place_y); update.put("z", place_z); - update.put("code", code); + update.put("code", newCode); update.put("oldCode", oldCode); update.put("did", map.get("depositoryId")); if (!"".equals(min)) { @@ -205,9 +225,9 @@ public class PlaceController { if (!"".equals(max)) { update.put("max", map.get("max")); } else { - update.put("max", 0); + update.put("max", 500); } - update.put("id",map.get("id")); + update.put("id", id); return CrudUtil.postHandle(placeService.UpdatePlace(update),1); } diff --git a/src/main/java/com/dreamchaser/depository_manage/controller/UserController.java b/src/main/java/com/dreamchaser/depository_manage/controller/UserController.java index 39b7b5a4..40b4a08f 100644 --- a/src/main/java/com/dreamchaser/depository_manage/controller/UserController.java +++ b/src/main/java/com/dreamchaser/depository_manage/controller/UserController.java @@ -27,6 +27,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import java.io.IOException; import java.time.Instant; @@ -135,7 +136,8 @@ public class UserController { * restResponse,附带凭证token */ @PostMapping("/login") - public RestResponse login(@RequestBody Map map, HttpServletRequest request) { + public RestResponse login(@RequestBody Map map, HttpServletRequest request,HttpServletResponse response) { + response.setHeader("Access-Control-Allow-Origin", "*"); String userWxId = map.get("userWxId"); // 用于标识当前登录是否为企业微信跳转登录 boolean flag = true; @@ -466,11 +468,19 @@ public class UserController { * @return */ @GetMapping("/getCaptchaid") - public JSONObject getCaptchaid(HttpServletRequest httpServletRequest){ + public JSONObject getCaptchaid(HttpServletRequest httpServletRequest, HttpServletResponse response){ + response.setHeader("Access-Control-Allow-Origin", "*"); JSONObject captcha = LinkInterfaceUtil.Captcha(httpServletRequest); return captcha; } + + @PostMapping("/accountLook") + public RestResponse accountLook(HttpServletRequest request){ + Object userToken = request.getAttribute("userToken"); + return new RestResponse(userToken); + } + @GetMapping("/findUserRole") public RestResponse findUserRole(@RequestParam Map map,HttpServletRequest request){ UserByPort userToken = (UserByPort) request.getAttribute("userToken"); diff --git a/src/main/java/com/dreamchaser/depository_manage/mapper/MaterialMapper.java b/src/main/java/com/dreamchaser/depository_manage/mapper/MaterialMapper.java index 180531c9..a2719a02 100644 --- a/src/main/java/com/dreamchaser/depository_manage/mapper/MaterialMapper.java +++ b/src/main/java/com/dreamchaser/depository_manage/mapper/MaterialMapper.java @@ -396,4 +396,11 @@ public interface MaterialMapper { * @return */ Integer updateQrCodeAndMaterial(Map map); + + /** + * 获取当前仓库列表下的库存数量 + * @param depositoryIds 待查询仓库列表 + * @return + */ + Integer findInventoryCountByDepository(List depositoryIds); } diff --git a/src/main/java/com/dreamchaser/depository_manage/mapper/MaterialMapper.xml b/src/main/java/com/dreamchaser/depository_manage/mapper/MaterialMapper.xml index 47213c7a..d25ba785 100644 --- a/src/main/java/com/dreamchaser/depository_manage/mapper/MaterialMapper.xml +++ b/src/main/java/com/dreamchaser/depository_manage/mapper/MaterialMapper.xml @@ -713,6 +713,17 @@ #{item} + diff --git a/src/main/java/com/dreamchaser/depository_manage/service/MaterialService.java b/src/main/java/com/dreamchaser/depository_manage/service/MaterialService.java index bc2ff2c2..9304457c 100644 --- a/src/main/java/com/dreamchaser/depository_manage/service/MaterialService.java +++ b/src/main/java/com/dreamchaser/depository_manage/service/MaterialService.java @@ -401,4 +401,12 @@ public interface MaterialService { * @return */ Integer barCodeToQrCode(Map map); + + + /** + * 获取当前仓库列表下的库存数量 + * @param depositoryIds 待查询仓库列表 + * @return + */ + Integer findInventoryCountByDepository(List depositoryIds); } diff --git a/src/main/java/com/dreamchaser/depository_manage/service/impl/MaterialServiceImpl.java b/src/main/java/com/dreamchaser/depository_manage/service/impl/MaterialServiceImpl.java index 20caf434..bf54c55d 100644 --- a/src/main/java/com/dreamchaser/depository_manage/service/impl/MaterialServiceImpl.java +++ b/src/main/java/com/dreamchaser/depository_manage/service/impl/MaterialServiceImpl.java @@ -2667,6 +2667,16 @@ public class MaterialServiceImpl implements MaterialService { } } + /** + * 获取当前仓库列表下的库存数量 + * @param depositoryIds 待查询仓库列表 + * @return + */ + @Override + public Integer findInventoryCountByDepository(List depositoryIds) { + return materialMapper.findInventoryCountByDepository(depositoryIds); + } + // 构造树形组件数据模板(通过物料名称搜索) public Map InitTreeMenusForSelectName(MaterialType mt, List children) { if (mt != null) { diff --git a/src/main/resources/templates/pages/place/place_edit.html b/src/main/resources/templates/pages/place/place_edit.html index 16c63c44..7181469d 100644 --- a/src/main/resources/templates/pages/place/place_edit.html +++ b/src/main/resources/templates/pages/place/place_edit.html @@ -40,14 +40,14 @@
+ name="place_z" lay-verify="required"/>
+ name="code" lay-verify="required"/>
@@ -124,8 +124,13 @@ success: function (data) { layer.close(this.layerIndex); if (data.status >= 300) { - layer.msg(data.statusInfo.message);//失败的表情 - return; + layer.msg(data.statusInfo.detail,{ + icon:0, + time:1000 + },function () { + location.reload(); + });//失败的表情 + } else { layer.msg("修改成功!", { icon: 6,//成功的表情 diff --git a/target/classes/com/dreamchaser/depository_manage/mapper/MaterialMapper.xml b/target/classes/com/dreamchaser/depository_manage/mapper/MaterialMapper.xml index 47213c7a..d25ba785 100644 --- a/target/classes/com/dreamchaser/depository_manage/mapper/MaterialMapper.xml +++ b/target/classes/com/dreamchaser/depository_manage/mapper/MaterialMapper.xml @@ -713,6 +713,17 @@ #{item} + diff --git a/target/classes/templates/pages/place/place_edit.html b/target/classes/templates/pages/place/place_edit.html index b7845691..7181469d 100644 --- a/target/classes/templates/pages/place/place_edit.html +++ b/target/classes/templates/pages/place/place_edit.html @@ -40,7 +40,14 @@
+ name="place_z" lay-verify="required"/> +
+
+
+ +
+
@@ -117,8 +124,13 @@ success: function (data) { layer.close(this.layerIndex); if (data.status >= 300) { - layer.msg(data.statusInfo.message);//失败的表情 - return; + layer.msg(data.statusInfo.detail,{ + icon:0, + time:1000 + },function () { + location.reload(); + });//失败的表情 + } else { layer.msg("修改成功!", { icon: 6,//成功的表情