From 96725c84f408fbf2dc5ba0f0aedc96a4226f378e Mon Sep 17 00:00:00 2001 From: erdanergou Date: Thu, 5 Jan 2023 14:27:28 +0800 Subject: [PATCH] =?UTF-8?q?bug=E6=A3=80=E6=B5=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../DepositoryRecordController.java | 2 +- .../controller/GroupController.java | 56 +- .../controller/MaterialController.java | 4 +- .../controller/PageController.java | 8 +- .../depository_manage/entity/Depository.java | 2 + .../pojo/SimpleApplicationOutMinRecordP.java | 5 + .../pojo/StockTakingChildP.java | 6 + .../service/impl/QyWxOperationService.java | 647 ++++++++++-------- .../service/impl/StockTakingServiceImpl.java | 18 +- src/main/resources/static/js/lay-config.js | 4 +- .../pages/application/application-in.html | 88 +-- .../application-in_scanQrCode.html | 253 +++++-- .../application-out_min-mobile.html | 2 + .../application/application-out_min.html | 1 + .../pages/scanQrCode/ScanBarOrQrCodeOut.html | 16 +- .../pages/stockTaking/stockTakingReview.html | 2 +- .../pages/stockTaking/stockTakingView.html | 2 +- target/classes/static/js/lay-config.js | 4 +- .../application-out_min-mobile.html | 2 + .../application/application-out_min.html | 1 + .../pages/scanQrCode/ScanBarOrQrCodeOut.html | 16 +- .../pages/stockTaking/stockTakingReview.html | 2 +- .../pages/stockTaking/stockTakingView.html | 2 +- 23 files changed, 684 insertions(+), 459 deletions(-) diff --git a/src/main/java/com/dreamchaser/depository_manage/controller/DepositoryRecordController.java b/src/main/java/com/dreamchaser/depository_manage/controller/DepositoryRecordController.java index a0c1c794..f78eec21 100644 --- a/src/main/java/com/dreamchaser/depository_manage/controller/DepositoryRecordController.java +++ b/src/main/java/com/dreamchaser/depository_manage/controller/DepositoryRecordController.java @@ -582,7 +582,7 @@ public class DepositoryRecordController { simpleApplicationOutMinRecordP.setPcode(sb.toString()); simpleApplicationOutMinRecordP.setPid(placeByDid.getId()); simpleApplicationOutMinRecordP.setState(state); - + simpleApplicationOutMinRecordP.setVersion(materialById.getVersion()); applicationOutRecordMinList.add(simpleApplicationOutMinRecordP); } diff --git a/src/main/java/com/dreamchaser/depository_manage/controller/GroupController.java b/src/main/java/com/dreamchaser/depository_manage/controller/GroupController.java index eba3ae0f..53b9d014 100644 --- a/src/main/java/com/dreamchaser/depository_manage/controller/GroupController.java +++ b/src/main/java/com/dreamchaser/depository_manage/controller/GroupController.java @@ -59,7 +59,7 @@ public class GroupController { } @PostMapping("/findGroupByCodeForIn") - public RestResponse findGroupByCodeForIn (@RequestBody Map map, HttpServletRequest request) { + public RestResponse findGroupByCodeForIn(@RequestBody Map map, HttpServletRequest request) { String code = map.get("code").toString(); // 获取组合编码 @@ -67,7 +67,7 @@ public class GroupController { if (groupByCode != null) { List groupByGid = groupService.findGroupInfoByGid(groupByCode.getId()); return new RestResponse(groupByGid); - }else{ + } else { return new RestResponse(null, 666, new StatusInfo("失败", "暂无该组合,请确认是否正确")); } } @@ -75,7 +75,8 @@ public class GroupController { /** * 用于出库时查找对应编码的组合 - * @param map 查询条件 + * + * @param map 查询条件 * @param request * @return */ @@ -94,7 +95,6 @@ public class GroupController { if (groupByCode != null) { - List groupByGid = groupService.findGroupInfoByGid(groupByCode.getId()); // 用于标识当前组合是否可以正常出库 @@ -123,7 +123,7 @@ public class GroupController { if (flag) { return new RestResponse(groupByGid); } else { - return new RestResponse(null, 666, new StatusInfo("不能出库", "当前组合中的 "+errMsg.toString()+"库存不足")); + return new RestResponse(null, 666, new StatusInfo("不能出库", "当前组合中的 " + errMsg.toString() + "库存不足")); } } else { return new RestResponse(null, 666, new StatusInfo("失败", "暂无该组合,请确认是否正确")); @@ -349,33 +349,37 @@ public class GroupController { // 定义错误信息 StringBuilder errMsg = new StringBuilder(); + String type = (String) map.get("type"); // 用于标识当前组合是否可以正常出库 boolean flag = true; - for (GroupInfo groupInfo : groupByGid) { - - // 获取详细信息 - // 获取该物料的库存 - List inventoryByMidAndDepository = materialService.findInventoryByMidAndDepository(groupInfo, depositoryByAdminorg); - // 用于标志当前物料库存是否符合要求 - boolean flagForQuantity = false; - for (Integer quantity : inventoryByMidAndDepository) { - // 如果库存符合要求 - if (quantity > groupInfo.getQuantity()) { - flagForQuantity = true; + + if (!"in".equals(type)) { + for (GroupInfo groupInfo : groupByGid) { + + // 获取详细信息 + // 获取该物料的库存 + List inventoryByMidAndDepository = materialService.findInventoryByMidAndDepository(groupInfo, depositoryByAdminorg); + // 用于标志当前物料库存是否符合要求 + boolean flagForQuantity = false; + for (Integer quantity : inventoryByMidAndDepository) { + // 如果库存符合要求 + if (quantity >= groupInfo.getQuantity()) { + flagForQuantity = true; + } + } + if (!flagForQuantity) { + // 如果当前不符合 + flag = false; + errMsg.append(" ").append(groupInfo.getMname()).append(" "); + break; } - } - if (!flagForQuantity) { - // 如果当前不符合 - flag = false; - errMsg.append(" ").append(groupInfo.getMname()).append(" "); - break; - } + } } if (flag) { return new RestResponse(groupByGid); } else { - return new RestResponse(null, 666, new StatusInfo("不能出库", "当前组合中的"+errMsg+"在仓库中库存不足")); + return new RestResponse(null, 666, new StatusInfo("不能出库", "当前组合中的" + errMsg + "在仓库中库存不足")); } } @@ -471,6 +475,7 @@ public class GroupController { /** * 用于构造组合入库单 + * * @param map 入库数据 * @param request * @return @@ -503,12 +508,13 @@ public class GroupController { } catch (Exception e) { return new RestResponse("", 666, new StatusInfo("出库失败", e.getMessage())); } - return CrudUtil.putHandle(result,integer); + return CrudUtil.putHandle(result, integer); } /** * 用于构造组合出库单 + * * @param map 出库数据 * @param request * @return diff --git a/src/main/java/com/dreamchaser/depository_manage/controller/MaterialController.java b/src/main/java/com/dreamchaser/depository_manage/controller/MaterialController.java index 1d23fde7..ea7577fd 100644 --- a/src/main/java/com/dreamchaser/depository_manage/controller/MaterialController.java +++ b/src/main/java/com/dreamchaser/depository_manage/controller/MaterialController.java @@ -389,8 +389,8 @@ public class MaterialController { List materialPByCondition = new ArrayList<>(); List inventoryPByCondition = new ArrayList<>(); param.put("mcode", code); - for (int i = 0; i < depositoryByAdminorg.size(); i++) { - param.put("depositoryId", depositoryByAdminorg.get(i).getId()); + for (Depository depository : depositoryByAdminorg) { + param.put("depositoryId", depository.getId()); // 查找当前用户部门仓库中是否存在该物料 inventoryPByCondition = materialService.findInventory(param); if (inventoryPByCondition.size() > 0) { diff --git a/src/main/java/com/dreamchaser/depository_manage/controller/PageController.java b/src/main/java/com/dreamchaser/depository_manage/controller/PageController.java index 02f31c92..5e25f509 100644 --- a/src/main/java/com/dreamchaser/depository_manage/controller/PageController.java +++ b/src/main/java/com/dreamchaser/depository_manage/controller/PageController.java @@ -1609,6 +1609,7 @@ public class PageController { Integer departmentManagerState = stp.getDepartmentManagerState(); if (Integer.compare(departmentManagerState, 3) == 0) { // 如果当前盘点记录未经过负责人处理 + // 跳转到审核页面 mv.setViewName("pages/stockTaking/stockTakingReview"); } else { @@ -2099,10 +2100,11 @@ public class PageController { JSONObject jsonObject = JSONObject.parseObject(scanQrCodeValue); JSONArray mids = (JSONArray) jsonObject.get("mids"); List materialList = new ArrayList<>(); - for (int i = 0; i < mids.size(); i++) { + for (Object mid : mids) { Map param = new HashMap<>(); - Integer o = ObjectFormatUtil.toInteger(mids.get(i)); + Integer o = ObjectFormatUtil.toInteger(mid); MaterialP mp = new MaterialP(materialService.findMaterialById(o)); + List splitInfoByMid = splitUnitService.findSplitInfoByMid(mp.getId()); param.put("mid", mp.getId()); param.put("mname", mp.getMname()); param.put("code", mp.getCode()); @@ -2110,6 +2112,8 @@ public class PageController { param.put("version", mp.getVersion()); List materialByBarCodeByCondition = materialService.findMaterialByBarCodeByCondition(param); param.put("materialAndBarCodeList", materialByBarCodeByCondition); + param.put("splitList",splitInfoByMid); + param.put("unit",mp.getUnit()); String context = JSONObject.toJSONString(param); materialList.add(context); } diff --git a/src/main/java/com/dreamchaser/depository_manage/entity/Depository.java b/src/main/java/com/dreamchaser/depository_manage/entity/Depository.java index 004dfc90..c0c9dcb6 100644 --- a/src/main/java/com/dreamchaser/depository_manage/entity/Depository.java +++ b/src/main/java/com/dreamchaser/depository_manage/entity/Depository.java @@ -16,6 +16,8 @@ public class Depository { /** id */ private Integer id; + + /** 仓库名称 */ private String dname; diff --git a/src/main/java/com/dreamchaser/depository_manage/pojo/SimpleApplicationOutMinRecordP.java b/src/main/java/com/dreamchaser/depository_manage/pojo/SimpleApplicationOutMinRecordP.java index 953ad14b..38cb3f60 100644 --- a/src/main/java/com/dreamchaser/depository_manage/pojo/SimpleApplicationOutMinRecordP.java +++ b/src/main/java/com/dreamchaser/depository_manage/pojo/SimpleApplicationOutMinRecordP.java @@ -87,6 +87,11 @@ public class SimpleApplicationOutMinRecordP { */ private String showQuantity; + /** + * 物料规格型号 + */ + private String version; + public SimpleApplicationOutMinRecordP(ApplicationOutRecordMin applicationOutRecordMin) { this.id = applicationOutRecordMin.getId(); this.parentId = applicationOutRecordMin.getParentId(); diff --git a/src/main/java/com/dreamchaser/depository_manage/pojo/StockTakingChildP.java b/src/main/java/com/dreamchaser/depository_manage/pojo/StockTakingChildP.java index 3f0f037b..dda329d4 100644 --- a/src/main/java/com/dreamchaser/depository_manage/pojo/StockTakingChildP.java +++ b/src/main/java/com/dreamchaser/depository_manage/pojo/StockTakingChildP.java @@ -101,6 +101,12 @@ public class StockTakingChildP { */ private String unit; + /** + * 用于展示当前盘点的计量单位 + */ + private String showUnit; + + diff --git a/src/main/java/com/dreamchaser/depository_manage/service/impl/QyWxOperationService.java b/src/main/java/com/dreamchaser/depository_manage/service/impl/QyWxOperationService.java index 04c913a3..524aadc9 100644 --- a/src/main/java/com/dreamchaser/depository_manage/service/impl/QyWxOperationService.java +++ b/src/main/java/com/dreamchaser/depository_manage/service/impl/QyWxOperationService.java @@ -58,7 +58,7 @@ public class QyWxOperationService { * @param flag 用于判断发送类型是部门负责人还是仓储负责人(true为部门,false为仓储) * @return */ - public JSONObject sendQyWxToApplicationOutMessage(String uid, Integer outId, Boolean flag,String userAgent) { + public JSONObject sendQyWxToApplicationOutMessage(String uid, Integer outId, Boolean flag, String userAgent) { // 获取将要发送申请的订单记录 ApplicationOutRecordP applicationOutRecordPById = depositoryRecordMapper.findApplicationOutRecordPById(outId); @@ -245,11 +245,12 @@ public class QyWxOperationService { /** * 用于向企业微信中该盘点记录的负责人发送盘点消息 - * @param uid 接收人 + * + * @param uid 接收人 * @param mainId 盘点记录编号 * @return */ - public JSONObject sendQyWxToStockTakingDepartmentManagerMessage(String uid, Integer mainId,String userAgent){ + public JSONObject sendQyWxToStockTakingDepartmentManagerMessage(String uid, Integer mainId, String userAgent) { // 获取盘点主记录 StockTaking mainRecord = stockTakingMapper.selectStockTakingById(mainId); @@ -280,12 +281,12 @@ public class QyWxOperationService { Depository depository = depositoryMapper.findDepositoryById(depositoryId); Location.append(depository.getDname()); - if(Integer.compare(0,placeId) == 0){ + if (Integer.compare(0, placeId) == 0) { // 如果盘点库位为默认库位 Location.append(" - 默认库位"); - }else{ + } else { Location.append(" - ").append(place.getCode()); } @@ -300,11 +301,11 @@ public class QyWxOperationService { stockTakingQuantity.append(childP.getNewInventory()).append(","); // 设置盘点结果 String takingResult = childP.getTakingResult(); - if("Inventory_up".equals(takingResult)){ + if ("Inventory_up".equals(takingResult)) { takingResult = "盘盈"; - }else if("Inventory_down".equals(takingResult)){ + } else if ("Inventory_down".equals(takingResult)) { takingResult = "盘亏"; - }else if("Inventory_normal".equals(takingResult)){ + } else if ("Inventory_normal".equals(takingResult)) { takingResult = "正常"; } stockTakingResult.append(takingResult).append(","); @@ -313,7 +314,7 @@ public class QyWxOperationService { } // 1.获取access_token:根据企业id和应用密钥获取access_token,并拼接请求url - String accessToken = QyWxConfig.GetQYWXToken(userAgent); + String accessToken = QyWxConfig.GetQYWXToken(userAgent); // 2.获取发送对象,并转成json ButtonInteraction buttonInteraction = new ButtonInteraction(); // 1.1非必需 @@ -404,8 +405,6 @@ public class QyWxOperationService { horizontal_content_inventory.setValue(stockTakingInventory.toString()); - - // 二级标题+文本列表,用于设置申请查看明细 TemplateCard_horizontal_content horizontal_content_detail = new TemplateCard_horizontal_content(); // 链接类型 0代表不是链接 @@ -491,15 +490,16 @@ public class QyWxOperationService { /** * 用于向企业微信盘点人员发送盘点消息 - * @param uid 接收人 + * + * @param uid 接收人 * @param mainId 盘点记录编号 * @return */ - public JSONObject sendQyWxToStockTakingMessage(String uid, Integer mainId,List normalMinId,String userAgent){ + public JSONObject sendQyWxToStockTakingMessage(String uid, Integer mainId, List normalMinId, String userAgent) { // 获取盘点主记录 StockTaking mainRecord = stockTakingMapper.selectStockTakingById(mainId); - if(normalMinId.size() == 0){ + if (normalMinId.size() == 0) { return null; } @@ -530,12 +530,12 @@ public class QyWxOperationService { Depository depository = depositoryMapper.findDepositoryById(depositoryId); Location.append(depository.getDname()); - if(Integer.compare(0,placeId) == 0){ + if (Integer.compare(0, placeId) == 0) { // 如果盘点库位为默认库位 Location.append(" - 默认库位"); - }else{ + } else { Location.append(" - ").append(place.getCode()); } @@ -550,11 +550,11 @@ public class QyWxOperationService { stockTakingQuantity.append(childP.getNewInventory()).append(","); // 设置盘点结果 String takingResult = childP.getTakingResult(); - if("Inventory_up".equals(takingResult)){ + if ("Inventory_up".equals(takingResult)) { takingResult = "盘盈"; - }else if("Inventory_down".equals(takingResult)){ + } else if ("Inventory_down".equals(takingResult)) { takingResult = "盘亏"; - }else if("Inventory_normal".equals(takingResult)){ + } else if ("Inventory_normal".equals(takingResult)) { takingResult = "正常"; } stockTakingResult.append(takingResult).append(","); @@ -563,7 +563,7 @@ public class QyWxOperationService { } // 1.获取access_token:根据企业id和应用密钥获取access_token,并拼接请求url - String accessToken = QyWxConfig.GetQYWXToken(userAgent); + String accessToken = QyWxConfig.GetQYWXToken(userAgent); // 2.获取发送对象,并转成json ButtonInteraction buttonInteraction = new ButtonInteraction(); // 1.1非必需 @@ -654,8 +654,6 @@ public class QyWxOperationService { horizontal_content_inventory.setValue(stockTakingInventory.toString()); - - // 二级标题+文本列表,用于设置申请查看明细 TemplateCard_horizontal_content horizontal_content_detail = new TemplateCard_horizontal_content(); // 链接类型 0代表不是链接 @@ -666,6 +664,13 @@ public class QyWxOperationService { horizontal_content_detail.setUrl("https://jy.hxgk.group/StockTakingView?id=" + mainId); + // 卡片整体点击方法 + TemplateCard_card_action card_action = new TemplateCard_card_action(); + card_action.setType(1); + card_action.setUrl("https://jy.hxgk.group/StockTakingView?id=" + mainId); + templateCard_button_interaction.setCard_action(card_action); + + List horizontal_contentList = new ArrayList<>(); horizontal_contentList.add(horizontal_content_mname); horizontal_contentList.add(horizontal_content_quantity); @@ -738,7 +743,7 @@ public class QyWxOperationService { * @param outId 订单编号 * @return */ - public JSONObject sendCcMessageToUsers(String uid, Integer outId,String userAgent) { + public JSONObject sendCcMessageToUsers(String uid, Integer outId, String userAgent) { // 获取已经完成的订单 ApplicationOutRecordP recordP = depositoryRecordMapper.findApplicationOutRecordPById(outId); // 申请人id @@ -782,7 +787,7 @@ public class QyWxOperationService { // 获取对应出库单位 String unit = recordMin.getUnit(); - if("-1".equals(unit)){ + if ("-1".equals(unit)) { unit = materialById.getUnit(); } content.append(">- 物料名称:").append(materialById.getMname()).append("%n"); @@ -821,7 +826,7 @@ public class QyWxOperationService { * @param map * @return */ - public JSONObject sendCcStockTakingMessageToHead(String uid, Map map, UserByPort userToken, StockTaking mainRecord,String userAgent) { + public JSONObject sendCcStockTakingMessageToHead(String uid, Map map, UserByPort userToken, StockTaking mainRecord, String userAgent) { /** * 获取完成的订单 @@ -866,11 +871,11 @@ public class QyWxOperationService { // 设置盘点结果 String takingResult = minRecord.getTakingResult(); - if("Inventory_up".equals(takingResult)){ + if ("Inventory_up".equals(takingResult)) { takingResult = "盘盈"; - }else if("Inventory_down".equals(takingResult)){ + } else if ("Inventory_down".equals(takingResult)) { takingResult = "盘亏"; - }else if("Inventory_normal".equals(takingResult)){ + } else if ("Inventory_normal".equals(takingResult)) { takingResult = "正常"; } @@ -885,16 +890,16 @@ public class QyWxOperationService { // 盘点位置 String fromLocation = ""; - if(Integer.compare(0,oldPlaceId) == 0){ + if (Integer.compare(0, oldPlaceId) == 0) { // 如果转移前的位置为默认库位 fromLocation = fromDepository.getDname() + " - 默认库位"; - }else{ - fromLocation = fromDepository.getDname() + " - "+oldPlace.getCode(); + } else { + fromLocation = fromDepository.getDname() + " - " + oldPlace.getCode(); } // 获取对应盘点单位 String unit = minRecord.getUnit(); - if("-1".equals(unit)){ + if ("-1".equals(unit)) { unit = material.getUnit(); } content.append(">- 物料名称:").append(material.getMname()).append("%n"); @@ -915,7 +920,7 @@ public class QyWxOperationService { System.out.println(jsonString); // 3.获取请求的url // 获取access_token:根据企业id和应用密钥获取access_token,并拼接请求url - String accessToken =QyWxConfig.GetQYWXToken(userAgent); + String accessToken = QyWxConfig.GetQYWXToken(userAgent); String url = QyWxConfig.sendMessage_url.replace("ACCESS_TOKEN", accessToken); // 4.调用接口,发送消息 @@ -930,12 +935,13 @@ public class QyWxOperationService { /** * 用于向负责人发送盘点过程中的错误信息 - * @param uid 接收人 - * @param errIds 错误id + * + * @param uid 接收人 + * @param errIds 错误id * @param mainRecord 主订单 * @return */ - public JSONObject sendStockTakingErrMessageToHead(String uid,List errIds,StockTaking mainRecord,UserByPort userToken,String userAgent){ + public JSONObject sendStockTakingErrMessageToHead(String uid, List errIds, StockTaking mainRecord, UserByPort userToken, String userAgent) { MessageByMarkDown markDown = new MessageByMarkDown(); //设置消息接收者 @@ -985,11 +991,11 @@ public class QyWxOperationService { // 盘点位置 String fromLocation = ""; - if(Integer.compare(0,oldPlaceId) == 0){ + if (Integer.compare(0, oldPlaceId) == 0) { // 如果转移前的位置为默认库位 fromLocation = fromDepository.getDname() + " - 默认库位"; - }else{ - fromLocation = fromDepository.getDname() + " - "+oldPlace.getCode(); + } else { + fromLocation = fromDepository.getDname() + " - " + oldPlace.getCode(); } content.append(">- 物料名称:").append(material.getMname()).append("%n"); @@ -1009,7 +1015,7 @@ public class QyWxOperationService { System.out.println(jsonString); // 3.获取请求的url // 获取access_token:根据企业id和应用密钥获取access_token,并拼接请求url - String accessToken = QyWxConfig.GetQYWXToken(userAgent) ; + String accessToken = QyWxConfig.GetQYWXToken(userAgent); String url = QyWxConfig.sendMessage_url.replace("ACCESS_TOKEN", accessToken); // 4.调用接口,发送消息 @@ -1025,10 +1031,11 @@ public class QyWxOperationService { /** * 将转移信息发送给盘点人员 + * * @param map * @return */ - public JSONObject sendCcStockTakingTransferMessageToHead(String uid, Map map, UserByPort userToken, StockTaking mainRecord,String userAgent){ + public JSONObject sendCcStockTakingTransferMessageToHead(String uid, Map map, UserByPort userToken, StockTaking mainRecord, String userAgent) { /** * 获取要转移的订单 @@ -1072,7 +1079,7 @@ public class QyWxOperationService { // 获取转移数量 - Integer inventory = ObjectFormatUtil.toInteger(map.get("invnetory"+minId)); + Integer inventory = ObjectFormatUtil.toInteger(map.get("invnetory" + minId)); // 获取转移前的库位 Integer oldPlaceId = ObjectFormatUtil.toInteger(mainRecord.getPlaceId()); Place oldPlace = placeMapper.findPlaceById(oldPlaceId); @@ -1096,36 +1103,35 @@ public class QyWxOperationService { // 获取转移后的仓库 Depository toDepository = depositoryMapper.findDepositoryById(newPlace.getDid()); - if(toDepository == null){ + if (toDepository == null) { } - if(Integer.compare(0,oldPlaceId) == 0){ + if (Integer.compare(0, oldPlaceId) == 0) { // 如果转移前的位置为默认库位 fromLocation = fromDepository.getDname() + " - 默认库位"; - }else{ - fromLocation = fromDepository.getDname() + " - "+oldPlace.getCode(); + } else { + fromLocation = fromDepository.getDname() + " - " + oldPlace.getCode(); } - if(Integer.compare(0,newPlaceId) == 0){ + if (Integer.compare(0, newPlaceId) == 0) { // 如果转移后的位置为默认库位 toLocation = toDepository.getDname() + " - 默认库位"; - }else{ - toLocation = toDepository.getDname() + " - "+newPlace.getCode(); + } else { + toLocation = toDepository.getDname() + " - " + newPlace.getCode(); } //获取物料与转移前库位的对应关系 - Map paramForMaterialAndPlace = new HashMap<>(); - paramForMaterialAndPlace.put("mid",material.getId()); - paramForMaterialAndPlace.put("pid",oldPlace.getId()); + Map paramForMaterialAndPlace = new HashMap<>(); + paramForMaterialAndPlace.put("mid", material.getId()); + paramForMaterialAndPlace.put("pid", oldPlace.getId()); MaterialAndPlace oldPlaceAndMaterial = placeMapper.findPlaceAndMaterialByMidAndPid(paramForMaterialAndPlace); //获取物料与转移后库位的对应关系 - paramForMaterialAndPlace.put("pid",newPlace.getId()); + paramForMaterialAndPlace.put("pid", newPlace.getId()); MaterialAndPlace newPlaceAndMaterial = placeMapper.findPlaceAndMaterialByMidAndPid(paramForMaterialAndPlace); - content.append(">- 物料名称:").append(material.getMname()).append("%n"); content.append(">- 盘点数量:").append(minRecord.getNewInventory()).append("%n"); content.append(">- 盘点位置:").append(fromLocation).append("%n"); @@ -1145,7 +1151,7 @@ public class QyWxOperationService { System.out.println(jsonString); // 3.获取请求的url // 获取access_token:根据企业id和应用密钥获取access_token,并拼接请求url - String accessToken = QyWxConfig.GetQYWXToken(userAgent) ; + String accessToken = QyWxConfig.GetQYWXToken(userAgent); String url = QyWxConfig.sendMessage_url.replace("ACCESS_TOKEN", accessToken); // 4.调用接口,发送消息 @@ -1165,7 +1171,7 @@ public class QyWxOperationService { * @param outMinId * @return */ - public JSONObject sendNotificationToDepositoryManager(String uid, Integer outMinId,String userAgent) { + public JSONObject sendNotificationToDepositoryManager(String uid, Integer outMinId, String userAgent) { // 需要出库的子订单 ApplicationOutRecordMin recordMin = depositoryRecordMapper.findApplicationOutMinById(outMinId); // 获取其主订单 @@ -1237,16 +1243,28 @@ public class QyWxOperationService { horizontal_content_mname.setType(0); horizontal_content_mname.setKeyname("物料名称:"); horizontal_content_mname.setValue(materialById.getMname()); - // 物料编码 - TemplateCard_horizontal_content horizontal_content_mcode = new TemplateCard_horizontal_content(); - horizontal_content_mcode.setType(0); - horizontal_content_mcode.setKeyname("物料编码:"); - horizontal_content_mcode.setValue(materialById.getCode()); + // 物料编码规格型号 + TemplateCard_horizontal_content horizontal_content_version = new TemplateCard_horizontal_content(); + horizontal_content_version.setType(0); + horizontal_content_version.setKeyname("物料型号:"); + horizontal_content_version.setValue(materialById.getVersion()); // 申请数量 TemplateCard_horizontal_content horizontal_content_quantity = new TemplateCard_horizontal_content(); horizontal_content_quantity.setType(0); horizontal_content_quantity.setKeyname("申请数量:"); horizontal_content_quantity.setValue(recordMin.getQuantity().toString()); + + // 申请单位 + TemplateCard_horizontal_content horizontal_content_unit = new TemplateCard_horizontal_content(); + horizontal_content_unit.setType(0); + horizontal_content_unit.setKeyname("申请单位:"); + // 当前申请单位 + String unit = recordMin.getUnit(); + if ("-1".equals(unit)) { + // 如果是基础单位 + unit = materialById.getUnit(); + } + horizontal_content_unit.setValue(unit); // 所在仓库 TemplateCard_horizontal_content horizontal_content_depository = new TemplateCard_horizontal_content(); horizontal_content_depository.setType(0); @@ -1260,8 +1278,9 @@ public class QyWxOperationService { horizontal_content_applyRemark.setValue(outRecordP.getApplyRemark()); horizontalContentList.add(horizontal_content_mname); - horizontalContentList.add(horizontal_content_mcode); + horizontalContentList.add(horizontal_content_version); horizontalContentList.add(horizontal_content_quantity); + horizontalContentList.add(horizontal_content_unit); horizontalContentList.add(horizontal_content_depository); horizontalContentList.add(horizontal_content_applyRemark); @@ -1307,7 +1326,7 @@ public class QyWxOperationService { * @param msgid 待撤回消息的id * @return */ - public String withdrawQyWxMessage(String msgid,String userAgent) { + public String withdrawQyWxMessage(String msgid, String userAgent) { String url = String.format("https://qyapi.weixin.qq.com/cgi-bin/message/recall?access_token=%s", QyWxConfig.GetQYWXToken(userAgent)); Map param = new HashMap<>(); param.put("msgid", msgid); @@ -1331,7 +1350,7 @@ public class QyWxOperationService { * @param response_code * @return */ - public JSONObject updateTemplateCard(String response_code, String userName, String state,String userAgent) { + public JSONObject updateTemplateCard(String response_code, String userName, String state, String userAgent) { String url = String.format("https://qyapi.weixin.qq.com/cgi-bin/message/update_template_card?access_token=" + QyWxConfig.GetQYWXToken(userAgent) + "&debug=1"); Map map = new HashMap<>(); map.put("atall", 1); @@ -1349,12 +1368,13 @@ public class QyWxOperationService { /** * 获取审批模板详细 + * * @return */ - public JSONObject getApprovalTemplateInfo(String userAgent,String template_id){ - String url = String.format("https://qyapi.weixin.qq.com/cgi-bin/oa/gettemplatedetail?access_token="+QyWxConfig.GetQYWXToken(userAgent)); - Map param = new HashMap<>(); - param.put("template_id",template_id); + public JSONObject getApprovalTemplateInfo(String userAgent, String template_id) { + String url = String.format("https://qyapi.weixin.qq.com/cgi-bin/oa/gettemplatedetail?access_token=" + QyWxConfig.GetQYWXToken(userAgent)); + Map param = new HashMap<>(); + param.put("template_id", template_id); String jsonString = JSONObject.toJSONString(param); String s = HttpUtils.doPost(url, jsonString); JSONObject jsonObject = JSON.parseObject(s); @@ -1364,12 +1384,13 @@ public class QyWxOperationService { /** * 用于发送物料出库审批 + * * @param userAgent 加密后的userAgent * @param userToken 申请人 - * @param mainId 出库的主订单 + * @param mainId 出库的主订单 * @return 发送结果 */ - public JSONObject sendOutApprovalTemplate(String userAgent,UserByPort userToken,Integer mainId){ + public JSONObject sendOutApprovalTemplate(String userAgent, UserByPort userToken, Integer mainId) { // 获取当前出库主订单 ApplicationOutRecordP mainRecord = depositoryRecordMapper.findApplicationOutRecordPById(mainId); @@ -1380,7 +1401,7 @@ public class QyWxOperationService { // 获取申请人的userId String workwechat = userToken.getWorkwechat(); - if(workwechat == null || "".equals(workwechat)){ + if (workwechat == null || "".equals(workwechat)) { workwechat = userToken.getWechat(); } // String workwechat = "PangFuZhen"; @@ -1420,13 +1441,13 @@ public class QyWxOperationService { approval_template_apply_data_contents_initiator.setId("Contact-1668051509196"); // 成员控件值(control参数为Contact,且value参数为members) - Map members_initiator = new HashMap<>(); - Map contact_user = new HashMap<>(); - List> membersMap_initiator = new ArrayList<>(); - contact_user.put("userid",workwechat); - contact_user.put("name",userToken.getName()); + Map members_initiator = new HashMap<>(); + Map contact_user = new HashMap<>(); + List> membersMap_initiator = new ArrayList<>(); + contact_user.put("userid", workwechat); + contact_user.put("name", userToken.getName()); membersMap_initiator.add(contact_user); - members_initiator.put("members",membersMap_initiator); + members_initiator.put("members", membersMap_initiator); approval_template_apply_data_contents_initiator.setValue(members_initiator); // 添加到控件列表 @@ -1437,11 +1458,11 @@ public class QyWxOperationService { approval_template_apply_data_contents_time.setControl("Date"); approval_template_apply_data_contents_time.setId("Date-1668051535322"); - Map members_time = new HashMap<>(); - Map contact_time = new HashMap<>(); - contact_time.put("type","hour"); - contact_time.put("s_timestamp", String.valueOf(System.currentTimeMillis()/1000)); - members_time.put("date",contact_time); + Map members_time = new HashMap<>(); + Map contact_time = new HashMap<>(); + contact_time.put("type", "hour"); + contact_time.put("s_timestamp", String.valueOf(System.currentTimeMillis() / 1000)); + members_time.put("date", contact_time); approval_template_apply_data_contents_time.setValue(members_time); // 添加到控件列表 @@ -1457,13 +1478,13 @@ public class QyWxOperationService { Integer portByQyWxInteger = userPortByQyWx.getInteger("wechatorganizationid"); // 部门控件值(control参数为Contact,且value参数为departments) - Map members_department = new HashMap<>(); - Map contact_department = new HashMap<>(); - List> membersMap_department = new ArrayList<>(); - contact_department.put("openapi_id",portByQyWxInteger.toString()); - contact_department.put("name",portName); + Map members_department = new HashMap<>(); + Map contact_department = new HashMap<>(); + List> membersMap_department = new ArrayList<>(); + contact_department.put("openapi_id", portByQyWxInteger.toString()); + contact_department.put("name", portName); membersMap_department.add(contact_department); - members_department.put("departments",membersMap_department); + members_department.put("departments", membersMap_department); approval_template_apply_data_contents_department.setValue(members_department); // 添加到控件列表 @@ -1472,15 +1493,15 @@ public class QyWxOperationService { // 获取当前登录用户请求时的备注 String applyRemark = mainRecord.getApplyRemark(); - if(applyRemark == null){ + if (applyRemark == null) { applyRemark = ""; } //定义模板控件——申请备注 Approval_template_apply_data_contents approval_template_apply_data_contents_applyRemark = new Approval_template_apply_data_contents(); approval_template_apply_data_contents_applyRemark.setControl("Textarea"); approval_template_apply_data_contents_applyRemark.setId("Textarea-1668046298633"); - Map applyRemark_text = new HashMap<>(); - applyRemark_text.put("text",applyRemark); + Map applyRemark_text = new HashMap<>(); + applyRemark_text.put("text", applyRemark); approval_template_apply_data_contents_applyRemark.setValue(applyRemark_text); // 添加到控件列表 @@ -1576,7 +1597,7 @@ public class QyWxOperationService { detail_list_control_info_unit.put("value", detail_list_control_info_value_unit); - // 物料名称 + // 仓库名称 Map detail_list_control_info_depositoryName = new HashMap<>(); detail_list_control_info_depositoryName.put("control", "Text"); detail_list_control_info_depositoryName.put("id", "Text-1668137728919"); @@ -1592,12 +1613,29 @@ public class QyWxOperationService { detail_list_control_info_value_dname.put("text", depositoryById.getDname()); detail_list_control_info_depositoryName.put("value", detail_list_control_info_value_dname); + // 物料规格型号 + Map detail_list_control_info_version = new HashMap<>(); + detail_list_control_info_version.put("control", "Text"); + detail_list_control_info_version.put("id", "Text-1672879620723"); + Map detail_list_control_info_title_version = new HashMap<>(); + detail_list_control_info_title_version.put("text", "规格型号"); + detail_list_control_info_title_version.put("lang", "zh_CN"); + + List detail_list_control_info_title_list_version = new ArrayList<>(); + detail_list_control_info_title_list_version.add(detail_list_control_info_title_version); + detail_list_control_info_version.put("title", detail_list_control_info_title_list_version); + + Map detail_list_control_info_value_version = new HashMap<>(); + detail_list_control_info_value_version.put("text", materialById.getVersion() == null ? "" : materialById.getVersion()); + detail_list_control_info_version.put("value", detail_list_control_info_value_version); + detail_list_control.add(detail_list_control_info_materialName); detail_list_control.add(detail_list_control_info_materialCode); detail_list_control.add(detail_list_control_info_outNumber); detail_list_control.add(detail_list_control_info_depositoryName); detail_list_control.add(detail_list_control_info_unit); + detail_list_control.add(detail_list_control_info_version); detail_list.put("list", detail_list_control); @@ -1606,8 +1644,8 @@ public class QyWxOperationService { } - Map approval_template_apply_data_contents_info_children = new HashMap<>(); - approval_template_apply_data_contents_info_children.put("children",contents_detail); + Map approval_template_apply_data_contents_info_children = new HashMap<>(); + approval_template_apply_data_contents_info_children.put("children", contents_detail); approval_template_apply_data_contents_info.setValue(approval_template_apply_data_contents_info_children); // 添加到控件列表 @@ -1622,29 +1660,29 @@ public class QyWxOperationService { Approval_template_summary_info summary_info_name = new Approval_template_summary_info(); - summary_info_name.setText("发起人:"+userToken.getName()); + summary_info_name.setText("发起人:" + userToken.getName()); summary_info_name.setLang("zh_CN"); Approval_template_summary_info summary_info_time = new Approval_template_summary_info(); - summary_info_time.setText("发起时间:"+DateUtil.TimeStampToDateTime(Long.valueOf(mainRecord.getApplicantTime()))); + summary_info_time.setText("发起时间:" + DateUtil.TimeStampToDateTime(Long.valueOf(mainRecord.getApplicantTime()))); summary_info_time.setLang("zh_CN"); Approval_template_summary_info summary_info_department = new Approval_template_summary_info(); - summary_info_department.setText("所在部门:"+portName); + summary_info_department.setText("所在部门:" + portName); summary_info_department.setLang("zh_CN"); // 发起人 - Map summary_info_name_map = new HashMap<>(); + Map summary_info_name_map = new HashMap<>(); List summary_info_name_list = new ArrayList<>(); summary_info_name_list.add(summary_info_name); - summary_info_name_map.put("summary_info",summary_info_name_list); + summary_info_name_map.put("summary_info", summary_info_name_list); // 发起时间 - Map summary_info_time_map = new HashMap<>(); + Map summary_info_time_map = new HashMap<>(); List summary_info_time_list = new ArrayList<>(); summary_info_time_list.add(summary_info_time); - summary_info_time_map.put("summary_info",summary_info_time_list); + summary_info_time_map.put("summary_info", summary_info_time_list); // 所在部门 - Map summary_info_department_map = new HashMap<>(); + Map summary_info_department_map = new HashMap<>(); List summary_info_time_department = new ArrayList<>(); summary_info_time_department.add(summary_info_department); - summary_info_department_map.put("summary_info",summary_info_time_department); + summary_info_department_map.put("summary_info", summary_info_time_department); approval_template_apply_data_contents_summary_list.add(summary_info_name_map); approval_template_apply_data_contents_summary_list.add(summary_info_time_map); @@ -1663,7 +1701,7 @@ public class QyWxOperationService { // 获取最终模板字符串 String jsonString = JSONObject.toJSONString(approvalTemplate); - String url = String.format("https://qyapi.weixin.qq.com/cgi-bin/oa/applyevent?access_token=%s",QyWxConfig.GetQYWXToken(userAgent)); + String url = String.format("https://qyapi.weixin.qq.com/cgi-bin/oa/applyevent?access_token=%s", QyWxConfig.GetQYWXToken(userAgent)); String s = HttpUtils.doPost(url, jsonString); JSONObject jsonObject = JSONObject.parseObject(s); @@ -1673,14 +1711,15 @@ public class QyWxOperationService { /** * 用于发送出库审批 + * * @param userAgent 加密后的userAgent * @param userToken 审批人 - * @param mainId 主订单 + * @param mainId 主订单 * @param minIdList 出库的列表 - * @param QyWxUid 接收人 + * @param QyWxUid 接收人 * @return */ - public JSONObject sendOutApprovalTemplateOut(String userAgent,UserByPort userToken,Integer mainId,List minIdList,String QyWxUid){ + public JSONObject sendOutApprovalTemplateOut(String userAgent, UserByPort userToken, Integer mainId, List minIdList, String QyWxUid) { // 获取当前出库主订单 ApplicationOutRecordP mainRecord = depositoryRecordMapper.findApplicationOutRecordPById(mainId); @@ -1694,7 +1733,7 @@ public class QyWxOperationService { // 获取申请人的userId UserByPort userByPort = LinkInterfaceUtil.FindUserById(mainRecord.getApplicantId(), null); String workwechat = userByPort.getWorkwechat(); - if(workwechat == null || "".equals(workwechat)){ + if (workwechat == null || "".equals(workwechat)) { workwechat = userByPort.getWechat(); } @@ -1736,13 +1775,13 @@ public class QyWxOperationService { approval_template_apply_data_contents_initiator.setId("Contact-1668152083528"); // 成员控件值(control参数为Contact,且value参数为members) - Map members_initiator = new HashMap<>(); - Map contact_user = new HashMap<>(); - List> membersMap_initiator = new ArrayList<>(); - contact_user.put("userid",workwechat); - contact_user.put("name",userByPort.getName()); + Map members_initiator = new HashMap<>(); + Map contact_user = new HashMap<>(); + List> membersMap_initiator = new ArrayList<>(); + contact_user.put("userid", workwechat); + contact_user.put("name", userByPort.getName()); membersMap_initiator.add(contact_user); - members_initiator.put("members",membersMap_initiator); + members_initiator.put("members", membersMap_initiator); approval_template_apply_data_contents_initiator.setValue(members_initiator); // 添加到控件列表 @@ -1753,11 +1792,11 @@ public class QyWxOperationService { approval_template_apply_data_contents_time.setControl("Date"); approval_template_apply_data_contents_time.setId("Date-1668221701454"); - Map members_time = new HashMap<>(); - Map contact_time = new HashMap<>(); - contact_time.put("type","hour"); + Map members_time = new HashMap<>(); + Map contact_time = new HashMap<>(); + contact_time.put("type", "hour"); contact_time.put("s_timestamp", String.valueOf(Long.valueOf(mainRecord.getApplicantTime()) / 1000)); - members_time.put("date",contact_time); + members_time.put("date", contact_time); approval_template_apply_data_contents_time.setValue(members_time); // 添加到控件列表 @@ -1773,20 +1812,19 @@ public class QyWxOperationService { Integer portByQyWxInteger = userPortByQyWx.getInteger("wechatorganizationid"); // 部门控件值(control参数为Contact,且value参数为departments) - Map members_department = new HashMap<>(); - Map contact_department = new HashMap<>(); - List> membersMap_department = new ArrayList<>(); - contact_department.put("openapi_id",portByQyWxInteger.toString()); - contact_department.put("name",portName); + Map members_department = new HashMap<>(); + Map contact_department = new HashMap<>(); + List> membersMap_department = new ArrayList<>(); + contact_department.put("openapi_id", portByQyWxInteger.toString()); + contact_department.put("name", portName); membersMap_department.add(contact_department); - members_department.put("departments",membersMap_department); + members_department.put("departments", membersMap_department); approval_template_apply_data_contents_department.setValue(members_department); // 添加到控件列表 approval_template_apply_data_contents_list.add(approval_template_apply_data_contents_department); - //定义模板控件——明细 Approval_template_apply_data_contents approval_template_apply_data_contents_info = new Approval_template_apply_data_contents(); approval_template_apply_data_contents_info.setControl("Table"); @@ -1877,7 +1915,7 @@ public class QyWxOperationService { detail_list_control_info_value_unit.put("text", unit); detail_list_control_info_unit.put("value", detail_list_control_info_value_unit); - // 物料名称 + // 仓库名称 Map detail_list_control_info_depositoryName = new HashMap<>(); detail_list_control_info_depositoryName.put("control", "Text"); detail_list_control_info_depositoryName.put("id", "Text-1668220760317"); @@ -1894,10 +1932,28 @@ public class QyWxOperationService { detail_list_control_info_depositoryName.put("value", detail_list_control_info_value_dname); + // 物料规格型号 + Map detail_list_control_info_version = new HashMap<>(); + detail_list_control_info_version.put("control", "Text"); + detail_list_control_info_version.put("id", "Text-1672880000043"); + Map detail_list_control_info_title_version = new HashMap<>(); + detail_list_control_info_title_version.put("text", "规格型号"); + detail_list_control_info_title_version.put("lang", "zh_CN"); + + List detail_list_control_info_title_list_version = new ArrayList<>(); + detail_list_control_info_title_list_version.add(detail_list_control_info_title_version); + detail_list_control_info_version.put("title", detail_list_control_info_title_list_version); + + Map detail_list_control_info_value_version = new HashMap<>(); + detail_list_control_info_value_version.put("text", materialById.getVersion() == null ? "" : materialById.getVersion()); + detail_list_control_info_version.put("value", detail_list_control_info_value_version); + + detail_list_control.add(detail_list_control_info_materialName); detail_list_control.add(detail_list_control_info_materialCode); detail_list_control.add(detail_list_control_info_outNumber); detail_list_control.add(detail_list_control_info_depositoryName); + detail_list_control.add(detail_list_control_info_version); detail_list_control.add(detail_list_control_info_unit); @@ -1907,8 +1963,8 @@ public class QyWxOperationService { } - Map approval_template_apply_data_contents_info_children = new HashMap<>(); - approval_template_apply_data_contents_info_children.put("children",contents_detail); + Map approval_template_apply_data_contents_info_children = new HashMap<>(); + approval_template_apply_data_contents_info_children.put("children", contents_detail); approval_template_apply_data_contents_info.setValue(approval_template_apply_data_contents_info_children); // 添加到控件列表 @@ -1922,29 +1978,29 @@ public class QyWxOperationService { List approval_template_apply_data_contents_summary_list = new ArrayList<>(); Approval_template_summary_info summary_info_name = new Approval_template_summary_info(); - summary_info_name.setText("发起人:"+userByPort.getName()); + summary_info_name.setText("发起人:" + userByPort.getName()); summary_info_name.setLang("zh_CN"); Approval_template_summary_info summary_info_time = new Approval_template_summary_info(); - summary_info_time.setText("发起时间:"+DateUtil.TimeStampToDateTime(Long.valueOf(mainRecord.getApplicantTime()))); + summary_info_time.setText("发起时间:" + DateUtil.TimeStampToDateTime(Long.valueOf(mainRecord.getApplicantTime()))); summary_info_time.setLang("zh_CN"); Approval_template_summary_info summary_info_department = new Approval_template_summary_info(); - summary_info_department.setText("所在部门:"+portName); + summary_info_department.setText("所在部门:" + portName); summary_info_department.setLang("zh_CN"); // 发起人 - Map summary_info_name_map = new HashMap<>(); + Map summary_info_name_map = new HashMap<>(); List summary_info_name_list = new ArrayList<>(); summary_info_name_list.add(summary_info_name); - summary_info_name_map.put("summary_info",summary_info_name_list); + summary_info_name_map.put("summary_info", summary_info_name_list); // 发起时间 - Map summary_info_time_map = new HashMap<>(); + Map summary_info_time_map = new HashMap<>(); List summary_info_time_list = new ArrayList<>(); summary_info_time_list.add(summary_info_time); - summary_info_time_map.put("summary_info",summary_info_time_list); + summary_info_time_map.put("summary_info", summary_info_time_list); // 所在部门 - Map summary_info_department_map = new HashMap<>(); + Map summary_info_department_map = new HashMap<>(); List summary_info_time_department = new ArrayList<>(); summary_info_time_department.add(summary_info_department); - summary_info_department_map.put("summary_info",summary_info_time_department); + summary_info_department_map.put("summary_info", summary_info_time_department); approval_template_apply_data_contents_summary_list.add(summary_info_name_map); approval_template_apply_data_contents_summary_list.add(summary_info_time_map); @@ -1974,7 +2030,7 @@ public class QyWxOperationService { // 获取最终模板字符串 String jsonString = JSONObject.toJSONString(approvalTemplate); - String url = String.format("https://qyapi.weixin.qq.com/cgi-bin/oa/applyevent?access_token=%s",QyWxConfig.GetQYWXToken(userAgent)); + String url = String.format("https://qyapi.weixin.qq.com/cgi-bin/oa/applyevent?access_token=%s", QyWxConfig.GetQYWXToken(userAgent)); String s = HttpUtils.doPost(url, jsonString); JSONObject jsonObject = JSONObject.parseObject(s); @@ -1982,16 +2038,16 @@ public class QyWxOperationService { } - /** * 用于发送库存判断审批 + * * @param userAgent * @param userToken * @param mainId * @param QyWxUid * @return */ - public JSONObject sendApprovalTemplateStockTaking(String userAgent, UserByPort userToken, Integer mainId, String QyWxUid){ + public JSONObject sendApprovalTemplateStockTaking(String userAgent, UserByPort userToken, Integer mainId, String QyWxUid) { // 获取当前盘点主表 StockTaking mainRecord = stockTakingMapper.selectStockTakingById(mainId); // 获取当前主表下的子表 @@ -2002,17 +2058,17 @@ public class QyWxOperationService { Place place = placeMapper.findPlaceById(mainRecord.getPlaceId()); // 声明盘点位置 String location = ""; - if(Integer.compare(place.getId(),0) == 0){ + if (Integer.compare(place.getId(), 0) == 0) { location = depository.getDname(); - }else{ + } else { location = depository.getDname() + "-" + place.getCode(); } // 声明盘点审批模板 ApprovalTemplate approvalTemplate = new ApprovalTemplate(); - // 获取申请人的userId + // 获取申请人的userId String workwechat = userToken.getWorkwechat(); - if(workwechat == null || "".equals(workwechat)){ + if (workwechat == null || "".equals(workwechat)) { workwechat = userToken.getWechat(); } @@ -2054,13 +2110,13 @@ public class QyWxOperationService { approval_template_apply_data_contents_initiator.setId("Contact-1668152646528"); // 成员控件值(control参数为Contact,且value参数为members) - Map members_initiator = new HashMap<>(); - Map contact_user = new HashMap<>(); - List> membersMap_initiator = new ArrayList<>(); - contact_user.put("userid",workwechat); - contact_user.put("name",userToken.getName()); + Map members_initiator = new HashMap<>(); + Map contact_user = new HashMap<>(); + List> membersMap_initiator = new ArrayList<>(); + contact_user.put("userid", workwechat); + contact_user.put("name", userToken.getName()); membersMap_initiator.add(contact_user); - members_initiator.put("members",membersMap_initiator); + members_initiator.put("members", membersMap_initiator); approval_template_apply_data_contents_initiator.setValue(members_initiator); // 添加到控件列表 @@ -2071,11 +2127,11 @@ public class QyWxOperationService { approval_template_apply_data_contents_time.setControl("Date"); approval_template_apply_data_contents_time.setId("Date-1668152963159"); - Map members_time = new HashMap<>(); - Map contact_time = new HashMap<>(); - contact_time.put("type","hour"); + Map members_time = new HashMap<>(); + Map contact_time = new HashMap<>(); + contact_time.put("type", "hour"); contact_time.put("s_timestamp", String.valueOf(mainRecord.getCreateTime() / 1000)); - members_time.put("date",contact_time); + members_time.put("date", contact_time); approval_template_apply_data_contents_time.setValue(members_time); // 添加到控件列表 @@ -2091,13 +2147,13 @@ public class QyWxOperationService { Integer portByQyWxInteger = userPortByQyWx.getInteger("wechatorganizationid"); // 部门控件值(control参数为Contact,且value参数为departments) - Map members_department = new HashMap<>(); - Map contact_department = new HashMap<>(); - List> membersMap_department = new ArrayList<>(); - contact_department.put("openapi_id",portByQyWxInteger.toString()); - contact_department.put("name",portName); + Map members_department = new HashMap<>(); + Map contact_department = new HashMap<>(); + List> membersMap_department = new ArrayList<>(); + contact_department.put("openapi_id", portByQyWxInteger.toString()); + contact_department.put("name", portName); membersMap_department.add(contact_department); - members_department.put("departments",membersMap_department); + members_department.put("departments", membersMap_department); approval_template_apply_data_contents_department.setValue(members_department); // 添加到控件列表 @@ -2108,8 +2164,8 @@ public class QyWxOperationService { approval_template_apply_data_contents_location.setControl("Text"); approval_template_apply_data_contents_location.setId("Text-1668152678455"); - Map location_text = new HashMap<>(); - location_text.put("text",location); + Map location_text = new HashMap<>(); + location_text.put("text", location); approval_template_apply_data_contents_location.setValue(location_text); @@ -2124,26 +2180,26 @@ public class QyWxOperationService { approval_template_apply_data_contents_principal.setId("Contact-1668152817464"); // 成员控件值(control参数为Contact,且value参数为members) - Map members_principal = new HashMap<>(); + Map members_principal = new HashMap<>(); - List> membersMap_principal = new ArrayList<>(); + List> membersMap_principal = new ArrayList<>(); String departmentManager = mainRecord.getDepartmentManager(); String[] departmentManagers = departmentManager.split(","); for (int i = 0; i < departmentManagers.length; i++) { - if("".equals(departmentManagers[i])){ + if ("".equals(departmentManagers[i])) { continue; } // 获取负责人信息 UserByPort userByPort = LinkInterfaceUtil.FindUserById(ObjectFormatUtil.toInteger(departmentManagers[i]), userToken); - Map contact_principal = new HashMap<>(); - contact_principal.put("userid",userByPort.getWorkwechat()); - contact_principal.put("name",userByPort.getName()); + Map contact_principal = new HashMap<>(); + contact_principal.put("userid", userByPort.getWorkwechat()); + contact_principal.put("name", userByPort.getName()); membersMap_principal.add(contact_principal); } - members_principal.put("members",membersMap_principal); + members_principal.put("members", membersMap_principal); approval_template_apply_data_contents_principal.setValue(members_principal); // 添加到控件列表 @@ -2163,149 +2219,148 @@ public class QyWxOperationService { Inventory materialById = materialMapper.findInventoryById(minRecord.getMid()); - Map detail_list = new HashMap<>(); + Map detail_list = new HashMap<>(); // 定义明细种的控件列表 List detail_list_control = new ArrayList<>(); // 物料名称 - Map detail_list_control_info_materialName = new HashMap<>(); - detail_list_control_info_materialName.put("control","Text"); - detail_list_control_info_materialName.put("id","Text-1668152834647"); - Map detail_list_control_info_title_materialName = new HashMap<>(); - detail_list_control_info_title_materialName.put("text","物料名称"); - detail_list_control_info_title_materialName.put("lang","zh_CN"); + Map detail_list_control_info_materialName = new HashMap<>(); + detail_list_control_info_materialName.put("control", "Text"); + detail_list_control_info_materialName.put("id", "Text-1668152834647"); + Map detail_list_control_info_title_materialName = new HashMap<>(); + detail_list_control_info_title_materialName.put("text", "物料名称"); + detail_list_control_info_title_materialName.put("lang", "zh_CN"); List detail_list_control_info_title_list_materialName = new ArrayList<>(); detail_list_control_info_title_list_materialName.add(detail_list_control_info_title_materialName); - detail_list_control_info_materialName.put("title",detail_list_control_info_title_list_materialName); + detail_list_control_info_materialName.put("title", detail_list_control_info_title_list_materialName); - Map detail_list_control_info_value_Mname = new HashMap<>(); - detail_list_control_info_value_Mname.put("text",materialById.getMname()); - detail_list_control_info_materialName.put("value",detail_list_control_info_value_Mname); + Map detail_list_control_info_value_Mname = new HashMap<>(); + detail_list_control_info_value_Mname.put("text", materialById.getMname()); + detail_list_control_info_materialName.put("value", detail_list_control_info_value_Mname); // 物料编码 - Map detail_list_control_info_materialCode = new HashMap<>(); - detail_list_control_info_materialCode.put("control","Text"); - detail_list_control_info_materialCode.put("id","Text-1668152840655"); - Map detail_list_control_info_title_materialCode = new HashMap<>(); - detail_list_control_info_title_materialCode.put("text","物料编码"); - detail_list_control_info_title_materialCode.put("lang","zh_CN"); + Map detail_list_control_info_materialCode = new HashMap<>(); + detail_list_control_info_materialCode.put("control", "Text"); + detail_list_control_info_materialCode.put("id", "Text-1668152840655"); + Map detail_list_control_info_title_materialCode = new HashMap<>(); + detail_list_control_info_title_materialCode.put("text", "物料编码"); + detail_list_control_info_title_materialCode.put("lang", "zh_CN"); List detail_list_control_info_title_list_Code = new ArrayList<>(); detail_list_control_info_title_list_Code.add(detail_list_control_info_title_materialCode); - detail_list_control_info_materialCode.put("title",detail_list_control_info_title_list_Code); + detail_list_control_info_materialCode.put("title", detail_list_control_info_title_list_Code); - Map detail_list_control_info_value_Code = new HashMap<>(); - detail_list_control_info_value_Code.put("text",materialById.getCode()); - detail_list_control_info_materialCode.put("value",detail_list_control_info_value_Code); + Map detail_list_control_info_value_Code = new HashMap<>(); + detail_list_control_info_value_Code.put("text", materialById.getCode()); + detail_list_control_info_materialCode.put("value", detail_list_control_info_value_Code); // 物料类型 - Map detail_list_control_info_materialType = new HashMap<>(); - detail_list_control_info_materialType.put("control","Text"); - detail_list_control_info_materialType.put("id","Text-1668152851864"); - Map detail_list_control_info_title_materialType = new HashMap<>(); - detail_list_control_info_title_materialType.put("text","物料类型"); - detail_list_control_info_title_materialType.put("lang","zh_CN"); + Map detail_list_control_info_materialType = new HashMap<>(); + detail_list_control_info_materialType.put("control", "Text"); + detail_list_control_info_materialType.put("id", "Text-1668152851864"); + Map detail_list_control_info_title_materialType = new HashMap<>(); + detail_list_control_info_title_materialType.put("text", "物料类型"); + detail_list_control_info_title_materialType.put("lang", "zh_CN"); List detail_list_control_info_title_list_materialType = new ArrayList<>(); detail_list_control_info_title_list_materialType.add(detail_list_control_info_title_materialType); - detail_list_control_info_materialType.put("title",detail_list_control_info_title_list_materialType); + detail_list_control_info_materialType.put("title", detail_list_control_info_title_list_materialType); - Map detail_list_control_info_value_materialType = new HashMap<>(); + Map detail_list_control_info_value_materialType = new HashMap<>(); // 获取当前物料的类型 MaterialType materialTypeByOldId = materialTypeMapper.findMaterialTypeByOldId(materialById.getMaterialTypeId()); - detail_list_control_info_value_materialType.put("text",materialTypeByOldId.getTname()); - detail_list_control_info_materialType.put("value",detail_list_control_info_value_materialType); + detail_list_control_info_value_materialType.put("text", materialTypeByOldId.getTname()); + detail_list_control_info_materialType.put("value", detail_list_control_info_value_materialType); // 物料材质 - Map detail_list_control_info_materialTexture = new HashMap<>(); - detail_list_control_info_materialTexture.put("control","Text"); - detail_list_control_info_materialTexture.put("id","Text-1668152859519"); - Map detail_list_control_info_title_materialTexture = new HashMap<>(); - detail_list_control_info_title_materialTexture.put("text","材质"); - detail_list_control_info_title_materialTexture.put("lang","zh_CN"); + Map detail_list_control_info_materialTexture = new HashMap<>(); + detail_list_control_info_materialTexture.put("control", "Text"); + detail_list_control_info_materialTexture.put("id", "Text-1668152859519"); + Map detail_list_control_info_title_materialTexture = new HashMap<>(); + detail_list_control_info_title_materialTexture.put("text", "材质"); + detail_list_control_info_title_materialTexture.put("lang", "zh_CN"); List detail_list_control_info_title_list_materialTexture = new ArrayList<>(); detail_list_control_info_title_list_materialTexture.add(detail_list_control_info_title_materialTexture); - detail_list_control_info_materialTexture.put("title",detail_list_control_info_title_list_materialTexture); - - Map detail_list_control_info_value_materialTexture = new HashMap<>(); - detail_list_control_info_value_materialTexture.put("text",materialById.getTexture()); - detail_list_control_info_materialTexture.put("value",detail_list_control_info_value_materialTexture); + detail_list_control_info_materialTexture.put("title", detail_list_control_info_title_list_materialTexture); + Map detail_list_control_info_value_materialTexture = new HashMap<>(); + detail_list_control_info_value_materialTexture.put("text", materialById.getTexture()); + detail_list_control_info_materialTexture.put("value", detail_list_control_info_value_materialTexture); // 物料规格型号 - Map detail_list_control_info_materialVersion = new HashMap<>(); - detail_list_control_info_materialVersion.put("control","Text"); - detail_list_control_info_materialVersion.put("id","Text-1668152864560"); - Map detail_list_control_info_title_materialVersion = new HashMap<>(); - detail_list_control_info_title_materialVersion.put("text","规格型号"); - detail_list_control_info_title_materialVersion.put("lang","zh_CN"); + Map detail_list_control_info_materialVersion = new HashMap<>(); + detail_list_control_info_materialVersion.put("control", "Text"); + detail_list_control_info_materialVersion.put("id", "Text-1668152864560"); + Map detail_list_control_info_title_materialVersion = new HashMap<>(); + detail_list_control_info_title_materialVersion.put("text", "规格型号"); + detail_list_control_info_title_materialVersion.put("lang", "zh_CN"); List detail_list_control_info_title_list_materialVersion = new ArrayList<>(); detail_list_control_info_title_list_materialVersion.add(detail_list_control_info_title_materialVersion); - detail_list_control_info_materialVersion.put("title",detail_list_control_info_title_list_materialVersion); + detail_list_control_info_materialVersion.put("title", detail_list_control_info_title_list_materialVersion); - Map detail_list_control_info_value_materialVersion = new HashMap<>(); - detail_list_control_info_value_materialVersion.put("text",materialById.getVersion()); - detail_list_control_info_materialVersion.put("value",detail_list_control_info_value_materialVersion); + Map detail_list_control_info_value_materialVersion = new HashMap<>(); + detail_list_control_info_value_materialVersion.put("text", materialById.getVersion()); + detail_list_control_info_materialVersion.put("value", detail_list_control_info_value_materialVersion); // 物料计量单位 - Map detail_list_control_info_materialUnit = new HashMap<>(); - detail_list_control_info_materialUnit.put("control","Text"); - detail_list_control_info_materialUnit.put("id","Text-1668152879360"); - Map detail_list_control_info_title_materialUnit = new HashMap<>(); - detail_list_control_info_title_materialUnit.put("text","计量单位"); - detail_list_control_info_title_materialUnit.put("lang","zh_CN"); + Map detail_list_control_info_materialUnit = new HashMap<>(); + detail_list_control_info_materialUnit.put("control", "Text"); + detail_list_control_info_materialUnit.put("id", "Text-1668152879360"); + Map detail_list_control_info_title_materialUnit = new HashMap<>(); + detail_list_control_info_title_materialUnit.put("text", "计量单位"); + detail_list_control_info_title_materialUnit.put("lang", "zh_CN"); List detail_list_control_info_title_list_materialUnit = new ArrayList<>(); detail_list_control_info_title_list_materialUnit.add(detail_list_control_info_title_materialUnit); - detail_list_control_info_materialUnit.put("title",detail_list_control_info_title_list_materialUnit); + detail_list_control_info_materialUnit.put("title", detail_list_control_info_title_list_materialUnit); // 获取盘点时的计量单位 String unit = minRecord.getUnit(); - if("-1".equals(unit)){ + if ("-1".equals(unit)) { unit = materialById.getUnit(); } - Map detail_list_control_info_value_materialUnit = new HashMap<>(); - detail_list_control_info_value_materialUnit.put("text",unit); - detail_list_control_info_materialUnit.put("value",detail_list_control_info_value_materialUnit); + Map detail_list_control_info_value_materialUnit = new HashMap<>(); + detail_list_control_info_value_materialUnit.put("text", unit); + detail_list_control_info_materialUnit.put("value", detail_list_control_info_value_materialUnit); // 库存数量 - Map detail_list_control_info_outNumber = new HashMap<>(); - detail_list_control_info_outNumber.put("control","Number"); - detail_list_control_info_outNumber.put("id","Number-1668152890486"); - Map detail_list_control_info_title_outNumber = new HashMap<>(); - detail_list_control_info_title_outNumber.put("text","库存数量"); - detail_list_control_info_title_outNumber.put("lang","zh_CN"); + Map detail_list_control_info_outNumber = new HashMap<>(); + detail_list_control_info_outNumber.put("control", "Number"); + detail_list_control_info_outNumber.put("id", "Number-1668152890486"); + Map detail_list_control_info_title_outNumber = new HashMap<>(); + detail_list_control_info_title_outNumber.put("text", "库存数量"); + detail_list_control_info_title_outNumber.put("lang", "zh_CN"); List detail_list_control_info_title_list_outNumber = new ArrayList<>(); detail_list_control_info_title_list_outNumber.add(detail_list_control_info_title_outNumber); - detail_list_control_info_outNumber.put("title",detail_list_control_info_title_list_outNumber); + detail_list_control_info_outNumber.put("title", detail_list_control_info_title_list_outNumber); - Map detail_list_control_info_value_outNumber = new HashMap<>(); - detail_list_control_info_value_outNumber.put("new_number",minRecord.getOldInventory().toString()); - detail_list_control_info_outNumber.put("value",detail_list_control_info_value_outNumber); + Map detail_list_control_info_value_outNumber = new HashMap<>(); + detail_list_control_info_value_outNumber.put("new_number", minRecord.getOldInventory().toString()); + detail_list_control_info_outNumber.put("value", detail_list_control_info_value_outNumber); // 盘点数量 - Map detail_list_control_info_stockTakingNumber = new HashMap<>(); - detail_list_control_info_stockTakingNumber.put("control","Number"); - detail_list_control_info_stockTakingNumber.put("id","Number-1668152897519"); - Map detail_list_control_info_title_stockTakingNumber = new HashMap<>(); - detail_list_control_info_title_stockTakingNumber.put("text","盘点数量"); - detail_list_control_info_title_stockTakingNumber.put("lang","zh_CN"); + Map detail_list_control_info_stockTakingNumber = new HashMap<>(); + detail_list_control_info_stockTakingNumber.put("control", "Number"); + detail_list_control_info_stockTakingNumber.put("id", "Number-1668152897519"); + Map detail_list_control_info_title_stockTakingNumber = new HashMap<>(); + detail_list_control_info_title_stockTakingNumber.put("text", "盘点数量"); + detail_list_control_info_title_stockTakingNumber.put("lang", "zh_CN"); List detail_list_control_info_title_list_stockTakingNumber = new ArrayList<>(); detail_list_control_info_title_list_stockTakingNumber.add(detail_list_control_info_title_stockTakingNumber); - detail_list_control_info_stockTakingNumber.put("title",detail_list_control_info_title_list_stockTakingNumber); + detail_list_control_info_stockTakingNumber.put("title", detail_list_control_info_title_list_stockTakingNumber); - Map detail_list_control_info_value_stockTakingNumber = new HashMap<>(); - detail_list_control_info_value_stockTakingNumber.put("new_number",minRecord.getNewInventory().toString()); - detail_list_control_info_stockTakingNumber.put("value",detail_list_control_info_value_stockTakingNumber); + Map detail_list_control_info_value_stockTakingNumber = new HashMap<>(); + detail_list_control_info_value_stockTakingNumber.put("new_number", minRecord.getNewInventory().toString()); + detail_list_control_info_stockTakingNumber.put("value", detail_list_control_info_value_stockTakingNumber); // 获取盈亏结果 @@ -2318,37 +2373,36 @@ public class QyWxOperationService { } else { takingResultShow = "正常"; } - Map detail_list_control_info_stockTakingResult = new HashMap<>(); - detail_list_control_info_stockTakingResult.put("control","Text"); - detail_list_control_info_stockTakingResult.put("id","Text-1668152920136"); - Map detail_list_control_info_title_stockTakingResult = new HashMap<>(); - detail_list_control_info_title_stockTakingResult.put("text","计量单位"); - detail_list_control_info_title_stockTakingResult.put("lang","zh_CN"); + Map detail_list_control_info_stockTakingResult = new HashMap<>(); + detail_list_control_info_stockTakingResult.put("control", "Text"); + detail_list_control_info_stockTakingResult.put("id", "Text-1668152920136"); + Map detail_list_control_info_title_stockTakingResult = new HashMap<>(); + detail_list_control_info_title_stockTakingResult.put("text", "计量单位"); + detail_list_control_info_title_stockTakingResult.put("lang", "zh_CN"); List detail_list_control_info_title_list_stockTakingResult = new ArrayList<>(); detail_list_control_info_title_list_stockTakingResult.add(detail_list_control_info_title_stockTakingResult); - detail_list_control_info_stockTakingResult.put("title",detail_list_control_info_title_list_stockTakingResult); + detail_list_control_info_stockTakingResult.put("title", detail_list_control_info_title_list_stockTakingResult); - Map detail_list_control_info_value_stockTakingResult = new HashMap<>(); - detail_list_control_info_value_stockTakingResult.put("text",takingResultShow); - detail_list_control_info_stockTakingResult.put("value",detail_list_control_info_value_stockTakingResult); + Map detail_list_control_info_value_stockTakingResult = new HashMap<>(); + detail_list_control_info_value_stockTakingResult.put("text", takingResultShow); + detail_list_control_info_stockTakingResult.put("value", detail_list_control_info_value_stockTakingResult); // 盈亏数量 - Map detail_list_control_info_stockTakingInventory = new HashMap<>(); - detail_list_control_info_stockTakingInventory.put("control","Number"); - detail_list_control_info_stockTakingInventory.put("id","Number-1668152931807"); - Map detail_list_control_info_title_stockTakingInventory = new HashMap<>(); - detail_list_control_info_title_stockTakingInventory.put("text","盈亏数量"); - detail_list_control_info_title_stockTakingInventory.put("lang","zh_CN"); + Map detail_list_control_info_stockTakingInventory = new HashMap<>(); + detail_list_control_info_stockTakingInventory.put("control", "Number"); + detail_list_control_info_stockTakingInventory.put("id", "Number-1668152931807"); + Map detail_list_control_info_title_stockTakingInventory = new HashMap<>(); + detail_list_control_info_title_stockTakingInventory.put("text", "盈亏数量"); + detail_list_control_info_title_stockTakingInventory.put("lang", "zh_CN"); List detail_list_control_info_title_list_stockTakingInventory = new ArrayList<>(); detail_list_control_info_title_list_stockTakingInventory.add(detail_list_control_info_title_stockTakingInventory); - detail_list_control_info_stockTakingInventory.put("title",detail_list_control_info_title_list_stockTakingInventory); - - Map detail_list_control_info_value_stockTakingInventory = new HashMap<>(); - detail_list_control_info_value_stockTakingInventory.put("new_number",minRecord.getInventory().toString()); - detail_list_control_info_stockTakingInventory.put("value",detail_list_control_info_value_stockTakingInventory); + detail_list_control_info_stockTakingInventory.put("title", detail_list_control_info_title_list_stockTakingInventory); + Map detail_list_control_info_value_stockTakingInventory = new HashMap<>(); + detail_list_control_info_value_stockTakingInventory.put("new_number", minRecord.getInventory().toString()); + detail_list_control_info_stockTakingInventory.put("value", detail_list_control_info_value_stockTakingInventory); detail_list_control.add(detail_list_control_info_materialName); @@ -2363,13 +2417,13 @@ public class QyWxOperationService { detail_list_control.add(detail_list_control_info_stockTakingInventory); - detail_list.put("list",detail_list_control); + detail_list.put("list", detail_list_control); contents_detail.add(detail_list); } - Map approval_template_apply_data_contents_info_children = new HashMap<>(); - approval_template_apply_data_contents_info_children.put("children",contents_detail); + Map approval_template_apply_data_contents_info_children = new HashMap<>(); + approval_template_apply_data_contents_info_children.put("children", contents_detail); approval_template_apply_data_contents_info.setValue(approval_template_apply_data_contents_info_children); // 添加到控件列表 @@ -2384,29 +2438,29 @@ public class QyWxOperationService { Approval_template_summary_info summary_info_name = new Approval_template_summary_info(); - summary_info_name.setText("发起人:"+userToken.getName()); + summary_info_name.setText("发起人:" + userToken.getName()); summary_info_name.setLang("zh_CN"); Approval_template_summary_info summary_info_time = new Approval_template_summary_info(); - summary_info_time.setText("发起时间:"+DateUtil.TimeStampToDateTime(Long.valueOf(mainRecord.getCreateTime()))); + summary_info_time.setText("发起时间:" + DateUtil.TimeStampToDateTime(Long.valueOf(mainRecord.getCreateTime()))); summary_info_time.setLang("zh_CN"); Approval_template_summary_info summary_info_department = new Approval_template_summary_info(); - summary_info_department.setText("所在部门:"+portName); + summary_info_department.setText("所在部门:" + portName); summary_info_department.setLang("zh_CN"); // 发起人 - Map summary_info_name_map = new HashMap<>(); + Map summary_info_name_map = new HashMap<>(); List summary_info_name_list = new ArrayList<>(); summary_info_name_list.add(summary_info_name); - summary_info_name_map.put("summary_info",summary_info_name_list); + summary_info_name_map.put("summary_info", summary_info_name_list); // 发起时间 - Map summary_info_time_map = new HashMap<>(); + Map summary_info_time_map = new HashMap<>(); List summary_info_time_list = new ArrayList<>(); summary_info_time_list.add(summary_info_time); - summary_info_time_map.put("summary_info",summary_info_time_list); + summary_info_time_map.put("summary_info", summary_info_time_list); // 所在部门 - Map summary_info_department_map = new HashMap<>(); + Map summary_info_department_map = new HashMap<>(); List summary_info_time_department = new ArrayList<>(); summary_info_time_department.add(summary_info_department); - summary_info_department_map.put("summary_info",summary_info_time_department); + summary_info_department_map.put("summary_info", summary_info_time_department); approval_template_apply_data_contents_summary_list.add(summary_info_name_map); approval_template_apply_data_contents_summary_list.add(summary_info_time_map); @@ -2425,7 +2479,7 @@ public class QyWxOperationService { // 获取最终模板字符串 String jsonString = JSONObject.toJSONString(approvalTemplate); - String url = String.format("https://qyapi.weixin.qq.com/cgi-bin/oa/applyevent?access_token=%s",QyWxConfig.GetQYWXToken(userAgent)); + String url = String.format("https://qyapi.weixin.qq.com/cgi-bin/oa/applyevent?access_token=%s", QyWxConfig.GetQYWXToken(userAgent)); String s = HttpUtils.doPost(url, jsonString); JSONObject jsonObject = JSONObject.parseObject(s); @@ -2433,17 +2487,16 @@ public class QyWxOperationService { } - - /** * 用于当在系统内进行审批后向其他所有用户发送消息 + * * @param mainId * @param uid * @param userAgent - * @param flag 标志当前是什么申请 1出库2盘点 + * @param flag 标志当前是什么申请 1出库2盘点 * @return */ - public JSONObject sendMessageForOtherUserByCard(Integer mainId,String uid,String userAgent,Integer flag){ + public JSONObject sendMessageForOtherUserByCard(Integer mainId, String uid, String userAgent, Integer flag) { // 获取当前申请主订单 ApplicationOutRecordP aorp = null; @@ -2456,10 +2509,10 @@ public class QyWxOperationService { // 用于暂存消息主题 String tempMessageTitle = ""; - if(Integer.compare(1,flag) == 0) { + if (Integer.compare(1, flag) == 0) { aorp = depositoryRecordMapper.findApplicationOutRecordPById(mainId); - }else if(Integer.compare(2,flag) == 0){ - stockTaking= stockTakingMapper.selectStockTakingById(mainId); + } else if (Integer.compare(2, flag) == 0) { + stockTaking = stockTakingMapper.selectStockTakingById(mainId); } MessageByMarkDown markDown = new MessageByMarkDown(); //设置消息接收者 @@ -2481,18 +2534,18 @@ public class QyWxOperationService { // 抄送内容 StringBuilder content = new StringBuilder("## `消息通知:`%n"); // 获取发起人信息 - if(aorp != null){ + if (aorp != null) { applicantId = aorp.getApplicantId(); applicantTime = Long.valueOf(aorp.getApplicantTime()); tempMessageTitle = "出库审批"; - }else if(stockTaking != null){ + } else if (stockTaking != null) { applicantId = stockTaking.getOriginator(); applicantTime = stockTaking.getCreateTime(); tempMessageTitle = "库存盘点审批"; } UserByPort userByPort = LinkInterfaceUtil.FindUserById(applicantId, null); // 设置content - content.append(">### **%n对于"+userByPort.getName()+"在"+DateUtil.TimeStampToDateTime(applicantTime)+"提起"+tempMessageTitle+"的转至应用发送的消息进行审批,审批应用中的流程请忽略 %n**"); + content.append(">### **%n对于" + userByPort.getName() + "在" + DateUtil.TimeStampToDateTime(applicantTime) + "提起" + tempMessageTitle + "的转至应用发送的消息进行审批,审批应用中的流程请忽略 %n**"); content.append("%n---%n"); markdown.put("content", content.toString()); @@ -2502,7 +2555,7 @@ public class QyWxOperationService { System.out.println(jsonString); // 3.获取请求的url // 获取access_token:根据企业id和应用密钥获取access_token,并拼接请求url - String accessToken = QyWxConfig.GetQYWXToken(userAgent) ; + String accessToken = QyWxConfig.GetQYWXToken(userAgent); String url = QyWxConfig.sendMessage_url.replace("ACCESS_TOKEN", accessToken); // 4.调用接口,发送消息 diff --git a/src/main/java/com/dreamchaser/depository_manage/service/impl/StockTakingServiceImpl.java b/src/main/java/com/dreamchaser/depository_manage/service/impl/StockTakingServiceImpl.java index 3c0115d8..064843c3 100644 --- a/src/main/java/com/dreamchaser/depository_manage/service/impl/StockTakingServiceImpl.java +++ b/src/main/java/com/dreamchaser/depository_manage/service/impl/StockTakingServiceImpl.java @@ -259,17 +259,21 @@ public class StockTakingServiceImpl implements StockTakingService { @Override public List findStockTakingChildPByMainId(Integer mainId) { List stockTakingChildPS = stockTakingMapper.selectStockTakingChildByMainId(mainId); - for (int i = 0; i < stockTakingChildPS.size(); i++) { - StockTakingChildP stockTakingChildP = stockTakingChildPS.get(i); + for (StockTakingChildP stockTakingChildP : stockTakingChildPS) { if ("Inventory_up".equals(stockTakingChildP.getTakingResult())) { - stockTakingChildPS.get(i).setTakingResultShow("盘盈"); + stockTakingChildP.setTakingResultShow("盘盈"); } else if ("Inventory_down".equals(stockTakingChildP.getTakingResult())) { - stockTakingChildPS.get(i).setTakingResultShow("盘亏"); + stockTakingChildP.setTakingResultShow("盘亏"); } else { - stockTakingChildPS.get(i).setTakingResultShow("正常"); + stockTakingChildP.setTakingResultShow("正常"); + } + stockTakingChildP.setShowUnit(stockTakingChildP.getUnit()); + if("-1".equals(stockTakingChildP.getShowUnit())){ + Inventory inventoryById = materialMapper.findInventoryById(stockTakingChildP.getMid()); + stockTakingChildP.setShowUnit(inventoryById.getUnit()); } List materialByBarCodeByMcode = materialMapper.findMaterialByBarCodeByMcode(stockTakingChildP.getMcode()); - stockTakingChildPS.get(i).setMaterialAndBarCodeList(materialByBarCodeByMcode); + stockTakingChildP.setMaterialAndBarCodeList(materialByBarCodeByMcode); } return stockTakingChildPS; } @@ -380,7 +384,7 @@ public class StockTakingServiceImpl implements StockTakingService { Inventory inventoryById = materialMapper.findInventoryById(minRecord.getMid()); Map paramForMaterialAndPlace = new HashMap<>(); - paramForMaterialAndPlace.put("mid", inventoryById.getMid()); + paramForMaterialAndPlace.put("mid", inventoryById.getId()); paramForMaterialAndPlace.put("pid", placeById.getId()); // 获取物料与库位的对应关系 MaterialAndPlace placeAndMaterialByMidAndPid = placeMapper.findPlaceAndMaterialByMidAndPid(paramForMaterialAndPlace); diff --git a/src/main/resources/static/js/lay-config.js b/src/main/resources/static/js/lay-config.js index 2ebade6c..d8cd5f65 100644 --- a/src/main/resources/static/js/lay-config.js +++ b/src/main/resources/static/js/lay-config.js @@ -9,9 +9,9 @@ window.rootPath = (function (src) { src = document.scripts[document.scripts.length - 1].src; return src.substring(0, src.lastIndexOf("/") + 1); })(); -// alert(rootPath) layui.config({ - base: rootPath + "lay-module/", + // base: rootPath + "lay-module/", + base: "https://jy.hxgk.group/static/js/" + "lay-module/", version: true }).extend({ miniAdmin: "layuimini/miniAdmin", // layuimini后台扩展 diff --git a/src/main/resources/templates/pages/application/application-in.html b/src/main/resources/templates/pages/application/application-in.html index ec8e45e3..3a1a5ed3 100644 --- a/src/main/resources/templates/pages/application/application-in.html +++ b/src/main/resources/templates/pages/application/application-in.html @@ -253,14 +253,16 @@ class="layui-input" lay-verify="required" style="border-style: none"> + style="margin-top: 10px;display: none" + onclick="scanCodeByOut(this)">
-
@@ -301,7 +303,8 @@
- @@ -364,6 +367,7 @@ function selectDepositroy(object) { } + // 用于扫码入库 function scanCodeInStorage(obj) { } @@ -402,11 +406,12 @@ } // 实现卡片删除(组合) - function deleteItemForGroup(){ + function deleteItemForGroup() { } + // 实现卡片添加(组合) - function addItemForGroup(){ + function addItemForGroup() { } @@ -419,7 +424,7 @@ // 用于暂存卡片个数(组合) var params2 = []; - layui.use(['form', 'step', 'flow', 'laydate','element'], function () { + layui.use(['form', 'step', 'flow', 'laydate', 'element'], function () { var $ = layui.$, form = layui.form, laydate = layui.laydate, @@ -982,10 +987,6 @@ var priceValue = priceItem[1]; // 条形码条码 var barCodeItem = barCodeChildren.childNodes[3]; - var code = data.code; - if (code === undefined) { - code = ""; - } if (data === null) { // 如果没有对应关系 layer.msg("对于编码:" + result + ",并未发现对应的物料", { @@ -994,6 +995,10 @@ }, function () { }) } else { + var code = data.code; + if (code === undefined) { + code = ""; + } materialName.value = data.mname; materialId.value = data.mid; codeValue.value = code; @@ -1033,7 +1038,7 @@ } var unit = $("#unit" + idNumber); unit.empty(); - $("#unit" + idNumber).append(new Option(data.unit, "-1")); + unit.append(new Option(data.unit, "-1")); var unitList = data["splitInfoList"]; for (let i = 0; i < unitList.length; i++) { $("#unit" + idNumber).append(new Option(unitList[i].newUnit, unitList[i].newUnit)); @@ -1084,7 +1089,6 @@ var materialItem = materialChildren.childNodes[3].childNodes[1].childNodes; var materialName = materialItem[1]; var materialId = materialName.parentNode.parentNode.childNodes[3]; - var mname = materialName.value; // 单价条目 var priceItem = priceChildren.childNodes[3].childNodes; var priceValue = priceItem[1]; @@ -1186,8 +1190,6 @@ }); }; - - // 用于扫描入库位置 scanLocationByQrCode = function (obj) { parent.wx.scanQRCode({ @@ -1264,7 +1266,7 @@ layer.msg(d.statusInfo.detail, { icon: 0, time: 1500 - },function () { + }, function () { obj.value = ''; gidItem.value = ''; gnameItem.value = ''; @@ -1298,7 +1300,7 @@ }; // 用于实现点击搜索按钮(组合) - selectGroup = function(obj){ + selectGroup = function (obj) { var parent = obj.parentNode.parentNode.parentNode.parentNode; var parentId = parent.id; @@ -1336,11 +1338,12 @@ content.css('height', '100%'); iframeChildren.css('height', '100%'); }, - end:function () { + end: function () { let gid = gidItem.value; - if(gid !== ''){ + if (gid !== '') { let req = {}; req.gid = gid; + req.type = "in"; $.ajax({ url: "/group/findGroupInfoByGid", data: JSON.stringify(req), @@ -1353,7 +1356,7 @@ layer.msg(d.statusInfo.detail, { icon: 0, time: 1500 - },function () { + }, function () { obj.value = ''; gidItem.value = ''; gnameItem.value = ''; @@ -1389,7 +1392,7 @@ }; // 用于实现组合名称搜索 - selectGroupByName = function(obj){ + selectGroupByName = function (obj) { let gname = obj.value; var parent = obj.parentNode.parentNode.parentNode.parentNode; // 获取对应元素 @@ -1405,7 +1408,7 @@ // gid let gidItem = gnameParent.childNodes[3]; - if(gname !== ''){ + if (gname !== '') { var req = {}; @@ -1417,12 +1420,12 @@ data: JSON.stringify(req), contentType: "application/json;charset=utf-8", success: function (d) { - if(d.count === -1){ + if (d.count === -1) { // 如果当前组合名称的数量不止一个 layer.msg("请点击右侧搜索确定物品", { icon: 0, time: 1500 - },function () { + }, function () { obj.value = ''; gidItem.value = ''; gcodeItem.value = ''; @@ -1433,12 +1436,12 @@ } } }); - }else if(d.count === 0){ + } else if (d.count === 0) { // 如果当前组合名称不存在 layer.msg("没有该组合,请确认输入是否正确", { icon: 0, time: 1500 - },function () { + }, function () { obj.value = ''; gidItem.value = ''; gcodeItem.value = ''; @@ -1449,7 +1452,7 @@ } } }); - }else{ + } else { // 正常 let data = d.data; let childNodes = parent.childNodes; @@ -1471,8 +1474,7 @@ } } }) - } - else{ + } else { gcodeItem.value = ''; gidItem.value = ''; let childNodes = parent.childNodes; @@ -1555,10 +1557,10 @@ $.each(data.placePList, function (index, item) { $('#place' + idNumber).append(new Option(item.depositoryName + "-" + item.code, item.id));//往下拉菜单里添加元素 }); - $("#unit"+idNumber).empty(); - $("#unit"+idNumber).append(new Option(data.unit,"-1")); - $.each(data.splitInfoList,function (index,item) { - $("#unit"+idNumber).append(new Option(item.newUnit,item.newUnit)); + $("#unit" + idNumber).empty(); + $("#unit" + idNumber).append(new Option(data.unit, "-1")); + $.each(data.splitInfoList, function (index, item) { + $("#unit" + idNumber).append(new Option(item.newUnit, item.newUnit)); }); form.render(); materialName.value = data.mname; @@ -1599,13 +1601,13 @@
+ id=` + "selectGroup" + NewIdNumber + ` onclick="selectGroup(this)">
-
@@ -1625,7 +1627,7 @@
-
@@ -1635,17 +1637,17 @@
- -
@@ -1654,7 +1656,7 @@
-
diff --git a/src/main/resources/templates/pages/application/application-in_scanQrCode.html b/src/main/resources/templates/pages/application/application-in_scanQrCode.html index 3d9cc589..9b25cc1b 100644 --- a/src/main/resources/templates/pages/application/application-in_scanQrCode.html +++ b/src/main/resources/templates/pages/application/application-in_scanQrCode.html @@ -28,15 +28,15 @@ .layui-input-block { margin-left: 80px; } - .layui-form-select{ + + .layui-form-select { width: 100%; } - .lay-step{ + + .lay-step { display: none; } - .layui-form-select .layui-input{ - border-style: none; - } + @@ -51,7 +51,8 @@
-
+
@@ -117,6 +118,7 @@ function scanLocationByQrCode(obj) { } + // 用于物料名称查询 function selectMaterialByName(obj) { } @@ -161,11 +163,11 @@ form.render(); var materialAndBarCodeList = materialList[i]["materialAndBarCodeList"]; var num = i; - if(num === 0){ + if (num === 0) { num = ""; } $.each(materialAndBarCodeList, function (index, item) { - $("#barCode"+num).append(new Option(item.bmcode, item.bmcode));//往下拉菜单里添加元素 + $("#barCode" + num).append(new Option(item.bmcode, item.bmcode));//往下拉菜单里添加元素 }); form.render() } @@ -251,6 +253,14 @@
`; } + var splitInfoList = obj.splitList; + let splitInfoItem = ""; + if (splitInfoList !== undefined) { + for (let i = 0; i < splitInfoList.length; i++) { + let optinItem = ""; + splitInfoItem += optinItem; + } + } var firstItem = // 前半部分 `
@@ -283,8 +293,8 @@
- - + +
@@ -301,7 +311,17 @@
-
`; + +
+ +
+ +
+
+ `; var lastItem = `
@@ -318,7 +338,7 @@ if (NewIdNumber !== "") { params.push(NewIdNumber) } - $("#stepForm").css("height", height + 475 + 'px'); + $("#stepForm").css("height", height + 495 + 'px'); var materialItem = firstItem + depositoryItem + lastItem; // 最终 $("#btn_sub").prepend(materialItem) }; @@ -362,7 +382,7 @@ var success = d["success"]; var errMsg = ""; for (let i = 0; i < err.length; i++) { - errMsg += "物料编码: " + errMsg += "物料编码: "; errMsg += err[i]["code"]; } errMsg += "添加失败,请选择新仓库或库位"; @@ -510,7 +530,7 @@
@@ -528,7 +548,16 @@ - `; + +
+ +
+ +
+
+ `; var lastItem = `
@@ -542,8 +571,8 @@
`; // 获取当前高度 var height = parseInt(($("#stepForm").css('height')).split("px")[0]); - params.push(NewIdNumber) - $("#stepForm").css("height", height + 535 + 'px'); + params.push(NewIdNumber); + $("#stepForm").css("height", height + 555 + 'px'); var materialItem = firstItem + depositoryItem + lastItem; $("#" + parentId).after(materialItem); }; @@ -557,7 +586,7 @@ // 获取祖父节点 var reparent = parent.parentNode; var height = parseInt(($("#stepForm").css('height')).split("px")[0]); - $("#stepForm").css("height", height - 535 + 'px'); + $("#stepForm").css("height", height - 555 + 'px'); params = remove(params, parentId); reparent.removeChild(parent); }; @@ -581,7 +610,7 @@ // 输入code var code = obj.value; // 获取对应元素 - var parent = obj.parentNode.parentNode.parentNode; + var parent = obj.parentNode.parentNode.parentNode.parentNode; var materialChildren = parent.childNodes[5]; var priceChildren = parent.childNodes[11]; var barCodeChildren = parent.childNodes[9]; @@ -621,6 +650,14 @@ priceValue.value = d.price; // 获取物料与条形码的对应关系 var materialAndBarCodeList = d["materialAndBarCodeList"]; + var splitInfoList = d["splitInfoList"]; + let unit = $("#unit" + idNumber); + unit.empty(); + unit.append(new Option(d.unit, "-1")); + $.each(splitInfoList, function (index, item) { + unit.append(new Option(item.newUnit, item.newUnit));//往下拉菜单里添加元素 + }); + form.render(); if (materialAndBarCodeList.length > 0) { // 如果有对应的条形码 var barCodeInput = barCodeItem.childNodes[1].childNodes[1]; @@ -643,8 +680,7 @@ $("#barCode" + idNumber).append(new Option(item.bmcode, item.id));//往下拉菜单里添加元素 }); form.render(); - } - else{ + } else { var barCode = $("#barCode" + idNumber); if (barCode.length > 0) { barCode.empty(); @@ -661,13 +697,22 @@ var parentId = parent.id; var codeChildren = parent.childNodes[7]; var materialChildren = parent.childNodes[5]; + var priceChildren = parent.childNodes[11]; var codeItem = codeChildren.childNodes[3].childNodes; - var codeValue = codeItem[1]; + var codeValue = codeItem[1].childNodes[1]; var materialItem = materialChildren.childNodes[3].childNodes[1].childNodes; var materialName = materialItem[1]; var materialId = materialName.parentNode.parentNode.childNodes[3]; + // 单价条目 + var priceItem = priceChildren.childNodes[3].childNodes; + var priceValue = priceItem[1]; var mname = materialName.value; mname = mname.split(",")[0]; + // 条形码条码 + // 条形码 + var barCodeChildren = parent.childNodes[9]; + var barCodeItem = barCodeChildren.childNodes[3]; + var idNumber = materialId.id.split("mid")[1]; layer.open({ type: 2, title: '弹窗内容', @@ -679,29 +724,69 @@ content: '/getMaterialAll?mname=' + mname + '&type=1&clickObj=' + parentId, move: '.layui-layer-title', fixed: false, - success: function(layero, index){ + success: function (layero, index) { var children = layero.children(); var content = $(children[1]); var iframeChildren = $(content.children()); - content.css('height','100%'); - iframeChildren.css('height','100%'); + content.css('height', '100%'); + iframeChildren.css('height', '100%'); }, end: function () { var mid = materialId.value; - $.ajax({ - url: "/material/findMatrialById?mid=" + mid, - type: "get", - dataType: 'json', - contentType: "application/json;charset=utf-8", - success: function (d) { - var material = d.data.materialById; - var code = material.code; - if (code === undefined) { - code = ""; + if (mid !== '') { + $.ajax({ + url: "/material/findMatrialById?mid=" + mid, + type: "get", + dataType: 'json', + contentType: "application/json;charset=utf-8", + success: function (d) { + var material = d.data.materialById; + var code = material.code; + if (code === undefined) { + code = ""; + } + codeValue.value = code; + priceValue.value = material.price; + var materialAndBarCodeList = material["materialAndBarCodeList"]; + var barCodeInput = barCodeItem.childNodes[1].childNodes[1]; + var barCodeImg = barCodeItem.childNodes[1].childNodes[3]; + var idNumber = materialId.name.split("mid")[1]; + + if (materialAndBarCodeList.length > 0) { + // 如果有对应的条形码 + var id = barCodeInput.id; + $("#" + id).remove(); + var barCodeSelect = ` + `; + + $("#" + barCodeImg.id).before(barCodeSelect); + form.render(); + $.each(materialAndBarCodeList, function (index, item) { + $("#barCode" + idNumber).append(new Option(item.bmcode, item.id));//往下拉菜单里添加元素 + }); + form.render(); + } + var shelfLife = material.shelfLife; + if (shelfLife !== null && shelfLife !== undefined) { + $("#" + "producedDateItem" + idNumber).show(); + $("#" + "producedDate" + idNumber).attr("lay-verify", "required"); + } else { + $("#" + "producedDateItem" + idNumber).hide(); + form.render(); + } + var unit = $("#unit" + idNumber); + unit.empty(); + $("#unit" + idNumber).append(new Option(material.unit, "-1")); + var unitList = material["splitInfoList"]; + for (let i = 0; i < unitList.length; i++) { + $("#unit" + idNumber).append(new Option(unitList[i].newUnit, unitList[i].newUnit)); + } + form.render(); } - codeValue.value = code; - } - }); + }); + } + } }); @@ -741,10 +826,28 @@ materialName.value = ""; return false; } else { + var idNumber = materialId.name.split("mid")[1]; var material = d.data[0]; materialName.value = material.mname; - materialId.value = material.id; + materialId.value = material.mid; codeValue.value = material.code; + var shelfLife = material.shelfLife; + if (shelfLife !== null && shelfLife !== undefined) { + $("#" + "producedDateItem" + idNumber).show(); + $("#" + "producedDate" + idNumber).attr("lay-verify", "required"); + } else { + $("#" + "producedDateItem" + idNumber).hide(); + form.render(); + } + var unit = $("#unit" + idNumber); + unit.empty(); + $("#unit" + idNumber).append(new Option(material.unit, "-1")); + var unitList = material["splitInfoList"]; + for (let i = 0; i < unitList.length; i++) { + $("#unit" + idNumber).append(new Option(unitList[i].newUnit, unitList[i].newUnit)); + } + form.render(); + } } }); @@ -773,31 +876,49 @@ var codeChildren = parent.childNodes[7]; var priceChildren = parent.childNodes[11]; var materialChildren = parent.childNodes[5]; - // 条形码 - var barCodeChildren = parent.childNodes[9]; var codeItem = codeChildren.childNodes[3].childNodes[1]; var codeValue = codeItem.childNodes[1]; var materialItem = materialChildren.childNodes[3].childNodes[1].childNodes; var materialName = materialItem[1]; var materialId = materialName.parentNode.parentNode.childNodes[3]; - var mname = materialName.value; // 单价条目 var priceItem = priceChildren.childNodes[3].childNodes; var priceValue = priceItem[1]; - // 条形码条码 - + // 条形码 + var barCodeChildren = parent.childNodes[9]; var barCodeItem = barCodeChildren.childNodes[3]; - var code = material.mcode; - if (code === undefined) { - code = ""; - } - materialName.value = material.mname; - materialId.value = material.mid; - codeValue.value = code; - priceValue.value = material.price; var barCodeInput = barCodeItem.childNodes[1].childNodes[1]; - barCodeInput.value = result; - form.render(); + if (material !== null) { + // 如果发现对应关系 + // 条形码条码 + var code = material.mcode; + if (code === undefined) { + code = ""; + } + materialName.value = material.mname; + materialId.value = material.mid; + codeValue.value = code; + priceValue.value = material.price; + barCodeInput.value = result; + var idNumber = materialId.name.split("mid")[1]; + var shelfLife = material.shelfLife; + if (shelfLife !== null && shelfLife !== undefined) { + $("#" + "producedDateItem" + idNumber).show(); + $("#" + "producedDate" + idNumber).attr("lay-verify", "required"); + } else { + $("#" + "producedDateItem" + idNumber).hide(); + form.render(); + } + form.render(); + var unit = $("#unit" + idNumber); + unit.empty(); + $("#unit" + idNumber).append(new Option(material.unit, "-1")); + var unitList = material["splitInfoList"]; + for (let i = 0; i < unitList.length; i++) { + $("#unit" + idNumber).append(new Option(unitList[i].newUnit, unitList[i].newUnit)); + } + form.render(); + } } }) @@ -810,7 +931,7 @@ } }); - } + }; // 用于打开仓库树形菜单 openDepositoryTree = function (obj) { @@ -826,15 +947,15 @@ move: '.layui-layer-title', fixed: false, content: '/selectDepositoryByCard?type=1&clickObj=' + parentId, - success: function(layero, index){ + success: function (layero, index) { var children = layero.children(); var content = $(children[1]); var iframeChildren = $(content.children()); - content.css('height','100%'); - iframeChildren.css('height','100%'); + content.css('height', '100%'); + iframeChildren.css('height', '100%'); } }); - } + }; // 用于扫码入库 scanCodeInStorage = function (obj) { @@ -906,6 +1027,14 @@ }); form.render(); } + var unit = $("#unit" + idNumber); + unit.empty(); + unit.append(new Option(data.unit, "-1")); + var unitList = data["splitInfoList"]; + for (let i = 0; i < unitList.length; i++) { + $("#unit" + idNumber).append(new Option(unitList[i].newUnit, unitList[i].newUnit)); + } + form.render(); } }) } @@ -936,17 +1065,17 @@ var depositoryName = parent.childNodes[1]; var depositoryId = parent.childNodes[3]; var placeId = parent.childNodes[5]; - if(flag === 0){ + if (flag === 0) { // 如果没有获取到位置 layer.msg("当前二维码错误,请重新扫描"); - }else if(flag === 1){ + } else if (flag === 1) { // 如果获取到的是库位 var place = data["place"]; placeId.value = place.id; depositoryId.value = place.did; depositoryName.value = place.depositoryName; - }else if(flag === 2){ + } else if (flag === 2) { // 如果获取到的是仓库 var depository = data["depository"]; placeId.value = "0"; diff --git a/src/main/resources/templates/pages/application/application-out_min-mobile.html b/src/main/resources/templates/pages/application/application-out_min-mobile.html index a91299c6..e49128f5 100644 --- a/src/main/resources/templates/pages/application/application-out_min-mobile.html +++ b/src/main/resources/templates/pages/application/application-out_min-mobile.html @@ -69,6 +69,7 @@ // 申请信息 lis.push('
' + '

物料名称:' + data[i].mname + '

' + + '

规格型号:' + data[i].version + '

' + '

物料编码:' + data[i].mcode + '

' + '

出库数量:' + data[i].showQuantity + '

' + '

生产日期:' + producedDate + '

' + @@ -90,6 +91,7 @@ // 申请信息 lis.push('
' + '

物料名称:' + data[i].mname + '

' + + '

规格型号:' + data[i].version + '

' + '

物料编码:' + data[i].mcode + '

' + '

出库数量:' + data[i].quantity + '

' + '

处理人:' + data[i].checkerName + '

' + diff --git a/src/main/resources/templates/pages/application/application-out_min.html b/src/main/resources/templates/pages/application/application-out_min.html index c94bd172..e2c830a8 100644 --- a/src/main/resources/templates/pages/application/application-out_min.html +++ b/src/main/resources/templates/pages/application/application-out_min.html @@ -70,6 +70,7 @@ {title: '操作', width: 100, toolbar: '#currentTableBar', align: "center"}, {field: 'code', width: 200, title: '提交编码', sort: true}, {field: 'mname', width: 120, title: '物料名称'}, + {field: 'version', width: 120, title: '规格型号'}, {field: 'mcode', width: 120, title: '物料编码'}, {field: 'producedDate', width: 120, title: '生产日期'}, {field: 'depositoryName', width: 120, title: '仓库名称'}, diff --git a/src/main/resources/templates/pages/scanQrCode/ScanBarOrQrCodeOut.html b/src/main/resources/templates/pages/scanQrCode/ScanBarOrQrCodeOut.html index 8adc4050..92975f50 100644 --- a/src/main/resources/templates/pages/scanQrCode/ScanBarOrQrCodeOut.html +++ b/src/main/resources/templates/pages/scanQrCode/ScanBarOrQrCodeOut.html @@ -164,7 +164,8 @@ var index = parent.layer.getFrameIndex(window.name); parent.layer.close(index); }) - } else if (flag === 1) { + } + else if (flag === 1) { // 如果是物料 material = data.material; if (mcode !== material.code && Number(mcode) !== material.code && mcode !== material.code.toString()) { @@ -191,9 +192,10 @@ parent.layer.close(index); }) - } else { + } + else { if (depository !== null) { // 如果已经扫描仓库 - if (depositoryId !== depository.did && Number(depositoryId) !== depository.did && depositoryId !== depository.did.toString()) { + if (depositoryId !== depository.id && Number(depositoryId) !== depository.id && depositoryId !== depository.id.toString()) { // 如果扫描的仓库不是订单要求的仓库 layer.confirm("当前仓库不符合要求,请移步至正确仓库", { btn: ["确定"] @@ -206,9 +208,9 @@ // 如果是出库位置为默认库位 var param = {}; param.id = id; - param.placeId = place.id; param.qrCode = qrCode; param.barCode = barCode; + // 弹出确定框 outQuantityCheck(param); } @@ -278,7 +280,8 @@ } } - } else if (flag === 2) { + } + else if (flag === 2) { // 如果扫描的为库位 place = data.place;// 将扫描结果保存到vue中 if (material == null) { @@ -361,7 +364,8 @@ } - } else if (flag === 3) { + } + else if (flag === 3) { // 如果是仓库 depository = data.depository;// 将扫描结果保存到vue中 diff --git a/src/main/resources/templates/pages/stockTaking/stockTakingReview.html b/src/main/resources/templates/pages/stockTaking/stockTakingReview.html index 8b24a758..004c559c 100644 --- a/src/main/resources/templates/pages/stockTaking/stockTakingReview.html +++ b/src/main/resources/templates/pages/stockTaking/stockTakingReview.html @@ -169,7 +169,7 @@
diff --git a/src/main/resources/templates/pages/stockTaking/stockTakingView.html b/src/main/resources/templates/pages/stockTaking/stockTakingView.html index dea37d65..bc9b4e1d 100644 --- a/src/main/resources/templates/pages/stockTaking/stockTakingView.html +++ b/src/main/resources/templates/pages/stockTaking/stockTakingView.html @@ -172,7 +172,7 @@
diff --git a/target/classes/static/js/lay-config.js b/target/classes/static/js/lay-config.js index 2ebade6c..d8cd5f65 100644 --- a/target/classes/static/js/lay-config.js +++ b/target/classes/static/js/lay-config.js @@ -9,9 +9,9 @@ window.rootPath = (function (src) { src = document.scripts[document.scripts.length - 1].src; return src.substring(0, src.lastIndexOf("/") + 1); })(); -// alert(rootPath) layui.config({ - base: rootPath + "lay-module/", + // base: rootPath + "lay-module/", + base: "https://jy.hxgk.group/static/js/" + "lay-module/", version: true }).extend({ miniAdmin: "layuimini/miniAdmin", // layuimini后台扩展 diff --git a/target/classes/templates/pages/application/application-out_min-mobile.html b/target/classes/templates/pages/application/application-out_min-mobile.html index a91299c6..e49128f5 100644 --- a/target/classes/templates/pages/application/application-out_min-mobile.html +++ b/target/classes/templates/pages/application/application-out_min-mobile.html @@ -69,6 +69,7 @@ // 申请信息 lis.push('
' + '

物料名称:' + data[i].mname + '

' + + '

规格型号:' + data[i].version + '

' + '

物料编码:' + data[i].mcode + '

' + '

出库数量:' + data[i].showQuantity + '

' + '

生产日期:' + producedDate + '

' + @@ -90,6 +91,7 @@ // 申请信息 lis.push('
' + '

物料名称:' + data[i].mname + '

' + + '

规格型号:' + data[i].version + '

' + '

物料编码:' + data[i].mcode + '

' + '

出库数量:' + data[i].quantity + '

' + '

处理人:' + data[i].checkerName + '

' + diff --git a/target/classes/templates/pages/application/application-out_min.html b/target/classes/templates/pages/application/application-out_min.html index c94bd172..e2c830a8 100644 --- a/target/classes/templates/pages/application/application-out_min.html +++ b/target/classes/templates/pages/application/application-out_min.html @@ -70,6 +70,7 @@ {title: '操作', width: 100, toolbar: '#currentTableBar', align: "center"}, {field: 'code', width: 200, title: '提交编码', sort: true}, {field: 'mname', width: 120, title: '物料名称'}, + {field: 'version', width: 120, title: '规格型号'}, {field: 'mcode', width: 120, title: '物料编码'}, {field: 'producedDate', width: 120, title: '生产日期'}, {field: 'depositoryName', width: 120, title: '仓库名称'}, diff --git a/target/classes/templates/pages/scanQrCode/ScanBarOrQrCodeOut.html b/target/classes/templates/pages/scanQrCode/ScanBarOrQrCodeOut.html index 8adc4050..92975f50 100644 --- a/target/classes/templates/pages/scanQrCode/ScanBarOrQrCodeOut.html +++ b/target/classes/templates/pages/scanQrCode/ScanBarOrQrCodeOut.html @@ -164,7 +164,8 @@ var index = parent.layer.getFrameIndex(window.name); parent.layer.close(index); }) - } else if (flag === 1) { + } + else if (flag === 1) { // 如果是物料 material = data.material; if (mcode !== material.code && Number(mcode) !== material.code && mcode !== material.code.toString()) { @@ -191,9 +192,10 @@ parent.layer.close(index); }) - } else { + } + else { if (depository !== null) { // 如果已经扫描仓库 - if (depositoryId !== depository.did && Number(depositoryId) !== depository.did && depositoryId !== depository.did.toString()) { + if (depositoryId !== depository.id && Number(depositoryId) !== depository.id && depositoryId !== depository.id.toString()) { // 如果扫描的仓库不是订单要求的仓库 layer.confirm("当前仓库不符合要求,请移步至正确仓库", { btn: ["确定"] @@ -206,9 +208,9 @@ // 如果是出库位置为默认库位 var param = {}; param.id = id; - param.placeId = place.id; param.qrCode = qrCode; param.barCode = barCode; + // 弹出确定框 outQuantityCheck(param); } @@ -278,7 +280,8 @@ } } - } else if (flag === 2) { + } + else if (flag === 2) { // 如果扫描的为库位 place = data.place;// 将扫描结果保存到vue中 if (material == null) { @@ -361,7 +364,8 @@ } - } else if (flag === 3) { + } + else if (flag === 3) { // 如果是仓库 depository = data.depository;// 将扫描结果保存到vue中 diff --git a/target/classes/templates/pages/stockTaking/stockTakingReview.html b/target/classes/templates/pages/stockTaking/stockTakingReview.html index 8b24a758..004c559c 100644 --- a/target/classes/templates/pages/stockTaking/stockTakingReview.html +++ b/target/classes/templates/pages/stockTaking/stockTakingReview.html @@ -169,7 +169,7 @@
diff --git a/target/classes/templates/pages/stockTaking/stockTakingView.html b/target/classes/templates/pages/stockTaking/stockTakingView.html index dea37d65..bc9b4e1d 100644 --- a/target/classes/templates/pages/stockTaking/stockTakingView.html +++ b/target/classes/templates/pages/stockTaking/stockTakingView.html @@ -172,7 +172,7 @@