Blame view

Hh.Mes.T4/JavaScriptTemplate.tt 10.3 KB
赖素文 authored
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<#@ import namespace="System.Linq" #>
let action = null;
layui.config({
    base: "/js/",
    version: 1
}).use(['system'], function () {
    var form = layui.form,
        $ = layui.jquery,
        element = layui.element,
        table = layui.table,
        system = layui.system,
        sysU = new system.u(),
        sendDataWhere = null,
        sendDataDescWhere = null,
15
        fatherParam=null,
赖素文 authored
16
17
18
19
20
        areaName = "<#=AreaName #>",
        controllerName = "<#=ControllerName #>",
        app = null;

    action = {
21
        addOptions<#=IsDetail ? "Desc" : ""#>: function (flagKey, toolbarId, obj, $event) {
赖素文 authored
22
            var options = {
唐召明 authored
23
24
                fromId: "#modifyForm<#=IsDetail ? "Desc" : ""#> form",
                url: `/${areaName}/${controllerName}/Ins<#=IsDetail ? "Desc" : ""#>`,
赖素文 authored
25
26
27
                //sendDataWhere: null,
                //isAddWhereExtend: "arbitrarily",
                //mainTable: app.data.tableIns,
唐召明 authored
28
                submit: "submit(fromAdd<#=IsDetail ? "Desc" : ""#>)"
赖素文 authored
29
30
31
32
            }
            return options;
        },
33
        editOptions<#=IsDetail ? "Desc" : ""#>: function (data, sysU, toolbarId, obj, $event) {
赖素文 authored
34
            var options = {
唐召明 authored
35
36
37
                fromId: "#modifyForm<#=IsDetail ? "Desc" : ""#> form",
                url: `/${areaName}/${controllerName}/Upd<#=IsDetail ? "Desc" : ""#>`,
                submit: "submit(fromUpdate<#=IsDetail ? "Desc" : ""#>)"
赖素文 authored
38
39
40
41
            }
            return options;
        },
42
        deleteOptions<#=IsDetail ? "Desc" : ""#>: function (sysU, toolbarId, obj, $event) {
赖素文 authored
43
            var options = {
唐召明 authored
44
                url: `/${areaName}/${controllerName}/DelByIds<#=IsDetail ? "Desc" : ""#>`,
赖素文 authored
45
46
47
48
49
                keyId: "id"
            }
            return options;
        },
50
        //导出方法
赖素文 authored
51
52
        exportOptions: function () {
            var options = {
唐召明 authored
53
                fromId: "listForm<#=IsDetail ? "Desc" : ""#>",
赖素文 authored
54
                url: `/${areaName}/${controllerName}/Export`,
55
                isDefault: false,//false导出单表,true导出主明细表
56
57
                sendDataWhere:sendDataDescWhere,
                //fileName:"xxxx",
58
                //后台接口返回数据也要保持一致 response.Result=new{ head=x,body=x、footer=x}
59
                //如果只要导出明细 就写excelCols: { body: app.data.colsDesc}
赖素文 authored
60
61
62
63
64
65
66
67
                excelCols: {
                    head: app.data.cols,
                    body: app.data.colsDesc
                }
            }
            return options;
        },
唐召明 authored
68
        queryOptions<#=IsDetail ? "Desc" : ""#>: function () {
赖素文 authored
69
            var options = {
唐召明 authored
70
71
                resetFrom: "form[lay-filter=listForm<#=IsDetail ? "Desc" : ""#>]",
                fromId: "listForm<#=IsDetail ? "Desc" : ""#>",
赖素文 authored
72
                urlExport: `/${areaName}/${controllerName}/Export`,
唐召明 authored
73
                urlQuery: `/${areaName}/${controllerName}/Load<#=IsDetail ? "Desc" : ""#>`,
赖素文 authored
74
                sendDataWhere:{},
唐召明 authored
75
                mainTable: app.data.tableIns<#=IsDetail ? "Desc" : ""#>
赖素文 authored
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
            }
            return options;
        },
        /*rowClickOptions: function () {
            var options = {
                //是否主子表
                isDefault: true,
                targetTableId: app.data.tableElem,
                tabfilter: "tableTabBody",
                tabId: 2,
                customFn: app.methods.initTableDesc
            }
            return options;
        },*/

        uploadOptions: function () {
            var options = {
                url: `/${areaName}/${controllerName}/Import`,
                fromFile: "#excelfile",
                content: $("#ImportData")
            }
            return options;
        },
唐召明 authored
99
        addBefore<#=IsDetail ? "Desc" : ""#>: function (callBack) {
赖素文 authored
100
101
102
103
            //callBack是回调函数,如果editBefore有ajax 放在成功之后
            if (callBack != null) callBack();
        },
唐召明 authored
104
        addSaveBefore<#=IsDetail ? "Desc" : ""#>: function (data, callBack) {
赖素文 authored
105
106
            if (callBack != null) callBack();
        },
唐召明 authored
107
        editBefore<#=IsDetail ? "Desc" : ""#>: function (data, callBack) {
赖素文 authored
108
            //data.enable = data.enable.toString();
赖素文 authored
109
110
111
            form.val("modifyForm", data);
            if (callBack != null) callBack();
        },
唐召明 authored
112
        editSaveBefore<#=IsDetail ? "Desc" : ""#>: function (data, callBack) {
赖素文 authored
113
114
115
116
            if (callBack != null) callBack();
        },

        checkboxMethod: function (obj) {
117
            //if (!sysU.SetTableRadioCheckBefore()) return;
118
            if (fatherParam.page == "xxx") {
赖素文 authored
119
120
121
122
123
124
125
126
127
128
129
130
131
132
                var sendData = {

                };
                var ajaxConfig = {
                    data: sendData,
                    url: `${areaName}/${controllerName}/xxx`,
                    success: function (result) {
                        if (sysU.successBefore(result)) return false;
                        layer.msg(result.Message);
                    }
                };
                sysU.ajax(ajaxConfig);
            }
        },
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
        radioMethod: function (obj) {
            if (!sysU.SetTableRadioCheckBefore()) return;

            if (false) {
                var sendData = {
                    xyz: "xx",
                    checkeds: obj.checked,
                    keys: obj.data.keys,
                };
                if (sendData.keys == null || sendData.keys == "") {
                    layer.alert("tableRowOneClick:项目角色标识【keys】为空,请重新关闭后再操作,反复出现请联系管理员", { icon: 2, shadeClose: true, title: "提示" });
                    return false;
                }
                var ajaxConfig = {
                    data: sendData,
                    url: "/base/xxx/xxx",
                    success: function (result) {
                        if (sysU.successBefore(result)) return false;
                        layer.msg(result.Message);
                        sysU.refreshTable(app, sysU, null, "main");
                    }
                };
                sysU.ajax(ajaxConfig);
            }
        },
赖素文 authored
159
160
        //所有动作成功之后
        actionSuccess: (flag) => {
161
162
163
164
165
           var data  = null;
           if (flag.includes("Desc")) {
               data = sendDataDescWhere;
           }
           sysU.refreshTable(app, sysU, data, flag);
赖素文 authored
166
167
168
169
170
171
172
173
        },
        closeAfter: function (callBack) {
            if (callBack != null) callBack();
        }
    }

    app = {
        data: {
唐召明 authored
174
            cols<#=IsDetail ? "Desc" : ""#>: [[
赖素文 authored
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
                { checkbox: true, fixed: true },
<# if(Data.Any(x => x.Key.Equals("id", StringComparison.OrdinalIgnoreCase))) #>
<# { #>
                { field: "id", width: 80, hide: true, title: "Id" },
<# } #>
<# if(Data.Any(x => x.Key.Equals("keys", StringComparison.OrdinalIgnoreCase))) #>
<# { #>
                { field: "keys", width: 80, hide: true, title: "Keys" },
<# } #>
<# foreach(var item in Data) #>
<# { #>
<# if (item.Key.Equals("Id", StringComparison.OrdinalIgnoreCase) || item.Key.Equals("Keys", StringComparison.OrdinalIgnoreCase)) #>
<# { continue; } #>
<# if(!string.IsNullOrWhiteSpace(item.Value)) #>
<# { #>
                { field: "<#=item.Key #>", width: 150, title: "<#=item.Value #>" },
<# }else{ #>
                { field: "<#=item.Key #>", width: 150, title: "<#=item.Key #>" },
<# } #>
<# } #>
            ]],
            colsDesc:null,
            tableIns: null,
            tableElem: "mainList",
            tableInsDesc: null,
            tableElemDesc: "mainListDesc",

            //下拉框配置
            selectOption: {
                //station: {
                //    SelType: "FromUrl",
                //    SelFrom: `/${areaName}/${controllerName}/StationLineSelect`,
                //    SelLabel: "workStationName",
                //    SelValue: "workStationCode",
                //    OptGroup: true,
                //    Dom: [$("[name='stationCode']")]
                //},
                //返回的数据 用于后续操作
                selectData: {

                }
HuXiYu authored
216
217
218
219
220
221
222
223
224
225
226
227
228
229
            },
            //下拉框配置枚举
            selectOptionEnum: {
                 type: {
                    SelValue: "value",     //key or value
                    SelFrom: "dataSource", //固定
                    Dom: [$("select[name='xxx']")],
                    dataSource: window.top.Enumxxx,
                },
                //返回的数据 用于后续操作
                selectData: {

                }
            },
赖素文 authored
230
231
        },
        methods: {
唐召明 authored
232
            initTable<#=IsDetail ? "Desc" : ""#>: function (opt) {
赖素文 authored
233
234
235
                var config = {};
                if (opt != undefined) $.extend(config, opt);
                let options = {
唐召明 authored
236
237
238
                    elem: "#" + app.data.tableElem<#=IsDetail ? "Desc" : ""#>,
                    url: `/${areaName}/${controllerName}/Load<#=IsDetail ? "Desc" : ""#>`,
                    cols: sysU.columnRecord(app.data.tableElem<#=IsDetail ? "Desc" : ""#>, app.data.cols<#=IsDetail ? "Desc" : ""#>),
赖素文 authored
239
240
                    toolbar: '#toolbarTable',
                    where: config, 
241
                    //height: "full-50",//如果是主明细页签,列表主体高度要设置,否则分页导航不直观展示
赖素文 authored
242
243
244
245
246
247
248
249
250
251
252
                    doneExtend: function (res, obj) {

                    }
                }
                app.data.tableIns = sysU.initTable(options);
            },

            initSelectTable: function () {
              var opt1 = {
                    elem: ".productCode",
                    checkedKey: "productCode",
253
                    doneKey: {   
赖素文 authored
254
255
256
257
258
259
260
261
262
263
                        key: "productCode",
                        lableValue: "productName"
                    },
                    searchKey: "productCode",
                    searchName: "产品编码"
                };
               sysU.initSelectProduct(opt1);
            },

            initFrom() {
HuXiYu authored
264
265
                //sysU.initSelect(app.data.selectOption);
266
                //sysU.tabClick("tableTabBody");
HuXiYu authored
267
                //sysU.initSelecteByEnum(app.data.selectOptionEnum);
赖素文 authored
268
269
270
271
272
273
            }
        },
        registerEvent: function () {

        },
        init: function () {
274
            app.methods.initFrom();
唐召明 authored
275
            //var sendDataWhere = form.val("listForm<#=IsDetail ? "Desc" : ""#>")
276
            //fatherParam = "".getAllUrlParameters();
唐召明 authored
277
            app.methods.initTable<#=IsDetail ? "Desc" : ""#>();
赖素文 authored
278
279
280
281
282
            app.registerEvent();
        }
    };
    app.init();
});