customzl.js 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160
  1. Ext.QuickTips.init();
  2. Ext.define('erp.controller.scm.product.customzl', {
  3. extend: 'Ext.app.Controller',
  4. FormUtil: Ext.create('erp.util.FormUtil'),
  5. BaseUtil: Ext.create('erp.util.BaseUtil'),
  6. views:[
  7. 'scm.product.customzl','core.form.Panel',
  8. 'core.button.Audit','core.button.Save','core.button.Close','core.button.Add','core.button.Delete',
  9. 'core.button.Upload','core.button.Update','core.button.Delete','core.button.Print','core.button.DateCalculate',
  10. 'core.trigger.TextAreaTrigger','core.trigger.DbfindTrigger','core.form.YnField',
  11. 'core.form.FileField','core.form.MonthDateField'
  12. ],
  13. init:function(){
  14. var me = this;
  15. this.control({
  16. 'erpSaveButton': {
  17. click: function(btn){
  18. this.FormUtil.beforeSave(this);
  19. }
  20. },
  21. 'erpAddButton': {
  22. click: function(){
  23. me.FormUtil.onAdd('addcustomzl'+new Date().getTime(), '新增自定义区间', 'jsps/scm/product/customzl.jsp');
  24. }
  25. },
  26. 'erpUpdateButton': {
  27. click: function(btn){
  28. this.FormUtil.onUpdate(this);
  29. }
  30. },
  31. 'erpDeleteButton' : {
  32. click: function(btn){
  33. me.FormUtil.onDelete(Ext.getCmp('cz_id').value);
  34. }
  35. },
  36. 'erpDateCalculateButton':{
  37. click:function(btn){
  38. me.calculate(btn);
  39. }
  40. },
  41. 'erpPrintButton': {
  42. click: function(btn){
  43. var kind=Ext.getCmp('cz_type').value;
  44. var todate="'"+ Ext.Date.format(Ext.getCmp('cz_todate').value,'Y-m-d')+"'";
  45. var reportName="";
  46. var condition="";
  47. if(kind=="自定义库存帐龄表"){
  48. reportName="PwAgeAll_custom";
  49. condition='{batch_view.ba_date}<='+'date('+todate+')'+' and '+'{BATCH_VIEW.THISREMAIN}<>0';
  50. }else if(kind=="应收帐龄表"){
  51. reportName="ARAgeAll_custom";
  52. }else if(kind=="应付帐龄表"){
  53. reportName="APAgeAll_custom";
  54. }else if(kind=="预收帐龄表"){
  55. reportName="PRERECAgeAll_custom";
  56. }else if(kind=="预付帐龄表"){
  57. reportName="PREPAYAgeAll_custom";
  58. }else if(kind=="发出商品账龄"){
  59. reportName="GOODSSEND_custom";
  60. }else if(kind=="应付暂估账龄"){
  61. reportName="ESTIMATE_custom";
  62. }
  63. var fromdate1='';var fromdate2='';var fromdate3='';var fromdate4='';var fromdate5='';var fromdate6='';var fromdate7='';var fromdate8='';var fromdate9='';var fromdate10='';var fromdate11='';var fromdate12='';var fromdate13='';var fromdate14='';var fromdate15='';
  64. var todate1='';var todate2='';var todate3='';var todate4='';var todate5='';var todate6='';var todate7='';var todate8='';var todate9='';var todate10='';var todate11='';var todate12='';var todate13='';var todate14='';var todate15='';
  65. var from='',to='';
  66. for(var i=1;i<16;i++){
  67. var fromdate='',todatet='';
  68. var fd=Ext.getCmp('cz_fromdate'+i).value;
  69. var td=Ext.getCmp('cz_todate'+i).value;
  70. var fdl='';
  71. if(i>1){
  72. fdl=Ext.getCmp('cz_fromdate'+(i-1)).value;
  73. }
  74. if(fd!=null&&fd!=''&&td!=null&&fd!=''&&td-fd>=0){
  75. fromdate=Ext.Date.format(fd,'Y-m-d');
  76. todatet=Ext.Date.format(td,'Y-m-d');
  77. if(i>1){
  78. if(fdl==null||fdl==''){
  79. showError('区间设置有误:区间应连续设置,请设置区间'+(i-1));
  80. return;
  81. }else if(fdl-td!=86400000){
  82. showError('区间设置有误:区间应连续设置,区间'+i+'的截止日期应该与区间'+(i-1)+'的开始日期,天数差为1');
  83. return;
  84. }
  85. }
  86. }else if((fd==null||fd=='')&&(td==null||td=='')){
  87. }else{
  88. showError('区间'+i+"设置有误");
  89. return;
  90. }
  91. if(i==1){
  92. from+=fromdate,to+=todatet;
  93. }else{
  94. from+='@'+fromdate,to+='@'+todatet;
  95. }
  96. }
  97. var c=from+'@'+to;
  98. //在这里传条件和报表名字
  99. //=======================================================
  100. var me = this;
  101. Ext.Ajax.request({
  102. url : basePath + 'common/enterprise/getprinturl.action?caller=' + caller,
  103. params: {
  104. reportName: reportName
  105. },
  106. callback: function(opt, s, r) {
  107. var re = Ext.decode(r.responseText);
  108. thisreport=re.reportname;
  109. if(thisreport==null||thisreport==''){
  110. thisreport=reportName;
  111. }
  112. var whichsystem = re.whichsystem;
  113. var urladdress = "";
  114. var rpname = re.reportName;
  115. if(Ext.isEmpty(rpname) || rpname == "null"){
  116. urladdress = re.printurl;
  117. } else if(rpname.indexOf(thisreport) > 0){
  118. urladdress = re.ErpPrintLargeData;
  119. } else{
  120. urladdress = re.printurl;
  121. }
  122. //在这里传条件和报表名字
  123. me.FormUtil.batchPrint('',thisreport,condition,kind,todate,'',c,'',urladdress,whichsystem);
  124. }
  125. });
  126. }
  127. },
  128. 'erpCloseButton': {
  129. click: function(btn){
  130. me.FormUtil.beforeClose(me);
  131. }
  132. }
  133. });
  134. },
  135. getForm: function(btn){
  136. return btn.ownerCt.ownerCt;
  137. },
  138. calculate:function(btn){
  139. var me = this;
  140. var form=btn.ownerCt,id=Ext.getCmp('cz_id').value;
  141. form.setLoading(true);
  142. Ext.Ajax.request({
  143. url : basePath + 'scm/product/calculateDate.action?caller=' + caller,
  144. params:{id:id},
  145. callback: function(opt, s, r) {
  146. form.setLoading(false);
  147. var re = Ext.decode(r.responseText);
  148. if(re.success){
  149. showMessage('提示', '区间日期计算成功!');
  150. window.location.reload();
  151. }else{
  152. var str = re.exceptionInfo;
  153. showError(str);
  154. return;
  155. }
  156. }
  157. });
  158. }
  159. });