indexcopy.js 26 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489
  1. // var marquee2 = document.getElementById("marquee2");
  2. // marquee2.start();
  3. // var marquee1 = document.getElementById("marquee1");
  4. // marquee1.start();
  5. $(function() { // 初始化内容
  6. $("#gogogo2").click(function() {
  7. $(".tabbbbb1").hide();
  8. $(".tabbbbb2").show();
  9. $("body").attr("id","bg2")
  10. })
  11. $("#gogogo").click(function() {
  12. $(".tabbbbb2").hide();
  13. $(".tabbbbb1").show();
  14. $("body").attr("id","")
  15. })
  16. var url = "/wzzgh-fwdt/healthScore/largeScreen?orgId="
  17. // $.post(url,function(data,status){
  18. var data = {
  19. "errorList": [{
  20. "orgtype": "基层",
  21. "level": "warning3",
  22. "createTime": "2021-08-06",
  23. "warntype": null,
  24. "name": "温州市眼镜有限公司",
  25. "closeTime":"2021-08-19",
  26. "id": "c734573b-2e90-43de-8a1b-2acecdd99f9f",
  27. "source": "a",
  28. "openTime": "2021-08-06",
  29. "type": 1,
  30. "status": 1
  31. },
  32. {
  33. "orgtype": "基层",
  34. "level": "warning3",
  35. "createTime": "2021-07-08",
  36. "openTime": "2021-07-08",
  37. "warntype": null,
  38. "name": "温州市龙丰橡胶工业有限公司",
  39. "closeTime": "2021-07-19",
  40. "id": "26320f33-5fc4-4fdc-8e10-27e2713cb047",
  41. "source": "a",
  42. "type": 1,
  43. "status": 1
  44. },
  45. {
  46. "orgtype": "基层",
  47. "level": "warning2",
  48. "createTime": "2021-07-10",
  49. "warntype": null,
  50. "name": "温州市娄桥晓光打火机配件厂",
  51. "closeTime": "2021-08-18",
  52. "id": "01418d5e-5fd1-4d25-a50d-00bf1486cedf",
  53. "source": "a",
  54. "openTime": "2021-07-11",
  55. "type": 1,
  56. "status": 1
  57. },
  58. {
  59. "orgtype": "基层",
  60. "level": "warning2",
  61. "createTime": "2021-06-13",
  62. "warntype": null,
  63. "name": "温州市瓯海娄桥化建有限公司",
  64. "closeTime": "2021-06-13",
  65. "id": "07dbf847-e82e-4e2c-8565-d5667877b80b",
  66. "source": "a",
  67. "openTime": "2021-06-13",
  68. "type": 1,
  69. "status": 1
  70. },
  71. {
  72. "orgtype": "基层",
  73. "level": "warning1",
  74. "createTime": "2021-06-13",
  75. "warntype": null,
  76. "name": "温州联丰皮塑有限公司",
  77. "closeTime": null,
  78. "id": "1ca5716f-0dfe-4b7b-829c-74765f80cb3a",
  79. "source": "a",
  80. "openTime": "2021-07-07",
  81. "type": 1,
  82. "status": 1
  83. },
  84. {
  85. "orgtype": "基层",
  86. "level": "warning1",
  87. "createTime": "2021-05-25",
  88. "warntype": null,
  89. "name": "民政橡胶",
  90. "closeTime": null,
  91. "id": "52bfbac4-4d2d-4a74-8554-0d637d91e718",
  92. "source": "a",
  93. "openTime": "2021-07-08",
  94. "type": 1,
  95. "status": 1
  96. },
  97. {
  98. "orgtype": "基层",
  99. "level": "warning1",
  100. "createTime": "2021-05-21",
  101. "warntype": null,
  102. "name": "娄桥新丰润滑油加工厂",
  103. "closeTime": null,
  104. "id": "57fa436a-99a5-450b-bfbe-cad6de1ff01c",
  105. "source": "a",
  106. "openTime": "2021-07-07",
  107. "type": 1,
  108. "status": 1
  109. },
  110. ],
  111. "topList": [{
  112. h:"森马", "score": 92,
  113. list: [10,
  114. 10,
  115. 2,
  116. 10,
  117. 10,
  118. 10,
  119. 10,
  120. 5,
  121. 10,
  122. 5,
  123. 10
  124. ],
  125. "orgName": "森马集团有限公司",
  126. "top": 1
  127. },{
  128. h:"钟铮锁业", "score": 92,
  129. list: [10,
  130. 10,
  131. 2,
  132. 10,
  133. 10,
  134. 10,
  135. 10,
  136. 5,
  137. 10,
  138. 5,
  139. 10
  140. ],
  141. "orgName": "浙江钟铮锁业有限公司工会",
  142. "top": 1
  143. }, {
  144. h:"", "score": 92,
  145. list: [10,
  146. 10,
  147. 2,
  148. 10,
  149. 10,
  150. 10,
  151. 10,
  152. 5,
  153. 10,
  154. 5,
  155. 10
  156. ],
  157. "orgName": "温州立华科技发展有限公司工会",
  158. "top": 1
  159. }, {
  160. h:"长虹眼镜", "score": 91,
  161. list: [10,
  162. 10,
  163. 1,
  164. 10,
  165. 10,
  166. 10,
  167. 10,
  168. 5,
  169. 10,
  170. 5,
  171. 10,
  172. ],
  173. "orgName": "温州市瓯海长虹眼镜有限公司工会",
  174. "top": 1
  175. }, {
  176. h:"康豪鞋材", "score": 91,
  177. list: [10,
  178. 10,
  179. 1,
  180. 10,
  181. 10,
  182. 10,
  183. 10,
  184. 5,
  185. 10,
  186. 5,
  187. 10,
  188. ],
  189. "orgName": "温州市康豪鞋材有限公司工会",
  190. "top": 1
  191. }, {
  192. h:"创新新材料", "score": 92,
  193. list: [10,
  194. 10,
  195. 2,
  196. 10,
  197. 10,
  198. 10,
  199. 10,
  200. 5,
  201. 10,
  202. 5,
  203. 10,
  204. ],
  205. "orgName": "温州创新新材料股份有限公司工会",
  206. "top": 1
  207. }, {
  208. h:"温州伊斯利", "score": 91,
  209. list: [10,
  210. 10,
  211. 1,
  212. 10,
  213. 10,
  214. 10,
  215. 10,
  216. 5,
  217. 10,
  218. 5,
  219. 10,
  220. ],
  221. "orgName": "温州伊斯利鞋业有限公司工会",
  222. "top": 1
  223. }, {
  224. h:"城建集团", "score": 92,
  225. list: [10,
  226. 10,
  227. 2,
  228. 10,
  229. 10,
  230. 10,
  231. 10,
  232. 5,
  233. 10,
  234. 5,
  235. 10,
  236. ],
  237. "orgName": "温州城建集团有限公司工会",
  238. "top": 1
  239. }, {
  240. h:"晓锋五金厂", "score": 91,
  241. list: [10,
  242. 10,
  243. 1,
  244. 10,
  245. 10,
  246. 10,
  247. 10,
  248. 5,
  249. 10,
  250. 5,
  251. 10,
  252. ],
  253. "orgName": "温州市瓯海娄桥晓锋五金厂工会",
  254. "top": 1
  255. }, {
  256. h:"朗驰实业", "score": 91,
  257. list: [10,
  258. 10,
  259. 1,
  260. 10,
  261. 10,
  262. 10,
  263. 10,
  264. 5,
  265. 10,
  266. 5,
  267. 10,
  268. ],
  269. "orgName": "温州朗驰实业有限公司",
  270. "top": 1
  271. }, {
  272. h:"瑞新集团",
  273. "score": 91,
  274. list: [10,
  275. 10,
  276. 1,
  277. 10,
  278. 10,
  279. 10,
  280. 10,
  281. 5,
  282. 10,
  283. 5,
  284. 10,
  285. ],
  286. "orgName": "瑞新集团有限公司",
  287. "top": 1
  288. }, {
  289. h:"浙江蓝图", "score": 91,
  290. list: [10,
  291. 10,
  292. 1,
  293. 10,
  294. 10,
  295. 10,
  296. 10,
  297. 5,
  298. 10,
  299. 5,
  300. 10,
  301. ],
  302. "orgName": "浙江蓝图包装有限公司",
  303. "top": 1
  304. }, {
  305. h:"大东集团", "score": 91,
  306. list: [10,
  307. 10,
  308. 1,
  309. 10,
  310. 10,
  311. 10,
  312. 10,
  313. 5,
  314. 10,
  315. 5,
  316. 10,
  317. ],
  318. "orgName": "大东集团有限公司",
  319. "top": 1
  320. }, {
  321. h:"", "score": 91,
  322. list: [10,
  323. 10,
  324. 1,
  325. 10,
  326. 10,
  327. 10,
  328. 10,
  329. 5,
  330. 10,
  331. 5,
  332. 10,
  333. ],
  334. "orgName": "温州市进泰鞋业有限公司",
  335. "top": 1
  336. }, {
  337. h:"", "score": 91,
  338. list: [10,
  339. 10,
  340. 1,
  341. 10,
  342. 10,
  343. 10,
  344. 10,
  345. 5,
  346. 10,
  347. 5,
  348. 10,
  349. ],
  350. "orgName": "温州海明威光学有限公司",
  351. "top": 1
  352. }, {
  353. h:"", "score": 91,
  354. list: [10,
  355. 10,
  356. 1,
  357. 10,
  358. 10,
  359. 10,
  360. 10,
  361. 5,
  362. 10,
  363. 5,
  364. 10,
  365. ],
  366. "orgName": "温州市瓯海中亨鞋材有限公司",
  367. "top": 1
  368. }, {
  369. h:"意达石化", "score": 85,
  370. list: [10,
  371. 9,
  372. 1,
  373. 10,
  374. 10,
  375. 10,
  376. 10,
  377. 5,
  378. 10,
  379. 5,
  380. 5,
  381. ],
  382. "orgName": "温州市意达石化泵业有限公司",
  383. "top": 1
  384. }, {
  385. h:"温州鼎圣", "score": 84,
  386. list: [9,
  387. 9,
  388. 1,
  389. 10,
  390. 10,
  391. 10,
  392. 10,
  393. 5,
  394. 10,
  395. 5,
  396. 5,
  397. ],
  398. "orgName": "温州鼎圣制鞋机械有限公司",
  399. "top": 1
  400. }, {
  401. h:"创新住宅", "score": 85,
  402. list: [10,
  403. 9,
  404. 1,
  405. 10,
  406. 10,
  407. 10,
  408. 5,
  409. 5,
  410. 10,
  411. 5,
  412. 10,
  413. ],
  414. "orgName": "温州创新住宅预制构件制造有限公司",
  415. "top": 1
  416. }, {
  417. h:"温州恒驰", "score": 83,
  418. list: [9,
  419. 8,
  420. 1,
  421. 10,
  422. 10,
  423. 10,
  424. 5,
  425. 5,
  426. 10,
  427. 5,
  428. 10,
  429. ],
  430. "orgName": "温州市恒驰汽车配件有限公司",
  431. "top": 1
  432. }, {
  433. h:"三虎动力", "score": 85,
  434. list: [10,
  435. 9,
  436. 1,
  437. 10,
  438. 10,
  439. 10,
  440. 5,
  441. 5,
  442. 10,
  443. 5,
  444. 10,
  445. ],
  446. "orgName": "温州三虎动力部件有限公司",
  447. "top": 1
  448. }, {
  449. h:"物产总公司", "score": 76,
  450. list: [10,
  451. 10,
  452. 1,
  453. 10,
  454. 10,
  455. 10,
  456. 10,
  457. 5,
  458. 0,
  459. 5,
  460. 5,
  461. ],
  462. "orgName": "温州市瓯海区物产总公司",
  463. "top": 1
  464. }, {
  465. h:"娄桥新丰", "score": 65,
  466. list: [9,
  467. 0,
  468. 1,
  469. 10,
  470. 10,
  471. 10,
  472. 5,
  473. 5,
  474. 5,
  475. 5,
  476. 5,
  477. ],
  478. "orgName": "娄桥新丰润滑油加工厂",
  479. "top": 1
  480. }, {
  481. h:"民政橡胶", "score": 69,
  482. list: [8,
  483. 0,
  484. 1,
  485. 10,
  486. 10,
  487. 10,
  488. 5,
  489. 5,
  490. 10,
  491. 5,
  492. 5,
  493. ],
  494. "orgName": "民政橡胶",
  495. "top": 1
  496. }, {
  497. h:"联丰皮塑", "score": 64,
  498. list: [9,
  499. 9,
  500. 1,
  501. 10,
  502. 10,
  503. 0,
  504. 10,
  505. 5,
  506. 0,
  507. 5,
  508. 5,
  509. ],
  510. "orgName": "温州联丰皮塑有限公司",
  511. "top": 1
  512. }, {
  513. h:"娄桥化建", "score": 57,
  514. list: [9,
  515. 7,
  516. 1,
  517. 10,
  518. 10,
  519. 0,
  520. 10,
  521. 5,
  522. 0,
  523. 5,
  524. 0,
  525. ],
  526. "orgName": "温州市瓯海娄桥化建有限公司",
  527. "top": 1
  528. }, {
  529. h:"娄桥晓光", "score": 57,
  530. list: [9,
  531. 7,
  532. 1,
  533. 10,
  534. 10,
  535. 0,
  536. 5,
  537. 5,
  538. 5,
  539. 5,
  540. 0,
  541. ],
  542. "orgName": "温州市娄桥晓光打火机配件厂",
  543. "top": 1
  544. }, {
  545. h:"龙丰橡胶", "score": 39,
  546. list: [8,
  547. 0,
  548. 1,
  549. 10,
  550. 10,
  551. 0,
  552. 0,
  553. 5,
  554. 0,
  555. 5,
  556. 0,
  557. ],
  558. "orgName": "温州市龙丰橡胶工业有限公司",
  559. "top": 1
  560. }, {
  561. h:"瓯海眼镜", "score": 39,
  562. list: [8,
  563. 0,
  564. 1,
  565. 10,
  566. 10,
  567. 0,
  568. 0,
  569. 5,
  570. 0,
  571. 5,
  572. 0,
  573. ],
  574. "orgName": "温州市眼镜有限公司",
  575. "top": 1
  576. }
  577. ],
  578. "obj2": {
  579. "rows1": [{
  580. "mystatus": 1,
  581. "mysum": 5
  582. },
  583. {
  584. "mystatus": 2,
  585. "mysum": 2
  586. },
  587. {
  588. "mystatus": 3,
  589. "mysum": 0
  590. },
  591. {
  592. "mystatus": 4,
  593. "mysum": 6
  594. }
  595. ]
  596. },
  597. "obj1": {
  598. "rows1": []
  599. },
  600. "obj3": {
  601. "rows1": [
  602. {
  603. "months": "2021-04",
  604. "mysum": 0
  605. },
  606. {
  607. "months": "2021-05",
  608. "mysum": 1
  609. },
  610. {
  611. "months": "2021-06",
  612. "mysum": 2
  613. },
  614. {
  615. "months": "2021-07",
  616. "mysum": 1
  617. },
  618. {
  619. "months": "2021-08",
  620. "mysum": 1
  621. },
  622. {
  623. "months": "2021-09",
  624. "mysum": 1
  625. }
  626. ],
  627. "rows2": [
  628. {
  629. "months": "2021-04",
  630. "mysum": 6
  631. },
  632. {
  633. "months": "2021-05",
  634. "mysum": 5
  635. },
  636. {
  637. "months": "2021-06",
  638. "mysum": 2
  639. },
  640. {
  641. "months": "2021-07",
  642. "mysum": 2
  643. },
  644. {
  645. "months": "2021-08",
  646. "mysum": 0
  647. },
  648. {
  649. "months": "2021-09",
  650. "mysum": 0
  651. }
  652. ]
  653. }
  654. }
  655. createBar13("11", data.obj2, "1")
  656. createBar14("11", data.obj3, "1")
  657. var topList = data.topList.sort(function(a, b) {
  658. return b.score - a.score
  659. })
  660. $("#topListNum").html(topList.length);
  661. for (var i in topList) {
  662. var obj = topList[i];
  663. data.obj1.rows1.push({
  664. score: obj.score
  665. })
  666. $("#topListBody").append(
  667. $("<tr num='"+i+"'> <td>" + obj.orgName + " </td> <td style='width: 100px;'>" + obj.score + " </td></tr>")
  668. );
  669. }
  670. $(".tabbbbb1 .map-item").click(function(){
  671. var ptext =$(this).find("p").html();
  672. if(ptext=="蓝图二期"){
  673. ptext="浙江蓝图"
  674. }
  675. if(ptext.indexOf("森马")>-1){
  676. ptext="森马"
  677. }
  678. var obj = topList.find((item)=>{
  679. if(ptext==item.h){
  680. return true;
  681. }else{
  682. return false;
  683. }
  684. });
  685. for(var i in obj.list){
  686. var numm= obj.list[i]
  687. var test =$("#new332 tr:eq("+i+")").find("td").eq(2).html()
  688. $("#new332 tr:eq("+i+")").find("td").eq(5).html(numm+"分"==test?
  689. "<b style='color:#07bc2d'>"+numm+"分</b>":"<b style='color:red'>"+numm+"分</b>")
  690. }
  691. $("#myModalLabelqqq").html("<span>所属工会:</span>"+obj.orgName)
  692. $("#sumNum").html(obj.score+"分")
  693. $("#myModal4").modal("show")
  694. })
  695. $("#topListBody tr").click(function(){
  696. var num =$(this).attr("num");
  697. var obj = topList[num];
  698. for(var i in obj.list){
  699. var numm= obj.list[i]
  700. var test =$("#new332 tr:eq("+i+")").find("td").eq(2).html()
  701. $("#new332 tr:eq("+i+")").find("td").eq(5).html(numm+"分"==test?
  702. "<b style='color:#07bc2d'>"+numm+"分</b>":"<b style='color:red'>"+numm+"分</b>")
  703. }
  704. $("#myModalLabelqqq").html("<span>所属工会:</span>"+obj.orgName)
  705. $("#sumNum").html(obj.score+"分")
  706. $("#myModal4").modal("show")
  707. })
  708. function createBar6(data) {
  709. var dom = document.getElementById("container6");
  710. var myChart = echarts.init(dom);
  711. var list=data.sort(function(a,b){
  712. return a.list[i]-b.list[i]
  713. })
  714. var names=list.map(function(item){
  715. return item.orgName
  716. })
  717. var values=list.map(function(item){
  718. return item.list[i]
  719. })
  720. var values2=[];
  721. var map = new Map();
  722. for(var i1 in values){
  723. var k=values[i1];
  724. var obj=map.get(k);
  725. if(obj){
  726. obj.value+=1;
  727. }else{
  728. obj={
  729. name:k+"分",
  730. value:1
  731. }
  732. values2.push(obj);
  733. }
  734. map.set(k,obj);
  735. }
  736. var values2=values2.sort(function(a,b){
  737. return b.value-a.value
  738. })
  739. myChart.setOption({
  740. label: {
  741. alignTo: 'edge',
  742. formatter: '{b}\n{d}%',
  743. minMargin: 5,
  744. edgeDistance: 10,
  745. lineHeight: 15,
  746. rich: {
  747. time: {
  748. fontSize: 10,
  749. color: '#999'
  750. }
  751. }
  752. },
  753. darkMode:true,
  754. textStyle:{
  755. color:"#FFFFFF"
  756. },
  757. tooltip: {
  758. trigger: 'item',
  759. axisPointer: {
  760. type: 'shadow'
  761. },
  762. formatter: function(params){
  763. console.log(params)
  764. if(params.seriesIndex==0){
  765. return params.name + '<br />' + '共有'+params.value+'个工会<br/>占比'+params.percent+ '%'
  766. }
  767. if(params.seriesIndex==1){
  768. return params.data +"分"
  769. }
  770. }
  771. },
  772. grid: [
  773. {
  774. width: '50%',
  775. top: '1%',
  776. left: '3%',
  777. right: '4%',
  778. bottom: '3%',
  779. containLabel: true
  780. }, {
  781. top: 100,
  782. width: '50%',
  783. bottom: 10,
  784. left: 800,
  785. containLabel: true
  786. }
  787. ],
  788. xAxis: {
  789. type: 'value',
  790. boundaryGap: [0, 0.01]
  791. },
  792. yAxis: {
  793. type: 'category',
  794. data: names
  795. },
  796. series: [{
  797. name: 'a',
  798. type: 'pie',
  799. radius: '55%',
  800. data:values2,
  801. center: ['75%','50%'],
  802. },{
  803. name: '数据',
  804. type: 'bar',
  805. data:values,
  806. itemStyle: {
  807. normal: {
  808. color: function(params) {
  809. //var colorList =colors;
  810. return "#4175c2";//colorList[params.dataIndex]
  811. },
  812. },
  813. }
  814. }]
  815. });
  816. }
  817. createBar11("11", data.obj1, "1")
  818. // <tr>
  819. // <td>工会名称</td>
  820. // <td>100分</td>
  821. // <td>99.80分</td>
  822. // </tr>
  823. var errorList = data.errorList;
  824. $("#errorListNum").html(errorList.length);
  825. var map = new Map();
  826. map.set("warning3", "红色预警");
  827. map.set("warning2", "橙色预警");
  828. map.set("warning1", "黄色预警");
  829. map.set(1, "基础型");
  830. map.set(2, "提升型");
  831. map.set(3, "即知即改型");
  832. map.set(4, "企业生产经营情况");
  833. for (var i in errorList) {
  834. var obj = errorList[i];
  835. var date = obj.createTime
  836. $("#errorListBody").append(
  837. $("<tr num='"+i+"'> <td>" + obj.name + " </td> <td style='width: 100px;' class='class"+obj.level+"'>" + map.get(obj.level) +
  838. " </td><td style='width: 80px;'>" + map.get(obj.type) + " </td><td style='width: 120px;'>" +
  839. date+ " </td></tr>")
  840. );
  841. }
  842. createBar(data.obj1.rows1.length, 103 - data.obj1.rows1.length, "已关联工会", "container", data.obj1.rows1
  843. .length + "/" + 103);
  844. createBar(8, 2, "预警&处置", "container4", "7/2");
  845. $("#errorListBody tr").click(function(){
  846. var num =$(this).attr("num");
  847. var obj = errorList[num];
  848. $("#myModalLabelwwww").html("<span>所属工会:</span>"+obj.name)
  849. $(".warning3").hide()
  850. $(".warning2").hide()
  851. $(".warning1").hide()
  852. var sz=[
  853. {
  854. w1:" 13:51",w2:" 15:23",w3:" 08:12",
  855. },
  856. {
  857. w1:" 10:25",w2:" 13:42",w3:" 08:38",
  858. },
  859. {
  860. w1:" 09:31",w2:" 11:07",w3:" 09:59",
  861. },
  862. {
  863. w1:" 10:31",w2:" 11:21",w3:" 14:39",
  864. },
  865. ];
  866. var w1=sz[parseInt(num)%4].w1
  867. var w2=sz[parseInt(num)%4].w2
  868. var w3=sz[parseInt(num)%4].w3
  869. if(obj.level=="warning3"){
  870. $(".ob1").text("分数低于40分");
  871. $(".ob2").text("红色预警");
  872. $(".warning3").show()
  873. }
  874. if(obj.level=="warning2"){
  875. $(".ob1").text("分数低于60分");
  876. $(".ob2").text("橙色预警");
  877. $(".warning2").show()
  878. }
  879. if(obj.level=="warning1"){
  880. $(".ob1").text("分数低于70分");
  881. $(".ob2").text("黄色预警");
  882. $(".warning1").show()
  883. }
  884. $("#createTime").text(obj.createTime+w1);
  885. $(".ob3").text(obj.createTime +w1);
  886. $("#openTime").text(obj.openTime+w2);
  887. $("#closeTime").text(obj.closeTime+w3);
  888. $("#myModal3").modal("show");
  889. })
  890. // <tr>
  891. // <td>工会名称</td>
  892. // <td>黄色预警</td>
  893. // <td>基础型</td>
  894. // <td>2021-08-15</td>
  895. // </tr>
  896. // });
  897. function createBar(a, b, title, id, t2) {
  898. var dom = document.getElementById(id);
  899. var myChart = echarts.init(dom);
  900. myChart.setOption({
  901. color: ["#00a1fa", "#004668"],
  902. series: [{
  903. // name: this.title,
  904. type: 'pie',
  905. selectedMode: 'single',
  906. radius: ['100%', '90%'], // 将0改成50%,修改圆的内径
  907. clockwise: false,
  908. label: {
  909. normal: {
  910. position: 'inner',
  911. show: false
  912. }
  913. },
  914. data: [{
  915. value: a,
  916. name: '使用'
  917. },
  918. {
  919. value: b,
  920. name: '未使用'
  921. }
  922. ]
  923. }],
  924. graphic: { // 添加原生图形元素组件
  925. elements: [{
  926. type: 'text', // 组件类型
  927. left: 'center', //定位
  928. top: '34%', // 定位
  929. style: { // 样式
  930. text: title, //文字
  931. fontSize: 13, //文字大小
  932. textAlign: 'center', //定位
  933. width: 30,
  934. height: 30,
  935. fill: '#FFFFFF' // 字体颜色
  936. }
  937. },
  938. {
  939. type: 'text',
  940. left: 'center',
  941. top: '52%',
  942. style: {
  943. text: t2,
  944. fontSize: 16,
  945. textAlign: 'center',
  946. width: 30,
  947. height: 25,
  948. fill: '#00a1fa'
  949. }
  950. }
  951. ]
  952. }
  953. });
  954. }
  955. function createBar13(title, data, clickEvent) {
  956. var dom = document.getElementById("container2");
  957. var myChart = echarts.init(dom);
  958. var arr1 = 0;
  959. var arr2 = 0;
  960. var arr3 = 0;
  961. var arr4 = 0;
  962. for (var i in data.rows1) {
  963. var mystatus = data.rows1[i].mystatus;
  964. if (mystatus == 1) {
  965. arr1 = data.rows1[i].mysum;
  966. } else if (mystatus == 2) {
  967. arr2 = data.rows1[i].mysum;
  968. } else if (mystatus == 3) {
  969. arr3 = data.rows1[i].mysum;
  970. } else if (mystatus == 4) {
  971. arr4 = data.rows1[i].mysum;
  972. }
  973. }
  974. var option = {
  975. tooltip: {
  976. trigger: 'item',
  977. formatter: '{b}预警共{c}个' //这是关键,在需要的地方加上就行了
  978. },
  979. color: ['#37A2DA', '#3BBF03', '#FFCB01', '#FF6200', '#FF2525'],
  980. textStyle:{
  981. color:"#FFFFFF"
  982. },
  983. xAxis: {
  984. type: 'category',
  985. data: ["未处置", "处置中", "已处置", "已关闭"]
  986. },
  987. yAxis: {
  988. type: 'value'
  989. },
  990. series: [{
  991. name: '未处置',
  992. type: 'bar',
  993. showBackground: true,
  994. backgroundStyle: {
  995. color: 'rgba(180, 180, 180, 0.2)'
  996. },
  997. data: [arr1, arr2, arr3, arr4],
  998. itemStyle: {
  999. normal: {
  1000. //好,这里就是重头戏了,定义一个list,然后根据所以取得不同的值,这样就实现了,
  1001. color: function(params) {
  1002. // build a color map as your need.
  1003. var colorList = ['#FF6200', '#FFCB01', '#3BBF03', '#aaa'];
  1004. return colorList[params.dataIndex]
  1005. },
  1006. //以下为是否显示,显示位置和显示格式的设置了
  1007. label: {
  1008. show: true,
  1009. position: 'top',
  1010. // formatter: '{c}'
  1011. formatter: '{b}\n{c}'
  1012. }
  1013. }
  1014. },
  1015. //设置柱的宽度,要是数据太少,柱子太宽不美观~
  1016. // barWidth:70,
  1017. }]
  1018. };
  1019. myChart.setOption(option);
  1020. myChart.on('click', function(params) {
  1021. //console.log(params)
  1022. });
  1023. }
  1024. function createBar14(title, data, clickEvent) {
  1025. var dom = document.getElementById("container3");
  1026. var myChart = echarts.init(dom);
  1027. var map = new Map();
  1028. var names = [];
  1029. for (var i in data.rows1) {
  1030. var item = data.rows1[i]
  1031. if (map.has(item.months)) {
  1032. } else {
  1033. names.push(item.months)
  1034. map.set(item.months, [0, 0]);
  1035. }
  1036. map.get(item.months)[0] = item.mysum;
  1037. }
  1038. for (var i in data.rows2) {
  1039. var item = data.rows2[i]
  1040. if (map.has(item.months)) {
  1041. } else {
  1042. names.push(item.months)
  1043. map.set(item.months, [0, 0]);
  1044. }
  1045. map.get(item.months)[1] = item.mysum;
  1046. }
  1047. var data1 = [];
  1048. var data2 = [];
  1049. var series = [];
  1050. names.sort()
  1051. for (var i in names) {
  1052. var name = names[i];
  1053. var sz = map.get(name)
  1054. data1.push(sz[0])
  1055. data2.push(sz[1])
  1056. }
  1057. series.push({
  1058. name: "产生",
  1059. type: 'line',
  1060. data: data2,
  1061. });
  1062. series.push({
  1063. name: "关闭",
  1064. type: 'line',
  1065. data: data1,
  1066. });
  1067. var option = {
  1068. tooltip: {
  1069. trigger: 'item',
  1070. formatter: '{a}{c}个预警' //这是关键,在需要的地方加上就行了
  1071. },
  1072. color: ['#37A2DA', '#3BBF03', '#FFCB01', '#FF6200', '#FF2525'],
  1073. textStyle:{
  1074. color:"#FFFFFF"
  1075. },
  1076. xAxis: {
  1077. type: 'category',
  1078. data: names
  1079. },
  1080. yAxis: {},
  1081. series: series
  1082. };
  1083. //console.log(option)
  1084. myChart.setOption(option);
  1085. myChart.on('click', function(params) {
  1086. //console.log(params)
  1087. });
  1088. }
  1089. function uniq(array) {
  1090. var temp = [];
  1091. var index = [];
  1092. var l = array.length;
  1093. for (var i = 0; i < l; i++) {
  1094. for (var j = i + 1; j < l; j++) {
  1095. if (array[i] === array[j]) {
  1096. i++;
  1097. j = i;
  1098. }
  1099. }
  1100. temp.push(array[i]);
  1101. index.push(i);
  1102. }
  1103. return temp;
  1104. }
  1105. function createBar11(title, data, type) {
  1106. var x = 0;
  1107. var map = new Map();
  1108. var dom = document.getElementById("container1");
  1109. var myChart = echarts.init(dom);
  1110. var mydata = [];
  1111. var mydata1 = [];
  1112. var mydata2 = [];
  1113. var innum = 0;
  1114. var avgnum = 0;
  1115. var colors = []
  1116. if (type == "1") {
  1117. colors = ['#37A2DA', '#3BBF03', '#FFCB01', '#FF6200', '#FF2525']
  1118. var arr1 = new Array();
  1119. var arr2 = new Array();
  1120. var arr3 = new Array();
  1121. var arr4 = new Array();
  1122. var arr5 = new Array();
  1123. for (var i in data.rows1) {
  1124. var score = data.rows1[i].score;
  1125. if (score >= 91) {
  1126. arr1.push(score);
  1127. } else if (score >= 70) {
  1128. arr2.push(score);
  1129. } else if (score >= 60) {
  1130. arr3.push(score);
  1131. } else if (score >= 40) {
  1132. arr4.push(score);
  1133. } else if (score >= 0) {
  1134. arr5.push(score);
  1135. }
  1136. avgnum = avgnum + Number(score);
  1137. }
  1138. mydata = [{
  1139. value: arr1.length,
  1140. name: '优秀 100-91'
  1141. },
  1142. {
  1143. value: arr2.length,
  1144. name: '健康 90-70'
  1145. },
  1146. {
  1147. value: arr3.length,
  1148. name: '黄色预警 69-60'
  1149. },
  1150. {
  1151. value: arr4.length,
  1152. name: '橙色预警 59-40'
  1153. },
  1154. {
  1155. value: arr5.length,
  1156. name: '红色预警 39-0'
  1157. }
  1158. ];
  1159. }
  1160. for (var i in mydata) {
  1161. var mod = mydata[i]
  1162. mydata1.push(mod.name);
  1163. mydata2.push(mod.value);
  1164. if (mod.name.length > 10) {
  1165. x = -5;
  1166. }
  1167. }
  1168. if (type == "2" || type == "1") {
  1169. avgnum = avgnum / data.rows1.length;
  1170. var arr = [];
  1171. for (var i in data.rows1) {
  1172. var score = data.rows1[i].score;
  1173. arr.push(Number(score))
  1174. }
  1175. arr = uniq(arr);
  1176. if (arr.length % 2 == 0) {
  1177. innum = arr[arr.length / 2] + arr[arr.length / 2 - 1];
  1178. innum = innum / 2;
  1179. }
  1180. if (arr.length % 2 == 1) {
  1181. innum = arr[(arr.length - 1) / 2];
  1182. }
  1183. title = title + "\n平均数:" + avgnum.toFixed(2) + "\n中位数:" + innum.toFixed(2)
  1184. $("#num1").html(avgnum.toFixed(2))
  1185. $("#num2").html(innum.toFixed(2))
  1186. }
  1187. var option = {
  1188. color: colors,
  1189. label: {
  1190. alignTo: 'edge',
  1191. formatter: '{b}\n{d}%',
  1192. minMargin: 5,
  1193. edgeDistance: 10,
  1194. lineHeight: 15,
  1195. rich: {
  1196. time: {
  1197. fontSize: 10,
  1198. color: '#999'
  1199. }
  1200. }
  1201. },
  1202. title: {
  1203. text: '',
  1204. subtext: '',
  1205. left: 'center'
  1206. },
  1207. tooltip: {
  1208. trigger: 'item',
  1209. formatter: function(params) {
  1210. console.log(params)
  1211. if (params.seriesIndex == 0) {
  1212. return params.name + '<br />' + '共有' + params.value + '个工会<br/>占比' + params
  1213. .percent + '%'
  1214. }
  1215. if (params.seriesIndex == 1) {
  1216. return params.name + '<br />' + '共有' + params.value + '个工会'
  1217. }
  1218. }
  1219. },
  1220. legend: {
  1221. orient: 'vertical',
  1222. left:"right",
  1223. textStyle: {
  1224. color: '#FFFFFF'
  1225. },
  1226. },
  1227. series: [{
  1228. // name: 'a',
  1229. type: 'pie',
  1230. radius: '50%',
  1231. data: mydata,
  1232. emphasis: {
  1233. itemStyle: {
  1234. shadowBlur: 10,
  1235. shadowOffsetX: 0,
  1236. shadowColor: 'rgba(0, 0, 0, 0.5)',
  1237. //shadowColor: 'rgba(53, 230, 0, 0.5)'
  1238. }
  1239. }
  1240. },
  1241. ]
  1242. }
  1243. myChart.setOption(option);
  1244. myChart.on('click', function(params) {
  1245. //console.log(params)
  1246. });
  1247. }
  1248. var speed = 100;
  1249. function getMy(str) {
  1250. return document.getElementById(str)
  1251. }
  1252. var demo = getMy("topListContent");
  1253. var demo4 = getMy("topListBody");
  1254. var ttt = 0;
  1255. function Marquee1() {
  1256. if (demo.offsetHeight < demo4.offsetHeight) {
  1257. }
  1258. ttt = ttt + 2;
  1259. $("#topListContent").scrollTop(ttt)
  1260. if (demo4.offsetHeight - demo.offsetHeight + 80 < ttt) {
  1261. console.log(demo.offsetTop + "--a---" + demo.offsetHeight + "c" + ttt)
  1262. console.log(demo4.offsetTop + "---b--" + demo4.offsetHeight + "ddd " + demo4.clientHeight)
  1263. $("#topListContent").scrollTop(0)
  1264. ttt = 0;
  1265. }
  1266. }
  1267. var MyMar1 = setInterval(Marquee1, speed) //设置定时器
  1268. //鼠标移上时清除定时器达到滚动停止的目的
  1269. demo.onmouseover = function() {
  1270. clearInterval(MyMar1)
  1271. }
  1272. //鼠标移开时重设定时器
  1273. demo.onmouseout = function() {
  1274. ttt = $("#topListContent").scrollTop()
  1275. MyMar1 = setInterval(Marquee1, speed)
  1276. }
  1277. var demok = getMy("errorListContent");
  1278. var demok4 = getMy("errorListBody");
  1279. var ttt2 = 0;
  1280. function Marquee2() {
  1281. ttt2 = ttt2 + 2;
  1282. $("#errorListContent").scrollTop(ttt2)
  1283. if (demok4.offsetHeight - demok.offsetHeight + 80 < ttt2) {
  1284. $("#errorListContent").scrollTop(0)
  1285. ttt2 = 0;
  1286. }
  1287. }
  1288. var MyMar2 = setInterval(Marquee2, speed) //设置定时器
  1289. //鼠标移上时清除定时器达到滚动停止的目的
  1290. demok.onmouseover = function() {
  1291. clearInterval(MyMar2)
  1292. }
  1293. //鼠标移开时重设定时器
  1294. demok.onmouseout = function() {
  1295. ttt2 = $("#errorListContent").scrollTop()
  1296. MyMar2 = setInterval(Marquee2, speed)
  1297. }
  1298. //-->
  1299. var i=0;
  1300. $("#myModal2Btn").click(function(){
  1301. $("#myModal2").modal("show")
  1302. i=3;
  1303. createBar6(topList);
  1304. })
  1305. $("#myModalLabelTable tr").click(function(){
  1306. var num =$(this).attr("num");
  1307. console.log(num)
  1308. $(".bgindex").removeClass("bgindex")
  1309. $(this).addClass("bgindex");
  1310. if(num){
  1311. i=num;
  1312. createBar6(topList);
  1313. }
  1314. })
  1315. });