define(function (require) { return function () { var $grid1, $grid2, $form; // 输入搜索文本后点击回车按钮查询列表 function enterQueryGrid1(e) { if (e.keyCode === 13) { //如果按下回车键,就发出确认 var tmp = $(this).val(); $form.formSet({queryProperties: tmp}); queryGrid1(); } } function queryGrid1() { $grid1.reload({ url: api('/sys/sysApp/query'), mtype: 'POST', queryParams: $form.formGet() }, true); if ($grid2 != undefined) { $grid2.jqGrid("clearGridData"); } } function queryGrid2(rowid) { var row = $grid1.rowData(rowid); if (!row) { $.yvan.msg('请先选择一行数据'); return; } var queryData = {appId: row.appId};// 多个参数自行新增 $grid2.reload({ mtype: 'POST', url: api('/sys/sysAppVer/query'), queryParams: queryData }); } //删除 function deleteRow1() { var row = $grid1.rowData(); if (!row) { $.yvan.msg('请先选择一行数据'); return; } $.yvan.confirm('确定删除 [' + row.appName + "] ?", { yes: function (index) { $.yvan.ajax({ url: api('/sys/sysApp/delete'), data: { appId: row.appId, }, method: 'post', success: function (data) { $.yvan.msg(data.msg); $grid1.reload(); $grid2.reload(); } }); } }); } //删除 function deleteRow2() { var row = $grid2.rowData(); if (!row) { $.yvan.msg('请先选择一行数据'); return; } $.yvan.confirm('确定删除 [' + row.verCode + "] ?", { yes: function (index) { $.yvan.ajax({ url: api('/sys/sysAppVer/delete'), data: { verId: row.verId, }, method: 'post', success: function (data) { $.yvan.msg(data.msg); $grid2.reload(); } }); } }); } // 更新启停用状态 function updateStatus() { var row = $grid1.rowData(); if (!row) { $.yvan.msg('请先选择一行数据'); return; } var obj = {}; obj.name = row.appName; //自行替换此参数 obj.status = row.status; obj = setStatusMsg(obj); //返回rtnStatus $.yvan.confirm(obj.msg, { yes: function (index) { $.yvan.ajax({ method: 'post', url: api("/sys/sysApp/updateStatus"), //自行替换此参数 data: { appId: row.appId, //自行替换此参数 }, success: function (data) { $.yvan.msg(data.msg); $grid1.reload(); } }); } }); } function updateStatusVer() { var row = $grid2.rowData(); if (!row) { $.yvan.msg('请先选择一行数据'); return; } // TODO:发布和停用功能 alert('此功能暂未实现'); } //获取平台列表 function getSysList() { var _datas = []; _datas.push({ "id": "", "text": "全部", "selected": true }); $.yvan.ajax({ url: api('/sys/system/query'), data: {status: 1}, method: 'post', async: false, success: function (data) { if (data.data != null && data.data != undefined) { for (var i = 0; i < data.data.length; i++) { _datas.push({ "id": data.data[i].sysId, "text": data.data[i].sysName }) } } } }); return _datas; } // 搜索按钮 var queryToolbarTitle = '应用程序管理';// 自行替换此参数 var queryToolbar = { xtype: 'toolbar', title: queryToolbarTitle, items: [ { text: '查询', iconCls: 'fa fa-search', onClick: function () { queryGrid1(); } }, { text: '重置', iconCls: 'fa fa-refresh', onClick: function () { $form.formClear(); queryGrid1(); } }, { text: '关闭', iconCls: 'fa fa-times-circle', onClick: function () { App.closeMe(this); } } ] }; // 搜索条件 var queryForm = { onRender: function () { $form = $(this); }, xtype: 'form', items: [[ { xtype: 'textbox', label: '检索条件', name: 'queryProperties', prompt: '程序名称/文件名称/描述', labelWidth: 'auto', events: {keydown: enterQueryGrid1} }, { xtype: 'yvselect', label: '所属平台', name: 'sysId', labelWidth: 'auto', width: 280, data: getSysList(), onChange: function () { queryGrid1(); } }, { xtype: 'yvselect', label: '程序类型', name: 'appType', labelWidth: 'auto', width: 200, value: '', data: $.yvan.sysDict('appType').combowithAll(), onChange: function () { queryGrid1(); } }, { xtype: 'yvselect', label: '启用状态', name: 'status', labelWidth: 'auto', width: 180, data: $.yvan.sysDict('status').combowithAll(), onChange: function () { queryGrid1(); } } ]] }; // 列表1增删改查按钮 var gridToolbarTitle1 = '应用程序列表';// 自行替换此参数 var gridToolbar1 = { xtype: 'toolbar', title: gridToolbarTitle1, items: [ { text: '新增', iconCls: 'fa fa-plus-circle', onClick: function () { var dlg = require('/app/sys/app/dialogApp.js')({ isEdit: false, confirm: function () { $grid1.reload(); }, sysId: $form.formGet().sysId }); $.yvan.showDialog(this, dlg); } }, { text: '编辑', iconCls: 'fa fa-pencil-square-o', onClick: function () { var row = $grid1.rowData(); if (!row) { $.yvan.msg('选择一行数据'); return; } var dlg = require('/app/sys/app/dialogApp.js')({ isEdit: true, appId: row.appId, confirm: function () { $grid1.reload(); } }); $.yvan.showDialog(this, dlg); } }, { text: '启用/停用', iconCls: 'fa fa-circle-o-notch', onClick: function () { updateStatus(); } } ] }; // 列表2增删改查按钮 var gridToolbarTitle2 = '版本信息';// 自行替换此参数 var gridToolbar2 = { xtype: 'toolbar', title: gridToolbarTitle2, items: [ { text: '新增', iconCls: 'fa fa-plus-circle', onClick: function () { var row = $grid1.rowData(); if (!row) { $.yvan.msg('选择一行数据'); return; } var dlg = require('/app/sys/app/dialogAppVer.js')({ isEdit: false, appId: row.appId, confirm: function () { $grid2.reload(); } }); $.yvan.showDialog(this, dlg); } }, { text: '编辑', iconCls: 'fa fa-pencil-square-o', onClick: function () { var row = $grid2.rowData(); if (!row) { $.yvan.msg('选择一行数据'); return; } var dlg = require('/app/sys/app/dialogAppVer.js')({ isEdit: true, verId: row.verId, confirm: function () { $grid2.reload(); } }); $.yvan.showDialog(this, dlg); } }, { text: '发布/停用', iconCls: 'fa fa-circle-o-notch', onClick: function () { updateStatusVer(); } }, { text: '文件管理', iconCls: 'fa fa-circle-o-notch', onClick: function () { var row = $grid2.rowData(); if (!row) { $.yvan.msg('选择一行数据'); return; } var dlg = require('/app/sys/app/dialogAppFile.js')({ //isEdit: true, verId: row.verId, appId: row.appId, confirm: function () { $grid2.reload(); } }); $.yvan.showDialog(this, dlg); } }, { text: '删除', iconCls: 'fa fa-trash-o fa-lg', onClick: function () { deleteRow2(); } } ] }; //界面 return { north: { height: 90, split: true, border: false, items: [ queryToolbar, queryForm ] }, west: { width: "50%", border: false, split: true, items: { onRender: function () { $grid1 = $(this); queryGrid1(); }, xtype: 'grid', toolbar: gridToolbar1, pagination: false, autoSizeColumns: true, idField: 'appId', title: '应用程序列表', columns: [[ {field: 'appId', hidden: true}, {field: 'sysId', hidden: true}, {field: 'appCode', hidden: true}, {field: 'status', hidden: true}, {field: 'appName', title: '程序名称', width: 120}, {field: 'appType', title: '程序类型', align: 'center', width: 60, formatter: $.fn.fmatter.appType}, {field: 'appExe', title: '文件名', width: 80}, {field: 'sysName', title: '所属平台', width: 120}, {field: 'statusView', title: '启用状态', align: 'center', width: 50, formatter: $.fn.fmatter.statusView}, {field: 'verNum', title: '版本数', align: 'center', width: 60}, {field: 'timeUpdate', title: '更新时间', formatter: 'ts', hidden: true} ]], onSelectRow: function (rowid) { queryGrid2(rowid); } } }, center: { width: '50%', items: { onRender: function () { $grid2 = $(this); }, xtype: 'grid', toolbar: gridToolbar2, pagination: false, idField: 'verId', title: '版本信息列表', columns: [[ {field: 'verId', hidden: true}, {field: 'appId', hidden: true}, {field: 'guid', title: 'GUID', hidden: true}, {field: 'verCode', title: '版本编码'}, {field: 'verNo', title: '版本号', align: 'center'}, {field: 'verType', title: '版本类型', align: 'center'}, {field: 'status', title: '发布状态', align: 'center', formatter: $.fn.fmatter.status}, {field: 'fileNum', title: '文件数', align: 'center'}, {field: 'timeTest', title: '内测时间', formatter: $.fn.fmatter.ts, hidden: true}, {field: 'timePublish', title: '发布时间', formatter: $.fn.fmatter.ts, hidden: true} ]] } } }; }; });