Ext.define('saas.view.purchase.purchaseIn.FormPanel', { extend: 'saas.view.core.form.FormPanel', xtype: 'purchase-purchasein-formpanel', controller: 'purchase-purchasein-formpanel', viewModel: 'purchase-purchasein-formpanel', viewName: 'purchase-purchasein-formpanel', caller:'PurchaseIn', //字段属性 _title:'采购验收单', _idField: 'id', _codeField: 'pi_inoutno', _statusField: 'pi_status', _statusCodeField: 'pi_statuscode', _relationColumn: 'pd_piid', _readUrl:'/api/purchase/prodinout/read', _saveUrl:'/api/purchase/prodinout/save', _auditUrl:'/api/purchase/prodinout/audit', _unAuditUrl:'/api/purchase/prodinout/unAudit', _deleteUrl:'/api/purchase/prodinout/delete', _turnOutUrl:'/api/purchase/prodinout/turnProdOut', initId:0, toolBtns: [{ xtype: 'button', text: '转采购验退单', hidden: true, bind: { hidden: '{turnHidden}' }, handler: 'turnOut' }], defaultItems: [{ xtype: 'hidden', name: 'id', fieldLabel: 'id', allowBlank: true, columnWidth: 0 },{ xtype : "textfield", name : "pi_class", fieldLabel : "单据类型", readOnly:true, allowBlank : true, columnWidth : 0.25 },{ xtype : "hidden", name : "pi_vendid", fieldLabel : "供应商ID", allowBlank : true, columnWidth : 0.0 },{ xtype: 'hidden', name: 'pi_vendcode', fieldLabel: '供应商编号' }, { xtype: 'vendorDbfindTrigger', name: 'pi_vendname', fieldLabel: '供应商名称', allowBlank : false, },{ xtype : "datefield", name : "pi_date", fieldLabel : "单据日期", allowBlank : false, columnWidth : 0.25, defaultValue: new Date() },{ xtype : "textfield", name : "pi_total", fieldLabel : "总额", allowBlank : true, readOnly: true, columnWidth : 0.25 }, { xtype : "hidden", name : "pi_puid", fieldLabel : "采购单id", allowBlank : true, columnWidth : 0.25 },{ xtype : "hidden", name : "pi_pucode", fieldLabel : "采购单号", allowBlank : true, columnWidth : 0.25 }, { name : "detailGridField", xtype : "detailGridField", storeModel:'saas.model.purchase.ProdIODetail', deleteDetailUrl:'/api/purchase/prodinout/deleteDetail', detnoColumn: 'pd_pdno', columns : [ { text : "id", dataIndex : "id", xtype : "numbercolumn", hidden:true },{ text : "物料id", dataIndex : "pd_prodid", xtype : "numbercolumn", hidden:true }, { text : "物料编号", width : 150.0, dataIndex : "pd_prodcode", xtype : "", items : null, allowBlank : false, editor : { displayField : "display", editable : true, format : "", hideTrigger : false, maxLength : 100.0, minValue : null, positiveNum : false, queryMode : "local", store : null, valueField : "value", xtype : "productMultiDbfindTrigger" } },{ text: 'model映射需要', dataIndex: 'productDTO', hidden: true, }, { text : "名称", width : 200.0, dataIndex : "pr_detail", ignore:true, renderer: function (v, m, r) { if(!v){ return r.data["productDTO"]?r.data["productDTO"][m.column.dataIndex]:null; } return v; } }, { text : "规格", dataIndex : "pr_spec", width : 150.0, ignore:true, renderer: function (v, m, r) { if(!v){ return r.data["productDTO"]?r.data["productDTO"][m.column.dataIndex]:null; } return v; } }, { text : "数量", dataIndex : "pd_inqty", xtype: 'numbercolumn', width : 110.0, allowBlank : false, editor : { xtype : "numberfield", decimalPrecision: 3, minValue:0 }, renderer : function(v) { var arr = (v + '.').split('.'); var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0'); var format = '0.' + xr.join(); return Ext.util.Format.number(v, format); }, summaryType: 'sum', summaryRenderer: function(v) { var arr = (v + '.').split('.'); var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0'); var format = '0.' + xr.join(); return Ext.util.Format.number(v, format); } }, { text : "已转数", dataIndex : "pd_yqty", xtype: 'numbercolumn', hidden:true, editor : { xtype : "numberfield", decimalPrecision: 3, editable : false }, renderer : function(v) { var arr = (v + '.').split('.'); var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0'); var format = '0.' + xr.join(); return Ext.util.Format.number(v, format); }, summaryType: 'sum', summaryRenderer: function(v) { var arr = (v + '.').split('.'); var xr = (new Array(arr[1].length > 3 ? 3 : arr[1].length)).fill('0'); var format = '0.' + xr.join(); return Ext.util.Format.number(v, format); } },{ text : "仓库id", dataIndex : "pd_whid", xtype : "numbercolumn", hidden:true }, { text : "仓库编号", dataIndex : "pd_whcode", hidden:true }, { text : "仓库", dataIndex : "pd_whname", width : 150.0, allowBlank : false, editor : { displayField : "display", editable : true, format : "", hideTrigger : false, maxLength : 100.0, minValue : null, positiveNum : false, queryMode : "local", store : null, valueField : "value", xtype : "warehouseDbfindTrigger" } }, { text : "单价", xtype: 'numbercolumn', width : 110.0, editor : { xtype : "numberfield", decimalPrecision: 8, minValue:0 }, dataIndex : "pd_orderprice", width : 120.0, renderer : function(v) { var arr = (v + '.').split('.'); var xr = (new Array(arr[1].length > 8 ? 8 : arr[1].length)).fill('0'); var format = '0,000.' + xr.join(); return Ext.util.Format.number(v, format); }, }, { xtype: 'numbercolumn', text : "税率", dataIndex : "pd_taxrate", width : 80.0, editor : { xtype : "numberfield", decimalPrecision: 0, minValue: 0, maxValue: 100 }, renderer : function(v) { return Ext.util.Format.number(v, '0'); }, },{ text : "含税金额", xtype: 'numbercolumn', dataIndex : "pd_total", width : 110.0, editor : { xtype : "numberfield", decimalPrecision: 2, editable : false }, renderer : function(v) { var arr = (v + '.').split('.'); var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0'); var format = '0,000.' + xr.join(); return Ext.util.Format.number(v, format); }, summaryType: 'sum', summaryRenderer: function(v) { var arr = (v + '.').split('.'); var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0'); var format = '0,000.' + xr.join(); return Ext.util.Format.number(v, format); } }, { text : "未税金额", xtype: 'numbercolumn', dataIndex : "pd_nettotal", width : 110.0, editor : { xtype : "numberfield", decimalPrecision: 2, editable : false }, renderer : function(v) { var arr = (v + '.').split('.'); var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0'); var format = '0,000.' + xr.join(); return Ext.util.Format.number(v, format); }, summaryType: 'sum', summaryRenderer: function(v) { var arr = (v + '.').split('.'); var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0'); var format = '0,000.' + xr.join(); return Ext.util.Format.number(v, format); } }, { text : "采购单明细id", dataIndex : "pd_orderid", hidden:true }, { text : "采购单号", dataIndex : "pd_ordercode", width : 150.0 },{ text : "采购序号", dataIndex : "pd_orderdetno", xtype : "numbercolumn", width : 110.0, format: '0', renderer: function(v) { return v ? v : null; } },{ text : "备注", dataIndex : "pd_remark", width : 250, items : null, editor : { xtype : "textfield" }, } ] },{ xtype : "textfield", name : "pi_remark", fieldLabel : "备注", columnWidth : 1 }, { xtype : "hidden", name : "creatorId", fieldLabel : "录入人ID", readOnly:true }, { xtype : "textfield", name : "creatorName", fieldLabel : "录入人", readOnly:true }, { xtype : "datefield", name : "createTime", fieldLabel : "录入日期", readOnly:true, defaultValue: new Date() },{ xtype : "hidden", name : "updaterId", fieldLabel : "更新人ID", readOnly:true },{ xtype : "hidden", name : "updaterName", fieldLabel : "更新人", readOnly:true }, { xtype : "hidden", name : "updateTime", fieldLabel : "更新日期", readOnly:true, defaultValue: new Date() }, { xtype : "textfield", name : "pi_auditman", fieldLabel : "审核人", readOnly:true }, { xtype : "datefield", name : "pi_auditdate", fieldLabel : "审核日期", readOnly:true }], beforeAudit:function(){ var me = this, viewModel = me.getViewModel(), grid = me.down('detailGridField'), data = grid.getTrueData(); Ext.Array.each(data,function(item){ if(item.pd_orderprice==0){ saas.util.BaseUtil.showErrorToast(item.pd_pdno+'行'+item.pd_prodcode+'物料单价为0'); } }); return true; } });