| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331 |
- Ext.define('saas.view.money.payBalance.FormPanelController', {
- extend: 'saas.view.core.form.FormPanelController',
- alias: 'controller.money-paybalance-formpanel',
- init: function (form) {
- var me = this;
- this.control({
- // 供应商名称
- 'dbfindtrigger[name=pb_vendname]':{
- beforerender: function (f) {
- Ext.apply(f, {
- dbColumns:[{
- text: "供应商ID",
- hidden: true,
- dataIndex: "id",
- xtype: "numbercolumn"
- },{
- text: "供应商编号",
- dataIndex: "ve_code",
- width: 150
- }, {
- text: "供应商名称",
- dataIndex: "ve_name",
- width: 200
- }, {
- text: "供应商类型",
- dataIndex: "ve_type",
- width: 110,
- }, {
- text: "税率(%)",
- dataIndex: "ve_taxrate",
- width: 80,
- xtype: 'numbercolumn',
- align:'end',
- renderer : function(v) {
- return saas.util.BaseUtil.numberFormat(v, 2, false);
- }
- }, {
- text: "应付款余额",
- dataIndex: "ve_leftamount",
- width:110,
- xtype: 'numbercolumn',
- renderer : function(v) {
- return saas.util.BaseUtil.numberFormat(v, 2, true);
- }
- },{
- text: "结算天数",
- dataIndex: "ve_promisedays",
- width: 110,
- xtype: 'numbercolumn',
- align: 'end',
- renderer : function(v) {
- return Ext.util.Format.number(v, '0');
- }
- }, {
- text: "纳税人识别号",
- dataIndex: "ve_nsrzh",
- width: 150
- }, {
- text: "开户银行",
- dataIndex: "ve_bankcode",
- width: 150
- }, {
- text: "银行账户",
- dataIndex: "ve_bankaccount",
- width: 200
- }],
- dbfinds: [{
- from: 've_code',
- to: 'pb_vendcode'
- }, {
- from: 've_name',
- to: 'pb_vendname'
- },{
- from: 've_leftamount',
- to: 've_leftamount'
- },{
- from: 'id',
- to: 'pb_vendid',
- ignore:true
- }],
- });
- }
- },
- // 来源单号
- 'oriOrderMutiDbfindTrigger[name=pbd_slcode]': {
- beforerender: function (f) {
- Ext.apply(f, {
- dbfinds: [{
- from: 'id',
- to: 'pbd_slid'
- }, {
- from: 'sl_code',
- to: 'pbd_slcode'
- },{
- from: 'sl_orderamount',
- to: 'pbd_amount'
- },{
- from: 'sl_yamount',
- to: 'sl_yamount'
- },{
- from: 'sl_namount',
- to: 'sl_namount'
- },{
- from:'sl_date',
- to:'pbd_sldate'
- },{
- from:'sl_kind',
- to:'pbd_slkind'
- },{
- from:'sl_namount',
- to:'pbd_nowbalance'
- }],
- defaultCondition: "sl_vendid<>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))) and sl_namount<>0'"
- });
- },
- beforequery: function(f) {
- var me = this,
- viewModel = me.getViewModel(),
- pb_vendname = viewModel.get('pb_vendname');
- if(!pb_vendname) {
- saas.util.BaseUtil.showErrorToast('请先选择【' + '<span style="color: red;">供应商名称</span>】');
- return false;
- }
- },
- beforetriggerclick: function(f) {
- var me = this,
- viewModel = me.getViewModel(),
- pb_vendname = viewModel.get('pb_vendname');
- if(!pb_vendname) {
- saas.util.BaseUtil.showErrorToast('请先选择【' + '<span style="color: red;">供应商名称</span>】');
- return false;
- }
- }
- },
- // 资金账户
- 'dbfindtrigger[name=pd_bankname]':{
- beforerender: function (f) {
- Ext.apply(f, {
- dbfinds: [{
- from: 'id',
- to: 'pd_bankid',ignore:true
- }, {
- from: 'bk_bankcode',
- to: 'pd_bankcode'
- },{
- from: 'bk_bankname',
- to: 'pd_bankname'
- }],
- });
- },
- beforequery: function(f) {
- var me = this,
- viewModel = me.getViewModel(),
- rb_custname = viewModel.get('pb_vendname');
- if(!rb_custname) {
- saas.util.BaseUtil.showErrorToast('请先选择【' + '<span style="color: red;">供应商名称</span>】');
- return false;
- }
- },
- beforetriggerclick: function(f) {
- var me = this,
- viewModel = me.getViewModel(),
- rb_custname = viewModel.get('pb_vendname');
- if(!rb_custname) {
- saas.util.BaseUtil.showErrorToast('请先选择【' + '<span style="color: red;">供应商名称</span>】');
- return false;
- }
- }
- }
- });
- },
- addCombo:function(){
- var combo=this.ownerCmp;
- Ext.create('Ext.window.Window',{
- layout:'vbox',
- bodyPadding: 15,
- width:500,
- items:[{
- fieldLabel:'实际值',
- xtype:'textfield'
- },{
- fieldLabel:'显示值',
- xtype:'textfield'
- }],
- buttons:[{
- text:'确认',
- handler:function(b){
- combo.setValue('ok');
- b.up('window').close();
- }
- }],
- renderTo:this.ownerCmp.ownerCt.getEl()
- }).show();
- },
- turnIn: function() {
- var me = this,
- form = me.getView(),
- id = form.getForm().findField(form._idField);
- form.setLoading(true);
- saas.util.BaseUtil.request({
- url: form._turnInUrl+id.value,
- method: 'GET',
- })
- .then(function(localJson) {
- form.setLoading(false);
- if(localJson.success){
- saas.util.BaseUtil.showSuccessToast('转单成功');
-
- }
- })
- .catch(function(e) {
- form.setLoading(false);
- saas.util.BaseUtil.showErrorToast('转单失败: ' + e.message);
- });
- },
- onSave: function() {
- var me = this,
- form = me.getView(),
- viewModel = me.getViewModel(),
- store1 = viewModel.get('detail0').detailStore,
- store2 = viewModel.get('detail1').detailStore;
- var valid = form.isValid();
- if(!valid) {
- saas.util.BaseUtil.showErrorToast(form.invalidText);
- return false;
- }
- var sum_pd_amount = store1.sum('pd_amount'); // 付款金额合计
- var pb_discounts = viewModel.get('pb_discounts'); // 折扣金额
- var sum_pbd_nowbalance = store2.sum('pbd_nowbalance'); // 本次核销金额合计
- var flag = sum_pd_amount + pb_discounts - sum_pbd_nowbalance;
- viewModel.set("pb_pbdamount",sum_pbd_nowbalance);
- viewModel.set("pb_pdamount",sum_pd_amount);
- viewModel.set("pb_preamount",flag);
- if(flag != 0) {
- var t = flag > 0 ? '大' : '小';
- saas.util.BaseUtil.showConfirm('提示', '付款金额' + t + '于本次核销金额,是否仍要保存?')
- .then(function(y) {
- if(y == 'yes') {
- me.save();
- }
- });
- }else {
- me.save();
- }
- },
- vendnamechange:function(dbfindtrigger){
- var me = this,
- viewModel = me.getViewModel();
- var c = viewModel.get('pb_vendname_change');
- if(c!=null&&c!=''){
- c = ' and sl_vendid='+c;
- }else{
- c ='';
- }
- dbfindtrigger.defaultCondition="((sl_kind in ('采购验收单','采购验退单')) or (sl_kind='期初余额' and sl_ym="+
- "(select min(pd_detno) from periodsdetail where pd_status=0 and periodsdetail.companyid=subledger.companyid))) and sl_namount<>0" + c
- },
- myInitCopyData: function(formData) {
- var main = formData.main;
- main.pb_auditman = '';
- main.pb_auditdate = null;
- return formData;
- },
- /**
- * 清空所有从表数据
- */
- clearDetails: function() {
- var me = this;
-
- me.clearDetail0();
- me.clearDetail1();
- },
- /**
- * 清空第一个从表数据
- */
- clearDetail0: function(f, n, o) {
- var me = this,
- form = me.getView(),
- grid = form.query('detailGridField')[0];
- me.clearDetail(grid);
- },
- /**
- * 清空第二个从表数据
- */
- clearDetail1: function() {
- var me = this,
- form = me.getView(),
- grid = form.query('detailGridField')[1];
- me.clearDetail(grid);
- },
- /**
- * 清空一个从表数据
- */
- clearDetail: function(grid) {
- var datas = [],
- emptyRows = grid.emptyRows,
- detnoColumn = grid.detnoColumn,
- detno = 0,
- store = grid.getStore();
-
- Ext.Array.each(new Array(emptyRows), function() {
- detno += 1;
- var data = {};
- data[detnoColumn] = detno;
- datas.push(data);
- })
- store.removeAll();
- store.add(datas);
- // 不写该方法合计列会错位,这里触发afterEdit事件用来刷新grid
- store.getAt(0) ? store.afterEdit(store.getAt(0), ['']) : null;
- },
- });
|