PayBalanceTK.js 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578
  1. Ext.QuickTips.init();
  2. Ext.define('erp.controller.fa.arp.PayBalanceTK', {
  3. extend: 'Ext.app.Controller',
  4. FormUtil: Ext.create('erp.util.FormUtil'),
  5. GridUtil: Ext.create('erp.util.GridUtil'),
  6. BaseUtil: Ext.create('erp.util.BaseUtil'),
  7. views:[
  8. 'core.form.Panel','fa.arp.PayBalanceTK','core.grid.Panel2','core.toolbar.Toolbar', 'core.form.SeparNumber',
  9. 'core.button.Save','core.button.Add','core.button.Close','core.button.Delete','core.button.Update','core.button.DeleteDetail',
  10. 'core.trigger.DbfindTrigger','core.trigger.TextAreaTrigger','core.form.YnField','core.button.ResAccounted','core.button.AssMain','core.button.Accounted','core.button.StrikeBalance',
  11. 'core.grid.AssPanel','core.window.AssWindow','core.trigger.CateTreeDbfindTrigger','core.trigger.HrOrgTreeDbfindTrigger','core.button.Post','core.button.ResPost','core.button.Print',
  12. 'core.button.Submit','core.button.ResAudit','core.button.Audit','core.button.ResSubmit','core.button.AssDetail','core.button.AssMain', 'core.trigger.MultiDbfindTrigger'
  13. ],
  14. init:function(){
  15. var me = this;
  16. me.gridLastSelected = null;
  17. this.control({
  18. 'erpGridPanel2': {
  19. itemclick:function(selModel, record){
  20. me.onGridItemClick(selModel, record);
  21. if(caller == 'PayBalance!TK'){
  22. var btn = Ext.getCmp('assdetail');
  23. var ass = record.data['ca_asstype'];
  24. if(!Ext.isEmpty(ass)){
  25. btn.setDisabled(false);
  26. } else {
  27. btn.setDisabled(true);
  28. }
  29. }
  30. }
  31. },
  32. 'erpAssMainButton':{
  33. afterrender:function(btn){
  34. if(caller == 'PayBalance!TK'){
  35. if(Ext.getCmp('ca_asstype').getValue()==null||Ext.getCmp('ca_asstype').getValue()==""){
  36. btn.setDisabled(true);
  37. }else{
  38. btn.setDisabled(false);
  39. }
  40. }
  41. }
  42. },
  43. 'erpSaveButton': {
  44. click: function(btn){
  45. var form = me.getForm(btn);
  46. if(Ext.getCmp(form.codeField).value == null || Ext.getCmp(form.codeField).value == ''){
  47. me.BaseUtil.getRandomNumber();
  48. }
  49. me.getApamount();
  50. //保存之前的一些前台的逻辑判定
  51. //this.beforeSavePayBalance();
  52. me.beforeSave(this);
  53. }
  54. },
  55. 'erpDeleteDetailButton': {
  56. afterrender: function(btn){
  57. if(caller == 'PayBalance!TK'){
  58. //辅助核算
  59. btn.ownerCt.add({
  60. xtype:'erpAssDetailButton',
  61. disabled:true
  62. });
  63. }
  64. }
  65. },
  66. 'erpPostButton' : {
  67. afterrender: function(btn){
  68. var status = Ext.getCmp(me.getForm(btn).statusCode);
  69. if(status && status.value == 'UNPOST'){
  70. btn.show();
  71. }else{
  72. btn.hide();
  73. }
  74. },
  75. click: function(btn){
  76. me.beforePost(btn);
  77. }
  78. },
  79. 'erpResPostButton' : {
  80. afterrender: function(btn){
  81. var status = Ext.getCmp(me.getForm(btn).statusCode);
  82. if(status && status.value == 'POSTED'){
  83. btn.show();
  84. }else{
  85. btn.hide();
  86. }
  87. },
  88. click: function(btn){
  89. me.FormUtil.onResPost(Ext.getCmp('pb_id').value);
  90. }
  91. },
  92. 'erpDeleteButton' : {
  93. click: function(btn){
  94. me.FormUtil.onDelete(Ext.getCmp('pb_id').value);
  95. }
  96. },
  97. 'erpUpdateButton': {
  98. click: function(btn){
  99. me.getApamount();
  100. me.beforeUpdate();
  101. }
  102. },
  103. 'erpAddButton': {
  104. click: function(){
  105. var form = Ext.getCmp('form');
  106. var title = '新增';
  107. if(form){
  108. if(form.title){
  109. title = title+form.title;
  110. }
  111. }
  112. me.FormUtil.onAdd('addPayBalance', title, 'jsps/fa/arp/paybalanceTK.jsp?whoami='+caller);
  113. }
  114. },
  115. 'erpCloseButton': {
  116. click: function(btn){
  117. me.FormUtil.beforeClose(me);
  118. }
  119. },
  120. 'erpSubmitButton': {
  121. afterrender: function(btn){
  122. var auditStatus = Ext.getCmp(me.getForm(btn).auditStatusCode);
  123. if(auditStatus && auditStatus.value != 'ENTERING'){
  124. btn.hide();
  125. }
  126. },
  127. click: function(btn){
  128. me.beforeSubmit(btn);
  129. me.FormUtil.onSubmit(Ext.getCmp('pb_id').value);
  130. }
  131. },
  132. 'erpResSubmitButton': {
  133. afterrender: function(btn){
  134. var auditStatus = Ext.getCmp(me.getForm(btn).auditStatusCode);
  135. if(auditStatus && auditStatus.value != 'COMMITED'){
  136. btn.hide();
  137. }
  138. },
  139. click: function(btn){
  140. me.FormUtil.onResSubmit(Ext.getCmp('pb_id').value);
  141. }
  142. },
  143. 'erpAuditButton': {
  144. afterrender: function(btn){
  145. var auditStatus = Ext.getCmp(me.getForm(btn).auditStatusCode);
  146. if(auditStatus && auditStatus.value != 'COMMITED'){
  147. btn.hide();
  148. }
  149. },
  150. click: function(btn){
  151. me.FormUtil.onAudit(Ext.getCmp('pb_id').value);
  152. }
  153. },
  154. 'erpResAuditButton': {
  155. afterrender: function(btn){
  156. var auditStatus = Ext.getCmp(me.getForm(btn).auditStatusCode);
  157. if(auditStatus && auditStatus.value != 'AUDITED'){
  158. btn.hide();
  159. }
  160. },
  161. click: function(btn){
  162. me.FormUtil.onResAudit(Ext.getCmp('pb_id').value);
  163. }
  164. },
  165. 'erpPrintButton': {
  166. click: function(btn){
  167. var reportName="APPay";
  168. var condition = '{PayBalance.pb_id}=' + Ext.getCmp('pb_id').value + '';
  169. var id = Ext.getCmp('pb_id').value;
  170. me.FormUtil.onwindowsPrint(id, reportName, condition);
  171. }
  172. },
  173. 'numberfield[name=pb_amount]':{
  174. beforerender:function(num){
  175. num.minValue = Number.NEGATIVE_INFINITY;
  176. num.setMinValue(num.minValue);
  177. b = num.baseChars+"";
  178. b += num.decimalSeparator;
  179. b += "-";
  180. b = Ext.String.escapeRegex(b);
  181. num.maskRe = new RegExp("[" + b + "]");
  182. },
  183. change: function(f) {
  184. var v1 = (f.value || 0),
  185. v2 = (Ext.getCmp('pb_vmamount').value || 0);
  186. if(v1 == 0) {
  187. Ext.getCmp('pb_vmrate').setValue(0);
  188. } else {
  189. Ext.getCmp('pb_vmrate').setValue(Ext.Number.toFixed(v2/v1, 8));
  190. }
  191. }
  192. },
  193. 'numberfield[name=pb_vmamount]':{
  194. beforerender:function(num){
  195. num.minValue = Number.NEGATIVE_INFINITY;
  196. num.setMinValue(num.minValue);
  197. b = num.baseChars+"";
  198. b += num.decimalSeparator;
  199. b += "-";
  200. b = Ext.String.escapeRegex(b);
  201. num.maskRe = new RegExp("[" + b + "]");
  202. },
  203. change: function(f) {
  204. var v1 = (Ext.getCmp('pb_amount').value || 0),
  205. v2 = (f.value || 0);
  206. if(v1 == 0) {
  207. Ext.getCmp('pb_vmrate').setValue(0);
  208. } else {
  209. Ext.getCmp('pb_vmrate').setValue(Ext.Number.toFixed(v2/v1, 8));
  210. }
  211. }
  212. },
  213. 'numberfield[name=pb_apamount]':{
  214. beforerender:function(num){
  215. num.minValue = Number.NEGATIVE_INFINITY;
  216. num.setMinValue(num.minValue);
  217. b = num.baseChars+"";
  218. b += num.decimalSeparator;
  219. b += "-";
  220. b = Ext.String.escapeRegex(b);
  221. num.maskRe = new RegExp("[" + b + "]");
  222. }
  223. },
  224. 'cateTreeDbfindTrigger[name=pb_catecode]':{
  225. aftertrigger:function(trigger, data){
  226. Ext.getCmp('pb_catename').setValue(data[0].raw.data.ca_name);
  227. if (caller == 'PayBalance!TK'){
  228. var asstype = data[0].raw.data.ca_asstype;
  229. var btn = Ext.getCmp("assmainbutton");
  230. if(Ext.isEmpty(asstype)) {
  231. btn.setDisabled(true);
  232. } else {
  233. btn.setDisabled(false);
  234. }
  235. }
  236. }
  237. },
  238. 'field[name=pbd_ordercode]':{
  239. afterrender:function(t){
  240. t.gridKey="pb_vendcode";
  241. t.mappinggirdKey="ab_vendcode";
  242. t.gridErrorMessage="请先选择供应商";
  243. },
  244. aftertrigger:function(){
  245. var grid = Ext.getCmp('grid');
  246. var record = grid.selModel.lastSelected;
  247. if(typeof record.data.pbd_orderamount != "undefined") {
  248. var data = record.get('pbd_orderamount')-record.get('pbd_havepay');
  249. record.set('pbd_nowbalance',data);
  250. }
  251. }
  252. },
  253. 'textfield[name=pb_amount]':{
  254. change:function(t){
  255. if(caller == 'PayBalance!TK'){
  256. var pb_amount = Ext.Number.from(Ext.getCmp('pb_amount').getValue(),0);//付款金额
  257. var pb_vmrate = Ext.Number.from(Ext.getCmp('pb_vmrate').getValue(),0); //冲账汇率
  258. var pb_vmamount = pb_amount*pb_vmrate; // 冲账金额
  259. pb_vmamount = Ext.util.Format.number(pb_vmamount,'0.00');
  260. Ext.getCmp('pb_vmamount').setValue(pb_vmamount);
  261. }
  262. }
  263. },
  264. 'textfield[name=pb_vmrate]':{
  265. change:function(t){
  266. if(caller == 'PayBalance!TK'){
  267. var pb_amount = Ext.Number.from(Ext.getCmp('pb_amount').getValue(),0);//付款金额
  268. var pb_vmrate = Ext.Number.from(Ext.getCmp('pb_vmrate').getValue(),0); //冲账汇率
  269. var pb_vmamount = pb_amount*pb_vmrate; // 冲账金额
  270. pb_vmamount = Ext.util.Format.number(pb_vmamount,'0.00');
  271. Ext.getCmp('pb_vmamount').setValue(pb_vmamount);
  272. }
  273. }
  274. }
  275. });
  276. },
  277. beforeSubmit: function(){
  278. var me = this;
  279. if(caller == 'PayBalance!TK'){
  280. var grid = Ext.getCmp('grid'),items=grid.store.data.items;
  281. var sameCurrency = true;
  282. var amount = Number(Ext.getCmp('pb_amount').getValue());
  283. var vmamount =Number(Ext.getCmp('pb_vmamount').getValue());
  284. var vmcurrency = Ext.getCmp('pb_vmcurrency').getValue();
  285. var vmrate = Number(Ext.getCmp('pb_vmrate').getValue());
  286. var detailamount = 0;
  287. var currency = Ext.getCmp('pb_currency').getValue();
  288. if(amount != 0 && vmamount != 0){
  289. if(Ext.Number.toFixed(vmrate, 8)!= Ext.Number.toFixed(vmamount/amount, 8)){
  290. showError('冲账汇率不正确,不能提交!');
  291. return;
  292. }
  293. }
  294. if(currency == vmcurrency){
  295. if(vmrate != 1){
  296. showError('币别相同,冲账汇率不等于1,不能提交!');
  297. return;
  298. }
  299. }
  300. if(currency != vmcurrency){
  301. if(vmrate == 1){
  302. showError('币别不相同,冲账汇率等于1,不能提交!');
  303. return;
  304. }
  305. }
  306. Ext.each(items,function(item,index){
  307. if(!me.GridUtil.isBlank(grid, item.data)){
  308. detailamount = detailamount+Number(item.data['pbd_nowbalance']);
  309. if(vmcurrency!=item.data['pbd_currency']){
  310. //从表币别有与主表币别不同的
  311. //抛出异常
  312. sameCurrency = false;
  313. }
  314. }
  315. });
  316. if(!sameCurrency){
  317. //从表币别有与主表币别不同的
  318. //抛出异常
  319. showError('明细行币别与冲账币别不同,不能提交');return;
  320. }
  321. if(Math.abs(vmamount-detailamount)>0.01){
  322. //冲账金额与明细行本次结算总和不等
  323. //抛出异常
  324. showError('明细行本次结算与冲账金额不等,不能提交');return;
  325. }
  326. me.FormUtil.onSubmit(Ext.getCmp('pb_id').value);
  327. }else{
  328. me.FormUtil.onSubmit(Ext.getCmp('pb_id').value);
  329. }
  330. },
  331. beforePost:function(btn){
  332. var me = this;
  333. if(caller == 'PayBalance!TK'){
  334. var grid = Ext.getCmp('grid'),items=grid.store.data.items;
  335. var sameCurrency = true;
  336. var amount = Number(Ext.getCmp('pb_amount').getValue());
  337. var vmamount =Number(Ext.getCmp('pb_vmamount').getValue());
  338. var vmcurrency = Ext.getCmp('pb_vmcurrency').getValue();
  339. var vmrate = Number(Ext.getCmp('pb_vmrate').getValue());
  340. var detailamount = 0;
  341. var currency = Ext.getCmp('pb_currency').getValue();
  342. if(amount != 0 && vmamount != 0){
  343. if(Ext.Number.toFixed(vmrate, 8)!= Ext.Number.toFixed(vmamount/amount, 8)){
  344. showError('冲账汇率不正确,不能过账!');
  345. return;
  346. }
  347. }
  348. if(currency == vmcurrency){
  349. if(vmrate != 1){
  350. showError('币别相同,冲账汇率不等于1,不能过账!');
  351. return;
  352. }
  353. }
  354. if(currency != vmcurrency){
  355. if(vmrate == 1){
  356. showError('币别不相同,冲账汇率等于1,不能过账!');
  357. return;
  358. }
  359. }
  360. Ext.each(items,function(item,index){
  361. if(!me.GridUtil.isBlank(grid, item.data)){
  362. detailamount = detailamount+Number(item.data['pbd_nowbalance']);
  363. if(vmcurrency!=item.data['pbd_currency']){
  364. //从表币别有与主表币别不同的
  365. //抛出异常
  366. sameCurrency = false;
  367. }
  368. }
  369. });
  370. // if(Ext.Number.toFixed(vmamount, 2)!= Ext.Number.toFixed(amount*vmrate, 2)){
  371. if(!sameCurrency){
  372. //从表币别有与主表币别不同的
  373. //抛出异常
  374. showError('明细行币别与冲账币别不同,不能过账');return;
  375. }
  376. if(Math.abs(vmamount-detailamount)>0.01){
  377. //冲账金额与明细行本次结算总和不等
  378. //抛出异常
  379. showError('明细行本次结算与冲账金额不等,不能过账');return;
  380. }
  381. me.FormUtil.onPost(Ext.getCmp('pb_id').value);
  382. }else{
  383. me.FormUtil.onPost(Ext.getCmp('pb_id').value);
  384. }
  385. },
  386. getApamount: function(){
  387. var grid = Ext.getCmp('grid');
  388. var items = grid.store.data.items;
  389. var apamount = 0;
  390. Ext.each(items,function(item,index){
  391. if(item.data['pbd_ordercode']!=null&&item.data['pbd_ordercode']!=""){
  392. apamount= apamount + Number(item.data['pbd_nowbalance']);
  393. }
  394. });
  395. Ext.getCmp('pb_apamount').setValue(Ext.util.Format.number(apamount,'0.00'));
  396. },
  397. onGridItemClick: function(selModel, record){//grid行选择
  398. this.gridLastSelected = record;
  399. var grid = Ext.getCmp('grid');
  400. if(record.data[grid.necessaryField] == null || record.data[grid.necessaryField] == ''){
  401. this.gridLastSelected.findable = true;//空数据可以在输入完code,并移开光标后,自动调出该条数据
  402. } else {
  403. this.gridLastSelected.findable = false;
  404. }
  405. this.GridUtil.onGridItemClick(selModel, record);
  406. },
  407. getForm: function(btn){
  408. return btn.ownerCt.ownerCt;
  409. },
  410. beforeSavePayBalance: function(){
  411. var me = this;
  412. var grid = Ext.getCmp('grid');
  413. var bool = true;
  414. var warnStr='';
  415. bool = true;
  416. if(bool){
  417. me.beforeSave(this);
  418. }else{
  419. if(warnStr != ''||warnStr.length>0){
  420. showError('明细表第'+warnStr+'行 已付金额与本次结算额的合计超过发票金额,不能保存');return;
  421. }
  422. }
  423. },
  424. beforeSave:function(){
  425. var me = this;
  426. var form = Ext.getCmp('form');
  427. if(! me.FormUtil.checkForm()){
  428. return;
  429. }
  430. if(Ext.getCmp(form.keyField).value == null || Ext.getCmp(form.keyField).value == ''){
  431. me.FormUtil.getSeqId(form);
  432. }
  433. var detail = Ext.getCmp('grid');
  434. var param2 = new Array();
  435. var param3 = new Array();
  436. if(Ext.getCmp('assdetail')){
  437. Ext.each(Ext.Object.getKeys(Ext.getCmp('assdetail').cacheStoreGrid), function(key){
  438. Ext.each(Ext.getCmp('assdetail').cacheStoreGrid[key], function(d){
  439. d['dass_condid'] = key;
  440. param2.push(d);
  441. });
  442. });
  443. }
  444. if(Ext.getCmp('assmainbutton')){
  445. Ext.each(Ext.Object.getKeys(Ext.getCmp('assmainbutton').cacheStoreForm), function(key){
  446. Ext.each(Ext.getCmp('assmainbutton').cacheStoreForm[key], function(d){
  447. d['ass_conid'] = key;
  448. param3.push(d);
  449. });
  450. });
  451. }
  452. Ext.each(detail.store.data.items, function(item){
  453. if(item.data.prd_id == null || item.data.prd_id == 0){
  454. item.data.prd_id = -item.index;
  455. }
  456. });
  457. var param1 = me.GridUtil.getGridStore(detail);
  458. /*if(detail.necessaryField.length > 0 && (param1.length == 0)){
  459. showError($I18N.common.grid.emptyDetail);
  460. return;
  461. }*/
  462. me.onSave(form, param1, param2,param3);
  463. },
  464. onSave: function(form, param1, param2,param3) {
  465. var me = this;
  466. param1 = param1 == null ? [] : "[" + param1.toString().replace(/\\/g,"%") + "]";
  467. param2 = param2 == null ? [] : Ext.encode(param2).replace(/\\/g,"%");
  468. param3 = param3 == null ? [] : Ext.encode(param3).replace(/\\/g,"%");
  469. if(form.getForm().isValid()){
  470. Ext.each(form.items.items, function(item){
  471. if(item.xtype == 'numberfield'){
  472. if(item.value == null || item.value == ''){
  473. item.setValue(0);
  474. }
  475. }
  476. });
  477. var r = form.getValues();
  478. form.getForm().getFields().each(function(){
  479. if(this.logic == 'ignore') {
  480. delete r[this.name];
  481. }
  482. });
  483. me.FormUtil.save(r, param1, param2,param3);
  484. }else{
  485. me.FormUtil.checkForm();
  486. }
  487. },
  488. beforeUpdate: function(){
  489. var me = this;
  490. var grid = Ext.getCmp('grid'), key = Ext.getCmp('pb_id').value;
  491. var warn = new Array();
  492. grid.store.each(function(item){
  493. if(item.dirty) {
  494. item.set('pbd_pbid', key);
  495. if(!grid.necessaryField || !Ext.isEmpty(item.get(grid.necessaryField))){
  496. var apamount = item.get('pbd_apamount'); //订单金额
  497. var havepay = item.get('pbd_havepay'); //已预收金额
  498. var nowbalance = item.get('pbd_nowbalance'); //本次预收额
  499. //订单金额>=已预收金额+本次预收额
  500. if(apamount > 0 && havepay + nowbalance > apamount){//此种情况不能进行保存
  501. warn.push(item.get('pbd_detno'));
  502. }
  503. }
  504. }
  505. });
  506. if(warn.length == 0){
  507. me.onUpdate();
  508. } else{
  509. showError('明细第' + warn.join(',') + '行 已付金额与本次结算额的合计超过发票金额,不能保存!');
  510. }
  511. },
  512. onUpdate: function(){
  513. var me = this;
  514. var form = Ext.getCmp('form');
  515. if(! me.FormUtil.checkForm()){
  516. return;
  517. }
  518. var detail = Ext.getCmp('grid');
  519. Ext.each(detail.store.data.items, function(item){
  520. if(item.data.prd_id == null || item.data.prd_id == 0){
  521. item.data.prd_id = -item.index;
  522. }
  523. });
  524. var param1 = me.GridUtil.getGridStore(detail);
  525. var param2 = new Array();
  526. var param3 = new Array();
  527. if(Ext.getCmp('assdetail')){
  528. Ext.each(Ext.Object.getKeys(Ext.getCmp('assdetail').cacheStoreGrid), function(key){
  529. Ext.each(Ext.getCmp('assdetail').cacheStoreGrid[key], function(d){
  530. d['dass_condid'] = key;
  531. param2.push(d);
  532. });
  533. });
  534. }
  535. if(Ext.getCmp('assmainbutton')){
  536. Ext.each(Ext.Object.getKeys(Ext.getCmp('assmainbutton').cacheStoreForm), function(key){
  537. Ext.each(Ext.getCmp('assmainbutton').cacheStoreForm[key], function(d){
  538. d['ass_conid'] = key;
  539. param3.push(d);
  540. });
  541. });
  542. }
  543. if(Ext.isEmpty(me.FormUtil.checkFormDirty(form)) && (param1.length == 0)
  544. && param2.length == 0 && param3.length == 0){
  545. showError($I18N.common.grid.emptyDetail);
  546. return;
  547. } else {
  548. param1 = param1 == null ? [] : "[" + param1.toString().replace(/\\/g,"%") + "]";
  549. param2 = param2 == null ? [] : Ext.encode(param2).replace(/\\/g,"%");
  550. param3 = param3 == null ? [] : Ext.encode(param3).replace(/\\/g,"%");
  551. if(form.getForm().isValid()){
  552. Ext.each(form.items.items, function(item){
  553. if(item.xtype == 'numberfield'){
  554. if(item.value == null || item.value == ''){
  555. item.setValue(0);
  556. }
  557. }
  558. });
  559. var r = form.getValues();
  560. form.getForm().getFields().each(function(){
  561. if(this.logic == 'ignore') {
  562. delete r[this.name];
  563. }
  564. });
  565. me.FormUtil.update(r, param1, param2,param3);
  566. }else{
  567. me.FormUtil.checkForm();
  568. }
  569. }
  570. }
  571. });