Ext.define('saas.view.document.vendor.FormPanel', { extend: 'saas.view.core.form.FormPanel', xtype: 'document-vendor-formpanel', controller: 'document-vendor-formpanel', viewModel: 'document-vendor-formpanel', caller:'Vendor', //字段属性 _title:'供应商资料', _idField: 'id', _codeField: 've_code', _statusField: 've_status', _statusCodeField: 've_statuscode', _readUrl:basePath+'ducument/vendor/read/', _saveUrl:basePath+'ducument/vendor/save', _openUrl:basePath+'ducument/vendor/open', _closeUrl:basePath+'ducument/vendor/close', _deleteUrl:basePath+'ducument/vendor/delete/', initId:0, defaultItems: [{ xtype: 'hidden', name: 'id', fieldLabel: 'id', allowBlank: true, columnWidth: 0.25 },{ xtype: 'textfield', name: 've_name', fieldLabel: '供应商名称', allowBlank: false, columnWidth: 0.25 },{ xtype: 'textfield', name: 've_code', fieldLabel: '供应商编号', allowBlank: true, columnWidth: 0.25 },{ xtype: 'textfield', name: 've_status', fieldLabel: '状态', allowBlank: true, columnWidth: 0.25 },{ xtype: 'hidden', name: 've_statuscode', fieldLabel: '状态码', allowBlank: true, columnWidth: 0.25 },{ xtype : "remotecombo", storeUrl:basePath + 'document/vendorkind/getCombo', name : "ve_type", fieldLabel : "供应商类型", allowBlank : true, queryMode: 'local', displayField: 'display', valueField: 'value', columnWidth : 0.25, etc:{ vendorkind:{ keyField:'id', dataField:'vk_name', reqUrl:basePath + 'document/vendorkind/save', delUrl:basePath + 'document/vendorkind/delete' } }, addHandler:function(b){ var form = this.ownerCmp.ownerCt; this.dialog = form.getController().getView().add({ xtype: 'document-kind-childwin', bind: { title: '新增供应商类型' }, dataKind:'vendorkind', belong:this.ownerCmp.etc['vendorkind'], _parent:form, record:null, session: true }); this.dialog.show(); } },{ format : "Y-m-d", xtype : "datefield", name : "createTime", fieldLabel : "创建时间", allowBlank : true, columnWidth : 0.25 },{ format : "Y-m-d", xtype : "datefield", name : "ve_begindate", fieldLabel : "期初日期", allowBlank : true, columnWidth : 0.25 },{ xtype : "numberfield", hideTrigger:true, name : "ve_beginaramount", fieldLabel : "期初应收", allowBlank : true, columnWidth : 0.25 },{ xtype : "numberfield", hideTrigger:true, name : "ve_beginprerecamount", fieldLabel : "期初预收", allowBlank : true, columnWidth : 0.25 },{ xtype : "numberfield", hideTrigger:true, name : "ve_promisedays", fieldLabel : "承付天数", allowBlank : true, columnWidth : 0.25 },{ xtype : "numberfield", name : "ve_taxrate", fieldLabel : "税率", allowBlank : true, columnWidth : 0.25 },{ xtype : "numberfield", name : "ve_ta", fieldLabel : "应收款余额", allowBlank : true, readOnly:true, editable:false, columnWidth : 0.25 },{ xtype:'textfield', name : "ve_uu", fieldLabel : "供应商UU", allowBlank : true, columnWidth : 0.25 },{ format : "Y-m-d", xtype : "datefield", name : "updateTime", fieldLabel : "更新时间", allowBlank : true, columnWidth : 0.25 }, { xtype : "detailGridField", detnoColumn: 'vc_detno', storeModel:'saas.model.document.vendorcontact', deleteDetailUrl:basePath+'ducument/vendor/deleteContact/', columns : [ { text : "ID", dataIndex : "id", width : 0, xtype : "numbercolumn" }, { text : "关联ID", dataIndex : "vc_veid", width : 0, xtype : "numbercolumn" }, { text : "联系人", editor : { xtype : "textfield" }, dataIndex : "vc_name", width : 120.0, xtype : "", }, { text : "电话", editor : { xtype : "textfield" }, dataIndex : "vc_tel", width : 120.0, xtype : "", }, { text : "微信/QQ", editor : { xtype : "textfield" }, dataIndex : "vc_qq", width : 120.0, xtype : "", }, { text : "邮箱", editor : { xtype : "textfield" }, dataIndex : "vc_email", width : 120.0, xtype : "", }, { editor : { displayField : "display", editable : true, format : "", hideTrigger : false, maxLength : 100.0, minValue : null, positiveNum : false, queryMode : "local", valueField : "value", xtype : "combo", store:{ fields: ['display', 'value'], data : [ {"display":"是", "value":'1'}, {"display":"否", "value":'0'} ] } }, text : "是否默认联系人", width : 200.0, dataIndex : "vc_default", xtype : "", renderer: function (v, m, r) { if(v=='0'){ return ''; }else if(v=='1'){ return '是'; } return v; } }] } ], /** * 一些初始化viewModel的方法 */ initViewModel: function() { var me = this, codeField = me._codeField, statusField = me._statusField, statusCodeField = me._statusCodeField, viewModel = me.getViewModel(); viewModel.set(codeField, ''); viewModel.set('createTime', new Date()); viewModel.set('updateTime', new Date()); if(statusCodeField) { var o = {}; o['auditBtnText'] = { bind: '{' + statusCodeField + '}', get: function(value) { viewModel.set(statusField, value == 'OPEN' ? '启用' : '禁用'); return value == 'OPEN' ? '禁用' : '启用' } }; viewModel.setFormulas(o); viewModel.set(statusCodeField, "OPEN"); }else { viewModel.set('auditBtnText', "禁用"); } } });