Ext.QuickTips.init(); Ext.define('erp.controller.sys.SysInit', { extend: 'Ext.app.Controller', BaseUtil: Ext.create('erp.util.BaseUtil'), FormUtil: Ext.create('erp.util.FormUtil'), views:['sys.InitPortal','sys.ViewPort','sys.NavigationView','sys.Header','sys.base.EnterprisePortal','sys.base.ParamsetPortal','sys.base.DetailWindow','sys.base.FormPortal','core.trigger.DbfindTrigger','sys.base.ComboSetGrid','sys.base.SimpleActionGrid','sys.base.ModuleSetPortal','sys.init.InitImportGrid','core.form.ColorField','sys.base.Toolbar','core.form.MultiField','sys.base.ProgressBar'], init:function(){ var me=this; this.control({ 'button[itemId=sa_addButton]':{ click:function(btn,e){ var tabP=btn.up('tabpanel'),_activeTab=tabP.activeTab,caller=_activeTab.caller; if(caller){ var win = Ext.widget('detailwindow',{ title:_activeTab.title, items:[Ext.widget('formportal',{ region:'center', caller:caller, saveUrl:_activeTab.saveUrl, deleteUrl: _activeTab.deleteUrl, updateUrl: _activeTab.updateUrl, getIdUrl:_activeTab.getIdUrl, currentTab:_activeTab, emptyGrid:_activeTab.emptyGrid, saveSuccess:me.DetailUpdateSuccess, defaultValues:_activeTab.defaultValues })] }); win.showRelyBtn(win,btn); } } }, 'tab':{ activate:function(tab){ if(tab.card.xtype=='simpleactiongrid'){ if(!tab.card.columnRendered){ tab.card.getGridColumnsAndStore(tab.card,'common/singleGridPanel.action',tab.card.params); tab.card.columnRendered=true; }else tab.card.loadNewStore(tab.card,tab.card.params); } } }, 'navigationview':{ 'itemclick':function(dataview,record){ if(record.data.module=='progress') me.getProgress(); else if(record.data.module=='import') me.getInitPortal(); else me.getCheckPortal(); } }, 'modulesetportal>checkbox':{ 'change':function(field,value){ var obj=new Object(),property; if(field.id.indexOf('configs')>-1) property='data'; else property='enable'; obj[property]= typeof value === 'boolean' ? (value ? 1 : 0) : (field.xtype == 'radiogroup' ? Ext.Object.getValues(value)[0] : value); obj.id=field.id.split("-")[1]; me.saveParamSet(field, value,unescape(escape(Ext.JSON.encode(obj))),me.changeInputValue); } }, 'modulesetportal>radiogroup':{ 'change':function(field,value){ var obj=new Object(); obj.data= typeof value === 'boolean' ? (value ? 1 : 0) : (field.xtype == 'radiogroup' ? Ext.Object.getValues(value)[0] : value); obj.id=field.id.split("-")[1]; me.saveParamSet(field,value, unescape(escape(Ext.JSON.encode(obj))),me.changeInputValue); } }, 'modulesetportal>numberfield':{ 'blur':function(field){ if(field.originalValue!=field.value){ me.onSaveConfigs(field, field.value); } } }, 'modulesetportal>dbfindtrigger': { aftertrigger: function(field, record, dbfinds) { Ext.Array.each(dbfinds, function(d){ if(d.field == field.name) { field.setValue(record.get(d.dbGridField)); me.onSaveConfigs(field, field.value); } }); } }, 'modulesetportal>colorfield':{ change:function(field,newvalue){ me.onSaveConfigs(field,newvalue); } }, 'button[cls=x-dd-drop-ok-add]': { click: function(btn) { var f = btn.ownerCt, c = btn.config; f.insert(f.items.length - 1, { xtype: (c.dbfind ? 'dbfindtrigger' : 'textfield'), name: c.dbfind || c.code, readOnly: !c.dbfind && c.editable == 0, editable: c.editable == 1, clearable: true }); } }, 'button[itemId=initfinish]':{ click:function(btn){ Ext.Ajax.request({//拿到tree数据 url : basePath + 'ma/sysinit/finishInit.action', method:'post', callback : function(options,success,response){ showResult('提示','初始化完毕!'); // 跳转主页 window.location.href = basePath; } }); } } }); }, onSaveConfigs:function(field,value){ var obj=new Object(),value=value || field.value; obj.data= typeof value === 'boolean' ? (value ? 1 : 0) : (field.xtype == 'radiogroup' ? Ext.Object.getValues(value)[0] : value); obj.id=field.id.split("-")[1]; this.saveParamSet(field,value, unescape(escape(Ext.JSON.encode(obj))),this.changeInputValue); }, saveParamSet:function(field,value,update,fn){ var params=new Object(); if(field)params.argType=field.id.split("-")[0]; params.update=update; Ext.Ajax.request({ url: basePath + 'ma/sysinit/saveParamSet.action', params:params, method: 'POST', callback: function(opt, s, r) { if(r && r.status == 200) { var res = Ext.JSON.decode(r.responseText); fn.call(null,field,value); } } }); }, changeInputValue:function(field,value){ showResult('提示','修改成功!'); field.originalValue=value; }, getConfigs: function(caller, callback) { Ext.Ajax.request({ url: basePath + 'ma/setting/configs.action?caller=' + caller, method: 'GET', callback: function(opt, s, r) { if(r && r.status == 200) { var res = Ext.JSON.decode(r.responseText); callback.call(null, res); } } }); }, getProgress:function(){ var win= Ext.create('widget.window', { title: '初始化进展', header: { titlePosition: 2, titleAlign: 'center' }, closable: true, closeAction: 'hide', width:'80%', minWidth: 350, height: '60%', modal:true, tools: [{type: 'pin'}], layout: { type: 'border', //padding: 5 }, frame:true, items: [{ xtype:'panel', layout:'fit', region: 'center', items:[{ xtype:'dataview', id:'desktop', itemSelector:'div.normal', listeners:{ 'itemclick':function(view,record,item){ Ext.get(record.data.itemId+'-yearitem').child('.bottom').addCls('bottomOver'); var detailsPanel = Ext.getCmp('detailspanel'); var panel = Ext.widget('panel', { // Equivalent to Ext.create('widget.panel') title: record.data.desc, html:'