懒羊羊
2023-08-30 1ac2bc1590406d9babec036e154d8d08f34a6aa1
提交 | 用户 | 时间
1ac2bc 1 layui.use(['ax', 'treeTable', 'func'], function () {
2     var $ = layui.$;
3     var $ax = layui.ax;
4     var treeTable = layui.treeTable;
5     var func = layui.func;
6
7     //table的初始化实例
8     var insTb;
9
10     /**
11      * 基础字典管理
12      */
13     var Dict = {
14         tableId: "dictTable"
15     };
16
17     /**
18      * 初始化表格的列
19      */
20     Dict.initColumn = function () {
21         return [
22             {type: 'checkbox'},
23             {field: 'name', align: "center", title: '字典名称'},
24             {field: 'code', align: "center", title: '字典编码'},
25             {field: 'description', align: "center", title: '字典的描述'},
26             {
27                 field: 'status', align: "center", title: '状态', templet: function (d) {
28                     if (d.status === 'ENABLE') {
29                         return "启用";
30                     } else {
31                         return "禁用";
32                     }
33                 }
34             },
35             {field: 'createTime', align: "center", sort: true, title: '创建时间'},
36             {align: 'center', toolbar: '#tableBar', title: '操作'}
37         ];
38     };
39
40     /**
41      * 点击查询按钮
42      */
43     Dict.search = function () {
44         var queryData = {};
45         queryData['condition'] = $("#condition").val();
46         Dict.initTable(Dict.tableId, queryData);
47     };
48
49     /**
50      * 弹出添加对话框
51      */
52     Dict.openAddDlg = function () {
53         func.open({
54             height: 650,
55             title: '添加字典',
56             content: Feng.ctxPath + '/dict/add?dictTypeId=' + $("#dictTypeId").val(),
57             tableId: Dict.tableId,
58             endCallback: function () {
59                 Dict.initTable(Dict.tableId);
60             }
61         });
62     };
63
64     /**
65      * 点击编辑
66      *
67      * @param data 点击按钮时候的行数据
68      */
69     Dict.openEditDlg = function (data) {
70         func.open({
71             height: 650,
72             title: '修改字典',
73             content: Feng.ctxPath + '/dict/edit?dictId=' + data.dictId,
74             tableId: Dict.tableId,
75             endCallback: function () {
76                 Dict.initTable(Dict.tableId);
77             }
78         });
79     };
80
81     /**
82      * 点击删除
83      *
84      * @param data 点击按钮时候的行数据
85      */
86     Dict.onDeleteItem = function (data) {
87         var operation = function () {
88             var ajax = new $ax(Feng.ctxPath + "/dict/delete", function (data) {
89                 Feng.success("删除成功!");
90                 Dict.search();
91             }, function (data) {
92                 Feng.error("删除失败!" + data.responseJSON.message + "!");
93             });
94             ajax.set("dictId", data.dictId);
95             ajax.start();
96         };
97         Feng.confirm("是否删除?", operation);
98     };
99
100     /**
101      * 渲染表格
102      */
103     Dict.initTable = function (dictId, data) {
104         return treeTable.render({
105             elem: '#' + dictId,
106             tree: {
107                 iconIndex: 1,           // 折叠图标显示在第几列
108                 idName: 'dictId',         // 自定义id字段的名称
109                 pidName: 'parentId',       // 自定义标识是否还有子节点的字段名称
110                 haveChildName: 'haveChild',  // 自定义标识是否还有子节点的字段名称
111                 isPidData: true         // 是否是pid形式数据
112             },
113             height: "full-98",
114             cols: Dict.initColumn(),
115             reqData: function (data, callback) {
116                 var ajax = new $ax(Feng.ctxPath + '/dict/list?dictTypeId=' + $("#dictTypeId").val(), function (res) {
117                     callback(res.data);
118                 }, function (res) {
119                     Feng.error("删除失败!" + res.responseJSON.message + "!");
120                 });
121                 ajax.start();
122             }
123         });
124     };
125
126     insTb = Dict.initTable(Dict.tableId);
127
128     // 搜索按钮点击事件
129     $('#btnSearch').click(function () {
130         Dict.search();
131     });
132
133     // 添加按钮点击事件
134     $('#btnAdd').click(function () {
135         Dict.openAddDlg();
136     });
137
138     // 导出excel
139     $('#btnExp').click(function () {
140         Dict.exportExcel();
141     });
142
143     // 关闭页面
144     $('#btnBack').click(function () {
145         window.location.href = Feng.ctxPath + "/dictType";
146     });
147
148     // 工具条点击事件
149     treeTable.on('tool(' + Dict.tableId + ')', function (obj) {
150         var data = obj.data;
151         var layEvent = obj.event;
152
153         if (layEvent === 'edit') {
154             Dict.openEditDlg(data);
155         } else if (layEvent === 'delete') {
156             Dict.onDeleteItem(data);
157         }
158     });
159 });