<%-- Name: 主JS界面 Author: yubaolee --%> <%@ CodeTemplate Language="C#" TargetLanguage="C#" Debug="False" Encoding="utf-8" Description="添加模块" %> <%@ Property Name="ModuleName" Type="String" Category="Context" Description="模块名称" %> <%@ Property Name="SourceTable" Type="SchemaExplorer.TableSchema" Category="Context" Description="连接的数据库" %> <%@ Map Name="CSharpAlias" Src="System-CSharpAlias" Description="System to C# Type Map" %> <%@ Assembly Name="SchemaExplorer" %> <%@ Import Namespace="SchemaExplorer" %> <%@ Assembly Src="Util.cs" %> <%@ Import Namespace="Util" %> layui.config({ base: "/js/" }).use(['form', 'laydate', 'ztree', 'layer', 'jquery', 'table', 'droptree', 'openauth', 'utils'], function () { var form = layui.form, layer = layui.layer, laydate = layui.laydate, $ = layui.jquery; var table = layui.table; var openauth = layui.openauth; var toplayer = (top == undefined || top.layer === undefined) ? layer : top.layer; //顶层的LAYER $("#menus").loadMenus("<%=ModuleName%>"); <% foreach (ColumnSchema column in this.SourceTable.Columns) { if(CSharpAlias[column.SystemType.FullName] == "System.DateTime") { %> laydate.render({ elem: '#<%=column.Name%>' }); <%} }%> var initVal = { //初始化的值 <% foreach (ColumnSchema column in this.SourceTable.Columns) { if(CSharpAlias[column.SystemType.FullName] == "bool") { %> <%=column.Name%>: false, <%}else if(CSharpAlias[column.SystemType.FullName] == "int" ) {%> <%=column.Name%>: 0, <%}else if(CSharpAlias[column.SystemType.FullName] == "System.DateTime") {%> <%=column.Name%>: new Date().toISOString().split('T')[0], <%} else {%> <%=column.Name%>: '', <%} }%> } //加载表头 $.getJSON('/<%=ModuleName%>s/Load', { page: 1, limit: 1 }, function (data) { var columns = data.columnFields.filter(u => u.IsList ===true).map(function (e) { return { field: e.ColumnName, title: e.Remark }; }); columns.unshift({ type: 'checkbox', fixed: 'left' }); table.render({ elem: '#mainList', page: true, url: '/<%=ModuleName%>s/Load', cols: [columns] , response: { statusCode: 200 //规定成功的状态码,默认:0 } }); }); //主列表加载,可反复调用进行刷新 var config = {}; //table的参数,如搜索key,点击tree的id var mainList = function(options) { if (options != undefined) { $.extend(config, options); } table.reload('mainList', { url: '/<%=ModuleName%>s/Load', where: config , response: { statusCode: 200 //规定成功的状态码,默认:0 } }); }; mainList(); //添加(编辑)对话框 var editDlg = function () { var show = function (update, data) { var title = update ? "编辑信息" : "添加"; layer.open({ title: title, area: ["500px", "400px"], type: 1, content: $('#divEdit'), success: function () { if(data == undefined){ form.val("formEdit", initVal); }else{ form.val("formEdit", data); } }, end: mainList }); var url = "/<%=ModuleName%>s/Add"; if (update) { url = "/<%=ModuleName%>s/Update"; } //提交数据 form.on('submit(formSubmit)', function (data) { $.post(url, data.field, function (data) { layer.msg(data.Message); }, "json"); return false; }); } return { add: function () { //弹出添加 show(false); }, update: function (data) { //弹出编辑框 show(true, data); } }; }(); //监听表格内部按钮 table.on('tool(list)', function (obj) { var data = obj.data; if (obj.event === 'detail') { //查看 layer.msg('ID:' + data.Id + ' 的查看操作'); } }); //监听页面主按钮操作 var active = { btnDel: function () { //批量删除 var checkStatus = table.checkStatus('mainList') , data = checkStatus.data; openauth.del("/<%=ModuleName%>s/Delete", data.map(function (e) { return e.Id; }), mainList); } , btnAdd: function () { //添加 editDlg.add(); } , btnEdit: function () { //编辑 var checkStatus = table.checkStatus('mainList') , data = checkStatus.data; if (data.length != 1) { layer.msg("请选择编辑的行,且同时只能编辑一行"); return; } editDlg.update(data[0]); } , search: function () { //搜索 mainList({ key: $('#key').val() }); } , btnRefresh: function () { mainList(); } }; $('.toolList .layui-btn').on('click', function () { var type = $(this).data('type'); active[type] ? active[type].call(this) : ''; }); //监听页面主按钮操作 end })