| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698 |
- Ext.define('saas.view.money.verification.FormPanel', {
- extend: 'saas.view.core.form.FormPanel',
- // extend: 'Ext.panel.Panel',
- xtype: 'money-verification-formpanel',
- controller: 'money-verification-formpanel',
- viewModel: 'money-verification-formpanel',
- viewName: 'money-verification-formpanel',
- caller: 'Verification',
- //字段属性
- _title: '核销单',
- _idField: 'id',
- _codeField: 'vc_code',
- _statusField: 'vc_status',
- _statusCodeField: 'vc_statuscode',
- _auditmanField: 'vc_auditman',
- _auditdateField:'vc_auditdate',
- _readUrl: '/api/money/verification/read',
- _saveUrl: '/api/money/verification/save',
- _auditUrl: '/api/money/verification/audit',
- _unAuditUrl: '/api/money/verification/unAudit',
- _deleteUrl: '/api/money/verification/delete',
- defatulType: 'receipts_offset_receivable',
- etc: {
- /**
- * 预收:receipts
- * 预付:prepaid
- * 应收:receivable
- * 应付:payable
- */
- // base
- base: [{
- xtype: 'combo',
- name: 'vc_kind',
- fieldLabel: '业务类型',
- editable: false,
- store: [
- ['receipts_offset_receivable', '预收冲应收'],
- ['prepaid_offset_payable', '预付冲应付'],
- ['receivable_offset_payable', '应收冲应付'],
- ['receivable_to_receivable', '应收转应收'],
- ['payable_to_payable', '应付转应付']
- ],
- listeners:{
- beforerender:function(f){
- f.firstLoad = true;
- if(f.ownerCt.initId!=0){
- f.setReadOnly(true);
- f.setDisabled(true);
- }
- }
- }
- }],
- detail1: {
- xtype: "detailGridField",
- storeModel: 'saas.model.money.Verification1',
- detnoColumn: 'vd_detno',
- deleteDetailUrl: '/api/money/verification/deleteDetail1',
- columnWidth: 1,
- columns: [{
- text: 'ID',
- dataIndex: 'id',
- hidden: true
- }, {
- text: '来源ID',
- dataIndex: 'vd_slid',
- hidden: true
- }, {
- text: '来源单号',
- dataIndex: 'vd_slcode',
- width: 150,
- allowBlank:false,
- editor:{
- displayField : "display",
- editable : true,
- format : "",
- hideTrigger : false,
- maxLength : 100.0,
- minValue : null,
- positiveNum : false,
- queryMode : "local",
- store : null,
- valueField : "value",
- xtype : "oriOrderMutiDbfindTrigger"
- }
- }, {
- text: '业务类型',
- dataIndex: "vd_slkind",
- width: 110
- }, {
- text: "单据日期",
- dataIndex: "vd_sldate",
- xtype: 'datecolumn',
- width: 110
- }, {
- text: "单据金额",
- xtype: 'numbercolumn',
- dataIndex: "vd_amount",
- width: 110,
- 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: "sl_yamount",
- width: 110,
- ignore:true,
- 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: "sl_namount",
- width: 110,
- ignore:true,
- 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: "vd_nowbalance",
- width: 150,
- editor : {
- xtype : "numberfield",
- decimalPrecision: 2
- },
- allowBlank : 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);
- }
- }]
- },
- detail2: {
- xtype: "detailGridField",
- storeModel: 'saas.model.money.Verification2',
- detnoColumn: 'vcd_detno',
- deleteDetailUrl: '/api/money/verification/deleteDetail2',
- columnWidth: 1,
- columns: [{
- text: 'ID',
- dataIndex: 'id',
- hidden: true
- }, {
- text: '来源ID',
- dataIndex: 'vcd_slid',
- hidden: true
- }, {
- text: '来源单号',
- dataIndex: 'vcd_slcode',
- width: 150,
- allowBlank:false,
- editor:{
- displayField : "display",
- editable : true,
- format : "",
- hideTrigger : false,
- maxLength : 100.0,
- minValue : null,
- positiveNum : false,
- queryMode : "local",
- store : null,
- valueField : "value",
- xtype : "oriOrderMutiDbfindTrigger"
- }
- }, {
- text: '业务类型',
- dataIndex: "vcd_slkind",
- width: 110
- }, {
- text: "单据日期",
- dataIndex: "vcd_sldate",
- xtype: 'datecolumn',
- width: 110
- }, {
- text: "单据金额",
- xtype: 'numbercolumn',
- dataIndex: "vcd_amount",
- width: 110,
- 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: "sl_yamount",
- width: 110,
- ignore:true,
- 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: "sl_namount",
- width: 110,
- ignore:true,
- 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: "本次核销金额",
- dataIndex: "vcd_nowbalance",
- xtype: 'numbercolumn',
- width: 150,
- allowBlank : false,
- editor : {
- xtype : "numberfield",
- decimalPrecision: 2
- },
- 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);
- }
- }]
- },
- other: [{
- xtype: 'textfield',
- name: 'vc_remark',
- columnWidth: 1,
- fieldLabel: '备注'
- }, {
- 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: 'vc_auditman',
- fieldLabel: '审核人',
- readOnly: true
- },{
- xtype: "datefield",
- name: "vc_auditdate",
- fieldLabel: "审核日期",
- readOnly: true
- }],
- // 预收冲应收
- receipts_offset_receivable : {
- main: [{
- xtype: 'hidden',
- fieldLabel: '客户名称',
- name: 'vc_custid',
- allowBlank : false,
- listeners: {
- change: 'clearDetails'
- }
- }, {
- fieldLabel: '客户编号',
- xtype: 'hidden',
- name: 'vc_custcode',
- }, {
- fieldLabel: '客户名称',
- xtype: 'customerDbfindTrigger',
- name: 'vc_custname',
- allowBlank : false
- }, {
- fieldLabel: '日期',
- xtype: 'datefield',
- defaultValue: new Date(),
- allowBlank : false,
- name: 'vc_date'
- }, {
- xtype: 'hidden',
- name: 'vc_amount1',
- fieldLabel: '核销金额(元)'
- }, {
- xtype: "hidden",
- name: "vc_amount2",
- fieldLabel: "未核销金额"
- }],
- details: ['detail1', 'detail2'],
- other: ['other']
- },
- // 预付冲应付
- prepaid_offset_payable: {
- main: [{
- xtype: 'hidden',
- name: 'vc_vendid',
- fieldLabel: '供应商名称',
- allowBlank : false,
- listeners: {
- change: 'clearDetails'
- }
- }, {
- xtype: "hidden",
- name: "vc_vendcode",
- fieldLabel: "供应商编号"
- }, {
- xtype: "vendorDbfindTrigger",
- name: "vc_vendname",
- fieldLabel: "供应商名称",
- allowBlank : false
- }, {
- fieldLabel: '日期',
- xtype: 'datefield',
- defaultValue: new Date(),
- allowBlank : false,
- name: 'vc_date'
- }, {
- xtype: 'hidden',
- name: 'vc_amount1',
- fieldLabel: '核销金额(元)'
- }, {
- xtype: "hidden",
- name: "vc_amount2",
- fieldLabel: "未核销金额"
- }],
- details: ['detail1', 'detail2'],
- other: ['other']
- },
- // 应收冲应付
- receivable_offset_payable: {
- main: [{
- fieldLabel: '客户名称',
- xtype: 'textfield',
- name: 'vc_custid',
- hidden: true,
- listeners: {
- change: 'clearDetail0'
- }
- }, {
- fieldLabel: '客户编号',
- xtype: 'textfield',
- name: 'vc_custcode',
- hidden: true
- }, {
- fieldLabel: '客户名称',
- xtype: 'customerDbfindTrigger',
- name: 'vc_custname',
- allowBlank : false,
- }, {
- xtype: 'hidden',
- name: 'vc_vendid',
- fieldLabel: '供应商ID',
- listeners: {
- change: 'clearDetail1'
- }
- }, {
- xtype: "hidden",
- name: "vc_vendcode",
- fieldLabel: "供应商编号"
- }, {
- xtype: "vendorDbfindTrigger",
- name: "vc_vendname",
- fieldLabel: "供应商名称",
- allowBlank : false
- }, {
- fieldLabel: '日期',
- xtype: 'datefield',
- defaultValue: new Date(),
- allowBlank : false,
- name: 'vc_date'
- }, {
- xtype: 'hidden',
- name: 'vc_amount1',
- fieldLabel: '核销金额(元)'
- }, {
- xtype: "hidden",
- name: "vc_amount2",
- fieldLabel: "未核销金额"
- }],
- details: ['detail1', 'detail2'],
- other: ['other']
- },
- // 应收转应收
- receivable_to_receivable: {
- main: [{
- fieldLabel: '转出客户',
- xtype: 'textfield',
- name: 'vc_custid',
- hidden: true,
- listeners: {
- change: 'clearDetail0'
- }
- }, {
- fieldLabel: '转出客户编号',
- xtype: 'textfield',
- name: 'vc_custcode',
- hidden: true
- }, {
- fieldLabel: '转出客户',
- xtype: 'customerDbfindTrigger',
- name: 'vc_custname',
- allowBlank : false,
- }, {
- fieldLabel: '转入客户id',
- xtype: 'textfield',
- name: 'vc_turncustid',
- hidden: true
- }, {
- fieldLabel: '转入客户编号',
- xtype: 'textfield',
- name: 'vc_turncustcode',
- hidden: true
- }, {
- fieldLabel: '转入客户',
- xtype: 'customerDbfindTrigger',
- name: 'vc_turncustname',
- allowBlank : false,
- }, {
- fieldLabel: '日期',
- xtype: 'datefield',
- defaultValue: new Date(),
- allowBlank : false,
- name: 'vc_date'
- }, {
- xtype: 'hidden',
- name: 'vc_amount1',
- fieldLabel: '核销金额(元)'
- }, {
- xtype: "hidden",
- name: "vc_amount2",
- fieldLabel: "未核销金额"
- }],
- details: ['detail1'],
- other: ['other']
- },
- // 应付转应付
- payable_to_payable: {
- main: [{
- fieldLabel: '转出供应商',
- xtype: 'textfield',
- name: 'vc_vendid',
- hidden: true,
- listeners: {
- change: 'clearDetail0'
- }
- }, {
- fieldLabel: '转出供应商编号',
- xtype: 'textfield',
- name: 'vc_vendcode',
- hidden: true
- }, {
- fieldLabel: '转出供应商',
- xtype: 'vendorDbfindTrigger',
- name: 'vc_vendname',
- allowBlank : false,
- }, {
- fieldLabel: '转入供应商id',
- xtype: 'textfield',
- name: 'vc_turnvendid',
- hidden: true
- }, {
- fieldLabel: '转入供应商编号',
- xtype: 'textfield',
- name: 'vc_turnvendcode',
- hidden: true
- }, {
- fieldLabel: '转入供应商',
- xtype: 'vendorDbfindTrigger',
- name: 'vc_turnvendname',
- allowBlank : false,
- }, {
- fieldLabel: '日期',
- xtype: 'datefield',
- defaultValue: new Date(),
- allowBlank : false,
- name: 'vc_date'
- }, {
- xtype: 'hidden',
- name: 'vc_amount1',
- fieldLabel: '核销金额(元)'
- }, {
- xtype: "hidden",
- name: "vc_amount2",
- fieldLabel: "未核销金额"
- }],
- details: ['detail1'],
- other: ['other']
- },
- defaultConditions: {
- receipts_offset_receivable: ['ifnull(sl_custid,0)={vc_custid} and ifnull(sl_preamount,0)<>0 and ifnull(sl_namount,0)<>0 ' +
- ' and ((sl_kind=\'收款单\') or (sl_kind=\'期初余额\' and sl_ym=' +
- '(select min(pd_detno) from periodsdetail where pd_status=0 and periodsdetail.companyid=subledger.companyid)))',
- 'ifnull(sl_custid,0)={vc_custid} and ifnull(sl_preamount,0)=0 and ifnull(sl_namount,0)<>0 ' +
- ' and (sl_kind in (\'出货单\',\'销售退货单\') or (sl_kind in (\'期初余额\') and sl_ym=' +
- '(select min(pd_detno) from periodsdetail where pd_status=0 and periodsdetail.companyid=subledger.companyid)))'],
- prepaid_offset_payable: ['ifnull(sl_vendid,0)={vc_vendid} and ifnull(sl_preamount,0)<>0 and ifnull(sl_namount,0)<>0 ' +
- ' and ((sl_kind=\'付款单\') or (sl_kind=\'期初余额\' and sl_ym=' +
- '(select min(pd_detno) from periodsdetail where pd_status=0 and periodsdetail.companyid=subledger.companyid)))',
- 'ifnull(sl_vendid,0)={vc_vendid} and ifnull(sl_preamount,0)=0 and ifnull(sl_namount,0)<>0' +
- ' and (sl_kind in (\'采购验收单\',\'采购验退单\') or (sl_kind in (\'期初余额\') and sl_ym=' +
- '(select min(pd_detno) from periodsdetail where pd_status=0 and periodsdetail.companyid=subledger.companyid)))'],
- receivable_offset_payable: ['ifnull(sl_custid,0)={vc_custid} and ifnull(sl_preamount,0)=0 and ifnull(sl_namount,0)<>0 ' +
- ' and ((sl_kind in (\'出货单\',\'销售退货单\')) or (sl_kind=\'期初余额\' and sl_ym=' +
- '(select min(pd_detno) from periodsdetail where pd_status=0 and periodsdetail.companyid=subledger.companyid)))',
- 'ifnull(sl_vendid,0)={vc_vendid} and ifnull(sl_preamount,0)=0 and ifnull(sl_namount,0)<>0' +
- ' and (sl_kind in (\'采购验收单\',\'采购验退单\') or (sl_kind in (\'期初余额\') and sl_ym=' +
- '(select min(pd_detno) from periodsdetail where pd_status=0 and periodsdetail.companyid=subledger.companyid)))'],
- receivable_to_receivable: ['ifnull(sl_custid,0)={vc_custid} and ifnull(sl_preamount,0)=0 and ifnull(sl_namount,0)<>0 ' +
- ' and ((sl_kind in (\'出货单\',\'销售退货单\')) or (sl_kind=\'期初余额\' and sl_ym=' +
- '(select min(pd_detno) from periodsdetail where pd_status=0 and periodsdetail.companyid=subledger.companyid)))'],
- payable_to_payable: ['ifnull(sl_vendid,0)={vc_vendid} and ifnull(sl_preamount,0)=0 and ifnull(sl_namount,0)<>0' +
- ' and (sl_kind in (\'采购验收单\',\'采购验退单\') or (sl_kind in (\'期初余额\') and sl_ym=' +
- '(select min(pd_detno) from periodsdetail where pd_status=0 and periodsdetail.companyid=subledger.companyid)))']
- }
- },
- // initComponent: function() {
- // this.callParent(arguments);
- // },
- initFormItems: function() {
- var me = this,
- cusItems = me.cusItems,
- defaultItems = me.getAcitveItems(),
- FormUtil = saas.util.FormUtil;
-
- me.detailCount = 0;
- if(cusItems) {
- var items = defaultItems || [];
- Ext.Array.each(cusItems, function(cusItem) {
- var item = items.find(function(item) {
- return item.name == cusItem.name;
- });
- Ext.apply(item, cusItem);
- });
- items = FormUtil.applyDefaultItems(me, items);
- me.removeAll();
- me.addItems(items);
- FormUtil.loadData(me);
- }else {
- FormUtil.applyCusItemConfig(me)
- .then(function(res) {
- if(res.success) {
- var config = res.data || true, items = defaultItems || [];
- if(config) {
- cusItems = config.items || [];
- me.cusItems = cusItems;
- Ext.Array.each(cusItems, function(cusItem) {
- var item = items.find(function(item) {
- return item.name == cusItem.name;
- });
- Ext.apply(item, cusItem);
- });
- items = FormUtil.applyDefaultItems(me, items);
- }
- me.removeAll();
- return me.addItems(items);
- }
- })
- .then(function(items) {
- me.fireEvent('afterSetItems', me, items);
- })
- .then(function() {
- FormUtil.loadData(me);
- })
- .catch(function(response) {
- saas.util.BaseUtil.showErrorToast('错误:' + response.message);
- console.error(response);
- });
- }
- },
- getAcitveItems: function() {
- var me = this,
- acitveType = me.acitveType || me.defatulType,
- etc = me.etc,
- acitveEtc = etc[acitveType],
- mainItems = acitveEtc.main,
- details = acitveEtc.details,
- base = etc.base,
- detail1 = etc.detail1,
- detail2 = etc.detail2,
- other = etc.other,
- items = [];
- base[0].defaultValue = acitveType;
- items = Ext.Array.merge(base, mainItems, (details[0] ? [detail1] : []), (details[1] ? [detail2] : []), other );
- return items;
- },
- });
|