Browse Source

修改出库审批提交时中心仓分配方式

lwx_dev
erdanergou 3 years ago
parent
commit
646c5b8361
  1. 93
      src/main/java/com/dreamchaser/depository_manage/service/impl/QyWxOperationService.java

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

@ -1543,21 +1543,31 @@ public class QyWxOperationService {
// 定义仓库Id列表 // 定义仓库Id列表
List<Integer> depositoryIdList = new ArrayList<>(); List<Integer> depositoryIdList = new ArrayList<>();
List<Long> materialTypeIdList = new ArrayList<>();
for (ApplicationOutRecordMin recordMin : minRecordList) { for (ApplicationOutRecordMin recordMin : minRecordList) {
// 获取明细信息 // 获取明细信息
// 获取当前出库物料 // 获取当前出库物料
Inventory materialById = materialMapper.findInventoryById(recordMin.getMid()); Inventory materialById = materialMapper.findInventoryById(recordMin.getMid());
// 获取当前物料所在仓库 // 获取当前物料所在仓库
Integer depositoryId = recordMin.getDepositoryId(); Integer depositoryId = recordMin.getDepositoryId();
Depository depositoryById = depositoryMapper.findDepositoryById(depositoryId); Depository depositoryById = depositoryMapper.findDepositoryById(depositoryId);
if (!depositoryById.getDname().contains("前置仓")) {
// 如果不是前置仓下的仓库
flag = false;
}
if (!depositoryIdList.contains(depositoryId)) { if (!depositoryIdList.contains(depositoryId)) {
// 如果当前仓库列表中不存在该仓库id // 如果当前仓库列表中不存在该仓库id
depositoryIdList.add(depositoryId); depositoryIdList.add(depositoryId);
} }
Long materialTypeId = materialById.getMaterialTypeId();
if(!materialTypeIdList.contains(materialTypeId)){
materialTypeIdList.add(materialTypeId);
}
Map<String, Object> detail_list = new HashMap<>(); Map<String, Object> detail_list = new HashMap<>();
// 定义明细种的控件列表 // 定义明细种的控件列表
@ -1658,11 +1668,6 @@ public class QyWxOperationService {
depositoryById = findParentDepository(depositoryById, depositoryAll); depositoryById = findParentDepository(depositoryById, depositoryAll);
} }
if (!depositoryById.getDname().contains("前置仓")) {
// 如果不是前置仓下的仓库
flag = false;
}
// 物料规格型号 // 物料规格型号
Map<String, Object> detail_list_control_info_version = new HashMap<>(); Map<String, Object> detail_list_control_info_version = new HashMap<>();
@ -1751,6 +1756,7 @@ public class QyWxOperationService {
if (!flag) { if (!flag) {
// 如果是中心仓下的仓库 // 如果是中心仓下的仓库
// 获取仓储中心负责人标签的用户userId // 获取仓储中心负责人标签的用户userId
List<String> qyWxLabelUserList = QyWxConfig.getQyWxLabelUserList(userAgent); List<String> qyWxLabelUserList = QyWxConfig.getQyWxLabelUserList(userAgent);
// 用于设置仓储中心负责人流程 // 用于设置仓储中心负责人流程
@ -1760,6 +1766,9 @@ public class QyWxOperationService {
approval_template_approver_list.add(approval_template_approver_Label); approval_template_approver_list.add(approval_template_approver_Label);
} else { } else {
// 如果不是中心仓下的仓库 // 如果不是中心仓下的仓库
if (Integer.compare(2, flagForOpenDepository) == 0) { if (Integer.compare(2, flagForOpenDepository) == 0) {
@ -1792,35 +1801,65 @@ public class QyWxOperationService {
} }
for (Integer depositoryId : depositoryIdList if(!flag){
for (Long mtId:materialTypeIdList
) {
// 获取当前仓库的管理员列表
List<Integer> userIdByDid = roleMapper.findUserIdByMtId(mtId);
// 获取当前管理员的企业微信userId
List<String> qywxUserIdList = new ArrayList<>();
for (Integer userId : userIdByDid
) {
// 获取对应管理员信息
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);
// 获取当前仓库的管理员列表
List<Integer> userIdByDid = roleMapper.findUserIdByDid(depositoryId);
// 获取当前管理员的企业微信userId
List<String> qywxUserIdList = new ArrayList<>();
for (Integer userId : userIdByDid
) {
// 获取对应管理员信息
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) { }
// 用于设置仓库管理员流程 else{
Approval_template_approver approval_template_approver_depository_manager = new Approval_template_approver(); for (Integer depositoryId : depositoryIdList
approval_template_approver_depository_manager.setAttr(1);
approval_template_approver_depository_manager.setUserid(qywxUserIdList);
approval_template_approver_list.add(approval_template_approver_depository_manager); ) {
} // 获取当前仓库的管理员列表
List<Integer> userIdByDid = roleMapper.findUserIdByDid(depositoryId);
// 获取当前管理员的企业微信userId
List<String> qywxUserIdList = new ArrayList<>();
for (Integer userId : userIdByDid
) {
// 获取对应管理员信息
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);
}
}
} }
// 设置审批流程 // 设置审批流程
approvalTemplate.setApprover(approval_template_approver_list); approvalTemplate.setApprover(approval_template_approver_list);

Loading…
Cancel
Save