From 3b697f3383e0b8a28e05df5e3523b5916025ca32 Mon Sep 17 00:00:00 2001 From: erdanergou Date: Wed, 10 May 2023 08:33:01 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=87=BA=E5=BA=93=E5=AE=A1?= =?UTF-8?q?=E6=89=B9=E6=B7=BB=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/QyWxOperationService.java | 155 +++++++++--------- 1 file changed, 74 insertions(+), 81 deletions(-) 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 952b9e75..8c44266f 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 @@ -57,14 +57,14 @@ public class QyWxOperationService { * @param flag 用于判断发送类型是部门负责人还是仓储负责人(true为部门,false为仓储) * @return */ - public JSONObject sendQyWxToApplicationOutMessage(String uid, Integer outId, Boolean flag, String userAgent,String userKey,String token) { + public JSONObject sendQyWxToApplicationOutMessage(String uid, Integer outId, Boolean flag, String userAgent, String userKey, String token) { // 获取将要发送申请的订单记录 ApplicationOutRecord applicationOutRecordPById = depositoryRecordMapper.findApplicationOutRecordPById(outId); // 申请人id Integer applicantId = applicationOutRecordPById.getApplicantId(); // 申请人 - UserByPort applicant = LinkInterfaceUtil.FindUserById(applicantId, userKey,token); + UserByPort applicant = LinkInterfaceUtil.FindUserById(applicantId, userKey, token); // 获取所有子订单 List applicationOutRecordMinByParent = depositoryRecordMapper.findApplicationOutRecordMinByParent(outId); @@ -248,7 +248,7 @@ public class QyWxOperationService { * @param mainId 盘点记录编号 * @return */ - public JSONObject sendQyWxToStockTakingDepartmentManagerMessage(String uid, Integer mainId, String userAgent,String userKey,String token) { + public JSONObject sendQyWxToStockTakingDepartmentManagerMessage(String uid, Integer mainId, String userAgent, String userKey, String token) { // 获取盘点主记录 StockTaking mainRecord = stockTakingMapper.selectStockTakingById(mainId); @@ -258,7 +258,7 @@ public class QyWxOperationService { // 申请人id Integer getOriginator = mainRecord.getOriginator(); // 申请人 - UserByPort originator = LinkInterfaceUtil.FindUserById(getOriginator, userKey,token); + UserByPort originator = LinkInterfaceUtil.FindUserById(getOriginator, userKey, token); // 盘点物料名称 StringBuilder mname = new StringBuilder(); @@ -481,7 +481,7 @@ public class QyWxOperationService { * @param mainId 盘点记录编号 * @return */ - public JSONObject sendQyWxToStockTakingMessage(String uid, Integer mainId, List normalMinId, String userAgent,String userKey,String token) { + public JSONObject sendQyWxToStockTakingMessage(String uid, Integer mainId, List normalMinId, String userAgent, String userKey, String token) { // 获取盘点主记录 StockTaking mainRecord = stockTakingMapper.selectStockTakingById(mainId); @@ -495,7 +495,7 @@ public class QyWxOperationService { // 申请人id Integer getOriginator = mainRecord.getOriginator(); // 申请人 - UserByPort originator = LinkInterfaceUtil.FindUserById(getOriginator, userKey,token); + UserByPort originator = LinkInterfaceUtil.FindUserById(getOriginator, userKey, token); // 盘点物料名称 StringBuilder mname = new StringBuilder(); @@ -717,13 +717,13 @@ public class QyWxOperationService { * @param outId 订单编号 * @return */ - public JSONObject sendCcMessageToUsers(String uid, Integer outId, String userAgent,String userKey,String token) { + public JSONObject sendCcMessageToUsers(String uid, Integer outId, String userAgent, String userKey, String token) { // 获取已经完成的订单 ApplicationOutRecord recordP = depositoryRecordMapper.findApplicationOutRecordPById(outId); // 申请人id Integer applicantId = recordP.getApplicantId(); // 申请人 - UserByPort applicant = LinkInterfaceUtil.FindUserById(applicantId, userKey,token); + UserByPort applicant = LinkInterfaceUtil.FindUserById(applicantId, userKey, token); // 获取所有子订单 List applicationOutRecordMinByParent = depositoryRecordMapper.findApplicationOutRecordMinByParent(outId); @@ -757,7 +757,7 @@ public class QyWxOperationService { // 获取仓库信息 Depository depositoryRecordById = depositoryMapper.findDepositoryById(recordMin.getDepositoryId()); // 获取处理人信息 - UserByPort userByPort = LinkInterfaceUtil.FindUserById(recordMin.getCheckId(), userKey,token); + UserByPort userByPort = LinkInterfaceUtil.FindUserById(recordMin.getCheckId(), userKey, token); // 获取对应出库单位 String unit = recordMin.getUnit(); @@ -800,7 +800,7 @@ public class QyWxOperationService { * @param map * @return */ - public JSONObject sendCcStockTakingMessageToHead(String uid, Map map, UserByPort userToken, StockTaking mainRecord, String userAgent,String userKey,String token) { + public JSONObject sendCcStockTakingMessageToHead(String uid, Map map, UserByPort userToken, StockTaking mainRecord, String userAgent, String userKey, String token) { /** * 获取完成的订单 @@ -827,7 +827,7 @@ public class QyWxOperationService { // 抄送内容 StringBuilder content = new StringBuilder("## `抄送信息:`%n"); // 获取发起人信息 - UserByPort originator = LinkInterfaceUtil.FindUserById(mainRecord.getOriginator(), userKey,token); + UserByPort originator = LinkInterfaceUtil.FindUserById(mainRecord.getOriginator(), userKey, token); // 设置content content.append(">### **").append(originator.getName()).append("的物料调账记录** %n时间:").append(DateUtil.TimeStampToDateTime(mainRecord.getCreateTime())).append(" %n"); @@ -877,10 +877,10 @@ public class QyWxOperationService { } content.append(">- 物料名称:").append(material.getMname()).append("%n"); content.append(">- 盘点位置:").append(fromLocation).append("%n"); - content.append(">- 原库存数量:").append((int)(minRecord.getOldInventory() / 100.0)).append("%n"); - content.append(">- 盘点数量:").append((int)(minRecord.getNewInventory() / 100.0)).append("%n"); + content.append(">- 原库存数量:").append((int) (minRecord.getOldInventory() / 100.0)).append("%n"); + content.append(">- 盘点数量:").append((int) (minRecord.getNewInventory() / 100.0)).append("%n"); content.append(">- 盘点单位:").append(unit).append("%n"); - content.append(">- 盈亏数量:").append((int)(minRecord.getInventory()/ 100.0)).append("%n"); + content.append(">- 盈亏数量:").append((int) (minRecord.getInventory() / 100.0)).append("%n"); content.append(">- 盘点结果:").append(takingResult).append("%n"); content.append("%n---%n"); } @@ -914,7 +914,7 @@ public class QyWxOperationService { * @param mainRecord 主订单 * @return */ - public JSONObject sendStockTakingErrMessageToHead(String uid, List errIds, StockTaking mainRecord, UserByPort userToken, String userAgent,String userKey,String token) { + public JSONObject sendStockTakingErrMessageToHead(String uid, List errIds, StockTaking mainRecord, UserByPort userToken, String userAgent, String userKey, String token) { MessageByMarkDown markDown = new MessageByMarkDown(); //设置消息接收者 @@ -936,7 +936,7 @@ public class QyWxOperationService { // 抄送内容 StringBuilder content = new StringBuilder("## `盘点发生错误:`%n"); // 获取发起人信息 - UserByPort originator = LinkInterfaceUtil.FindUserById(mainRecord.getOriginator(), userKey,token); + UserByPort originator = LinkInterfaceUtil.FindUserById(mainRecord.getOriginator(), userKey, token); // 设置content content.append(">### **" + originator.getName() + "的物料盘点记录** %n时间:" + DateUtil.TimeStampToDateTime(mainRecord.getCreateTime()) + " %n"); @@ -1007,7 +1007,7 @@ public class QyWxOperationService { * @param map * @return */ - public JSONObject sendCcStockTakingTransferMessageToHead(String uid, Map map, UserByPort userToken, StockTaking mainRecord, String userAgent,String userKey,String token) { + public JSONObject sendCcStockTakingTransferMessageToHead(String uid, Map map, UserByPort userToken, StockTaking mainRecord, String userAgent, String userKey, String token) { /** * 获取要转移的订单 @@ -1034,7 +1034,7 @@ public class QyWxOperationService { // 抄送内容 StringBuilder content = new StringBuilder("## `抄送信息:`%n"); // 获取发起人信息 - UserByPort originator = LinkInterfaceUtil.FindUserById(mainRecord.getOriginator(), userKey,token); + UserByPort originator = LinkInterfaceUtil.FindUserById(mainRecord.getOriginator(), userKey, token); // 设置content content.append(">### **" + originator.getName() + "的物料转移记录** %n时间:" + DateUtil.TimeStampToDateTime(mainRecord.getCreateTime()) + " %n"); @@ -1136,7 +1136,7 @@ public class QyWxOperationService { } - public TemplateCard_text_notice getTextNoticeCard(Integer outMinId, Integer quantity,String userKey,String token) { + public TemplateCard_text_notice getTextNoticeCard(Integer outMinId, Integer quantity, String userKey, String token) { // 需要出库的子订单 ApplicationOutRecordMin recordMin = depositoryRecordMapper.findApplicationOutMinById(outMinId); // 获取其主订单 @@ -1144,7 +1144,7 @@ public class QyWxOperationService { // 申请人id Integer applicantId = outRecordP.getApplicantId(); // 申请人 - UserByPort applicant = LinkInterfaceUtil.FindUserById(applicantId, userKey,token); + UserByPort applicant = LinkInterfaceUtil.FindUserById(applicantId, userKey, token); // 定义卡片模板 TemplateCard_text_notice text_notice = new TemplateCard_text_notice(); @@ -1264,7 +1264,7 @@ public class QyWxOperationService { * @param outMinId * @return */ - public JSONObject sendNotificationToDepositoryManager(String uid, Integer outMinId, String userAgent,String userKey,String token) { + public JSONObject sendNotificationToDepositoryManager(String uid, Integer outMinId, String userAgent, String userKey, String token) { // 定义文本通知型卡片 TextNotice textNotice = new TextNotice(); @@ -1284,7 +1284,7 @@ public class QyWxOperationService { textNotice.setMsgtype("template_card"); // 获取卡片模板 - TemplateCard_text_notice text_notice = getTextNoticeCard(outMinId, null,userKey,token); + TemplateCard_text_notice text_notice = getTextNoticeCard(outMinId, null, userKey, token); textNotice.setTemplate_card(text_notice); String s = JSONObject.toJSONString(textNotice); @@ -1351,14 +1351,14 @@ public class QyWxOperationService { } - public JSONObject updateTemplateCardToQuantity(String response_code, Integer quantity, String userAgent, Integer outMinId,String userKey,String token) { + public JSONObject updateTemplateCardToQuantity(String response_code, Integer quantity, String userAgent, Integer outMinId, String userKey, String token) { 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); map.put("agentid", QyWxConfig.AgentId); map.put("response_code", response_code); map.put("enable_id_trans", 0); - TemplateCard_text_notice text_notice = getTextNoticeCard(outMinId, quantity,userKey,token); + TemplateCard_text_notice text_notice = getTextNoticeCard(outMinId, quantity, userKey, token); map.put("template_card", text_notice); String jsonString = JSONObject.toJSONString(map); System.out.println(jsonString); @@ -1392,7 +1392,7 @@ public class QyWxOperationService { * @param mainId 出库的主订单 * @return 发送结果 */ - public JSONObject sendOutApprovalTemplate(String userAgent, UserByPort userToken, Integer mainId,String userKey,String token) { + public JSONObject sendOutApprovalTemplate(String userAgent, UserByPort userToken, Integer mainId, String userKey, String token) { // 获取当前出库主订单 ApplicationOutRecord mainRecord = depositoryRecordMapper.findApplicationOutRecordPById(mainId); @@ -1427,7 +1427,7 @@ public class QyWxOperationService { List userIdList = new ArrayList<>(); - List departmentHeadForUserToken = PublicConfig.findDepartmentHeadByUser(userToken.getMaindeparment(),userKey,token ); + List departmentHeadForUserToken = PublicConfig.findDepartmentHeadByUser(userToken.getMaindeparment(), userKey, token); for (UserByPort departmentHead : departmentHeadForUserToken ) { String departmentHeadWorkwechat = departmentHead.getWorkwechat(); @@ -1568,7 +1568,7 @@ public class QyWxOperationService { depositoryIdList.add(depositoryId); } Long materialTypeId = materialById.getMaterialTypeId(); - if(!materialTypeIdList.contains(materialTypeId)){ + if (!materialTypeIdList.contains(materialTypeId)) { materialTypeIdList.add(materialTypeId); } @@ -1762,10 +1762,7 @@ public class QyWxOperationService { approval_template_approver_list.add(approval_template_approver_Label); - - - } - else { + } else { // 如果不是中心仓下的仓库 if (Integer.compare(2, flagForOpenDepository) == 0) { // 如果该仓库是通过开放仓库获取到的 @@ -1775,7 +1772,7 @@ public class QyWxOperationService { // 获取当前仓库所属的部门 String adminorg = depositoryById.getAdminorg(); - List departmentHeadByUser = PublicConfig.findDepartmentHeadByUser(ObjectFormatUtil.toInteger(adminorg), userKey,token); + List departmentHeadByUser = PublicConfig.findDepartmentHeadByUser(ObjectFormatUtil.toInteger(adminorg), userKey, token); for (UserByPort departmentHead : departmentHeadByUser ) { String departmentHeadWorkwechat = departmentHead.getWorkwechat(); @@ -1797,63 +1794,65 @@ public class QyWxOperationService { } - if(!flag){ - for (Long mtId:materialTypeIdList - ) { + if (!flag) { + // 获取当前管理员的企业微信userId + List qywxUserIdList = new ArrayList<>(); + for (Long mtId : materialTypeIdList + ) { // 获取当前仓库的管理员列表 List userIdByDid = roleMapper.findUserIdByMtId(mtId); - // 获取当前管理员的企业微信userId - List qywxUserIdList = new ArrayList<>(); + for (Integer userId : userIdByDid ) { // 获取对应管理员信息 - UserByPort userByPort = LinkInterfaceUtil.FindUserById(userId, userKey,token); + UserByPort userByPort = LinkInterfaceUtil.FindUserById(userId, userKey, token); String user = userByPort.getWorkwechat(); if (user == null || "".equals(user)) { user = userByPort.getWechat(); } qywxUserIdList.add(user); } - if (qywxUserIdList.size() > 0) { - // 用于设置仓库管理员流程 - Approval_template_approver approval_template_approver_depository_manager = new Approval_template_approver(); - approval_template_approver_depository_manager.setAttr(1); - approval_template_approver_depository_manager.setUserid(qywxUserIdList); - approval_template_approver_list.add(approval_template_approver_depository_manager); - } } - } - else{ + if (qywxUserIdList.size() > 0) { + // 用于设置仓库管理员流程 + Approval_template_approver approval_template_approver_depository_manager = new Approval_template_approver(); + approval_template_approver_depository_manager.setAttr(2); + approval_template_approver_depository_manager.setUserid(qywxUserIdList); + + approval_template_approver_list.add(approval_template_approver_depository_manager); + } + } else { + // 获取当前管理员的企业微信userId + List qywxUserIdList = new ArrayList<>(); for (Integer depositoryId : depositoryIdList ) { // 获取当前仓库的管理员列表 List userIdByDid = roleMapper.findUserIdByDid(depositoryId); - // 获取当前管理员的企业微信userId - List qywxUserIdList = new ArrayList<>(); + for (Integer userId : userIdByDid ) { // 获取对应管理员信息 - UserByPort userByPort = LinkInterfaceUtil.FindUserById(userId, userKey,token); + UserByPort userByPort = LinkInterfaceUtil.FindUserById(userId, userKey, token); String user = userByPort.getWorkwechat(); if (user == null || "".equals(user)) { user = userByPort.getWechat(); } qywxUserIdList.add(user); } - if (qywxUserIdList.size() > 0) { - // 用于设置仓库管理员流程 - Approval_template_approver approval_template_approver_depository_manager = new Approval_template_approver(); - approval_template_approver_depository_manager.setAttr(1); - approval_template_approver_depository_manager.setUserid(qywxUserIdList); - approval_template_approver_list.add(approval_template_approver_depository_manager); - } } - } + if (qywxUserIdList.size() > 0) { + // 用于设置仓库管理员流程 + Approval_template_approver approval_template_approver_depository_manager = new Approval_template_approver(); + approval_template_approver_depository_manager.setAttr(2); + approval_template_approver_depository_manager.setUserid(qywxUserIdList); + approval_template_approver_list.add(approval_template_approver_depository_manager); + } + } // 设置审批流程 @@ -1879,7 +1878,7 @@ public class QyWxOperationService { * @param mainId 出库的主订单 * @return 发送结果 */ - public JSONObject sendOutApprovalTemplateForImmediately(String userAgent, UserByPort userToken, Integer mainId,String userKey,String token) { + public JSONObject sendOutApprovalTemplateForImmediately(String userAgent, UserByPort userToken, Integer mainId, String userKey, String token) { // 获取当前出库主订单 ApplicationOutRecord mainRecord = depositoryRecordMapper.findApplicationOutRecordPById(mainId); @@ -1914,9 +1913,9 @@ public class QyWxOperationService { List userIdList = new ArrayList<>(); String[] departmentHeadS = mainRecord.getDepartmenthead().split(","); - for (String department:departmentHeadS - ) { - if("".equals(department)){ + for (String department : departmentHeadS + ) { + if ("".equals(department)) { continue; } UserByPort departmentHead = LinkInterfaceUtil.FindUserById(ObjectFormatUtil.toInteger(department), userKey, token); @@ -2239,12 +2238,11 @@ public class QyWxOperationService { approvalTemplate.setNotify_type(2); - String[] depositoryManagerS = mainRecord.getDepositoryManager().split(","); List depositoryManagerWorkWechats = new ArrayList<>(); - for (String depositorymanager:depositoryManagerS + for (String depositorymanager : depositoryManagerS ) { - if("".equals(depositorymanager)){ + if ("".equals(depositorymanager)) { continue; } UserByPort depositoryManage = LinkInterfaceUtil.FindUserById(ObjectFormatUtil.toInteger(depositorymanager), userKey, token); @@ -2263,11 +2261,8 @@ public class QyWxOperationService { approval_template_approver_list.add(approval_template_approver_Label); - - - - if(!flag){ - for (Long mtId:materialTypeIdList + if (!flag) { + for (Long mtId : materialTypeIdList ) { // 获取当前仓库的管理员列表 List userIdByDid = roleMapper.findUserIdByMtId(mtId); @@ -2276,7 +2271,7 @@ public class QyWxOperationService { for (Integer userId : userIdByDid ) { // 获取对应管理员信息 - UserByPort userByPort = LinkInterfaceUtil.FindUserById(userId, userKey,token); + UserByPort userByPort = LinkInterfaceUtil.FindUserById(userId, userKey, token); String user = userByPort.getWorkwechat(); if (user == null || "".equals(user)) { user = userByPort.getWechat(); @@ -2292,8 +2287,7 @@ public class QyWxOperationService { approval_template_approver_list.add(approval_template_approver_depository_manager); } } - } - else{ + } else { for (Integer depositoryId : depositoryIdList ) { @@ -2304,7 +2298,7 @@ public class QyWxOperationService { for (Integer userId : userIdByDid ) { // 获取对应管理员信息 - UserByPort userByPort = LinkInterfaceUtil.FindUserById(userId, userKey,token); + UserByPort userByPort = LinkInterfaceUtil.FindUserById(userId, userKey, token); String user = userByPort.getWorkwechat(); if (user == null || "".equals(user)) { user = userByPort.getWechat(); @@ -2339,7 +2333,6 @@ public class QyWxOperationService { } - /** * 用于发送入库审批 * @@ -2349,7 +2342,7 @@ public class QyWxOperationService { * @param QyWxUid 接收人 * @return */ - public JSONObject sendApprovalTemplateIn(String userAgent, UserByPort userToken, List recordIdList, String QyWxUid,String userKey,String token) { + public JSONObject sendApprovalTemplateIn(String userAgent, UserByPort userToken, List recordIdList, String QyWxUid, String userKey, String token) { // 获取当前出库明细 List minRecordList = depositoryRecordMapper.findApplicationInRecordsByIds(recordIdList); @@ -2362,7 +2355,7 @@ public class QyWxOperationService { // 获取申请人的userId - UserByPort userByPort = LinkInterfaceUtil.FindUserById(minRecordList.get(0).getApplicantId(), userKey,token); + UserByPort userByPort = LinkInterfaceUtil.FindUserById(minRecordList.get(0).getApplicantId(), userKey, token); String workwechat = userByPort.getWorkwechat(); if (workwechat == null || "".equals(workwechat)) { workwechat = userByPort.getWechat(); @@ -3122,7 +3115,7 @@ public class QyWxOperationService { * @param userAgent md5加密后user-agent * @return */ - public JSONObject sendNoticeForAllUser(Integer nid, String userAgent,String userKey,String token) { + public JSONObject sendNoticeForAllUser(Integer nid, String userAgent, String userKey, String token) { // 获取当前要发生的公告信息 Notice noticeById = noticeMapper.findNoticeById(nid); TextTemplateCard textTemplateCard = new TextTemplateCard(); @@ -3141,7 +3134,7 @@ public class QyWxOperationService { textCardContent.setTitle(noticeById.getTitle()); String noticeContent = "
" + DateUtil.TimeStampToDateTime(noticeById.getTime()) + "
" + noticeById.getContent() + "
" + - LinkInterfaceUtil.FindUserById(noticeById.getUserId(), userKey,token).getName() + "
"; + LinkInterfaceUtil.FindUserById(noticeById.getUserId(), userKey, token).getName() + ""; // 设置内容 textCardContent.setDescription(noticeContent); // 设置点击后跳转的链接 @@ -3179,7 +3172,7 @@ public class QyWxOperationService { * @param flag 标志当前是什么申请 1出库2盘点 * @return */ - public JSONObject sendMessageForOtherUserByCard(Integer mainId, String uid, String userAgent, Integer flag,String userKey,String token) { + public JSONObject sendMessageForOtherUserByCard(Integer mainId, String uid, String userAgent, Integer flag, String userKey, String token) { // 获取当前申请主订单 ApplicationOutRecord aorp = null; @@ -3226,7 +3219,7 @@ public class QyWxOperationService { applicantTime = stockTaking.getCreateTime(); tempMessageTitle = "库存盘点审批"; } - UserByPort userByPort = LinkInterfaceUtil.FindUserById(applicantId, userKey,token); + UserByPort userByPort = LinkInterfaceUtil.FindUserById(applicantId, userKey, token); // 设置content content.append(">### **%n对于" + userByPort.getName() + "在" + DateUtil.TimeStampToDateTime(applicantTime) + "提起" + tempMessageTitle + "的转至应用发送的消息进行审批,审批应用中的流程请忽略 %n**"); content.append("%n---%n");