Browse Source

添加人员与岗位新赋权

lwx_dev
erdanergou 3 years ago
parent
commit
092205ef99
  1. 62
      src/main/java/com/dreamchaser/depository_manage/controller/CompanyController.java
  2. 11
      src/main/java/com/dreamchaser/depository_manage/controller/PageController.java
  3. 8
      src/main/java/com/dreamchaser/depository_manage/pojo/PostP.java
  4. 3
      src/main/java/com/dreamchaser/depository_manage/service/impl/SplitUnitServiceImpl.java
  5. 36
      src/main/resources/templates/pages/post/post-out.html
  6. 23
      src/main/resources/templates/pages/post/postRole.html
  7. 12
      src/main/resources/templates/pages/post/postRole_add.html

62
src/main/java/com/dreamchaser/depository_manage/controller/CompanyController.java

@ -190,40 +190,36 @@ public class CompanyController {
List<UserByPort> userByPortList = LinkInterfaceUtil.FindUserByMap(userParam, userToken);
Integer success = 0;
if (map.containsKey("depositoryId")) {
for (int i = 0; i < userByPortList.size(); i++) {
for (UserByPort userByPort : userByPortList) {
Map<String, Object> param = new HashMap<>();
param.put("userId", userByPortList.get(i).getId());
param.put("userId", userByPort.getId());
param.put("depositoryId", map.get("depositoryId"));
param.put("classes", 2);
param.put("classes", map.get("classes"));
List<RoleAndDepository> roleAndDepositoryByCondition = roleService.findRoleAndDepositoryByCondition(param);
if (roleAndDepositoryByCondition.size() > 0) {
continue;
} else {
if (roleAndDepositoryByCondition.size() <= 0) {
Map<String, Object> insert = new HashMap<>();
insert.put("classes", 2);
insert.put("classes", map.get("classes"));
insert.put("authority", 0);
insert.put("depositoryId", map.get("depositoryId"));
insert.put("userid", userByPortList.get(i).getId());
insert.put("userid", userByPort.getId());
success += roleService.addUserOrPostRoleAndDepository(insert);
}
}
} else {
List<Depository> depositoryAll = depositoryService.findDepositoryAll();
for (int i = 0; i < depositoryAll.size(); i++) {
for (int j = 0; j < userByPortList.size(); j++) {
for (Depository depository : depositoryAll) {
for (UserByPort userByPort : userByPortList) {
Map<String, Object> param = new HashMap<>();
param.put("userId", userByPortList.get(j).getId());
param.put("depositoryId", depositoryAll.get(i).getId());
param.put("classes", 2);
param.put("userId", userByPort.getId());
param.put("depositoryId", depository.getId());
param.put("classes", map.get("classes"));
List<RoleAndDepository> roleAndDepositoryByCondition = roleService.findRoleAndDepositoryByCondition(param);
if (roleAndDepositoryByCondition.size() > 0) {
continue;
} else {
if (roleAndDepositoryByCondition.size() <= 0) {
Map<String, Object> insert = new HashMap<>();
insert.put("classes", 2);
insert.put("classes", map.get("classes"));
insert.put("authority", 0);
insert.put("depositoryId", depositoryAll.get(i).getId());
insert.put("userid", userByPortList.get(j).getId());
insert.put("depositoryId", depository.getId());
insert.put("userid", userByPort.getId());
success += roleService.addUserOrPostRoleAndDepository(insert);
}
}
@ -272,11 +268,11 @@ public class CompanyController {
Integer depositoryId = ObjectFormatUtil.toInteger(map.get("depositoryId"));
Map<String, Object> param = new HashMap<>();
param.put("depositoryId", depositoryId);
param.put("classes", 2);
param.put("classes", map.get("classes"));
List<RoleAndDepository> roleAndDepositoryByCondition = roleService.findRoleAndDepositoryByCondition(param);
Integer success = 0;
for (int i = 0; i < roleAndDepositoryByCondition.size(); i++) {
success += roleService.deleteRoleAndDepositoryById(roleAndDepositoryByCondition.get(i).getId());
for (RoleAndDepository roleAndDepository : roleAndDepositoryByCondition) {
success += roleService.deleteRoleAndDepositoryById(roleAndDepository.getId());
}
return CrudUtil.postHandle(success, roleAndDepositoryByCondition.size());
} else if (map.containsKey("depositoryIds")) {
@ -284,15 +280,14 @@ public class CompanyController {
List<Integer> depositoryIds = (List<Integer>) map.get("depositoryIds");
Integer success = 0;
Integer total = 0;
for (int i = 0; i < depositoryIds.size(); i++) {
Integer depositoryId = depositoryIds.get(i);
for (Integer depositoryId : depositoryIds) {
Map<String, Object> param = new HashMap<>();
param.put("depositoryId", depositoryId);
param.put("classes", 2);
param.put("classes", map.get("classes"));
List<RoleAndDepository> roleAndDepositoryByCondition = roleService.findRoleAndDepositoryByCondition(param);
total += roleAndDepositoryByCondition.size();
for (int j = 0; j < roleAndDepositoryByCondition.size(); j++) {
success += roleService.deleteRoleAndDepositoryById(roleAndDepositoryByCondition.get(j).getId());
for (RoleAndDepository roleAndDepository : roleAndDepositoryByCondition) {
success += roleService.deleteRoleAndDepositoryById(roleAndDepository.getId());
}
}
return CrudUtil.postHandle(success, total);
@ -304,28 +299,29 @@ public class CompanyController {
/**
* 查询岗位对应的权限
*
* @param postId 要查询的岗位id
* @param map 要查询的调剂
* @return
*/
@GetMapping("/findPostRole")
public RestResponse findPostRole(@RequestParam("postId") Integer postId, HttpServletRequest request) {
public RestResponse findPostRole(@RequestParam Map<String,Object> map, HttpServletRequest request) {
UserByPort userToken = (UserByPort) request.getAttribute("userToken");
Map<String, Object> userParam = new HashMap<>();
Integer postId = ObjectFormatUtil.toInteger(map.get("postId"));
userParam.put("position", postId);
List<UserByPort> userByPortList = LinkInterfaceUtil.FindUserByMap(userParam, userToken);
Post postById = LinkInterfaceUtil.findPostById(postId, userToken);
List<RoleAndDepository> roleAndDepositoryByCondition = new ArrayList<>();
if (userByPortList.size() != 0) {
Map<String, Object> param = new HashMap<>();
param.put("classes", 2);
param.put("classes", map.get("classes"));
param.put("userId", userByPortList.get(0).getId());
roleAndDepositoryByCondition = roleService.findRoleAndDepositoryByCondition(param);
}
List<PostP> postPS = new ArrayList<>();
for (int i = 0; i < roleAndDepositoryByCondition.size(); i++) {
for (RoleAndDepository roleAndDepository : roleAndDepositoryByCondition) {
PostP pp = new PostP(postById);
pp.setDepositoryName(roleAndDepositoryByCondition.get(i).getDepositoryName());
pp.setDepositoryId(roleAndDepositoryByCondition.get(i).getDepositoryId());
pp.setDepositoryName(roleAndDepository.getDepositoryName());
pp.setDepositoryId(roleAndDepository.getDepositoryId());
postPS.add(pp);
}
return new RestResponse(postPS, postPS.size(), 200);

11
src/main/java/com/dreamchaser/depository_manage/controller/PageController.java

@ -1265,9 +1265,10 @@ public class PageController {
}
@GetMapping("/postRoleView")
public ModelAndView findPostRoleView(Integer id) {
public ModelAndView findPostRoleView(Integer id,Integer classes) {
ModelAndView mv = new ModelAndView();
mv.addObject("postId", id);
mv.addObject("classes", classes);
mv.setViewName("pages/post/postRole");
return mv;
}
@ -2009,8 +2010,8 @@ public class PageController {
list = new JSONArray();
}
List<Post> postList = new ArrayList<>();
for (int i = 0; i < list.size(); i++) {
Post object = JSONObject.toJavaObject((JSONObject) list.get(i), Post.class);
for (Object o : list) {
Post object = JSONObject.toJavaObject((JSONObject) o, Post.class);
postList.add(object);
}
mv.addObject("postList", postList);
@ -2081,13 +2082,13 @@ public class PageController {
// 跳转到添加权限界面
@GetMapping("/postRoleAdd")
public ModelAndView PostRoleAdd(Integer id, HttpServletRequest request) {
public ModelAndView PostRoleAdd(Integer id,Integer classes, HttpServletRequest request) {
UserByPort userToken = (UserByPort) request.getAttribute("userToken");
ModelAndView mv = new ModelAndView();
mv.setViewName("pages/post/postRole_add");
Post postById = LinkInterfaceUtil.findPostById(id, userToken);
mv.addObject("post", postById);
mv.addObject("depositories", depositoryService.findDepositoryAll());
mv.addObject("classes", classes);
return mv;
}

8
src/main/java/com/dreamchaser/depository_manage/pojo/PostP.java

@ -7,7 +7,7 @@ import lombok.Data;
public class PostP {
/**
* id
* 岗位id
*/
private Integer id;
/**
@ -34,6 +34,12 @@ public class PostP {
private String dutiesname;
/**
* 权限id
*/
private Integer prid;
/**
* 归属行政组织名称
*/

3
src/main/java/com/dreamchaser/depository_manage/service/impl/SplitUnitServiceImpl.java

@ -306,6 +306,9 @@ public class SplitUnitServiceImpl implements SplitUnitService {
}
/**
* 用于计算当前拆单单位与目标拆单单位之间的进率
*

36
src/main/resources/templates/pages/post/post-out.html

@ -57,6 +57,7 @@
<a class="layui-btn layui-btn-normal layui-btn-xs data-count-subclass" lay-event="subclass">子类别</a>
<a class="layui-btn layui-btn-xs data-count-edit" lay-event="detail">详情</a>
<a class="layui-btn layui-btn-xs data-count-edit" lay-event="add_role">设置权限</a>
<a class="layui-btn layui-btn-xs data-count-edit" lay-event="addRoleIn">入库审核权</a>
</script>
</div>
@ -106,16 +107,7 @@
{field: 'depositoryName', width: 200, title: '管理仓库'},
{field: 'superiorname', width: 200, title: '上级名称'},
{field: 'departmentname', width: 200, title: '部门'},
{
field: 'state', title: '状态', minWidth: 80, templet: function (d) {
if (d.state == 1) {
return "启用";
} else if (d.state == 2) {
return "禁用";
}
}
},
{title: '操作', minWidth: 250, toolbar: '#currentTableBar', align: "center"}
{title: '操作', width: 300, toolbar: '#currentTableBar', align: "center"}
]
],
limits: [10, 15, 20, 25, 50,100],
@ -186,17 +178,23 @@
layer.full(index);
});
return false;
} else if (obj.event == 'add_role') {
} else if (obj.event === 'add_role') {
/*var index = layer.open({
title: '设置权限',
var index = layer.open({
type: 2,
shade: 0.2,
maxmin: true,
title: '权限信息',
shadeClose: true,
area: ['100%', '100%'],
content: '/postRoleAdd?id='+data.id
});*/
shade: false,
maxmin: true, //开启最大化最小化按钮
area: ['893px', '600px'],
content: '/postRoleView?id=' + data.id+'&classes=2'
});
$(window).on("resize", function () {
layer.full(index);
});
return false;
}else if (obj.event === 'addRoleIn') {
var index = layer.open({
type: 2,
title: '权限信息',
@ -204,7 +202,7 @@
shade: false,
maxmin: true, //开启最大化最小化按钮
area: ['893px', '600px'],
content: '/postRoleView?id=' + data.id
content: '/postRoleView?id=' + data.id+'&classes=4'
});
$(window).on("resize", function () {
layer.full(index);

23
src/main/resources/templates/pages/post/postRole.html

@ -13,6 +13,7 @@
<body>
<div class="layuimini-container">
<input id="postId" style="display: none" th:value="${postId}">
<input id="classes" style="display: none" th:value="${classes}">
<script type="text/html" id="toolbarDemo">
<div class="layui-btn-container">
<button class="layui-btn layui-btn-normal layui-btn-sm data-add-btn" lay-event="add_role">添加权限</button>
@ -32,12 +33,12 @@
layui.use('table', function () {
var table = layui.table;
var $ = layui.$;
var postId = document.getElementById("postId").value;
var postId = $("#postId").val();
var classes = $("#classes").val();
//第一个实例
table.render({
elem: '#demo'
, height: 312
, url: '/company/findPostRole?postId=' + postId, //数据接口
, url: '/company/findPostRole?postId=' + postId+'&classes='+classes, //数据接口
parseData: function (res) { //res 即为原始返回的数据
return {
"status": res.status, //解析接口状态
@ -61,14 +62,10 @@
, cols: [
[ //表头
{type: "checkbox", width: 50},
{field: 'id', width: 80, title: 'ID', sort: true},
{field: 'depositoryName', width: 200, title: '仓库名称', sort: true},
{field: 'depositoryId', width: 200, title: '仓库编号', sort: true},
{field: 'number', width: 100, title: '编号', sort: true},
{field: 'name', width: 250, title: '名称', sort: true},
{field: 'dutiesname',width: 200,title: '名称',sort: true},
{field: 'aoname',width: 200,title: '归属行政组织名称',sort: true},
{field: 'aonumber',width: 200,title: '归属行政组织编号',sort: true},
{field: 'jobname',width: 200,title: '职务类别',sort: true},
{title: '操作', minWidth: 150, toolbar: '#currentTableBar', align: "center"}
]
@ -76,11 +73,7 @@
limits: [10, 15, 20, 25, 50, 100],
limit: 10,
page: true,
skin: 'line',
done:function () {
$("[data-field='id']").css('display','none');
$("[data-field='depositoryId']").css('display','none');
}
skin: 'line'
});
//监听表格复选框选择
table.on('checkbox(currentTableFilter)', function (obj) {
@ -110,6 +103,7 @@
var req = {};
req.id = data.id;
req.depositoryId = data.depositoryId;
req.classes = classes;
layer.confirm('真的删除么', {icon: 2, title: '提示'}, function (index) {
$.ajax({
url: '/company/postRole_del',
@ -146,7 +140,7 @@
maxmin:true,
shadeClose: true,
area: ['100%', '100%'],
content: '/postRoleAdd?id='+postId,
content: '/postRoleAdd?id='+postId+'&classes='+classes,
end:function () {
location.reload()
}
@ -166,6 +160,7 @@
req.ids[i] = data[i].id;
req.depositoryIds[i] = data[i].depositoryId;
}
req.classes = classes;
if(req.ids.length > 0) {
layer.confirm('真的删除么', {icon: 2, title: '提示'}, function (index) {
$.ajax({
@ -189,7 +184,7 @@
});
//执行搜索重载
table.reload('demo', {
url: '/company/findPostRole?postId=' + postId,
url: '/company/findPostRole?postId=' + postId+'&classes='+classes,
page: {
curr: 1
}

12
src/main/resources/templates/pages/post/postRole_add.html

@ -17,6 +17,7 @@
<body>
<div class="layui-form layuimini-form">
<input type="text" name="userid" th:value="${post.getId()}" style="display: none">
<input type="text" name="classes" th:value="${classes}" style="display: none">
<input type="text" id="organization" name="organization" th:value="${post.getAdministrativeorganization()}" style="display: none">
<div class="layui-form-item">
<label class="layui-form-label required">岗位名称</label>
@ -25,15 +26,6 @@
<tip>填写自己管理账号的名称。</tip>
</div>
</div>
<div class=" layui-form-item" style="display: none">
<label class="layui-form-label required">权限:</label>
<div class="layui-inline " style="margin-bottom: 10px">
<select name="authority" class="layui-input-inline" >
<option value="">请选择权限</option>
<option th:each="role,iterStar:${roles}" th:value="${role?.getId()}" th:text="${role?.getName()}" >系统管理员</option>
</select>
</div>
</div>
<div class=" layui-form-item" >
<label class="layui-form-label required">负责仓库:</label>
<div class="layui-inline" style="margin-bottom: 10px">
@ -83,7 +75,7 @@
laydate.render({
elem: '#date'
});
var organization = document.getElementById("organization").value
let organization = $("#organization").val();
//监听提交
form.on('submit(saveBtn)', function (data) {
data=data.field;

Loading…
Cancel
Save