|
|
@ -35,10 +35,7 @@ import javax.servlet.http.HttpSession; |
|
|
import java.io.IOException; |
|
|
import java.io.IOException; |
|
|
import java.io.PrintWriter; |
|
|
import java.io.PrintWriter; |
|
|
import java.time.Instant; |
|
|
import java.time.Instant; |
|
|
import java.util.HashMap; |
|
|
import java.util.*; |
|
|
import java.util.List; |
|
|
|
|
|
import java.util.Map; |
|
|
|
|
|
import java.util.Objects; |
|
|
|
|
|
import java.util.concurrent.TimeUnit; |
|
|
import java.util.concurrent.TimeUnit; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -152,8 +149,7 @@ public class QyWxOperationController { |
|
|
PrintWriter writer = response.getWriter(); |
|
|
PrintWriter writer = response.getWriter(); |
|
|
writer.println(sEchoStr); |
|
|
writer.println(sEchoStr); |
|
|
writer.close(); |
|
|
writer.close(); |
|
|
} |
|
|
} else { |
|
|
else { |
|
|
|
|
|
// 如果是响应事件
|
|
|
// 如果是响应事件
|
|
|
|
|
|
|
|
|
String ToUserName = (String) map.get("ToUserName"); |
|
|
String ToUserName = (String) map.get("ToUserName"); |
|
|
@ -496,8 +492,7 @@ public class QyWxOperationController { |
|
|
PrintWriter writer = response.getWriter(); |
|
|
PrintWriter writer = response.getWriter(); |
|
|
writer.println(sEchoStr); |
|
|
writer.println(sEchoStr); |
|
|
writer.close(); |
|
|
writer.close(); |
|
|
} else |
|
|
} else { |
|
|
{ |
|
|
|
|
|
String ToUserName = (String) map.get("ToUserName"); |
|
|
String ToUserName = (String) map.get("ToUserName"); |
|
|
String Encrypt = (String) map.get("Encrypt"); |
|
|
String Encrypt = (String) map.get("Encrypt"); |
|
|
String AgentID = (String) map.get("AgentID"); |
|
|
String AgentID = (String) map.get("AgentID"); |
|
|
@ -533,6 +528,8 @@ public class QyWxOperationController { |
|
|
|
|
|
|
|
|
// 设置当前审批是否为仓库管理员(1为部门负责人,2为仓储中心,3为仓库管理员)
|
|
|
// 设置当前审批是否为仓库管理员(1为部门负责人,2为仓储中心,3为仓库管理员)
|
|
|
int flagForDepository = 1; // 默认为部门负责人
|
|
|
int flagForDepository = 1; // 默认为部门负责人
|
|
|
|
|
|
// 定义当前审批人的企业微信uid列表
|
|
|
|
|
|
List<String> approverQyWxUid = new ArrayList<>(); |
|
|
|
|
|
|
|
|
// 定义已完成审批的节点数
|
|
|
// 定义已完成审批的节点数
|
|
|
int approval_count = 0; |
|
|
int approval_count = 0; |
|
|
@ -559,6 +556,8 @@ public class QyWxOperationController { |
|
|
|
|
|
|
|
|
// 如果当前审批节点已经处理
|
|
|
// 如果当前审批节点已经处理
|
|
|
if (!("0".equals(spTime))) { |
|
|
if (!("0".equals(spTime))) { |
|
|
|
|
|
// 添加当前审批节点人的uid
|
|
|
|
|
|
approverQyWxUid.add(ad.getApprover().getUserId()); |
|
|
|
|
|
|
|
|
// 设置当前处理的详情
|
|
|
// 设置当前处理的详情
|
|
|
ap_detail = ad; |
|
|
ap_detail = ad; |
|
|
@ -614,12 +613,11 @@ public class QyWxOperationController { |
|
|
// 获取第二个节点数据
|
|
|
// 获取第二个节点数据
|
|
|
|
|
|
|
|
|
ApprovalInfo_SpRecord approvalInfo_spRecord = null; |
|
|
ApprovalInfo_SpRecord approvalInfo_spRecord = null; |
|
|
if (spRecord_list.size() > 1 && spRecord_list.size() <= 4) { |
|
|
if (spRecord_list.size() > 1 && spRecord_list.size() < 4) { |
|
|
// 如果审批节点数大于1小于等于4
|
|
|
// 如果审批节点数大于1小于等于4
|
|
|
approvalInfo_spRecord = spRecord_list.get(1); |
|
|
approvalInfo_spRecord = spRecord_list.get(1); |
|
|
} |
|
|
} |
|
|
if (approvalInfo_spRecord != null) { |
|
|
if (approvalInfo_spRecord != null) { |
|
|
|
|
|
|
|
|
// 获取第二个节点中审批人信息
|
|
|
// 获取第二个节点中审批人信息
|
|
|
List<ApprovalInfo_Details> details = approvalInfo_spRecord.getDetails(); |
|
|
List<ApprovalInfo_Details> details = approvalInfo_spRecord.getDetails(); |
|
|
// 定义当前是否为标签
|
|
|
// 定义当前是否为标签
|
|
|
@ -673,20 +671,39 @@ public class QyWxOperationController { |
|
|
|
|
|
|
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
else { |
|
|
|
|
|
// 如果为空则代表是中心仓下的办公用品库
|
|
|
|
|
|
|
|
|
|
|
|
int size = approverQyWxUid.size(); |
|
|
|
|
|
if (size == 1) { |
|
|
|
|
|
// 如果当前审批节点为第一个即部门负责人
|
|
|
|
|
|
flagForFirst = true; |
|
|
|
|
|
flagForDepository = 11; |
|
|
|
|
|
} else if (size == 2) { |
|
|
|
|
|
// 如果当前审批节点为第二个即平衡岗
|
|
|
|
|
|
flagForFirst = true; |
|
|
|
|
|
flagForDepository = 12; |
|
|
|
|
|
} else if (size == 3) { |
|
|
|
|
|
// 如果当前审批节点为综合办负责人
|
|
|
|
|
|
flagForFirst = false; |
|
|
|
|
|
flagForDepository = 2; |
|
|
|
|
|
} else { |
|
|
|
|
|
// 如果不是有操作的审批节点
|
|
|
|
|
|
flagForDepository = 3; |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
// 开启一个线程用于进行处理
|
|
|
// 开启一个线程用于进行处理
|
|
|
ApprovalInfo_Details finalApprovalInfo_details = approvalInfo_details; |
|
|
ApprovalInfo_Details finalApprovalInfo_details = approvalInfo_details; |
|
|
boolean finalFlagForFirst = flagForFirst; |
|
|
boolean finalFlagForFirst = flagForFirst; |
|
|
int finalFlagForDepository = flagForDepository; |
|
|
int finalFlagForDepository = flagForDepository; |
|
|
HandlesOtherFunctionalThreadPool.execute(() -> depositoryRecordService.reviewByQyWxApprovalOut(mainId, finalApprovalInfo_details, crypt, spStatus, approvalInfo.getSpNo(), finalFlagForFirst, finalFlagForDepository)); |
|
|
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; |
|
|
ApprovalInfo_Details finalApprovalInfo_details = approvalInfo_details; |
|
|
HandlesOtherFunctionalThreadPool.execute(() -> stockTakingService.reviewByQyWxApproval(mainId, finalApprovalInfo_details, crypt, spStatus, approvalInfo.getSpNo())); |
|
|
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; |
|
|
ApprovalInfo_Details finalApprovalInfo_details = approvalInfo_details; |
|
|
|