Bladeren bron

部门的增删改查

温红权 9 jaren geleden
bovenliggende
commit
0de318c512

+ 55 - 10
VisualInspection/js/user/adddept.js

@@ -1,14 +1,29 @@
 var dept_selectinput;
+var selectednodetemp;
 
 function loadData(nodedata) {
+    var pnode = nodedata;
+
+    if (edittype == "add") {
+        $("#dept_name").val("")
+    }
+    if (edittype == "edit") {
+        selectednodetemp = nodedata[0];
+        $("#dept_name").val(nodedata[0].name)
+        $("#dept_add_btn").html("保存")
+        if (pnode != null && pnode.length > 0) {
+            pnode = [dept_tree.getNodeByParam("id", pnode[0].pId, null)]
+        }
+
+    }
+
 
-    $("#dept_name").val("")
     dept_selectinput = new TreeSelect({
         element: '#dept_select',
         data: zdata,
         valueKey: "id",
         placeholder: "选择部门",
-        selectvalue: nodedata.length > 0 ? nodedata[0].id : null
+        selectvalue: pnode.length > 0 ? pnode[0].id : null
     });
 }
 
@@ -21,18 +36,48 @@ function addDept() {
         "organname": name,
         "parentid": pid
     }
-    DeptAdd(data, function(datare) {
 
-        layer.msg('添加成功!', {
-            time: 2000, //20s后自动关闭
-        }, function() {
-            $('#addModal').modal('hide')
-            getDept();
+    if (edittype == "add") {
+        DeptAdd(data, function(datare) {
+            layer.msg('添加成功!', {
+                time: 2000, //20s后自动关闭
+            }, function() {
+                $('#addModal').modal('hide')
+                getDept();
+            })
+        }, function(error) {
 
         })
+    }
 
-    }, function(error) {
+    if (edittype == "edit") {
+        data["id"] = selectednodetemp.id;
+        if (isSelfOrChild(pid, selectednodetemp)) {
+            layer.msg('不能添加到自身及自身下的子部门!', {
+                time: 2000, //20s后自动关闭
+            })
+            return;
+        }
+        DeptEdit(data, function(datare) {
+            layer.msg('修改成功!', {
+                time: 2000, //20s后自动关闭
+            }, function() {
+                $('#addModal').modal('hide')
+                getDept();
+            })
+        }, function(error) {
 
-    })
+        });
+    }
+}
 
+function isSelfOrChild(id, node) {
+    if (id == node.id) return true;
+    if (typeof(node.children) == "undefinde" || node.children == null || node.children.length < 1) return false;
+    for (var i = 0; i < node.children.length; i++) {
+        if (isSelfOrChild(id, node.children[i])) {
+            return true;
+        }
+    }
+    return false;
 }

+ 70 - 2
VisualInspection/js/user/userManager.js

@@ -1,5 +1,6 @@
  var zdata = [];
  var dept_tree = null;
+ var edittype = "add";
  $(document).ready(function() {
 
      $("#main_content_title").html("用户管理")
@@ -13,12 +14,46 @@
 
      $("#dept_add").on("click", function() {
          var nodedata = dept_tree.getSelectedNodes();
-         console.log(nodedata)
+         edittype = "add"
          loadData(nodedata)
-
          $('#addModal').modal('show')
      })
 
+     $("#dept_edit").on("click", function() {
+         //获取选中的节点
+         var nodedata = dept_tree.getSelectedNodes();
+         if (nodedata.length < 1) {
+             layer.msg('请先选择部门!', {
+                 time: 2000, //20s后自动关闭
+             });
+             return;
+         }
+         edittype = "edit"
+         loadData(nodedata)
+         $('#addModal').modal('show');
+     });
+
+     $("#dept_delete").on("click", function() {
+         //获取选中的节点
+         var nodedata = dept_tree.getSelectedNodes();
+         if (nodedata.length < 1) {
+             layer.msg('请先选择部门!', {
+                 time: 2000, //20s后自动关闭
+             });
+             return;
+         }
+         DeptDelete(nodedata[0].id, function(data) {
+             layer.msg('删除成功!', {
+                 time: 2000, //20s后自动关闭
+             });
+             dept_tree.removeNode(nodedata[0]);
+         }, function(error) {
+
+         });
+
+
+     });
+
 
 
      $('.datatable').datatable({
@@ -94,6 +129,19 @@
  });
 
  function getDept() {
+     function zTreeOnRename(event, treeId, treeNode, isCancel) {
+         alert(treeNode.tId + ", " + treeNode.name);
+     }
+
+     //  function zTreeBeforeDrop(treeId, treeNodes, targetNode, moveType) {
+     //      return !(targetNode == null || (moveType != "inner" && !targetNode.parentTId));
+     //  };
+
+     function zTreeOnRemove(event, treeId, treeNode) {
+         alert(treeNode.tId + ", " + treeNode.name);
+     }
+
+
      var setting = {
          data: {
              simpleData: {
@@ -111,8 +159,27 @@
              chkStyle: "checkbox", //值为checkbox或者radio表示
              checkboxType: { p: "", s: "" }, //表示父子节点的联动效果
              radioType: "level" //设置tree的分组
+         },
+         callback: {
+             onRename: zTreeOnRename,
+             //  beforeDrop: zTreeBeforeDrop,
+             onRemove: zTreeOnRemove
+         },
+         edit: {
+             enable: true,
+             drag: {
+                 autoExpandTrigger: true,
+                 isMove: true,
+                 prev: false,
+                 next: true,
+                 inner: true,
+                 autoOpenTime: 0
+             },
+             showRenameBtn: false,
+             showRemoveBtn: false
          }
      };
+
      DeptGetAll(function(data) {
          zdata = [];
          for (var i = 0; i < data.length; i++) {
@@ -132,6 +199,7 @@
  }
 
 
+
  function addobj(data) {
      var zdata = [];
      if (typeof(data.childs) != "undefinde" && data.childs != null &&

+ 3 - 1
VisualInspection/js/util/const.js

@@ -13,4 +13,6 @@ var MENU_GET_ALL = "menu/get/all"
 
 // 部门
 var DEPT_GET_ALL = "dept/get/all"
-var DEPT_ADD = "dept/addDept"
+var DEPT_ADD = "dept/addDept"
+var DEPT_EDIT = "dept/updateDept/"
+var DEPT_DELETE = "/dept/deleteDept/"

+ 28 - 0
VisualInspection/js/util/service.js

@@ -58,6 +58,34 @@ function DeptAdd(data, success, fail) {
     });
 }
 
+function DeptEdit(data, success, fail) {
+    var url = base_server_url + DEPT_EDIT + data.id
+    ajaxPut(url, data, function(response) {
+        var data = response;
+        if (data.result_code == 0) {
+            success(data.result_data)
+        } else {
+            fail(data.result_desc);
+        }
+    }, function(error) {
+        fail("网络错误");
+    });
+}
+
+function DeptDelete(id, success, fail) {
+    var url = base_server_url + DEPT_DELETE + id
+    ajaxDelete(url, "", function(response) {
+        var data = response;
+        if (data.result_code == 0) {
+            success(data.result_data)
+        } else {
+            fail(data.result_desc);
+        }
+    }, function(error) {
+        fail("网络错误");
+    });
+}
+
 function getConstantList(url, param, success, fail) {
     var url = base_server_url + url;
     ajaxPost(url, param, function(response) {

+ 1 - 1
VisualInspection/view/user/addDept.html

@@ -26,7 +26,7 @@
 
         <div class="form-group">
             <div class="col-sm-offset-2 col-sm-10">
-                <button type="button" class="btn btn-default" onclick="addDept()">添加</button>
+                <button type="button" id="dept_add_btn" class="btn btn-default" onclick="addDept()">添加</button>
             </div>
         </div>
     </form>

+ 3 - 1
VisualInspection_server/src/main/java/com/xintong/visualinspection/controller/DepartmentController.java

@@ -89,7 +89,9 @@ public class DepartmentController extends BaseController {
     @RequestMapping(value = "/get/all",method=RequestMethod.GET,produces="application/json;charset=UTF-8")
     public String getAllDept(){
         try{
-        	List<Organ> organs= departmentService.getOrgans(new Organ());
+        	Organ organ=new Organ();
+        	organ.setStatus(0);
+        	List<Organ> organs= departmentService.getOrgans(organ);
         	return returnResult(0, "获取成功", organs);
         }catch(Exception e){
         	throw new BusinessException(20001);

+ 1 - 1
VisualInspection_server/src/main/java/com/xintong/visualinspection/mapper/cluster/DepartmentMapper.xml

@@ -71,7 +71,7 @@
         update t_sys_organ
          set status=-1
         WHERE
-        id =#{id}
+        id =#{id} or parentid=#{id}
     </delete>