rock_page_finccbxchart.php 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155
  1. <?php
  2. /**
  3. * 模块:finfybx.费用报销报表
  4. * 来源:http://www.rockoa.com/
  5. */
  6. defined('HOST') or die ('not access');
  7. ?>
  8. <script>
  9. $(document).ready(function(){
  10. var myChart = [],darr=[];
  11. var c = {
  12. getparams:function(xu,tfid,nas,chatlx,dz){
  13. var cans = {
  14. tablename:'todo',url:js.getajaxurl('flowtotal','flowopt','flow'),modenum:'finfybx',
  15. params:{atype:'all',total_fields:tfid,total_type:'sum|money'},xuhao:xu,chatlx:chatlx,
  16. where:'and a.`status` in(1)',
  17. columns:[{
  18. text:nas,dataIndex:'name'
  19. },{
  20. text:'金额',dataIndex:'value'
  21. },{
  22. text:'比例',dataIndex:'bili'
  23. }],
  24. load:function(a){
  25. c.loadcharts(this.xuhao,this.chatlx);
  26. }
  27. };
  28. if(dz)cans.url=dz;
  29. return cans;
  30. },
  31. reload:function(o1,lx){
  32. darr[lx].reload();
  33. },
  34. loadcharts:function(oi,tlx){
  35. if(!tlx)tlx='pie';
  36. var rows = darr[oi].getData('rows'),i,len=rows.length,v;
  37. var xAxis=[],data=[];
  38. for(i=0;i<len;i++){
  39. if(rows[i].name!='合计'){
  40. xAxis.push(rows[i].name);
  41. v = rows[i].value;if(v=='')v=0;
  42. data.push({value:parseFloat(v),name:rows[i].name});
  43. }
  44. }
  45. if(!myChart[oi])myChart[oi] = echarts.init(get('viewchats'+oi+'_{rand}'));
  46. var option = {
  47. title: {
  48. text: '',
  49. left: 'center'
  50. },
  51. tooltip : {
  52. trigger: 'item',
  53. formatter: "{b} : {c}元 ({d}%)"
  54. },
  55. series: [{
  56. name: '金额',
  57. type: tlx,
  58. data: data
  59. }]
  60. };
  61. if(tlx!='pie'){
  62. option.xAxis={data: xAxis};
  63. option.yAxis={type : 'value'};
  64. }
  65. myChart[oi].setOption(option);
  66. },
  67. search:function(){
  68. var cnas = {
  69. 'soufields_applydt_start':get('dt1_{rand}').value,
  70. 'soufields_applydt_end':get('dt2_{rand}').value,
  71. };
  72. darr[0].setparams(cnas, true);
  73. darr[1].setparams(cnas, true);
  74. darr[2].setparams(cnas, true);
  75. }
  76. };
  77. darr[0] = $('#view0_{rand}').bootstable(c.getparams(0,'b.`udeptname`','部门','pie'));
  78. darr[1] = $('#view1_{rand}').bootstable(c.getparams(1,'left(a.`applydt`,7)','月份','line'));
  79. darr[2] = $('#view2_{rand}').bootstable(c.getparams(2,'','报销项目','pie', publicmodeurl('finfybx','itemtotal')));
  80. js.initbtn(c);
  81. });
  82. </script>
  83. <div>
  84. <table width="100%">
  85. <tr>
  86. <td nowrap>日期&nbsp;</td>
  87. <td>
  88. <input onclick="js.datechange(this,'date')" style="width:110px" readonly class="form-control datesss" id="dt1_{rand}" >
  89. </td>
  90. <td>&nbsp;至&nbsp;</td>
  91. <td align="left">
  92. <input onclick="js.datechange(this,'date')" style="width:110px" readonly class="form-control datesss" id="dt2_{rand}" >
  93. </td>
  94. <td style="padding-left:10px">
  95. <button class="btn btn-default" click="search" type="button">统计</button>
  96. </td>
  97. <td width="90%">
  98. </td>
  99. <td align="right" nowrap>
  100. </td>
  101. </tr>
  102. </table>
  103. </div>
  104. <div class="blank10"></div>
  105. <div align="left">
  106. <table border="0" width="100%" cellspacing="0" cellpadding="0">
  107. <tr valign="top">
  108. <td width="50%">
  109. <div align="left" style="min-width:300px" class="list-group">
  110. <div class="list-group-item list-group-item-info">
  111. <i class="icon-bar-chart"></i> 根据部门统计
  112. <span style="float:right" ><a click="reload,0"><i class="icon-refresh"></i></a></span>
  113. </div>
  114. <div id="view0_{rand}"></div>
  115. <div id="viewchats0_{rand}" style="width:100%;height:250px;border:1px #dddddd solid;border-top:0px"></div>
  116. </div>
  117. <div align="left" style="min-width:300px" class="list-group">
  118. <div class="list-group-item list-group-item-info">
  119. <i class="icon-bar-chart"></i> 根据报销项目统计
  120. <span style="float:right" ><a click="reload,2"><i class="icon-refresh"></i></a></span>
  121. </div>
  122. <div id="view2_{rand}"></div>
  123. <div id="viewchats2_{rand}" style="width:100%;height:250px;border:1px #dddddd solid;border-top:0px"></div>
  124. </div>
  125. </td>
  126. <td style="padding-left:10px;">
  127. <div align="left" class="list-group">
  128. <div class="list-group-item list-group-item-success">
  129. <i class="icon-bar-chart"></i> 根据月份统计
  130. <span style="float:right" ><a click="reload,1"><i class="icon-refresh"></i></a></span>
  131. </div>
  132. <div id="view1_{rand}"></div>
  133. <div id="viewchats1_{rand}" style="width:100%;height:250px;border:1px #dddddd solid;border-top:0px"></div>
  134. </div>
  135. </td>
  136. </tr>
  137. </table>
  138. </div>
  139. <div>只统计已审核和待审核的的记录,也就是status=0和1的</div>