暫無描述

trafficData0625.js 5.9KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292
  1. getworkOrder()
  2. $('.btn_time').click(function(e) {
  3. if(e.target.tagName == 'SPAN') {
  4. if($(e.target).attr('data-state') == '1') {
  5. $(".hwsjtj").hide()
  6. $('.daySeat').css('display', 'none')
  7. $('.timeTraffic').css('display', 'inline-block')
  8. $('#traffic').css('display', 'none')
  9. $('#timeTraffic').css('display', 'block')
  10. $(this).siblings(".act").children("label").attr("indexTitle", "日话务数据统计1")
  11. $('.call_situation h2').text('话务数据统计')
  12. getworkOrder()
  13. trafficState = 0
  14. }
  15. }
  16. e.stopPropagation();
  17. })
  18. function getworkOrder() {
  19. let workOrderData = [];
  20. let workOrderName = []
  21. new doAjax({
  22. url: huayi.config.callcenter_url + "/InfoNew/GetTelCountByNow",
  23. data: {
  24. timetype: telCountByNowType
  25. },
  26. callBack: function(res) {
  27. var data = res.data.hw[0]
  28. console.log(data)
  29. trafficDataChart(data)
  30. }
  31. });
  32. }
  33. function getLabelOption(positionObj,numberType){
  34. var labelOption = {
  35. show: true,
  36. rotate: 0,
  37. align: 'center',
  38. color: '#fff',
  39. verticalAlign: 'middle',
  40. position: positionObj,
  41. formatter: function(params) {
  42. if(params.value > 0) {
  43. if(numberType){
  44. return params.value + "%";
  45. } else{
  46. return params.value;
  47. }
  48. } else {
  49. return ' ';
  50. }
  51. },
  52. fontSize: 12,
  53. };
  54. return labelOption
  55. }
  56. function trafficDataChart(getdata) {
  57. let hotThingsLeft = echarts.init(document.getElementById("timeTrafficLeft"));
  58. let hotThingsRight = echarts.init(document.getElementById("timeTrafficRight"));
  59. window.onresize = function() {
  60. hotThingsLeft.resize()
  61. hotThingsRight.resize()
  62. }
  63. hotThingsLeft.setOption(getOption(getdata));
  64. hotThingsRight.setOption(getOption(getdata));
  65. }
  66. function getOption(getdata){
  67. return option = {
  68. tooltip: {
  69. trigger: 'item',
  70. show: true,
  71. // 进行数据处理
  72. formatter: function(params) {
  73. console.log(params, 'params')
  74. var html = '';
  75. if(params.value > 0) {
  76. html += params.marker;
  77. if(params.name.indexOf('率') >= 0) {
  78. html += params.seriesName + ': ' + params.value + '%<br/>';
  79. } else {
  80. html += params.seriesName + ': ' + params.value + '<br/>';
  81. }
  82. }
  83. return html;
  84. }
  85. },
  86. grid: {
  87. left: '3%',
  88. right: '4%',
  89. bottom: '15%',
  90. containLabel: true
  91. },
  92. xAxis: [{
  93. type: 'category',
  94. axisLine: {
  95. lineStyle: {
  96. color: '#ffffff'
  97. }
  98. },
  99. axisLabel: {
  100. show: true,
  101. rotate: 0, // 角度值:Number
  102. interval: '0',
  103. verticalAlign: 'left',
  104. fontSize: 12, // 顺便调小一点字体大小
  105. padding: [0, 0, 0, -10],
  106. textStyle: {
  107. color: '#ffffff'
  108. },
  109. formatter: function (value) {
  110. //x轴的文字改为竖版显示
  111. var str = value;
  112. if (value === "接通量呼入量") {
  113. str = "呼入量 接通量"
  114. } else if(value === "呼出接通量呼出量"){
  115. str = "呼出量 呼出接通量"
  116. }else if(value === "呼入接通率"){
  117. str = "呼入接通率"
  118. }else if(value === "呼出接通率"){
  119. str = " 呼出接通率"
  120. }
  121. return str
  122. }
  123. },
  124. data: ['接通量呼入量', '呼入接通率', '呼出接通量呼出量', '呼出接通率']
  125. }],
  126. yAxis: [{
  127. type: 'value',
  128. splitLine: {
  129. show: false
  130. },
  131. axisLine: {
  132. lineStyle: {
  133. color: '#ffffff'
  134. }
  135. }
  136. },
  137. {
  138. type: 'value',
  139. axisLine: {
  140. lineStyle: {
  141. color: '#ffffff'
  142. }
  143. },
  144. splitLine: {
  145. show: false
  146. },
  147. min: 0,
  148. max: 100,
  149. axisLabel: {
  150. formatter: '{value} %'
  151. }
  152. }
  153. ],
  154. color: ['#cd5c5c','#87cefa','#da70d6','#32cd32','#6495ed',
  155. '#ff69b4','#ba55d3','#cd5c5c','#ffa500','#40e0d0'],
  156. series: [
  157. {
  158. name: '呼出量',
  159. type: 'bar',
  160. barWidth: 15,
  161. label: getLabelOption(['50%', -5],0),
  162. emphasis: {
  163. focus: 'series'
  164. },
  165. data: [0, 0, getdata.hccount, 0]
  166. },
  167. {
  168. name: '有效来电',
  169. type: 'bar',
  170. stack: 'A',
  171. label: getLabelOption(['200%', 40],0),
  172. barWidth: 15,
  173. emphasis: {
  174. focus: 'series'
  175. },
  176. data: [getdata.effective, 0, 0, 0]
  177. },
  178. {
  179. name: '无效来电',
  180. type: 'bar',
  181. stack: 'A',
  182. label: getLabelOption(['200%', 20],0),
  183. barWidth: 15,
  184. emphasis: {
  185. focus: 'series'
  186. },
  187. data: [getdata.invalid, 0, 0, 0]
  188. },
  189. {
  190. name: '接通率',
  191. type: 'bar',
  192. stack: 'B',
  193. barWidth: 15,
  194. yAxisIndex: 1,
  195. label: getLabelOption(['250%', 60],1),
  196. emphasis: {
  197. focus: 'series'
  198. },
  199. data: [0, getdata.jtbili, 0, 0]
  200. },
  201. {
  202. name: '自助率',
  203. type: 'bar',
  204. stack: 'B',
  205. barWidth: 15,
  206. yAxisIndex: 1,
  207. label: getLabelOption(['250%', 40],1),
  208. emphasis: {
  209. focus: 'series'
  210. },
  211. data: [0, getdata.zzbili, 0, 0]
  212. },
  213. {
  214. name: '回拨率',
  215. type: 'bar',
  216. stack: 'B',
  217. barWidth: 15,
  218. yAxisIndex: 1,
  219. label: getLabelOption(['250%', 20],1),
  220. emphasis: {
  221. focus: 'series'
  222. },
  223. data: [0, getdata.hbbili, 0, 0]
  224. },
  225. {
  226. name: '呼出接通率',
  227. type: 'bar',
  228. barWidth: 15,
  229. yAxisIndex: 1,
  230. label: getLabelOption(['50%', -5],1),
  231. emphasis: {
  232. focus: 'series'
  233. },
  234. data: [0, 0, 0, getdata.hcbili]
  235. },
  236. {
  237. name: '人工接通',
  238. type: 'bar',
  239. stack: 'Ad',
  240. barWidth: 15,
  241. label: getLabelOption(['200%', 60],0),
  242. emphasis: {
  243. focus: 'series'
  244. },
  245. data: [getdata.jtcount, 0, 0, 0]
  246. },
  247. {
  248. name: '自助接通量',
  249. type: 'bar',
  250. stack: 'Ad',
  251. barWidth: 15,
  252. label: getLabelOption(['200%', 40],0),
  253. emphasis: {
  254. focus: 'series'
  255. },
  256. data: [getdata.zzcount, 0, 0, 0]
  257. },
  258. {
  259. name: '未接通回拨量',
  260. type: 'bar',
  261. stack: 'Ad',
  262. barWidth: 15,
  263. label: getLabelOption(['200%', 20],0),
  264. emphasis: {
  265. focus: 'series'
  266. },
  267. data: [getdata.hbcount, 0, 0, 0]
  268. },
  269. {
  270. name: '呼出接通量',
  271. type: 'bar',
  272. barWidth: 15,
  273. label: getLabelOption(['50%', -5],0),
  274. emphasis: {
  275. focus: 'series'
  276. },
  277. data: [0, 0, getdata.hcjtcount, 0]
  278. },
  279. ]
  280. };
  281. }