loulijun2021
2022-12-06 0c918c3f8ff8f711ac8194582895967155812f0d
1.看板修改
已重命名1个文件
已添加13个文件
已修改3个文件
已删除2个文件
6997 ■■■■ 文件已修改
src/assets/images/box03.png 补丁 | 查看 | 原始文档 | blame | 历史
src/assets/images/kb_body.jpg 补丁 | 查看 | 原始文档 | blame | 历史
src/icons/svg/cjhn02.svg 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/icons/svg/ckgl02.svg 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/icons/svg/ryfx02.svg 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/icons/svg/sbfx02.svg 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/icons/svg/scjh02.svg 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/icons/svg/xsdd02.svg 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/icons/svg/zlfx02.svg 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/icons/svg/zncc.svg 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/permission.js 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/router/index.js 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/utils/echarts-liquidfill.min.js 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/utils/myEcharts_zngc.js 3733 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/kb/bzcj.vue 843 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/kb/ckgl.vue 74 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/kb/zhkbc.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/kb/zngc.vue 1475 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/kb/zpcj.vue 843 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/assets/images/box03.png
src/assets/images/kb_body.jpg
src/icons/svg/cjhn02.svg
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1664680797379" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="21073" xmlns:xlink="http://www.w3.org/1999/xlink" width="128" height="128"><path d="M502.087111 149.390222a2819.456 2819.456 0 0 0-114.944 152.064c-29.681778 42.325333-56.32 83.285333-79.132444 122.168889-54.215111 92.387556-84.124444 168.604444-84.124445 220.103111 0 173.824 137.088 314.396444 305.777778 314.396445 168.675556 0 305.777778-140.572444 305.777778-314.396445 0-51.484444-29.909333-127.715556-84.124445-220.103111-22.812444-38.883556-49.450667-79.843556-79.132444-122.168889a2819.456 2819.456 0 0 0-114.944-152.064 2847.345778 2847.345778 0 0 0-27.591111-33.607111c-8.604444 10.325333-17.834667 21.560889-27.562667 33.607111zM158.876444 643.726222c0-66.204444 33.408-151.338667 93.056-253.013333 23.765333-40.504889 51.342222-82.915556 81.976889-126.577778a2883.413333 2883.413333 0 0 1 117.617778-155.619555 2798.250667 2798.250667 0 0 1 49.692445-59.790223l3.982222-4.579555 24.462222-27.960889 24.462222 27.960889 3.982222 4.579555c3.143111 3.683556 6.812444 7.964444 10.922667 12.828445 11.704889 13.852444 24.746667 29.610667 38.769778 46.961778a2883.413333 2883.413333 0 0 1 117.617778 155.619555c30.634667 43.662222 58.197333 86.072889 81.976889 126.577778 59.648 101.674667 93.056 186.808889 93.056 253.013333 0 209.365333-165.831111 379.420444-370.787556 379.420445-204.970667 0-370.787556-170.055111-370.787556-379.420445z" p-id="21074" fill="#09d8f2"></path><path d="M529.664 910.193778c-142.876444 0-258.688-116.224-258.688-259.598222 0-143.36 134.442667-70.769778 258.688 0 124.757333 71.068444 258.688-143.36 258.688 0 0 143.374222-115.825778 259.598222-258.702222 259.598222z" p-id="21075" fill="#09d8f2"></path><path d="M724.920889 180.821333c0-23.651556 15.658667-51.754667 41.813333-84.110222a512.213333 512.213333 0 0 1 39.594667-43.434667l11.235555-10.766222 11.249778 10.766222 3.527111 3.456A512.199111 512.199111 0 0 1 868.408889 96.711111a315.690667 315.690667 0 0 1 23.438222 32.668445C903.608889 148.48 910.222222 165.518222 910.222222 180.821333c0 51.584-41.443556 93.468444-92.643555 93.468445s-92.657778-41.884444-92.657778-93.468445z m67.100444-63.672889c-21.589333 26.695111-34.588444 50.033778-34.588444 63.672889 0 33.706667 26.965333 60.956444 60.145778 60.956445 33.166222 0 60.131556-27.249778 60.131555-60.956445 0-7.950222-4.664889-19.982222-13.553778-34.432a284.174222 284.174222 0 0 0-21.020444-29.240889 480.213333 480.213333 0 0 0-25.400889-28.828444 392.647111 392.647111 0 0 0-25.713778 28.828444zM113.777778 329.059556c0-17.692444 11.064889-37.546667 29.582222-60.458667a353.422222 353.422222 0 0 1 27.377778-30.023111l11.235555-10.780445 11.249778 10.780445a353.422222 353.422222 0 0 1 27.363556 30.008889c6.300444 7.793778 11.804444 15.402667 16.327111 22.755555 8.462222 13.752889 13.269333 26.140444 13.269333 37.717334 0 37.930667-30.492444 68.750222-68.195555 68.750222-37.717333 0-68.209778-30.819556-68.209778-68.750222z m54.869333-40.021334c-13.937778 17.251556-22.357333 32.341333-22.357333 40.021334 0 20.053333 16.014222 36.252444 35.697778 36.252444 19.669333 0 35.697778-16.199111 35.697777-36.252444 0-4.224-2.887111-11.619556-8.462222-20.693334a188.202667 188.202667 0 0 0-13.909333-19.342222 312.462222 312.462222 0 0 0-13.340445-15.374222 312.462222 312.462222 0 0 0-13.326222 15.388444z" p-id="21076" fill="#09d8f2"></path></svg>
src/icons/svg/ckgl02.svg
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1664680808606" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="21739" xmlns:xlink="http://www.w3.org/1999/xlink" width="128" height="128"><path d="M963.413333 349.013333L554.666667 61.44a74.24 74.24 0 0 0-85.333334 0L60.586667 349.013333a42.666667 42.666667 0 0 0-10.24 59.733334 42.666667 42.666667 0 0 0 59.733333 10.24L512 135.253333l401.92 283.733334A42.666667 42.666667 0 0 0 938.666667 426.666667a42.666667 42.666667 0 0 0 34.986666-17.92 42.666667 42.666667 0 0 0-10.24-59.733334zM853.333333 448a42.666667 42.666667 0 0 0-42.666666 42.666667V896H213.333333v-405.333333a42.666667 42.666667 0 0 0-85.333333 0v410.453333A80.64 80.64 0 0 0 208.64 981.333333h606.72A80.64 80.64 0 0 0 896 901.12V490.666667a42.666667 42.666667 0 0 0-42.666667-42.666667z" p-id="21740" fill="#09d8f2"></path><path d="M682.666667 832a64 64 0 0 0 64-64v-85.333333a64 64 0 0 0-64-64h-85.333334a64 64 0 0 0-64 64v85.333333a64 64 0 0 0 64 64zM576 768v-85.333333a21.333333 21.333333 0 0 1 21.333333-21.333334h85.333334a21.333333 21.333333 0 0 1 21.333333 21.333334v85.333333a21.333333 21.333333 0 0 1-21.333333 21.333333h-85.333334a21.333333 21.333333 0 0 1-21.333333-21.333333zM341.333333 576h85.333334a64 64 0 0 0 64-64v-85.333333A64 64 0 0 0 426.666667 362.666667H341.333333A64 64 0 0 0 277.333333 426.666667v85.333333A64 64 0 0 0 341.333333 576zM320 426.666667a21.333333 21.333333 0 0 1 21.333333-21.333334h85.333334a21.333333 21.333333 0 0 1 21.333333 21.333334v85.333333a21.333333 21.333333 0 0 1-21.333333 21.333333H341.333333a21.333333 21.333333 0 0 1-21.333333-21.333333zM277.333333 768A64 64 0 0 0 341.333333 832h85.333334a64 64 0 0 0 64-64v-85.333333a64 64 0 0 0-64-64H341.333333A64 64 0 0 0 277.333333 682.666667z m42.666667-85.333333a21.333333 21.333333 0 0 1 21.333333-21.333334h85.333334a21.333333 21.333333 0 0 1 21.333333 21.333334v85.333333a21.333333 21.333333 0 0 1-21.333333 21.333333H341.333333a21.333333 21.333333 0 0 1-21.333333-21.333333z" p-id="21741" fill="#09d8f2"></path></svg>
src/icons/svg/ryfx02.svg
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1664680706335" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="9757" xmlns:xlink="http://www.w3.org/1999/xlink" width="128" height="128"><path d="M245.956679 257.845119a192.672086 192.672086 0 0 1 384.777488 0A185.871894 185.871894 0 0 1 439.76213 442.016965a187.571942 187.571942 0 0 1-193.805451-184.171846zM65.751611 887.996175A373.443836 373.443836 0 0 1 402.361078 515.685704L442.595543 510.018878a249.340346 249.340346 0 0 0 137.13719-37.967735l14.733748-10.766969A258.97395 258.97395 0 0 0 431.261891 0.004533a257.273902 257.273902 0 0 0-249.907029 257.840586 261.807363 261.807363 0 0 0 98.036091 203.439055l18.133843 10.766969-18.133843 7.366874A437.478971 437.478971 0 0 0 0.583111 886.296127 131.470364 131.470364 0 0 0 121.286506 1020.033222H442.595543c10.766969 0 34.000956-17.000478 34.000956-34.000957s-23.233987-34.000956-34.000956-34.000956H122.986554a63.468452 63.468452 0 0 1-57.234943-64.035134z m893.658467-88.969169a107.103012 107.103012 0 0 0-94.069312 107.669695 82.73566 82.73566 0 0 0 7.366874 32.867591l-47.034657 25.500717-18.133843-18.133843a103.702917 103.702917 0 0 0-61.768404-21.533939 119.57003 119.57003 0 0 0-61.768404 21.533939c-7.366874 7.366874-14.733748 10.766969-18.133843 18.133843L623.933976 940.697657a91.235899 91.235899 0 0 0 5.666826-34.000956 108.236377 108.236377 0 0 0-94.069312-107.669695c0-7.366874-3.400096-21.533939-3.400096-36.267687s3.400096-25.500717 3.400096-36.267686a107.103012 107.103012 0 0 0 94.069312-108.803061 80.46893 80.46893 0 0 0-6.800191-32.867591l46.467974-26.067399a73.102056 73.102056 0 0 0 18.133843 15.30043 102.002869 102.002869 0 0 0 56.66826 21.533939 105.969647 105.969647 0 0 0 56.668261-21.533939c7.366874-7.366874 14.733748-10.766969 18.133843-15.30043l47.034656 26.067399a90.669217 90.669217 0 0 0-7.366874 32.867591 109.936425 109.936425 0 0 0 94.069313 108.803061c0 7.366874 3.400096 21.533939 3.400095 36.267686a87.269121 87.269121 0 0 1 3.400096 36.267687z m18.133843-123.536808h-3.400095a56.66826 56.66826 0 0 1-56.668261-56.66826c0-7.366874 3.400096-18.700526 3.400096-21.533939a46.467974 46.467974 0 0 0-13.600383-52.701483L840.406731 510.018878h-18.133843a39.1011 39.1011 0 0 0-32.867591 14.733747 86.135756 86.135756 0 0 1-43.634561 25.500718c-14.733748 0-36.267687-18.133843-47.034656-25.500718a45.901291 45.901291 0 0 0-32.867591-14.733747 20.400574 20.400574 0 0 0-14.733748 3.400095l-68.568595 36.267687a45.334608 45.334608 0 0 0-14.733748 51.001434 88.969169 88.969169 0 0 1 3.400096 22.100622 56.66826 56.66826 0 0 1-56.668261 56.66826H510.597455a39.1011 39.1011 0 0 0-32.867591 32.867591 308.84202 308.84202 0 0 0-7.366874 56.668261 150.17089 150.17089 0 0 0 7.366874 56.66826 38.534417 38.534417 0 0 0 32.867591 32.867591h3.400096a56.66826 56.66826 0 0 1 56.66826 56.668261c0 7.366874-3.400096 18.133843-3.400095 21.533939a44.767926 44.767926 0 0 0 14.733747 51.001434l64.601817 36.267687a36.834369 36.834369 0 0 1 18.133844-3.400096 39.1011 39.1011 0 0 0 32.867591-14.733747c7.366874-7.366874 28.900813-28.900813 47.034656-28.900813a80.46893 80.46893 0 0 1 47.034656 28.900813 45.901291 45.901291 0 0 0 32.867591 14.733747 34.567639 34.567639 0 0 0 18.133844-3.400095l64.601816-40.234465a45.334608 45.334608 0 0 0 14.733748-51.001435 96.902725 96.902725 0 0 1-2.833413-21.533939 56.66826 56.66826 0 0 1 56.668261-56.66826h3.400095a39.1011 39.1011 0 0 0 32.867591-32.867591 259.540633 259.540633 0 0 0 7.366874-56.668261 221.572898 221.572898 0 0 1-10.200287-51.001434 38.534417 38.534417 0 0 0-31.734226-31.734226z m-231.773185 134.303777a47.034656 47.034656 0 1 1 47.034656-47.034656 47.601339 47.601339 0 0 1-47.034656 47.034656z m18.133844-145.070746a99.169456 99.169456 0 0 0-116.169934 119.570029 100.869504 100.869504 0 0 0 79.902247 79.902247 98.036091 98.036091 0 0 0 116.169934-116.169933 100.302821 100.302821 0 0 0-79.902247-83.302343z" fill="#09d8f2" p-id="9758"></path></svg>
src/icons/svg/sbfx02.svg
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1664680718379" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="10775" xmlns:xlink="http://www.w3.org/1999/xlink" width="128" height="128"><path d="M966.136837 260.049194l-52.19233 52.37482A142.890189 142.890189 0 0 1 711.927344 109.494398l52.192329-52.19233c28.833525-28.833525 9.672005-62.776788-42.337833-54.747199a261.509119 261.509119 0 0 0-215.521473 313.336468l-437.97759 437.97759A142.707698 142.707698 0 0 0 269.934959 956.251072l437.97759-437.97759A261.144138 261.144138 0 0 0 1020.336563 302.9345c8.759552-52.37482-25.366202-71.71883-54.199726-42.885306zM202.595905 888.912017a47.630063 47.630063 0 1 1 0-67.339054 47.630063 47.630063 0 0 1 0 67.339054z m-47.447573-620.468252l164.241597 165.154049 67.339054-67.521545-164.241596-164.241596-36.498133-70.623887-118.43644-84.675667L0.21376 113.874173l84.128195 117.888968z m552.216745 350.564562a23.723786 23.723786 0 0 0-33.578282 0l-101.099827 101.099827a23.723786 23.723786 0 0 0 0 33.578282l238.332805 238.332805A95.260126 95.260126 0 1 0 945.697882 857.706114z" p-id="10776" fill="#09d8f2"></path></svg>
src/icons/svg/scjh02.svg
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1664680511324" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="2741" xmlns:xlink="http://www.w3.org/1999/xlink" width="128" height="128"><path d="M751.855 562.229c-107.579 0-194.778 87.223-194.778 194.797 0 107.584 87.199 194.782 194.778 194.782 107.574 0 194.797-87.198 194.797-194.782 0-107.575-87.213-194.797-194.797-194.797z m137.083 208.085c0 7.957-6.463 14.426-14.431 14.426H773.273v86.666a14.404 14.404 0 0 1-14.431 14.431h-14.427c-7.967 0-14.416-6.436-14.416-14.431V784.85H628.984c-7.948 0-14.431-6.464-14.431-14.431v-14.44c0-7.958 6.463-14.431 14.431-14.431h101.225v-86.671c0-7.986 6.454-14.431 14.44-14.431h14.422c7.967 0 14.421 6.444 14.421 14.431v86.565h101.021c7.948 0 14.431 6.464 14.431 14.422v14.45h-0.006zM268.89 234.46c22.832 0 41.336-17.896 41.336-39.96v-79.903c0-22.075-18.505-39.96-41.336-39.96-22.827 0-41.322 17.886-41.322 39.96V194.5c0 22.07 18.495 39.96 41.322 39.96zM682.205 234.46c22.826 0 41.331-17.896 41.331-39.96v-79.903c0-22.075-18.515-39.96-41.331-39.96-22.827 0-41.337 17.886-41.337 39.96V194.5c0 22.07 18.51 39.96 41.337 39.96zM475.547 234.46c22.827 0 41.332-17.896 41.332-39.96v-79.903c0-22.075-18.505-39.96-41.332-39.96s-41.322 17.886-41.322 39.96V194.5c-0.009 22.07 18.496 39.96 41.322 39.96z" fill="#09d8f2" p-id="2742"></path><path d="M528.691 793.807H220.676c-19.028 0-34.439-14.916-34.439-33.297 0-18.382 15.411-33.288 34.439-33.288h307.269c4.598-34.06 16.739-65.71 34.707-93.229H227.568c-22.836 0-41.332-17.886-41.332-39.951 0-22.074 18.495-39.951 41.332-39.951h425.309c30.128-14.793 63.986-23.122 99.816-23.122 45.087 0 87.07 13.203 122.386 35.887V194.5c0-22.065-18.495-39.952-41.327-39.952h-68.889V194.5c0 44.14-37.005 79.912-82.658 79.912s-82.663-35.772-82.663-79.912v-39.952H558.21V194.5c0 44.14-37.005 79.912-82.663 79.912-45.644 0-82.658-35.772-82.658-79.912v-39.952h-41.336V194.5c0 44.14-37 79.912-82.653 79.912-45.653 0-82.663-35.772-82.663-79.912v-39.952h-68.894c-22.831 0-41.327 17.886-41.327 39.952v692.531c0 22.061 18.5 39.946 41.327 39.946h484.199c-37.991-33.977-64.464-80.559-72.851-133.17zM227.568 380.944h495.968c22.827 0 41.327 17.896 41.327 39.956 0 22.065-18.5 39.951-41.327 39.951H227.568c-22.836 0-41.332-17.886-41.332-39.951 0-22.061 18.495-39.956 41.332-39.956z" fill="#09d8f2" p-id="2743"></path></svg>
src/icons/svg/xsdd02.svg
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1664680599125" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3426" xmlns:xlink="http://www.w3.org/1999/xlink" width="128" height="128"><path d="M343.381333 255.1808a305.4592 305.4592 0 0 1 106.257067-44.032 68.266667 68.266667 0 0 1 124.7232 0 305.4592 305.4592 0 0 1 106.257067 44.032 68.266667 68.266667 0 0 1 88.200533 88.200533 305.4592 305.4592 0 0 1 44.032 106.257067 68.266667 68.266667 0 0 1 0 124.7232 305.4592 305.4592 0 0 1-44.032 106.257067 68.266667 68.266667 0 0 1-88.200533 88.200533 305.4592 305.4592 0 0 1-106.257067 44.032 68.266667 68.266667 0 0 1-124.7232 0 305.4592 305.4592 0 0 1-106.257067-44.032 68.266667 68.266667 0 0 1-88.200533-88.200533 305.4592 305.4592 0 0 1-44.032-106.257067 68.266667 68.266667 0 0 1 0-124.7232 305.4592 305.4592 0 0 1 44.032-106.257067 68.266667 68.266667 0 0 1 88.200533-88.200533z m140.322134 107.588267l-133.256534 133.256533a31.402667 31.402667 0 0 0 0 44.270933l133.256534 133.256534a31.402667 31.402667 0 0 0 44.270933 0l133.256533-133.256534c12.0832-12.0832 21.8112-35.976533 21.435734-53.0432 0 0 0.443733-102.468267-21.504-124.450133-21.947733-21.947733-123.733333-21.435733-123.733334-21.435733-17.646933-0.546133-41.506133 9.181867-53.725866 21.4016zM580.266667 477.866667a34.133333 34.133333 0 1 1 0-68.266667 34.133333 34.133333 0 0 1 0 68.266667z" fill="#09d8f2" p-id="3427"></path></svg>
src/icons/svg/zlfx02.svg
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1664680628689" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="4757" xmlns:xlink="http://www.w3.org/1999/xlink" width="128" height="128"><path d="M516.07552 0l425.51296 186.1632v279.32672c0 258.2528-181.5552 500.08064-425.51296 558.51008C275.6608 965.30432 95.39584 728.73984 91.62752 473.64096l-0.06144-8.15104V186.14272L516.07552 0z m0.1024 81.92l-343.6544 156.3648v234.63936c0 216.8832 146.96448 419.328 343.6544 469.15584 197.48864-49.09056 344.4736-252.2112 344.4736-469.15584V238.2848L516.17792 81.92z m0.4096 143.36c134.12352 0 242.85184 110.03904 242.85184 245.76 0 53.08416-16.62976 102.21568-44.89216 142.39744l43.88864 44.40064-57.2416 57.93792-43.90912-44.40064A239.8208 239.8208 0 0 1 516.58752 716.8c-134.144 0-242.8928-110.03904-242.8928-245.76s108.7488-245.76 242.8928-245.76z m0 81.92c-89.43616 0-161.91488 73.35936-161.91488 163.84s72.4992 163.84 161.91488 163.84a159.744 159.744 0 0 0 82.24768-22.69184l-40.7552-41.22624 57.2416-57.93792 40.7552 41.24672A164.5568 164.5568 0 0 0 678.48192 471.04c0-90.48064-72.4992-163.84-161.8944-163.84z" p-id="4758" fill="#09d8f2"></path></svg>
src/icons/svg/zncc.svg
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1664768961489" class="icon" viewBox="0 0 1197 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="2688" xmlns:xlink="http://www.w3.org/1999/xlink" width="149.625" height="128"><path d="M246.280708 449.881781h170.542624v170.542624H246.280708zM246.280708 733.835318h170.542624v170.542624H246.280708zM508.677917 733.835318h170.542624v170.542624H508.677917z" fill="#09d8f2" p-id="2689"></path><path d="M169.595391 923.322612h208.391368v-208.391368h-208.391368z m37.889339-170.502029h132.612689v132.612689h-132.612689zM431.965536 923.322612h208.391368v-208.391368h-208.391368z m37.88934-170.502029h132.612688v132.612689h-132.612688zM169.595391 639.369075h208.391368v-208.391368h-208.391368z m37.889339-170.502029h132.612689v132.612689h-132.612689z" fill="#09d8f2" p-id="2690"></path><path d="M1147.005035 705.107079a50.460481 50.460481 0 0 0-46.658016 31.421088h-130.85354l-90.379607 89.824799v-130.095754a50.365758 50.365758 0 1 0 0-54.858351v-124.926566h23.085433L1005.231245 625.174104h61.313071a50.365758 50.365758 0 1 0-4.249019-37.889339H1021.523661l-103.03194-108.701809h-39.377849v-106.902066l67.212982 56.076223 24.249177-29.107132L491.993075 0 0 398.474066l23.84322 29.44543 54.411798-44.05989v640.140394h800.858854V879.817531L985.122831 774.417507h115.224188a50.365758 50.365758 0 1 0 46.658016-69.310428z m-225.712209-48.714865a12.476418 12.476418 0 1 1-12.476419 12.476418 12.503482 12.503482 0 0 1 12.476419-12.517014z m189.446698-67.76779a12.476418 12.476418 0 1 1-12.48995 12.476418 12.48995 12.48995 0 0 1 12.48995-12.517014z m-269.514992-110.041468h-8.673953a56.69869 56.69869 0 1 0 0 37.889339h8.673953v133.384008h-53.22099a50.365758 50.365758 0 1 0 0 37.889339h53.193926v166.374797h-46.83393a50.365758 50.365758 0 1 0 0 37.88934h46.860994v94.100881H116.144358V353.169241l375.51042-304.143142 349.569754 291.179575z m-43.302103 18.944669a18.809351 18.809351 0 1 1-18.795818-18.80935 18.822883 18.822883 0 0 1 18.795818 18.80935z m-44.073421 171.300411a12.476418 12.476418 0 1 1-12.476418-12.476418 12.48995 12.48995 0 0 1 12.476418 12.476418z m6.332933 204.237073a12.48995 12.48995 0 1 1-12.48995-12.476418 12.48995 12.48995 0 0 1 12.48995 12.476418z m386.823094-105.115854a12.476418 12.476418 0 1 1 12.48995-12.476418 12.48995 12.48995 0 0 1-12.48995 12.476418z" fill="#09d8f2" p-id="2691"></path></svg>
src/permission.js
@@ -8,7 +8,7 @@
NProgress.configure({ showSpinner: false }) // NProgress Configuration
const whiteList = ['/login', '/zhkb', '/ckgl', '/cgdd', '/bzcj', '/dccj', '/zpcj', '/back'] // no redirect whitelist
const whiteList = ['/login', '/zhkb', '/zhkbc', '/ckgl', '/cgdd', '/back', '/zngc'] // no redirect whitelist
router.beforeEach(async(to, from, next) => {
  // start progress bar
src/router/index.js
@@ -50,18 +50,13 @@
    hidden: true
  },
  {
    path: '/zpcj',
    component: () => import('@/views/kb/zpcj'),
    path: '/zhkbc',
    component: () => import('@/views/kb/zhkbc'),
    hidden: true
  },
  {
    path: '/dccj',
    component: () => import('@/views/kb/dccj'),
    hidden: true
  },
  {
    path: '/bzcj',
    component: () => import('@/views/kb/bzcj'),
    path: '/zngc',
    component: () => import('@/views/kb/zngc'),
    hidden: true
  },
src/utils/echarts-liquidfill.min.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,2 @@
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("echarts")):"function"==typeof define&&define.amd?define(["echarts"],t):"object"==typeof exports?exports["echarts-liquidfill"]=t(require("echarts")):e["echarts-liquidfill"]=t(e.echarts)}(self,(function(e){return(()=>{"use strict";var t={245:(e,t,a)=>{a.r(t);var i=a(83);i.extendSeriesModel({type:"series.liquidFill",optionUpdated:function(){var e=this.option;e.gridSize=Math.max(Math.floor(e.gridSize),4)},getInitialData:function(e,t){var a=i.helper.createDimensions(e.data,{coordDimensions:["value"]}),r=new i.List(a,this);return r.initData(e.data),r},defaultOption:{color:["#294D99","#156ACF","#1598ED","#45BDFF"],center:["50%","50%"],radius:"50%",amplitude:"8%",waveLength:"80%",phase:"auto",period:"auto",direction:"right",shape:"circle",waveAnimation:!0,animationEasing:"linear",animationEasingUpdate:"linear",animationDuration:2e3,animationDurationUpdate:1e3,outline:{show:!0,borderDistance:8,itemStyle:{color:"none",borderColor:"#294D99",borderWidth:8,shadowBlur:20,shadowColor:"rgba(0, 0, 0, 0.25)"}},backgroundStyle:{color:"#E3F7FF"},itemStyle:{opacity:.95,shadowBlur:50,shadowColor:"rgba(0, 0, 0, 0.4)"},label:{show:!0,color:"#294D99",insideColor:"#fff",fontSize:50,fontWeight:"bold",align:"center",baseline:"middle",position:"inside"},emphasis:{itemStyle:{opacity:.8}}}});const r=i.graphic.extendShape({type:"ec-liquid-fill",shape:{waveLength:0,radius:0,radiusY:0,cx:0,cy:0,waterLevel:0,amplitude:0,phase:0,inverse:!1},buildPath:function(e,t){null==t.radiusY&&(t.radiusY=t.radius);for(var a=Math.max(2*Math.ceil(2*t.radius/t.waveLength*4),8);t.phase<2*-Math.PI;)t.phase+=2*Math.PI;for(;t.phase>0;)t.phase-=2*Math.PI;var i=t.phase/Math.PI/2*t.waveLength,r=t.cx-t.radius+i-2*t.radius;e.moveTo(r,t.waterLevel);for(var l=0,o=0;o<a;++o){var s=o%4,h=n(o*t.waveLength/4,s,t.waveLength,t.amplitude);e.bezierCurveTo(h[0][0]+r,-h[0][1]+t.waterLevel,h[1][0]+r,-h[1][1]+t.waterLevel,h[2][0]+r,-h[2][1]+t.waterLevel),o===a-1&&(l=h[2][0])}t.inverse?(e.lineTo(l+r,t.cy-t.radiusY),e.lineTo(r,t.cy-t.radiusY),e.lineTo(r,t.waterLevel)):(e.lineTo(l+r,t.cy+t.radiusY),e.lineTo(r,t.cy+t.radiusY),e.lineTo(r,t.waterLevel)),e.closePath()}});function n(e,t,a,i){return 0===t?[[e+.5*a/Math.PI/2,i/2],[e+.5*a/Math.PI,i],[e+a/4,i]]:1===t?[[e+.5*a/Math.PI/2*(Math.PI-2),i],[e+.5*a/Math.PI/2*(Math.PI-1),i/2],[e+a/4,0]]:2===t?[[e+.5*a/Math.PI/2,-i/2],[e+.5*a/Math.PI,-i],[e+a/4,-i]]:[[e+.5*a/Math.PI/2*(Math.PI-2),-i],[e+.5*a/Math.PI/2*(Math.PI-1),-i/2],[e+a/4,0]]}var l=function(e,t){switch(e){case"center":case"middle":e="50%";break;case"left":case"top":e="0%";break;case"right":case"bottom":e="100%"}return"string"==typeof e?(a=e,a.replace(/^\s+|\s+$/g,"")).match(/%$/)?parseFloat(e)/100*t:parseFloat(e):null==e?NaN:+e;var a};function o(e){return e&&0===e.indexOf("path://")}i.extendChartView({type:"liquidFill",render:function(e,t,a){var n=this,s=this.group;s.removeAll();var h=e.getData(),d=h.getItemModel(0),p=d.get("center"),u=d.get("radius"),c=a.getWidth(),g=a.getHeight(),v=Math.min(c,g),f=0,y=0,m=e.get("outline.show");m&&(f=e.get("outline.borderDistance"),y=l(e.get("outline.itemStyle.borderWidth"),v));var w,b,x,M=l(p[0],c),P=l(p[1],g),I=!1,S=e.get("shape");"container"===S?(I=!0,b=[(w=[c/2,g/2])[0]-y/2,w[1]-y/2],x=[l(f,c),l(f,g)],u=[Math.max(b[0]-x[0],0),Math.max(b[1]-x[1],0)]):(b=(w=l(u,v)/2)-y/2,x=l(f,v),u=Math.max(b-x,0)),m&&(Y().style.lineWidth=y,s.add(Y()));var L=I?0:M-u,C=I?0:P-u,T=null;s.add(function(){var t=E(u);t.setStyle(e.getModel("backgroundStyle").getItemStyle()),t.style.fill=null,t.z2=5;var a=E(u);a.setStyle(e.getModel("backgroundStyle").getItemStyle()),a.style.stroke=null;var r=new i.graphic.Group;return r.add(t),r.add(a),r}());var D=this._data,F=[];function E(e,t){if(S){if(o(S)){var a=i.graphic.makePath(S.slice(7),{}),r=a.getBoundingRect(),n=r.width,l=r.height;n>l?(l*=2*e/n,n=2*e):(n*=2*e/l,l=2*e);var s=t?0:M-n/2,h=t?0:P-l/2;return a=i.graphic.makePath(S.slice(7),{},new i.graphic.BoundingRect(s,h,n,l)),t&&(a.x=-n/2,a.y=-l/2),a}if(I){var d=t?-e[0]:M-e[0],p=t?-e[1]:P-e[1];return i.helper.createSymbol("rect",d,p,2*e[0],2*e[1])}return d=t?-e:M-e,p=t?-e:P-e,"pin"===S?p+=e:"arrow"===S&&(p-=e),i.helper.createSymbol(S,d,p,2*e,2*e)}return new i.graphic.Circle({shape:{cx:t?0:M,cy:t?0:P,r:e}})}function Y(){var t=E(w);return t.style.fill=null,t.setStyle(e.getModel("outline.itemStyle").getItemStyle()),t}function k(t,a,n){var o=I?u[0]:u,s=I?g/2:u,d=h.getItemModel(t),p=d.getModel("itemStyle"),c=d.get("phase"),v=l(d.get("amplitude"),2*s),f=l(d.get("waveLength"),2*o),y=s-h.get("value",t)*s*2;c=n?n.shape.phase:"auto"===c?t*Math.PI/4:c;var m=p.getItemStyle();if(!m.fill){var w=e.get("color"),b=t%w.length;m.fill=w[b]}var x=new r({shape:{waveLength:f,radius:o,radiusY:s,cx:2*o,cy:0,waterLevel:y,amplitude:v,phase:c,inverse:a},style:m,x:M,y:P});x.shape._waterLevel=y;var S=d.getModel("emphasis.itemStyle").getItemStyle();S.lineWidth=0,x.ensureState("emphasis").style=S,i.helper.enableHoverEmphasis(x);var L=E(u,!0);return L.setStyle({fill:"white"}),x.setClipPath(L),x}function q(e,t,a){var i=h.getItemModel(e),r=i.get("period"),n=i.get("direction"),l=h.get("value",e),o=i.get("phase");o=a?a.shape.phase:"auto"===o?e*Math.PI/4:o;var s,d;s="auto"===r?0===(d=h.count())?5e3:5e3*(.2+(d-e)/d*.8):"function"==typeof r?r(l,e):r;var p=0;"right"===n||null==n?p=Math.PI:"left"===n?p=-Math.PI:"none"===n?p=0:console.error("Illegal direction value for liquid fill."),"none"!==n&&i.get("waveAnimation")&&t.animate("shape",!0).when(0,{phase:o}).when(s/2,{phase:p+o}).when(s,{phase:2*p+o}).during((function(){T&&T.dirty(!0)})).start()}h.diff(D).add((function(t){var a=k(t,!1),r=a.shape.waterLevel;a.shape.waterLevel=I?g/2:u,i.graphic.initProps(a,{shape:{waterLevel:r}},e),a.z2=2,q(t,a,null),s.add(a),h.setItemGraphicEl(t,a),F.push(a)})).update((function(t,a){for(var r=D.getItemGraphicEl(a),l=k(t,!1,r),d={},p=["amplitude","cx","cy","phase","radius","radiusY","waterLevel","waveLength"],u=0;u<p.length;++u){var c=p[u];l.shape.hasOwnProperty(c)&&(d[c]=l.shape[c])}var v={},f=["fill","opacity","shadowBlur","shadowColor"];for(u=0;u<f.length;++u)c=f[u],l.style.hasOwnProperty(c)&&(v[c]=l.style[c]);I&&(d.radiusY=g/2),i.graphic.updateProps(r,{shape:d,x:l.x,y:l.y},e),e.isUniversalTransitionEnabled&&e.isUniversalTransitionEnabled()?i.graphic.updateProps(r,{style:v},e):r.useStyle(v);var y=r.getClipPath(),m=l.getClipPath();r.setClipPath(l.getClipPath()),r.shape.inverse=l.inverse,y&&m&&n._shape===S&&!o(S)&&i.graphic.updateProps(m,{shape:y.shape},e,{isFrom:!0}),q(t,r,r),s.add(r),h.setItemGraphicEl(t,r),F.push(r)})).remove((function(e){var t=D.getItemGraphicEl(e);s.remove(t)})).execute(),d.get("label.show")&&s.add(function(t){var a=d.getModel("label");var r,n,l,o={z2:10,shape:{x:L,y:C,width:2*(I?u[0]:u),height:2*(I?u[1]:u)},style:{fill:"transparent"},textConfig:{position:a.get("position")||"inside"},silent:!0},s={style:{text:(r=e.getFormattedLabel(0,"normal"),n=100*h.get("value",0),l=h.getName(0)||e.name,isNaN(n)||(l=n.toFixed(0)+"%"),null==r?l:r),textAlign:a.get("align"),textVerticalAlign:a.get("baseline")}};Object.assign(s.style,i.helper.createTextStyle(a));var p=new i.graphic.Rect(o),c=new i.graphic.Rect(o);c.disableLabelAnimation=!0,p.disableLabelAnimation=!0;var g=new i.graphic.Text(s),v=new i.graphic.Text(s);p.setTextContent(g),c.setTextContent(v);var f=a.get("insideColor");v.style.fill=f;var y=new i.graphic.Group;y.add(p),y.add(c);var m=E(u,!0);return(T=new i.graphic.CompoundPath({shape:{paths:t},x:M,y:P})).setClipPath(m),c.setClipPath(T),y}(F)),this._shape=S,this._data=h},dispose:function(){}})},83:t=>{t.exports=e}},a={};function i(e){if(a[e])return a[e].exports;var r=a[e]={exports:{}};return t[e](r,r.exports,i),r.exports}return i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i(245)})()}));
//# sourceMappingURL=echarts-liquidfill.min.js.map
src/utils/myEcharts_zngc.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,3733 @@
import * as echarts from 'echarts'
/** 255
 * ç»Ÿä¸€æ ·å¼ï¼ŒåŠ è½½
 * @param {*} id
 * @param {*} option
 */
export function loadEcharts(id, option) {
  var myChart = echarts.init(document.getElementById(id))
  if (option.textStyle == null) {
    option.textStyle = {
      fontFamily: 'Microsoft YaHei',
      color: '#ffffff'
    }
  }
  // ä½¿ç”¨åˆšæŒ‡å®šçš„配置项和数据显示图表。
  myChart.clear()
  myChart.setOption(option, true)
  window.addEventListener('resize', function() {
    myChart.resize()
  })
  return myChart
}
const colorX = '#c7e7ff'
const colorY = '#7696c5'
// è„‰é“¾çœ‹æ¿
export function mapArea() {
}
export function pie1(data) {
  const titleArr = []
  const seriesArr = []
  const colors = [['#389af4', '#dfeaff'], ['#ff8c37', '#ffdcc3'], ['#ffc257', '#ffedcc'], ['#fd6f97', '#fed4e0'], ['#a181fc', '#e3d9fe']]
  data.forEach(function(item, index) {
    titleArr.push(
      {
        text: item.name,
        left: index * 20 + 9.5 + '%',
        top: '55%',
        textAlign: 'center',
        textStyle: {
          fontWeight: 'normal',
          fontSize: '16',
          color: colors[index][0],
          textAlign: 'center'
        }
      }
    )
    seriesArr.push(
      {
        name: item.name,
        type: 'pie',
        clockWise: false,
        radius: [50, 60], // è°ƒæ•´é¥¼å›¾å¤§å°
        itemStyle: {
          normal: {
            color: colors[index][0],
            shadowColor: colors[index][0],
            shadowBlur: 0,
            label: {
              show: false
            },
            labelLine: {
              show: false
            }
          }
        },
        hoverAnimation: false,
        center: [index * 20 + 10 + '%', '50%'],
        data: [{
          value: item.value,
          label: {
            normal: {
              formatter: function(params) {
                return params.value + '%'
              },
              position: 'center',
              show: true,
              textStyle: {
                fontSize: '16',
                fontWeight: 'normal',
                // fontWeight: 'bold',
                color: colors[index][0]
              }
            }
          }
        }, {
          value: 100 - item.value,
          name: 'invisible',
          itemStyle: {
            normal: {
              color: colors[index][1]
            },
            emphasis: {
              color: colors[index][1]
            }
          }
        }]
      }
    )
  })
  const option = {
    backgroundColor: 'transparent',
    title: titleArr,
    series: seriesArr
  }
  return option
}
export function bar1(data1, data2) {
  const titleText = '工厂人员出勤率'
  const path = 'path://M214,1079l8-6h16l8,6-8,6H222Z'
  // const data1 = ['80', '90', '70', '30', '50']
  // const data2 = ['70', '60', '50', '40', '30']
  const option = {
    backgroundColor: 'transparent',
    // tooltip: {
    //   show: false,
    //   trigger: 'axis',
    //   axisPointer: { // åæ ‡è½´æŒ‡ç¤ºå™¨ï¼Œåæ ‡è½´è§¦å‘有效
    //     type: 'shadow' // é»˜è®¤ä¸ºç›´çº¿ï¼Œå¯é€‰ä¸ºï¼š'line' | 'shadow'
    //   },
    //   formatter: function(e) {
    //     if (e.length > 1) {
    //       var S = e[1].data - e[0].data
    //       return e[0].axisValue + ':<br>差额=当前-年初<br>=' + S
    //     } else if (e.length = 1) {
    //       return e[0].axisValue + ':<br>' + e[0].seriesName + '=' + e[0].data
    //     }
    //   }
    // },
    title: {
      text: titleText,
      x: '40%',
      y: '0%',
      textStyle: {
        // color: '#fff',
        color: '#00ffff',
        fontSize: '20',
        fontWeight: 'bolder'
      },
      subtextStyle: {
        color: '#90979c',
        fontSize: '16'
      }
    },
    grid: {
      left: '4%',
      right: '4%',
      bottom: '4%',
      top: '15%',
      containLabel: true
    },
    legend: {
      show: false,
      // data: ['title1', 'title2'],
      data: ['title1'],
      left: 220,
      top: 10,
      textStyle: {
        color: '#00ffff',
        fontSize: 14
      },
      itemWidth: 12,
      itemHeight: 10,
      itemGap: 35,
      color: '#242424'
    },
    xAxis: {
      type: 'category',
      // data: ['车间一', '车间二', '车间三', '车间四', '车间五'],
      data: ['浙江皇冠', '永康皇冠', '北辰电机', '恒泰皇冠园林', '迈拓塑业'],
      axisLine: {
        lineStyle: {
          show: true,
          lineStyle: {
            color: '#6A989E'
          }
        }
      },
      axisLabel: {
        // interval: 0,
        // rotate: 40,
        textStyle: {
          fontFamily: 'Microsoft YaHei',
          color: colorX, // x轴颜色
          fontWeight: 'normal',
          fontSize: '12',
          lineHeight: 22
        }
      }
      // splitLine:{
      //     show:true,
      //     lineStyle: {
      //         type: 'dashed',
      //         color: 'rgba(135,140,147,0.8)'
      //     }
      // },
    },
    yAxis:
      {
        name: '%',
        nameTextStyle: {
          color: colorY,
          fontSize: 14,
          lineHeight: 20
        },
        boundaryGap: false,
        splitNumber: 4,
        type: 'value',
        axisLabel: {
          textStyle: {
            fontSize: 14,
            color: '#7696c5'
            // color: this.colorY
          }
        },
        splitLine: {
          show: true,
          lineStyle: {
            color: '#032c58'
          }
        },
        axisLine: {
          show: true,
          lineStyle: {
            color: '#032c58'
          }
        },
        axisTick: {
          show: true
        }
      },
    //   {
    //   type: 'value',
    //   // name: '数量(单位:个)',
    //   name: '',
    //   nameTextStyle: {
    //     color: '#ffffff'
    //   },
    //   axisLine: {
    //     show: false,
    //     lineStyle: {
    //       type: 'dashed',
    //       color: 'rgba(135,140,147,0.8)'
    //     }
    //   },
    //   splitLine: {
    //     show: true,
    //     lineStyle: {
    //       color: 'rgba(135,140,147,1)' // å·¦ä¾§æ˜¾ç¤ºçº¿
    //     }
    //   },
    //   axisLabel: {
    //     formatter: '{value}',
    //     color: colorY,
    //     fontSize: 14
    //   }
    // },
    series: [
      {
        type: 'pictorialBar',
        symbol: path,
        symbolSize: [30, 8],
        // symbolOffset: [-18, -4],
        symbolOffset: [0, -4],
        symbolPosition: 'end',
        z: 12,
        color: '#3440FF',
        data: data1
      },
      // {
      //   type: 'pictorialBar',
      //   symbol: path,
      //   symbolSize: [30, 8],
      //   symbolOffset: [18, -4],
      //   // symbolOffset: [20, -5],
      //   symbolPosition: 'end',
      //   z: 12,
      //   color: '#FF1155',
      //   data: data2
      // },
      {
        type: 'pictorialBar',
        symbol: path,
        symbolSize: [30, 8],
        // symbolOffset: [-18, 4],
        symbolOffset: [0, 4],
        z: 12,
        color: 'rgba(126,192,238,0.6)',
        data: data1
      },
      // {
      //   name: '',
      //   type: 'pictorialBar',
      //   symbol: path,
      //   symbolSize: [30, 8],
      //   // symbolOffset: [20, 4],
      //   symbolOffset: [18, 4],
      //   color: '#FFC0CB',
      //   z: 12,
      //   data: data2
      // },
      {
        name: 'title1',
        type: 'bar',
        barWidth: '30',
        itemStyle: {
          normal: {
            opacity: 0.7,
            color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
              offset: 0,
              color: 'blue'
            }, {
              offset: 1,
              color: '#7EC0EE'
            }]),
            barBorderRadius: 0
          }
        },
        label: {
          show: true,
          // position: ['-18','-18'],
          position: 'top',
          color: '#00f8ff',
          fontSize: 12
        },
        data: data1
      }
      // {
      //   name: 'title2',
      //   type: 'bar',
      //   barWidth: '30',
      //   itemStyle: {
      //     normal: {
      //       opacity: 0.7,
      //       color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
      //         offset: 0,
      //         color: '#FF2246'
      //       }, {
      //         offset: 1,
      //         color: '#FFC0CB'
      //
      //       }]),
      //       barBorderRadius: 0
      //     }
      //
      //   },
      //   label: {
      //     show: true,
      //     // position: ['18','-18'],
      //     position: 'top',
      //     color: '#00f8ff',
      //     fontSize: 12
      //   },
      //   data: data2
      // }
    ]
  }
  return option
}
export function line1(dataY, dataY2, dataY3, dataY4, dataY5) {
  const option = {
    backgroundColor: 'transparent',
    grid: {
      left: '4%',
      right: '4%',
      bottom: '4%',
      top: '15%',
      containLabel: true
    },
    title: {
      // text: '销售额概览',
      text: '各工厂能耗',
      left: '50%',
      top: '0%',
      textAlign: 'center',
      textStyle: {
        // color: '#fff',
        color: '#00ffff',
        fontSize: '20',
        fontWeight: 'bolder'
      }
    },
    tooltip: {
      trigger: 'axis',
      axisPointer: {
        lineStyle: {
          color: '#ddd'
        }
      },
      backgroundColor: 'rgba(255,255,255,1)',
      padding: [5, 10],
      textStyle: {
        color: '#7588E4'
      },
      extraCssText: 'box-shadow: 0 0 5px rgba(0,0,0,0.3)'
    },
    legend: {
      show: false,
      right: 20,
      orient: 'vertical',
      data: ['浙江皇冠', '永康皇冠', '北辰电机', '恒泰皇冠园林', '迈拓塑业']
    },
    xAxis: {
      // data: ['00:00','2:00','4:00','6:00','8:00','10:00','12:00','14:00','16:00','18:00','20:00',"22:00"],
      // data: ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月'],
      data: ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月'],
      // type: 'category',
      // boundaryGap: true,
      // axisLabel: {
      //   interval: 0,
      //   formatter: '{value}',
      //   fontSize: 14,
      //   margin: 20,
      //   textStyle: {
      //     // color: this.colorX
      //     color: '#c7e7ff'
      //   }
      // },
      // axisLine: {
      //   lineStyle: {
      //     color: '#032c58'
      //   }
      // },
      // splitLine: {
      //   show: false,
      //   lineStyle: {
      //     color: '#032c58'
      //   }
      // },
      // axisTick: {
      //   show: false
      // }
      // name: '月',
      // nameTextStyle: {
      //   color: colorX,
      //   fontSize: 14,
      //   lineHeight: 20
      // },
      boundaryGap: false,
      // splitLine: {
      //   show: false,
      //   interval: 'auto',
      //   lineStyle: {
      //     color: ['#D4DFF5']
      //   }
      // },
      axisTick: {
        show: false
      },
      axisLine: {
        lineStyle: {
          show: true,
          lineStyle: {
            color: '#6A989E'
          }
        }
      },
      axisLabel: {
        margin: 10,
        textStyle: {
          color: colorX,
          fontSize: 14
        }
      }
    },
    yAxis:
      {
        name: '',
        nameTextStyle: {
          color: colorY,
          fontSize: 14,
          lineHeight: 20
        },
        boundaryGap: false,
        splitNumber: 5,
        type: 'value',
        // offset: -30,
        axisLabel: {
          textStyle: {
            fontSize: 14,
            color: '#7696c5'
            // color: this.colorY
          }
        },
        splitLine: {
          show: true,
          lineStyle: {
            color: '#032c58'
          }
        },
        axisLine: {
          show: true,
          lineStyle: {
            color: '#032c58'
          }
        },
        axisTick: {
          show: true
        }
      },
    series: [
      {
        name: '浙江皇冠',
        type: 'line',
        smooth: true,
        showSymbol: false,
        symbol: 'circle',
        symbolSize: 6,
        // data: ['200', '400', '500', '300', '400', '500', '600', '800', '900', '1000', '1100', '1322'],
        data: dataY,
        areaStyle: {
          normal: {
            color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
              offset: 0,
              color: 'rgba(0,215,236,0.5)'
            }, {
              offset: 1,
              color: 'rgba(0,215,236,0.2)'
            }], false)
          }
        },
        itemStyle: {
          normal: {
            // color: '#f7b851'
            //   color: `rgb(73, 226, 196)`
            color: `rgb(0, 215, 236)`
          }
        },
        lineStyle: {
          normal: {
            width: 3
          }
        }
      },
      {
        name: '永康皇冠',
        type: 'line',
        smooth: true,
        showSymbol: false,
        symbol: 'circle',
        symbolSize: 6,
        // data: ['1200', '1400', '808', '811', '626', '488', '1600', '1100', '500', '300', '1998', '822'],
        data: dataY2,
        areaStyle: {
          normal: {
            color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
              offset: 0,
              color: 'rgba(60,244,184,0.5)'
            }, {
              offset: 1,
              color: 'rgba(60,244,184,0.2)'
            }], false)
          }
        },
        itemStyle: {
          normal: {
            color: `rgb(60, 244, 184)`
          }
        },
        lineStyle: {
          normal: {
            width: 3
          }
        }
      },
      {
        name: '北辰电机',
        type: 'line',
        smooth: true,
        showSymbol: false,
        symbol: 'circle',
        symbolSize: 6,
        // data: ['1200', '1400', '808', '811', '626', '488', '1600', '1100', '500', '300', '1998', '822'],
        data: dataY3,
        areaStyle: {
          normal: {
            color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
              offset: 0,
              color: 'rgba(55,183,255,0.5)'
            }, {
              offset: 1,
              color: 'rgba(55,183,255,0.2)'
            }], false)
          }
        },
        itemStyle: {
          normal: {
            // color: '#58c8da'
            color: `rgb(55, 183, 255)`
          }
        },
        lineStyle: {
          normal: {
            width: 3
          }
        }
      },
      {
        name: '恒泰皇冠园林',
        type: 'line',
        smooth: true,
        showSymbol: false,
        symbol: 'circle',
        symbolSize: 6,
        // data: ['1200', '1400', '808', '811', '626', '488', '1600', '1100', '500', '300', '1998', '822'],
        data: dataY4,
        areaStyle: {
          normal: {
            color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
              offset: 0,
              color: 'rgba(26,202,200,0.5)'
            }, {
              offset: 1,
              color: 'rgba(26,202,200,0.2)'
            }], false)
          }
        },
        itemStyle: {
          normal: {
            // color: '#58c8da'
            color: `rgb(26, 202, 200)`
          }
        },
        lineStyle: {
          normal: {
            width: 3
          }
        }
      },
      {
        name: '迈拓塑业',
        type: 'line',
        smooth: true,
        showSymbol: false,
        symbol: 'circle',
        symbolSize: 6,
        // data: ['1200', '1400', '808', '811', '626', '488', '1600', '1100', '500', '300', '1998', '822'],
        data: dataY5,
        areaStyle: {
          normal: {
            color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
              offset: 0,
              color: 'rgba(243,94,94,0.5)'
            }, {
              offset: 1,
              color: 'rgba(243,94,94,0.2)'
            }], false)
          }
        },
        itemStyle: {
          normal: {
            // color: '#58c8da'
            color: `rgb(243, 94, 94)`
          }
        },
        lineStyle: {
          normal: {
            width: 3
          }
        }
      }
    ]
  }
  return option
}
export function pie2(title, scaleData) {
  var rich = {
    white: {
      color: '#ddd',
      align: 'center',
      padding: [5, 0]
    }
  }
  var placeHolderStyle = {
    normal: {
      label: {
        show: false
      },
      labelLine: {
        show: false
      },
      color: 'rgba(0, 0, 0, 0)',
      borderColor: 'rgba(0, 0, 0, 0)',
      borderWidth: 0
    }
  }
  var data = []
  for (var i = 0; i < scaleData.length; i++) {
    data.push({
      value: scaleData[i].value,
      name: scaleData[i].name,
      itemStyle: {
        normal: {
          borderWidth: 5,
          shadowBlur: 30,
          borderColor: new echarts.graphic.LinearGradient(0, 0, 1, 1, [{
            offset: 0,
            color: '#7777eb'
          }, {
            offset: 1,
            color: '#70ffac'
          }]),
          shadowColor: 'rgba(142, 152, 241, 0.6)'
        }
      }
    }, {
      value: 4,
      name: '',
      itemStyle: placeHolderStyle
    })
  }
  var seriesObj = [{
    name: '',
    type: 'pie',
    clockWise: false,
    radius: [60, 65],
    top: '10%',
    hoverAnimation: false,
    itemStyle: {
      normal: {
        label: {
          show: true,
          position: 'outside',
          // color: '#ddd',
          color: colorX,
          formatter: function(params) {
            var percent = 0
            var total = 0
            for (var i = 0; i < scaleData.length; i++) {
              total += scaleData[i].value
            }
            percent = ((params.value / total) * 100).toFixed(0)
            if (params.name !== '') {
              return params.name + '\n{white|' + '' + percent + '%}'
            } else {
              return ''
            }
          },
          rich: rich
        },
        labelLine: {
          show: false
        }
      }
    },
    data: data
  }]
  const option = {
    backgroundColor: 'transparent',
    tooltip: {
      show: false
    },
    top: 'middle',
    title: {
      text: title,
      left: '50%',
      top: '7%',
      textAlign: 'center',
      textStyle: {
        color: '#00ffff',
        fontSize: '20',
        fontWeight: 'bolder'
      }
    },
    legend: {
      show: false
    },
    toolbox: {
      show: false
    },
    series: seriesObj
  }
  return option
}
export function bar2(list) {
  // const list = [500, 400, 300, 200, 200]
  const yName = ['浏览客户', '进店客户', '认购客户', '下单客户', '再次购买']
  const xData = [500, 400, 300, 200, 100]
  // const color = ['#ff3259', '#ff6160', '#ffb065', '#fef568', '#1a6df1', '#15a0ff', '#11e2ff', '#58febe']
  const color = ['#ff3259', '#ff6160', '#ffb065', '#fef568', '#1a6df1']
  const barWidth = 15
  const option = {
    backgroundColor: 'transparent',
    title: {
      text: '平台链接客户',
      left: '50%',
      top: '5%',
      textAlign: 'center',
      textStyle: {
        // color: '#fff',
        color: '#00ffff',
        fontSize: '20',
        fontWeight: 'bolder'
      }
    },
    xAxis: {
      splitLine: {
        show: false
      },
      axisLabel: {
        show: false
      },
      axisTick: {
        show: false
      },
      axisLine: {
        show: false
      }
    },
    grid: {
      left: '4%',
      right: '4%',
      bottom: '4%',
      top: '15%',
      containLabel: true
    },
    yAxis: [{
      inverse: true,
      axisLine: {
        show: false
      },
      axisTick: {
        show: false
      },
      axisLabel: {
        margin: 10,
        textStyle: {
          fontSize: 14,
          color: colorX
        }
      },
      data: yName
    }],
    series: [{ // å†…
      type: 'bar',
      barWidth,
      legendHoverLink: false,
      symbolRepeat: true,
      silent: true,
      itemStyle: {
        normal: {
          // barBorderRadius: [4, 4, 4, 4],
          color: function(params) {
            var colorlist = color
            return colorlist[params.dataIndex]
          }
        }
      },
      data: list,
      z: 1,
      animationEasing: 'elasticOut'
    },
    { // èƒŒæ™¯
      type: 'pictorialBar',
      animationDuration: 0,
      symbolRepeat: 'fixed',
      symbolMargin: '20%',
      symbol: 'roundRect',
      symbolSize: [6, barWidth],
      itemStyle: {
        normal: {
          color: 'rgba(255,255,255,0.3)'
        }
      },
      data: xData,
      z: 0,
      animationEasing: 'elasticOut'
    },
    { // åˆ†éš”
      type: 'pictorialBar',
      itemStyle: {
        color: '#051e43'
      },
      symbolRepeat: 'fixed',
      symbolMargin: 4,
      symbol: 'roundRect',
      symbolClip: true,
      symbolSize: [2, barWidth],
      symbolPosition: 'start',
      symbolOffset: [0, 0],
      data: list,
      z: 2,
      animationEasing: 'elasticOut'
    }
    ]
  }
  return option
}
export function custom1() {
}
export function bar3() {
  const a1 = 20 + Math.floor(Math.random() * 80)
  const a2 = 20 + Math.floor(Math.random() * 80)
  const a3 = 20 + Math.floor(Math.random() * 80)
  const a4 = 20 + Math.floor(Math.random() * 80)
  const a5 = 20 + Math.floor(Math.random() * 80)
  const a6 = 20 + Math.floor(Math.random() * 80)
  const a7 = 20 + Math.floor(Math.random() * 80)
  const a8 = 20 + Math.floor(Math.random() * 80)
  const a9 = 20 + Math.floor(Math.random() * 80)
  const a10 = 20 + Math.floor(Math.random() * 80)
  const a11 = 20 + Math.floor(Math.random() * 80)
  const a12 = 20 + Math.floor(Math.random() * 80)
  const list = [
    {
      key: '进货数量',
      value: [
        { value: a1 },
        { value: a2 },
        { value: a3 },
        { value: a4 },
        { value: a5 },
        { value: a6 },
        { value: a8 },
        { value: a9 },
        { value: a10 },
        { value: a11 },
        { value: a12 }
      ]
    }, {
      key: '合格数量',
      value: [
        { value: a1 - 2 },
        { value: a2 - 3 },
        { value: a3 - 5 },
        { value: a4 - 1 },
        { value: a5 - 2 },
        { value: a6 - 4 },
        { value: a7 - 5 },
        { value: a8 - 2 },
        { value: a9 - 2 },
        { value: a10 - 6 },
        { value: a11 - 1 },
        { value: a12 - 3 }
      ]
    }, {
      key: '不合格数量',
      value: [
        { value: 2 },
        { value: 3 },
        { value: 5 },
        { value: 1 },
        { value: 2 },
        { value: 4 },
        { value: 5 },
        { value: 2 },
        { value: 2 },
        { value: 6 },
        { value: 1 },
        { value: 3 }
      ]
    }
  ]
  const color = ['26,171,234', '73,226,196', '255,221,97']
  // const xList = ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月']
  const xList = ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月']
  const seriesData = []
  list.forEach((r, i) => {
    var o = {
      name: r.key,
      type: 'bar',
      smooth: false,
      yAxisIndex: 0,
      showSymbol: true,
      showAllSymbol: true,
      barWidth: 8,
      zlevel: 3,
      lineStyle: {
        normal: {
          width: 2,
          color: `rgba(${color[i]})`
        }
      },
      areaStyle: {
        normal: {
          color: {
            type: 'linear',
            x: 0,
            y: 0,
            x2: 0,
            y2: 1,
            colorStops: [
              {
                offset: 0,
                color: `rgba(${color[i]}, 0.0)`// 0% å¤„的颜色
              },
              {
                offset: 1,
                color: `rgba(${color[i]}, 0.0)` // 100% å¤„的颜色
              }
            ],
            globalCoord: false // ç¼ºçœä¸º false
          } // æ¸å˜é¢œè‰²
        }
      },
      itemStyle: {
        normal: {
          color: {
            type: 'linear',
            x: 0,
            y: 0,
            x2: 0,
            y2: 1,
            colorStops: [
              {
                offset: 0,
                color: `rgba(${color[i]}, 1)`// 0% å¤„的颜色
              },
              {
                offset: 1,
                color: `rgba(${color[i]}, 0.2)` // 100% å¤„的颜色
              }
            ],
            globalCoord: false // ç¼ºçœä¸º false
          } // æ¸å˜é¢œè‰²
        }
      },
      data: r.value.map(r => r.value)
    }
    // if (i === 0) {
    //   xList = r.value.map(r => r.key)
    // }
    // if (r.percent) {
    //   this.$set(o, 'symbolSize', 6)
    // } else {
    //   this.$set(o, 'symbol', 'path://M0,10 L10,10 L5,0 L0,10 z')
    // }
    seriesData.push(o)
  })
  const option = {
    backgroundColor: 'transparent',
    legend: {
      show: true,
      data: list.map(r => r.key),
      top: '2%',
      itemHeight: 20,
      itemWidth: 20,
      textStyle: {
        fontSize: 14,
        color: 'F1F1F3'
        // color: colorX
      },
      right: '1%'
    },
    title: {
      text: '合格率分析',
      left: '28%',
      top: '2%',
      textAlign: 'center',
      textStyle: {
        // color: '#fff',
        color: '#00ffff',
        fontSize: '20',
        fontWeight: 'bolder'
      }
    },
    grid: {
      left: '4%',
      right: '4%',
      bottom: '4%',
      top: '15%',
      containLabel: true
    },
    tooltip: {
      show: true,
      trigger: 'axis', // axis , item
      backgroundColor: 'RGBA(0, 0, 0, 0.3)',
      borderColor: 'rgba(0, 151, 251, 0.6)',
      borderWidth: 1,
      borderRadius: 0,
      textStyle: {
        color: '#BCE9FC',
        fontSize: 14,
        align: 'left'
      }
    },
    xAxis: [{
      type: 'category',
      boundaryGap: true,
      axisLabel: {
        interval: 0,
        formatter: '{value}',
        fontSize: 14,
        margin: 20,
        textStyle: {
          // color: this.colorX
          color: '#c7e7ff'
        }
      },
      axisLine: {
        lineStyle: {
          color: '#032c58'
        }
      },
      splitLine: {
        show: false,
        lineStyle: {
          color: '#032c58'
        }
      },
      axisTick: {
        show: false
      },
      data: xList
    }],
    yAxis: [
      {
        boundaryGap: false,
        splitNumber: 4,
        type: 'value',
        name: '%',
        nameTextStyle: {
          color: colorY,
          fontSize: 14,
          lineHeight: 20
        },
        axisLabel: {
          textStyle: {
            fontSize: 14,
            color: '#7696c5'
            // color: this.colorY
          }
        },
        splitLine: {
          show: true,
          lineStyle: {
            color: '#032c58'
          }
        },
        axisLine: {
          show: true,
          lineStyle: {
            color: '#032c58'
          }
        },
        axisTick: {
          show: true
        }
      },
      {
        boundaryGap: false,
        splitNumber: 4,
        type: 'value',
        axisLabel: {
          textStyle: {
            fontSize: 14,
            // color: this.colorY
            color: '#7696c5'
          }
        },
        nameTextStyle: {
          color: '#fff',
          fontSize: 14,
          lineHeight: 40
        },
        splitLine: {
          lineStyle: {
            color: '#032c58'
          }
        },
        axisLine: {
          show: false
        },
        axisTick: {
          show: true
        }
      }
    ],
    series: seriesData
  }
  return option
}
export function bar4() {
  const data = [{
    name: '浙江皇冠',
    value: Math.floor(Math.random() * 10 + 90)
  },
  {
    name: '永康皇冠',
    value: Math.floor(Math.random() * 10 + 90)
  },
  {
    name: '北辰电机',
    value: Math.floor(Math.random() * 10 + 90)
  },
  {
    name: '恒泰皇冠园林',
    value: Math.floor(Math.random() * 10 + 90)
  },
  {
    name: '迈拓塑业',
    value: Math.floor(Math.random() * 10 + 90)
  }
    //   {
    //   name: '车间五',
    //   value: Math.floor(Math.random() * 10 + 90)
    // }
  ]
  const getArrByKey = (data, k) => {
    const key = k || 'value'
    const res = []
    if (data) {
      data.forEach(function(t) {
        res.push(t[key])
      })
    }
    return res
  }
  const getSymbolData = (data) => {
    const arr = []
    for (var i = 0; i < data.length; i++) {
      arr.push({
        value: data[i].value,
        symbolPosition: 'end'
      })
    }
    return arr
  }
  // console.log(getSymbolData(data));
  const option = {
    backgroundColor: 'transparent',
    grid: {
      left: '0%',
      right: '4%',
      bottom: '4%',
      top: '15%',
      containLabel: true
    },
    title: {
      text: '工厂达成率',
      x: '46%',
      y: '5%',
      textStyle: {
        // color: '#fff',
        color: '#00ffff',
        fontSize: '20',
        fontWeight: 'bolder'
      },
      subtextStyle: {
        color: '#90979c',
        fontSize: '16'
      }
    },
    xAxis: {
      show: false
    },
    yAxis: [{
      triggerEvent: true,
      show: true,
      inverse: true,
      data: getArrByKey(data, 'name'),
      axisLine: {
        show: false
      },
      splitLine: {
        show: false
      },
      axisTick: {
        show: false
      },
      axisLabel: {
        show: true,
        interval: 0,
        color: colorY,
        align: 'left',
        margin: 60,
        formatter: function(value, index) {
          return '{title|' + value + '}'
        },
        rich: {
          title: {
            width: 50,
            align: 'right',
            fontSize: 18
          }
        }
      }
    }, {
      triggerEvent: true,
      show: true,
      inverse: true,
      data: getArrByKey(data, 'name'),
      axisLine: {
        show: false
      },
      splitLine: {
        show: false
      },
      axisTick: {
        show: false
      },
      axisLabel: {
        interval: 0,
        shadowOffsetX: '-20px',
        // color: ['#fff'],
        color: colorX,
        align: 'left',
        verticalAlign: 'center',
        lineHeight: 40,
        fontSize: 18,
        formatter: function(value, index) {
          return data[index].value + '%'
        }
      }
    }],
    series: [{
      name: 'XXX',
      type: 'pictorialBar',
      symbol: 'image://data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADoAAAA6CAMAAADWZboaAAAAZlBMVEUAAABe3uVe3+Vf3uVf3+Zf3uVg3+Zg3+Zf3+Vi4OZh4OZg3+Z86/Bh3+Zi4Odj4Odi4OZ86/B76/B86/Bj4ed56+9x5+xn4umB7/N87PB36e+A7/N+7fF/7vJ/7vJ+7fGA7/OB7/PReX+lAAAAIXRSTlMABQkVDREmIhk3MR10LEFFPHh7cUprXE35h2XnqMLAp+mHAG9cAAAB5ElEQVRIx83WjU7CMBQFYIoiKMqU/XUboHv/l/Tce7t2XamDNSacETEmX86tlK2rx4py150o+MstMBLwWRfHKo6JCVxLnvmFGBjFQ58oF1//sUZhGy/ClSTWObgnL4O+bkeN4nY2okfNMbkRt9/vtxz8InoTsWplJSCzFxPmO8+GpSIByX3YQAuGDWtRKhKjCnxDXhF6Z4yxnZ20Wgko7BMRDmxtSGVaI4kdTIgb+zTYoJQlIMlDlmUFgrcDWWC201qSayqlTkiCddWWeV62VU0YlnpRi9VOKaSUsiyq/N0krwq2Ugt7lVpZl5BfHNiytjagMi+XYp0kCR45hMlivVQrE/uU5pXSrCB5bM6d1t2lOZItMqmliT3q5uVxqxzyW/ccfYLNKx7ZTeykMvNyac2yt2Fbc61MHLSC0rwoxbiNdlQ3GBm1NLHQsHUrtEXppR/ljNpW6DbSCoqlFiVoN6YdaFlgsSFVPs1BdT8OaB5QyQzVcaqWDows/zepxR8ObLglTrdtCRVuRNj4Rrxh+//0ke2f8KVL+Kon3GCSbmsJN9OUW3j6g0Ns+LgCij2u0h+Sghc8mlMPBMgdx5DFh59VmOVHrvmDnoNxCz3J7MFWsMuaLyR089xz/xhlfijvwutR8gv3zk6BLUUeCgAAAABJRU5ErkJggg==',
      symbolSize: [50, 50],
      symbolOffset: [20, 0],
      z: 12,
      itemStyle: {
        normal: {
          color: '#fff'
        }
      },
      data: getSymbolData(data)
    }, {
      name: '条',
      type: 'bar',
      showBackground: true,
      // barBorderRadius: 30,
      yAxisIndex: 0,
      data: data,
      barWidth: 10,
      // align: left,
      itemStyle: {
        normal: {
          color: 'rgba(41, 162, 245, 1)'
          // barBorderRadius: 10
        }
        // color: '#A71A2B',
        // barBorderRadius: 4,
      }
      // label: {
      //     normal: {
      //         color: '#fff',
      //         show: true,
      //         position: ["-80px", 0],
      //         textStyle: {
      //             fontSize: 16
      //         },
      //         formatter: function(a, b) {
      //             return a.name
      //         }
      //     }
      // }
    }]
  }
  return option
}
export function barline1() {
  return {
    backgroundColor: 'transparent',
    tooltip: {},
    title: {
      text: '订单完成总数',
      left: '50%',
      top: '5%',
      textAlign: 'center',
      textStyle: {
        // color: '#fff',
        color: '#00ffff',
        fontSize: '20',
        fontWeight: 'bolder'
      }
    },
    grid: {
      left: '4%',
      right: '4%',
      bottom: '4%',
      top: '15%',
      containLabel: true
    },
    legend: {
      show: false,
      itemGap: 50,
      data: ['注册总量', '最新注册量'],
      textStyle: {
        color: '#f9f9f9',
        borderColor: '#fff'
      }
    },
    xAxis: [{
      type: 'category',
      boundaryGap: true,
      axisLabel: {
        interval: 0,
        formatter: '{value}',
        fontSize: 14,
        margin: 20,
        textStyle: {
          color: colorX
        }
      },
      axisLine: {
        lineStyle: {
          color: '#032c58'
        }
      },
      splitLine: {
        show: false,
        lineStyle: {
          color: '#032c58'
        }
      },
      axisTick: {
        show: false
      },
      data: ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月']
    }],
    yAxis: [
      {
        max: 800,
        boundaryGap: false,
        splitNumber: 4,
        type: 'value',
        axisLabel: {
          textStyle: {
            fontSize: 14,
            color: colorY
          }
        },
        name: '单',
        nameTextStyle: {
          color: colorY,
          fontSize: 14,
          lineHeight: 20
        },
        splitLine: {
          show: true,
          lineStyle: {
            color: '#032c58'
          }
        },
        axisLine: {
          show: true,
          lineStyle: {
            color: '#032c58'
          }
        },
        axisTick: {
          show: true
        }
      }
    ],
    series: [
      {
        name: '注册总量',
        type: 'line',
        // smooth: true, //是否平滑曲线显示
        //             symbol:'circle',  // é»˜è®¤æ˜¯ç©ºå¿ƒåœ†ï¼ˆä¸­é—´æ˜¯ç™½è‰²çš„),改成实心圆
        showAllSymbol: true,
        symbol: 'emptyCircle',
        symbolSize: 6,
        lineStyle: {
          normal: {
            color: '#28ffb3' // çº¿æ¡é¢œè‰²
          },
          borderColor: '#f0f'
        },
        label: {
          show: true,
          position: 'top',
          textStyle: {
            color: '#fff'
          }
        },
        itemStyle: {
          normal: {
            color: '#28ffb3'
          }
        },
        tooltip: {
          show: false
        },
        areaStyle: { // åŒºåŸŸå¡«å……样式
          normal: {
            // çº¿æ€§æ¸å˜ï¼Œå‰4个参数分别是x0,y0,x2,y2(范围0~1);相当于图形包围盒中的百分比。如果最后一个参数是‘true’,则该四个值是绝对像素位置。
            color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
              offset: 0,
              color: 'rgba(0,154,120,1)'
            },
            {
              offset: 1,
              color: 'rgba(0,0,0, 0)'
            }
            ], false),
            shadowColor: 'rgba(53,142,215, 0.9)', // é˜´å½±é¢œè‰²
            shadowBlur: 20 // shadowBlur设图形阴影的模糊大小。配合shadowColor,shadowOffsetX/Y, è®¾ç½®å›¾å½¢çš„阴影效果。
          }
        },
        // data: [393, 438, 485, 631, 689, 824, 987]
        data: [600 + Math.floor(Math.random() * 100), 600 + Math.floor(Math.random() * 100), 600 + Math.floor(Math.random() * 100), 600 + Math.floor(Math.random() * 100), 600 + Math.floor(Math.random() * 100), 600 + Math.floor(Math.random() * 100), 600 + Math.floor(Math.random() * 100), 600 + Math.floor(Math.random() * 100), 600 + Math.floor(Math.random() * 100), 600 + Math.floor(Math.random() * 100), 600 + Math.floor(Math.random() * 100)]
      }
      //   {
      //   name: '最新注册量',
      //   type: 'bar',
      //   barWidth: 20,
      //   tooltip: {
      //     show: false
      //   },
      //   label: {
      //     show: true,
      //     position: 'top',
      //     textStyle: {
      //       color: '#fff',
      //     }
      //   },
      //   itemStyle: {
      //     normal: {
      //       // barBorderRadius: 5,
      //       // color: new echarts.graphic.LinearGradient(
      //       //     0, 0, 0, 1,
      //       //     [{
      //       //             offset: 0,
      //       //             color: '#14c8d4'
      //       //         },
      //       //         {
      //       //             offset: 1,
      //       //             color: '#43eec6'
      //       //         }
      //       //     ]
      //       // )
      //       color: function (params) {
      //         var colorList = ['#0ec1ff', '#10cdff', '#12daff', '#15ebff', '#17f8ff', '#1cfffb', '#1dfff1'];
      //         return colorList[params.dataIndex];
      //       }
      //     }
      //   },
      //   data: [200, 382, 102, 267, 186, 315, 316]
      // }
    ]
  }
}
// ç»¼åˆçœ‹æ¿
export function zhkb01() {
  // const zhkb01name = ['计划完成进度(自产)', '计划完成进度(外购)'] // åç§°
  const zhkb01name = ['', ''] // åç§°
  const zhkb01Value = [Math.ceil(Math.random() * 10 + 90), Math.ceil(Math.random() * 10 + 90)] // å€¼
  const zhkb01Max = []
  const max = Math.ceil(Math.max(...zhkb01Value.map(r => r)) * 1.1)
  for (let i = 0; i < zhkb01Value.length; i++) {
    zhkb01Max.push(max * 4)
    // zhkb01Max.push(100)
  }
  const option = {
    backgroundColor: 'transparent',
    grid: {
      left: '4%',
      right: '4%',
      bottom: '4%',
      top: '5%',
      containLabel: true
    },
    // tooltip: {
    //   formatter: (params) => {
    //     if (params.name !== '') {
    //       return params.name + ' : ' + zhkb01Value[params.dataIndex]
    //     }
    //   },
    //   textStyle: {
    //     align: 'left'
    //   }
    // },
    xAxis: [
      {
        type: 'value',
        axisLabel: {
          show: false,
          color: '#fff',
          formatter: function(val) {
            return val + ''
          },
          textStyle: {
            fontSize: '13'
          }
        },
        min: 0,
        max: max, // è®¡ç®—最大值
        interval: max / 5, //  å¹³å‡åˆ†ä¸º5份
        splitNumber: 5,
        splitLine: {
          show: false,
          lineStyle: {
            color: '#fff'
          }
        },
        axisLine: {
          show: false,
          lineStyle: {
            color: '#fff',
            width: 1,
            opacity: 0.3
          }
        },
        axisTick: {
          show: false
        }
      },
      {
        type: 'value',
        axisLabel: {
          show: false
        },
        min: 0,
        max: max, // è®¡ç®—最大值
        interval: max / 10, //  å¹³å‡åˆ†ä¸º5份
        splitNumber: 10,
        splitLine: {
          show: false,
          lineStyle: {
            type: 'dashed',
            color: '#D8D8D8'
          }
        },
        axisLine: {
          show: false,
          lineStyle: {
            color: '#fff'
          }
        },
        axisTick: {
          show: false
        }
      }
    ],
    yAxis: [
      {
        // show: true,//暂时不显示
        show: false,
        inverse: false,
        data: zhkb01name,
        axisLabel: {
          padding: [30, 0, 0, -135],
          // inside: true
          textStyle: {
            fontSize: 16,
            fontFamily: 'PingFang SC',
            // fontWeight: 400,
            color: '#3dffef',
            align: 'left'
          }
          // formatter: '{value}\n{a|占位}',
          // rich: {
          //   a: {
          //     // color: 'transparent',
          //     color: 'red',
          //     lineHeight: 30,
          //     fontFamily: 'digital',
          //     fontSize: 20,
          //     // shadowColor: 'rgba(0, 0, 0, 1)',
          //     shadowColor: 'red',
          //     shadowBlur: 10
          //   }
          // }
        },
        // scale: true, // è‡ªé€‚应
        // offset: 50,
        splitLine: {
          show: false
        },
        axisTick: {
          show: false
        },
        axisLine: {
          show: false
        }
      },
      {
        // å·¦ä¾§æŸ±çŠ¶å›¾çš„Yè½´
        gridIndex: 0, // y轴所在的 grid çš„索引
        splitLine: 'none',
        axisTick: 'none',
        axisLine: 'none',
        data: zhkb01Value,
        // inverse: true,//是否是反向坐标轴。
        axisLabel: {
          show: true,
          verticalAlign: 'center',
          align: 'left',
          padding: [0, 0, 0, 0],
          textStyle: {
            color: '#fff',
            fontSize: '20'
          },
          formatter: function(value) {
            return '{x|  ' + value + '} {y|' + '%}'
          },
          rich: {
            y: {
              color: '#3dffef',
              fontFamily: 'Orbitron',
              fontSize: 16
            },
            x: {
              color: '#3dffef',
              fontFamily: 'Orbitron',
              fontSize: 16
            }
          }
        }
      }
    ],
    series: [
      {
        name: '值',
        type: 'bar',
        barGap: '-130%',
        // zlevel: 1,
        xAxisIndex: 0,
        label: {
          show: false,
          position: 'right',
          textStyle: {
            color: '#fff',
            fontSize: 20
          }
        },
        itemStyle: {
          normal: {
            barBorderRadius: 4,
            color: {
              colorStops: [
                {
                  offset: 0,
                  color: '#46B7ED' // 0% å¤„的颜色
                },
                {
                  offset: 1,
                  color: '#48EDD3' // 100% å¤„的颜色
                }
              ]
            }
          }
        },
        barWidth: 12,
        data: zhkb01Value,
        z: 0
      },
      {
        // åˆ†éš”
        type: 'pictorialBar',
        symbolRotate: '-20',
        itemStyle: {
          normal: {
            color: 'rgba(1, 12, 38, 0.4)'
          }
        },
        symbolRepeat: 'fixed',
        symbolMargin: 10,
        symbol: 'rect',
        symbolClip: true,
        symbolSize: [5, 28],
        symbolPosition: 'start',
        symbolOffset: [0, -1],
        data: zhkb01Value,
        z: 66,
        animationEasing: 'elasticOut'
      },
      {
        name: '背景',
        type: 'bar',
        barWidth: 14,
        barGap: '-110%',
        data: zhkb01Max,
        itemStyle: {
          normal: {
            color: 'rgba(5,59,113,.7)',
            barBorderRadius: 6,
            borderColor: 'rgba(0, 255, 236, 1)'
          }
        },
        z: -1
      }
    ]
  }
  return option
}
export function zhkb02() {
}
export function zhkb03(title) {
  const labelData = []
  const labelData1 = []
  for (let i = 0; i < 80; ++i) {
    labelData.push({
      value: 1,
      name: i,
      itemStyle: {
        normal: {
          color: 'rgba(0,209,228,0)'
        }
      }
    })
  }
  for (let i = 0; i < labelData.length; ++i) {
    if (labelData[i].name < 15) {
      labelData[i].itemStyle = {
        normal: {
          color: new echarts.graphic.LinearGradient(
            0, 1, 0, 0,
            [{
              offset: 0,
              color: '#6dfbff'
            },
            {
              offset: 1,
              color: '#02aeff'
            }
            ]
          )
        }
      }
    }
  }
  for (let i = 0; i < 80; ++i) {
    labelData1.push({
      value: 1,
      name: i,
      itemStyle: {
        normal: {
          color: 'rgba(0,209,228,0)'
        }
      }
    })
  }
  for (let i = 0; i < labelData1.length; ++i) {
    if (labelData1[i].name < 80) {
      labelData1[i].itemStyle = {
        normal: {
          color: '#464451'
        }
      }
    }
  }
  function Pie() {
    const dataArr = []
    for (var i = 0; i < 100; i++) {
      if (i % 10 === 0) {
        dataArr.push({
          name: (i + 1).toString(),
          value: 30,
          itemStyle: {
            normal: {
              color: 'rgba(0,255,255,1)',
              borderWidth: 0,
              borderColor: 'rgba(0,0,0,0)'
            }
          }
        })
      } else {
        dataArr.push({
          name: (i + 1).toString(),
          value: 100,
          itemStyle: {
            normal: {
              color: 'rgba(0,0,0,0)',
              borderWidth: 0,
              borderColor: 'rgba(0,0,0,0)'
            }
          }
        })
      }
    }
    return dataArr
  }
  function Pie1() {
    const dataArr = []
    for (var i = 0; i < 100; i++) {
      if (i % 5 === 0) {
        dataArr.push({
          name: (i + 1).toString(),
          value: 20,
          itemStyle: {
            normal: {
              color: 'rgba(0,255,255,1)',
              borderWidth: 0,
              borderColor: 'rgba(0,0,0,0)'
            }
          }
        })
      } else {
        dataArr.push({
          name: (i + 1).toString(),
          value: 100,
          itemStyle: {
            normal: {
              color: 'rgba(0,0,0,0)',
              borderWidth: 0,
              borderColor: 'rgba(0,0,0,0)'
            }
          }
        })
      }
    }
    return dataArr
  }
  function Pie2() {
    const dataArr = []
    for (var i = 0; i < 100; i++) {
      if (i % 5 === 0) {
        dataArr.push({
          name: (i + 1).toString(),
          value: 20,
          itemStyle: {
            normal: {
              color: 'rgba(0,255,255,.3)',
              borderWidth: 0,
              borderColor: 'rgba(0,0,0,0)'
            }
          }
        })
      } else {
        dataArr.push({
          name: (i + 1).toString(),
          value: 100,
          itemStyle: {
            normal: {
              color: 'rgba(0,0,0,0)',
              borderWidth: 0,
              borderColor: 'rgba(0,0,0,0)'
            }
          }
        })
      }
    }
    return dataArr
  }
  const option = {
    grid: {
      left: '0%',
      right: '0%',
      bottom: '0%',
      top: '0%',
      containLabel: true
    },
    backgroundColor: 'transparent',
    title: [
      {
        text: title,
        x: '46%',
        y: '38%',
        textAlign: 'center',
        textStyle: {
          fontSize: 12,
          fontWeight: 'normal',
          color: '#09d8f2'
        }
      },
      {
        text: '99%',
        x: '49%',
        y: '53%',
        textAlign: 'center',
        textStyle: {
          fontSize: 18,
          fontWeight: 800,
          color: '#09d8f2'
        }
      }],
    polar: {
      radius: ['90%', '85%'],
      center: ['50%', '50%']
    },
    angleAxis: {
      max: 100,
      show: false,
      startAngle: 0
    },
    radiusAxis: {
      type: 'category',
      show: true,
      axisLabel: {
        show: false
      },
      axisLine: {
        show: false
      },
      axisTick: {
        show: false
      }
    },
    series: [
      // æœ€é‡Œåœˆ
      {
        type: 'pie',
        radius: ['91%', '89%'],
        center: ['50%', '50%'],
        data: [{
          hoverOffset: 1,
          value: 100,
          name: '',
          itemStyle: {
            color: '#2f748b'
          },
          label: {
            show: false
          },
          labelLine: {
            normal: {
              smooth: true,
              lineStyle: {
                width: 0
              }
            }
          },
          hoverAnimation: false
        }]
      },
      // é‡Œç¬¬äºŒåœˆ
      {
        name: '',
        type: 'bar',
        roundCap: true, // åœ†è§’
        barWidth: 60,
        showBackground: true,
        backgroundStyle: {
          color: '#3d4767'
        },
        data: [75],
        coordinateSystem: 'polar',
        itemStyle: {
          normal: {
            color: new echarts.graphic.LinearGradient(1, 0, 0, 0, [{
              offset: 0,
              color: '#0ff'
            }, {
              offset: 1,
              color: '#02aeff'
            }])
          }
        }
      },
      // é½¿è½®
      {
        name: '大环',
        type: 'gauge',
        splitNumber: 100,
        radius: '124%',
        center: ['50%', '50%'],
        startAngle: 90,
        endAngle: -269.9999,
        axisLine: {
          show: false,
          lineStyle: {
            color: [[0.3, '#26a7d4'], [1, '#23395a']]
          }
        },
        axisTick: {
          show: false
        },
        splitLine: {
          show: true,
          length: 8,
          lineStyle: {
            color: 'auto',
            width: 2.5
          }
        },
        axisLabel: {
          show: false
        },
        detail: {
          show: false
        }
      },
      // å¤–圈装饰
      {
        type: 'pie',
        zlevel: 0,
        silent: true,
        radius: ['110%', '108.5%'],
        center: ['50%', '50%'],
        z: 1,
        label: {
          normal: {
            show: false
          }
        },
        labelLine: {
          normal: {
            show: false
          }
        },
        data: Pie()
      },
      // {
      //   type: 'pie',
      //   zlevel: 0,
      //   silent: true,
      //   startAngle: -150,
      //   radius: ['58.5%', '57%'],
      //   center: ['50%', '50%'],
      //   z: 1,
      //   label: {
      //     normal: {
      //       show: false
      //     }
      //   },
      //   labelLine: {
      //     normal: {
      //       show: false
      //     }
      //   },
      //   data: Pie3()
      // },
      {
        type: 'pie',
        zlevel: 0,
        silent: true,
        startAngle: -140,
        radius: ['100%', '98.5%'],
        center: ['50%', '50%'],
        z: 1,
        label: {
          normal: {
            show: false
          }
        },
        labelLine: {
          normal: {
            show: false
          }
        },
        data: Pie()
      },
      {
        type: 'pie',
        zlevel: 0,
        silent: true,
        radius: ['98%', '96.5%'],
        center: ['50%', '50%'],
        z: 1,
        label: {
          normal: {
            show: false
          }
        },
        labelLine: {
          normal: {
            show: false
          }
        },
        data: Pie1()
      },
      {
        type: 'pie',
        zlevel: 0,
        silent: true,
        startAngle: -140,
        radius: ['98%', '96.5%'],
        center: ['50%', '50%'],
        z: 1,
        label: {
          normal: {
            show: false
          }
        },
        labelLine: {
          normal: {
            show: false
          }
        },
        data: Pie2()
      },
      {
        type: 'pie',
        zlevel: 0,
        silent: true,
        startAngle: -147.5,
        radius: ['98%', '96.5%'],
        center: ['50%', '50%'],
        z: 1,
        label: {
          normal: {
            show: false
          }
        },
        labelLine: {
          normal: {
            show: false
          }
        },
        data: Pie2()
      }
    ]
  }
  return option
}
export function zhkb04() {
  const myColor = ['#d0a00e', '#34da62', '#00e9db', '#00c0e9', '#0096f3']
  // const data = [330, 404, 780, 509, 150]
  const data = [Math.ceil(Math.random() * 100 + 500), Math.ceil(Math.random() * 100 + 600), Math.ceil(Math.random() * 100 + 700), Math.ceil(Math.random() * 400 + 500), Math.ceil(Math.random() * 100 + 200)]
  const option = {
    backgroundColor: 'transparent',
    grid: {
      left: '10%',
      right: '4%',
      bottom: '0%',
      top: '5%',
      containLabel: true
    },
    xAxis: [{
      show: false
    }],
    yAxis: [
      {
        axisTick: 'none',
        axisLine: 'none',
        offset: '27',
        axisLabel: {
          textStyle: {
            color: function(value, index) {
              let temp = ''
              myColor.forEach((it, ind) => {
                if (index === ind) {
                  temp = it
                }
              })
              return temp
            },
            fontSize: 16
          }
        },
        data: ['第四季度订单数', '第三季度订单数', '第二季度订单数', '第一季度订单数', '在制订单数量']
      },
      {
        axisTick: 'none',
        axisLine: 'none',
        axisLabel: {
          textStyle: {
            color: function(value, index) {
              let temp = ''
              myColor.forEach((it, ind) => {
                if (index === ind) {
                  temp = it
                }
              })
              return temp
            },
            fontSize: 16
          }
        },
        data: data
      },
      {
        show: false,
        name: '单位:件',
        nameGap: '50',
        nameTextStyle: {
          color: '#ffffff',
          fontSize: '16'
        },
        axisLine: {
          lineStyle: {
            color: 'rgba(0,0,0,0)'
          }
        },
        data: []
      }
    ],
    series: [
      {
        name: '条',
        type: 'bar',
        yAxisIndex: 0,
        data: data.map(r => r / 10),
        label: {
          normal: {
            show: false,
            position: 'right',
            formatter: function(param) {
              return param.value + '%'
            },
            textStyle: {
              color: '#ffffff',
              fontSize: '16'
            }
          }
        },
        barWidth: 12,
        itemStyle: {
          normal: {
            color: function(params) {
              var num = myColor.length
              return myColor[params.dataIndex % num]
            }
          }
        },
        z: 2
      },
      {
        name: '白框',
        type: 'bar',
        yAxisIndex: 1,
        barGap: '-100%',
        data: [99.5, 99.5, 99.5, 99.5, 99.5],
        barWidth: 20,
        itemStyle: {
          normal: {
            color: '#0e2147',
            barBorderRadius: 5
          }
        },
        z: 1
      },
      {
        name: '外框',
        type: 'bar',
        yAxisIndex: 2,
        barGap: '-100%',
        data: [100, 100, 100, 100, 100],
        barWidth: 24,
        itemStyle: {
          normal: {
            color: function(params) {
              var num = myColor.length
              return myColor[params.dataIndex % num]
            },
            barBorderRadius: 5
          }
        },
        z: 0
      },
      {
        name: '外圆',
        type: 'scatter',
        hoverAnimation: false,
        data: [0, 0, 0, 0, 0],
        yAxisIndex: 2,
        symbolSize: 30,
        itemStyle: {
          normal: {
            color: function(params) {
              var num = myColor.length
              return myColor[params.dataIndex % num]
            },
            opacity: 1
          }
        },
        z: 2
      }
    ]
  }
  return option
}
export function zhkb05() {
// æ•°æ®
//   var XName = ['周一', '周二', '周三', '周四', '周五', '周六', '周日']
  var XName = ['01月', '02月', '03月', '04月', '05月', '06月', '07月', '08月', '09月', '10月', '11月']
  var data1 = [
    // [123, 121, 123, 321, 222, 111, 234, 121, 123, 321, 222, 321]
    [Math.ceil(Math.random() * 100 + 100), Math.ceil(Math.random() * 100 + 200), Math.ceil(Math.random() * 100 + 200), Math.ceil(Math.random() * 100 + 300), Math.ceil(Math.random() * 100 + 100), Math.ceil(Math.random() * 100 + 200), Math.ceil(Math.random() * 100 + 200), Math.ceil(Math.random() * 100 + 300), Math.ceil(Math.random() * 100 + 100), Math.ceil(Math.random() * 100 + 200), Math.ceil(Math.random() * 100 + 300)]
    // [123, 154, 234, 321, 120, 390, 634],
    // [63, 194, 234, 321, 278, 110, 534],
    // [53, 254, 234, 321, 118, 240, 434],
    // [23, 354, 334, 221, 178, 190, 234]
  ]
  var Line = ['云篆山水路线', '昕博朗学校路线', '新华小学路线', '云锦五路路线']
  var img = [
    'image://data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFAAAABRCAYAAABFTSEIAAAACXBIWXMAAAsSAAALEgHS3X78AAAEp0lEQVR42u3cz4sjRRTA8W9Vd3Vn8mMmjj9WQWSRZQ+CsH+B7MnDIgiCd0E8CYJ/gOAIelo8ehUP/gF6WLw5/gMueFP2sIcF0dHd2Z1kknR11fOQZJJJMtlZd03H7HtQpNOTnpn+8Lrm1etmjIig8e/DKoECKqACKqCGAiqgAiqghgIqoAIqoIYCKqACKqCGAiqgAiqghgIqoAJudKTr+osZMNPvBUQBHwHsPF9fB9R0DeHMOQ6T6WOrhEzXBM4swDOL0M6CrArRVoq3t2dGUIb9fTvatg8ZZup1PDBgzPmy98mey6qfzjLz2WaWjEUZKEvGyi9nWyneMOvGIyFQo2Sbg4MUSChpU9IeTTUpJdsEajPZOJeJG5uBZj7rLLduWS5dGm6XNLEELOFUFj54ACJCaychkpDSASK3bwsXL0YgVpWJKwM0iy9Zy8HdGru7jvt3Pbu7w0wES7drTwAbjTHMGCsQcIAnYTC1/wRx0wEnl27JNgZI8HQ6Kc1mQq83RNzaMjPzXqDbjTQaJRFLxIyyMSxAXEkWrhrQzAAmo5HOjCQf7jflILxOkohL+aUPgV4vEGNJo+E5PAy02+UIMEwBxo0CPDP7Dg5SnEtpt1PA0e87XO25FOoh8IYIH2Y5b45RzGAQBiIltZoHxqMcjbksXAVgdc2EQMYzzzdotyeZWKuleULXJtwT4SODfC2QCWR+IF9KnjuX1Xbo99Op7LVE8iXlz0YBTk5SyLEEjo5OLuccEoFUvHfO+reuUPx4zftXAIcx1hdcF+/TvFab4A0Bs0VwqyhpVnkJT89/Q4DDQ0e77YCMwIUsFMeFZD856699URRvX4nxE4A/jbnxXp7v4Zw3ReGNSDHI8wFQjIafuoyn58L/fB6sth/Ybg9fez2TRC6QZcZYvgHsazF+MP7YCyLXcM7gvSXLDGBqYDg+NhwdmSpPoTrAkub0W+f4FSB1fDucIunMHSLpO8WAH0rSy8u+19MBCHB4OHzd2pI+CEUhpigEiN+l6WcdY252jLn5s7Wf472ImPcN8pUl/tEHoV4XWq1Ke4KrLmPsTA3oODpytFoOyJKSyzHyMSIxteWngMW5cSEdDJQUhTdZVgxOz3/+jFJm4+bA2e5JpNU6WZ4Fw99JwnWMKccwpeddP+B7GZTNUPKqybJy0O+Hs1YfMz9swwvpB8fbGDG0GuGkkK7V0hxSmZQpABI8l2z0v3sJf50qpAMJCd2qCulql3LD1lRGQjm7lEsDz0rkxTQOfiPPxUBcuJTbbhss/Y1eyi3NwsmKInmkZsKk5gtPUzNhvp11507CSy/X6XYStpvFudpZw1ZWIOF4Cq6SdtbKbioJyAhRTu3u9yMJXerN+ugvaQQsjcZ8Q3VnZwxlSDhe1lB9GjrSw5b+1avT8+Jw+979nNaOI6U3KpTrWAosxVQmygK4ld8X0ZtK/7eViExD7O1NQPb3T7fsl4/4sBpwYzPwjFbTo95Yl9l9Vd1YN1X/147HebSjary1AHyc5qc+XLQEQx9ve8Kg6xr6hKoCKqACKqCGAiqgAiqghgIqoAIqoIYCKqACKqCGAiqgAiqghgIq4JrHP8fEWV8FMTmOAAAAAElFTkSuQmCC',
    'image://data:image/png;base64,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',
    'image://data:image/png;base64,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',
    'image://data:image/png;base64,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'
  ]
  // var color = ['#00f8ff', '#00f15a', '#0696f9', '#dcf776']
  var color = ['#00f8ff']
  // æ•°æ®å¤„理
  var datas = []
  Line.map((item, index) => {
    datas.push(
      {
        symbolSize: 150,
        symbol: img[index],
        name: item,
        type: 'line',
        yAxisIndex: 1,
        data: data1[index],
        itemStyle: {
          normal: {
            borderWidth: 5,
            color: color[index]
          }
        }
      }
    )
  })
  const option = {
    backgroundColor: 'transparent',
    grid: {
      left: '5%',
      top: '20%',
      bottom: '0%',
      right: '5%',
      containLabel: true
    },
    title: {
      text: '今年每月订单数量',
      x: '50%',
      y: '0%',
      textAlign: 'center',
      textStyle: {
        fontSize: 16,
        fontWeight: 'normal',
        color: '#00FFFF'
      }
    },
    legend: {
      show: false,
      type: 'scroll',
      data: Line,
      itemWidth: 18,
      itemHeight: 12,
      textStyle: {
        color: '#00ffff',
        fontSize: 14
      }
    },
    yAxis: [
      {
        type: 'value',
        position: 'right',
        splitLine: {
          show: false
        },
        axisLine: {
          show: false
        },
        axisTick: {
          show: false
        },
        axisLabel: {
          show: false
        }
      },
      {
        // show: false,
        type: 'value',
        position: 'left',
        // name: '今年每月订单数量',
        nameTextStyle: {
          color: '#00FFFF',
          fontSize: 16
        },
        splitNumber: 3,
        // nameLocation: 'center',
        splitLine: {
          lineStyle: {
            type: 'dashed',
            color: 'rgba(135,140,147,0.8)'
          }
        },
        axisLine: {
          show: false
        },
        axisTick: {
          show: false
        },
        axisLabel: {
          formatter: '{value}',
          color: '#00FFFF',
          fontSize: 14
        }
      }
    ],
    xAxis: [
      {
        type: 'category',
        axisTick: {
          show: false
        },
        axisLine: {
          show: false,
          lineStyle: {
            color: '#6A989E'
          }
        },
        axisLabel: {
          inside: false,
          textStyle: {
            color: colorX, // x轴颜色
            fontWeight: 'normal',
            fontSize: 16,
            lineHeight: 22
          }
        },
        data: XName
      },
      {
        type: 'category',
        axisLine: {
          show: false
        },
        axisTick: {
          show: false
        },
        axisLabel: {
          show: false
        },
        splitArea: {
          show: false
        },
        splitLine: {
          show: false
        },
        // -----
        data: ['1月', '2月', '3月', '4月', '5月', '6月']
      }
    ],
    series: datas
  }
  // å½“点击legend选项时折线上的小图片会消失,为避免这种情况,可以采取以下初始化方法 ä½¿ç”¨svg
  // var myCharts = echarts.init(document.getElementById('AnalysisChartLine'), null, {renderer: 'svg'});
  // myCharts.clear();
  // myCharts.setOption(option)
  return option
}
export function zhkb06(title) {
  const option = {
    backgroundColor: 'transparent',
    title: [
      {
        text: title,
        x: 'center',
        top: '55%',
        textStyle: {
          color: '#FFFFFF',
          fontSize: 14,
          fontWeight: 100
        }
      },
      {
        text: '95%',
        x: 'center',
        top: '38%',
        textStyle: {
          fontSize: 14,
          color: '#FFFFFF',
          fontFamily: 'DINAlternate-Bold, DINAlternate',
          foontWeight: 100
        }
      }
    ],
    grid: {
      left: '0%',
      top: '0%',
      bottom: '0%',
      right: '0%',
      containLabel: true
    },
    angleAxis: {
      max: 100,
      clockwise: false, // é€†æ—¶é’ˆ
      // éšè—åˆ»åº¦çº¿
      show: false,
      boundaryGap: ['40%', '40%'],
      startAngle: 90
    },
    radiusAxis: {
      type: 'category',
      show: true,
      axisLabel: {
        show: false
      },
      axisLine: {
        show: false
      },
      axisTick: {
        show: false
      }
    },
    polar: [
      {
        center: ['50%', '50%'], // ä¸­å¿ƒç‚¹ä½ç½®
        radius: '165%' // å›¾å½¢å¤§å°
      }
    ],
    series: [
      {
        name: '齿轮',
        type: 'gauge',
        splitNumber: 60,
        radius: '132%',
        center: ['50%', '50%'],
        startAngle: 90,
        endAngle: -269.9999,
        axisLine: {
          show: false,
          lineStyle: {
            color: [[0.3, '#26a7d4'], [1, '#23395a']]
          }
        },
        axisTick: {
          show: false
        },
        splitLine: {
          show: true,
          length: 8,
          lineStyle: {
            color: 'auto',
            width: 2.5
          }
        },
        axisLabel: {
          show: false
        },
        detail: {
          show: false
        }
      },
      {
        type: 'bar',
        z: 10,
        data: [75],
        showBackground: false,
        backgroundStyle: {
          color: 'blue',
          borderWidth: 4,
          width: 4
        },
        coordinateSystem: 'polar',
        roundCap: true,
        barWidth: 6, // å¤§çš„占比环
        itemStyle: {
          normal: {
            opacity: 1,
            color: new echarts.graphic.LinearGradient(0, 0, 1, 1, [
              {
                offset: 0,
                color: '#00FFFF'
              },
              {
                offset: 1,
                color: '#09d8f2'
              }
            ])
          }
        }
      },
      {
        type: 'pie',
        name: '内层细圆环',
        radius: ['82%', '83%'],
        startAngle: 110,
        hoverAnimation: false,
        clockWise: true,
        itemStyle: {
          normal: {
            color: new echarts.graphic.LinearGradient(0, 0, 1, 1, [
              {
                offset: 0,
                color: 'rgba(151,179,166,0.74)'
              },
              {
                offset: 1,
                color: 'rgba(151,179,166,0.74)'
              }
            ]),
            shadowBlur: 20,
            shadowColor: '#66666a'
          }
        },
        tooltip: {
          show: false
        },
        label: {
          show: false
        },
        data: [100]
      }
    ]
  }
  return option
}
export function zhkb07(title, value) {
  const dataArr = [
    {
      value: value,
      name: title
    }
  ]
  const color = new echarts.graphic.LinearGradient(0, 0, 1, 0, [
    {
      offset: 0,
      color: '#1f79b6' // 0% å¤„的颜色
    },
    {
      offset: 1,
      color: '#0dd2db' // 100% å¤„的颜色
    }
  ])
  const colorSet = [
    [value / 100, color],
    [1, '#15337C']
  ]
  const rich = {
    white: {
      fontSize: 14,
      color: '#fff',
      fontWeight: '500'
    },
    bule: {
      fontSize: 14,
      fontFamily: 'DINBold',
      color: '#fff',
      fontWeight: 100
    },
    radius: {
      width: 350,
      height: 80,
      // lineHeight:80,
      borderWidth: 1,
      borderColor: '#0092F2',
      fontSize: 14,
      color: '#fff',
      backgroundColor: '#1B215B',
      borderRadius: 20,
      textAlign: 'center'
    },
    size: {
      height: 400,
      padding: [100, 0, 0, 0]
    }
  }
  const option = {
    backgroundColor: 'transparent',
    tooltip: {
      formatter: '{a} <br/>{b} : {c}%'
    },
    series: [
      {
        type: 'gauge',
        radius: '90%',
        startAngle: '225',
        endAngle: '-45',
        pointer: {
          show: false
        },
        detail: {
          formatter: function(value) {
            var num = Math.round(value)
            return '{bule|' + num + '}{white|%}'
          },
          rich: rich,
          offsetCenter: ['0%', '0%']
        },
        data: dataArr,
        title: {
          show: true,
          color: '#fff',
          offsetCenter: ['0', '75%'],
          fontSize: 14
        },
        axisLine: {
          show: true,
          lineStyle: {
            color: colorSet,
            width: 12,
            shadowOffsetX: 0,
            shadowOffsetY: 0,
            opacity: 1
          }
        },
        axisTick: {
          show: false
        },
        splitLine: {
          show: false,
          length: 10,
          lineStyle: {
            color: '#00377a',
            width: 2,
            type: 'solid'
          }
        },
        axisLabel: {
          show: false
        }
      }
    ]
  }
  return option
}
export function zhkb08() {
  const data = [
    {
      name: '钢材改制车间',
      value: Math.floor(Math.random() * 10 + 90)
    },
    {
      name: '冷墩车间',
      value: Math.floor(Math.random() * 10 + 90)
    },
    {
      name: '热墩车间',
      value: Math.floor(Math.random() * 10 + 90)
    },
    {
      name: '热处理车间',
      value: Math.floor(Math.random() * 10 + 90)
    },
    {
      name: '达克罗车间',
      value: Math.floor(Math.random() * 10 + 90)
    },
    {
      name: '镀锌车间',
      value: Math.floor(Math.random() * 10 + 90)
    }
  ]
  const myColor = ['#d0a00e', '#34da62', '#00e9db', '#00c0e9', '#0096f3', '#ff00ff']
  const getArrByKey = (data, k) => {
    const key = k || 'value'
    const res = []
    if (data) {
      data.forEach(function(t) {
        res.push(t[key])
      })
    }
    return res
  }
  const getSymbolData = (data) => {
    const arr = []
    for (var i = 0; i < data.length; i++) {
      arr.push({
        value: data[i].value,
        symbolPosition: 'end'
      })
    }
    return arr
  }
  // console.log(getSymbolData(data));
  const option = {
    backgroundColor: 'transparent',
    grid: {
      left: '0%',
      right: '0%',
      bottom: '0%',
      top: '15%',
      containLabel: true
    },
    title: {
      text: '九月能耗用量',
      x: '44%',
      y: '0%',
      textStyle: {
        color: '#09d8f2',
        fontSize: 16
      }
      // subtextStyle: {
      //   color: '#90979c',
      //   fontSize: '16'
      // }
    },
    xAxis: {
      show: false
    },
    yAxis: [
      {
        triggerEvent: true,
        show: true,
        inverse: true,
        data: getArrByKey(data, 'name'),
        axisLine: {
          show: false
        },
        splitLine: {
          show: false
        },
        axisTick: {
          show: false
        },
        axisLabel: {
          show: true,
          interval: 0,
          // color: colorY,
          align: 'left',
          margin: 30,
          textStyle: {
            color: function(value, index) {
              let temp = ''
              myColor.forEach((it, ind) => {
                if (index === ind) {
                  temp = it
                }
              })
              return temp
            },
            fontSize: 16,
            align: 'right'
            // width: 36
          }
          // formatter: function(value, index) {
          //   return '{title|' + value + '}'
          // },
          // rich: {
          //   title: {
          //     width: 36,
          //     align: 'right',
          //     fontSize: 16
          //   }
          // }
        }
      },
      {
        triggerEvent: true,
        show: true,
        inverse: true,
        data: getArrByKey(data, 'name'),
        axisLine: {
          show: false
        },
        splitLine: {
          show: false
        },
        axisTick: {
          show: false
        },
        axisLabel: {
          interval: 0,
          shadowOffsetX: '-20px',
          // color: colorX,
          color: function(value, index) {
            let temp = ''
            myColor.forEach((it, ind) => {
              if (index === ind) {
                temp = it
              }
            })
            return temp
          },
          align: 'left',
          verticalAlign: 'center',
          lineHeight: 40,
          fontSize: 16,
          margin: 20,
          formatter: function(value, index) {
            // return data[index].value + '%'
            return data[index].value + '吨'
          }
        }
      }],
    series: [
      {
        name: 'XXX',
        type: 'pictorialBar',
        symbol: 'image://data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADoAAAA6CAMAAADWZboaAAAAZlBMVEUAAABe3uVe3+Vf3uVf3+Zf3uVg3+Zg3+Zf3+Vi4OZh4OZg3+Z86/Bh3+Zi4Odj4Odi4OZ86/B76/B86/Bj4ed56+9x5+xn4umB7/N87PB36e+A7/N+7fF/7vJ/7vJ+7fGA7/OB7/PReX+lAAAAIXRSTlMABQkVDREmIhk3MR10LEFFPHh7cUprXE35h2XnqMLAp+mHAG9cAAAB5ElEQVRIx83WjU7CMBQFYIoiKMqU/XUboHv/l/Tce7t2XamDNSacETEmX86tlK2rx4py150o+MstMBLwWRfHKo6JCVxLnvmFGBjFQ58oF1//sUZhGy/ClSTWObgnL4O+bkeN4nY2okfNMbkRt9/vtxz8InoTsWplJSCzFxPmO8+GpSIByX3YQAuGDWtRKhKjCnxDXhF6Z4yxnZ20Wgko7BMRDmxtSGVaI4kdTIgb+zTYoJQlIMlDlmUFgrcDWWC201qSayqlTkiCddWWeV62VU0YlnpRi9VOKaSUsiyq/N0krwq2Ugt7lVpZl5BfHNiytjagMi+XYp0kCR45hMlivVQrE/uU5pXSrCB5bM6d1t2lOZItMqmliT3q5uVxqxzyW/ccfYLNKx7ZTeykMvNyac2yt2Fbc61MHLSC0rwoxbiNdlQ3GBm1NLHQsHUrtEXppR/ljNpW6DbSCoqlFiVoN6YdaFlgsSFVPs1BdT8OaB5QyQzVcaqWDows/zepxR8ObLglTrdtCRVuRNj4Rrxh+//0ke2f8KVL+Kon3GCSbmsJN9OUW3j6g0Ns+LgCij2u0h+Sghc8mlMPBMgdx5DFh59VmOVHrvmDnoNxCz3J7MFWsMuaLyR089xz/xhlfijvwutR8gv3zk6BLUUeCgAAAABJRU5ErkJggg==',
        symbolSize: [50, 50],
        symbolOffset: [20, 0],
        z: 12,
        itemStyle: {
          normal: {
            color: '#fff'
          }
        },
        data: getSymbolData(data)
      },
      {
        name: '条',
        type: 'bar',
        showBackground: true,
        yAxisIndex: 0,
        data: data,
        barWidth: 10,
        // align: left,
        itemStyle: {
          normal: {
            color: function(params) {
              return myColor[params.dataIndex]
            },
            barBorderRadius: 10
          }
        }
        // label: {
        //     normal: {
        //         color: '#fff',
        //         show: true,
        //         position: ["-80px", 0],
        //         textStyle: {
        //             fontSize: 16
        //         },
        //         formatter: function(a, b) {
        //             return a.name
        //         }
        //     }
        // }
      }]
  }
  return option
}
// æš‚时弃用
export function zhkb092222() {
  const data = [220, 182, 191, 234, 290, 330, 310, 182, 191, 234, 290, 330]
  const sideData = data.map(item => item + 4.5)
  const option = {
    backgroundColor: 'transparent',
    // tooltip: {
    //   trigger: 'axis',
    //   formatter: '{b} : {c}',
    //   axisPointer: { // åæ ‡è½´æŒ‡ç¤ºå™¨ï¼Œåæ ‡è½´è§¦å‘有效
    //     type: 'shadow' // é»˜è®¤ä¸ºç›´çº¿ï¼Œå¯é€‰ä¸ºï¼š'line' | 'shadow'
    //   }
    // },
    grid: {
      left: '2%',
      right: '2%',
      bottom: '2%',
      top: '15%',
      containLabel: true
    },
    title: {
      text: '近一年每月能耗使用',
      x: '40%',
      y: '0%',
      textStyle: {
        color: '#09d8f2',
        fontSize: 16
      }
      // subtextStyle: {
      //   color: '#90979c',
      //   fontSize: '16'
      // }
    },
    xAxis: {
      data: ['01月', '02月', '03月', '04月', '05月', '06月', '07月', '08月', '09月', '10月', '11月', '12月'],
      // åæ ‡è½´
      axisLine: {
        lineStyle: {
          color: '#3eb2e8'
        }
      },
      // åæ ‡å€¼æ ‡æ³¨
      axisLabel: {
        show: true,
        textStyle: {
          color: colorX,
          fontSize: 14
        }
      }
    },
    yAxis: {
      // åæ ‡è½´
      axisLine: {
        show: false
      },
      // åæ ‡å€¼æ ‡æ³¨
      axisLabel: {
        show: true,
        textStyle: {
          color: '#09d8f2',
          fontSize: 14
        }
      },
      // åˆ†æ ¼çº¿
      splitLine: {
        lineStyle: {
          type: 'dashed',
          color: 'rgba(135,140,147,0.8)'
        }
      },
      splitNumber: 3
    },
    series: [
      {
        name: 'a',
        tooltip: {
          show: false
        },
        type: 'bar',
        barWidth: 18,
        itemStyle: {
          normal: {
            color: new echarts.graphic.LinearGradient(0, 1, 0, 0, [{
              offset: 0,
              color: '#0B4EC3' // 0% å¤„的颜色
            }, {
              offset: 0.6,
              color: '#138CEB' // 60% å¤„的颜色
            }, {
              offset: 1,
              color: '#17AAFE' // 100% å¤„的颜色
            }], false)
          }
        },
        data: data,
        barGap: 0
      },
      {
        type: 'bar',
        barWidth: 8,
        itemStyle: {
          normal: {
            color: new echarts.graphic.LinearGradient(0, 1, 0, 0, [{
              offset: 0,
              color: '#09337C' // 0% å¤„的颜色
            }, {
              offset: 0.6,
              color: '#0761C0' // 60% å¤„的颜色
            }, {
              offset: 1,
              color: '#0575DE' // 100% å¤„的颜色
            }], false)
          }
        },
        barGap: 0,
        data: sideData
      },
      {
        name: 'b',
        tooltip: {
          show: false
        },
        type: 'pictorialBar',
        itemStyle: {
          borderWidth: 1,
          borderColor: '#0571D5',
          color: '#1779E0'
        },
        symbol: 'path://M 0,0 l 120,0 l -30,60 l -120,0 z',
        symbolSize: ['30', '6'],
        symbolOffset: ['0', '-4'],
        // symbolRotate: -5,
        symbolPosition: 'end',
        data: data,
        z: 3
      }
    ]
  }
  return option
}
export function zhkb09() {
  // const dataY = [60, 70, 80, 90, 60, 70, 80, 90, 80, 90, 60, 70, 80, 90]
  const dataY = [(80 + Math.random() * 10), (90 - Math.random() * 30), (60 + Math.random() * 30), (70 + Math.random() * 20), (80 + Math.random() * 10), (90 - Math.random() * 30), (80 - Math.random() * 30), (90 - Math.random() * 30), (60 + Math.random() * 30), (70 + Math.random() * 20), (80 - Math.random() * 10), (90 - Math.random() * 30)]
  const option = {
    backgroundColor: 'transparent',
    grid: {
      left: '2%',
      right: '2%',
      bottom: '2%',
      top: '15%',
      containLabel: true
    },
    title: {
      text: '近一年每月能耗使用',
      x: '40%',
      y: '0%',
      textStyle: {
        color: '#09d8f2',
        fontSize: 16
      }
    },
    color: ['#3cefff'],
    tooltip: {},
    xAxis: [
      {
        type: 'category',
        data: ['01月', '02月', '03月', '04月', '05月', '06月', '07月', '08月', '09月', '10月', '11月'],
        axisTick: {
          alignWithLabel: true
        },
        nameTextStyle: {
          color: '#82b0ec'
        },
        axisLine: {
          lineStyle: {
            color: '#82b0ec'
          }
        },
        axisLabel: {
          margin: 20,
          textStyle: {
            // color: '#82b0ec'
            color: colorX,
            fontSize: 14
          }
        }
      }
    ],
    yAxis: [
      {
        type: 'value',
        axisLabel: {
          textStyle: {
            color: '#09d8f2',
            fontSize: 14
          }
          // formatter: '{value}%'
        },
        splitLine: {
          lineStyle: {
            type: 'dashed',
            color: 'rgba(135,140,147,0.8)'
          }
        },
        axisLine: {
          show: false
        }
      }
    ],
    series: [
      {
        name: '',
        type: 'pictorialBar',
        symbolSize: [20, 10],
        symbolOffset: [0, -5],
        symbolPosition: 'end',
        z: 12,
        label: {
          normal: {
            show: false,
            position: 'top',
            formatter: '{c}%'
          }
        },
        data: dataY
      },
      {
        name: '',
        type: 'pictorialBar',
        symbolSize: [20, 10],
        symbolOffset: [0, 5],
        z: 12,
        data: dataY
      },
      {
        type: 'bar',
        itemStyle: {
          normal: {
            opacity: 0.7
          }
        },
        barWidth: '20',
        data: dataY
        // markLine: {
        //   silent: true,
        //   label: {
        //     position: 'middle',
        //     formatter: '{b}',
        //     color: 'red'
        //   },
        //   data: [
        //     {
        //       name: '目标值',
        //       yAxis: 80,
        //       lineStyle: {
        //         color: 'red'
        //       },
        //       itemStyle: {
        //         color: 'red'
        //       },
        //       label: {
        //         position: 'end',
        //         formatter: '{b}\n {c}%'
        //       }
        //     }
        //   ]
        // }
      },
      {
        type: 'effectScatter',
        silent: true,
        tooltip: {
          show: false
        },
        zlevel: 3,
        symbolSize: 10,
        showEffectOn: 'render',
        rippleEffect: {
          brushType: 'stroke',
          color: '#3cefff',
          scale: 5
        },
        itemStyle: {
          color: '#3cefff'
        },
        hoverAnimation: true,
        data: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
      }
    ]
  }
  return option
}
export function zhkb10() {
  const _legendColor = '#8FD8FF'
  const _fontSize = 16
  const _fontColor = '#8FD8FF'
  // const data1 = [70, 90, 100, 70, 90, 100]
  // const data2 = [80, 60, 80, 50, 90, 60]
  const data1 = [70 + Math.random() * 20, 90 - Math.random() * 20, 100 - Math.random() * 20, 70 + Math.random() * 20, 90 - Math.random() * 20, 80 - Math.random() * 20]
  const data2 = [80 + Math.random() * 20, 60 + Math.random() * 20, 80 - Math.random() * 20, 50 + Math.random() * 20, 90 - Math.random() * 20, 60 + Math.random() * 20]
  const option = {
    backgroundColor: 'transparent',
    legend: {
      x: 'right',
      y: '2%',
      itemWidth: 10,
      itemHeight: 10,
      textStyle: {
        fontSize: 16,
        color: 'rgba(255,255,255,.7)'
      }
    },
    grid: {
      left: '2%',
      top: '7%',
      right: '2%',
      bottom: '0%',
      containLabel: true
    },
    yAxis: {
      // max: Math.ceil(Math.max(...data1) * 1.2),
      max: 100,
      type: 'value',
      position: 'left',
      axisLine: {
        show: true,
        lineStyle: {
          color: '#4E84AC'
        }
      },
      axisTick: {
        show: false
      },
      axisLabel: {
        formatter: '{value}',
        color: '#00FFFF',
        fontSize: 14
      },
      splitLine: {
        show: false
      }
    },
    xAxis: {
      type: 'category',
      nameTextStyle: {
        fontSize: 16,
        color: '#7dd6ea'
      },
      axisLabel: {
        show: true,
        interval: 0,
        // margin: 20,
        textStyle: {
          color: colorX,
          fontSize: 16
        }
      },
      splitLine: {
        show: false
      },
      axisTick: {
        show: false
      },
      axisLine: {
        show: true,
        lineStyle: {
          color: '#4E84AC'
          // width: 3
        }
      },
      data: ['钢材改制', '冷墩', '热墩', '热处理', '达克罗', '镀锌']
    },
    series: [
      {
        name: '人员分析1',
        type: 'bar',
        barWidth: 15,
        barGap: '30%',
        itemStyle: {
          normal: {
            color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
              {
                offset: 0,
                color: 'rgba(0,234,255, 1)'
              },
              {
                offset: 1,
                color: 'rgba(0,234,255, .1)'
              }
            ])
          }
        },
        // label: {
        //   show: true,
        //   position: 'top',
        //   textStyle: {
        //     fontSize: 36,
        //     color: '#00EAFF'
        //   },
        //   formatter: function(params) {
        //     return params.value + '%'
        //   }
        // },
        data: data1,
        z: 10,
        zlevel: 0
      },
      {
        // åˆ†éš”
        type: 'pictorialBar',
        itemStyle: {
          normal: {
            color: '#0F375F'
          }
        },
        symbolRepeat: 'fixed',
        symbolMargin: 15,
        symbol: 'rect',
        symbolClip: true,
        symbolSize: [15, 2],
        symbolPosition: 'start',
        symbolOffset: [-10, 0],
        data: data1,
        width: 2,
        z: 0,
        zlevel: 1
      },
      {
        name: '人员分析2',
        type: 'bar',
        barWidth: 15,
        itemStyle: {
          normal: {
            color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
              {
                offset: 0,
                color: 'rgba(252,160,0, 1)'
              },
              {
                offset: 1,
                color: 'rgba(252,160,0, .1)'
              }
            ])
          }
        },
        // label: {
        //   show: true,
        //   position: 'top',
        //   textStyle: {
        //     fontSize: 16,
        //     color: '#FFA200'
        //   },
        //   formatter: function(params) {
        //     return params.value + '%'
        //   }
        // },
        data: data2,
        z: 10,
        zlevel: 0
      },
      {
        // åˆ†éš”
        type: 'pictorialBar',
        itemStyle: {
          normal: {
            color: '#0F375F'
          }
        },
        symbolRepeat: 'fixed',
        symbolMargin: 15,
        symbol: 'rect',
        symbolClip: true,
        symbolSize: [15, 2],
        symbolPosition: 'start',
        symbolOffset: [10, 0],
        data: data2,
        width: 2,
        z: 0,
        zlevel: 1
      }
    ]
  }
  return option
}
export function zhkb11() {
  const option = {
    backgroundColor: 'transparent',
    // title: {
    //   text: '时段-进出港流量',
    //   left: '5%',
    //   top: '5%',
    //   textStyle: {
    //     color: '#fff',
    //     fontSize: '18px'
    //   }
    // },
    tooltip: {
      trigger: 'axis',
      axisPointer: {
        type: 'shadow'
      }
    },
    legend: [
      {
        icon: 'react',
        right: '0%',
        top: '0%',
        textStyle: {
          color: '#fff',
          fontSize: 14
        },
        itemGap: 30,
        itemWidth: 30,
        itemHeight: 4,
        data: ['设备利用率', '设备开机率']
      }
    ],
    grid: {
      top: '10%',
      right: '5%',
      left: '1%',
      bottom: '0%',
      containLabel: true
    },
    yAxis: [
      {
        type: 'category',
        data: ['冷镦车间', '热墩车间', '达克罗车间', '磷化车间', '注塑车间'],
        axisLine: {
          lineStyle: {
            color: '#4E84AC'
            // width: 2
          }
        },
        axisTick: {
          show: false
        },
        axisLabel: {
          // margin: 10,
          color: '#09d8f2',
          textStyle: {
            fontSize: 16
          }
        }
      }
    ],
    xAxis: [
      {
        axisLabel: {
          formatter: '{value}',
          color: '#6895CA',
          textStyle: {
            fontSize: 16,
            color: colorX
          }
        },
        axisLine: {
          show: true,
          lineStyle: {
            width: 2,
            color: '#4E84AC'
          }
        },
        axisTick: {
          show: false
        },
        splitLine: {
          lineStyle: {
            type: 'dashed',
            // ä½¿ç”¨æ·±æµ…的间隔色
            color: '#184D9A'
          }
        }
      }
    ],
    series: [
      {
        name: '设备利用率',
        type: 'bar',
        barGap: '70%',
        data: [Math.ceil(30 + Math.random() * 20), Math.ceil(75 - Math.random() * 20), Math.ceil(77 - Math.random() * 20), Math.ceil(39 + Math.random() * 20), Math.ceil(85 - Math.random() * 20)],
        barWidth: 12,
        itemStyle: {
          normal: {
            color: {
              type: 'linear',
              x: 0,
              y: 0,
              x2: 1,
              y2: 0,
              colorStops: [
                {
                  offset: 0,
                  color: '#00FFFF' //  0%  å¤„的颜色
                },
                {
                  offset: 1,
                  color: '#00FF00' //  100%  å¤„的颜色
                }
              ],
              global: false //  ç¼ºçœä¸º  false
            },
            barBorderRadius: [30, 30, 30, 30],
            shadowColor: 'rgba(0,160,221,1)',
            shadowBlur: 4
          }
        },
        label: {
          normal: {
            show: true,
            // lineHeight: 20,
            // width: 80,
            // height: 20,
            verticalAlign: 'center',
            borderRadius: 200,
            position: 'right',
            color: '#00FF00',
            fontSize: 16
          }
        }
      },
      {
        name: '设备开机率',
        type: 'bar',
        data: [Math.ceil(90 - Math.random() * 20), 45 + Math.ceil(Math.random() * 20), Math.ceil(27 + Math.random() * 20), Math.ceil(20 + Math.random() * 60), Math.ceil(85 - Math.random() * 20)],
        barWidth: 12,
        itemStyle: {
          normal: {
            color: {
              type: 'linear',
              x: 0,
              y: 0,
              x2: 1,
              y2: 0,
              colorStops: [
                {
                  offset: 0,
                  color: '#00FFFF' //  0%  å¤„的颜色
                },
                {
                  offset: 1,
                  color: '#FFFF00' //  100%  å¤„的颜色
                }
              ],
              global: false //  ç¼ºçœä¸º  false
            },
            barBorderRadius: [30, 30, 30, 30],
            shadowColor: 'rgba(0,160,221,1)',
            shadowBlur: 4
          }
        },
        label: {
          normal: {
            show: true,
            // lineHeight: 20,
            // width: 80,
            // height: 20,
            borderRadius: 200,
            verticalAlign: 'center',
            // position: ['-0', '-20'],
            position: 'right',
            color: '#FFFF00',
            fontSize: 16
          }
        }
      }
    ]
  }
  return option
}
export function zhkb12() {
}
src/views/kb/bzcj.vue
ÎļþÒÑɾ³ý
src/views/kb/ckgl.vue
@@ -164,7 +164,7 @@
                  <el-table-column
                    prop="voucherdate"
                    label="单据日期"
                    width="130"
                    width="150"
                  >
                    <template slot-scope="{row}">
                      <div v-if="row.voucherdate" class="ellipsis">{{ row.voucherdate.substring(0, 10) }}</div>
@@ -174,7 +174,7 @@
                  <el-table-column
                    prop="wo"
                    label="单据编号"
                    width="195"
                    width="255"
                  >
                    <template slot-scope="{row}">
                      <div class="ellipsis">{{ row.wo }}</div>
@@ -183,7 +183,7 @@
                  <el-table-column
                    prop="customename"
                    label="客户"
                    width="125"
                    width="168"
                  >
                    <template slot-scope="{row}">
                      <div v-if="row.customename" class="ellipsis">{{ row.customename }}</div>
@@ -200,16 +200,16 @@
                  <!--                      <div v-else>/</div>-->
                  <!--                    </template>-->
                  <!--                  </el-table-column>-->
                  <el-table-column
                    prop="SourceVoucherCode"
                    label="来源单号"
                    width="185"
                  >
                    <template slot-scope="{row}">
                      <div v-if="row.SourceVoucherCode" class="ellipsis">{{ row.SourceVoucherCode }}</div>
                      <div v-else>/</div>
                    </template>
                  </el-table-column>
                  <!--                  <el-table-column-->
                  <!--                    prop="SourceVoucherCode"-->
                  <!--                    label="来源单号"-->
                  <!--                    width="185"-->
                  <!--                  >-->
                  <!--                    <template slot-scope="{row}">-->
                  <!--                      <div v-if="row.SourceVoucherCode" class="ellipsis">{{ row.SourceVoucherCode }}</div>-->
                  <!--                      <div v-else>/</div>-->
                  <!--                    </template>-->
                  <!--                  </el-table-column>-->
                  <!--                  <el-table-column-->
                  <!--                    prop="materiel_code"-->
                  <!--                    label="产品编号"-->
@@ -218,7 +218,7 @@
                  <el-table-column
                    prop="materiel_name"
                    label="产品名称"
                    width="170"
                    width="240"
                  >
                    <template slot-scope="{row}">
                      <div v-if="row.materiel_name" class="ellipsis">{{ row.materiel_name }}</div>
@@ -237,7 +237,7 @@
                  <el-table-column
                    prop="quantity"
                    label="数量"
                    width="87"
                    width="150"
                  >
                    <template slot-scope="{row}">
                      <div class="ellipsis">{{ row.quantity }}</div>
@@ -246,37 +246,37 @@
                  <el-table-column
                    prop="saleOutQuantity"
                    label="已发货数量"
                    width="100"
                    width="150"
                  >
                    <template slot-scope="{row}">
                      <div v-if="row.saleOutQuantity" class="ellipsis">{{ row.saleOutQuantity }}</div>
                      <div v-else>0</div>
                    </template>
                  </el-table-column>
                  <el-table-column
                    prop="priuserdefnvc1"
                    label="检验方式"
                    width="110"
                  >
                    <template slot-scope="{row}">
                      <div v-if="row.priuserdefnvc1">{{ row.priuserdefnvc1 }}</div>
                      <div v-else>/</div>
                    </template>
                  </el-table-column>
                  <el-table-column
                    prop="priuserdefnvc2"
                    label="检验人员"
                    width="110"
                  >
                    <template slot-scope="{row}">
                      <div v-if="row.priuserdefnvc2">{{ row.priuserdefnvc2 }}</div>
                      <div v-else>/</div>
                    </template>
                  </el-table-column>
                  <!--                  <el-table-column-->
                  <!--                    prop="priuserdefnvc1"-->
                  <!--                    label="检验方式"-->
                  <!--                    width="110"-->
                  <!--                  >-->
                  <!--                    <template slot-scope="{row}">-->
                  <!--                      <div v-if="row.priuserdefnvc1">{{ row.priuserdefnvc1 }}</div>-->
                  <!--                      <div v-else>/</div>-->
                  <!--                    </template>-->
                  <!--                  </el-table-column>-->
                  <!--                  <el-table-column-->
                  <!--                    prop="priuserdefnvc2"-->
                  <!--                    label="检验人员"-->
                  <!--                    width="110"-->
                  <!--                  >-->
                  <!--                    <template slot-scope="{row}">-->
                  <!--                      <div v-if="row.priuserdefnvc2">{{ row.priuserdefnvc2 }}</div>-->
                  <!--                      <div v-else>/</div>-->
                  <!--                    </template>-->
                  <!--                  </el-table-column>-->
                  <el-table-column
                    prop="deliveryDate"
                    label="预计交货日期"
                    width="141"
                    width="240"
                  >
                    <template slot-scope="{row}">
                      <div v-if="row.deliveryDate">{{ row.deliveryDate.substring(0,10) }}</div>
src/views/kb/zhkbc.vue
ÎļþÃû´Ó src/views/kb/dccj.vue ÐÞ¸Ä
@@ -3,7 +3,7 @@
    <div class="kb_dashboard">
      <div class="kb_header">
        <div class="flex_c_c kb_header_text">
          ç”µæ± è½¦é—´çœ‹æ¿
          ä¸‹æ–™è½¦é—´çœ‹æ¿
        </div>
        <div class="kb_headerPic" />
        <div class="kb_headTime">
@@ -335,7 +335,7 @@
      tableDataRank: [],
      lineCodeArr: [],
      ShopArr: ['CJ002'], // è½¦é—´ç¼–码数组
      ShopArr: [window.location.hash.split('?')[1].split('=')[1]], // èŽ·å–åœ°å€æ code参数
      number1: '',
      number2: '',
src/views/kb/zngc.vue
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,1475 @@
<template>
  <div>
    <div class="kb_body">
      <div class="kb_background" />
      <div class="kb_background2" />
      <div class="kb_head">智能工厂综合管理</div>
      <div class="kb_headerPic2 kb_flex_space_between">
        <div id="zhkbTop01" style="width: 800px;height:36px;" />
        <div id="zhkbTop02" style="width: 800px;height:36px;transform: rotate(180deg);margin-top: -12px" />
      </div>
      <div class="kb_content">
        <!--        å·¦è¾¹-->
        <div class="kb_content_left kb_flex_column">
          <div class="kb_content_left_top">
            <div class="middle_title">
              <div class="icon">
                <svg-icon icon-class="scjh02" class="svg_class" />
              </div>
              <div class="title">生产计划</div>
            </div>
            <div class="scjh kb_block horn kb_flex_column">
              <div class="kb_flex_space_between" style="height: 20px;">
                <div>在制计划数量(自产) 75000吨</div>
                <div>计划完成进度(外购) 30000吨</div>
              </div>
              <div class="kb_flex_space_between" style="padding: 0 15px;height: 20px;">
                <div :style="{color:colorX}">生产类型</div>
                <div :style="{color:colorX}">生产数量</div>
                <div :style="{color:colorX}">完成进度</div>
              </div>
              <div>
                <div class="kb_flex_space_between">
                  <div style="height: 60px;display: flex;flex-direction: column;justify-content: center">
                    <div style="margin: 5px 0;color: #3dffef">计划完成进度(自产)</div>
                    <div style="margin: 5px 0;color: #3dffef">计划完成进度(外购)</div>
                  </div>
                  <div id="zhkb01" style="width:380px;height: 60px;" />
                </div>
              </div>
              <div style="height: 180px;" class="kb_flex_column">
                <!--                <div class="small_title">-->
                <!--                  <div class="small_bar" />-->
                <!--                  <div class="small_content">预期计划原因分析</div>-->
                <!--                </div>-->
                <div style="height: 180px;" class="kb_flex_space_between">
                  <div id="zhkb02" style="height: 180px;width: 520px;" />
                </div>
              </div>
            </div>
          </div>
          <div class="kb_content_left_bottom">
            <div class="middle_title">
              <div class="icon">
                <svg-icon icon-class="ckgl02" class="svg_class" />
              </div>
              <div class="title">仓库管理</div>
            </div>
            <div class="ckgl kb_block horn kb_flex_column">
              <div style="height: 60px" class="kb_flex_space_between">
                <div style="width: 188px">
                  <div class="middle_title">
                    <div class="icon">
                      <svg-icon icon-class="zncc" class="svg_class" />
                    </div>
                    <div style="margin-left: 30px;">
                      <div>8000吨</div>
                      <div :style="{color:colorX}">昨日入库数量</div>
                    </div>
                  </div>
                </div>
                <div style="width: 324px">
                  <div class="middle_title">
                    <div class="icon">
                      <svg-icon icon-class="zncc" class="svg_class" />
                    </div>
                    <div style="margin-left: 30px;">
                      <div>10000吨</div>
                      <div :style="{color:colorX}">昨日出库数量</div>
                    </div>
                  </div>
                </div>
              </div>
              <div style="height: 190px;position: relative" class="kb_flex_space_between">
                <div id="zhkb12" style="width: 190px;padding: 0;" class="kb_block" />
                <div style="position: absolute;bottom: 40px;left: 55px;width: 100px;height: 30px;color: #c7e7ff">入库及时率
                </div>
                <div
                  style="width: 320px;margin-left: 10px;align-items: center;padding: 10px 20px"
                  class="kb_block kb_flex_space_between"
                >
                  <div class="kb_flex_column" style="position: relative;margin-top: -5px;">
                    <div style="position: absolute;left: 42px;top: 20px">0.01%</div>
                    <div class="box03" />
                    <div style="text-align: center;margin-top: 5px;">退货率</div>
                  </div>
                  <div class="kb_flex_column" style="position: relative;margin-top: -5px;">
                    <div style="position: absolute;left: 42px;top: 20px">0.02%</div>
                    <div class="box03" />
                    <div style="text-align: center;margin-top: 5px;">损坏率</div>
                  </div>
                </div>
              </div>
              <div style="height: 280px;position: relative" class="kb_flex_column">
                <div style="height: 20px;font-size: 18px;position: absolute;left: 220px;top: 24px">成品库存结构</div>
                <div id="zhkb13" style="height: 260px;width: 100%;" />
              </div>
            </div>
          </div>
        </div>
        <!--        ä¸­é—´-->
        <div class="kb_content_center kb_flex_column">
          <div class="kb_content_center_top">
            <div class="middle_title" style="align-items: center">
              <div class="icon">
                <svg-icon icon-class="xsdd02" class="svg_class" style="font-size:50px" />
              </div>
              <div class="title" style="margin-top:10px">销售订单</div>
            </div>
            <div class="xsdd kb_block horn">
              <div style="" class="kb_flex_space_between">
                <div class="kb_flex_column">
                  <div id="zhkb03" style="width:120px;height: 120px;" />
                  <div id="zhkb03_2" style="width:120px;height: 120px;" />
                </div>
                <div>
                  <div id="zhkb04" style="width: 600px; height: 240px" />
                </div>
              </div>
              <div id="zhkb05" style="height: 170px;" />
            </div>
          </div>
          <div class="kb_content_center_bottom">
            <div class="middle_title">
              <div class="icon">
                <svg-icon icon-class="cjhn02" class="svg_class" />
              </div>
              <div class="title">车间耗能</div>
            </div>
            <div class="cjhn kb_block horn kb_flex_column">
              <div id="zhkb08" style="height: 200px;width:100%" />
              <div id="zhkb09" style="height: 200px;width:100%" />
            </div>
          </div>
        </div>
        <!--        å³è¾¹-->
        <div class="kb_content_right kb_flex_column">
          <div class="kb_content_right_top">
            <div class="middle_title">
              <div class="icon">
                <svg-icon icon-class="zlfx02" class="svg_class" />
              </div>
              <div class="title">质量分析</div>
            </div>
            <div class="zlfx kb_block horn kb_flex_space_between">
              <div class="kb_flex_column">
                <div id="zhkb06" style="height: 50%;width: 140px;" />
                <div id="zhkb06_2" style="height: 50%;width: 140px;" />
              </div>
              <div class="kb_flex_column">
                <div style="height: 50%;width: 390px;" class="kb_flex_space_between">
                  <div id="zhkb07_1" style="height: 109px; width: 130px;" />
                  <div id="zhkb07_2" style="height: 109px; width: 130px;" />
                  <div id="zhkb07_3" style="height: 109px; width: 130px;" />
                </div>
                <div style="height: 50%;width: 390px;" class="kb_flex_space_between">
                  <div id="zhkb07_4" style="height: 109px; width: 130px;" />
                  <div id="zhkb07_5" style="height: 109px; width: 130px;" />
                  <div id="zhkb07_6" style="height: 109px; width: 130px;" />
                </div>
              </div>
            </div>
          </div>
          <div class="kb_content_right_center">
            <div class="middle_title">
              <div class="icon">
                <svg-icon icon-class="ryfx02" class="svg_class" />
              </div>
              <div class="title">人员分析</div>
            </div>
            <div id="zhkb10" class="ryfx kb_block horn" />
          </div>
          <div class="kb_content_right_bottom">
            <div class="middle_title">
              <div class="icon">
                <svg-icon icon-class="sbfx02" class="svg_class" />
              </div>
              <div class="title">设备分析</div>
            </div>
            <div id="zhkb11" class="sbfx kb_block horn" />
          </div>
        </div>
      </div>
    </div>
  </div>
</template>
<script>
import * as echarts from 'echarts'
import {
  loadEcharts,
  zhkb01,
  zhkb03,
  zhkb04,
  zhkb05,
  zhkb06,
  zhkb07,
  zhkb08,
  zhkb09,
  zhkb10, zhkb11
} from '@/utils/myEcharts_zngc'
import '@/utils/echarts-liquidfill.min.js'
export default {
  name: 'Index',
  data() {
    return {
      colorX: '#c7e7ff',
      colorY: '#7696c5'
    }
  },
  mounted() {
    this.getEchartsHead('zhkbTop01')
    this.getEchartsHead('zhkbTop02')
    // setInterval(() => {
    //   this.getEchartsHead('zhkbTop01')
    //   this.getEchartsHead('zhkbTop02')
    // }, 1000 * 20)
    this.getAllEcharts()
    this.getzhkb02()
    setInterval(() => {
      this.getzhkb02()
    }, 1000 * 16)
    this.getzhkb12()
    setInterval(() => {
      this.getzhkb12()
    }, 1000 * 11)
    this.getzhkb13()
    setInterval(() => {
      this.getzhkb13()
    }, 1000 * 19)
    // this.getzhkb11()
  },
  methods: {
    // æµ‹è¯•自动播放tooltip
    getzhkb11() {
      const option = {
        backgroundColor: 'transparent',
        // title: {
        //   text: '时段-进出港流量',
        //   left: '5%',
        //   top: '5%',
        //   textStyle: {
        //     color: '#fff',
        //     fontSize: '18px'
        //   }
        // },
        tooltip: {
          trigger: 'axis',
          axisPointer: {
            type: 'shadow'
          }
        },
        legend: [
          {
            icon: 'react',
            right: '0%',
            top: '0%',
            textStyle: {
              color: '#fff',
              fontSize: 14
            },
            itemGap: 30,
            itemWidth: 30,
            itemHeight: 4,
            data: ['设备利用率', '设备开机率']
          }
        ],
        grid: {
          top: '10%',
          right: '5%',
          left: '1%',
          bottom: '0%',
          containLabel: true
        },
        yAxis: [
          {
            type: 'category',
            data: ['冷镦车间', '热墩车间', '达克罗车间', '磷化车间', '注塑车间'],
            axisLine: {
              lineStyle: {
                color: '#4E84AC'
                // width: 2
              }
            },
            axisTick: {
              show: false
            },
            axisLabel: {
              // margin: 10,
              color: '#09d8f2',
              textStyle: {
                fontSize: 16
              }
            }
          }
        ],
        xAxis: [
          {
            axisLabel: {
              formatter: '{value}',
              color: '#6895CA',
              textStyle: {
                fontSize: 16,
                color: this.colorX
              }
            },
            axisLine: {
              show: true,
              lineStyle: {
                width: 2,
                color: '#4E84AC'
              }
            },
            axisTick: {
              show: false
            },
            splitLine: {
              lineStyle: {
                type: 'dashed',
                // ä½¿ç”¨æ·±æµ…的间隔色
                color: '#184D9A'
              }
            }
          }
        ],
        series: [
          {
            name: '设备利用率',
            type: 'bar',
            barGap: '70%',
            data: [Math.ceil(30 + Math.random() * 20), Math.ceil(75 - Math.random() * 20), Math.ceil(77 - Math.random() * 20), Math.ceil(39 + Math.random() * 20), Math.ceil(85 - Math.random() * 20)],
            barWidth: 12,
            itemStyle: {
              normal: {
                color: {
                  type: 'linear',
                  x: 0,
                  y: 0,
                  x2: 1,
                  y2: 0,
                  colorStops: [
                    {
                      offset: 0,
                      color: '#00FFFF' //  0%  å¤„的颜色
                    },
                    {
                      offset: 1,
                      color: '#00FF00' //  100%  å¤„的颜色
                    }
                  ],
                  global: false //  ç¼ºçœä¸º  false
                },
                barBorderRadius: [30, 30, 30, 30],
                shadowColor: 'rgba(0,160,221,1)',
                shadowBlur: 4
              }
            },
            label: {
              normal: {
                show: true,
                // lineHeight: 20,
                // width: 80,
                // height: 20,
                verticalAlign: 'center',
                borderRadius: 200,
                position: 'right',
                color: '#00FF00',
                fontSize: 16
              }
            }
          },
          {
            name: '设备开机率',
            type: 'bar',
            data: [Math.ceil(90 - Math.random() * 20), 45 + Math.ceil(Math.random() * 20), Math.ceil(27 + Math.random() * 20), Math.ceil(20 + Math.random() * 60), Math.ceil(85 - Math.random() * 20)],
            barWidth: 12,
            itemStyle: {
              normal: {
                color: {
                  type: 'linear',
                  x: 0,
                  y: 0,
                  x2: 1,
                  y2: 0,
                  colorStops: [
                    {
                      offset: 0,
                      color: '#00FFFF' //  0%  å¤„的颜色
                    },
                    {
                      offset: 1,
                      color: '#FFFF00' //  100%  å¤„的颜色
                    }
                  ],
                  global: false //  ç¼ºçœä¸º  false
                },
                barBorderRadius: [30, 30, 30, 30],
                shadowColor: 'rgba(0,160,221,1)',
                shadowBlur: 4
              }
            },
            label: {
              normal: {
                show: true,
                // lineHeight: 20,
                // width: 80,
                // height: 20,
                borderRadius: 200,
                verticalAlign: 'center',
                // position: ['-0', '-20'],
                position: 'right',
                color: '#FFFF00',
                fontSize: 16
              }
            }
          }
        ]
      }
      const myChart = echarts.init(document.getElementById('zhkb11'))
      if (option.textStyle == null) {
        option.textStyle = {
          fontFamily: 'Microsoft YaHei',
          color: '#ffffff'
        }
      }
      // ä½¿ç”¨åˆšæŒ‡å®šçš„配置项和数据显示图表。
      myChart.clear()
      myChart.setOption(option, true)
      window.addEventListener('resize', function() {
        myChart.resize()
      })
      let index = 0
      setInterval(function() {
        myChart.dispatchAction({
          type: 'showTip',
          seriesIndex: 0,
          dataIndex: index
        })
        index++
        if (index > 4) {
          index = 0
        }
      }, 2000)
    },
    getAllEcharts() {
      loadEcharts('zhkb01', zhkb01())
      loadEcharts('zhkb03', zhkb03('螺母投入产出率'))
      loadEcharts('zhkb03_2', zhkb03('螺杆投入产出率'))
      loadEcharts('zhkb04', zhkb04())
      loadEcharts('zhkb05', zhkb05())
      loadEcharts('zhkb06', zhkb06('检验及时率'))
      loadEcharts('zhkb06_2', zhkb06('成品合格率'))
      loadEcharts('zhkb07_1', zhkb07('钢材故障', 96))
      loadEcharts('zhkb07_2', zhkb07('冷镦', 96))
      loadEcharts('zhkb07_3', zhkb07('热墩', 96))
      loadEcharts('zhkb07_4', zhkb07('热处理', 95))
      loadEcharts('zhkb07_5', zhkb07('达克罗', 95))
      loadEcharts('zhkb07_6', zhkb07('镀锌', 95))
      loadEcharts('zhkb08', zhkb08())
      loadEcharts('zhkb09', zhkb09())
      loadEcharts('zhkb10', zhkb10())
      loadEcharts('zhkb11', zhkb11())
      setInterval(() => {
        loadEcharts('zhkb01', zhkb01())
      }, 1000 * 10)
      setInterval(() => {
        loadEcharts('zhkb03', zhkb03('螺母投入产出率'))
        loadEcharts('zhkb03_2', zhkb03('螺杆投入产出率'))
      }, 1000 * 12)
      setInterval(() => {
        loadEcharts('zhkb04', zhkb04())
      }, 1000 * 14)
      setInterval(() => {
        loadEcharts('zhkb05', zhkb05())
      }, 1000 * 16)
      setInterval(() => {
        loadEcharts('zhkb06', zhkb06('检验及时率'))
        loadEcharts('zhkb06_2', zhkb06('成品合格率'))
      }, 1000 * 18)
      // setInterval(() => {
      //   loadEcharts('zhkb07_1', zhkb07())
      //   loadEcharts('zhkb07_2', zhkb07())
      //   loadEcharts('zhkb07_3', zhkb07())
      //   loadEcharts('zhkb07_4', zhkb07())
      //   loadEcharts('zhkb07_5', zhkb07())
      //   loadEcharts('zhkb07_6', zhkb07())
      // }, 1000 * 5)
      setInterval(() => {
        loadEcharts('zhkb08', zhkb08())
      }, 1000 * 20)
      setInterval(() => {
        loadEcharts('zhkb09', zhkb09())
      }, 1000 * 22)
      setInterval(() => {
        loadEcharts('zhkb10', zhkb10())
      }, 1000 * 24)
      setInterval(() => {
        loadEcharts('zhkb11', zhkb11())
      }, 1000 * 26)
    },
    getzhkb13() {
      const colorList = ['#47A2FF ', '#53C8D1', '#59CB74', '#FBD444', '#7F6AAD', '#585247', '#00FFFF', '#ff00ff', '#00ff00', '#ffff00', '#ff0000', '#0000ff']
      const data = [
        { name: 'LB01   100', value: 100 },
        { name: 'LB02   200', value: 200 },
        { name: 'LB03   300', value: 300 },
        { name: 'LB04   400', value: 400 },
        { name: 'LB05   500', value: 500 },
        { name: 'LB06   550', value: 550 },
        { name: 'LB07   570', value: 570 },
        { name: 'LB08   570', value: 570 },
        { name: 'LB09   570', value: 570 },
        { name: 'LB10   570', value: 570 },
        { name: 'LB11   570', value: 570 },
        { name: 'LB12   570', value: 570 }
      ]
      const option = {
        backgroundColor: 'transparent',
        grid: {
          left: '0%',
          right: '0%',
          bottom: '0%',
          top: '20%',
          containLabel: true
        },
        title: {
          text: 80 + Math.ceil(Math.random() * 10) + '%',
          // subtext: '3',
          textStyle: {
            fontSize: 26,
            color: '#09d8f2',
            lineHeight: 20
          },
          // subtextStyle: {
          //     fontSize: 28,
          //     color: '#333'
          // },
          textAlign: 'center',
          left: '74%',
          top: '55%'
        },
        tooltip: {
          trigger: 'item'
        },
        legend: {
          // type: 'scroll',
          orient: 'vertical',
          left: '4%',
          top: '20%',
          itemGap: 20,
          selectedMode: false,
          // icon: 'pin',
          icon: 'roundRect',
          data: data.map(r => r.name),
          textStyle: {
            color: colorList.map(r => r),
            fontSize: 16,
            rich: {
              uname: {
                width: 100
              },
              unum: {
                // color: '#4ed139',
                color: function(value, index) {
                  console.log(value, index)
                },
                width: 20,
                align: 'right'
              }
            }
          }
          // formatter(name) {
          //   return `{uname|${name}}{unum|5000吨}`
          // }
        },
        color: colorList,
        series: [
          {
            // name: 'title',
            type: 'pie',
            silent: true,
            radius: [60, 90],
            center: ['75%', '60%'],
            label: {
              show: false
            },
            labelLine: {
              show: false
            },
            // itemStyle: {
            //   borderWidth: 3,
            //   borderColor: '#fff'
            // },
            data: data
          }
        ]
      }
      const myChart = echarts.init(document.getElementById('zhkb13'))
      if (option.textStyle == null) {
        option.textStyle = {
          fontFamily: 'Microsoft YaHei',
          color: '#ffffff'
        }
      }
      // ä½¿ç”¨åˆšæŒ‡å®šçš„配置项和数据显示图表。
      myChart.clear()
      myChart.setOption(option, true)
      window.addEventListener('resize', function() {
        myChart.resize()
      })
      // var index = 0 // æ’­æ”¾æ‰€åœ¨ä¸‹æ ‡
      // var mTime = setInterval(function() {
      //   myChart.dispatchAction({
      //     type: 'showTip',
      //     seriesIndex: 0,
      //     dataIndex: index
      //   })
      //   index++
      //   if (index > data.length - 1) {
      //     index = 0
      //   }
      // }, 2000)
      // var currentIndex = -1 // å½“前高亮图形在饼图数据中的下标
      // var changePieInterval = setInterval(selectPie, 2000) // è®¾ç½®è‡ªåŠ¨åˆ‡æ¢é«˜äº®å›¾å½¢çš„å®šæ—¶å™¨
      //
      // function highlightPie() { // å–消所有高亮并高亮当前图形
      //   // éåŽ†é¥¼å›¾æ•°æ®ï¼Œå–æ¶ˆæ‰€æœ‰å›¾å½¢çš„é«˜äº®æ•ˆæžœ
      //   option.series[0].data.forEach((item, index) => {
      //     myChart.dispatchAction({
      //       type: 'downplay',
      //       // type: 'showTip',
      //       seriesIndex: 0,
      //       dataIndex: index
      //     })
      //   })
      //
      //   // // é«˜äº®å½“前图形
      //   myChart.dispatchAction({
      //     type: 'highlight',
      //     seriesIndex: 0,
      //     dataIndex: currentIndex
      //   })
      // }
      //
      // myChart.on('mouseover', (params) => { // ç”¨æˆ·é¼ æ ‡æ‚¬æµ®åˆ°æŸä¸€å›¾å½¢æ—¶ï¼Œåœæ­¢è‡ªåŠ¨åˆ‡æ¢å¹¶é«˜äº®é¼ æ ‡æ‚¬æµ®çš„å›¾å½¢
      //   clearInterval(changePieInterval)
      //   currentIndex = params.dataIndex
      //   highlightPie()
      // })
      //
      // myChart.on('mouseout', (params) => { // ç”¨æˆ·é¼ æ ‡ç§»å‡ºæ—¶ï¼Œé‡æ–°å¼€å§‹è‡ªåŠ¨åˆ‡æ¢
      //   if (changePieInterval) {
      //     clearInterval(changePieInterval)
      //   }
      //   changePieInterval = setInterval(selectPie, 1000)
      // })
      //
      // function selectPie() { // é«˜äº®æ•ˆæžœåˆ‡æ¢åˆ°ä¸‹ä¸€ä¸ªå›¾å½¢
      //   var dataLen = option.series[0].data.length
      //   currentIndex = (currentIndex + 1) % dataLen
      //   highlightPie()
      // }
    },
    getzhkb12() {
      const value1 = Math.ceil(Math.random() * 10 + 60)
      const option = {
        backgroundColor: 'transparent',
        grid: {
          left: '0%',
          right: '0%',
          bottom: '0%',
          top: '0%',
          containLabel: true
        },
        title: {
          text: value1 + '%',
          x: '36%',
          y: '40%',
          textStyle: {
            color: this.colorX,
            fontSize: 26
          }
        },
        series: [
          {
            type: 'liquidFill',
            radius: '80%',
            // data: [0.6],
            data: [value1 / 100, 0.4, 0.2],
            backgroundStyle: {
              color: {
                type: 'radial',
                x: 0.5,
                y: 0.5,
                r: 0.5,
                colorStops: [
                  {
                    offset: 0,
                    color: 'rgba(0,24,55, 0)'
                  },
                  {
                    offset: 0.75,
                    color: 'rgba(0,24,55, 0)'
                  },
                  {
                    offset: 1,
                    color: 'rgba(37,237,259, 1)'
                  }],
                globalCoord: false
              }
            },
            outline: {
              borderDistance: 0,
              itemStyle: {
                borderWidth: 0,
                borderColor: {
                  type: 'linear',
                  x: 0,
                  y: 0,
                  x2: 0,
                  y2: 1,
                  colorStops: [{
                    offset: 0,
                    color: 'rgba(50,115,256, 1)'
                  }, {
                    offset: 0.5,
                    color: 'rgba(50,115,233, .75)'
                  }, {
                    offset: 1,
                    color: 'rgba(50,115,233, 1)'
                  }],
                  globalCoord: false
                }
              }
            },
            color: ['rgba(9,216,242, .8)', 'rgba(9,216,242, 0.6)', 'rgba(9,216,242, 0.4)'],
            // color: {
            // type: 'linear',
            // x: 0,
            // y: 0,
            // x2: 0,
            // y2: 1
            // colorStops: [{
            //   offset: 0,
            //   color: 'rgba(37,237,259, 1)'
            // }, {
            //   offset: 0.5,
            //   color: 'rgba(0,100,259, 0.5)'
            // }, {
            //   offset: 1,
            //   color: 'darkblue'
            // }
            // ]
            // globalCoord: false
            // },
            label: {
              normal: {
                formatter: ''
              }
            }
          }
        ]
      }
      const myChart = echarts.init(document.getElementById('zhkb12'))
      if (option.textStyle == null) {
        option.textStyle = {
          fontFamily: 'Microsoft YaHei',
          color: '#ffffff'
        }
      }
      // ä½¿ç”¨åˆšæŒ‡å®šçš„配置项和数据显示图表。
      myChart.clear()
      myChart.setOption(option, true)
      window.addEventListener('resize', function() {
        myChart.resize()
      })
    },
    getEchartsHead(id) {
      const barWidth = 12
      var data1 = [100]
      const titlename = ['时间']
      const valdata = [100]
      const option = {
        backgroundColor: 'transparent',
        // animationDuration: 0,
        // animationDurationUpdate: 1000 * 30,
        // animationEasing: 'linear',
        // animationEasingUpdate: 'linear',
        grid: {
          left: '%',
          top: '20%',
          bottom: '0%',
          right: '5%',
          containLabel: true
        },
        xAxis: {
          show: false,
          inverse: true
        },
        yAxis: [
          {
            show: false,
            data: titlename,
            inverse: true,
            axisLine: {
              show: false
            },
            splitLine: {
              show: false
            },
            axisTick: {
              show: false
            }
          },
          {
            show: false,
            inverse: true,
            data: titlename,
            axisLabel: {
              textStyle: {
                fontSize: 12,
                color: '#fff'
              }
            },
            axisLine: {
              show: false
            },
            splitLine: {
              show: false
            },
            axisTick: {
              show: false
            }
          }
        ],
        series: [
          // å†…
          {
            type: 'bar',
            barWidth: barWidth,
            legendHoverLink: false,
            symbolRepeat: true,
            silent: true,
            itemStyle: {
              color: {
                type: 'linear',
                x: 0,
                y: 0,
                x2: 1,
                y2: 0,
                colorStops: [
                  {
                    offset: 0,
                    color: '#74ddff' // 0% å¤„的颜色
                  },
                  {
                    offset: 1,
                    color: '#ffc975' // 100% å¤„的颜色
                  }
                ]
              },
              shadowBlur: 6,
              shadowColor: '#74ddff'
            },
            data: data1,
            z: 1,
            animationEasing: 'elasticOut'
          },
          // èƒŒæ™¯
          {
            type: 'pictorialBar',
            animationDuration: 0,
            symbolRepeat: 'fixed',
            symbolMargin: '20%',
            symbol: 'roundRect',
            symbolSize: [6, barWidth],
            itemStyle: {
              normal: {
                color: '#12272A'
              }
            },
            label: {
              show: false
            },
            data: data1,
            z: 0,
            animationEasing: 'elasticOut'
          },
          // åˆ†éš”
          {
            type: 'pictorialBar',
            itemStyle: {
              color: '#000'
            },
            symbolRepeat: 'fixed',
            symbolMargin: 4,
            symbol: 'roundRect',
            symbolClip: true,
            symbolSize: [2, barWidth],
            symbolPosition: 'start',
            symbolOffset: [0, 0],
            data: data1,
            z: 2,
            animationEasing: 'elasticOut'
          },
          // å›¾æ ‡
          {
            name: '图标',
            type: 'pictorialBar',
            symbol:
              'image://data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADoAAAA6CAMAAADWZboaAAAAZlBMVEUAAABe3uVe3+Vf3uVf3+Zf3uVg3+Zg3+Zf3+Vi4OZh4OZg3+Z86/Bh3+Zi4Odj4Odi4OZ86/B76/B86/Bj4ed56+9x5+xn4umB7/N87PB36e+A7/N+7fF/7vJ/7vJ+7fGA7/OB7/PReX+lAAAAIXRSTlMABQkVDREmIhk3MR10LEFFPHh7cUprXE35h2XnqMLAp+mHAG9cAAAB5ElEQVRIx83WjU7CMBQFYIoiKMqU/XUboHv/l/Tce7t2XamDNSacETEmX86tlK2rx4py150o+MstMBLwWRfHKo6JCVxLnvmFGBjFQ58oF1//sUZhGy/ClSTWObgnL4O+bkeN4nY2okfNMbkRt9/vtxz8InoTsWplJSCzFxPmO8+GpSIByX3YQAuGDWtRKhKjCnxDXhF6Z4yxnZ20Wgko7BMRDmxtSGVaI4kdTIgb+zTYoJQlIMlDlmUFgrcDWWC201qSayqlTkiCddWWeV62VU0YlnpRi9VOKaSUsiyq/N0krwq2Ugt7lVpZl5BfHNiytjagMi+XYp0kCR45hMlivVQrE/uU5pXSrCB5bM6d1t2lOZItMqmliT3q5uVxqxzyW/ccfYLNKx7ZTeykMvNyac2yt2Fbc61MHLSC0rwoxbiNdlQ3GBm1NLHQsHUrtEXppR/ljNpW6DbSCoqlFiVoN6YdaFlgsSFVPs1BdT8OaB5QyQzVcaqWDows/zepxR8ObLglTrdtCRVuRNj4Rrxh+//0ke2f8KVL+Kon3GCSbmsJN9OUW3j6g0Ns+LgCij2u0h+Sghc8mlMPBMgdx5DFh59VmOVHrvmDnoNxCz3J7MFWsMuaLyR089xz/xhlfijvwutR8gv3zk6BLUUeCgAAAABJRU5ErkJggg==',
            symbolSize: [50, 50],
            symbolOffset: [-25, 0],
            z: 12,
            itemStyle: {
              normal: {
                color: '#14b1eb'
              }
            },
            symbolPosition: 'end',
            data: data1
          }
          // å¤–框
          // {
          //     name: '外框',
          //     type: 'bar',
          //     barGap: '-100%', // è®¾ç½®å¤–框粗细
          //     yAxisIndex: 1,
          //     data: [100],
          //     barWidth: 25,
          //     itemStyle: {
          //         normal: {
          //             color: 'none',
          //             borderColor: '#74ddff',
          //         },
          //     },
          // },
        ]
      }
      const myChart = echarts.init(document.getElementById(id))
      if (option.textStyle == null) {
        option.textStyle = {
          fontFamily: 'Microsoft YaHei',
          color: '#ffffff'
        }
      }
      // function run() {
      //   let value = 100
      //   if (value < 120) {
      //     value++
      //   } else {
      //     value = 120
      //   }
      //   data1 = [value]
      //   myChart.setOption({
      //     series: [
      //       {
      //         type: 'bar',
      //         data: data1
      //       }
      //     ]
      //   })
      // }
      // setTimeout(function() {
      //   run()
      // }, 0)
      // setInterval(function() {
      //   run()
      // }, 1000 * 30)
      // ä½¿ç”¨åˆšæŒ‡å®šçš„配置项和数据显示图表。
      myChart.clear()
      myChart.setOption(option, true)
      window.addEventListener('resize', function() {
        myChart.resize()
      })
      // return option
    },
    getzhkb02() {
      let a, b, c, d
      a = Math.ceil(Math.random() * 10 + 20)
      b = Math.ceil(Math.random() * 10 + 20)
      c = Math.ceil(Math.random() * 10 + 20)
      d = 100 - a - b - c
      const data = [
        {
          'name': '生产已排满',
          'value': a
        }, {
          'name': '物料不足',
          'value': b
        }, {
          'name': '插班',
          'value': c
        }, {
          'name': '其它',
          'value': d
        }]
      const colorArr = ['#00FFFF', '#FFFF00', '#00FF00', '#FF00FF']
      const option = {
        color: colorArr,
        backgroundColor: 'transparent',
        title: {
          show: true,
          text: '预期计划原因分析',
          // subtext: 7789,
          textStyle: {
            color: '#09d8f2',
            fontSize: 16
            // align: 'center'
          },
          // subtextStyle: {
          //   fontSize: 30,
          //   color: ['#ff9d19']
          // },
          x: 'center',
          y: '2%'
        },
        grid: {
          left: '0%',
          right: '4%',
          bottom: '4%',
          top: '20%',
          containLabel: true
        },
        legend: {
          orient: 'vertical',
          top: '30%',
          left: '5%',
          selectedMode: false,
          textStyle: {
            color: colorArr.map(r => r),
            fontSize: 16
          },
          icon: 'roundRect',
          data: data
        },
        series: [
          // ä¸»è¦å±•示层的
          {
            left: 150,
            radius: ['40%', '61%'],
            center: ['50%', '60%'],
            type: 'pie',
            silent: true,
            label: {
              normal: {
                show: true,
                formatter: '{c}%',
                textStyle: {
                  fontSize: 16,
                  color: function(value, index) { // æ­¤ä»£ç æ— æ•ˆ
                    console.log(value, index, 345678)
                    // let temp = ''
                    // colorArr.forEach((it, ind) => {
                    //   if (index === ind) {
                    //     temp = it
                    //   }
                    // })
                    // return temp
                  }
                },
                position: 'outside'
              },
              emphasis: {
                show: true
              }
            },
            labelLine: {
              normal: {
                show: true,
                length: 30,
                length2: 30
              },
              emphasis: {
                show: true
              }
            },
            name: '民警训练总量',
            data: data
          },
          // è¾¹æ¡†çš„设置
          {
            left: 150,
            radius: ['30%', '34%'],
            center: ['50%', '60%'],
            type: 'pie',
            silent: true,
            label: {
              normal: {
                show: false
              },
              emphasis: {
                show: false
              }
            },
            labelLine: {
              normal: {
                show: false
              },
              emphasis: {
                show: false
              }
            },
            animation: false,
            tooltip: {
              show: false
            },
            data: [{
              value: 1,
              itemStyle: {
                // color: 'rgba(250,250,250,0.3)'
                color: '#09d8f2'
              }
            }]
          },
          {
            left: 150,
            name: '外边框',
            type: 'pie',
            silent: true,
            clockWise: false, // é¡ºæ—¶åŠ è½½
            hoverAnimation: false, // é¼ æ ‡ç§»å…¥å˜å¤§
            center: ['50%', '60%'],
            radius: ['65%', '65%'],
            label: {
              normal: {
                show: false
              }
            },
            data: [{
              value: 9,
              name: '',
              itemStyle: {
                normal: {
                  borderWidth: 2,
                  // borderColor: '#0b5263'
                  borderColor: '#09d8f2'
                }
              }
            }]
          }
        ]
      }
      const myChart = echarts.init(document.getElementById('zhkb02'))
      if (option.textStyle == null) {
        option.textStyle = {
          fontFamily: 'Microsoft YaHei',
          color: '#ffffff'
        }
      }
      // ä½¿ç”¨åˆšæŒ‡å®šçš„配置项和数据显示图表。
      myChart.clear()
      myChart.setOption(option, true)
      window.addEventListener('resize', function() {
        myChart.resize()
      })
      // let currentIndex = -1 // å½“前高亮图形在饼图数据中的下标
      // var changePieInterval = setInterval(selectPie, 2000) // è®¾ç½®è‡ªåŠ¨åˆ‡æ¢é«˜äº®å›¾å½¢çš„å®šæ—¶å™¨
      //
      // function highlightPie() { // å–消所有高亮并高亮当前图形
      //   // for (var idx in option.series[0].data) {
      //   //   // éåŽ†é¥¼å›¾æ•°æ®ï¼Œå–æ¶ˆæ‰€æœ‰å›¾å½¢çš„é«˜äº®æ•ˆæžœ
      //   //   myChart.dispatchAction({
      //   //     type: 'downplay',
      //   //     seriesIndex: 0,
      //   //     dataIndex: idx
      //   //   })
      //   // }
      //   // éåŽ†é¥¼å›¾æ•°æ®ï¼Œå–æ¶ˆæ‰€æœ‰å›¾å½¢çš„é«˜äº®æ•ˆæžœ
      //   option.series[0].data.forEach((item, index) => {
      //     myChart.dispatchAction({
      //       type: 'downplay',
      //       seriesIndex: 0,
      //       dataIndex: index
      //     })
      //   })
      //
      //   // é«˜äº®å½“前图形
      //   myChart.dispatchAction({
      //     type: 'highlight',
      //     seriesIndex: 0,
      //     dataIndex: currentIndex
      //   })
      // }
      //
      // myChart.on('mouseover', (params) => { // ç”¨æˆ·é¼ æ ‡æ‚¬æµ®åˆ°æŸä¸€å›¾å½¢æ—¶ï¼Œåœæ­¢è‡ªåŠ¨åˆ‡æ¢å¹¶é«˜äº®é¼ æ ‡æ‚¬æµ®çš„å›¾å½¢
      //   clearInterval(changePieInterval)
      //   currentIndex = params.dataIndex
      //   highlightPie()
      // })
      //
      // myChart.on('mouseout', (params) => { // ç”¨æˆ·é¼ æ ‡ç§»å‡ºæ—¶ï¼Œé‡æ–°å¼€å§‹è‡ªåŠ¨åˆ‡æ¢
      //   if (changePieInterval) {
      //     clearInterval(changePieInterval)
      //   }
      //   changePieInterval = setInterval(selectPie, 1000)
      // })
      //
      // function selectPie() { // é«˜äº®æ•ˆæžœåˆ‡æ¢åˆ°ä¸‹ä¸€ä¸ªå›¾å½¢
      //   var dataLen = option.series[0].data.length
      //   currentIndex = (currentIndex + 1) % dataLen
      //   highlightPie()
      // }
      // return myChart
    }
  }
}
</script>
<style lang="scss" scoped>
$kbBorderColor: rgba(9, 216, 242, 0.4);
$color01: #00FFFF; //边框四个角的颜色
$color02: #09d8f2; //看板标题和小标题颜色
.kb_body {
  width: 1920px;
  height: 1080px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  //color: #09d8f2;
  color: $color01;
  //background: repeating-radial-gradient(circle, #000000, #444444 100%, #666666 100%);
}
.kb_background {
  position: absolute;
  bottom: 0;
  width: 1920px;
  height: 887px;
  background: url('../../assets/images/kb_body.jpg') no-repeat;
  //z-index: -1;
  //opacity: 0.4;
  filter: brightness(40%);
}
.kb_background2 {
  position: absolute;
  top: -694px;
  width: 1920px;
  height: 887px;
  background: url('../../assets/images/kb_body.jpg') no-repeat;
  filter: brightness(40%);
  //z-index: -1;
  //opacity: 0.4;
}
.kb_flex {
  display: flex;
  justify-content: space-between;
}
.kb_head {
  display: flex;
  justify-content: center;
  line-height: 90px;
  font-size: 46px;
  margin: auto;
  z-index: 2;
  color: $color02;
  letter-spacing: 2px;
  font-weight: bolder;
}
.kb_headerPic2 {
  position: absolute;
  top: 35px;
  width: 1920px;
  //height: 12px;
  //background: url("../../assets/images/kb_headtitle2.png") no-repeat;
  //margin-left: 56px;
  z-index: 2;
}
.kb_content {
  height: 990px;
  display: flex;
  //padding: 20px;
  padding: 0 20px 20px 20px;
  z-index: 2;
}
.kb_content_left {
  width: 552px;
  .kb_content_left_top {
    height: 380px;
    .scjh {
      height: 340px;
    }
  }
  .kb_content_left_bottom {
    height: 570px;
    .ckgl {
      height: 530px;
    }
  }
}
.kb_content_center {
  width: 736px;
  margin: 0 20px;
  .kb_content_center_top {
    height: 475px;
    .xsdd {
      height: 435px
    }
  }
  .kb_content_center_bottom {
    height: 475px;
    .cjhn {
      height: 435px;
    }
  }
}
.kb_content_right {
  width: 552px;
  .kb_content_right_top {
    height: 285px;
    .zlfx {
      height: 240px;
    }
  }
  .kb_content_right_center {
    height: 285px;
    .ryfx {
      height: 240px;
    }
  }
  .kb_content_right_bottom {
    height: 380px;
    .sbfx {
      height: 340px;
    }
  }
}
.kb_flex_column {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.kb_flex_space_between {
  display: flex;
  justify-content: space-between;
}
.kb_block {
  border: 1px solid $color01;
  box-shadow: $color02 0 0 10px;
  border-radius: 10px;
  padding: 10px;
  //background-color: rgba(0,255,255,1);
}
.box03 {
  width: 124px;
  height: 139px;
  background: url("../../assets/images/box03.png");
}
.middle_title {
  display: flex;
  align-items: flex-end;
  height: 40px;
  margin-left: 5px;
  margin-bottom: 10px;
  .svg_class {
    font-size: 36px;
  }
  .title {
    font-size: 26px;
    margin-left: 5px;
  }
}
.small_title {
  height: 16px;
  display: flex;
  .small_bar {
    width: 2px;
    height: 16px;
    background: $color01;
    margin-right: 5px;
  }
}
//边框四个角
.horn {
  background: linear-gradient($color01, $color01) left top,
  linear-gradient($color01, $color01) left top,
  linear-gradient($color01, $color01) right top,
  linear-gradient($color01, $color01) right top,
  linear-gradient($color01, $color01) left bottom,
  linear-gradient($color01, $color01) left bottom,
  linear-gradient($color01, $color01) right bottom,
  linear-gradient($color01, $color01) right bottom;
  background-repeat: no-repeat;
  //background-size: 5px 20px, 20px 5px;
  background-size: 3px 20px, 20px 3px;
}
//文字3D
//.threeD {
//  text-shadow:$color02 4px 4px 4px
//}
</style>
src/views/kb/zpcj.vue
ÎļþÒÑɾ³ý