Browse Source

修改审批结果名称

lwx_dev
erdanergou 3 years ago
parent
commit
2ba0c4d520
  1. 4
      src/main/java/com/dreamchaser/depository_manage/config/QyWxConfig.java
  2. 6
      src/main/java/com/dreamchaser/depository_manage/controller/QyWxOperationController.java
  3. 32
      src/main/java/com/dreamchaser/depository_manage/service/impl/DepositoryRecordServiceImpl.java
  4. 51
      src/main/java/com/dreamchaser/depository_manage/service/impl/QyWxOperationService.java
  5. 5
      src/test/java/com/dreamchaser/depository_manage/SomeTest.java

4
src/main/java/com/dreamchaser/depository_manage/config/QyWxConfig.java

@ -160,7 +160,7 @@ public class QyWxConfig {
}
// 获取企业微信中仓储中心负责人标签的成员的userId
public static List<String> getQyWxLabelUserList(String UserAgent) {
public static List<String> getQyWxLabelUserListForLabelName(String UserAgent,String labelName) {
// 获取当前token
String tempToken = GetQYWXToken(UserAgent);
String url = String.format("https://qyapi.weixin.qq.com/cgi-bin/tag/list?access_token=%s", tempToken);
@ -172,7 +172,7 @@ public class QyWxConfig {
JSONArray taglist = jsonObject.getJSONArray("taglist");
for (Object o : taglist) {
qywxLabel qywxLabel = JSONObject.toJavaObject((JSON) o, qywxLabel.class);
if (qywxLabel.getTagname().contains("仓储中心负责人")) {
if (qywxLabel.getTagname().contains(labelName)) {
List<qywxLabelUser> qyWxLabelUserList = getQyWxLabelUserList(tempToken, qywxLabel.getTagid().toString());
for (qywxLabelUser qywxLabelUser : qyWxLabelUserList) {
userIdList.add(qywxLabelUser.getUserid());

6
src/main/java/com/dreamchaser/depository_manage/controller/QyWxOperationController.java

@ -678,12 +678,14 @@ public class QyWxOperationController {
int finalFlagForDepository = flagForDepository;
HandlesOtherFunctionalThreadPool.execute(() -> depositoryRecordService.reviewByQyWxApprovalOut(mainId, finalApprovalInfo_details, crypt, spStatus, approvalInfo.getSpNo(), finalFlagForFirst, finalFlagForDepository));
} else if (QyWxConfig.stockTaking_approval_template_id.equals(approvalInfo.getTemplateId())) {
}
else if (QyWxConfig.stockTaking_approval_template_id.equals(approvalInfo.getTemplateId())) {
// 如果是库存盘点审批
// 开启一个线程用于进行处理
ApprovalInfo_Details finalApprovalInfo_details = approvalInfo_details;
HandlesOtherFunctionalThreadPool.execute(() -> stockTakingService.reviewByQyWxApproval(mainId, finalApprovalInfo_details, crypt, spStatus, approvalInfo.getSpNo()));
} else if (QyWxConfig.in_approval_template_id.equals(approvalInfo.getTemplateId())) {
}
else if (QyWxConfig.in_approval_template_id.equals(approvalInfo.getTemplateId())) {
// 如果是入库审批
// 开启一个线程用于进行处理
ApprovalInfo_Details finalApprovalInfo_details = approvalInfo_details;

32
src/main/java/com/dreamchaser/depository_manage/service/impl/DepositoryRecordServiceImpl.java

@ -1,6 +1,5 @@
package com.dreamchaser.depository_manage.service.impl;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.dreamchaser.depository_manage.config.PublicConfig;
import com.dreamchaser.depository_manage.config.QyWxConfig;
@ -767,8 +766,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
flagForApproval = isApprovalPass;
}
map.put("flagForApproval", flagForApproval);
}
else {
} else {
// 设置审批权限
map.put("inType", "mt");
// 获取当前类别物料是否需要审批
@ -2498,9 +2496,9 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
// 将主订单插入到redis中
redisPool.getRedisTemplateByDb(15).opsForHash().put("record:" + recordP.getId(), "minRecord", minRecordByMain.toString());
map.put("state", "仓储中心负责人审核通过");
map.put("state", userByPort.getName()+"审核通过");
if (flagForDepartmentHeadPass || flagForOpenDepository == 2) {
map.put("state", "部门负责人审核通过");
map.put("state", userByPort.getName()+"审核通过");
map.put("departmentheadTime", DateUtil.DateTimeToTimeStamp(simpleTime));
map.put("depositoryManagerPass", 4);
map.put("departmenthead", userByPort.getId());
@ -2512,10 +2510,10 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
updateInventoryForOutRefused(recordP);
map.put("depositoryManagerPass", 2);
map.put("pass", 2);
map.put("state", "仓储中心负责人审核未通过");
map.put("state", userByPort.getName() + "审核未通过");
if (flagForDepartmentHeadPass || flagForOpenDepository == 2) {
map.put("departmentheadPass", 2);
map.put("state", "部门负责人审核未通过");
map.put("state", userByPort.getName() + "审核未通过");
map.put("departmentheadTime", DateUtil.DateTimeToTimeStamp(simpleTime));
map.put("departmenthead", userByPort.getId());
map.put("depositoryManagerPass", 4);
@ -2553,7 +2551,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
} else {
map.put("state", "待仓储中心负责人审核");
// 获取仓储中心负责人标签的用户userId
List<String> qyWxLabelUserList = QyWxConfig.getQyWxLabelUserList(userAgent);
List<String> qyWxLabelUserList = QyWxConfig.getQyWxLabelUserListForLabelName(userAgent, "仓储中心负责人");
for (String s : qyWxLabelUserList) {
Map<String, Object> userByQyWxUserId = PublicConfig.findUserByQyWxUserId(s);
UserByPort user = (UserByPort) userByQyWxUserId.get("user");
@ -2568,7 +2566,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
updateInventoryForOutRefused(recordP);
map.put("pass", 2);
map.put("departmentheadPass", 2);
map.put("state", "部门负责人审核未通过");
map.put("state", userByPort.getName() + "审核未通过");
redisPool.getRedisTemplateByDb(14).delete("wms_QyWxMessage_" + spNo);
}
}
@ -3044,7 +3042,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
updateInventoryForOutRefused(record);
result = "驳回";
map.put("pass", 2);
map.put("state", "部门负责人审核未通过");
map.put("state", userToken.getName()+"审核未通过");
}
// 开启线程更改其他用户卡片模板样式
@ -3327,10 +3325,10 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
// 将主订单插入到redis中
redisPool.getRedisTemplateByDb(15).opsForHash().put("record:" + record.getId(), "minRecord", minRecordByMain.toString());
map.put("state", "仓储中心负责人审核通过");
map.put("state", userToken.getName()+"审核通过");
if (flagFordepartmentTime || flagForOpenDepository == 2) {
map.put("state", "部门负责人审核通过");
map.put("state", userToken.getName()+"审核通过");
map.put("departmentheadTime", DateUtil.DateTimeToTimeStamp(simpleTime));
map.put("depositoryManagerPass", 4);
map.put("departmenthead", userToken.getId());
@ -3341,9 +3339,9 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
updateInventoryForOutRefused(record);
result = "驳回";
map.put("pass", 2);
map.put("state", "仓储中心负责人审核未通过");
map.put("state", userToken.getName()+"审核未通过");
if (flagFordepartmentTime) {
map.put("state", "部门负责人审核未通过");
map.put("state", userToken.getName()+"审核未通过");
map.put("departmenthead", userToken.getId());
map.put("departmentheadPass", 2);
map.put("departmentheadTime", DateUtil.DateTimeToTimeStamp(simpleTime));
@ -3567,7 +3565,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
// 如果点击的是驳回
map.put("pass", 2);
map.put("departmentheadPass", 2);
map.put("state", "部门负责人审核未通过");
map.put("state", userByPort.getName()+"审核未通过");
}
} else {
@ -3782,13 +3780,13 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
// 将主订单插入到redis中
redisPool.getRedisTemplateByDb(15).opsForHash().put("record:" + recordP.getId(), "minRecord", minRecordByMain.toString());
map.put("state", "仓储中心负责人审核通过");
map.put("state", userByPort.getName()+"审核通过");
} else {
// 如果是不通过
updateInventoryForOutRefused(recordP);
map.put("depositoryManagerPass", 2);
map.put("pass", 2);
map.put("state", "仓储中心负责人审核未通过");
map.put("state", userByPort.getName()+"审核未通过");
}
}
map.put("id", outId);

51
src/main/java/com/dreamchaser/depository_manage/service/impl/QyWxOperationService.java

@ -19,6 +19,7 @@ import com.dreamchaser.depository_manage.utils.ObjectFormatUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import sun.net.PortConfig;
import java.util.*;
@ -1566,6 +1567,9 @@ public class QyWxOperationService {
// 设置标志位,用于标志是否全为办公用品库或消防用品库
boolean flag = true;
// 设置标志位,标志是否为中心仓下的办公用品库(默认不是)
boolean flagForZXCWorkWarehouse = false;
// 定义仓库Id列表
List<Integer> depositoryIdList = new ArrayList<>();
List<Long> materialTypeIdList = new ArrayList<>();
@ -1587,6 +1591,12 @@ public class QyWxOperationService {
if (!depositoryTop.getDname().contains("前置仓")) {
// 如果不是前置仓下的仓库
flag = false;
} else {
// 获取当前选择的仓库名称
String dname = depositoryById.getDname();
if (dname.contains("办公")) {
flagForZXCWorkWarehouse = true;
}
}
if (!depositoryIdList.contains(depositoryId)) {
@ -1772,13 +1782,45 @@ public class QyWxOperationService {
approvalTemplate.setApply_data(approval_template_apply_data);
//抄送方式:1-提单时抄送(默认值); 2-单据通过后抄送;3-提单和单据通过后抄送。仅use_template_approver为0时生效。
approvalTemplate.setNotify_type(2);
approvalTemplate.setNotify_type(1);
if (!flag) {
if (flagForZXCWorkWarehouse) {
// 如果是办公用品库
// 流程修改为 部门负责人-平衡岗人员-综合部负责人-管理员
List<String> userListForLabelName = QyWxConfig.getQyWxLabelUserListForLabelName(userAgent, "平衡岗");
// 用于设置平衡岗负责人流程
Approval_template_approver approval_template_approver_Label = new Approval_template_approver();
approval_template_approver_Label.setAttr(1);
approval_template_approver_Label.setUserid(userListForLabelName);
approval_template_approver_list.add(approval_template_approver_Label);
// 获取综合办部门负责人
List<UserByPort> departmentHeadByUser = PublicConfig.findDepartmentHeadByUser(268, userKey, token);
List<String> ZHBQyWxId = new ArrayList<>();
for (UserByPort userByPort : departmentHeadByUser) {
String QyWxId = userByPort.getWorkwechat();
if (QyWxId == null || "".equals(QyWxId)) {
QyWxId = userByPort.getWechat();
}
ZHBQyWxId.add(QyWxId);
}
// 用于设置综合办负责人流程
Approval_template_approver approval_template_approver_ZHBHeader = new Approval_template_approver();
approval_template_approver_ZHBHeader.setAttr(1);
approval_template_approver_ZHBHeader.setUserid(ZHBQyWxId);
approval_template_approver_list.add(approval_template_approver_ZHBHeader);
} else {
// 如果不是办公用品库
// 获取仓储中心负责人标签的用户userId
List<String> qyWxLabelUserList = QyWxConfig.getQyWxLabelUserList(userAgent);
List<String> qyWxLabelUserList = QyWxConfig.getQyWxLabelUserListForLabelName(userAgent, "仓储中心负责人");
// 用于设置仓储中心负责人流程
Approval_template_approver approval_template_approver_Label = new Approval_template_approver();
approval_template_approver_Label.setAttr(1);
@ -1790,8 +1832,11 @@ public class QyWxOperationService {
if (Integer.compare(2, flagForOpenDepository) == 0) {
otherDepartmentIdList = qyWxLabelUserList;
}
}
} else {
}
else {
// 如果不是中心仓下的仓库
if (Integer.compare(2, flagForOpenDepository) == 0) {

5
src/test/java/com/dreamchaser/depository_manage/SomeTest.java

@ -1,8 +1,10 @@
package com.dreamchaser.depository_manage;
import com.dreamchaser.depository_manage.config.PublicConfig;
import com.dreamchaser.depository_manage.config.QyWxConfig;
import com.dreamchaser.depository_manage.config.QyWxJMJM.com.qq.weixin.mp.aes.AesException;
import com.dreamchaser.depository_manage.config.QyWxJMJM.com.qq.weixin.mp.aes.WXBizMsgCrypt;
import com.dreamchaser.depository_manage.entity.UserByPort;
import com.dreamchaser.depository_manage.pojo.ApplicationOutRecordP;
import com.dreamchaser.depository_manage.pojo.callBackXml.approvalCallBackXml.*;
import com.dreamchaser.depository_manage.security.pool.HandlesOtherFunctionalThreadPool;
@ -73,6 +75,7 @@ public class SomeTest {
// 定义审批详情
ApprovalInfo_Details ap_detail = null;
// 用于获取当前审批的最新节点
for (ApprovalInfo_Details ad : details) {
// 获取节点分支审批人审批操作时间,0为尚未操作
@ -90,6 +93,8 @@ public class SomeTest {
break;
}
}
if (!"0".equals(spTime)) {
// 如果已经操作

Loading…
Cancel
Save