Ext.QuickTips.init(); Ext.define('erp.controller.oa.persontask.workDaily.AddWorkDaily', { extend: 'Ext.app.Controller', FormUtil: Ext.create('erp.util.FormUtil'), BaseUtil: Ext.create('erp.util.BaseUtil'), views:[ 'oa.persontask.workDaily.AddWorkDaily','core.form.Panel', 'core.button.Add','core.button.Save','core.button.Close','core.button.Update','core.button.Delete', 'core.form.DetailTextField','core.form.FileField','common.datalist.GridPanel','common.datalist.Toolbar' ], init:function(){ var me = this; this.control({ 'erpDatalistGridPanel': { itemclick: this.onGridItemClick }, 'datefield[id=wd_date]':{ afterrender: function(field){ if(getUrlParam('flag')!=1){ field.setVisible(false); } if(contains(window.location.href,'formCondition',true)){ field.setVisible(true); field.setDisabled(true); } this.search(Ext.util.Format.date(new Date(field.value),"Y-m-d")); }, change: function(field){ this.search(Ext.util.Format.date(new Date(field.value),"Y-m-d")); } }, 'button[id=save]': { click: function(btn){ var mm = this.FormUtil; var form = Ext.getCmp('form'); if(! mm.checkForm()){ return; } if(Ext.getCmp(form.keyField).value == null || Ext.getCmp(form.keyField).value == ''){ mm.getSeqId(form); this.save(form); // alert(Ext.getCmp('wd_tip').value); if(Ext.getCmp('wd_tip').value != null && Ext.getCmp('wd_tip').value != ''){ this.release(); } } else { this.update(form); } } }, 'button[id=addwd]': { click: function(btn){ window.location.href = window.location.href + '&flag=1'; } }, 'button[id=daily]': { click: function(btn){ var date = Ext.util.Format.date(new Date(Ext.getCmp('wd_date').value),"Y-m-d"); // alert(date); var win = new Ext.window.Window({ id : 'win', title: "今日提交任务日志", height: "50%", width: "70%", maximizable : false, buttonAlign : 'left', layout : 'anchor', items: [{ tag : 'iframe', frame : true, anchor : '100% 100%', layout : 'fit', html : '' }] }); win.show(); } }, 'button[id=see]': { click: function(btn){ var d = new Date(); var win = new Ext.window.Window({ id : 'win', title: d.getFullYear() + '年' + (d.getMonth()+1) + '月份 月计划查看', height: "50%", width: "70%", maximizable : false, buttonAlign : 'left', layout : 'anchor', items: [{ tag : 'iframe', frame : true, anchor : '100% 100%', layout : 'fit', html : '' }] }); win.show(); } }, 'erpUpdateButton': { click: function(btn){ this.FormUtil.onUpdate(this); } }, 'erpDeleteButton': { click: function(btn){ me.onDelete((Ext.getCmp('at_id').value)); } }, 'erpCloseButton': { click: function(btn){ parent.window.location.href = parent.window.location.href; this.FormUtil.onClose(this); } } }); }, getForm: function(btn){ return btn.ownerCt.ownerCt; }, onGridItemClick: function(selModel, record){//grid行选择 var me = this; var id = record.data.ra_id; var panel = Ext.getCmp("task" + id); var main = parent.Ext.getCmp("content-panel"); if(!panel){ var title = "任务"; panel = { title : title, tag : 'iframe', tabConfig:{tooltip: record.data['ra_taskname']}, frame : true, border : false, layout : 'fit', iconCls : 'x-tree-icon-tab-tab1', html : '', closable : true, listeners : { close : function(){ main.setActiveTab(main.getActiveTab().id); } } }; me.FormUtil.openTab(panel, "task" + id); }else{ main.setActiveTab(panel); } }, save: function(form){ var mm = this.FormUtil; if(form.getForm().isValid()){ //form里面数据 Ext.each(form.items.items, function(item){ if(item.xtype == 'numberfield'){ //number类型赋默认值,不然sql无法执行 if(item.value == null || item.value == ''){ item.setValue(0); } } }); var r = form.getValues(); var keys = Ext.Object.getKeys(r); var values = Ext.Object.getValues(r); var o = new Object(); Ext.each(keys, function(key, index){ if(contains(key, 'wd_', true)){ o[key] = values[index]; } }); o.wd_context = Ext.getCmp('wd_context').value=='' ? '':Ext.getCmp('wd_context').value; if(!mm.contains(form.saveUrl, '?caller=', true)){ form.saveUrl = form.saveUrl + "?caller=" + caller; } mm.save(o, []); }else{ mm.checkForm(); } }, update: function(form){ var mm = this.FormUtil; var s1 = mm.checkFormDirty(form); if(s1 == ''){ showError($I18N.common.form.emptyData + '
'); return; } if(form && form.getForm().isValid()){ //form里面数据 var r = form.getValues(); var keys = Ext.Object.getKeys(r); var values = Ext.Object.getValues(r); var o = new Object(); Ext.each(keys, function(key, index){ if(contains(key, 'wd_', true)){ o[key] = values[index]; } }); o.wd_context = Ext.getCmp('wd_context').value=='' ? '':Ext.getCmp('wd_context').value; if(!mm.contains(form.updateUrl, '?caller=', true)){ form.updateUrl = form.updateUrl + "?caller=" + caller; } mm.update(o, []); }else{ mm.checkForm(form); } }, getTi: function(n){ var uom = new Date(); uom.setDate(uom.getDate()+n); uom = uom.getFullYear() + "-" + (uom.getMonth()+1) + "-" + uom.getDate(); return uom; }, release: function(){ var o = new Object(); o.prd_recipient = em_name; o.prd_recipientid = em_uu; o.pr_context = Ext.getCmp('wd_tip').value; o.pr_date = this.getTi(1) + " 09:00:00"; // alert(o.pr_date); Ext.Ajax.request({ url : basePath + 'common/getId.action?seq=PAGINGRELEASE_SEQ', method : 'get', async: false, callback : function(options,success,response){ var rs = new Ext.decode(response.responseText); if(rs.exceptionInfo){ showError(rs.exceptionInfo);return; } if(rs.success){ o.pr_id = rs.id; } } }); // console.log(o); var params = new Object(); params.formStore = unescape(Ext.JSON.encode(o).replace(/\\/g,"%")); Ext.Ajax.request({ url : basePath + 'oa/info/sendPagingRelease.action?caller=PagingRelease', params : params, method : 'post', callback : function(options,success,response){ // me.getActiveTab().setLoading(false); var localJson = new Ext.decode(response.responseText); if(localJson.success){ saveSuccess(function(){ alert('添加提示成功,提醒时间为:'+o.pr_date); }); } else{ // saveFailure();//@i18n/i18n.js } } }); }, getSeqId: function(o){ Ext.Ajax.request({ url : basePath + 'common/getId.action?seq=PAGINGRELEASE_SEQ', method : 'get', async: false, callback : function(options,success,response){ var rs = new Ext.decode(response.responseText); if(rs.exceptionInfo){ showError(rs.exceptionInfo);return; } if(rs.success){ o.pr_id = rs.id; } } }); }, search: function(value){ if(!contains(window.location.href,'formCondition',true)){ Ext.Ajax.request({ url : basePath + 'oa/persontask/workDaily/searchWorkDaily.action', params : { em_id: em_uu, date: value }, method : 'post', callback : function(options,success,response){ // me.getActiveTab().setLoading(false); var localJson = new Ext.decode(response.responseText); if(localJson.success){ if(localJson.wd_id != 0){ warnMsg('今日日报已提交!是否查看', function(btn){ if(btn == 'yes'){ window.location.href = window.location.href + '&formCondition=wd_idIS'+localJson.wd_id+'&gridCondition='; }else{ return; } }); } } else { // saveFailure();//@i18n/i18n.js } } }); } } });