FormPanelController.js 6.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187
  1. Ext.define('saas.view.purchase.purchaseIn.FormPanelController', {
  2. extend: 'saas.view.core.form.FormPanelController',
  3. alias: 'controller.purchase-purchasein-formpanel',
  4. init: function (form) {
  5. var me = this;
  6. this.control({
  7. /**放大镜新增demo*/
  8. "field[name=combo]":{
  9. beforerender:function(f){
  10. f.addHandler=me.addCombo;
  11. }
  12. },
  13. //放大镜赋值关系 以及 tpl模板
  14. 'dbfindtrigger[name=pi_vendname]':{
  15. beforerender:function(f){
  16. Ext.apply(f,{
  17. dbfinds:[{
  18. from:'id',to:'pi_vendid',ignore:true
  19. },{
  20. from:'ve_code',to:'pi_vendcode'
  21. },{
  22. from:'ve_name',to:'pi_vendname'
  23. }],
  24. }) ;
  25. }
  26. },
  27. //放大镜赋值关系 以及 tpl模板
  28. 'multidbfindtrigger[name=pd_prodcode]':{
  29. beforerender:function(f){
  30. Ext.apply(f,{
  31. dbfinds:[{
  32. from:'id',to:'pd_prodid',ignore:true
  33. },{
  34. from:'pr_code',to:'pd_prodcode'
  35. },{
  36. from:'pr_detail',to:'pr_detail'
  37. },{
  38. from:'pr_spec',to:'pr_spec'
  39. },{
  40. from: 'pr_brand', to: 'pr_brand'
  41. },{
  42. from: 'pr_orispeccode', to: 'pr_orispeccode'
  43. },{
  44. from: 'pr_unit', to: 'pr_unit'
  45. }, {
  46. from:'pr_whid',to:'pd_whid'
  47. },{
  48. from:'pr_whcode',to:'pd_whcode'
  49. },{
  50. from:'pr_whname',to:'pd_whname'
  51. },{
  52. from:'pr_purcprice',to:'pd_orderprice'
  53. }],
  54. });
  55. }
  56. },
  57. //放大镜赋值关系 以及 tpl模板
  58. 'dbfindtrigger[name=pd_whname]':{
  59. beforerender:function(f){
  60. Ext.apply(f,{
  61. dbfinds:[{
  62. from:'id',to:'pd_whid',ignore:true
  63. },{
  64. from:'wh_code',to:'pd_whcode'
  65. },{
  66. from:'wh_description',to:'pd_whname'
  67. }],
  68. }) ;
  69. }
  70. }
  71. });
  72. },
  73. addCombo:function(){
  74. var combo=this.ownerCmp;
  75. Ext.create('Ext.window.Window',{
  76. layout:'vbox',
  77. bodyPadding: 15,
  78. width:500,
  79. items:[{
  80. fieldLabel:'实际值',
  81. xtype:'textfield'
  82. },{
  83. fieldLabel:'显示值',
  84. xtype:'textfield'
  85. }],
  86. buttons:[{
  87. text:'确认',
  88. handler:function(b){
  89. combo.setValue('ok');
  90. b.up('window').close();
  91. }
  92. }],
  93. renderTo:this.ownerCmp.ownerCt.getEl()
  94. }).show();
  95. },
  96. initCopyData: function(formData) {
  97. var me = this;
  98. var form = this.getView();
  99. var detailCount = form.detailCount;
  100. var main = formData.main;
  101. var auditTexts = form.auditTexts;
  102. // 单号、id清空
  103. main[form._idField] = 0;
  104. main[form._codeField] = '';
  105. //采购单id,采购单号清空
  106. main['pi_puid'] = 0;
  107. main['pi_pucode'] = '';
  108. // 单据状态为录入状态(未审核)
  109. main[form._statusCodeField] = auditTexts.unAuditCode;
  110. main[form._statusField] = auditTexts.unAuditText;
  111. //重设录入人,录入日期,审核人,审核日期
  112. main['creatorId'] = saas.util.BaseUtil.getCurrentUser().id;
  113. main['creatorName'] = saas.util.BaseUtil.getCurrentUser().realname;
  114. main['createTime'] = Ext.Date.format(new Date(), 'Y-m-d H:i:s');
  115. main['updaterId'] = saas.util.BaseUtil.getCurrentUser().id;
  116. main['updaterName'] = saas.util.BaseUtil.getCurrentUser().realname;
  117. main['updateTime'] = Ext.Date.format(new Date(), 'Y-m-d H:i:s');
  118. main[form._auditmanField] = undefined;
  119. main[form._auditdateField] = undefined;
  120. for(var k in main) {
  121. // 主表日期改为当前日期
  122. if(saas.util.BaseUtil.isDateString(main[k])) {
  123. main[k] = Ext.Date.format(new Date, 'Y-m-d H:i:s');
  124. }
  125. }
  126. for(var j = 0; j < detailCount; j++) {
  127. var detail = formData['detail' + j];
  128. for(var x = 0; x < detail.length; x ++) {
  129. var d = detail[x];
  130. for(var k in d) {
  131. // 从表id清空
  132. delete d['id'];
  133. //采购单号清空
  134. delete d['pd_orderid'];
  135. delete d['pd_ordercode'];
  136. delete d['pd_orderdetno'];
  137. // 从表日期清空
  138. if(saas.util.BaseUtil.isDateString(d[k])) {
  139. d[k] = '';
  140. }
  141. }
  142. }
  143. }
  144. return me.myInitCopyData(formData);;
  145. },
  146. turnOut: function() {
  147. var me = this,
  148. form = me.getView(),
  149. id = form.getForm().findField(form._idField);
  150. form.setLoading(true);
  151. saas.util.BaseUtil.request({
  152. url: form._turnOutUrl+'/'+id.value,
  153. method: 'POST',
  154. })
  155. .then(function(localJson) {
  156. form.setLoading(false);
  157. if(localJson.success){
  158. var intValue = localJson.data.id,
  159. codeValue= localJson.data.code,
  160. name = localJson.data.name;
  161. saas.util.BaseUtil.openTab('purchase-purchaseout-formpanel',name+"("+codeValue+")",codeValue+intValue, {
  162. initId: intValue
  163. });
  164. saas.util.BaseUtil.showSuccessToast('转单成功');
  165. }
  166. })
  167. .catch(function(res) {
  168. form.setLoading(false);
  169. console.error(res);
  170. saas.util.BaseUtil.showErrorToast('转单失败: ' + res.message);
  171. });
  172. }
  173. });