charts4.html 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410
  1. <div ng-controller="charts4Ctrl" class="bgBody">
  2. <div class="head">
  3. <div class="time">
  4. {{jry_hours}}:{{getMinute(jry_minute)}}:{{getSecond(jry_second)}} {{jry_week}} {{jry_year}}年{{jry_month}}月{{jry_data}}日
  5. </div>
  6. </div>
  7. <div class="body">
  8. <div class="firstBox">
  9. <div class="degreeBox">
  10. <div class="boxTitle">满意度TOP5(上月)</div>
  11. <div id="satisfied" style="height: 254px;width:476px"></div>
  12. </div>
  13. <div class="peopleOnTimeBox">
  14. <div class="boxTitle">人员按时解决率TOP5(上月)</div>
  15. <div id="peopleOnTime" style="height: 254px;width:476px"></div>
  16. </div>
  17. <div class="faultBox">
  18. <div class="boxTitle">故障原因TOP5(上月)</div>
  19. <div id="fault" style="height: 254px;width:476px"></div>
  20. </div>
  21. </div>
  22. <div class="secondBox">
  23. <div class="sourceBox">
  24. <div class="boxTitle">事件来源占比(上月)</div>
  25. <div id="source" style="height: 254px;width:476px"></div>
  26. </div>
  27. <div class="responseBox">
  28. <div class="boxTitle">事件响应时长趋势</div>
  29. <div class="responseAverage">
  30. <div></div>
  31. <div>响应平均时长: {{allResponseAverageTime}}″</div>
  32. </div>
  33. <div id="response" style="height: 254px;width:476px"></div>
  34. </div>
  35. <div class="solveBox">
  36. <div class="boxTitle">事件解决时长趋势</div>
  37. <div class="solveAverage">
  38. <div></div>
  39. <div>解决平均时长: {{solveAverageTime}}″</div>
  40. </div>
  41. <div id="woll" style="height: 254px;width:476px"></div>
  42. </div>
  43. </div>
  44. <div class="thirdBox">
  45. <div class="headTwoBox">
  46. <div class="classificationBox">
  47. <div class="boxTitle">近5年事件分类占比</div>
  48. <!-- 雷达图 -->
  49. <div id="classification" style="height: 243px;width:464px;margin-top:10px"></div>
  50. <!-- 饼图轮播 -->
  51. <!-- <div class="tab">
  52. <div class="tabList" ng-class="classificationBoxTabList==0?'tabListOn':''">全部</div>
  53. <div class="tabList" ng-class="classificationBoxTabList==1?'tabListOn':''">2015</div>
  54. <div class="tabList" ng-class="classificationBoxTabList==2?'tabListOn':''">2016</div>
  55. <div class="tabList" ng-class="classificationBoxTabList==3?'tabListOn':''">2017</div>
  56. <div class="tabList" ng-class="classificationBoxTabList==4?'tabListOn':''">2018</div>
  57. <div class="tabList" ng-class="classificationBoxTabList==5?'tabListOn':''">2019</div>
  58. </div>
  59. <div class="classificationSee">
  60. <div class="classificationFlex">
  61. <div id="classification1" style="height: 213px;width:464px"></div>
  62. <div id="classification6" style="height: 213px;width:464px"></div>
  63. <div id="classification5" style="height: 213px;width:464px"></div>
  64. <div id="classification4" style="height: 213px;width:464px"></div>
  65. <div id="classification3" style="height: 213px;width:464px"></div>
  66. <div id="classification2" style="height: 213px;width:464px"></div>
  67. <div id="classification7" style="height: 213px;width:464px"></div>
  68. </div>
  69. </div> -->
  70. </div>
  71. <div class="ciyunty">
  72. <div class="boxTitle">近5年事件分类词云图</div>
  73. <div class="b_10_3">
  74. <canvas width="350" height="270" id="myCanvas"></canvas>
  75. <div id="tags">
  76. <a href="#" style="color:#ffb300;font-size:22px;font-weight:bold"></a>
  77. <a href="#" style="color:#ffb300;font-size:22px;font-weight:bold"></a>
  78. <a href="#" style="color:#ffb300;font-size:16px;font-weight:bold">端口模块问题</a>
  79. <a href="#" style="color:#ff666e;font-size:22px">邮箱被锁定</a>
  80. <a href="#" style="color:#00ccff;font-size:15px">认证问题</a>
  81. <a href="#" style="color:#00ccff;font-size:15px">网线问题</a>
  82. <a href="#" style="color:#00ccff;font-size:15px">水晶头问题</a>
  83. <a href="#" style="color:#00ccff;font-size:15px">认证服务器问题</a>
  84. <a href="#" style="color:#fff200;font-size:15px">交换机问题</a>
  85. </div>
  86. </div>
  87. </div>
  88. </div>
  89. <div class="incidentFiveAllBox">
  90. <div class="boxTitle">
  91. <div>近5年事件统计</div>
  92. <div class="incidentNum">事件总数:{{incidentFiveNumAll}}</div>
  93. </div>
  94. <div id="incidentFiveAll" style="height: 254px;width:938px"></div>
  95. </div>
  96. <div class="incidentFivePecentBox">
  97. <div class="boxTitle">近5年事件分类同比增幅</div>
  98. <div class="tab">
  99. <!-- <div class="tabList" ng-class="incidentFivePecentBoxTabList==0?'tabListOn':''">全部</div> -->
  100. <div class="tabList">&nbsp;&nbsp;</div>
  101. <div class="tabList" ng-class="incidentFivePecentBoxTabList==0?'tabListOn':''">{{fenlei[0].category}}</div>
  102. <div class="tabList" ng-class="incidentFivePecentBoxTabList==1?'tabListOn':''">{{fenlei[1].category}}</div>
  103. <div class="tabList" ng-class="incidentFivePecentBoxTabList==2?'tabListOn':''">{{fenlei[2].category}}</div>
  104. <div class="tabList" ng-class="incidentFivePecentBoxTabList==3?'tabListOn':''">{{fenlei[3].category}}</div>
  105. <div class="tabList" ng-class="incidentFivePecentBoxTabList==4?'tabListOn':''">{{fenlei[4].category}}</div>
  106. </div>
  107. <div class="incidentFivePecentSee">
  108. <div class="incidentFivePecentFlex">
  109. <!-- <div id="incidentFivePecent1" style="height: 213px;width:1100px"></div> -->
  110. <div id="incidentFivePecent2" style="height: 213px;width:920px"></div>
  111. <div id="incidentFivePecent3" style="height: 213px;width:920px"></div>
  112. <div id="incidentFivePecent4" style="height: 213px;width:920px"></div>
  113. <div id="incidentFivePecent5" style="height: 213px;width:920px"></div>
  114. <div id="incidentFivePecent6" style="height: 213px;width:920px"></div>
  115. <div id="incidentFivePecent7" style="height: 213px;width:920px"></div>
  116. </div>
  117. </div>
  118. </div>
  119. </div>
  120. </div>
  121. </div>
  122. <style>
  123. #myCanvas{
  124. margin-top: 15px
  125. }
  126. .bgBody{
  127. width: 1920px;
  128. height: 1080px;
  129. background: url(assets/images/daping/bg_04.png);
  130. background-size: cover;
  131. display: flex;
  132. flex-direction:column
  133. }
  134. .head{
  135. padding: 25px 30px;
  136. display: flex;
  137. justify-content:flex-end;
  138. align-items: center
  139. }
  140. .head .time{
  141. color: white;
  142. font-size: 32px;
  143. }
  144. .body{
  145. width: 100%;
  146. display: flex;
  147. margin-top: 6px
  148. }
  149. .firstBox{
  150. width: 478px;
  151. }
  152. .firstBox>div{
  153. height: 311px;
  154. }
  155. .firstBox .degreeBox .boxTitle{
  156. color: white;
  157. font-size: 22px;
  158. padding-left: 24px;
  159. padding-top: 25px;
  160. }
  161. .firstBox .peopleOnTimeBox .boxTitle{
  162. color: white;
  163. font-size: 22px;
  164. padding-left: 24px;
  165. padding-top: 25px;
  166. }
  167. .firstBox .faultBox .boxTitle{
  168. color: white;
  169. font-size: 22px;
  170. padding-left: 24px;
  171. padding-top: 30px;
  172. }
  173. .secondBox{
  174. width: 478px;
  175. }
  176. .secondBox>div{
  177. height: 311px;
  178. }
  179. .secondBox .sourceBox .boxTitle{
  180. color: white;
  181. font-size: 22px;
  182. padding-left: 24px;
  183. padding-top: 25px;
  184. }
  185. .secondBox .responseBox{
  186. position: relative;
  187. }
  188. .secondBox .responseBox .boxTitle{
  189. color: white;
  190. font-size: 22px;
  191. padding-left: 24px;
  192. padding-top: 25px;
  193. }
  194. .secondBox .solveBox{
  195. position: relative;
  196. }
  197. .secondBox .solveBox .boxTitle{
  198. color: white;
  199. font-size: 22px;
  200. padding-left: 24px;
  201. padding-top: 30px;
  202. }
  203. .thirdBox{
  204. width: 954px
  205. }
  206. .headTwoBox{
  207. width: 100%;
  208. display: flex
  209. }
  210. .headTwoBox>div{
  211. width: 472px;
  212. height: 319px;
  213. }
  214. .headTwoBox .boxTitle{
  215. font-size: 22px;
  216. color: white;
  217. padding-left: 21px;
  218. padding-top: 24px;
  219. }
  220. .ciyunty{
  221. position: relative;
  222. }
  223. .classificationBox .tab{
  224. display: flex;
  225. justify-content:space-between;
  226. border-bottom: 1px #118178 solid;
  227. margin:0 28px 0 28px;
  228. height: 40px;
  229. align-items: center;
  230. color: #118178;
  231. font-size: 14px
  232. }
  233. .classificationBox .tabListOn{
  234. border-bottom: 2px #118178 solid;
  235. color: white
  236. }
  237. .classificationBox .tabList{
  238. padding: 0 10px;
  239. height: 38px;
  240. line-height: 38px;
  241. /* border-bottom: 2px #118178 solid; */
  242. }
  243. /* 词云图 */
  244. .b_10_3 {
  245. overflow: hidden; text-align:center;
  246. background:transparent;
  247. position: absolute;
  248. left: 61px;
  249. top: 25px;
  250. z-index: 99999;
  251. }
  252. .b_10_3 span {
  253. float: left; font-size:16px; line-height:2em;
  254. }
  255. .b_10_3 span.bold {
  256. font-weight:bold;
  257. }
  258. .b_10_3 span:nth-child(1) {
  259. width: 35%;
  260. text-align: center;
  261. }
  262. .b_10_3 span:nth-child(2) {
  263. width: 30%;
  264. text-align: left;
  265. }
  266. .b_10_3 span:nth-child(3) {
  267. width: 35%;
  268. text-align: left;
  269. }
  270. .b_10_3 span:nth-child(4) {
  271. width: 35%;
  272. text-align: right;
  273. }
  274. .b_10_3 span:nth-child(5) {
  275. width: 25%;
  276. text-align: right;
  277. }
  278. .b_10_3 span:nth-child(6) {
  279. width: 25%;
  280. text-align: right;
  281. }
  282. .b_10_3 span:nth-child(7) {
  283. width: 50%;
  284. text-align: center;
  285. }
  286. .b_10_3 span:nth-child(8) {
  287. width: 30%;
  288. text-align: center;
  289. }
  290. .b_10_3 span:nth-child(9) {
  291. width: 50%;
  292. text-align: right;
  293. }
  294. .b_10_3 span:nth-child(10) {
  295. width: 40%;
  296. text-align: right;
  297. }
  298. .incidentFiveAllBox{
  299. height: 315px;
  300. }
  301. .incidentFiveAllBox .boxTitle{
  302. font-size: 22px;
  303. color: white;
  304. padding-left: 21px;
  305. padding-top: 17px;
  306. padding-right: 28px;
  307. display: flex;
  308. justify-content:space-between;
  309. align-items: center
  310. }
  311. .incidentFiveAllBox .boxTitle .incidentNum{
  312. font-size: 16px
  313. }
  314. .incidentFivePecentBox{
  315. height: 315px;
  316. }
  317. .incidentFivePecentBox .boxTitle{
  318. font-size: 22px;
  319. color: white;
  320. padding-left: 21px;
  321. padding-top: 17px;
  322. }
  323. .incidentFivePecentBox .tab{
  324. display: flex;
  325. justify-content:space-between;
  326. border-bottom: 1px #118178 solid;
  327. margin:0 28px 0 28px;
  328. height: 40px;
  329. align-items: center;
  330. color: #118178;
  331. font-size: 14px
  332. }
  333. .incidentFivePecentBox .tabList{
  334. padding: 0 10px;
  335. height: 38px;
  336. line-height: 38px;
  337. }
  338. .incidentFivePecentBox .tabListOn{
  339. border-bottom: 2px #118178 solid;
  340. color: white
  341. }
  342. .incidentFivePecentSee{
  343. width: 920px;
  344. height: 213px;
  345. overflow: hidden;
  346. position: relative;
  347. }
  348. .incidentFivePecentFlex{
  349. width: 6440px;
  350. height: 213px;
  351. display: flex;
  352. position: absolute;
  353. left: 0;
  354. top: 0
  355. }
  356. .incidentFivePecentFlex>div{
  357. margin-top: 7px
  358. }
  359. .classificationSee{
  360. width: 464px;
  361. height: 213px;
  362. overflow: hidden;
  363. position: relative
  364. }
  365. .classificationFlex{
  366. width: 3248px;
  367. height: 213px;
  368. display: flex;
  369. position: absolute;
  370. left: 0;
  371. top: 0
  372. }
  373. .responseAverage{
  374. display: flex;
  375. align-items: center;
  376. position: absolute;
  377. left: 30px;
  378. top: 76px;
  379. }
  380. .responseAverage div:nth-child(1){
  381. width: 10px;
  382. height: 10px;
  383. border-radius: 50%;
  384. background-color: #0ca7a7;
  385. margin-right: 10px
  386. }
  387. .responseAverage div:nth-child(2){
  388. font-size: 14px;
  389. color: white
  390. }
  391. .solveAverage{
  392. display: flex;
  393. align-items: center;
  394. position: absolute;
  395. left: 30px;
  396. top: 76px;
  397. }
  398. .solveAverage div:nth-child(1){
  399. width: 10px;
  400. height: 10px;
  401. border-radius: 50%;
  402. background-color: #f98f3b;
  403. margin-right: 10px
  404. }
  405. .solveAverage div:nth-child(2){
  406. font-size: 14px;
  407. color: white
  408. }
  409. </style>