Ext.QuickTips.init(); Ext.define('erp.controller.plm.test.CheckBase', { extend: 'Ext.app.Controller', FormUtil: Ext.create('erp.util.FormUtil'), BaseUtil: Ext.create('erp.util.BaseUtil'), GridUtil: Ext.create('erp.util.GridUtil'), views:[ 'plm.test.Check','core.form.Panel','core.grid.Panel2','core.grid.Panel5', 'core.button.Submit','core.button.ResSubmit','core.button.Close', 'core.trigger.TextAreaTrigger','core.trigger.DbfindTrigger','core.form.YnField','core.button.ChangeHandler' ], init:function(){ var me=this; this.control({ 'erpSubmitButton': { afterrender: function(btn){ var code = Ext.getCmp('cbd_statuscode').getValue(); if(code!='TESTING'){ btn.hide(); } }, beforerender:function(btn){ btn.formBind=true; }, click: function(btn){ var handman=Ext.getCmp('cbd_handman').value,result=Ext.getCmp('cbd_result').value; if(result=='NG' && (handman == null || handman=='')){ showMessage('提示','NG状态请先选择对应处理人再提交!',1000); } else me.onUpdate(this); } }, 'erpResSubmitButton':{ click:function(btn){ me.FormUtil.onResSubmit(Ext.getCmp('cbd_id').getValue()); }, afterrender: function(btn){ var code = Ext.getCmp('cbd_statuscode').getValue(); if(code=='TESTING'){ btn.hide(); } }, }, 'erpCloseButton':{ afterrender:function(btn){ /*var handmanid=Ext.getCmp('cld_newhandmanid').getValue(); if(Ext.getCmp('cld_statuscode').value!='HANDED'){ if(handmanid==emid){ Ext.getCmp('cld_newhanddate').setValue(Ext.Date.format(new Date(), 'Y-m-d H:i:s')); if(Ext.getCmp('cld_statuscode').value!='HANDED'){ Ext.getCmp('cld_handdescription').setValue(null); Ext.getCmp('cld_handresult').setValue(null); } }else { Ext.getCmp('cld_newtestdate').setValue(Ext.Date.format(new Date(), 'Y-m-d H:i:s')); Ext.getCmp('cld_newtestman').setValue(emname); Ext.getCmp('cld_newtestmanid').setValue(emid); Ext.getCmp('cld_testdescription').setValue(null); Ext.getCmp('cld_testresult').setValue(null); } }else { } var value=Ext.getCmp('cld_attach').getValue(); var form = me.getForm(btn); if(value!=null&&value!=""){ form.add({ title:'相关文件', id:'container', style: {borderColor:'green', borderStyle:'solid', borderWidth:'0px'}, xtype:'container', columnWidth:1 }); var name=value.split(";")[0]; var id=value.split(";")[1]; var items = new Array(); items.push({ style: 'background:#CDBA96;', html: '

相关文件:

', }); items.push({ style: 'background:#C6E2FF;', html: '' + '文件:' + name + '下载', }); Ext.getCmp('container').add(items); }*/ } }, 'textfield[name=cbd_testman]':{ afterrender:function(field){ if(!field.value){ field.setValue(emname); } } }, 'datetimefield[name=cbd_testdate]':{ afterrender:function(field){ if(!field.value){ field.setValue(new Date()); } } }, 'multidbfind[name=cbd_handman]':{ afterrender:function(field){ field.dbKey='cb_prjid'; field.mappingKey='tm_prjid'; field.message='无数据!'; } }, 'combo[name=cbd_result]':{ afterrender: function(t) { me.checkType(t.value); }, change: function(t){ me.checkType(t.value); } }, 'erpYnField[name=cld_handresult]':{ beforerender:function(field){ var value=Ext.getCmp('cld_newhandmanid').getValue(); if(value&&value==emid){ //当前用户进来的是处理人员 field.fieldStyle='background:#fffac0;color:#515151;'; field.allowBlank=false; field.readOnly=false; } } }, 'erpYnField[name=cld_testresult]':{ beforerender:function(field){ var value=Ext.getCmp('cld_newhandmanid').getValue(); if(value&&value!=emid){ //当前用户进来的是处理人员 field.allowBlank=false; field.fieldStyle='background:#fffac0;color:#515151;'; field.readOnly=false; } } }, 'textarea[name=cld_testdescription]':{ beforerender:function(field){ var value=Ext.getCmp('cld_newhandmanid').getValue(); if(value&&value!=emid){ //当前用户进来的是处理人员 field.allowBlank=false; field.fieldStyle='background:#fffac0;color:#515151;'; field.readOnly=false; } } }, 'textarea[name=cld_handdescription]':{ beforerender:function(field){ var value=Ext.getCmp('cld_newhandmanid').getValue(); if(value&&value==emid){ //当前用户进来的是处理人员 field.fieldStyle='background:#fffac0;color:#515151;'; field.allowBlank=false; field.readOnly=false; field.value=""; } } }, 'gridcolumn[dataIndex=ch_description]':{ beforerender:function(column){ column.flex=1; } }, 'dbfindtrigger[name=cld_newhandman]':{ afterrender:function(trigger){ trigger.dbKey='cl_prjplanid'; trigger.mappingKey='tm_prjid'; trigger.dbMessage='请选择该测试单的项目计划'; }, }, 'dbfindtrigger[name=prjplan_prjid]':{ afterrender:function(dbfindtrigger){ dbfindtrigger.dbBaseCondition="prj_statuscode IS 'AUDITED'"; }, }, 'textfield[name=cld_name]':{ render:function(field){ Ext.create('Ext.tip.ToolTip', { target:field.getEl(), trackMouse: true, renderTo: Ext.getBody(), html:field.value, bodyStyle: { background: '#F8F8FF', padding: '10px' } }); } }, 'textfield[name=cl_prjplanname]':{ render:function(field){ Ext.create('Ext.tip.ToolTip', { target:field.getEl(), trackMouse: true, renderTo: Ext.getBody(), html:field.value, bodyStyle: { background: '#F8F8FF', padding: '10px' } }); } }, }); }, getForm: function(btn){ return btn.ownerCt.ownerCt; }, onUpdate: function(me){ var mm = this; var form = Ext.getCmp('form'); var s1 = mm.checkFormDirty(form); var s2 = ''; var grids = Ext.ComponentQuery.query('gridpanel'); if(grids.length > 0){//check所有grid是否已修改 Ext.each(grids, function(grid, index){ if(grid.GridUtil){ var msg = grid.GridUtil.checkGridDirty(grid); if(msg.length > 0){ s2 = s2 + '
' + grid.GridUtil.checkGridDirty(grid); } } }); } if(s1 == '' && (s2 == '' || s2 == '
')){ showError($I18N.common.form.emptyData + '
' + $I18N.common.grid.emptyDetail); return; } if(form && form.getForm().isValid()){ //form里面数据 var r = form.getValues(false, true); //去除ignore字段 var keys = Ext.Object.getKeys(r), f; Ext.each(keys, function(k){ f = form.down('#' + k); if(f && f.logic == 'ignore') { delete r[k]; } }); if(!mm.contains(form.updateUrl, '?caller=', true)){ form.updateUrl = form.updateUrl + "?caller=" + caller; } var params = []; if(grids.length > 0){ var param = grids[0].GridUtil.getGridStore(); if(grids[0].necessaryField.length > 0 && (param == null || param == '')){ warnMsg('明细表还未添加数据,是否继续?', function(btn){ if(btn == 'yes'){ params = unescape("[" + param.toString().replace(/\\/g,"%") + "]"); } else { return; } }); } else { params = unescape("[" + param.toString().replace(/\\/g,"%") + "]"); } } mm.update(r, params); }else{ mm.checkForm(form); } }, update: function(){ var params = new Object(); var r = arguments[0]; Ext.each(Ext.Object.getKeys(r), function(k){//去掉页面非表单定义字段 if(contains(k, 'ext-', true)){ delete r[k]; } }); params.formStore = unescape(Ext.JSON.encode(r).replace(/\\/g,"%")); params.param = unescape(arguments[1].toString().replace(/\\/g,"%")); for(var i=2; i'+s+')已修改'); }, contains: function(string,substr,isIgnoreCase){ if(isIgnoreCase){ string=string.toLowerCase(); substr=substr.toLowerCase(); } var startChar=substr.substring(0,1); var strLen=substr.length; for(var j=0;j