FormPanel.js 26 KB

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