Blame view

web/WebMvc/wwwroot/productjs/base/SysFile.js 6.48 KB
赖素文 authored
1
2
3
4
let action = null;
let app = null;
let sendDataWhere = {
    targetId: null,
5
6
    targetTableName: null,
    eqName: null
赖素文 authored
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
};
layui.config({
    base: "/js/",
    version: 1
}).use(['system', 'ztree'], function () {
    var form = layui.form,
        $ = layui.jquery,
        system = layui.system,
        u = new system.u(),
        table = layui.table,
        rowData = null,
        areaName = "Base",
        controller = "SysFile";

    action = {
        deleteOptions: function () {
            var options = {
                url: `/${areaName}/${controller}/DelByIds`,
                keyId: "id"
            }
            return options;
        },

        queryOptions: function () {
            var options = {
                resetFrom: "form[lay-filter=listForm]",
                fromId: "listForm",
                urlExport: `/${areaName}/${controller}/Export`,
                urlQuery: `/${areaName}/${controller}/Load`,
                mainTable: app.data.tableIns
            }
            return options;
        },

        uploadOptions: function () {
            var options = {
                area: ["600px", "500px"],
                url: `/${areaName}/${controller}/Import`,
                fromFile: "#excelfile",
                content: $("#ImportData")
            }
            return options;
        },
        //内部不支持异步,成功返回true,失败返回false
        uploadBefore: function (checkStatus, parm) {
52
53
            if (sendDataWhere.targetId == null || sendDataWhere.targetId=="r_1") {
                layer.alert("请选择设备或者设备类型节点上传文件!", { icon: u.config.iconoError, shade: 0.4, time: u.config.errorTime });
赖素文 authored
54
55
56
57
                return false;
            }

            $("#ImportData [name='targetId']").val(sendDataWhere.targetId);
58
59
            $("#ImportData [name='targetTableName']").val(sendDataWhere.targetTableName);
            $("#ImportData [name='eqName']").val(sendDataWhere.eqName);      
赖素文 authored
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
            return true;
        },
        uploadSaveBefore: function (formData, selectRow, callBack) {
            if (callBack != null) callBack();
        },

        //所有动作成功之后
        actionSuccess: (falg) => {
            if (falg === "upload" || falg=="delete") {
                app.methods.initTable({ targetId: sendDataWhere.targetId });
            } else if (falg === "refresh") {
                app.data.tableIns.config.page.curr = 1;
                app.data.tableIns.reload("mainList", {});
            }
        }
    }

    app = {
        data: {
            cols: [[
                { checkbox: true, fixed: true },
                { field: "id", width: 100, title: "编码", hide: true },
82
                { field: 'fileName', width: 300, title: '文档名称' },
赖素文 authored
83
                {
赖素文 authored
84
                    field: 'url', width: 300, title: '文件下载', templet: function (d) {
赖素文 authored
85
86
                        var target = "_blank";
                        if (d.suffix.indexOf("pdf") > -1 || d.suffix.indexOf("docx") > -1 || d.suffix.indexOf("doc") > -1 || d.suffix.indexOf("xlsx") > -1) {
87
                            target = "_self";
赖素文 authored
88
                        }
89
                        return `<a href="../../Document/${d.url}"  target='${target}' style="color:cornflowerblue;text-decoration: underline;cursor:pointer;">${d.fileName}</a>`;
赖素文 authored
90
91
92
                    }
                },
                { field: 'size', width: 120, title: '文档大小' },
93
                { field: 'targetId', title: '设备Code', hide: true },
94
                { field: 'targetTableName', width: 120, title: '适用的设备', hide: true },
赖素文 authored
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
                { field: 'suffix', width: 100, title: '文档类型' },
                { field: 'remark', width: 120, title: '备注' },

                { field: 'createTime', width: 150, title: '创建时间' },
                { field: 'createBy', width: 100, title: '创建人' }
            ]],
            urlTable: `/${areaName}/${controller}/Load`,
            tableIns: null,
            tableInsDesc: null,

            tableElem: "mainList",

            tree: $("#tree"),
            treeObj: null,
            setting: {
                view: { selectedMulti: false },
                async: {
                    enable: true,
                    url: `/${areaName}/${controller}/GetTreeList`,
                    type: "get"
                },
                data: {
                    simpleData: {
                        enable: true,
                        idKey: "keys",
                        pIdKey: "parentId",
                        rootPId: ""
                    }
                },
                callback: {
                    onClick: function (event, treeId, treeNode) {
126
127
128
                        sendDataWhere.targetId = treeNode.keys;
                        sendDataWhere.targetTableName = treeNode.code;
                        sendDataWhere.eqName = treeNode.name;
赖素文 authored
129
130
131
132
133
134
135
136
137
138
                        app.methods.initTable(sendDataWhere);
                    },
                    onAsyncSuccess: function (event, treeId, treeNode, msg) {
                        app.data.treeObj.expandAll(true);
                    }
                }
            },
            selectOption: {
                //返回的数据 用于后续操作
                selectData: {
139
赖素文 authored
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
                }
            }
        },
        methods: {
            initTable: function (options) {
                var config = {

                };
                if (options != undefined) $.extend(config, options);
                let opt = {
                    cols: u.columnRecord(app.data.tableElem, app.data.cols),
                    elem: "#" + app.data.tableElem,
                    url: app.data.urlTable,
                    toolbar: '#toolbarTable',
                    where: config,
                    menuModule: controller
                }
                app.data.tableIns = u.initTable(opt);
            },
            initTree: function () {
                setTimeout(() => {
                    app.data.treeObj = $.fn.zTree.init(app.data.tree, app.data.setting);
赖素文 authored
163
                    app.data.tree.height($("div.layui-table-view").height() - 12);
赖素文 authored
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
                }, 50);
            },
            initFrom() {
                u.initSelect(app.data.selectOption);
            },
        },
        registerEvent: function () {

        },
        init: function () {
            app.registerEvent();
            app.methods.initTable();
            app.methods.initTree();
            app.methods.initFrom();
        }
    };
    app.init();
})