Browse Source

修改出库申请为备品备件库时第一个节点改为设备员

lwx_dev
erdanergou 2 years ago
parent
commit
a078ceed8b
  1. 95
      src/main/java/com/dreamchaser/depository_manage/service/impl/QyWxOperationService.java

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

@ -1446,31 +1446,11 @@ public class QyWxOperationService {
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());
String portName = userPortByQyWx.getString("name");
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”
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;
@ -1588,12 +1569,24 @@ public class QyWxOperationService {
if (!depositoryTop.getDname().contains("前置仓")) {
// 如果不是前置仓下的仓库
flag = false;
flag = 21;
// 获取当前选择的仓库名称
String dname = depositoryById.getDname();
if (dname.contains("办公")) {
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)) {
@ -1781,7 +1774,51 @@ public class QyWxOperationService {
//抄送方式:1-提单时抄送(默认值); 2-单据通过后抄送;3-提单和单据通过后抄送。仅use_template_approver为0时生效。
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) {
// 如果是办公用品库
@ -1812,8 +1849,7 @@ public class QyWxOperationService {
approval_template_approver_ZHBHeader.setUserid(ZHBQyWxId);
approval_template_approver_list.add(approval_template_approver_ZHBHeader);
}
else {
} else {
// 如果不是办公用品库
@ -1831,11 +1867,7 @@ public class QyWxOperationService {
otherDepartmentIdList = qyWxLabelUserList;
}
}
}
else {
} else {
// 如果不是中心仓下的仓库
if (Integer.compare(2, flagForOpenDepository) == 0) {
// 如果该仓库是通过开放仓库获取到的
@ -1867,7 +1899,7 @@ public class QyWxOperationService {
}
if (!flag) {
if (flag == 21) {
for (Long mtId : materialTypeIdList
) {
// 获取当前管理员的企业微信userId
@ -3425,6 +3457,7 @@ public class QyWxOperationService {
/**
* 用于获取当前仓库的最顶级仓库
*
* @param depository 仓库
* @param depositoryList 所有仓库
* @return

Loading…
Cancel
Save