diff --git a/src/main/java/com/dreamchaser/depository_manage/config/PublicConfig.java b/src/main/java/com/dreamchaser/depository_manage/config/PublicConfig.java index bca0a80a..b47d7aea 100644 --- a/src/main/java/com/dreamchaser/depository_manage/config/PublicConfig.java +++ b/src/main/java/com/dreamchaser/depository_manage/config/PublicConfig.java @@ -292,40 +292,6 @@ public class PublicConfig { return result; } - /** - * 获取恒信集团下的所有公司 - * - * @param - * @return - */ - public static List findAllCompany(String userKey, String userToken) { - String url = external_url + "/org/govlist"; - Map map = new HashMap<>(); - map.put("superior", "313"); - map.put("level", 3); - String jsonString = JSONObject.toJSONString(map); - JSONObject paramObject = JSONObject.parseObject(jsonString); - String post = null; - try { - post = HttpUtils.send(url, paramObject, HTTP.UTF_8, userKey, userToken); - } catch (IOException e) { - e.printStackTrace(); - } - JSONObject jsonObject = JSONObject.parseObject(post); - JSONObject data = (JSONObject) jsonObject.get("data"); - JSONArray list = (JSONArray) data.get("list"); - if (list == null) { - list = new JSONArray(); - } - Integer total = ObjectFormatUtil.toInteger(data.get("total")); - List administrationPList = new ArrayList<>(); - for (Object o : list) { - Administration administration = JSONObject.toJavaObject((JSONObject) o, Administration.class); - AdministrationP administrationP = new AdministrationP(administration); - administrationPList.add(administrationP); - } - return administrationPList; - } /** * 根据用户id查询对应用户 @@ -451,32 +417,6 @@ public class PublicConfig { return administrationPList; } - /** - * 根据岗位id查询对应的岗位信息 - * - * @param id 岗位id - * @param - * @return 查询结果 - */ - public static Post findPostById(Long id, String userKey, String userToken) { - String url = external_url + "/org/getpositioncont"; - Map map = new HashMap<>(); - map.put("id", id); - map.put("idstr", id.toString()); - String jsonString = JSONObject.toJSONString(map); - JSONObject paramObject = JSONObject.parseObject(jsonString); - String post = null; - try { - post = HttpUtils.send(url, paramObject, HTTP.UTF_8, userKey, userToken); - } catch (IOException e) { - e.printStackTrace(); - } - JSONObject jsonObject = JSONObject.parseObject(post); - JSONObject data = (JSONObject) jsonObject.get("data"); - Post object = JSONObject.toJavaObject(data, Post.class); - return object; - } - /** * 获取对应的验证码信息 * diff --git a/src/main/java/com/dreamchaser/depository_manage/controller/DepositoryController.java b/src/main/java/com/dreamchaser/depository_manage/controller/DepositoryController.java index b55b9f3f..409eb869 100644 --- a/src/main/java/com/dreamchaser/depository_manage/controller/DepositoryController.java +++ b/src/main/java/com/dreamchaser/depository_manage/controller/DepositoryController.java @@ -25,27 +25,32 @@ import java.util.concurrent.*; @RequestMapping("/repository") public class DepositoryController { @Autowired - DepositoryService depositoryService; + private DepositoryService depositoryService; @Autowired - DepositoryRecordService depositoryRecordService; + private DepositoryRecordService depositoryRecordService; @Autowired - MaterialTypeService materialTypeService; + private MaterialTypeService materialTypeService; @Autowired - MaterialService materialService; + private MaterialService materialService; @Autowired - RoleService roleService; + private RoleService roleService; @Autowired - StockTakingService stockTakingService; + private StockTakingService stockTakingService; @Autowired - PlaceService placeService; + private PlaceService placeService; + @Autowired + private AdministrativeService administrativeService; + + @Autowired + private UserService userService; /** * 获取当前仓库下的库存 @@ -79,7 +84,7 @@ public class DepositoryController { } List list = depositoryService.findDepositoryByCondition(map, userKey, token); for (Depository depository : list) { - Administration company = PublicConfig.getCompany(depository.getCid(), userKey, token); + Administration company = administrativeService.findAdministrationById(depository.getCid()); depository.setCname(company.getName()); } return new RestResponse(list, depositoryService.findCountByCondition(map), 200); @@ -106,24 +111,27 @@ public class DepositoryController { token = (String) request.getSession().getAttribute("userToken"); userKey = (String) request.getSession().getAttribute("userKey"); } - UserByPort userByPort = AuthenticationTokenPool.getUserToken(token); if ("".equals(map.get("parentId")) || map.get("parentId") == null) { map.put("parentId", 0); } List list = depositoryService.findDepositoryByCondition(map, userKey, token); // 获取所有行政单位 - Map administration = PublicConfig.findAdministration(userKey, token); - List administrationPList = ObjectFormatUtil.objToList(administration.get("administrationPList"), AdministrationP.class); - Integer total = (Integer) administration.get("total"); - for (int i = 0; i < list.size(); i++) { - for (int j = 0; j < administrationPList.size(); j++) { - if (list.get(i).getCid().compareTo(administrationPList.get(j).getId()) == 0) { - list.get(i).setCname(administrationPList.get(j).getName()); + Map paramForAdminitions = new HashMap<>(); + paramForAdminitions.put("superior", 313); + paramForAdminitions.put("state", 1); + paramForAdminitions.put("level", 3);; +// Map administration = PublicConfig.findAdministration(userKey, token); +// List administrationPList = ObjectFormatUtil.objToList(administration.get("administrationPList"), AdministrationP.class); + List administrationPList = administrativeService.findAdministrationPListByCondition(paramForAdminitions); + for (Depository depository : list) { + for (AdministrationP administrationP : administrationPList) { + if (depository.getCid().compareTo(administrationP.getId()) == 0) { + depository.setCname(administrationP.getName()); break; } } } - return new RestResponse(list, depositoryService.findCountByCondition(map), 200); + return new RestResponse(list, administrativeService.findAdministrationPCountByCondition(paramForAdminitions), 200); } @@ -1008,7 +1016,7 @@ public class DepositoryController { Long userId = roleAndDepository.getUserId(); if (classes == 1) { // 如果是对人设置的权限 - UserByPort userByPort = PublicConfig.FindUserById(userId, userKey, token); + UserByPort userByPort = userService.findUserByIdForNoPack(userId); // 获取用户的用工关系 int emptype = userByPort.getEmptype(); if (emptype > 10) { @@ -1021,7 +1029,7 @@ public class DepositoryController { // 定义用于获取当前岗位下的人的参数map Map paramForGetUserByPost = new HashMap<>(); paramForGetUserByPost.put("position", userId); - List userByPortList = PublicConfig.FindUserByMap(paramForGetUserByPost, userKey, token); + List userByPortList = userService.findUserByConditionForNoPack(paramForGetUserByPost); for (UserByPort userByPort : userByPortList) { // 获取用户的用工关系 int emptype = userByPort.getEmptype(); @@ -1814,13 +1822,12 @@ public class DepositoryController { Object obj = null; try { obj = completionService.take().get(); - } catch (InterruptedException e) { - e.printStackTrace(); - } catch (ExecutionException e) { + } catch (InterruptedException | ExecutionException e) { e.printStackTrace(); } result.add(obj); - sum += ObjectFormatUtil.toDouble(((Map) obj).get("value")); + Map stringObjectMap = ObjectFormatUtil.objToMap(obj, String.class, Object.class); + sum += ObjectFormatUtil.toDouble(stringObjectMap.get("value")); } // 关闭线程池 PublicConfig.closeThreadPool(exs); diff --git a/src/main/java/com/dreamchaser/depository_manage/controller/GroupController.java b/src/main/java/com/dreamchaser/depository_manage/controller/GroupController.java index 716c8a94..ad2d19ef 100644 --- a/src/main/java/com/dreamchaser/depository_manage/controller/GroupController.java +++ b/src/main/java/com/dreamchaser/depository_manage/controller/GroupController.java @@ -2,7 +2,6 @@ package com.dreamchaser.depository_manage.controller; import cn.hutool.core.lang.Snowflake; import com.alibaba.fastjson.JSONObject; -import com.dreamchaser.depository_manage.config.PublicConfig; import com.dreamchaser.depository_manage.entity.*; import com.dreamchaser.depository_manage.exception.MyException; import com.dreamchaser.depository_manage.pojo.GroupInfoP; @@ -49,6 +48,9 @@ public class GroupController { @Autowired private SplitUnitService splitUnitService; + @Autowired + private UserService userService; + /** * 用于添加一条组合记录 @@ -670,7 +672,7 @@ public class GroupController { map.put("applicantId", userToken.getId()); // 获取当前部门负责人 - List departmentHeadByUsers = PublicConfig.findDepartmentHeadByUser(userToken.getMaindeparment(), userkey, token); + List departmentHeadByUsers = userService.getDepartmentHeaderByIdForNoPack(userToken.getMaindeparment()); // 部门负责人id StringBuilder departmentHeadId = new StringBuilder(); // 部门负责人企业微信user @@ -830,7 +832,7 @@ public class GroupController { String crypt = Md5.crypt(header); map.put("applicantId", userToken.getId()); // 获取当前部门负责人 - List departmentHeadByUsers = PublicConfig.findDepartmentHeadByUser(userToken.getMaindeparment(), userkey, token); + List departmentHeadByUsers = userService.getDepartmentHeaderByIdForNoPack(userToken.getMaindeparment()); // 部门负责人id StringBuilder departmentHeadId = new StringBuilder(); // 部门负责人企业微信user diff --git a/src/main/java/com/dreamchaser/depository_manage/controller/QyWxOperationController.java b/src/main/java/com/dreamchaser/depository_manage/controller/QyWxOperationController.java index ee9bbea4..530de07e 100644 --- a/src/main/java/com/dreamchaser/depository_manage/controller/QyWxOperationController.java +++ b/src/main/java/com/dreamchaser/depository_manage/controller/QyWxOperationController.java @@ -170,8 +170,9 @@ public class QyWxOperationController { return; } // 根据userId获取处理人 - Map portInfo = PublicConfig.findUserByQyWxUserId(fromUserName); - UserByPort userByPort = (UserByPort) portInfo.get("user"); +// Map portInfo = PublicConfig.findUserByQyWxUserId(fromUserName); +// UserByPort userByPort = (UserByPort) portInfo.get("user"); + UserByPort userByPort = userService.findUserByWorkWechat(fromUserName); // 获取点击的按钮 String clickKey = templateCard.getEventKey().split("_")[1]; diff --git a/src/main/java/com/dreamchaser/depository_manage/controller/StockTakingController.java b/src/main/java/com/dreamchaser/depository_manage/controller/StockTakingController.java index 6dd73ece..62bcf731 100644 --- a/src/main/java/com/dreamchaser/depository_manage/controller/StockTakingController.java +++ b/src/main/java/com/dreamchaser/depository_manage/controller/StockTakingController.java @@ -2,7 +2,6 @@ package com.dreamchaser.depository_manage.controller; import com.alibaba.fastjson.JSONObject; -import com.dreamchaser.depository_manage.config.PublicConfig; import com.dreamchaser.depository_manage.entity.MaterialAndPlace; import com.dreamchaser.depository_manage.entity.Place; import com.dreamchaser.depository_manage.entity.UserByPort; @@ -12,10 +11,7 @@ import com.dreamchaser.depository_manage.pojo.StatusInfo; import com.dreamchaser.depository_manage.security.pool.AuthenticationTokenPool; import com.dreamchaser.depository_manage.security.pool.RedisPool; import com.dreamchaser.depository_manage.security.pool.SendQyWxMessageThreadPool; -import com.dreamchaser.depository_manage.service.MaterialService; -import com.dreamchaser.depository_manage.service.MaterialTypeService; -import com.dreamchaser.depository_manage.service.PlaceService; -import com.dreamchaser.depository_manage.service.StockTakingService; +import com.dreamchaser.depository_manage.service.*; import com.dreamchaser.depository_manage.service.impl.QyWxOperationService; import com.dreamchaser.depository_manage.utils.CrudUtil; import com.dreamchaser.depository_manage.utils.DateUtil; @@ -52,6 +48,9 @@ public class StockTakingController { @Autowired private RedisPool redisPool; + @Autowired + private UserService userService; + // 用于添加盘点记录 @PostMapping("/addStockTakingRecord") public RestResponse addStockTakingRecord(@RequestBody Map map, HttpServletRequest request) { @@ -77,7 +76,7 @@ public class StockTakingController { if ("".equals(s)) { continue; } - UserByPort departmentManager = PublicConfig.findUserByPortByNumber(s); + UserByPort departmentManager = userService.findUserByNumberForNoPack(s); int emptype = departmentManager.getEmptype(); if (emptype > 10) { continue; @@ -453,7 +452,7 @@ public class StockTakingController { if ("".equals(s)) { continue; } - UserByPort departmentManager = PublicConfig.findUserByPortByNumber(s); + UserByPort departmentManager = userService.findUserByNumberForNoPack(s); int emptype = departmentManager.getEmptype(); if (emptype > 10) { continue; diff --git a/src/main/java/com/dreamchaser/depository_manage/service/impl/DepositoryRecordServiceImpl.java b/src/main/java/com/dreamchaser/depository_manage/service/impl/DepositoryRecordServiceImpl.java index fe99d2c4..33391157 100644 --- a/src/main/java/com/dreamchaser/depository_manage/service/impl/DepositoryRecordServiceImpl.java +++ b/src/main/java/com/dreamchaser/depository_manage/service/impl/DepositoryRecordServiceImpl.java @@ -17,10 +17,7 @@ import com.dreamchaser.depository_manage.pojo.callBackXml.callBackXml_button_tem import com.dreamchaser.depository_manage.security.pool.HandlesOtherFunctionalThreadPool; import com.dreamchaser.depository_manage.security.pool.RedisPool; import com.dreamchaser.depository_manage.security.pool.SendQyWxMessageThreadPool; -import com.dreamchaser.depository_manage.service.AdministrativeService; -import com.dreamchaser.depository_manage.service.DepositoryRecordService; -import com.dreamchaser.depository_manage.service.RoleService; -import com.dreamchaser.depository_manage.service.SplitUnitService; +import com.dreamchaser.depository_manage.service.*; import com.dreamchaser.depository_manage.utils.*; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; @@ -75,9 +72,9 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { @Autowired private GroupMapper groupMapper; - + @Autowired - private UserMapper userMapper; + private UserService userService; @Autowired private AdministrativeService administrativeService; @@ -277,7 +274,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { Depository depositoryRecordById = depositoryMapper.findDepositoryById(materialById.getDepositoryId()); dname = depositoryRecordById.getDname(); } - Administration company = PublicConfig.getCompany(userToken.getMaindeparment(), userKey, token); + Administration company = administrativeService.findAdministrationById(userToken.getMaindeparment()); String code = createCode(dname, "outOrderNumber", "out", company.getName()); map.put("code", code); map.put("pass", 3); @@ -759,7 +756,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { // 定义用于获取当前岗位下的人的参数map Map paramForGetUserByPost = new HashMap<>(); paramForGetUserByPost.put("position", roleAndDepository.getUserId()); - List userByPortList = PublicConfig.FindUserByMap(paramForGetUserByPost, null, null); + List userByPortList = userService.findUserByConditionForNoPack(paramForGetUserByPost); for (UserByPort userByPort : userByPortList) { int emptype = userByPort.getEmptype(); if (emptype > 10) { @@ -798,7 +795,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { // 定义用于获取当前岗位下的人的参数map Map paramForGetUserByPost = new HashMap<>(); paramForGetUserByPost.put("position", uid); - List userByPortList = PublicConfig.FindUserByMap(paramForGetUserByPost, null, null); + List userByPortList = userService.findUserByConditionForNoPack(paramForGetUserByPost); for (UserByPort userByPort : userByPortList) { int emptype = userByPort.getEmptype(); if (emptype > 10) { @@ -1926,7 +1923,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { // 强行完成出库 // 获取当前出库人员 - UserByPort userByPort = userMapper.findUserById(outRecordMin.getCheckId()); + UserByPort userByPort = userService.findUserByIdForNoPack(outRecordMin.getCheckId()); outRecord.setPass(1); updateApplicationMinOutInfo(id, outRecordMin, outRecord, (double) (quantity), userByPort, placeById.getId(), userAgent, userKey, token); @@ -1945,7 +1942,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { for (RoleAndMaterialType mt : materialTypeIdForIn ) { // 获取管理员数据 - UserByPort userByPort = userMapper.findUserById(mt.getUid()); + UserByPort userByPort = userService.findUserByIdForNoPack(mt.getUid()); // 获取用户的用工关系 int emptype = userByPort.getEmptype(); if (emptype > 10) { @@ -1963,7 +1960,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { for (RoleAndDepository mt : materialTypeIdForIn ) { // 获取管理员数据 - UserByPort userByPort = userMapper.findUserById(mt.getUserId()); + UserByPort userByPort = userService.findUserByIdForNoPack(mt.getUserId()); // 获取用户的用工关系 int emptype = userByPort.getEmptype(); if (emptype > 10) { @@ -2309,7 +2306,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { // 获取主订单单号 StringBuilder code = new StringBuilder(record.getCode()); // 获取申请用户信息 - UserByPort applicantUser = userMapper.findUserById(record.getApplicantId()); + UserByPort applicantUser = userService.findUserByIdForNoPack(record.getApplicantId()); // 获取申请用户行政组织 Administration company = PublicConfig.getCompany(applicantUser.getMaindeparment(), userKey, token); // 获取部门名称简写 @@ -2372,7 +2369,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { continue; } Long uid = ObjectFormatUtil.toLong(s); - UserByPort depositoryManager = userMapper.findUserById(uid); + UserByPort depositoryManager = userService.findUserByIdForNoPack(uid); // 获取用户的用工关系 int emptype = depositoryManager.getEmptype(); if (emptype > 10) { @@ -2545,7 +2542,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { Map paramForGetUserByPost = new HashMap<>(); paramForGetUserByPost.put("position", roleAndMaterialType.getUid()); // 获取当前岗位对应的人员 - List userByPortList = PublicConfig.FindUserByMap(paramForGetUserByPost, userKey, token); + List userByPortList = userService.findUserByConditionForNoPack(paramForGetUserByPost); for (UserByPort userByPort1 : userByPortList) { int emptype = userByPort1.getEmptype(); if (emptype > 10) { @@ -2568,7 +2565,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { // 将没有插入的用户进行插入 for (Long integer : userIdByMtId) { // 获取仓库管理员信息 - UserByPort manager = userMapper.findUserById(integer); + UserByPort manager = userService.findUserByIdForNoPack(integer); // 获取用户的用工关系 int emptype = userByPort.getEmptype(); if (emptype > 10) { @@ -2628,7 +2625,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { // 定义用于获取当前岗位下的人的参数map Map paramForGetUserByPost = new HashMap<>(); paramForGetUserByPost.put("position", roleAndDepository.getUserId()); - List userByPortList = PublicConfig.FindUserByMap(paramForGetUserByPost, userKey, token); + List userByPortList = userService.findUserByConditionForNoPack(paramForGetUserByPost); for (UserByPort userByPort1 : userByPortList) { int emptype = userByPort1.getEmptype(); if (emptype > 10) { @@ -2653,7 +2650,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { // 修改redis中用户的数据 updateRedisDataForUserManager(integer, minRecordKey); // 获取仓库管理员信息 - UserByPort manager = userMapper.findUserById(integer); + UserByPort manager = userService.findUserByIdForNoPack(integer); // 获取用户的用工关系 int emptype = manager.getEmptype(); if (emptype > 10) { @@ -2779,7 +2776,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { Depository depositoryById = depositoryMapper.findDepositoryById(recordP.getDepositoryId()); // 获取当前仓库所属的部门 String adminorg = depositoryById.getAdminorg(); - List departmentHeadByUser = PublicConfig.findDepartmentHeadByUser(ObjectFormatUtil.toLong(adminorg), null, null); + List departmentHeadByUser = userService.getDepartmentHeaderByIdForNoPack(ObjectFormatUtil.toLong(adminorg)); for (UserByPort departmentHead : departmentHeadByUser ) { depositoryManager.append(departmentHead.getId()).append(","); @@ -2788,8 +2785,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { // 获取仓储中心负责人标签的用户userId List qyWxLabelUserList = QyWxConfig.getQyWxLabelUserListForLabelName(userAgent, "仓储中心负责人"); for (String s : qyWxLabelUserList) { - Map userByQyWxUserId = PublicConfig.findUserByQyWxUserId(s); - UserByPort user = (UserByPort) userByQyWxUserId.get("user"); + UserByPort user = userService.findUserByWorkWechat(s); depositoryManager.append(user.getId()).append(","); } } @@ -2805,8 +2801,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { // 如果是第一个节点 List qyWxLabelUserList = QyWxConfig.getQyWxLabelUserListForLabelName(userAgent, "平衡岗"); for (String s : qyWxLabelUserList) { - Map userByQyWxUserId = PublicConfig.findUserByQyWxUserId(s); - UserByPort user = (UserByPort) userByQyWxUserId.get("user"); + UserByPort user = userService.findUserByWorkWechat(s); balancePoster.append(user.getId()).append(","); } map.put("departmentheadPass", 1); @@ -2824,7 +2819,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { map.put("balancePosterTime", DateUtil.DateTimeToTimeStamp(simpleTime)); map.put("balancePoster", userByPort.getId()); // 获取综合办负责人 - List departmentHeadByUser = PublicConfig.findDepartmentHeadByUser(268L, userKey, token); + List departmentHeadByUser = userService.getDepartmentHeaderByIdForNoPack(268L ); StringBuilder departmentId = new StringBuilder(); for (UserByPort byPort : departmentHeadByUser) { departmentId.append(byPort.getId()).append(","); @@ -2921,8 +2916,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { // 获取审批人userId String userId = approver.getUserId(); // 获取审批人 - Map portInfo = PublicConfig.findUserByQyWxUserId(userId); - UserByPort userByPort = (UserByPort) portInfo.get("user"); + UserByPort userByPort = userService.findUserByWorkWechat(userId); Map map = new HashMap<>(); map.put("approverId", userByPort.getId()); map.put("approverTime", System.currentTimeMillis()); @@ -3102,7 +3096,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { map.put("transferId", transferId); // 获取当前转移物料仓库 Depository depositoryRecordById = depositoryMapper.findDepositoryById(material.getDepositoryId()); - Administration company = PublicConfig.getCompany(userByPort.getMaindeparment(), userKey, token); + Administration company = administrativeService.findAdministrationById(userByPort.getMaindeparment()); // 生成出库订单 map.put("code", createCode(depositoryRecordById.getDname(), "outOrderNumber", "out", company.getName())); Object placeId = map.get("fromPlaceId"); @@ -3192,7 +3186,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { List minByParent = depositoryRecordMapper.findApplicationOutRecordMinByParent(record.getId()); // 获取申请用户 - UserByPort applicantUser = userMapper.findUserById(record.getApplicantId()); + UserByPort applicantUser = userService.findUserByIdForNoPack(record.getApplicantId()); // 用于标志该仓库是否为前置仓下的仓库 boolean flagForHasOtherDepository = true; //默认是前置仓下的仓库 // 获取当前出库是否为开放出库 @@ -3278,7 +3272,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { // 获取当前仓库所属的部门 String adminorg = depositoryById.getAdminorg(); - List departmentHeadByUser = PublicConfig.findDepartmentHeadByUser(ObjectFormatUtil.toLong(adminorg), null, null); + List departmentHeadByUser = userService.getDepartmentHeaderByIdForNoPack(ObjectFormatUtil.toLong(adminorg)); for (UserByPort departmentHead : departmentHeadByUser ) { depositoryManager.append(departmentHead.getId()).append(","); @@ -3293,7 +3287,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { // 获取仓储中心负责人 - List departmentHeadByUser = PublicConfig.findDepartmentHeadByUser(361L, userKey, token); + List departmentHeadByUser = userService.getDepartmentHeaderByIdForNoPack(361L); for (UserByPort userByPort : departmentHeadByUser) { depositoryManager.append(userByPort.getId()).append(","); @@ -3312,8 +3306,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { // 如果是第一个节点 List qyWxLabelUserList = QyWxConfig.getQyWxLabelUserListForLabelName(userAgent, "平衡岗"); for (String s : qyWxLabelUserList) { - Map userByQyWxUserId = PublicConfig.findUserByQyWxUserId(s); - UserByPort user = (UserByPort) userByQyWxUserId.get("user"); + UserByPort user = userService.findUserByWorkWechat(s); String workwechat = user.getWorkwechat(); if (workwechat == null || "".equals(workwechat)) { workwechat = user.getWechat(); @@ -3343,7 +3336,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { if ("".equals(depositorymanager)) { continue; } - UserByPort depositoryManage = userMapper.findUserById(ObjectFormatUtil.toLong(depositorymanager)); + UserByPort depositoryManage = userService.findUserByIdForNoPack(ObjectFormatUtil.toLong(depositorymanager)); // 获取用户的用工关系 int emptype = depositoryManage.getEmptype(); if (emptype > 10) { @@ -3360,7 +3353,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { SendQyWxMessageThreadPool.execute(() -> { - JSONObject jsonObject = qyWxOperationService.sendQyWxToApplicationOutMessage(QyWxUid.toString(), ObjectFormatUtil.toLong(id), false, userAgent, userKey, token); + JSONObject jsonObject = qyWxOperationService.sendQyWxToApplicationOutMessage(QyWxUid.toString(), ObjectFormatUtil.toLong(id), false, userAgent); // 将当前返回结果保存到redis中 Map QyWxMessageMap = new HashMap<>(); QyWxMessageMap.put("MsgId", jsonObject.getString("msgid")); @@ -3402,7 +3395,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { if ("".equals(s)) { continue; } - UserByPort userByPort = userMapper.findUserById(ObjectFormatUtil.toLong(s)); + UserByPort userByPort = userService.findUserByIdForNoPack(ObjectFormatUtil.toLong(s)); // 获取用户的用工关系 int emptype = userByPort.getEmptype(); if (emptype > 10) { @@ -3438,7 +3431,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { // 获取综合办负责人 - List departmentHeadByUser = PublicConfig.findDepartmentHeadByUser(268L, userKey, token); + List departmentHeadByUser = userService.getDepartmentHeaderByIdForNoPack(268L); for (UserByPort userByPort : departmentHeadByUser) { depositoryManager.append(userByPort.getId()).append(","); @@ -3463,7 +3456,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { if ("".equals(depositorymanager)) { continue; } - UserByPort depositoryManage = userMapper.findUserById(ObjectFormatUtil.toLong(depositorymanager)); + UserByPort depositoryManage = userService.findUserByIdForNoPack(ObjectFormatUtil.toLong(depositorymanager)); // 获取用户的用工关系 int emptype = depositoryManage.getEmptype(); if (emptype > 10) { @@ -3480,7 +3473,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { SendQyWxMessageThreadPool.execute(() -> { - JSONObject jsonObject = qyWxOperationService.sendQyWxToApplicationOutMessage(QyWxUid.toString(), ObjectFormatUtil.toLong(id), false, userAgent, userKey, token); + JSONObject jsonObject = qyWxOperationService.sendQyWxToApplicationOutMessage(QyWxUid.toString(), ObjectFormatUtil.toLong(id), false, userAgent); // 将当前返回结果保存到redis中 Map QyWxMessageMap = new HashMap<>(); QyWxMessageMap.put("MsgId", jsonObject.getString("msgid")); @@ -3522,7 +3515,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { if ("".equals(s)) { continue; } - UserByPort userByPort = userMapper.findUserById(ObjectFormatUtil.toLong(s)); + UserByPort userByPort = userService.findUserByIdForNoPack(ObjectFormatUtil.toLong(s)); // 获取用户的用工关系 int emptype = userByPort.getEmptype(); if (emptype > 10) { @@ -3641,7 +3634,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { // 定义用于获取当前岗位下的人的参数map Map paramForGetUserByPost = new HashMap<>(); paramForGetUserByPost.put("position", roleAndMaterialType.getUid()); - List userByPortList = PublicConfig.FindUserByMap(paramForGetUserByPost, userKey, token); + List userByPortList = userService.findUserByConditionForNoPack(paramForGetUserByPost); for (UserByPort userByPort : userByPortList) { int emptype = userByPort.getEmptype(); if (emptype > 10) { @@ -3664,7 +3657,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { for (Long integer : userIdByDid) { // 获取仓库管理员信息 - UserByPort manager = userMapper.findUserById(integer); + UserByPort manager = userService.findUserByIdForNoPack(integer); // 获取用户的用工关系 int emptype = manager.getEmptype(); if (emptype > 10) { @@ -3728,7 +3721,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { // 定义用于获取当前岗位下的人的参数map Map paramForGetUserByPost = new HashMap<>(); paramForGetUserByPost.put("position", roleAndDepository.getUserId()); - List userByPortList = PublicConfig.FindUserByMap(paramForGetUserByPost, userKey, token); + List userByPortList = userService.findUserByConditionForNoPack(paramForGetUserByPost); for (UserByPort userByPort : userByPortList) { int emptype = userByPort.getEmptype(); if (emptype > 10) { @@ -3753,7 +3746,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { // 修改redis中用户的数据 updateRedisDataForUserManager(integer, minRecordKey); // 获取仓库管理员信息 - UserByPort manager = userMapper.findUserById(integer); + UserByPort manager = userService.findUserByIdForNoPack(integer); // 获取用户的用工关系 int emptype = manager.getEmptype(); if (emptype > 10) { @@ -3791,7 +3784,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { if ("".equals(s)) { continue; } - UserByPort userByPort = userMapper.findUserById(ObjectFormatUtil.toLong(s)); + UserByPort userByPort = userService.findUserByIdForNoPack(ObjectFormatUtil.toLong(s)); // 获取用户的用工关系 int emptype = userByPort.getEmptype(); if (emptype > 10) { @@ -3838,7 +3831,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { SendQyWxMessageThreadPool.execute(() -> { // 获取responseCode(key为申请人number) //获取部门负责人信息 - UserByPort departHead = userMapper.findUserById(ObjectFormatUtil.toLong(record.getDepartmenthead())); + UserByPort departHead = userService.findUserByIdForNoPack(ObjectFormatUtil.toLong(record.getDepartmenthead())); // 获取用户的用工关系 int emptype = departHead.getEmptype(); if (emptype <= 10) { @@ -4010,7 +4003,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { String depositoryManagerString = recordP.getDepositoryManager(); if (depositoryManagerString == null) { // 获取仓储中心负责人 - List departmentHeadByUser = PublicConfig.findDepartmentHeadByUser(361L, null, null); + List departmentHeadByUser = userService.getDepartmentHeaderByIdForNoPack(361L); StringBuilder depositoryManager = new StringBuilder(); // for (UserByPort byPort : departmentHeadByUser) { // int emptype = byPort.getEmptype(); @@ -4033,7 +4026,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { if ("".equals(s)) { continue; } - UserByPort userById = userMapper.findUserById(ObjectFormatUtil.toLong(s)); + UserByPort userById = userService.findUserByIdForNoPack(ObjectFormatUtil.toLong(s)); // 获取用户的用工关系 int emptype = userById.getEmptype(); if (emptype > 10) { @@ -4049,7 +4042,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { } // 向仓储中心负责人发送新的消息 - JSONObject jsonObject = qyWxOperationService.sendQyWxToApplicationOutMessage(QyWxUid.toString(), ObjectFormatUtil.toLong(outId), false, userAgent, userKey, token); + JSONObject jsonObject = qyWxOperationService.sendQyWxToApplicationOutMessage(QyWxUid.toString(), ObjectFormatUtil.toLong(outId), false, userAgent); // 将当前返回结果保存到redis中 Map QyWxMessageMap = new HashMap<>(); QyWxMessageMap.put("MsgId", jsonObject.getString("msgid")); @@ -4156,7 +4149,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { // 定义用于获取当前岗位下的人的参数map Map paramForGetUserByPost = new HashMap<>(); paramForGetUserByPost.put("position", roleAndMaterialType.getUid()); - List userByPortList = PublicConfig.FindUserByMap(paramForGetUserByPost, userKey, token); + List userByPortList = userService.findUserByConditionForNoPack(paramForGetUserByPost); for (UserByPort userByPort1 : userByPortList) { int emptype = userByPort1.getEmptype(); if (emptype > 10) { @@ -4179,7 +4172,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { for (Long integer : userIdByDid) { // 获取仓库管理员信息 - UserByPort manager = userMapper.findUserById(integer); + UserByPort manager = userService.findUserByIdForNoPack(integer); // 获取用户的用工关系 int emptype = manager.getEmptype(); if (emptype > 10) { @@ -4242,7 +4235,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { // 定义用于获取当前岗位下的人的参数map Map paramForGetUserByPost = new HashMap<>(); paramForGetUserByPost.put("position", roleAndDepository.getUserId()); - List userByPortList = PublicConfig.FindUserByMap(paramForGetUserByPost, userKey, token); + List userByPortList = userService.findUserByConditionForNoPack(paramForGetUserByPost); for (UserByPort userByPort1 : userByPortList) { int emptype = userByPort1.getEmptype(); if (emptype > 10) { @@ -4267,7 +4260,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { // 修改redis中用户的数据 updateRedisDataForUserManager(integer, minRecordKey); // 获取仓库管理员信息 - UserByPort manager = userMapper.findUserById(integer); + UserByPort manager = userService.findUserByIdForNoPack(integer); // 获取用户的用工关系 int emptype = manager.getEmptype(); if (emptype > 10) { @@ -4787,7 +4780,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { if (userByPortMap.containsKey(applicantId)) { userByPortById = userByPortMap.get(applicantId); } else { - userByPortById = userMapper.findUserById(applicantId); + userByPortById = userService.findUserByIdForNoPack(applicantId); Administration departmentByUser = administrativeService.getDepartmentByUser(userByPortById); userByPortById.setMaindeparmentname(departmentByUser.getName()); userByPortMap.put(applicantId, userByPortById); @@ -4852,7 +4845,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { if (userByPortMap.containsKey(applicantId)) { userByPortById = userByPortMap.get(applicantId); } else { - userByPortById = userMapper.findUserById(applicantId); + userByPortById = userService.findUserByIdForNoPack(applicantId); Administration departmentByUser = administrativeService.getDepartmentByUser(userByPortById); userByPortById.setMaindeparmentname(departmentByUser.getName()); userByPortMap.put(applicantId, userByPortById); @@ -4966,7 +4959,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { userByPortById = userByPortMap.get(applicantId); } else { - userByPortById = userMapper.findUserById(applicantId); + userByPortById = userService.findUserByIdForNoPack(applicantId); Administration departmentByUser = administrativeService.getDepartmentByUser(userByPortById); userByPortById.setMaindeparmentname(departmentByUser.getName()); userByPortMap.put(applicantId, userByPortById); @@ -4990,7 +4983,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { if (userByPortMap.containsKey(departmentheadId)) { departmenthead = userByPortMap.get(departmentheadId); } else { - departmenthead = userMapper.findUserById(departmentheadId); + departmenthead = userService.findUserByIdForNoPack(departmentheadId); Administration departmentByUser = administrativeService.getDepartmentByUser(departmenthead); departmenthead.setMaindeparmentname(departmentByUser.getName()); userByPortMap.put(departmentheadId, departmenthead); @@ -5122,7 +5115,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { userByPortById = userByPortMap.get(applicantId); } else { - userByPortById = userMapper.findUserById(applicantId); + userByPortById = userService.findUserByIdForNoPack(applicantId); Administration departmentByUser = administrativeService.getDepartmentByUser(userByPortById); userByPortById.setMaindeparmentname(departmentByUser.getName()); userByPortMap.put(applicantId, userByPortById); @@ -5146,7 +5139,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { if (userByPortMap.containsKey(departmentheadId)) { departmenthead = userByPortMap.get(departmentheadId); } else { - departmenthead = userMapper.findUserById(departmentheadId); + departmenthead = userService.findUserByIdForNoPack(departmentheadId); Administration departmentByUser = administrativeService.getDepartmentByUser(departmenthead); departmenthead.setMaindeparmentname(departmentByUser.getName()); userByPortMap.put(departmentheadId, departmenthead); @@ -5810,7 +5803,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { List result = new ArrayList<>(list.size()); for (SimpleApplicationOutRecord record : list) { SimpleApplicationOutOrInRecordP d = new SimpleApplicationOutOrInRecordP(record); - UserByPort userByPort = userMapper.findUserById(record.getApplicantId()); + UserByPort userByPort = userService.findUserByIdForNoPack(record.getApplicantId()); d.setApplyRemark(d.getApplyRemark() == null ? "" : d.getApplyRemark()); d.setApplicantName(userByPort.getMaindeparmentname() + "_" + userByPort.getName()); @@ -5823,7 +5816,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService { List result = new ArrayList<>(list.size()); for (SimpleApplicationInRecord record : list) { SimpleApplicationOutOrInRecordP d = new SimpleApplicationOutOrInRecordP(record); - UserByPort userByPort = userMapper.findUserById(record.getApplicantId()); + UserByPort userByPort = userService.findUserByIdForNoPack(record.getApplicantId()); d.setApplyRemark(d.getApplyRemark() == null ? "" : d.getApplyRemark()); d.setApplicantName(userByPort.getMaindeparmentname() + "_" + userByPort.getName()); result.add(d); diff --git a/src/main/java/com/dreamchaser/depository_manage/service/impl/QyWxOperationService.java b/src/main/java/com/dreamchaser/depository_manage/service/impl/QyWxOperationService.java index 6437ec12..711012b0 100644 --- a/src/main/java/com/dreamchaser/depository_manage/service/impl/QyWxOperationService.java +++ b/src/main/java/com/dreamchaser/depository_manage/service/impl/QyWxOperationService.java @@ -10,8 +10,11 @@ import com.dreamchaser.depository_manage.config.QyWx_template_card.*; import com.dreamchaser.depository_manage.entity.*; import com.dreamchaser.depository_manage.exception.MyException; import com.dreamchaser.depository_manage.depository_mapper.*; +import com.dreamchaser.depository_manage.hrNew_mapper.AdministrativeMapper; +import com.dreamchaser.depository_manage.hrNew_mapper.UserMapper; import com.dreamchaser.depository_manage.pojo.RoleAndDepository; import com.dreamchaser.depository_manage.pojo.RoleAndMaterialType; +import com.dreamchaser.depository_manage.service.UserService; import com.dreamchaser.depository_manage.utils.DateUtil; import com.dreamchaser.depository_manage.utils.HttpUtils; import com.dreamchaser.depository_manage.utils.ObjectFormatUtil; @@ -28,28 +31,34 @@ public class QyWxOperationService { @Autowired - DepositoryRecordMapper depositoryRecordMapper; + private DepositoryRecordMapper depositoryRecordMapper; @Autowired - MaterialMapper materialMapper; + private MaterialMapper materialMapper; @Autowired - DepositoryMapper depositoryMapper; + private DepositoryMapper depositoryMapper; @Autowired - StockTakingMapper stockTakingMapper; + private StockTakingMapper stockTakingMapper; @Autowired - PlaceMapper placeMapper; + private PlaceMapper placeMapper; @Autowired - MaterialTypeMapper materialTypeMapper; + private MaterialTypeMapper materialTypeMapper; @Autowired - NoticeMapper noticeMapper; + private NoticeMapper noticeMapper; @Autowired - RoleMapper roleMapper; + private RoleMapper roleMapper; + + @Autowired + private UserService userService; + + @Autowired + private AdministrativeMapper administrativeMapper; /** @@ -60,14 +69,14 @@ public class QyWxOperationService { * @param flag 用于判断发送类型是部门负责人还是仓储负责人(true为部门,false为仓储) * @return */ - public JSONObject sendQyWxToApplicationOutMessage(String uid, Long outId, Boolean flag, String userAgent, String userKey, String token) { + public JSONObject sendQyWxToApplicationOutMessage(String uid, Long outId, Boolean flag, String userAgent) { // 获取将要发送申请的订单记录 ApplicationOutRecord applicationOutRecordPById = depositoryRecordMapper.findApplicationOutRecordPById(outId); // 申请人id Long applicantId = applicationOutRecordPById.getApplicantId(); // 申请人 - UserByPort applicant = PublicConfig.FindUserById(applicantId, userKey, token); + UserByPort applicant = userService.findUserByIdForNoPack(applicantId); // 获取所有子订单 List applicationOutRecordMinByParent = depositoryRecordMapper.findApplicationOutRecordMinByParent(outId); @@ -262,7 +271,7 @@ public class QyWxOperationService { // 申请人id Long getOriginator = mainRecord.getOriginator(); // 申请人 - UserByPort originator = PublicConfig.FindUserById(getOriginator, userKey, token); + UserByPort originator = userService.findUserByIdForNoPack(getOriginator); // 盘点物料名称 StringBuilder mname = new StringBuilder(); @@ -498,8 +507,6 @@ public class QyWxOperationService { // 申请人id Long getOriginator = mainRecord.getOriginator(); - // 申请人 - UserByPort originator = PublicConfig.FindUserById(getOriginator, userKey, token); // 盘点物料名称 StringBuilder mname = new StringBuilder(); @@ -728,7 +735,7 @@ public class QyWxOperationService { // 申请人id Long applicantId = recordP.getApplicantId(); // 申请人 - UserByPort applicant = PublicConfig.FindUserById(applicantId, userKey, token); + UserByPort applicant = userService.findUserByIdForNoPack(applicantId); // 获取所有子订单 List applicationOutRecordMinByParent = depositoryRecordMapper.findApplicationOutRecordMinByParent(outId); @@ -762,7 +769,7 @@ public class QyWxOperationService { // 获取仓库信息 Depository depositoryRecordById = depositoryMapper.findDepositoryById(recordMin.getDepositoryId()); // 获取处理人信息 - UserByPort userByPort = PublicConfig.FindUserById(recordMin.getCheckId(), userKey, token); + UserByPort userByPort = userService.findUserByIdForNoPack(recordMin.getCheckId()); // 获取对应出库单位 String unit = recordMin.getUnit(); @@ -811,7 +818,7 @@ public class QyWxOperationService { /** * 获取完成的订单 */ - List minIds = (List) map.get("minIds"); + List minIds = ObjectFormatUtil.objToList(map.get("minIds"),Long.class); MessageByMarkDown markDown = new MessageByMarkDown(); //设置消息接收者 @@ -833,7 +840,7 @@ public class QyWxOperationService { // 抄送内容 StringBuilder content = new StringBuilder("## `抄送信息:`%n"); // 获取发起人信息 - UserByPort originator = PublicConfig.FindUserById(mainRecord.getOriginator(), userKey, token); + UserByPort originator = userService.findUserByIdForNoPack(mainRecord.getOriginator()); // 设置content content.append(">### **").append(originator.getName()).append("的物料调账记录** %n时间:").append(DateUtil.TimeStampToDateTime(mainRecord.getCreateTime())).append(" %n"); @@ -943,7 +950,7 @@ public class QyWxOperationService { // 抄送内容 StringBuilder content = new StringBuilder("## `盘点发生错误:`%n"); // 获取发起人信息 - UserByPort originator = PublicConfig.FindUserById(mainRecord.getOriginator(), userKey, token); + UserByPort originator = userService.findUserByIdForNoPack(mainRecord.getOriginator()); // 设置content content.append(">### **" + originator.getName() + "的物料盘点记录** %n时间:" + DateUtil.TimeStampToDateTime(mainRecord.getCreateTime()) + " %n"); @@ -1041,7 +1048,7 @@ public class QyWxOperationService { // 抄送内容 StringBuilder content = new StringBuilder("## `抄送信息:`%n"); // 获取发起人信息 - UserByPort originator = PublicConfig.FindUserById(mainRecord.getOriginator(), userKey, token); + UserByPort originator = userService.findUserByIdForNoPack(mainRecord.getOriginator()); // 设置content content.append(">### **" + originator.getName() + "的物料转移记录** %n时间:" + DateUtil.TimeStampToDateTime(mainRecord.getCreateTime()) + " %n"); @@ -1152,7 +1159,7 @@ public class QyWxOperationService { // 申请人id Long applicantId = outRecordP.getApplicantId(); // 申请人 - UserByPort applicant = PublicConfig.FindUserById(applicantId, userKey, token); + UserByPort applicant = userService.findUserByIdForNoPack(applicantId); // 定义卡片模板 TemplateCard_text_notice text_notice = new TemplateCard_text_notice(); @@ -1416,7 +1423,7 @@ public class QyWxOperationService { if (flagForAgency == 1) { // 如果是代领 - applicantUser = PublicConfig.FindUserById(mainRecord.getApplicantId(), userKey, token); + applicantUser = userService.findUserById(mainRecord.getApplicantId()); } // 事先定义其他部门负责人列表 @@ -1454,10 +1461,11 @@ public class QyWxOperationService { List approval_template_approver_list = new ArrayList<>(); - // 获取当前登录用户部门与企业微信部门对照 - JSONObject userPortByQyWx = PublicConfig.getUserPortByQyWx(applicantUser.getMaindeparment()); - String portName = userPortByQyWx.getString("name"); - Integer portByQyWxInteger = userPortByQyWx.getInteger("wechatorganizationid"); + // 获取当前登录用户部门具体信息 + Administration administrationById = administrativeMapper.findAdministrationById(applicantUser.getMaindeparment()); + + String portName = administrationById.getName(); + Integer portByQyWxInteger = administrationById.getWechatorganizationid(); // 审批申请数据,可定义审批申请中各个控件的值,其中必填项必须有值,选填项可为空,数据结构同“获取审批申请详情”接口返回值中同名参数“apply_data” @@ -1789,7 +1797,7 @@ public class QyWxOperationService { // 如果是办公用品库或中心仓 - List departmentHeadForUserToken = PublicConfig.findDepartmentHeadByUser(applicantUser.getMaindeparment(), userKey, token); + List departmentHeadForUserToken = userService.getDepartmentHeaderByIdForNoPack(applicantUser.getMaindeparment()); for (UserByPort departmentHead : departmentHeadForUserToken ) { String departmentHeadWorkwechat = departmentHead.getWorkwechat(); @@ -1806,7 +1814,7 @@ public class QyWxOperationService { // 获取申请用户所在部门的设备员 List userByPortList = PublicConfig.findUserByAdminorgAndPosition(applicantUser.getMaindeparment(), "设备员", userKey, token); - List departmentHeadForUserToken = PublicConfig.findDepartmentHeadByUser(applicantUser.getMaindeparment(), userKey, token); + List departmentHeadForUserToken = userService.getDepartmentHeaderByIdForNoPack(applicantUser.getMaindeparment()); if (userByPortList.size() > 0) { // 如果有设备员 for (UserByPort userByPort : userByPortList) { @@ -1874,7 +1882,7 @@ public class QyWxOperationService { approval_template_approver_list.add(approval_template_approver_Label); // 获取综合办部门负责人 - List departmentHeadByUser = PublicConfig.findDepartmentHeadByUser(268L, userKey, token); + List departmentHeadByUser = userService.getDepartmentHeaderByIdForNoPack(268L); List ZHBQyWxId = new ArrayList<>(); for (UserByPort userByPort : departmentHeadByUser) { String QyWxId = userByPort.getWorkwechat(); @@ -1917,7 +1925,7 @@ public class QyWxOperationService { // 获取当前仓库所属的部门 String adminorg = depositoryById.getAdminorg(); - List departmentHeadByUser = PublicConfig.findDepartmentHeadByUser(ObjectFormatUtil.toLong(adminorg), userKey, token); + List departmentHeadByUser = userService.getDepartmentHeaderByIdForNoPack(ObjectFormatUtil.toLong(adminorg)); for (UserByPort departmentHead : departmentHeadByUser ) { String departmentHeadWorkwechat = departmentHead.getWorkwechat(); @@ -1955,7 +1963,7 @@ public class QyWxOperationService { Long userId = roleAndMaterialType.getUid(); if (classes == 1) { // 如果是对人设置的权限 - UserByPort userByPort = PublicConfig.FindUserById(userId, userKey, token); + UserByPort userByPort = userService.findUserByIdForNoPack(userId); // 获取用户的用工关系 int emptype = userByPort.getEmptype(); if (emptype > 10) { @@ -1972,10 +1980,10 @@ public class QyWxOperationService { // 定义用于获取当前岗位下的人的参数map Map paramForGetUserByPost = new HashMap<>(); paramForGetUserByPost.put("position", userId); - List userByPortList = PublicConfig.FindUserByMap(paramForGetUserByPost, userKey, token); + List userByPortList = userService.findUserByConditionForNoPack(paramForGetUserByPost); for (UserByPort userByPort : userByPortList) { int emptype = userByPort.getEmptype(); - if(emptype > 10){ + if (emptype > 10) { continue; } // 获取企业微信id或微信id @@ -2014,7 +2022,7 @@ public class QyWxOperationService { Long userId = roleAndDepository.getUserId(); if (classes == 1) { // 如果是对人设置的权限 - UserByPort userByPort = PublicConfig.FindUserById(userId, userKey, token); + UserByPort userByPort = userService.findUserByIdForNoPack(userId); // 获取用户的用工关系 int emptype = userByPort.getEmptype(); if (emptype > 10) { @@ -2031,10 +2039,10 @@ public class QyWxOperationService { // 定义用于获取当前岗位下的人的参数map Map paramForGetUserByPost = new HashMap<>(); paramForGetUserByPost.put("position", userId); - List userByPortList = PublicConfig.FindUserByMap(paramForGetUserByPost, userKey, token); + List userByPortList = userService.findUserByConditionForNoPack(paramForGetUserByPost); for (UserByPort userByPort : userByPortList) { int emptype = userByPort.getEmptype(); - if(emptype > 10){ + if (emptype > 10) { continue; } // 获取企业微信id或微信id @@ -2124,7 +2132,7 @@ public class QyWxOperationService { if ("".equals(department)) { continue; } - UserByPort departmentHead = PublicConfig.FindUserById(ObjectFormatUtil.toLong(department), userKey, token); + UserByPort departmentHead = userService.findUserByIdForNoPack(ObjectFormatUtil.toLong(department)); // 获取用户的用工关系 int emptype = departmentHead.getEmptype(); if (emptype > 10) { @@ -2139,9 +2147,9 @@ public class QyWxOperationService { // 获取当前登录用户部门与企业微信部门对照 - JSONObject userPortByQyWx = PublicConfig.getUserPortByQyWx(userToken.getMaindeparment()); - String portName = userPortByQyWx.getString("name"); - Integer portByQyWxInteger = userPortByQyWx.getInteger("wechatorganizationid"); + Administration administrationById = administrativeMapper.findAdministrationById(userToken.getMaindeparment()); + String portName = administrationById.getName(); + Integer portByQyWxInteger = administrationById.getWechatorganizationid(); // 用于设置部门负责人流程 Approval_template_approver approval_template_approver_departMentHeader = new Approval_template_approver(); @@ -2456,7 +2464,7 @@ public class QyWxOperationService { if ("".equals(depositorymanager)) { continue; } - UserByPort depositoryManage = PublicConfig.FindUserById(ObjectFormatUtil.toLong(depositorymanager), userKey, token); + UserByPort depositoryManage = userService.findUserByIdForNoPack(ObjectFormatUtil.toLong(depositorymanager)); // 获取用户的用工关系 int emptype = depositoryManage.getEmptype(); if (emptype > 10) { @@ -2499,10 +2507,10 @@ public class QyWxOperationService { // 定义用于获取当前岗位下的人的参数map Map paramForGetUserByPost = new HashMap<>(); paramForGetUserByPost.put("position", roleAndMaterialType.getUid()); - List userByPortList = PublicConfig.FindUserByMap(paramForGetUserByPost, userKey, token); + List userByPortList =userService.findUserByConditionForNoPack(paramForGetUserByPost); for (UserByPort userByPort : userByPortList) { int emptype = userByPort.getEmptype(); - if(emptype > 10){ + if (emptype > 10) { continue; } String userByPortWorkwechat = userByPort.getWorkwechat(); @@ -2517,7 +2525,7 @@ public class QyWxOperationService { for (Long userId : userIdByMtId ) { // 获取对应管理员信息 - UserByPort userByPort = PublicConfig.FindUserById(userId, userKey, token); + UserByPort userByPort = userService.findUserByIdForNoPack(userId); // 获取用户的用工关系 int emptype = userByPort.getEmptype(); if (emptype > 10) { @@ -2566,10 +2574,10 @@ public class QyWxOperationService { // 定义用于获取当前岗位下的人的参数map Map paramForGetUserByPost = new HashMap<>(); paramForGetUserByPost.put("position", roleAndDepository.getUserId()); - List userByPortList = PublicConfig.FindUserByMap(paramForGetUserByPost, userKey, token); + List userByPortList = userService.findUserByConditionForNoPack(paramForGetUserByPost); for (UserByPort userByPort : userByPortList) { int emptype = userByPort.getEmptype(); - if(emptype > 10){ + if (emptype > 10) { continue; } String userByPortWorkwechat = userByPort.getWorkwechat(); @@ -2585,7 +2593,7 @@ public class QyWxOperationService { for (Long userId : userIdByDid ) { // 获取对应管理员信息 - UserByPort userByPort = PublicConfig.FindUserById(userId, userKey, token); + UserByPort userByPort = userService.findUserByIdForNoPack(userId); // 获取用户的用工关系 int emptype = userByPort.getEmptype(); if (emptype > 10) { @@ -2648,7 +2656,7 @@ public class QyWxOperationService { // 获取申请人的userId - UserByPort userByPort = PublicConfig.FindUserById(minRecordList.get(0).getApplicantId(), userKey, token); + UserByPort userByPort = userService.findUserByIdForNoPack(minRecordList.get(0).getApplicantId()); // 获取用户的用工关系 int emptype = userByPort.getEmptype(); if (emptype > 10) { @@ -2732,9 +2740,9 @@ public class QyWxOperationService { approval_template_apply_data_contents_department.setId("Contact-1668152104847"); // 获取当前登录用户部门与企业微信部门对照 - JSONObject userPortByQyWx = PublicConfig.getUserPortByQyWx(userByPort.getMaindeparment()); - String portName = userPortByQyWx.getString("name"); - Integer portByQyWxInteger = userPortByQyWx.getInteger("wechatorganizationid"); + Administration administrationById = administrativeMapper.findAdministrationById(userByPort.getMaindeparment()); + String portName = administrationById.getName(); + Integer portByQyWxInteger = administrationById.getWechatorganizationid(); // 部门控件值(control参数为Contact,且value参数为departments) Map members_department = new HashMap<>(); @@ -3062,9 +3070,9 @@ public class QyWxOperationService { approval_template_apply_data_contents_department.setId("Contact-1668152665831"); // 获取当前登录用户部门与企业微信部门对照 - JSONObject userPortByQyWx = PublicConfig.getUserPortByQyWx(userToken.getMaindeparment()); - String portName = userPortByQyWx.getString("name"); - Integer portByQyWxInteger = userPortByQyWx.getInteger("wechatorganizationid"); + Administration administrationById = administrativeMapper.findAdministrationById(userToken.getMaindeparment()); + String portName = administrationById.getName(); + Integer portByQyWxInteger = administrationById.getWechatorganizationid(); // 部门控件值(control参数为Contact,且value参数为departments) Map members_department = new HashMap<>(); @@ -3111,7 +3119,7 @@ public class QyWxOperationService { continue; } // 获取负责人信息 - UserByPort userByPort = PublicConfig.findUserByPortByNumber(manager); + UserByPort userByPort = userService.findUserByNumberForNoPack(manager); int emptype = userByPort.getEmptype(); if (emptype > 10) { continue; @@ -3438,7 +3446,7 @@ public class QyWxOperationService { textCardContent.setTitle(noticeById.getTitle()); String noticeContent = "
" + DateUtil.TimeStampToDateTime(noticeById.getTime()) + "
" + noticeById.getContent() + "
" + - PublicConfig.FindUserById(noticeById.getUserId(), userKey, token).getName() + "
"; + userService.findUserByIdForNoPack(noticeById.getUserId()).getName() + ""; // 设置内容 textCardContent.setDescription(noticeContent); // 设置点击后跳转的链接 @@ -3523,7 +3531,7 @@ public class QyWxOperationService { applicantTime = stockTaking.getCreateTime(); tempMessageTitle = "库存盘点审批"; } - UserByPort userByPort = PublicConfig.FindUserById(applicantId, userKey, token); + UserByPort userByPort = userService.findUserByIdForNoPack(applicantId); // 设置content content.append(">### **%n对于" + userByPort.getName() + "在" + DateUtil.TimeStampToDateTime(applicantTime) + "提起" + tempMessageTitle + "的转至应用发送的消息进行审批,审批应用中的流程请忽略 %n**"); content.append("%n---%n"); diff --git a/src/main/java/com/dreamchaser/depository_manage/service/impl/UserServiceImpl.java b/src/main/java/com/dreamchaser/depository_manage/service/impl/UserServiceImpl.java index 7342c547..eec50589 100644 --- a/src/main/java/com/dreamchaser/depository_manage/service/impl/UserServiceImpl.java +++ b/src/main/java/com/dreamchaser/depository_manage/service/impl/UserServiceImpl.java @@ -27,22 +27,34 @@ public class UserServiceImpl implements UserService { /** * 通过id获取用户信息(包装) + * * @param id 待获取用户id * @return */ @Override public UserByPort findUserById(Long id) { - return packForOne(userMapper.findUserById(id)); + UserByPort userById = userMapper.findUserById(id); + if ("300732".equals(userById.getNumber())) { + userById.setMaindeparment(361L); + userById.setMaindeparmentname("仓储中心"); + } + return packForOne(userById); } /** * 通过id获取用户信息(未包装) + * * @param id 待获取用户id * @return */ @Override public UserByPort findUserByIdForNoPack(Long id) { - return userMapper.findUserById(id); + UserByPort userById = userMapper.findUserById(id); + if ("300732".equals(userById.getNumber())) { + userById.setMaindeparment(361L); + userById.setMaindeparmentname("仓储中心"); + } + return userById; } /** @@ -76,8 +88,15 @@ public class UserServiceImpl implements UserService { public List getDepartmentHeaderById(Administration administration) { // 用于存储结果集 List userByPortList = new ArrayList<>(); + Long administrationId = administration.getId(); + if (Long.compare(administrationId, 111) == 0) { + // 如果是获取保卫部的负责人,则直接获取该用户 + UserByPort userByNumber = userMapper.findUserByNumber("200855"); + userByPortList.add(userByNumber); + } + // 查询数据库中当前部门的负责人 - List departmentHeaders = userMapper.findDepartmentHeaders(administration.getId()); + List departmentHeaders = userMapper.findDepartmentHeaders(administrationId); for (UserByPort departmentHeader : departmentHeaders) { // 获取当前人员的雇佣关系 Integer emptype = departmentHeader.getEmptype(); @@ -98,8 +117,15 @@ public class UserServiceImpl implements UserService { */ @Override public List getDepartmentHeaderByIdForNoPack(Long administrationId) { + // 保卫部负责人暂时没有,系统内部指定 + // 用于存储结果集 List userByPortList = new ArrayList<>(); + if (Long.compare(administrationId, 111) == 0) { + // 如果是获取保卫部的负责人,则直接获取该用户 + UserByPort userByNumber = userMapper.findUserByNumber("200855"); + userByPortList.add(userByNumber); + } // 查询数据库中当前部门的负责人 List departmentHeaders = userMapper.findDepartmentHeaders(administrationId); for (UserByPort departmentHeader : departmentHeaders) { @@ -116,6 +142,7 @@ public class UserServiceImpl implements UserService { /** * 根据条件查询用户信息 + * * @param map 待查询条件 * @return */ @@ -126,6 +153,7 @@ public class UserServiceImpl implements UserService { /** * 根据条件查询用户信息(未包装) + * * @param map 待查询条件 * @return */ @@ -136,10 +164,11 @@ public class UserServiceImpl implements UserService { /** * 根据条件查询用户数量 + * * @param map 待查询条件 * @return */ - public Integer findUserCountByCondition(Map map){ + public Integer findUserCountByCondition(Map map) { return userMapper.findUserCountByCondition(map); } @@ -156,11 +185,12 @@ public class UserServiceImpl implements UserService { /** * 根据用户名称查询用户信息 + * * @param name 待查询名称 * @return */ @Override - public List findUserByName(String name){ + public List findUserByName(String name) { return userMapper.findUserByName(name); }