|
|
@ -1446,31 +1446,11 @@ public class QyWxOperationService { |
|
|
List<Approval_template_approver> approval_template_approver_list = new ArrayList<>(); |
|
|
List<Approval_template_approver> approval_template_approver_list = new ArrayList<>(); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
List<String> userIdList = new ArrayList<>(); |
|
|
|
|
|
List<UserByPort> departmentHeadForUserToken = PublicConfig.findDepartmentHeadByUser(applicantUser.getMaindeparment(), userKey, token); |
|
|
|
|
|
for (UserByPort departmentHead : departmentHeadForUserToken |
|
|
|
|
|
) { |
|
|
|
|
|
String departmentHeadWorkwechat = departmentHead.getWorkwechat(); |
|
|
|
|
|
if (departmentHeadWorkwechat == null || "".equals(departmentHeadWorkwechat)) { |
|
|
|
|
|
departmentHeadWorkwechat = departmentHead.getWechat(); |
|
|
|
|
|
} |
|
|
|
|
|
userIdList.add(departmentHeadWorkwechat); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
// 获取当前登录用户部门与企业微信部门对照
|
|
|
// 获取当前登录用户部门与企业微信部门对照
|
|
|
JSONObject userPortByQyWx = PublicConfig.getUserPortByQyWx(applicantUser.getMaindeparment()); |
|
|
JSONObject userPortByQyWx = PublicConfig.getUserPortByQyWx(applicantUser.getMaindeparment()); |
|
|
String portName = userPortByQyWx.getString("name"); |
|
|
String portName = userPortByQyWx.getString("name"); |
|
|
Integer portByQyWxInteger = userPortByQyWx.getInteger("wechatorganizationid"); |
|
|
Integer portByQyWxInteger = userPortByQyWx.getInteger("wechatorganizationid"); |
|
|
|
|
|
|
|
|
// 用于设置部门负责人流程
|
|
|
|
|
|
Approval_template_approver approval_template_approver_departMentHeader = new Approval_template_approver(); |
|
|
|
|
|
approval_template_approver_departMentHeader.setAttr(1); |
|
|
|
|
|
userIdList = new ArrayList<>(Collections.singleton("PangFuZhen")); |
|
|
|
|
|
approval_template_approver_departMentHeader.setUserid(userIdList); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
approval_template_approver_list.add(approval_template_approver_departMentHeader); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 审批申请数据,可定义审批申请中各个控件的值,其中必填项必须有值,选填项可为空,数据结构同“获取审批申请详情”接口返回值中同名参数“apply_data”
|
|
|
// 审批申请数据,可定义审批申请中各个控件的值,其中必填项必须有值,选填项可为空,数据结构同“获取审批申请详情”接口返回值中同名参数“apply_data”
|
|
|
Approval_template_apply_data approval_template_apply_data = new Approval_template_apply_data(); |
|
|
Approval_template_apply_data approval_template_apply_data = new Approval_template_apply_data(); |
|
|
@ -1563,7 +1543,8 @@ public class QyWxOperationService { |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 设置标志位,用于标志是否全为办公用品库或消防用品库
|
|
|
// 设置标志位,用于标志是否全为办公用品库或消防用品库
|
|
|
boolean flag = true; |
|
|
// 设置标志位。1为前置仓,2为中心仓,11为前置仓下的办公用品库,12为前置仓下的备品备件库,13为前置仓下的消防用品库,21为中心仓下的办公用品库
|
|
|
|
|
|
int flag = 11; |
|
|
|
|
|
|
|
|
// 设置标志位,标志是否为中心仓下的办公用品库(默认不是)
|
|
|
// 设置标志位,标志是否为中心仓下的办公用品库(默认不是)
|
|
|
boolean flagForZXCWorkWarehouse = false; |
|
|
boolean flagForZXCWorkWarehouse = false; |
|
|
@ -1588,12 +1569,24 @@ public class QyWxOperationService { |
|
|
|
|
|
|
|
|
if (!depositoryTop.getDname().contains("前置仓")) { |
|
|
if (!depositoryTop.getDname().contains("前置仓")) { |
|
|
// 如果不是前置仓下的仓库
|
|
|
// 如果不是前置仓下的仓库
|
|
|
flag = false; |
|
|
flag = 21; |
|
|
// 获取当前选择的仓库名称
|
|
|
// 获取当前选择的仓库名称
|
|
|
String dname = depositoryById.getDname(); |
|
|
String dname = depositoryById.getDname(); |
|
|
if (dname.contains("办公")) { |
|
|
if (dname.contains("办公")) { |
|
|
flagForZXCWorkWarehouse = true; |
|
|
flagForZXCWorkWarehouse = true; |
|
|
} |
|
|
} |
|
|
|
|
|
} else { |
|
|
|
|
|
// 如果是前置仓下的仓库
|
|
|
|
|
|
// 获取当前选择的仓库名称
|
|
|
|
|
|
String dname = depositoryById.getDname(); |
|
|
|
|
|
if (dname.contains("办公")) { |
|
|
|
|
|
flag = 11; |
|
|
|
|
|
} else if (dname.contains("备品")) { |
|
|
|
|
|
flag = 12; |
|
|
|
|
|
} else if (dname.contains("消防")) { |
|
|
|
|
|
flag = 13; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
if (!depositoryIdList.contains(depositoryId)) { |
|
|
if (!depositoryIdList.contains(depositoryId)) { |
|
|
@ -1781,7 +1774,51 @@ public class QyWxOperationService { |
|
|
//抄送方式:1-提单时抄送(默认值); 2-单据通过后抄送;3-提单和单据通过后抄送。仅use_template_approver为0时生效。
|
|
|
//抄送方式:1-提单时抄送(默认值); 2-单据通过后抄送;3-提单和单据通过后抄送。仅use_template_approver为0时生效。
|
|
|
approvalTemplate.setNotify_type(1); |
|
|
approvalTemplate.setNotify_type(1); |
|
|
|
|
|
|
|
|
if (!flag) { |
|
|
|
|
|
|
|
|
// 获取第一个节点成员uid
|
|
|
|
|
|
List<String> userIdList = new ArrayList<>(); |
|
|
|
|
|
if(flag == 11){ |
|
|
|
|
|
// 如果是办公用品库
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
List<UserByPort> departmentHeadForUserToken = PublicConfig.findDepartmentHeadByUser(applicantUser.getMaindeparment(), userKey, token); |
|
|
|
|
|
for (UserByPort departmentHead : departmentHeadForUserToken |
|
|
|
|
|
) { |
|
|
|
|
|
String departmentHeadWorkwechat = departmentHead.getWorkwechat(); |
|
|
|
|
|
if (departmentHeadWorkwechat == null || "".equals(departmentHeadWorkwechat)) { |
|
|
|
|
|
departmentHeadWorkwechat = departmentHead.getWechat(); |
|
|
|
|
|
} |
|
|
|
|
|
userIdList.add(departmentHeadWorkwechat); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}else if(flag == 12){ |
|
|
|
|
|
// 如果是备品备件库
|
|
|
|
|
|
|
|
|
|
|
|
// 获取申请用户所在部门的设备员
|
|
|
|
|
|
List<UserByPort> userByPortList = PublicConfig.findUserByAdminorgAndPosition(applicantUser.getMaindeparment(), "设备员", userKey, token); |
|
|
|
|
|
for (UserByPort userByPort : userByPortList) { |
|
|
|
|
|
String other_workwechat = userByPort.getWorkwechat(); |
|
|
|
|
|
if (other_workwechat == null || "".equals(other_workwechat)) { |
|
|
|
|
|
other_workwechat = userByPort.getWechat(); |
|
|
|
|
|
} |
|
|
|
|
|
userIdList.add(other_workwechat); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 用于设置第一个节点流程
|
|
|
|
|
|
Approval_template_approver approval_template_approver_departMentHeader = new Approval_template_approver(); |
|
|
|
|
|
approval_template_approver_departMentHeader.setAttr(1); |
|
|
|
|
|
userIdList = new ArrayList<>(Collections.singleton("PangFuZhen")); |
|
|
|
|
|
approval_template_approver_departMentHeader.setUserid(userIdList); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
approval_template_approver_list.add(approval_template_approver_departMentHeader); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (flag == 21) { |
|
|
|
|
|
|
|
|
if (flagForZXCWorkWarehouse) { |
|
|
if (flagForZXCWorkWarehouse) { |
|
|
// 如果是办公用品库
|
|
|
// 如果是办公用品库
|
|
|
@ -1812,8 +1849,7 @@ public class QyWxOperationService { |
|
|
approval_template_approver_ZHBHeader.setUserid(ZHBQyWxId); |
|
|
approval_template_approver_ZHBHeader.setUserid(ZHBQyWxId); |
|
|
approval_template_approver_list.add(approval_template_approver_ZHBHeader); |
|
|
approval_template_approver_list.add(approval_template_approver_ZHBHeader); |
|
|
|
|
|
|
|
|
} |
|
|
} else { |
|
|
else { |
|
|
|
|
|
// 如果不是办公用品库
|
|
|
// 如果不是办公用品库
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -1831,11 +1867,7 @@ public class QyWxOperationService { |
|
|
otherDepartmentIdList = qyWxLabelUserList; |
|
|
otherDepartmentIdList = qyWxLabelUserList; |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
else { |
|
|
|
|
|
|
|
|
|
|
|
// 如果不是中心仓下的仓库
|
|
|
// 如果不是中心仓下的仓库
|
|
|
if (Integer.compare(2, flagForOpenDepository) == 0) { |
|
|
if (Integer.compare(2, flagForOpenDepository) == 0) { |
|
|
// 如果该仓库是通过开放仓库获取到的
|
|
|
// 如果该仓库是通过开放仓库获取到的
|
|
|
@ -1867,7 +1899,7 @@ public class QyWxOperationService { |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (!flag) { |
|
|
if (flag == 21) { |
|
|
for (Long mtId : materialTypeIdList |
|
|
for (Long mtId : materialTypeIdList |
|
|
) { |
|
|
) { |
|
|
// 获取当前管理员的企业微信userId
|
|
|
// 获取当前管理员的企业微信userId
|
|
|
@ -3425,6 +3457,7 @@ public class QyWxOperationService { |
|
|
|
|
|
|
|
|
/** |
|
|
/** |
|
|
* 用于获取当前仓库的最顶级仓库 |
|
|
* 用于获取当前仓库的最顶级仓库 |
|
|
|
|
|
* |
|
|
* @param depository 仓库 |
|
|
* @param depository 仓库 |
|
|
* @param depositoryList 所有仓库 |
|
|
* @param depositoryList 所有仓库 |
|
|
* @return |
|
|
* @return |
|
|
|