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 19eb2a04..88a328a0 100644 --- a/src/main/java/com/dreamchaser/depository_manage/controller/DepositoryController.java +++ b/src/main/java/com/dreamchaser/depository_manage/controller/DepositoryController.java @@ -1007,7 +1007,7 @@ public class DepositoryController { // 构造树选择框 @GetMapping("/treeMenus") - public RestResponse InitTreeMenus(@RequestParam(value = "adminorg", required = false) Integer adminorg, HttpServletRequest request) { + public RestResponse InitTreeMenus(@RequestParam Map map, HttpServletRequest request) { List list = new ArrayList<>(); // 获取当前登录的用户 String token = request.getHeader("user-token"); @@ -1015,10 +1015,12 @@ public class DepositoryController { token = (String) request.getSession().getAttribute("userToken"); } UserByPort userToken = AuthenticationTokenPool.getUserToken(token); - if (Integer.compare(0, adminorg) == 0) { - list = depositoryService.InitTreeMenus("", userToken); + String adminorg = map.get("adminorg"); + String type = map.get("type"); + if ("".equals(adminorg) || "0".equals(adminorg)) { + list = depositoryService.InitTreeMenus("", type, userToken); } else { - list = depositoryService.InitTreeMenus(adminorg.toString(), userToken); + list = depositoryService.InitTreeMenus(adminorg, type, userToken); } return new RestResponse(list); } diff --git a/src/main/java/com/dreamchaser/depository_manage/controller/PageController.java b/src/main/java/com/dreamchaser/depository_manage/controller/PageController.java index 345f62c1..e949be82 100644 --- a/src/main/java/com/dreamchaser/depository_manage/controller/PageController.java +++ b/src/main/java/com/dreamchaser/depository_manage/controller/PageController.java @@ -484,6 +484,7 @@ public class PageController { Integer maindeparment = userToken.getMaindeparment(); mv.addObject("adminorg", maindeparment); } + mv.addObject("type", type); mv.setViewName("pages/material/selectDepository"); return mv; } @@ -561,6 +562,7 @@ public class PageController { mv.addObject("clickObj", clickObj); mv.addObject("flagForGroup", flagForGroup); } + mv.addObject("type", type); mv.setViewName("pages/material/selectDepositoryByCard"); return mv; } @@ -1020,12 +1022,11 @@ public class PageController { ModelAndView mv = new ModelAndView(); mv.setViewName("pages/depository/table-stock"); Integer maindeparment = userToken.getMaindeparment(); + mv.addObject("type", "2"); if (PublicConfig.roleAdminorgList.contains(maindeparment)) { mv.addObject("display", "table-cell"); - mv.addObject("type", "2"); } else { mv.addObject("display", "none"); - mv.addObject("type", "1"); } mv.addObject("number", userToken.getNumber()); String userAgent = request.getHeader("user-agent"); diff --git a/src/main/java/com/dreamchaser/depository_manage/controller/UserController.java b/src/main/java/com/dreamchaser/depository_manage/controller/UserController.java index 464fac1c..d503357a 100644 --- a/src/main/java/com/dreamchaser/depository_manage/controller/UserController.java +++ b/src/main/java/com/dreamchaser/depository_manage/controller/UserController.java @@ -204,6 +204,8 @@ public class UserController { } + + // 通过名称获取人员 @PostMapping("/sys/findUserByName") public RestResponse findUserByName(@RequestBody Map map,HttpServletRequest request){ Map paramForUser = new HashMap<>(); @@ -214,6 +216,13 @@ public class UserController { token = (String) request.getSession().getAttribute("userToken"); userkey = (String) request.getSession().getAttribute("userKey"); } + // 获取当前获取用户时查询范围 + String scope = map.get("scope"); + if("department".equals(scope)){ + UserByPort userToken = AuthenticationTokenPool.getUserToken(token); + // 如果是部门级别 + paramForUser.put("adminorg",userToken.getMaindeparment()); + } List userByPortList = LinkInterfaceUtil.FindUserByMap(paramForUser, userkey, token); List userByPortP = new ArrayList<>(); for (UserByPort userByPort : userByPortList) { diff --git a/src/main/java/com/dreamchaser/depository_manage/entity/ApplicationOutRecord.java b/src/main/java/com/dreamchaser/depository_manage/entity/ApplicationOutRecord.java index f809cee6..94625e19 100644 --- a/src/main/java/com/dreamchaser/depository_manage/entity/ApplicationOutRecord.java +++ b/src/main/java/com/dreamchaser/depository_manage/entity/ApplicationOutRecord.java @@ -203,5 +203,16 @@ public class ApplicationOutRecord { + /** + * 创建人id + */ + private Integer createUid; + + + /** + * 用于标志是否为代领(1是2不是) + */ + private Integer flagForAgency; + } diff --git a/src/main/java/com/dreamchaser/depository_manage/mapper/DepositoryRecordMapper.xml b/src/main/java/com/dreamchaser/depository_manage/mapper/DepositoryRecordMapper.xml index 13a54146..b9c670f3 100644 --- a/src/main/java/com/dreamchaser/depository_manage/mapper/DepositoryRecordMapper.xml +++ b/src/main/java/com/dreamchaser/depository_manage/mapper/DepositoryRecordMapper.xml @@ -124,6 +124,9 @@ + + + @@ -151,7 +154,7 @@ - airid,applicant_id,applicant_time,applyRemark + airid,applicant_id,applicant_time,applyRemark @@ -177,7 +180,7 @@ aorid,mid,mname,depositoryId,dname,applicantId,applicantTime,applyRemark,aorcode,aorpirce,aorquantity,departmenthead,departmentheadPass,departmentHeadTime,departmentheadMessage, depositoryManager,depositoryManagerPass,depositoryManagerTime,depositoryManagerMessage,aorstate,istransfer,mcode,placeId,pass,aormUnit,aorconstructionunitid,aoradminorgid,cuname, - cuintroduce,cuaddress,outTime,abstract,outType,editUser,mbrand,mversion,flagForOpenDepository + cuintroduce,cuaddress,outTime,abstract,outType,editUser,mbrand,mversion,flagForOpenDepository,createUid,flagForAgency @@ -185,8 +188,7 @@ @@ -362,9 +364,6 @@ - - - - select from applicationOutRecordInfo where 1 = 1 and ( depositoryId - in + in #{id} @@ -660,10 +659,10 @@ and aorcode = #{code} - and applicantTime >= #{startDate} + and applicantTime >= #{startDate} - and applicantTime <= #{endDate} + and applicantTime <= #{endDate} and adminorgid = #{adminorgid} @@ -712,10 +711,10 @@ and aorcode = #{code} - and applicantTime >= #{startDate} + and applicantTime >= #{startDate} - and applicantTime <= #{endDate} + and applicantTime <= #{endDate} and adminorgid = #{adminorgid} @@ -736,7 +735,7 @@ select from applicationInRecordInfo - where 1 = 1 + where 1 = 1 and airid in #{id} @@ -744,13 +743,11 @@ - - - - - - select - count(*) - from - depository_record dr - where - dr.state like '%已%' + select count(*) + from depository_record dr + where dr.state like '%已%' and dr.check_time between #{start} and #{end} - - DELETE FROM application_in_record WHERE id = #{id} + DELETE + FROM application_in_record + WHERE id = #{id} @@ -1773,7 +1768,9 @@ - DELETE FROM application_out_record WHERE id = #{id} + DELETE + FROM application_out_record + WHERE id = #{id} @@ -1785,7 +1782,9 @@ - delete from application_out_record_min where parentId = #{id} + delete + from application_out_record_min + where parentId = #{id} diff --git a/src/main/java/com/dreamchaser/depository_manage/pojo/ApplicationOutRecordP.java b/src/main/java/com/dreamchaser/depository_manage/pojo/ApplicationOutRecordP.java index b1967ba1..6b0ef8af 100644 --- a/src/main/java/com/dreamchaser/depository_manage/pojo/ApplicationOutRecordP.java +++ b/src/main/java/com/dreamchaser/depository_manage/pojo/ApplicationOutRecordP.java @@ -205,6 +205,19 @@ public class ApplicationOutRecordP { private String mversion; + + /** + * 创建人id + */ + private Integer createUid; + + + /** + * 用于标志是否为代领(1是2不是) + */ + private Integer flagForAgency; + + /** * 2代表是通过开放仓库申请1代表不是 */ @@ -249,6 +262,8 @@ public class ApplicationOutRecordP { this.mbrand = aor.getMbrand() == null ? "" : aor.getMbrand(); this.mversion = aor.getMversion() == null ? "" : aor.getMversion(); this.flagForOpenDepository = aor.getFlagForOpenDepository(); + this.flagForAgency = aor.getFlagForAgency(); + this.createUid = aor.getCreateUid(); } } diff --git a/src/main/java/com/dreamchaser/depository_manage/service/DepositoryService.java b/src/main/java/com/dreamchaser/depository_manage/service/DepositoryService.java index 5abd51b8..50411045 100644 --- a/src/main/java/com/dreamchaser/depository_manage/service/DepositoryService.java +++ b/src/main/java/com/dreamchaser/depository_manage/service/DepositoryService.java @@ -153,7 +153,7 @@ public interface DepositoryService { * @param adminorg * @return */ - List InitTreeMenus(String adminorg,UserByPort userByPort); + List InitTreeMenus(String adminorg,String type,UserByPort userByPort); /** diff --git a/src/main/java/com/dreamchaser/depository_manage/service/impl/DepositoryServiceImpl.java b/src/main/java/com/dreamchaser/depository_manage/service/impl/DepositoryServiceImpl.java index b82a3bea..a47c441f 100644 --- a/src/main/java/com/dreamchaser/depository_manage/service/impl/DepositoryServiceImpl.java +++ b/src/main/java/com/dreamchaser/depository_manage/service/impl/DepositoryServiceImpl.java @@ -433,7 +433,7 @@ public class DepositoryServiceImpl implements DepositoryService { depositoryIdList.add(depository.getId()); } } - if(PublicConfig.roleAdminorgList.contains(userByPort.getMaindeparment())){ + if (PublicConfig.roleAdminorgList.contains(userByPort.getMaindeparment())) { return depositoryIdList; } //用于查询当前用户所拥有及所管理的仓库 @@ -443,9 +443,9 @@ public class DepositoryServiceImpl implements DepositoryService { } @Override - public List InitTreeMenus(String adminorg, UserByPort userByPort) { + public List InitTreeMenus(String adminorg, String type, UserByPort userByPort) { List list = new ArrayList<>(); - list = buildTree_New(InitTreeMenus_New(adminorg, userByPort), 0); + list = buildTree_New(InitTreeMenus_New(adminorg, type, userByPort), 0); return list; } @@ -473,7 +473,7 @@ public class DepositoryServiceImpl implements DepositoryService { return depositoryMapper.selectDepositoryByIds(ids); } - public List InitTreeMenus_New(String adminorg, UserByPort userByPort) { + public List InitTreeMenus_New(String adminorg, String type, UserByPort userByPort) { // 定义结果集 List list = new ArrayList<>(); @@ -504,7 +504,7 @@ public class DepositoryServiceImpl implements DepositoryService { Depository depository = depositoryAll.get(i); if (((i + 1) % 10) == 0) { // 如果有10个开启线程进行处理 depositoryIdList.add(depository.getId()); - Future future = completionService.submit(new Task(depositoryIdList, adminorg, userByPort)); + Future future = completionService.submit(new Task(depositoryIdList, type, adminorg, userByPort)); openThreadSize++; futureList.add(future); // 添加到结果集 depositoryIdList = new ArrayList<>(); // 情况列表 @@ -516,7 +516,7 @@ public class DepositoryServiceImpl implements DepositoryService { if (depositoryIdList.size() > 0) { // 如果有剩余,开启线程进行处理 - Future future = completionService.submit(new Task(depositoryIdList, adminorg, userByPort)); + Future future = completionService.submit(new Task(depositoryIdList,type, adminorg, userByPort)); futureList.add(future); openThreadSize++; } @@ -963,11 +963,14 @@ public class DepositoryServiceImpl implements DepositoryService { String adminorg; // 当前登录用户 UserByPort userByPort; + // 当前选择仓库的类型 + String type; - public Task(List depositoryIdList, String adminorg, UserByPort userByPort) { + public Task(List depositoryIdList, String type,String adminorg, UserByPort userByPort) { this.depositoryIdList = depositoryIdList; this.adminorg = adminorg; this.userByPort = userByPort; + this.type = type; } @Override @@ -977,7 +980,17 @@ public class DepositoryServiceImpl implements DepositoryService { */ List depositories = depositoryMapper.selectDepositoryByIds(depositoryIdList); - // 获取当前用户管理的仓库 + List integerList = new ArrayList<>(); + if("1".equals(type)){ + // 如果是因为入库、库存转移而打开的仓库列表 + integerList = roleService.findDepositoryIdForUser(userByPort); + }else{ + // 如果是其他 + integerList = roleService.findDepositoryIdForUserHas(userByPort); + + } + + /* // 获取当前用户管理的仓库 List depositoryAndRole = roleMapper.findDepositoryAndRole(userByPort.getId()); depositoryAndRole.addAll(roleMapper.findDepositoryAndRole(userByPort.getPosition())); Map paramForFindDepositoryId = new HashMap<>(); @@ -998,7 +1011,7 @@ public class DepositoryServiceImpl implements DepositoryService { if (!integerList.contains(depositoryId)) { integerList.add(depositoryId); } - } + }*/ // 定义树结构结果集 List list = new ArrayList<>(); diff --git a/src/main/resources/templates/pages/application/application-out.html b/src/main/resources/templates/pages/application/application-out.html index bd57ea23..8906e1ca 100644 --- a/src/main/resources/templates/pages/application/application-out.html +++ b/src/main/resources/templates/pages/application/application-out.html @@ -60,6 +60,41 @@
+
+
+ +
+ +
+
+ + +

@@ -346,6 +381,11 @@ function scanCodeByOut(obj) { } + // 用于选择代领的人员 + function selectUser() { + + } + // 用于暂存卡片个数 var params = []; @@ -353,6 +393,9 @@ let flagForForm = false; let GroupflagForForm = false; + // 用于打开的人员选择页 + var selectUserIfame = 0; + // 用于暂存卡片个数(组合) var params2 = []; // 用于卡片编号 @@ -372,7 +415,7 @@ elem: '#stepForm', filter: 'stepForm', width: '100%', //设置容器宽度 - height: '600px', + height: '650px', stepItems: [{ title: '填写信息' }, { @@ -421,7 +464,9 @@ data.params = remove(data.params, Number(keyNumber)); } - $.ajax({ + console.log(data) + + /*$.ajax({ url: "/depositoryRecord/applicationOut", type: 'post', dataType: 'json', @@ -451,7 +496,7 @@ complete: function () { layer.close(this.layerIndex); } - }); + });*/ } return false; }); @@ -519,6 +564,22 @@ }); + // 监听开关 + form.on('switch()', function (data) { + let isAgency = data.elem.checked; //开关是否开启,true或者false + if (isAgency) { + // 如果开启了代领功能 + $("#agencyItem").show(); + // 添加必填 + $("#agencyUid").attr("lay-verify", "required"); + + } else { + $("#agencyItem").hide(); + // 删除必填 + $("#agencyUid").removeAttr("lay-verify"); + } + }); + $('.pre').click(function () { step.pre('#stepForm'); step.pre('#stepForm2'); @@ -1659,6 +1720,7 @@ } }; + // 监听下拉选择框 form.on('select()', function (data) { let id = data.elem.id; @@ -1718,6 +1780,72 @@ }); + // 用于选择代领用户 + selectUser = function (obj) { + let name = obj.value; + if (name !== "") { + let req = {}; + req.name = name; + req.scope = "department"; + $.ajax({ + url: "/sys/findUserByName", + type: "post", + data: JSON.stringify(req), + dataType: 'json', + contentType: "application/json;charset=utf-8", + beforeSend: function () { + this.layerIndex = layer.load(0, {shade: [0.5, '#393D49']}); + }, + success: function (res) { + layer.close(this.layerIndex); + let data = res.data; + let count = res.count; + if (count === 0) { + layer.msg("部门中不存在该用户,请重试", { + icon: 0, + time: 1000 + }) + } else if (count > 1) { + + let content = ``; + $.each(data, function (index, item) { + let listItem = `
+ +
`; + content += listItem; + }); + selectUserIfame = layer.open({ + type: 1, + title: false, + area: ["70%", "70%"], + content: content + }) + } else { + let user = data[0]; + $("#adminorgId").val(user.maindeparment); + $("#agencyAdminorg").val(user.maindeparmentname); + $("#agencyUid").val(user.id); + $("#agencyUser").val(user.name); + } + } + }) + } + }; + + // 用于选定人员 + SelectTheUser = function (obj) { + let data = $(obj); + let adminorg = data.attr("adminorg"); + let adminorgName = data.attr("adminorgname"); + let id = data.attr("id"); + let name = data.attr("name"); + $("#adminorgId").val(adminorg); + $("#agencyAdminorg").val(adminorgName); + $("#agencyUid").val(id); + $("#agencyUser").val(name); + layer.close(selectUserIfame) + }; + }) diff --git a/src/main/resources/templates/pages/applicationForStorageCenter/application-out_admin.html b/src/main/resources/templates/pages/applicationForStorageCenter/application-out_admin.html index 6fb031ca..ecdc7d3c 100644 --- a/src/main/resources/templates/pages/applicationForStorageCenter/application-out_admin.html +++ b/src/main/resources/templates/pages/applicationForStorageCenter/application-out_admin.html @@ -1877,6 +1877,7 @@ if (name !== "") { let req = {}; req.name = name; + req.scope = "company"; $.ajax({ url: "/sys/findUserByName", type: "post", @@ -1922,6 +1923,7 @@ }; + // 用于选定人员 SelectTheUser = function (obj) { let data = $(obj); let adminorg = data.attr("adminorg"); diff --git a/src/main/resources/templates/pages/material/selectDepository.html b/src/main/resources/templates/pages/material/selectDepository.html index 30a1186c..60cd3c94 100644 --- a/src/main/resources/templates/pages/material/selectDepository.html +++ b/src/main/resources/templates/pages/material/selectDepository.html @@ -11,6 +11,7 @@ +
@@ -23,6 +24,7 @@ var $ = layui.jquery, tree = layui.tree; var adminorg = $("#adminorg").val(); + var type = $("#type").val(); var clickObj = $("#clickObj").val(); var flagForGroup = $("#flagForGroup").val(); test = tree.render({ @@ -86,7 +88,7 @@ } }); $.ajax({ - url: "/repository/treeMenus?adminorg=0" + adminorg, + url: "/repository/treeMenus?adminorg=0" + adminorg+"&type="+type, type: 'get', dataType: 'json', contentType: "application/json;charset=utf-8",