FormPanel.js 26 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695
  1. Ext.define('saas.view.money.verification.FormPanel', {
  2. extend: 'saas.view.core.form.FormPanel',
  3. // extend: 'Ext.panel.Panel',
  4. xtype: 'money-verification-formpanel',
  5. controller: 'money-verification-formpanel',
  6. viewModel: 'money-verification-formpanel',
  7. viewName: 'money-verification-formpanel',
  8. caller: 'Verification',
  9. //字段属性
  10. _title: '核销单',
  11. _idField: 'id',
  12. _codeField: 'vc_code',
  13. _statusField: 'vc_status',
  14. _statusCodeField: 'vc_statuscode',
  15. _readUrl: '/api/money/verification/read',
  16. _saveUrl: '/api/money/verification/save',
  17. _auditUrl: '/api/money/verification/audit',
  18. _unAuditUrl: '/api/money/verification/unAudit',
  19. _deleteUrl: '/api/money/verification/delete',
  20. defatulType: 'receipts_offset_receivable',
  21. etc: {
  22. /**
  23. * 预收:receipts
  24. * 预付:prepaid
  25. * 应收:receivable
  26. * 应付:payable
  27. */
  28. // base
  29. base: [{
  30. xtype: 'combo',
  31. name: 'vc_kind',
  32. fieldLabel: '业务类型',
  33. editable: false,
  34. store: [
  35. ['receipts_offset_receivable', '预收冲应收'],
  36. ['prepaid_offset_payable', '预付冲应付'],
  37. ['receivable_offset_payable', '应收冲应付'],
  38. ['receivable_to_receivable', '应收转应收'],
  39. ['payable_to_payable', '应付转应付']
  40. ],
  41. listeners:{
  42. beforerender:function(f){
  43. f.firstLoad = true;
  44. if(f.ownerCt.initId!=0){
  45. f.setReadOnly(true);
  46. f.setDisabled(true);
  47. }
  48. }
  49. }
  50. }],
  51. detail1: {
  52. xtype: "detailGridField",
  53. storeModel: 'saas.model.money.Verification1',
  54. detnoColumn: 'vd_detno',
  55. deleteDetailUrl: '/api/money/verification/deleteDetail1',
  56. columnWidth: 1,
  57. columns: [{
  58. text: 'ID',
  59. dataIndex: 'id',
  60. hidden: true
  61. }, {
  62. text: '来源ID',
  63. dataIndex: 'vd_slid',
  64. hidden: true
  65. }, {
  66. text: '来源单号',
  67. dataIndex: 'vd_slcode',
  68. width: 150,
  69. editor:{
  70. displayField : "display",
  71. editable : true,
  72. format : "",
  73. hideTrigger : false,
  74. maxLength : 100.0,
  75. minValue : null,
  76. positiveNum : false,
  77. queryMode : "local",
  78. store : null,
  79. valueField : "value",
  80. xtype : "oriOrderMutiDbfindTrigger"
  81. }
  82. }, {
  83. text: '业务类型',
  84. dataIndex: "vd_slkind",
  85. width: 110
  86. }, {
  87. text: "单据日期",
  88. dataIndex: "vd_sldate",
  89. xtype: 'datecolumn',
  90. width: 110
  91. }, {
  92. text: "单据金额",
  93. xtype: 'numbercolumn',
  94. dataIndex: "vd_amount",
  95. width: 110,
  96. renderer : function(v) {
  97. var arr = (v + '.').split('.');
  98. var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
  99. var format = '0,000.' + xr.join();
  100. return Ext.util.Format.number(v, format);
  101. },
  102. summaryType: 'sum',
  103. summaryRenderer: function(v) {
  104. var arr = (v + '.').split('.');
  105. var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
  106. var format = '0,000.' + xr.join();
  107. return Ext.util.Format.number(v, format);
  108. }
  109. }, {
  110. text: "已核销金额",
  111. xtype: 'numbercolumn',
  112. dataIndex: "sl_yamount",
  113. width: 110,
  114. ignore:true,
  115. renderer : function(v) {
  116. var arr = (v + '.').split('.');
  117. var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
  118. var format = '0,000.' + xr.join();
  119. return Ext.util.Format.number(v, format);
  120. },
  121. summaryType: 'sum',
  122. summaryRenderer: function(v) {
  123. var arr = (v + '.').split('.');
  124. var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
  125. var format = '0,000.' + xr.join();
  126. return Ext.util.Format.number(v, format);
  127. }
  128. }, {
  129. text: "未核销金额",
  130. xtype: 'numbercolumn',
  131. dataIndex: "sl_namount",
  132. width: 110,
  133. ignore:true,
  134. renderer : function(v) {
  135. var arr = (v + '.').split('.');
  136. var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
  137. var format = '0,000.' + xr.join();
  138. return Ext.util.Format.number(v, format);
  139. },
  140. summaryType: 'sum',
  141. summaryRenderer: function(v) {
  142. var arr = (v + '.').split('.');
  143. var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
  144. var format = '0,000.' + xr.join();
  145. return Ext.util.Format.number(v, format);
  146. }
  147. }, {
  148. text: "本次核销金额",
  149. xtype: 'numbercolumn',
  150. dataIndex: "vd_nowbalance",
  151. width: 150,
  152. editor : {
  153. xtype : "numberfield",
  154. decimalPrecision: 2
  155. },
  156. allowBlank : false,
  157. renderer : function(v) {
  158. var arr = (v + '.').split('.');
  159. var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
  160. var format = '0,000.' + xr.join();
  161. return Ext.util.Format.number(v, format);
  162. },
  163. summaryType: 'sum',
  164. summaryRenderer: function(v) {
  165. var arr = (v + '.').split('.');
  166. var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
  167. var format = '0,000.' + xr.join();
  168. return Ext.util.Format.number(v, format);
  169. }
  170. }]
  171. },
  172. detail2: {
  173. xtype: "detailGridField",
  174. storeModel: 'saas.model.money.Verification2',
  175. detnoColumn: 'vcd_detno',
  176. deleteDetailUrl: '/api/money/verification/deleteDetail2',
  177. columnWidth: 1,
  178. columns: [{
  179. text: 'ID',
  180. dataIndex: 'id',
  181. hidden: true
  182. }, {
  183. text: '来源ID',
  184. dataIndex: 'vcd_slid',
  185. hidden: true
  186. }, {
  187. text: '来源单号',
  188. dataIndex: 'vcd_slcode',
  189. width: 150,
  190. editor:{
  191. displayField : "display",
  192. editable : true,
  193. format : "",
  194. hideTrigger : false,
  195. maxLength : 100.0,
  196. minValue : null,
  197. positiveNum : false,
  198. queryMode : "local",
  199. store : null,
  200. valueField : "value",
  201. xtype : "oriOrderMutiDbfindTrigger"
  202. }
  203. }, {
  204. text: '业务类型',
  205. dataIndex: "vcd_slkind",
  206. width: 110
  207. }, {
  208. text: "单据日期",
  209. dataIndex: "vcd_sldate",
  210. xtype: 'datecolumn',
  211. width: 110
  212. }, {
  213. text: "单据金额",
  214. xtype: 'numbercolumn',
  215. dataIndex: "vcd_amount",
  216. width: 110,
  217. renderer : function(v) {
  218. var arr = (v + '.').split('.');
  219. var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
  220. var format = '0,000.' + xr.join();
  221. return Ext.util.Format.number(v, format);
  222. },
  223. summaryType: 'sum',
  224. summaryRenderer: function(v) {
  225. var arr = (v + '.').split('.');
  226. var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
  227. var format = '0,000.' + xr.join();
  228. return Ext.util.Format.number(v, format);
  229. }
  230. }, {
  231. text: "已核销金额",
  232. xtype: 'numbercolumn',
  233. dataIndex: "sl_yamount",
  234. width: 110,
  235. ignore:true,
  236. renderer : function(v) {
  237. var arr = (v + '.').split('.');
  238. var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
  239. var format = '0,000.' + xr.join();
  240. return Ext.util.Format.number(v, format);
  241. },
  242. summaryType: 'sum',
  243. summaryRenderer: function(v) {
  244. var arr = (v + '.').split('.');
  245. var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
  246. var format = '0,000.' + xr.join();
  247. return Ext.util.Format.number(v, format);
  248. }
  249. }, {
  250. text: "未核销金额",
  251. xtype: 'numbercolumn',
  252. dataIndex: "sl_namount",
  253. width: 110,
  254. ignore:true,
  255. renderer : function(v) {
  256. var arr = (v + '.').split('.');
  257. var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
  258. var format = '0,000.' + xr.join();
  259. return Ext.util.Format.number(v, format);
  260. },
  261. summaryType: 'sum',
  262. summaryRenderer: function(v) {
  263. var arr = (v + '.').split('.');
  264. var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
  265. var format = '0,000.' + xr.join();
  266. return Ext.util.Format.number(v, format);
  267. }
  268. }, {
  269. text: "本次核销金额",
  270. dataIndex: "vcd_nowbalance",
  271. xtype: 'numbercolumn',
  272. width: 150,
  273. allowBlank : false,
  274. editor : {
  275. xtype : "numberfield",
  276. decimalPrecision: 2
  277. },
  278. renderer : function(v) {
  279. var arr = (v + '.').split('.');
  280. var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
  281. var format = '0,000.' + xr.join();
  282. return Ext.util.Format.number(v, format);
  283. },
  284. summaryType: 'sum',
  285. summaryRenderer: function(v) {
  286. var arr = (v + '.').split('.');
  287. var xr = (new Array(arr[1].length > 2 ? 2 : arr[1].length)).fill('0');
  288. var format = '0,000.' + xr.join();
  289. return Ext.util.Format.number(v, format);
  290. }
  291. }]
  292. },
  293. other: [{
  294. xtype: 'textfield',
  295. name: 'vc_remark',
  296. columnWidth: 1,
  297. fieldLabel: '备注'
  298. }, {
  299. xtype : "hidden",
  300. name : "creatorId",
  301. fieldLabel : "录入人ID",
  302. readOnly:true
  303. },
  304. {
  305. xtype : "textfield",
  306. name : "creatorName",
  307. fieldLabel : "录入人",
  308. readOnly:true
  309. }, {
  310. xtype : "datefield",
  311. name : "createTime",
  312. fieldLabel : "录入日期",
  313. readOnly:true,
  314. defaultValue: new Date()
  315. },{
  316. xtype : "hidden",
  317. name : "updaterId",
  318. fieldLabel : "更新人ID",
  319. readOnly:true
  320. },{
  321. xtype : "hidden",
  322. name : "updaterName",
  323. fieldLabel : "更新人",
  324. readOnly:true
  325. }, {
  326. xtype : "hidden",
  327. name : "updateTime",
  328. fieldLabel : "更新日期",
  329. readOnly:true,
  330. defaultValue: new Date()
  331. },{
  332. xtype: 'textfield',
  333. name: 'vc_auditman',
  334. fieldLabel: '审核人',
  335. readOnly: true
  336. },{
  337. xtype: "datefield",
  338. name: "vc_auditdate",
  339. fieldLabel: "审核日期",
  340. readOnly: true
  341. }],
  342. // 预收冲应收
  343. receipts_offset_receivable : {
  344. main: [{
  345. xtype: 'hidden',
  346. fieldLabel: '客户名称',
  347. name: 'vc_custid',
  348. allowBlank : false,
  349. listeners: {
  350. change: 'clearDetails'
  351. }
  352. }, {
  353. fieldLabel: '客户编号',
  354. xtype: 'hidden',
  355. name: 'vc_custcode',
  356. }, {
  357. fieldLabel: '客户名称',
  358. xtype: 'customerDbfindTrigger',
  359. name: 'vc_custname',
  360. allowBlank : false
  361. }, {
  362. fieldLabel: '日期',
  363. xtype: 'datefield',
  364. defaultValue: new Date(),
  365. allowBlank : false,
  366. name: 'vc_date'
  367. }, {
  368. xtype: 'hidden',
  369. name: 'vc_amount1',
  370. fieldLabel: '核销金额'
  371. }, {
  372. xtype: "hidden",
  373. name: "vc_amount2",
  374. fieldLabel: "未核销金额"
  375. }],
  376. details: ['detail1', 'detail2'],
  377. other: ['other']
  378. },
  379. // 预付冲应付
  380. prepaid_offset_payable: {
  381. main: [{
  382. xtype: 'hidden',
  383. name: 'vc_vendid',
  384. fieldLabel: '供应商名称',
  385. allowBlank : false,
  386. listeners: {
  387. change: 'clearDetails'
  388. }
  389. }, {
  390. xtype: "hidden",
  391. name: "vc_vendcode",
  392. fieldLabel: "供应商编号"
  393. }, {
  394. xtype: "vendorDbfindTrigger",
  395. name: "vc_vendname",
  396. fieldLabel: "供应商名称",
  397. allowBlank : false
  398. }, {
  399. fieldLabel: '日期',
  400. xtype: 'datefield',
  401. defaultValue: new Date(),
  402. allowBlank : false,
  403. name: 'vc_date'
  404. }, {
  405. xtype: 'hidden',
  406. name: 'vc_amount1',
  407. fieldLabel: '核销金额'
  408. }, {
  409. xtype: "hidden",
  410. name: "vc_amount2",
  411. fieldLabel: "未核销金额"
  412. }],
  413. details: ['detail1', 'detail2'],
  414. other: ['other']
  415. },
  416. // 应收冲应付
  417. receivable_offset_payable: {
  418. main: [{
  419. fieldLabel: '客户名称',
  420. xtype: 'textfield',
  421. name: 'vc_custid',
  422. hidden: true,
  423. listeners: {
  424. change: 'clearDetail0'
  425. }
  426. }, {
  427. fieldLabel: '客户编号',
  428. xtype: 'textfield',
  429. name: 'vc_custcode',
  430. hidden: true
  431. }, {
  432. fieldLabel: '客户名称',
  433. xtype: 'customerDbfindTrigger',
  434. name: 'vc_custname',
  435. allowBlank : false,
  436. }, {
  437. xtype: 'hidden',
  438. name: 'vc_vendid',
  439. fieldLabel: '供应商ID',
  440. listeners: {
  441. change: 'clearDetail1'
  442. }
  443. }, {
  444. xtype: "hidden",
  445. name: "vc_vendcode",
  446. fieldLabel: "供应商编号"
  447. }, {
  448. xtype: "vendorDbfindTrigger",
  449. name: "vc_vendname",
  450. fieldLabel: "供应商名称",
  451. allowBlank : false
  452. }, {
  453. fieldLabel: '日期',
  454. xtype: 'datefield',
  455. defaultValue: new Date(),
  456. allowBlank : false,
  457. name: 'vc_date'
  458. }, {
  459. xtype: 'hidden',
  460. name: 'vc_amount1',
  461. fieldLabel: '核销金额'
  462. }, {
  463. xtype: "hidden",
  464. name: "vc_amount2",
  465. fieldLabel: "未核销金额"
  466. }],
  467. details: ['detail1', 'detail2'],
  468. other: ['other']
  469. },
  470. // 应收转应收
  471. receivable_to_receivable: {
  472. main: [{
  473. fieldLabel: '转出客户',
  474. xtype: 'textfield',
  475. name: 'vc_custid',
  476. hidden: true,
  477. listeners: {
  478. change: 'clearDetail0'
  479. }
  480. }, {
  481. fieldLabel: '转出客户编号',
  482. xtype: 'textfield',
  483. name: 'vc_custcode',
  484. hidden: true
  485. }, {
  486. fieldLabel: '转出客户',
  487. xtype: 'customerDbfindTrigger',
  488. name: 'vc_custname',
  489. allowBlank : false,
  490. }, {
  491. fieldLabel: '转入客户id',
  492. xtype: 'textfield',
  493. name: 'vc_turncustid',
  494. hidden: true
  495. }, {
  496. fieldLabel: '转入客户编号',
  497. xtype: 'textfield',
  498. name: 'vc_turncustcode',
  499. hidden: true
  500. }, {
  501. fieldLabel: '转入客户',
  502. xtype: 'customerDbfindTrigger',
  503. name: 'vc_turncustname',
  504. allowBlank : false,
  505. }, {
  506. fieldLabel: '日期',
  507. xtype: 'datefield',
  508. defaultValue: new Date(),
  509. allowBlank : false,
  510. name: 'vc_date'
  511. }, {
  512. xtype: 'hidden',
  513. name: 'vc_amount1',
  514. fieldLabel: '核销金额'
  515. }, {
  516. xtype: "hidden",
  517. name: "vc_amount2",
  518. fieldLabel: "未核销金额"
  519. }],
  520. details: ['detail1'],
  521. other: ['other']
  522. },
  523. // 应付转应付
  524. payable_to_payable: {
  525. main: [{
  526. fieldLabel: '转出供应商',
  527. xtype: 'textfield',
  528. name: 'vc_vendid',
  529. hidden: true,
  530. listeners: {
  531. change: 'clearDetail0'
  532. }
  533. }, {
  534. fieldLabel: '转出供应商编号',
  535. xtype: 'textfield',
  536. name: 'vc_vendcode',
  537. hidden: true
  538. }, {
  539. fieldLabel: '转出供应商',
  540. xtype: 'vendorDbfindTrigger',
  541. name: 'vc_vendname',
  542. allowBlank : false,
  543. }, {
  544. fieldLabel: '转入供应商id',
  545. xtype: 'textfield',
  546. name: 'vc_turnvendid',
  547. hidden: true
  548. }, {
  549. fieldLabel: '转入供应商编号',
  550. xtype: 'textfield',
  551. name: 'vc_turnvendcode',
  552. hidden: true
  553. }, {
  554. fieldLabel: '转入供应商',
  555. xtype: 'vendorDbfindTrigger',
  556. name: 'vc_turnvendname',
  557. allowBlank : false,
  558. }, {
  559. fieldLabel: '日期',
  560. xtype: 'datefield',
  561. defaultValue: new Date(),
  562. allowBlank : false,
  563. name: 'vc_date'
  564. }, {
  565. xtype: 'hidden',
  566. name: 'vc_amount1',
  567. fieldLabel: '核销金额'
  568. }, {
  569. xtype: "hidden",
  570. name: "vc_amount2",
  571. fieldLabel: "未核销金额"
  572. }],
  573. details: ['detail1'],
  574. other: ['other']
  575. },
  576. defaultConditions: {
  577. receipts_offset_receivable: ['ifnull(sl_custid,0)={vc_custid} and ifnull(sl_preamount,0)<>0 and ifnull(sl_namount,0)<>0 ' +
  578. ' and ((sl_kind=\'收款单\') or (sl_kind=\'期初余额\' and sl_ym=' +
  579. '(select min(pd_detno) from periodsdetail where pd_status=0 and periodsdetail.companyid=subledger.companyid)))',
  580. 'ifnull(sl_custid,0)={vc_custid} and ifnull(sl_preamount,0)=0 and ifnull(sl_namount,0)<>0 ' +
  581. ' and (sl_kind in (\'出货单\',\'销售退货单\') or (sl_kind in (\'期初余额\') and sl_ym=' +
  582. '(select min(pd_detno) from periodsdetail where pd_status=0 and periodsdetail.companyid=subledger.companyid)))'],
  583. prepaid_offset_payable: ['ifnull(sl_vendid,0)={vc_vendid} and ifnull(sl_preamount,0)<>0 and ifnull(sl_namount,0)<>0 ' +
  584. ' and ((sl_kind=\'付款单\') or (sl_kind=\'期初余额\' and sl_ym=' +
  585. '(select min(pd_detno) from periodsdetail where pd_status=0 and periodsdetail.companyid=subledger.companyid)))',
  586. 'ifnull(sl_vendid,0)={vc_vendid} and ifnull(sl_preamount,0)=0 and ifnull(sl_namount,0)<>0' +
  587. ' and (sl_kind in (\'采购验收单\',\'采购验退单\') or (sl_kind in (\'期初余额\') and sl_ym=' +
  588. '(select min(pd_detno) from periodsdetail where pd_status=0 and periodsdetail.companyid=subledger.companyid)))'],
  589. receivable_offset_payable: ['ifnull(sl_custid,0)={vc_custid} and ifnull(sl_preamount,0)=0 and ifnull(sl_namount,0)<>0 ' +
  590. ' and ((sl_kind in (\'出货单\',\'销售退货单\')) or (sl_kind=\'期初余额\' and sl_ym=' +
  591. '(select min(pd_detno) from periodsdetail where pd_status=0 and periodsdetail.companyid=subledger.companyid)))',
  592. 'ifnull(sl_vendid,0)={vc_vendid} and ifnull(sl_preamount,0)=0 and ifnull(sl_namount,0)<>0' +
  593. ' and (sl_kind in (\'采购验收单\',\'采购验退单\') or (sl_kind in (\'期初余额\') and sl_ym=' +
  594. '(select min(pd_detno) from periodsdetail where pd_status=0 and periodsdetail.companyid=subledger.companyid)))'],
  595. receivable_to_receivable: ['ifnull(sl_custid,0)={vc_custid} and ifnull(sl_preamount,0)=0 and ifnull(sl_namount,0)<>0 ' +
  596. ' and ((sl_kind in (\'出货单\',\'销售退货单\')) or (sl_kind=\'期初余额\' and sl_ym=' +
  597. '(select min(pd_detno) from periodsdetail where pd_status=0 and periodsdetail.companyid=subledger.companyid)))'],
  598. payable_to_payable: ['ifnull(sl_vendid,0)={vc_vendid} and ifnull(sl_preamount,0)=0 and ifnull(sl_namount,0)<>0' +
  599. ' and (sl_kind in (\'采购验收单\',\'采购验退单\') or (sl_kind in (\'期初余额\') and sl_ym=' +
  600. '(select min(pd_detno) from periodsdetail where pd_status=0 and periodsdetail.companyid=subledger.companyid)))']
  601. }
  602. },
  603. // initComponent: function() {
  604. // this.callParent(arguments);
  605. // },
  606. initFormItems: function() {
  607. var me = this,
  608. cusItems = me.cusItems,
  609. defaultItems = me.getAcitveItems(),
  610. FormUtil = saas.util.FormUtil;
  611. me.detailCount = 0;
  612. if(cusItems) {
  613. var items = defaultItems || [];
  614. Ext.Array.each(cusItems, function(cusItem) {
  615. var item = items.find(function(item) {
  616. return item.name == cusItem.name;
  617. });
  618. Ext.apply(item, cusItem);
  619. });
  620. items = FormUtil.applyDefaultItems(me, items);
  621. me.removeAll();
  622. me.addItems(items);
  623. FormUtil.loadData(me);
  624. }else {
  625. FormUtil.applyCusItemConfig(me)
  626. .then(function(res) {
  627. if(res.success) {
  628. var config = res.data || true, items = defaultItems || [];
  629. if(config) {
  630. cusItems = config.items || [];
  631. me.cusItems = cusItems;
  632. Ext.Array.each(cusItems, function(cusItem) {
  633. var item = items.find(function(item) {
  634. return item.name == cusItem.name;
  635. });
  636. Ext.apply(item, cusItem);
  637. });
  638. items = FormUtil.applyDefaultItems(me, items);
  639. }
  640. me.removeAll();
  641. return me.addItems(items);
  642. }
  643. })
  644. .then(function(items) {
  645. me.fireEvent('afterSetItems', me, items);
  646. })
  647. .then(function() {
  648. FormUtil.loadData(me);
  649. })
  650. .catch(function(response) {
  651. saas.util.BaseUtil.showErrorToast('错误:' + response.message);
  652. console.error(response);
  653. });
  654. }
  655. },
  656. getAcitveItems: function() {
  657. var me = this,
  658. acitveType = me.acitveType || me.defatulType,
  659. etc = me.etc,
  660. acitveEtc = etc[acitveType],
  661. mainItems = acitveEtc.main,
  662. details = acitveEtc.details,
  663. base = etc.base,
  664. detail1 = etc.detail1,
  665. detail2 = etc.detail2,
  666. other = etc.other,
  667. items = [];
  668. base[0].defaultValue = acitveType;
  669. items = Ext.Array.merge(base, mainItems, (details[0] ? [detail1] : []), (details[1] ? [detail2] : []), other );
  670. return items;
  671. },
  672. });