/** * Company.js * 单位管理界面 * emial: yaoqiang@chinausky.com * create: 2018-12-08 */ Ext.Loader.setConfig({ enabled: true }); Ext.Loader.setPath('Ext.ux', '../../res/extjs/examples/ux'); Ext.require([ 'Ext.grid.*', 'Ext.data.*', 'Ext.ux.RowExpander', 'Ext.selection.CheckboxModel' ]); var sm = Ext.create('Ext.selection.CheckboxModel'); Ext.define('Company',{ extend: 'Ext.data.Model', fields: [ {name:'UQ_COMPANY_ID', type:'string'}, {name:'I_ORDER_IDX', type:'int'}, {name:'UQ_PARENT_ID', type:'string'}, {name:'UQ_PARENT_COMPANY_ID', type:'string'}, {name:'V_COMPANY_NAME', type:'string'}, {name:'V_COMPANY_ADDRESS_0', type:'string'}, {name:'V_COMPANY_ADDRESS_1', type:'string'}, {name:'V_COMPANY_ADDRESS_2', type:'string'}, {name:'E_STATUS', type:'string'}, {name:'UQ_ADMIN_ID', type:'string'}, {name:'I_VERSION', type:'int'}, {name:'D_STORETIME', type:'string'}, ] }); Ext.onReady(function(){ var baseUrl = document.getElementById('basePath').value; var theme = document.getElementById('theme').value; var chkIcon = '' var unchkIcon = '' var countPerPage = 20; var maxHeight = 10000; var chkBoolean = function(flag) { if(flag) return chkIcon; return unchkIcon; } var states1 = Ext.create('Ext.data.Store', { fields: ['status', 'name'], data : [ // {"status":-1, "name":"全选"}, {"status":"待开通", "name":"待开通"}, {"status":"已开通", "name":"已开通"}, {"status":"已锁定", "name":"已锁定"}, {"status":"注销", "name":"注销"}, ] }); var clear_append_form = function (){ Ext.getCmp('fa_V_COMPANY_NAME').setValue(""); Ext.getCmp('fa_UQ_PARENT_ID').setValue(""); //Ext.getCmp('fa_UQ_PARENT_COMPANY_ID').setValue(""); Ext.getCmp('fa_V_COMPANY_ADDRESS_0').setValue(""); Ext.getCmp('fa_V_COMPANY_ADDRESS_1').setValue(""); Ext.getCmp('fa_V_COMPANY_ADDRESS_2').setValue(""); //Ext.getCmp('fa_E_STATUS').setValue(); Ext.getCmp('fa_UQ_ADMIN_ID').setValue(""); Ext.getCmp('fa_V_COMMENT').setValue(""); Ext.getCmp('CompanyListPanel').getStore().reload(); } var myStore = Ext.create('Ext.data.Store', { model: 'Company', pageSize: countPerPage, proxy: { type: 'ajax', url: baseUrl+'iot/company/getList', reader: { type: 'json', root: 'RESULT', totalProperty: 'totalCount' } }, remoteSort: true }); var AppendForm = Ext.create('Ext.form.Panel', { id: 'CompanyAppendForm', labelWidth: 55, url: baseUrl+'iot/company/append', defaultType: 'textfield', bodyPadding: 15, items: [{ fieldLabel:'单位名称', id: 'fa_V_COMPANY_NAME', name:'V_COMPANY_NAME', maxLength:20, maxLengthText:'长度不得超出{0}', anchor:'75%' },{ fieldLabel:'上级部门ID', id: 'fa_UQ_PARENT_ID', name: 'UQ_PARENT_ID', maxLength: 250, maxLengthText:'长度不得超出{0}', anchor:'95%' }, // { // fieldLabel:'所属单位ID', // id: 'fa_UQ_PARENT_COMPANY_ID', // name: 'UQ_PARENT_COMPANY_ID', // maxLength: 250, // maxLengthText:'长度不得超出{0}', // anchor:'95%' // }, { fieldLabel:'单位地址1', id: 'fa_V_COMPANY_ADDRESS_0', name: 'V_COMPANY_ADDRESS_0', maxLength: 250, maxLengthText:'长度不得超出{0}', anchor:'95%' },{ fieldLabel:'单位地址2', id: 'fa_V_COMPANY_ADDRESS_1', name: 'V_COMPANY_ADDRESS_1', maxLength: 250, maxLengthText:'长度不得超出{0}', anchor:'95%' },{ fieldLabel:'单位地址3', id: 'fa_V_COMPANY_ADDRESS_2', name: 'V_COMPANY_ADDRESS_2', maxLength: 250, maxLengthText:'长度不得超出{0}', anchor:'95%' }, // { // fieldLabel:'当前状态', // id: 'fa_E_STATUS', // name:'E_STATUS', // maxLength: 7, // maxLengthText:'长度不得超出{0}', // anchor:'50%' // }, { fieldLabel:'信息录入人ID', id: 'fa_UQ_ADMIN_ID', name:'UQ_ADMIN_ID', maxLength: 30, maxLengthText:'长度不得超出{0}', anchor:'95%' },{ fieldLabel:'新增单位说明', id: 'fa_V_COMMENT', name:'V_COMMENT', xtype: 'textareafield', maxLength: 250, maxLengthText:'长度不得超出{0}', anchor:'100%' },{ id:'fa_queryJson', name:'queryJson', hidden:true }], buttons: [{ text: '提交', iconCls:'ok_btn', handler: function() { var form = this.up('form').getForm(); if (form.isValid()) { var query = new Object(); query.V_COMPANY_NAME = Ext.getCmp('fa_V_COMPANY_NAME').getValue(); query.UQ_PARENT_ID = Ext.getCmp('fa_UQ_PARENT_ID').getValue(); //query.UQ_PARENT_COMPANY_ID = Ext.getCmp('fa_UQ_PARENT_COMPANY_ID').getValue(); query.V_COMPANY_ADDRESS_0 = Ext.getCmp('fa_V_COMPANY_ADDRESS_0').getValue(); query.V_COMPANY_ADDRESS_1 = Ext.getCmp('fa_V_COMPANY_ADDRESS_1').getValue(); query.V_COMPANY_ADDRESS_2 = Ext.getCmp('fa_V_COMPANY_ADDRESS_2').getValue(); // query.E_STATUS = Ext.getCmp('fa_E_STATUS').getValue(0); query.UQ_ADMIN_ID = Ext.getCmp('fa_UQ_ADMIN_ID').getValue(); query.V_COMMENT = Ext.getCmp('fa_V_COMMENT').getValue(); var jsonstr = Ext.JSON.encode(query); Ext.getCmp('fa_queryJson').setValue(jsonstr); form.submit({ method:'post', success: function(form, action) { Ext.Msg.alert('操作成功', '新增单位已保存', function(btn,txt){ clear_append_form(); }); }, failure: function(form, action) { Ext.Msg.alert('操作失败', action.Msg , function(btn,txt){ clear_append_form(); }); } }); } } },{ text: '关闭', iconCls: 'cancel_btn', handler: function() { this.up('window').hide(); } }] }); var appendwin = function(){ Ext.create('Ext.window.Window', { title: '新增单位', height: 450, width: 400, layout: 'fit', items: AppendForm, closeAction: 'hide' }).show(); } //筛选 var states2 = Ext.create('Ext.data.Store', { fields: ['status', 'name'], data : [ // {"status":-1, "name":"全选"}, {"status":0, "name":"待开通"}, {"status":1, "name":"已开通"}, {"status":2, "name":"已锁定"}, {"status":3, "name":"注销"}, ] }); var clear_filter_form = function(){ Ext.getCmp('ff_V_COMPANY_NAME').setValue(""); Ext.getCmp('ff_V_COMPANY_ADDRESS_0').setValue(""); // Ext.getCmp('ff_UQ_PARENT_ID').setValue(""); // Ext.getCmp('ff_V_COMPANY_ADDRESS_1').setValue(""); // Ext.getCmp('ff_V_COMPANY_ADDRESS_2').setValue(""); // Ext.getCmp('ff_E_STATUS').setValue(""); Ext.getCmp('ff_UQ_ADMIN_ID').setValue(""); // Ext.getCmp('ff_V_COMMENT').setValue(""); } // var states = Ext.create('Ext.data.Store', { fields: ['status', 'name'], data : [ {"status":-1, "name":"全选"}, {"status":0, "name":"无效"}, {"status":1, "name":"有效"} ] }); var FilterWin = Ext.create('Ext.form.Panel', { id: 'CompanyFilterForm', labelWidth: 55, defaultType: 'textfield', bodyPadding: 15, items: [{ fieldLabel:'单位名称', id: 'ff_V_COMPANY_NAME', name:'V_COMPANY_NAME', maxLength:20, maxLengthText:'长度不得超出{0}', value : document.getElementById('companyName').value, anchor:'75%' }, // { // fieldLabel:'当前状态', // id:'ff_E_STATUS', // name:'E_STATUS', // xtype:'combo', // store:states2, // displayField : 'name', // valueField : 'status', // value : 0, // editable : false // }, { fieldLabel:'单位地址1', id: 'ff_V_COMPANY_ADDRESS_0', name: 'V_COMPANY_ADDRESS_0', maxLength: 250, maxLengthText:'长度不得超出{0}', value : document.getElementById('companyAddress0').value, anchor:'95%' },{ fieldLabel:'信息录入人ID', id: 'ff_UQ_ADMIN_ID', name:'UQ_ADMIN_ID', maxLength: 30, maxLengthText:'长度不得超出{0}', value : document.getElementById('companyAdminId').value, anchor:'95%' },{ id:'ff_queryJson', name:'queryJson', hidden:true }], buttons: [{ text: '提交', iconCls:'ok_btn', handler: function() { var form = this.up('form').getForm(); if (form.isValid()) { var query = new Object(); if(Ext.getCmp('ff_V_COMPANY_NAME').getValue().length>0) query.V_COMPANY_NAME = Ext.getCmp('ff_V_COMPANY_NAME').getValue(); if(Ext.getCmp('ff_V_COMPANY_ADDRESS_0').getValue().length>0) query.V_COMPANY_ADDRESS_0 = Ext.getCmp('ff_V_COMPANY_ADDRESS_0').getValue(); // if(Ext.getCmp('ff_E_STATUS').getValue()=="待开通"){ // query.E_STATUS=0; // } // if(Ext.getCmp('ff_E_STATUS').getValue()=="已开通"){ // query.E_STATUS=1; // } // if(Ext.getCmp('ff_E_STATUS').getValue()=="已锁定"){ // query.E_STATUS=2; // } // if(Ext.getCmp('ff_E_STATUS').getValue()=="注销"){ // query.E_STATUS=3; // } // if(Ext.getCmp('ff_E_STATUS').getValue().length>0) //query.E_STATUS = Ext.getCmp('ff_E_STATUS').getValue(); if(Ext.getCmp('ff_UQ_ADMIN_ID').getValue().length>0) query.UQ_ADMIN_ID = Ext.getCmp('ff_UQ_ADMIN_ID').getValue(); var jsonstr = Ext.JSON.encode(query); myStore.getProxy().extraParams = { queryJson : jsonstr }; Ext.getCmp('CompanyListPageToolbar').moveFirst(); Ext.getCmp('companyName').setValue(query.V_COMPANY_NAME); Ext.getCmp('companyAddress0').setValue(query.V_COMPANY_ADDRESS_0); Ext.getCmp('companyAdminId').setValue(query.UQ_ADMIN_ID); // myStore.reload(); clear_filter_form(); this.up('window').hide(); } } },{ text: '关闭', iconCls: 'cancel_btn', handler: function() { this.up('window').hide(); } }] }); var filterwin = function() { Ext.create('Ext.window.Window',{ title: '单位筛选', height: 250, width: 350, layout: 'fit', items: FilterWin, closeAction: 'hide' }).show(); } var clear_modify_form = function (){ Ext.getCmp('fm_V_COMPANY_NAME').setValue(""); // Ext.getCmp('fm_UQ_PARENT_ID').setValue(""); Ext.getCmp('fm_V_COMPANY_ADDRESS_0').setValue(""); // Ext.getCmp('fm_V_COMPANY_ADDRESS_1').setValue(""); // Ext.getCmp('fm_V_COMPANY_ADDRESS_2').setValue(""); // Ext.getCmp('fm_I_VERSION').setValue(""); Ext.getCmp('fm_E_STATUS').setValue(-1); Ext.getCmp('fm_UQ_ADMIN_ID').setValue(""); Ext.getCmp('fm_V_COMMENT').setValue(""); Ext.getCmp('CompanyListPanel').getStore().reload(); } var ModifyForm = Ext.create('Ext.form.Panel', { id: 'CompanyEditForm', labelWidth: 55, url: baseUrl+'iot/company/update', defaultType: 'textfield', bodyPadding: 15, items: [{ fieldLabel:'单位名称', id: 'fm_V_COMPANY_NAME', name:'V_COMPANY_NAME', maxLength:20, maxLengthText:'长度不得超出{0}', anchor:'75%' }, // { // fieldLabel:'上级部门ID', // id: 'fm_UQ_PARENT_ID', // name: 'UQ_PARENT_ID', // maxLength: 250, // maxLengthText:'长度不得超出{0}', // anchor:'95%' // }, { fieldLabel:'单位地址1', id: 'fm_V_COMPANY_ADDRESS_0', name: 'V_COMPANY_ADDRESS_0', maxLength: 250, maxLengthText:'长度不得超出{0}', anchor:'95%' }, // { // fieldLabel:'单位地址2', // id: 'fm_V_COMPANY_ADDRESS_1', // name: 'V_COMPANY_ADDRESS_1', // maxLength: 250, // maxLengthText:'长度不得超出{0}', // anchor:'95%' // },{ // fieldLabel:'单位地址3', // id: 'fm_V_COMPANY_ADDRESS_2', // name: 'V_COMPANY_ADDRESS_2', // maxLength: 250, // maxLengthText:'长度不得超出{0}', // anchor:'95%' // }, { fieldLabel:'当前状态', id:'fm_E_STATUS', name:'E_STATUS', xtype:'combo', store:states1, displayField : 'name', valueField : 'status', value : -1, editable : false // fieldLabel:'当前状态', // id: 'fm_E_STATUS', // name:'E_STATUS', // maxLength: 7, // maxLengthText:'长度不得超出{0}', // anchor:'50%' },{ fieldLabel:'信息录入人ID', id: 'fm_UQ_ADMIN_ID', name:'UQ_ADMIN_ID', maxLength: 250, maxLengthText:'长度不得超出{0}', anchor:'95%' },{ fieldLabel:'修改说明', id: 'fm_V_COMMENT', name: 'V_COMMENT', xtype: 'textareafield', maxLength: 250, maxLengthText:'长度不得超出{0}', anchor:'100%' },{ id: 'fm_UQ_COMPANY_ID', name:'UQ_COMPANY_ID', hidden:true },{ id:'fm_queryJson', name:'queryJson', hidden:true }], buttons: [{ text: '修改', iconCls:'ok_btn', handler: function() { var form = this.up('form').getForm(); if (form.isValid()) { var query = new Object(); query.UQ_COMPANY_ID = Ext.getCmp('fm_UQ_COMPANY_ID').getValue(); query.V_COMPANY_NAME = Ext.getCmp('fm_V_COMPANY_NAME').getValue(); // query.UQ_PARENT_ID = Ext.getCmp('fm_UQ_PARENT_ID').getValue(); query.V_COMPANY_ADDRESS_0 = Ext.getCmp('fm_V_COMPANY_ADDRESS_0').getValue(); // query.V_COMPANY_ADDRESS_1 = Ext.getCmp('fm_V_COMPANY_ADDRESS_1').getValue(); // query.V_COMPANY_ADDRESS_2 = Ext.getCmp('fm_V_COMPANY_ADDRESS_2').getValue(); if(Ext.getCmp('fm_E_STATUS').getValue()=="待开通"){ query.E_STATUS=0; } if(Ext.getCmp('fm_E_STATUS').getValue()=="已开通"){ query.E_STATUS=1; } if(Ext.getCmp('fm_E_STATUS').getValue()=="已锁定"){ query.E_STATUS=2; } if(Ext.getCmp('fm_E_STATUS').getValue()=="注销"){ query.E_STATUS=3; } // query.E_STATUS = Ext.getCmp('fm_E_STATUS').getValue(); query.UQ_ADMIN_ID = Ext.getCmp('fm_UQ_ADMIN_ID').getValue(); query.V_COMMENT = Ext.getCmp('fm_V_COMMENT').getValue(); var jsonstr = Ext.JSON.encode(query); Ext.getCmp('fm_queryJson').setValue(jsonstr); form.submit({ method:'post', success: function(form, action) { Ext.Msg.alert('操作成功', '已修改', function(btn,txt){ clear_modify_form(); }); }, failure: function(form, action) { Ext.Msg.alert('操作失败', action.Msg , function(btn,txt){ clear_modify_form(); }); } }); this.up('window').hide(); } } },{ text: '关闭', iconCls: 'cancel_btn', handler: function() { this.up('window').hide(); } }] }); var modifywin = function(){ Ext.create('Ext.window.Window', { title: '修改单位', height: 350, width: 400, layout: 'fit', items: ModifyForm, closeAction: 'hide' }).show(); } var chk_sm = function() { if(sm.getCount()==1){ modifywin(); var selected = sm.getSelection( ); // var estatus = parseInt(selected[0].raw.E_STATUS); Ext.getCmp('fm_UQ_COMPANY_ID').setValue(selected[0].raw.UQ_COMPANY_ID); Ext.getCmp('fm_V_COMPANY_NAME').setValue(selected[0].raw.V_COMPANY_NAME); Ext.getCmp('fm_V_COMPANY_ADDRESS_0').setValue(selected[0].raw.V_COMPANY_ADDRESS_0); // Ext.getCmp('fm_V_COMPANY_ADDRESS_1').setValue(selected[0].raw.V_COMPANY_ADDRESS_1); // Ext.getCmp('fm_V_COMPANY_ADDRESS_2').setValue(selected[0].raw.V_COMPANY_ADDRESS_2); Ext.getCmp('fm_E_STATUS').setValue(selected[0].raw.E_STATUS); Ext.getCmp('fm_UQ_ADMIN_ID').setValue(selected[0].raw.UQ_ADMIN_ID); // Ext.getCmp('fm_I_VERSION').setValue(selected[0].raw.I_VERSION); }else{ Ext.Msg.alert('请先选择','请先选择一条记录,再点击修改'); } } var clear_filter_form1 = function(){ Ext.getCmp('fc_V_COMPANY_NAME').setValue(""); Ext.getCmp('fc_V_COMPANY_ADDRESS_0').setValue(""); Ext.getCmp('fc_E_STATUS').setValue(-1); Ext.getCmp('fc_UQ_ADMIN_ID').setValue(""); Ext.getCmp('fc_V_COMMENT').setValue(""); // Ext.getCmp('PermissionListPanel').getStore().reload(); } var deletewin = function() { if(sm.getCount()>=1){ // var companyname = selected[0].raw.V_COMPANY_NAME; // window.alert(selected[0].raw); var query = new Object(); var list = new Array(); for (var i=0;i