123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187 |
- $(function () {
- initialPage();
- getGrid();
- });
- function initialPage() {
- $(window).resize(function () {
- TreeGrid.table.resetHeight({height: $(window).height() - 100});
- });
- }
- function getGrid() {
- var colunms = TreeGrid.initColumn();
- var table = new TreeTable(TreeGrid.id, '../sys/dept/list', colunms);
- table.setExpandColumn(2);
- table.setIdField("deptId");
- table.setCodeField("deptId");
- table.setParentCodeField("parentId");
- table.setExpandAll(false);
- table.setHeight($(window).height() - 100);
- table.init();
- TreeGrid.table = table;
- }
- var TreeGrid = {
- id: "deptTable",
- table: null,
- layerIndex: -1
- };
- /**
- * 初始化表格的列
- */
- TreeGrid.initColumn = function () {
- var columns = [
- {field: 'selectItem', radio: true},
- {title: '部门ID', field: 'deptId', visible: false, align: 'center', valign: 'middle', width: '80px'},
- {title: '部门名称', field: 'name', align: 'center', valign: 'middle', sortable: true, width: '180px'},
- {title: '上级部门', field: 'parentName', align: 'center', valign: 'middle', sortable: true, width: '100px'},
- {title: '排序号', field: 'orderNum', align: 'center', valign: 'middle', sortable: true, width: '100px'}]
- return columns;
- };
- var setting = {
- data: {
- simpleData: {
- enable: true,
- idKey: "deptId",
- pIdKey: "parentId",
- rootPId: -1
- },
- key: {
- url: "nourl"
- }
- }
- };
- var ztree;
- var vm = new Vue({
- el: '#rrapp',
- data: {
- showList: true,
- title: null,
- dept: {
- parentName: null,
- parentId: 0,
- orderNum: 0
- },
- ruleValidate: {
- name: [
- {required: true, message: '部门名称不能为空', trigger: 'blur'}
- ]
- }
- },
- methods: {
- getDept: function () {
- //加载部门树
- $.get("../sys/dept/select", function (r) {
- ztree = $.fn.zTree.init($("#deptTree"), setting, r.deptList);
- var node = ztree.getNodeByParam("deptId", vm.dept.parentId);
- ztree.selectNode(node);
- vm.dept.parentName = node.name;
- })
- },
- add: function () {
- vm.showList = false;
- vm.title = "新增";
- vm.dept = {parentName: null, parentId: 0, orderNum: 0};
- vm.getDept();
- },
- update: function () {
- var deptId = getDeptId();
- if (deptId == null) {
- return;
- }
- $.get("../sys/dept/info/" + deptId, function (r) {
- vm.showList = false;
- vm.title = "修改";
- vm.dept = r.dept;
- vm.getDept();
- });
- },
- del: function () {
- var deptId = getDeptId();
- if (deptId == null) {
- return;
- }
- confirm('确定要删除选中的记录?', function () {
- $.ajax({
- type: "POST",
- url: "../sys/dept/delete",
- data: "deptId=" + deptId,
- success: function (r) {
- if (r.code === 0) {
- alert('操作成功', function () {
- vm.reload();
- });
- } else {
- alert(r.msg);
- }
- }
- });
- });
- },
- saveOrUpdate: function (event) {
- var url = vm.dept.deptId == null ? "../sys/dept/save" : "../sys/dept/update";
- $.ajax({
- type: "POST",
- url: url,
- contentType: "application/json",
- data: JSON.stringify(vm.dept),
- success: function (r) {
- if (r.code === 0) {
- alert('操作成功', function () {
- vm.reload();
- });
- } else {
- alert(r.msg);
- }
- }
- });
- },
- deptTree: function () {
- openWindow({
- title: "选择部门",
- area: ['300px', '450px'],
- content: jQuery("#deptLayer"),
- btn: ['确定', '取消'],
- btn1: function (index) {
- var node = ztree.getSelectedNodes();
- //选择上级部门
- vm.dept.parentId = node[0].deptId;
- vm.dept.parentName = node[0].name;
- layer.close(index);
- }
- });
- },
- reload: function () {
- vm.showList = true;
- TreeGrid.table.refresh();
- },
- handleSubmit: function (name) {
- handleSubmitValidate(this, name, function () {
- vm.saveOrUpdate()
- });
- },
- handleReset: function (name) {
- handleResetForm(this, name);
- }
- }
- });
- function getDeptId() {
- var selected = $('#deptTable').bootstrapTreeTable('getSelections');
- if (selected.length == 0) {
- alert("请选择一条记录");
- return false;
- } else {
- return selected[0].id;
- }
- }
|