loulijun2021
2023-09-12 fc2ad48243a04090e0ce8df907d7c0beea738c9c
1.车间质量看板60%
已添加4个文件
已修改5个文件
2359 ■■■■ 文件已修改
src/api/kanbanManager.js 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/icons/svg/blcs.svg 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/icons/svg/cjrw.svg 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/icons/svg/zbls.svg 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/icons/svg/zwcs.svg 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/permission.js 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/router/index.js 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/utils/myEcharts.js 1569 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/kanbanManager/cjzl.vue 743 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/api/kanbanManager.js
@@ -122,3 +122,40 @@
    params: data
  })
}
export function QCBadTop(data) {
  return request({
    url: 'KanBanManagerent/QCBadTop',
    method: 'get',
    params: data
  })
}
export function QCBadCenterLeftWeek(data) {
  return request({
    url: 'KanBanManagerent/QCBadCenterLeftWeek',
    method: 'get',
    params: data
  })
}
export function QCBadCenterRightWeek(data) {
  return request({
    url: 'KanBanManagerent/QCBadCenterRightWeek',
    method: 'get',
    params: data
  })
}
export function BadWeekDistriBute(data) {
  return request({
    url: 'KanBanManagerent/BadWeekDistriBute',
    method: 'get',
    params: data
  })
}
export function BadContManger(data) {
  return request({
    url: 'KanBanManagerent/BadContManger',
    method: 'get',
    params: data
  })
}
src/icons/svg/blcs.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="1694480164779" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5197" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M517.2 878l-69.7-38.1-30.6-16.7-30.6 16.7-86.9 47.3-86.7-47.3-30.6-16.7-30.6 16.7-22.6 12.3V160c0-17.7 14.3-32 32-32h511.6c17.7 0 32 14.3 32 32v381c0 17.7 14.3 32 32 32s32-14.3 32-32V128c0-35.3-26.2-64-58.6-64H123.4C91 64 64.7 92.7 64.7 128v832L182 896l117.3 64 117.5-64 69.7 38.1c21.3 11.7 47.3-3.8 47.3-28.1 0-11.7-6.4-22.4-16.6-28z" p-id="5198" fill="#00ffff"></path><path d="M639.5 926.9c0 17.7 14.3 32 32 32s32-14.3 32-32V672.1c0-17.7-14.3-32-32-32s-32 14.3-32 32v254.8zM799.3 736.1c-17.7 0-32 14.3-32 32v158.8c0 17.7 14.3 32 32 32s32-14.3 32-32V768.1c0-17.7-14.4-32-32-32zM927.3 799.1c-17.7 0-32 14.3-32 32v95.8c0 17.7 14.3 32 32 32s32-14.3 32-32v-95.8c0-17.7-14.4-32-32-32z" p-id="5199" fill="#00ffff" data-spm-anchor-id="a313x.search_index.0.i3.d8a93a81BG5nd3" class="selected"></path><path d="M544.6 572h-256c-17.7 0-32 14.3-32 32s14.3 32 32 32h256c17.7 0 32-14.3 32-32s-14.3-32-32-32zM303.4 493.1c12.5 12.5 32.8 12.5 45.3 0l67.9-67.9 67.9 67.9c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-68-67.8 67.9-67.9c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-67.9 67.9-67.9-67.9c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l67.9 67.9-67.9 67.9c-12.3 12.5-12.3 32.7 0.1 45.2z" p-id="5200" fill="#00ffff"></path></svg>
src/icons/svg/cjrw.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="1694506865477" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="7838" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M959.884 512.416l-27.146-153.957c-1.348-7.637-8.568-12.725-16.284-11.402l-61.749 10.892a374.705 374.705 0 0 0-37.945-65.548l40.367-48.117c4.985-5.941 4.211-14.804-1.735-19.794L735.629 124.003a13.985 13.985 0 0 0-10.26-3.235 14.02 14.02 0 0 0-9.539 4.97l-40.337 48.068a373.148 373.148 0 0 0-71.175-25.911V85.151c0-7.765-6.289-14.059-14.054-14.059H433.93c-7.76 0-14.054 6.294-14.054 14.059v62.744a373.272 373.272 0 0 0-71.175 25.911l-40.337-48.068a14.011 14.011 0 0 0-9.539-4.97c-3.745-0.363-7.407 0.833-10.26 3.235L168.808 224.491c-5.946 4.99-6.72 13.853-1.735 19.794l40.367 48.117a374.57 374.57 0 0 0-37.945 65.548l-61.749-10.892c-7.686-1.324-14.931 3.765-16.284 11.402L64.315 512.416c-1.348 7.647 3.76 14.931 11.402 16.284l61.827 10.902c1.838 25.343 6.216 50.362 13.054 74.626L96.32 645.57c-6.72 3.872-9.024 12.47-5.142 19.196l78.165 135.389a14.08 14.08 0 0 0 8.534 6.549c3.598 0.941 7.431 0.441 10.666-1.402l54.362-31.391c17.583 18.058 37.033 34.362 58.023 48.656l-21.48 59.008a14.057 14.057 0 0 0 0.466 10.745 14.09 14.09 0 0 0 7.931 7.265l146.904 53.469c1.588 0.578 3.211 0.853 4.809 0.853 5.74 0 11.127-3.549 13.206-9.255l21.485-59.018c25.696 2.647 49.999 2.647 75.704 0l21.48 59.018a14.004 14.004 0 0 0 7.265 7.931 13.962 13.962 0 0 0 10.75 0.471l146.909-53.469a14.082 14.082 0 0 0 7.931-7.265 14.066 14.066 0 0 0 0.466-10.745l-21.48-59.008c20.99-14.294 40.44-30.597 58.023-48.656l54.362 31.391a14.264 14.264 0 0 0 10.666 1.402 14.077 14.077 0 0 0 8.534-6.549l78.165-135.389c3.882-6.725 1.578-15.323-5.142-19.196l-54.278-31.342c6.833-24.254 11.211-49.264 13.054-74.626l61.827-10.902c7.639-1.353 12.747-8.638 11.399-16.284z m-89.062 1.431a14.066 14.066 0 0 0-11.603 13.245c-1.304 30.578-6.578 60.705-15.666 89.527a14.07 14.07 0 0 0 6.377 16.402l51.719 29.862-64.106 111.047-51.808-29.921c-5.706-3.284-12.931-2.167-17.392 2.686-20.441 22.303-43.872 41.95-69.636 58.391a14.055 14.055 0 0 0-5.647 16.656l20.47 56.234-120.492 43.862-20.475-56.254c-2.25-6.196-8.495-10.059-15.034-9.127-30.94 4.039-59.92 4.039-90.861 0-6.583-0.951-12.784 2.931-15.034 9.127l-20.48 56.254-120.488-43.862 20.47-56.234a14.054 14.054 0 0 0-5.647-16.656c-25.764-16.441-49.195-36.087-69.636-58.391-4.456-4.863-11.691-5.98-17.392-2.686l-51.808 29.921-64.106-111.047 51.719-29.862a14.067 14.067 0 0 0 6.377-16.402c-9.098-28.843-14.367-58.959-15.666-89.527a14.065 14.065 0 0 0-11.603-13.245l-58.935-10.392 22.264-126.272 58.837 10.372c6.485 1.196 12.902-2.382 15.426-8.461 11.593-27.98 26.911-54.44 45.523-78.645a14.055 14.055 0 0 0-0.373-17.598l-38.48-45.862 98.228-82.42 38.445 45.813c4.235 5.049 11.421 6.49 17.264 3.431a345.478 345.478 0 0 1 85.38-31.078 14.051 14.051 0 0 0 11.024-13.725V99.209h128.228v59.803a14.055 14.055 0 0 0 11.029 13.725 345.253 345.253 0 0 1 85.371 31.078 14.008 14.008 0 0 0 17.269-3.431l38.45-45.813 98.228 82.42-38.48 45.862a14.057 14.057 0 0 0-0.373 17.598c18.612 24.205 33.931 50.666 45.523 78.645 2.524 6.088 8.936 9.676 15.426 8.461l58.837-10.372 22.264 126.272-58.927 10.39z" fill="#00ffff" p-id="7839"></path><path d="M803.73 512.004c0-0.157-0.017-0.319-0.017-0.471-0.01-6.127-0.267-12.196-0.651-18.225-0.067-1.029-0.156-2.049-0.235-3.078a290.885 290.885 0 0 0-1.863-17.828c-0.031-0.23-0.04-0.461-0.072-0.691-0.004-0.029-0.021-0.049-0.026-0.078a289.87 289.87 0 0 0-46.895-122.38c-0.114-0.191-0.13-0.407-0.254-0.588-1.479-2.181-3.144-4.225-4.681-6.367-1.646-2.289-3.301-4.573-5.01-6.814-2.102-2.755-4.222-5.49-6.421-8.171a292.016 292.016 0 0 0-9.521-11.049c-2.135-2.353-4.349-4.627-6.561-6.907a298.739 298.739 0 0 0-7.591-7.554c-1.898-1.814-3.754-3.667-5.703-5.436-4.214-3.838-8.571-7.515-13.005-11.103-0.853-0.686-1.635-1.446-2.496-2.127-0.21-0.167-0.468-0.216-0.684-0.373-49.605-39.024-112.078-62.391-179.945-62.391-160.805 0-291.631 130.83-291.631 291.631s130.826 291.631 291.631 291.631c152.467 0 277.896-117.635 290.502-266.896 0.002-0.02 0.014-0.039 0.016-0.059 0.031-0.373 0.04-0.706 0.07-1.074 0.293-3.637 0.558-7.274 0.716-10.946 0.209-4.362 0.327-8.578 0.327-12.656z m-220.933 26.877a88.473 88.473 0 0 1-22.949-85.439l49.761-186.172a263.279 263.279 0 0 1 51.642 27.651l-4.018 3.372a14.04 14.04 0 0 0-4.966 9.539 14.02 14.02 0 0 0 3.235 10.255l9.902 11.804a142.58 142.58 0 0 0-7.289 12.598l-15.156-2.676a14.066 14.066 0 0 0-16.284 11.401l-9.637 54.656a14.027 14.027 0 0 0 2.333 10.5 14.037 14.037 0 0 0 9.073 5.784l15.166 2.667a140.837 140.837 0 0 0 2.505 14.343l-13.323 7.696c-6.72 3.872-9.024 12.47-5.142 19.196l27.749 48.058c3.877 6.725 12.47 9.019 19.196 5.147l13.353-7.706a145.447 145.447 0 0 0 11.142 9.333l-5.274 14.5c-2.657 7.294 1.103 15.353 8.397 18.009l52.146 18.98c1.588 0.578 3.211 0.853 4.809 0.853 3.932 0 7.618-1.76 10.269-4.647-8.674 39.475-26.221 75.64-50.44 106.331l-136.2-136.033z m187.159-18.309c-6.495-0.814-12.769 2.951-15.019 9.137l-4.172 11.451-25.73-9.372 4.162-11.451a14.042 14.042 0 0 0-5.642-16.647 115.64 115.64 0 0 1-22.921-19.215 14.032 14.032 0 0 0-17.382-2.676l-10.539 6.088-13.691-23.715 10.51-6.078a14.04 14.04 0 0 0 6.372-16.392 114.01 114.01 0 0 1-5.147-29.441 14.065 14.065 0 0 0-11.608-13.245l-11.985-2.108 4.755-26.97 11.956 2.108c6.451 1.108 12.902-2.382 15.426-8.461a114.146 114.146 0 0 1 14.965-25.862c3.208-4.162 3.728-9.652 1.676-14.259 0.571 0.559 1.166 1.093 1.732 1.652 3.54 3.505 6.953 7.122 10.281 10.813a270.203 270.203 0 0 1 5.594 6.456 255.46 255.46 0 0 1 6.23 7.711c1.303 1.667 2.629 3.314 3.893 5.01a80.262 80.262 0 0 0-19.25 52.185c0 40.823 30.543 74.645 69.979 79.812 0.397 4.137 0.692 8.245 0.896 12.323 0.197 4.171 0.319 8.363 0.319 12.578 0 3.073-0.128 6.113-0.233 9.162a125.972 125.972 0 0 1-5.427-0.594zM732.531 407.29a52.181 52.181 0 0 1 7.593-27.117c13.709 23.617 23.881 49.523 29.722 77.023-21.512-6.519-37.315-26.298-37.315-49.906z m-220.432-158.8c12.813 0 25.401 0.966 37.73 2.745l-49.774 186.221a88.46 88.46 0 0 1-62.517 62.592L251.36 550.057c-1.806-12.431-2.784-25.127-2.784-38.053 0-145.301 118.218-263.514 263.523-263.514zM267.477 609.815l186.115-49.994a88.466 88.466 0 0 1 85.465 22.848L675.258 718.7c-44.913 35.529-101.579 56.817-163.159 56.817-110.748 0.001-205.694-68.704-244.622-165.702z" fill="#00ffff" p-id="7840"></path></svg>
src/icons/svg/zbls.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="1694506944047" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="9058" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M283.3 515.5H552v59.6H283.3zM283.3 642.2H469v59.6H283.3z" fill="#00ffff" p-id="9059"></path><path d="M236 219.6h302.6v142.8c0 19.7 16 35.7 35.7 35.7H749v131l59.6 103.3V338.7L629.9 159.8h-89.7v0.1H191.3c-8.2 0-14.9 6.7-14.9 14.9V832c0 8.2 6.7 14.9 14.9 14.9h276.6l34.4-59.6H236V219.6z m362.3-0.1h7l119 119h-126v-119z" fill="#00ffff" p-id="9060"></path><path d="M891.1 839.1L726 553.1c-5.3-9.2-15.2-14.9-25.8-14.9-10.6 0-20.4 5.7-25.7 14.9l-165.1 286c-5.3 9.2-5.4 20.6-0.1 29.8 5.3 9.2 15.2 14.9 25.8 14.9h330.3c10.6 0 20.5-5.7 25.8-14.9 5.2-9.2 5.2-20.6-0.1-29.8z m-325-3l134.1-232.3 134.1 232.3H566.1z" fill="#00ffff" p-id="9061"></path><path d="M676.4 678.9h47.7v76h-47.7zM700.2 766.2c-14.6 0-26.4 11.8-26.4 26.4 0 14.6 11.8 26.4 26.4 26.4 14.6 0 26.4-11.8 26.4-26.4 0-14.6-11.8-26.4-26.4-26.4z" fill="#00ffff" p-id="9062"></path></svg>
src/icons/svg/zwcs.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="1694506397143" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="6224" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M613.648 32a51.388 51.388 0 0 1 34.785 14.908c8.979 9.036 13.665 21.12 12.989 33.488 1.41 24.96-18.92 46.474-45.742 48.338H401.092c-27.388-1.298-48.396-22.927-47.04-48.338-1.356-25.412 19.652-47.098 46.984-48.396h212.611z m232.376 56.47l-0.169 0.17c79.793 0 117.91 45.403 117.91 111.078v650.146c0 79.06-40.716 109.948-124.405 109.948H174.87c-83.915 0-114.07-39.53-114.692-109.948V199.548C60.235 134.042 81.525 88.47 167.812 88.47h108.197c-1.129 5.252-1.693 10.618-1.807 15.982 0 40.66 31.06 80.752 71.548 80.752h326.006c37.722 0 69.515-40.094 69.515-80.752a79.94 79.94 0 0 0-1.638-15.982h106.39zM296.847 550.908l146.71 146.71a37.722 37.722 0 0 0 51.953 0l264.113-263.716a36.536 36.536 0 0 0 0-52.292 36.536 36.536 0 0 0-51.84 0L469.535 619.182 349.252 499.069a36.932 36.932 0 0 0-51.896 0 36.197 36.197 0 0 0-0.566 51.84z" p-id="6225" fill="#00ffff"></path></svg>
src/permission.js
@@ -8,7 +8,7 @@
NProgress.configure({ showSpinner: false }) // NProgress Configuration
const whiteList = ['/login', '/zhkb', '/ckgl', '/cgdd', '/back'] // no redirect whitelist
const whiteList = ['/login', '/zhkb', '/ckgl', '/cgdd', '/cjzl', '/back'] // no redirect whitelist
router.beforeEach(async(to, from, next) => {
  // start progress bar
src/router/index.js
@@ -47,6 +47,10 @@
    path: '/ckgl',
    component: () => import('@/views/kanbanManager/ckgl'),
    hidden: true
  }, {
    path: '/cjzl',
    component: () => import('@/views/kanbanManager/cjzl'),
    hidden: true
  },
  {
src/utils/myEcharts.js
@@ -1853,3 +1853,1572 @@
  }
  return option
}
// è½¦é—´è´¨é‡
export function cjzl01(scaleData) {
  console.log(scaleData, 3)
  // var scaleData = [
  //   {
  //     'name': '毛刺',
  //     'value': 30
  //   },
  //   {
  //     'name': '色差',
  //     'value': 20
  //   },
  //   {
  //     'name': '抛光',
  //     'value': 10
  //   },
  //   {
  //     'name': '打磨',
  //     'value': 5
  //   },
  //   {
  //     'name': '折弯、压铸、打孔',
  //     'value': 10
  //   }
  // ]
  var rich = {
    white: {
      color: colorX,
      align: 'center',
      padding: [3, 0]
      // fontSize: 16
    }
  }
  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 = []
  var color = ['#00ffff', '#ff3000', '#006ced', '#ffe000', '#ffa800', '#ff5b00', '#ff3000']
  for (var i = 0; i < scaleData.length; i++) {
    data.push({
      value: scaleData[i].value,
      name: scaleData[i].name,
      itemStyle: {
        normal: {
          borderWidth: 5,
          shadowBlur: 20,
          borderColor: color[i],
          shadowColor: color[i]
        }
      }
    }
    // {
    //   value: 2,
    //   name: '',
    //   itemStyle: placeHolderStyle
    // }
    )
  }
  var seriesObj = [{
    name: '',
    type: 'pie',
    clockWise: false,
    radius: [60, 65],
    hoverAnimation: false,
    top: '10%',
    itemStyle: {
      normal: {
        label: {
          show: true,
          position: 'outside',
          color: colorX,
          formatter: function(params) {
            if (params.name !== '') {
              return params.name + '\n{white|' + params.value + '}'
            } else {
              return ''
            }
          },
          rich: rich
        },
        labelLine: {
          length: 10,
          length2: 10,
          show: true,
          color: '#00ffff'
        }
      }
    },
    data: data
  }]
  const option = {
    backgroundColor: 'transparent',
    tooltip: {
      show: false
    },
    legend: {
      show: false
    },
    toolbox: {
      show: false
    },
    title: {
      text: '总和',
      left: '49%',
      top: '45%',
      textAlign: 'center',
      textStyle: {
        color: '#00ffff',
        fontSize: '20',
        fontWeight: 'bolder'
      },
      subtext: scaleData.length > 0 ? scaleData.map(i => parseFloat(i.value)).reduce((pre, curr) => {
        return pre + curr
      }) : [0],
      subtextStyle: {
        color: '#00ffff',
        fontSize: '20',
        fontWeight: 'bolder'
      }
    },
    series: seriesObj
  }
  return option
}
export function cjzl02(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 = []
  var color = ['#00ffff', '#ff3000', '#006ced', '#ffe000', '#ffa800', '#ff5b00', '#ff3000']
  for (var i = 0; i < scaleData.length; i++) {
    data.push({
      value: scaleData[i].value,
      name: scaleData[i].name,
      itemStyle: {
        normal: {
          borderWidth: 5,
          shadowBlur: 20,
          borderColor: color[i],
          shadowColor: [i]
        }
      }
    }
    //   {
    //   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|' + '' + params.value + '}'
            } else {
              return ''
            }
          },
          rich: rich
        },
        labelLine: {
          length: 10,
          length2: 10,
          show: true,
          color: '#00ffff'
        }
      }
    },
    data: data
  }]
  const option = {
    backgroundColor: 'transparent',
    tooltip: {
      show: false
    },
    top: 'middle',
    title: {
      text: title,
      left: '49%',
      top: '45%',
      textAlign: 'center',
      textStyle: {
        color: '#00ffff',
        fontSize: '20',
        fontWeight: 'bolder'
      },
      subtext: scaleData.length > 0 ? scaleData.map(i => parseFloat(i.value)).reduce((pre, curr) => {
        return pre + curr
      }) : [0],
      subtextStyle: {
        color: '#00ffff',
        fontSize: '20',
        fontWeight: 'bolder'
      }
    },
    legend: {
      show: false
    },
    toolbox: {
      show: false
    },
    series: seriesObj
  }
  return option
}
// export function cjzl03() {
// // mock数据
//   const dataArr = {
//     xdata: ['9月4号', '9月5号', '9月6号', '9月7号', '9月8号', '9月9号', '9月10号'],
//     vaccination: [1000, 1300, 1200, 800, 600, 700, 900],
//     unvaccinated: [700, 800, 900, 500, 300, 400, 500],
//     unvaccinatedTwo: [400, 300, 500, 200, 100, 100, 300],
//     rateDataOne: [98, 96, 97, 92, 94, 95, 100],
//     rateDataTwo: [3, 4, 5, 1, 3, 2, 3]
//   }
//
//   // tooltip
//   const tooltip = {
//     trigger: 'axis',
//     textStyle: { fontSize: '100%' },
//     formatter: params => {
//       const rander = params.map(item => item.seriesType !== 'pictorialBar' ? `<div>${item.seriesName}: ${item.seriesType !== 'line' ? item.value : item.value + '%'}</div>` : '').join('')
//       return `
//             <div>${params[0].axisValue}</div>
//             ${rander}
//         `
//     }
//   }
//   const legend = {
//     data: ['任务数', '合格数', '不良数', '合格率', '不良率'],
//     textStyle: { fontSize: 14, color: '#fff' },
//     itemWidth: 25,
//     itemHeight: 15,
//     itemGap: 15,
//     bottom: '5%',
//     selectedMode: false
//   }
//   const grid = {
//     left: '2%',
//     right: '2%',
//     bottom: '20%',
//     top: '10%',
//     containLabel: true
//   }
//   // xAxis
//   const xAxis = {
//     // axisTick: { show: true },
//     // axisLine: { lineStyle: { color: 'rgba(255,255,255, .2)' }},
//     // axisLabel: { textStyle: { fontSize: 12, color: '#fff' }},
//
//     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: dataArr.xdata
//   }
//
//   // yAxis
//   const 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
//     }
//     // axisTick: { show: false },
//     // axisLine: { show: false },
//     // splitLine: { lineStyle: { color: 'rgba(255,255,255, .05)' }},
//     // axisLabel: { textStyle: { fontSize: 16, color: '#fff' }}
//   }, {
//     show: true,
//     max: 100,
//     splitLine: { show: false },
//     axisLine: { show: false },
//     axisTick: { show: false },
//     axisLabel: {
//       textStyle: {
//         fontSize: 14,
//         color: colorY
//       },
//       formatter: params => {
//         return `${params}%`
//       }
//     }
//   }]
//
//   // series
//   const series = [{
//     z: 1,
//     name: '上部1',
//     type: 'pictorialBar',
//     symbolPosition: 'end',
//     data: dataArr.vaccination,
//     symbol: 'diamond',
//     symbolOffset: ['-50%', '-50%'],
//     symbolSize: [29, 19],
//     itemStyle: {
//       borderColor: '#2fffa4',
//       color: '#2fffa4'
//     }
//   },
//   {
//     z: 1,
//     type: 'bar',
//     name: '任务数',
//     barWidth: 30,
//     barGap: '-50%',
//     data: dataArr.vaccination,
//     itemStyle: {
//       color: {
//         type: 'linear',
//         x: 0, x2: 1, y: 0, y2: 0,
//         colorStops: [
//           { offset: 0, color: 'rgba(29, 245, 160, .7)' },
//           { offset: 0.5, color: 'rgba(29, 245, 160, .7)' },
//           { offset: 0.5, color: 'rgba(29, 245, 160, .3)' },
//           { offset: 1, color: 'rgba(29, 245, 160, .3)' }
//         ]
//       }
//     }
//   }, {
//     z: 2,
//     name: '上部1',
//     type: 'pictorialBar',
//     symbolPosition: 'end',
//     data: dataArr.unvaccinated,
//     symbol: 'diamond',
//     symbolOffset: [0, '-50%'],
//     symbolSize: [29, 19],
//     itemStyle: {
//       borderColor: '#32ffee',
//       color: '#32ffee'
//     }
//   },
//   {
//     z: 2,
//     type: 'bar',
//     name: '合格数',
//     barWidth: 30,
//     data: dataArr.unvaccinated,
//     itemStyle: {
//       color: {
//         type: 'linear',
//         x: 0, x2: 1, y: 0, y2: 0,
//         colorStops: [
//           { offset: 0, color: 'rgba(50, 255, 238, .7)' },
//           { offset: 0.5, color: 'rgba(50, 255, 238, .7)' },
//           { offset: 0.5, color: 'rgba(50, 255, 238, .3)' },
//           { offset: 1, color: 'rgba(50, 255, 238, .3)' }
//         ]
//       }
//     }
//   }, {
//     z: 3,
//     name: '上部1',
//     type: 'pictorialBar',
//     symbolPosition: 'end',
//     data: dataArr.unvaccinatedTwo,
//     symbol: 'diamond',
//     symbolOffset: ['50%', '-50%'],
//     symbolSize: [29, 19],
//     itemStyle: {
//       borderColor: '#ffd11a',
//       color: '#ffd11a'
//     }
//   }, {
//     z: 3,
//     type: 'bar',
//     name: '不良数',
//     barWidth: 30,
//     data: dataArr.unvaccinatedTwo,
//     itemStyle: {
//       color: {
//         type: 'linear',
//         x: 0, x2: 1, y: 0, y2: 0,
//         colorStops: [
//           { offset: 0, color: 'rgba(255, 209, 26, .7)' },
//           { offset: 0.5, color: 'rgba(255, 209, 26, .7)' },
//           { offset: 0.5, color: 'rgba(255, 209, 26, .3)' },
//           { offset: 1, color: 'rgba(255, 209, 26, .3)' }
//         ]
//       }
//     }
//   }, {
//     z: 9,
//     yAxisIndex: 1,
//     name: '合格率', type: 'line',
//     // symbol: 'emptyCircle',
//     symbol: `path://M9.312,4.594 C12.074,4.594 14.313,6.832 14.313,9.594 C14.313,12.355 12.074,14.594 9.312,14.594 C6.551,14.594 4.312,12.355 4.312,9.594 C4.312,6.832 6.551,4.594 9.312,4.594 Z`,
//     symbolSize: [10, 10],
//     color: {
//       type: 'linear', x: 1, y: 0, x2: 0, y2: 0,
//       // 0% å¤„的颜色                           // 100% å¤„的颜色
//       colorStops: [{ offset: 0, color: '#32ffee' }, { offset: 1, color: '#8afff5' }],
//       global: false // ç¼ºçœä¸º false
//     },
//     lineStyle: {
//       color: {
//         type: 'linear', x: 1, y: 0, x2: 0, y2: 0,
//         // 0% å¤„的颜色                           // 100% å¤„的颜色
//         colorStops: [{ offset: 0, color: '#32ffee' }, { offset: 1, color: '#8afff5' }],
//         global: false // ç¼ºçœä¸º false
//       }
//     },
//     // ä¿®æ”¹çš„æ˜¯çº¿ä¸‹åŒºåŸŸçš„颜色
//     areaStyle: {
//       color: new echarts.graphic.LinearGradient(
//         // å³/下/å·¦/上
//         0, 0, 0, 1, [
//           { offset: 0, color: 'rgba(50, 255, 238, .1)' },
//           { offset: 1, color: 'transparent' }
//         ])
//     },
//     label: {
//       show: true,
//       position: 'insideBottomLeft',
//       formatter: params => {
//         return `${params.value}%`
//       },
//       textStyle: { fontSize: 14, color: '#32ffee' }
//     },
//     data: dataArr.rateDataOne
//   }, {
//     z: 9,
//     yAxisIndex: 1,
//     name: '不良率', type: 'line',
//     symbol: `path://M9.312,4.594 C12.074,4.594 14.313,6.832 14.313,9.594 C14.313,12.355 12.074,14.594 9.312,14.594 C6.551,14.594 4.312,12.355 4.312,9.594 C4.312,6.832 6.551,4.594 9.312,4.594 Z`,
//     // symbol: 'emptyCircle',
//     symbolSize: [10, 10],
//     color: {
//       type: 'linear', x: 1, y: 0, x2: 0, y2: 0,
//       // 0% å¤„的颜色                           // 100% å¤„的颜色
//       colorStops: [{ offset: 0, color: colorX }, { offset: 1, color: '#fff5cc' }],
//       global: false // ç¼ºçœä¸º false
//     },
//     lineStyle: {
//       color: {
//         type: 'linear', x: 1, y: 0, x2: 0, y2: 0,
//         // 0% å¤„的颜色                           // 100% å¤„的颜色
//         colorStops: [{ offset: 0, color: colorX }, { offset: 1, color: '#fff5cc' }],
//         global: false // ç¼ºçœä¸º false
//       }
//     },
//     // ä¿®æ”¹çš„æ˜¯çº¿ä¸‹åŒºåŸŸçš„颜色
//     areaStyle: {
//       color: new echarts.graphic.LinearGradient(
//         // å³/下/å·¦/上
//         0, 0, 0, 1, [
//           { offset: 0, color: 'rgba(255, 209, 26, .2)' },
//           { offset: 1, color: 'transparent' }
//         ])
//     },
//     label: {
//       show: true,
//       position: 'insideBottomRight',
//       formatter: params => {
//         return `${params.value}%`
//       },
//       // textStyle: { fontSize: 14, color: '#ffd11a' }
//       textStyle: { fontSize: 14, color: colorX }
//     },
//     data: dataArr.rateDataTwo
//   }]
//   // const option = { tooltip, xAxis, yAxis, series, grid, legend, backgroundColor: 'rgba(0, 0, 0, .7)' }
//   const option = { xAxis, yAxis, series, grid, legend, backgroundColor: 'transparent' }
//   return option
// }
export function cjzl04() {
  return {
    backgroundColor: 'transparent',
    tooltip: {},
    // title: {
    //   text: '订单完成总数',
    //   left: '50%',
    //   top: '5%',
    //   textAlign: 'center',
    //   textStyle: {
    //     // color: '#fff',
    //     color: '#00ffff',
    //     fontSize: '20',
    //     fontWeight: 'bolder'
    //   }
    // },
    grid: {
      left: '2%',
      right: '2%',
      bottom: '20%',
      top: '10%',
      containLabel: true
    },
    legend: {
      // show: true,
      // itemGap: 20,
      // data: ['注册总量', '最新注册量'],
      // textStyle: {
      //   color: '#f9f9f9',
      //   borderColor: '#fff'
      // }
      data: ['精工车间', '装配车间', '机加工车间', '抛光车间', '打磨车间'],
      textStyle: { fontSize: 14, color: '#fff' },
      itemWidth: 25,
      itemHeight: 10,
      itemGap: 15,
      bottom: '5%',
      selectedMode: false
    },
    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: ['9月4号', '9月5号', '9月6号', '9月7号', '9月8号', '9月9号', '9月10号']
    }],
    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: `rgb(71, 226, 194)` // çº¿æ¡é¢œè‰²
          },
          borderColor: `rgb(71, 226, 194)`
        },
        // label: {
        //   show: true,
        //   position: 'top',
        //   textStyle: {
        //     color: '#fff'
        //   }
        // },
        itemStyle: {
          normal: {
            color: `rgb(71, 226, 194)`
          }
        },
        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), 600 + Math.floor(Math.random() * 100)]
      },
      {
        name: '装配车间',
        type: 'line',
        // smooth: true, //是否平滑曲线显示
        //             symbol:'circle',  // é»˜è®¤æ˜¯ç©ºå¿ƒåœ†ï¼ˆä¸­é—´æ˜¯ç™½è‰²çš„),改成实心圆
        showAllSymbol: true,
        symbol: 'emptyCircle',
        symbolSize: 6,
        lineStyle: {
          normal: {
            color: '#32ffee' // çº¿æ¡é¢œè‰²
          },
          borderColor: '#32ffee'
        },
        // label: {
        //   show: true,
        //   position: 'top',
        //   textStyle: {
        //     color: '#fff'
        //   }
        // },
        itemStyle: {
          normal: {
            color: '#32ffee'
          }
        },
        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: [10, 102, 30, 203, 40, 20, 405]
      },
      {
        name: '机加工车间',
        type: 'line',
        // smooth: true, //是否平滑曲线显示
        //             symbol:'circle',  // é»˜è®¤æ˜¯ç©ºå¿ƒåœ†ï¼ˆä¸­é—´æ˜¯ç™½è‰²çš„),改成实心圆
        showAllSymbol: true,
        symbol: 'emptyCircle',
        symbolSize: 6,
        lineStyle: {
          normal: {
            color: '#ffd11a' // çº¿æ¡é¢œè‰²
          },
          borderColor: '#ffd11a'
        },
        // label: {
        //   show: true,
        //   position: 'top',
        //   textStyle: {
        //     color: '#fff'
        //   }
        // },
        itemStyle: {
          normal: {
            color: '#ffd11a'
          }
        },
        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: [93, 48, 45, 61, 89, 84, 97]
        // 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), 600 + Math.floor(Math.random() * 100)]
      },
      {
        name: '抛光车间',
        type: 'line',
        // smooth: true, //是否平滑曲线显示
        //             symbol:'circle',  // é»˜è®¤æ˜¯ç©ºå¿ƒåœ†ï¼ˆä¸­é—´æ˜¯ç™½è‰²çš„),改成实心圆
        showAllSymbol: true,
        symbol: 'emptyCircle',
        symbolSize: 6,
        lineStyle: {
          normal: {
            color: `rgb(254, 94, 94)` // çº¿æ¡é¢œè‰²
          },
          borderColor: `rgb(254, 94, 94)`
        },
        // label: {
        //   show: true,
        //   position: 'top',
        //   textStyle: {
        //     color: '#fff'
        //   }
        // },
        itemStyle: {
          normal: {
            color: `rgb(254, 94, 94)`
          }
        },
        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: [33, 438, 48, 63, 69, 82, 487]
        // 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), 600 + Math.floor(Math.random() * 100)]
      },
      {
        name: '打磨车间',
        type: 'line',
        // smooth: true, //是否平滑曲线显示
        //             symbol:'circle',  // é»˜è®¤æ˜¯ç©ºå¿ƒåœ†ï¼ˆä¸­é—´æ˜¯ç™½è‰²çš„),改成实心圆
        showAllSymbol: true,
        symbol: 'emptyCircle',
        symbolSize: 6,
        lineStyle: {
          normal: {
            color: `rgb(255, 221, 97)` // çº¿æ¡é¢œè‰²
          },
          borderColor: `rgb(255, 221, 97)`
        },
        // label: {
        //   show: true,
        //   position: 'top',
        //   textStyle: {
        //     color: '#fff'
        //   }
        // },
        itemStyle: {
          normal: {
            color: `rgb(255, 221, 97)`
          }
        },
        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: [93, 38, 85, 666, 555, 444, 333]
        // 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), 600 + Math.floor(Math.random() * 100)]
      }
    ]
  }
}
// export function cjzl03() {
//   const option = {
//     backgroundColor: 'transparent',
//     grid: {
//       left: '2%',
//       top: '10%',
//       right: '2%',
//       bottom: '20%',
//       containLabel: true
//     },
//     legend: {
//       // show: true,
//       // itemGap: 20,
//       // data: ['注册总量', '最新注册量'],
//       // textStyle: {
//       //   color: '#f9f9f9',
//       //   borderColor: '#fff'
//       // }
//       data: ['完成数', '完成率'],
//       textStyle: { fontSize: 14, color: '#fff' },
//       itemWidth: 25,
//       itemHeight: 10,
//       itemGap: 15,
//       bottom: '5%',
//       selectedMode: false
//     },
//     // 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'
//     //   },
//     //   // formatter:'{b0}<br />{a0}:{c0}<br />{a1}:{c4}%'
//     //
//     //   // formatter: '{b0}<br/>' +
//     //   //   '<span style="display:inline-block;margin-right:5px;border-radius:10px;width:9px;height:9px;background-color:rgb(255,224,144)"></span>提出再审检察建议数:{c0}<br/>' +
//     //   //   '<span style="display:inline-block;margin-right:5px;border-radius:10px;width:9px;height:9px;background-color:rgb(72,226,198)"></span>采纳率:{c4}%<br/>'
//     //
//     //   formatter: function(params) {
//     //     var res = '' + params[0].name
//     //     var valueMap = new Map()
//     //     for (var i = 0, l = params.length; i < l; i++) {
//     //       if (params[i].value !== '-') {
//     //         valueMap.set(params[i].seriesName, params[i])
//     //       }
//     //     }
//     //     valueMap.forEach((value, key) => {
//     //       if (value.seriesName === '提出再审检察建议数') {
//     //         res += '<br/>' + value.marker + value.seriesName + ' : ' + value.value
//     //       } else if (value.seriesName === '采纳率' && value.value !== '-') {
//     //         res += '<br/>' + value.marker + value.seriesName + ' : ' + value.value
//     //       }
//     //     })
//     //     return res
//     //   }
//     //
//     // },
//     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: ['精工车间', '机加工车间', '车船车间', '粗车车间', '车船车间']
//     },
//     yAxis: [
//       {
//         boundaryGap: false,
//         // splitNumber: 4,
//         type: 'value',
//         // max: 100,
//         axisLabel: {
//           textStyle: {
//             fontSize: 14,
//             color: colorY
//           }
//         },
//         nameTextStyle: {
//           color: '#fff',
//           fontSize: 14,
//           lineHeight: 40
//         },
//         splitLine: {
//           show: true,
//           lineStyle: {
//             color: '#032c58'
//           }
//         },
//         axisLine: {
//           show: true,
//           lineStyle: {
//             color: '#032c58'
//           }
//         },
//         axisTick: {
//           show: false
//         }
//       },
//       {
//         boundaryGap: false,
//         splitNumber: 4,
//         type: 'value',
//         axisLabel: {
//           textStyle: {
//             fontSize: 14,
//             color: colorY
//           }
//         },
//         nameTextStyle: {
//           color: '#fff',
//           fontSize: 14,
//           lineHeight: 40
//         },
//         splitLine: {
//           lineStyle: {
//             color: '#032c58'
//           }
//         },
//         axisLine: {
//           show: false,
//           lineStyle: {
//             color: '#032c58'
//           }
//         },
//         axisTick: {
//           show: false
//         }
//       }
//     ],
//     series: [
//       {
//         name: '完成数',
//         type: 'bar',
//         yAxisIndex: 0,
//         showSymbol: true,
//         showAllSymbol: true,
//         symbolSize: 4,
//         barWidth: 14,
//         zlevel: 1,
//         itemStyle: {
//           color: {
//             type: 'linear',
//             x: 0,
//             y: 0,
//             x2: 0,
//             y2: 1,
//             colorStops: [{
//               offset: 0,
//               color: `rgba(255,224,144,1)` // 0% å¤„的颜色
//             }, {
//               offset: 1,
//               color: `rgba(72,226,198,1)` // 100% å¤„的颜色
//             }]
//           }
//         },
//         label: {
//           show: false,
//           position: 'top',
//           distance: 10,
//           fontSize: 16,
//           fontFamily: 'DIN',
//           color: '#ffffff',
//           zlevel: 4,
//           z: 10,
//           formatter: '{c}%'
//         },
//         data: [560, 760, 850, 490, 380]
//       },
//       {
//         // å€¼åˆ†éš”
//         type: 'pictorialBar',
//         itemStyle: {
//           normal: {
//             color: '#0F375F'
//           }
//         },
//         symbolRepeat: 'fixed',
//         symbolMargin: 3,
//         symbol: 'rect',
//         symbolClip: true,
//         symbolSize: [14, 3],
//         symbolPosition: 'start',
//         symbolOffset: [0, -1],
//         // symbolBoundingData: this.total,
//         // data: [100, 100, 100, 100, 100],
//         data: [1000, 1000, 1000, 1000, 1000],
//         width: 25,
//         z: 0,
//         zlevel: 2
//       },
//       {
//         // è¾…助背景图形
//         name: '任务数',
//         type: 'bar', // pictorialBar
//         barWidth: '14',
//         barGap: '-100%',
//         itemStyle: {
//           normal: {
//             borderWidth: 0,
//             // color: 'rgba(146,158,48,0)'
//             color: 'rgba(146,158,48,0)'
//           },
//           barBorderRadius: 10
//         },
//         data: [800, 900, 1000, 600, 700],
//         z: 0,
//         zlevel: 0
//       },
//       {
//         name: '完成率',
//         type: 'line',
//         yAxisIndex: 1,
//         showSymbol: true,
//         showAllSymbol: true,
//         symbolSize: 6,
//         barWidth: 14,
//         zlevel: 3,
//         lineStyle: {
//           normal: {
//             width: 2,
//             color: `rgba(72,226,198)`
//           }
//         },
//         areaStyle: {
//           normal: {
//             color: {
//               type: 'linear',
//               x: 0,
//               y: 0,
//               x2: 0,
//               y2: 1,
//               colorStops: [
//                 {
//                   offset: 0,
//                   color: `rgba(72,226,198, 0.3)`// 0% å¤„的颜色
//                 },
//                 {
//                   offset: 1,
//                   color: `rgba(72,226,198, 0.2)` // 100% å¤„的颜色
//                 }
//               ],
//               globalCoord: false // ç¼ºçœä¸º false
//             } // æ¸å˜é¢œè‰²
//           }
//         },
//         itemStyle: {
//           normal: {
//             color: {
//               type: 'linear',
//               x: 0,
//               y: 0,
//               x2: 0,
//               y2: 1,
//               colorStops: [
//                 {
//                   offset: 0,
//                   color: `rgba(72,226,198, 1)`// 0% å¤„的颜色
//                 },
//                 {
//                   offset: 1,
//                   color: `rgba(72,226,198, 0.2)` // 100% å¤„的颜色
//                 }
//               ],
//               globalCoord: false // ç¼ºçœä¸º false
//             } // æ¸å˜é¢œè‰²
//           }
//         },
//         data: [70, 80, 90, 20, 30]
//       }
//     ]
//   }
//   return option
// }
export function cjzl03() {
  const data1 = [300, 100, 200, 200, 100]
  const data2 = [300, 200, 300, 300, 400]
  // let percent=[]
  const option = {
    backgroundColor: 'transparent',
    grid: {
      left: '2%',
      top: '10%',
      right: '2%',
      bottom: '20%',
      containLabel: true
    },
    legend: {
      // show: true,
      // itemGap: 20,
      // data: ['注册总量', '最新注册量'],
      // textStyle: {
      //   color: '#f9f9f9',
      //   borderColor: '#fff'
      // }
      data: ['完成数', '任务数', '完成率'],
      textStyle: { fontSize: 14, color: '#fff' },
      itemWidth: 25,
      itemHeight: 10,
      itemGap: 15,
      bottom: '5%',
      selectedMode: false
    },
    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: ['精工车间', '机加工车间', '装配车间', '粗车车间', '包装车间']
    },
    yAxis: [
      {
        boundaryGap: false,
        // splitNumber: 4,
        type: 'value',
        // max: 100,
        axisLabel: {
          textStyle: {
            fontSize: 14,
            color: colorY
          }
        },
        nameTextStyle: {
          color: '#fff',
          fontSize: 14,
          lineHeight: 40
        },
        splitLine: {
          show: true,
          lineStyle: {
            color: '#032c58'
          }
        },
        axisLine: {
          show: true,
          lineStyle: {
            color: '#032c58'
          }
        },
        axisTick: {
          show: false
        }
      },
      {
        boundaryGap: false,
        // splitNumber: 4,
        max: 100,
        type: 'value',
        axisLabel: {
          textStyle: {
            fontSize: 14,
            color: colorY
          }
        },
        nameTextStyle: {
          color: '#fff',
          fontSize: 14,
          lineHeight: 40
        },
        splitLine: {
          show: false,
          lineStyle: {
            color: '#032c58'
          }
        },
        axisLine: {
          show: false,
          lineStyle: {
            color: '#032c58'
          }
        },
        axisTick: {
          show: false
        }
      }
    ],
    series: [
      { // ä¸‰ä¸ªæœ€åº•下的圆片
        'name': '',
        'type': 'pictorialBar',
        'symbolSize': [45, 25],
        'symbolOffset': [0, 10],
        'z': 12,
        itemStyle: {
          opacity: 1,
          color: function(params) {
            return new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
              offset: 0,
              color: '#00EC28' // 0% å¤„的颜色
            }, {
              offset: 1,
              color: '#5DF076'// 100% å¤„的颜色
            }], false)
          }
          // color: function(params) {
          //   var a = params.name.slice(0, 2)
          //   if (a === '精工') {
          //     return new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
          //       offset: 0,
          //       color: '#FF9A22' // 0% å¤„的颜色
          //     }, {
          //       offset: 1,
          //       color: '#FFD56E'// 100% å¤„的颜色
          //     }], false)
          //   } else if (a === '机加' || a === '粗车') {
          //     return new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
          //       offset: 0,
          //       color: '#00EC28' // 0% å¤„的颜色
          //     }, {
          //       offset: 1,
          //       color: '#5DF076'// 100% å¤„的颜色
          //     }], false)
          //   } else if (a === '装配' || a === '包装') {
          //     return new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
          //       offset: 0,
          //       color: '#12B9DB' // 0% å¤„的颜色
          //     }, {
          //       offset: 1,
          //       color: '#6F8EF2'// 100% å¤„的颜色
          //     }], false)
          //   }
          // }
        },
        'data': [1, 1, 1, 1, 1]
      },
      // ä¸‹åŠæˆªæŸ±çж图
      {
        name: '完成数',
        type: 'bar',
        barWidth: 45,
        barGap: '-100%',
        itemStyle: { // lenged文本
          opacity: 0.7,
          color: function(params) {
            return new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
              offset: 0,
              color: '#00EC28' // 0% å¤„的颜色
            }, {
              offset: 1,
              color: '#5DF076'// 100% å¤„的颜色
            }], false)
          }
        },
        data: data1
      },
      { // æ›¿ä»£æŸ±çж图 é»˜è®¤ä¸æ˜¾ç¤ºé¢œè‰²ï¼Œæ˜¯æœ€ä¸‹æ–¹æŸ±å›¾ï¼ˆé‚®ä»¶è¥é”€ï¼‰çš„value值 - 20
        type: 'bar',
        barWidth: 45,
        barGap: '-100%',
        stack: '广告',
        itemStyle: {
          color: 'transparent'
        },
        label: {
          normal: {
            show: true,
            position: 'left',
            fontSize: 14,
            color: colorX,
            // offset: [-50, 15],
            zIndex: 10
          }
        },
        data: data1
      },
      {
        'name': '', // å¤´éƒ¨
        'type': 'pictorialBar',
        'symbolSize': [45, 25],
        'symbolOffset': [0, -10],
        'z': 12,
        'symbolPosition': 'end',
        itemStyle: {
          color: '#163F7A',
          opacity: 1
        },
        'data': data2
      },
      {
        'name': '',
        'type': 'pictorialBar',
        'symbolSize': [45, 25],
        'symbolOffset': [0, -10],
        'z': 12,
        itemStyle: {
          opacity: 1,
          color: function(params) {
            return new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
              offset: 0,
              color: '#00EC28' // 0% å¤„的颜色
            }, {
              offset: 1,
              color: '#5DF076'// 100% å¤„的颜色
            }], false)
          }
        },
        'symbolPosition': 'end',
        'data': data1
      },
      {
        name: '任务数',
        type: 'bar',
        barWidth: 45,
        barGap: '-100%',
        z: 0,
        itemStyle: {
          color: '#163F7A',
          opacity: 0.7
        },
        label: {
          normal: {
            show: true,
            position: 'top',
            fontSize: 14,
            color: colorX,
            offset: [0, -5]
          }
        },
        data: data2
      },
      {
        name: '完成率',
        type: 'line',
        yAxisIndex: 1,
        showSymbol: true,
        showAllSymbol: true,
        symbolSize: 6,
        barWidth: 14,
        zlevel: 3,
        lineStyle: {
          normal: {
            width: 2,
            color: `rgba(72, 226, 198)`
          }
        },
        // areaStyle: {
        //   normal: {
        //     color: {
        //       type: 'linear',
        //       x: 0,
        //       y: 0,
        //       x2: 0,
        //       y2: 1,
        //       colorStops: [
        //         {
        //           offset: 0,
        //           color: `rgba(72,226,198, 0.3)`// 0% å¤„的颜色
        //         },
        //         {
        //           offset: 1,
        //           color: `rgba(72,226,198, 0.2)` // 100% å¤„的颜色
        //         }
        //       ],
        //       globalCoord: false // ç¼ºçœä¸º false
        //     } // æ¸å˜é¢œè‰²
        //   }
        // },
        itemStyle: {
          normal: {
            color: {
              type: 'linear',
              x: 0,
              y: 0,
              x2: 0,
              y2: 1,
              colorStops: [
                {
                  offset: 0,
                  color: `rgba(72, 226, 198, 1)`// 0% å¤„的颜色
                },
                {
                  offset: 1,
                  color: `rgba(72, 226, 198, 0.2)` // 100% å¤„的颜色
                }
              ],
              globalCoord: false // ç¼ºçœä¸º false
            } // æ¸å˜é¢œè‰²
          }
        },
        label: {
          normal: {
            show: true,
            position: 'top',
            fontSize: 14,
            color: colorX,
            formatter: params => {
              return `${params.value}%`
            }
            // offset: [0, -5]
          }
        },
        data: [100, 50, 66.7, 66.7, 25]
      }
    ]
  }
  return option
}
src/views/kanbanManager/cjzl.vue
@@ -1,404 +1,401 @@
<!--<template>-->
<!--  <div>-->
<!--    <div class="kb_dashboard">-->
<template>
  <div>
    <div class="kb_dashboard" style="display:flex;flex-direction: column;justify-content: space-between">
<!--      &lt;!&ndash;    æ˜Ÿç©ºèƒŒæ™¯&ndash;&gt;-->
      <!--    æ˜Ÿç©ºèƒŒæ™¯-->
<!--      <div ref="starsRef" class="stars">-->
<!--        <div v-for="(item, index) in starsCount" :key="index" class="star" />-->
<!--      </div>-->
<!--      <div class="kb_header">-->
<!--        <div class="flex_c_c kb_header_text">-->
<!--          <div id="topBarLeft" style="width:600px;height:100%" />-->
<!--          è½¦é—´è´¨é‡æ•°å­—化看板-->
<!--          <div id="topBarRight" style="width:600px;height:100%;transform:rotate(180deg);" />-->
<!--        </div>-->
<!--        <div class="kb_headTime">-->
<!--          <span>{{ headTime }}</span>-->
<!--        </div>-->
<!--      </div>-->
<!--      <div style="display: flex;justify-content: space-between;padding:0 20px 20px 20px">-->
<!--        &lt;!&ndash;        å·¦è¾¹éƒ¨åˆ†&ndash;&gt;-->
<!--        <div style="width: 470px;height: 969px;" class="flex_c_b">-->
<!--          <div>-->
<!--            <div class="smallTitle">-->
<!--              <svg-icon icon-class="top5" class="svg_class" />-->
<!--              Top5不良-->
<!--            </div>-->
<!--            <div class="lineContent horn">-->
<!--              <div id="bar01" class="flex_c_c" style="width: 100%;height:100%" />-->
<!--            </div>-->
<!--          </div>-->
<!--          <div>-->
<!--            <div class="smallTitle">-->
<!--              <svg-icon icon-class="bll" class="svg_class" style="font-size: 30px" />-->
<!--              å‘¨ä¸è‰¯è¶‹åŠ¿-->
<!--            </div>-->
<!--            <div class="lineContent horn">-->
<!--              <div id="line01" class="flex_c_c" style="width: 100%;height:100%" />-->
<!--            </div>-->
      <div class="kb_header">
        <div class="flex_c_c kb_header_text">
          <div id="topBarLeft" style="width:600px;height:100%" />
          è½¦é—´è´¨é‡æ•°å­—化看板
          <div id="topBarRight" style="width:600px;height:100%;transform:rotate(180deg);" />
        </div>
<!--          </div>-->
<!--        </div>-->
<!--        &lt;!&ndash;        ä¸­é—´éƒ¨åˆ†&ndash;&gt;-->
<!--        <div>-->
<!--          <div class="smallTitle">-->
<!--            <svg-icon icon-class="blmx" class="svg_class" />-->
<!--            ä¸è‰¯æ˜Žç»†-->
<!--          </div>-->
<!--          <div class="lineContentCenter horn">-->
<!--            <el-table-->
<!--              ref="tableDataLeftCenterRef"-->
<!--              :data="tableDataCenterTop"-->
<!--              class="tableData tableDataCell"-->
<!--              style="width: 100%;"-->
<!--              :header-cell-style="headerCellStyleCenter"-->
<!--              :cell-style="cellStyleCenter"-->
<!--              height="927"-->
<!--            >-->
<!--              <el-table-column-->
<!--                prop="lm_date"-->
<!--                label="日期"-->
<!--                width="100"-->
<!--              >-->
<!--                <template slot-scope="{row}">-->
<!--                  <div-->
<!--                    v-if="row.lm_date"-->
<!--                  >-->
<!--                    {{ row.lm_date.substring(0,11) }}-->
<!--                  </div>-->
<!--                  <div v-else />-->
<!--                </template>-->
<!--              </el-table-column>-->
<!--              <el-table-column-->
<!--                prop="eqp_name"-->
<!--                width="80"-->
<!--                label="产线名称"-->
<!--              >-->
<!--                <template slot-scope="{row}">-->
<!--                  <div>{{ row.eqp_name }}</div>-->
<!--                </template>-->
<!--              </el-table-column>-->
<!--              <el-table-column-->
<!--                prop="wo_code"-->
<!--                label="生产单号"-->
<!--                width="173"-->
<!--              >-->
<!--                <template slot-scope="{row}">-->
<!--                  <div style="color: #00FFFF">{{ row.wo_code }}</div>-->
<!--                </template>-->
<!--              </el-table-column>-->
        <div class="kb_headTime" style="left: 85px">
          <span>浙江新凯迪数字科技股份有限公司</span>
        </div>
<!--              <el-table-column-->
<!--                prop="partname"-->
<!--                width="190"-->
<!--                label="产品名称"-->
<!--              >-->
<!--                <template slot-scope="{row}">-->
<!--                  <div class="ellipsis">{{ row.partname }}</div>-->
<!--                </template>-->
<!--              </el-table-column>-->
<!--              <el-table-column-->
<!--                prop="defect_name"-->
<!--                label="不良原因"-->
<!--                width="120"-->
<!--              >-->
<!--                <template slot-scope="{row}">-->
<!--                  <div style="color:#ff0000;" class="ellipsis">{{ row.defect_name }}</div>-->
<!--                </template>-->
<!--              </el-table-column>-->
<!--              <el-table-column-->
<!--                prop="ng_qty"-->
<!--                label="不良数量"-->
<!--                width="77"-->
<!--              />-->
<!--              <el-table-column-->
<!--                prop="report_qty"-->
<!--                label="报工数量"-->
<!--                width="77"-->
<!--              />-->
<!--              <el-table-column-->
<!--                label="不良占比"-->
<!--                width="77"-->
<!--              >-->
<!--                <template slot-scope="{row}">-->
<!--                  <div>{{ parseFloat((row.ng_qty*100/(row.ng_qty+row.report_qty)).toFixed(2)) }}%</div>-->
<!--                </template>-->
<!--              </el-table-column>-->
        <div class="kb_headTime">
          <span>{{ headTime }}</span>
        </div>
      </div>
      <div style=" padding:5px 20px 20px 20px;height: 980px;flex-direction: column;justify-content: space-between">
        <!--         ä¸Šé¢éƒ¨åˆ†-->
        <div>
          <div class="smallTitle">
            <svg-icon icon-class="blcs" class="svg_class" />
            æ—¥ä¸è‰¯æ¬¡æ•°
          </div>
          <div class="lineContent horn" style="height: 250px;display: flex;justify-content: space-between">
            <div id="cjzl01" class="flex_c_c" style="width: 300px;height:100%" />
            <div id="cjzl02_1" class="flex_c_c" style="width: 300px;height:100%" />
            <div id="cjzl02_2" class="flex_c_c" style="width: 300px;height:100%" />
            <div id="cjzl02_3" class="flex_c_c" style="width: 300px;height:100%" />
            <div id="cjzl02_4" class="flex_c_c" style="width: 300px;height:100%" />
            <div id="cjzl02_5" class="flex_c_c" style="width: 300px;height:100%" />
          </div>
        </div>
        <!--        ä¸­é—´éƒ¨åˆ†-->
        <div style="display: flex;justify-content: space-between;margin-top: 20px">
          <div>
            <div class="smallTitle">
              <svg-icon icon-class="zbls" class="svg_class" />
              å‘¨ä¸è‰¯æ•°
            </div>
            <div class="lineContent horn" style="height: 250px;display: flex;justify-content: space-between">
              <div id="cjzl04" class="flex_c_c" style="width: 920px;height:100%" />
            </div>
          </div>
          <div>
            <div class="smallTitle">
              <svg-icon icon-class="zwcs" class="svg_class" />
              å‘¨å®Œæˆæ•°ï¼ˆçŽ‡ï¼‰
            </div>
            <div class="lineContent horn" style="height: 250px;display: flex;justify-content: space-between">
              <div id="cjzl03" class="flex_c_c" style="width: 920px;height:100%" />
            </div>
          </div>
<!--            </el-table>-->
<!--          </div>-->
<!--        </div>-->
<!--        &lt;!&ndash;        å³è¾¹éƒ¨åˆ†&ndash;&gt;-->
<!--        <div style="width: 470px;height: 969px;" class="flex_c_b">-->
<!--          <div>-->
<!--            <div class="smallTitle">-->
<!--              <svg-icon icon-class="rbl" class="svg_class" style="font-size: 28px" />-->
<!--              æ—¥ä¸è‰¯åˆ†å¸ƒ-->
<!--            </div>-->
<!--            <div class="lineContent horn">-->
<!--              <div id="bar02" class="flex_c_c" style="width: 100%;height:100%" />-->
<!--            </div>-->
<!--          </div>-->
<!--          <div>-->
<!--            <div class="smallTitle">-->
<!--              <svg-icon icon-class="zbl" class="svg_class" style="font-size: 28px" />-->
<!--              å‘¨ä¸è‰¯åˆ†å¸ƒ-->
<!--            </div>-->
<!--            <div class="lineContent horn">-->
<!--              <div id="pie01" class="flex_c_c" style="width: 100%;height:100%" />-->
<!--            </div>-->
        </div>
        <!--        ä¸‹é¢éƒ¨åˆ†-->
        <div style="margin-top: 20px">
          <div class="smallTitle">
            <svg-icon icon-class="cjrw" class="svg_class" />
            è½¦é—´ä»»åŠ¡å®Œæˆæƒ…å†µ
          </div>
          <div class="lineContent horn" style="height: 310px;display: flex;justify-content: space-between">
            <el-table
              ref="tableDataRightTopRef"
              :data="tableDataRightTop"
              class="tableData"
              style="width: 100%;"
              :header-cell-style="headerCellStyle"
              :cell-style="cellStyle"
            >
              <!--              height=""-->
              <el-table-column
                type="index"
                label="序号"
                width="60"
              />
              <el-table-column
                prop="cjmc"
                width="220"
                label="车间名称"
              />
              <el-table-column
                prop="gdh"
                width="280"
                label="工单号"
              />
              <el-table-column
                prop="cpmc"
                width="280"
                label="产品名称"
              />
              <el-table-column
                prop="cpgg"
                width="280"
                label="产品规格"
              />
              <el-table-column
                prop="rwsl"
                width="220"
                label="任务数"
              />
              <el-table-column
                prop="hgsl"
                width="220"
                label="合格数量"
              />
              <el-table-column
                prop="blsl"
                width="314"
                label="不良数量"
              />
            </el-table>
          </div>
        </div>
      </div>
    </div>
  </div>
</template>
<!--          </div>-->
<!--        </div>-->
<!--      </div>-->
<!--    </div>-->
<!--  </div>-->
<!--</template>-->
<script>
import './kbCommon.css'
import { cjzl01, cjzl02, cjzl03, cjzl04, kbTop, loadEcharts } from '@/utils/myEcharts'
import { QCBadCenterLeftWeek, QCBadCenterRightWeek, QCBadTop, ShopSearch } from '@/api/kanbanManager'
<!--<script>-->
<!--import './kbCommon.css'-->
<!--import { bar02, bar04, kbTop, line02, loadEcharts, pie02 } from '@/utils/myEcharts'-->
<!--import { BadContManger, BadDayDistriBute, BadTop5, BadWeek, BadWeekDistriBute } from '@/api/dzkb'-->
export default {
  name: 'Cjsc',
  data() {
    return {
      headTime: '',
      tableDataRightTop: [
        { cjmc: '精工车间', gdh: 'MO2023-09-12', cpmc: '电池包1', cpgg: '23款手动精模', rwsl: '1000', hgsl: '900', blsl: '100' },
        { cjmc: '装配车间', gdh: 'MO2023-09-12', cpmc: '电池包1', cpgg: '23款手动精模', rwsl: '1000', hgsl: '900', blsl: '100' },
        { cjmc: '精工车间', gdh: 'MO2023-09-12', cpmc: '电池包1', cpgg: '23款手动精模', rwsl: '1000', hgsl: '900', blsl: '100' },
        { cjmc: '装配车间', gdh: 'MO2023-09-12', cpmc: '电池包1', cpgg: '23款手动精模', rwsl: '1000', hgsl: '900', blsl: '100' },
        { cjmc: '机加工车间', gdh: 'MO2023-09-12', cpmc: '电池包1', cpgg: '23款手动精模#30', rwsl: '1000', hgsl: '900', blsl: '100' },
        { cjmc: '机加工车间', gdh: 'MO2023-09-12', cpmc: '电池包1', cpgg: '23款手动精模#30', rwsl: '1000', hgsl: '900', blsl: '100' },
        { cjmc: '机加工车间', gdh: 'MO2023-09-12', cpmc: '电池包1', cpgg: '23款手动精模#30', rwsl: '1000', hgsl: '900', blsl: '100' },
        { cjmc: '机加工车间', gdh: 'MO2023-09-12', cpmc: '电池包1', cpgg: '23款手动精模#30', rwsl: '1000', hgsl: '900', blsl: '100' },
        { cjmc: '机加工车间', gdh: 'MO2023-09-12', cpmc: '电池包1', cpgg: '23款手动精模#30', rwsl: '1000', hgsl: '900', blsl: '100' }
      ],
      wkshopArr: [],
<!--export default {-->
<!--  name: 'Cjsc',-->
<!--  data() {-->
<!--    return {-->
<!--      headTime: '',-->
      cjzl01Data: [],
      cjzl02_1Title: '',
      cjzl02_1Data: [],
      cjzl02_2Title: '',
      cjzl02_21Data: [],
      cjzl02_3Title: '',
      cjzl02_3Data: [],
      cjzl02_4Title: '',
      cjzl02_4Data: [],
      cjzl02_5Title: '',
      cjzl02_5Data: [],
      starsCount: 800, // æ˜Ÿæ˜Ÿæ•°é‡
      distance: 900 // é—´è·
    }
  },
  created() {
    setInterval(this.getNowTime, 1000)
<!--      tableDataCenterTop: [],-->
<!--      tableDataCenterTopTemp: [],-->
    // ä¸¤å°æ—¶çœ‹æ¿åˆ·æ–°ä¸€æ¬¡
    setInterval(() => {
      window.location.reload()
    }, 1000 * 60 * 120)
  },
  mounted() {
    this.getTopBar()
<!--      StepCode: '02',-->
    this.getAllApi()
<!--      starsCount: 800, // æ˜Ÿæ˜Ÿæ•°é‡-->
<!--      distance: 900 // é—´è·-->
<!--    }-->
<!--  },-->
<!--  created() {-->
<!--    setInterval(this.getNowTime, 1000)-->
    // this.setStarsRef()
  },
  methods: {
    async getAllApi() {
      const { data: res } = await ShopSearch()
      this.wkshopArr = res
      const temp = ['001', 'CJ001', '006', 'ZS001', '002']
      const { data: res2 } = await QCBadTop({ wkshopcode: temp.join(',') })
      for (const res2Key in res2) {
        if (res2Key === 'ALL') {
          this.cjzl01Data = res2[res2Key].map(i => {
            return {
              name: i.name,
              value: i.cont
            }
          })
        }
        if (res2Key === temp[0]) {
          this.cjzl02_1Title = this.wkshopArr.find(i => i.org_code === res2Key).org_name
          this.cjzl02_1Data = res2[res2Key].map(i => {
            return {
              name: i.name,
              value: i.cont
            }
          })
        }
        if (res2Key === temp[1]) {
          this.cjzl02_2Title = this.wkshopArr.find(i => i.org_code === res2Key).org_name
          this.cjzl02_2Data = res2[res2Key].map(i => {
            return {
              name: i.name,
              value: i.cont
            }
          })
        }
        if (res2Key === temp[2]) {
          this.cjzl02_3Title = this.wkshopArr.find(i => i.org_code === res2Key).org_name
          this.cjzl02_3Data = res2[res2Key].map(i => {
            return {
              name: i.name,
              value: i.cont
            }
          })
        }
        if (res2Key === temp[3]) {
          this.cjzl02_4Title = this.wkshopArr.find(i => i.org_code === res2Key).org_name
          this.cjzl02_4Data = res2[res2Key].map(i => {
            return {
              name: i.name,
              value: i.cont
            }
          })
        }
        if (res2Key === temp[4]) {
          this.cjzl02_5Title = this.wkshopArr.find(i => i.org_code === res2Key).org_name
          this.cjzl02_5Data = res2[res2Key].map(i => {
            return {
              name: i.name,
              value: i.cont
            }
          })
        }
      }
<!--    // ä¸¤å°æ—¶çœ‹æ¿åˆ·æ–°ä¸€æ¬¡-->
<!--    setInterval(() => {-->
<!--      window.location.reload()-->
<!--    }, 1000 * 60 * 120)-->
<!--  },-->
<!--  mounted() {-->
<!--    this.getTopBar()-->
      const { data: res3 } = await QCBadCenterLeftWeek({ wkshopcode: temp.join(',') })
      console.log(res3) // è¿™ä¸ªæ˜Žå¤©å†™
<!--    this.getCenterTableDataSetInterval()-->
      const { data: res4 } = await QCBadCenterRightWeek({ wkshopcode: temp.join(',') })
      console.log(res4)
<!--    this.getEcharts()-->
      this.getEcharts()
    },
    setStarsRef() {
      const starNodes = Array.from(this.$refs.starsRef.children)
      starNodes.forEach(item => {
        const speed = 0.2 + Math.random() * 1
        const thisDistance = this.distance + Math.random() * 300
        item.style.transformOrigin = `0 0 ${thisDistance}px`
        item.style.transform = `
        translate3d(0,0,-${thisDistance}px)
        rotateY(${Math.random() * 360}deg)
        rotateX(${Math.random() * -50}deg)
        scale(${speed},${speed})`
      })
    },
    // èŽ·å–Echarts
    getEcharts() {
      loadEcharts('cjzl01', cjzl01(this.cjzl01Data))
<!--    this.setStarsRef()-->
<!--  },-->
<!--  methods: {-->
<!--    setStarsRef() {-->
<!--      const starNodes = Array.from(this.$refs.starsRef.children)-->
<!--      starNodes.forEach(item => {-->
<!--        const speed = 0.2 + Math.random() * 1-->
<!--        const thisDistance = this.distance + Math.random() * 300-->
<!--        item.style.transformOrigin = `0 0 ${thisDistance}px`-->
<!--        item.style.transform = `-->
<!--        translate3d(0,0,-${thisDistance}px)-->
<!--        rotateY(${Math.random() * 360}deg)-->
<!--        rotateX(${Math.random() * -50}deg)-->
<!--        scale(${speed},${speed})`-->
<!--      })-->
<!--    },-->
<!--    // èŽ·å–Echarts-->
<!--    getEcharts() {-->
<!--      this.getLeftTopEcharts()-->
<!--      setInterval(() => {-->
<!--        this.getLeftTopEcharts()-->
<!--      }, 1000 * 10)-->
      loadEcharts('cjzl02_1', cjzl02(this.cjzl02_1Title, this.cjzl02_1Data))
      loadEcharts('cjzl02_2', cjzl02(this.cjzl02_2Title, this.cjzl02_2Data))
      loadEcharts('cjzl02_3', cjzl02(this.cjzl02_3Title, this.cjzl02_3Data))
      loadEcharts('cjzl02_4', cjzl02(this.cjzl02_4Title, this.cjzl02_4Data))
      loadEcharts('cjzl02_5', cjzl02(this.cjzl02_5Title, this.cjzl02_5Data))
<!--      this.getLeftBottomEcharts()-->
<!--      setInterval(() => {-->
<!--        this.getLeftBottomEcharts()-->
<!--      }, 1000 * 10)-->
      loadEcharts('cjzl03', cjzl03())
      loadEcharts('cjzl04', cjzl04())
    },
<!--      this.getRightTopEcharts()-->
<!--      setInterval(() => {-->
<!--        this.getRightTopEcharts()-->
<!--      }, 1000 * 10)-->
    // èŽ·å–topEcharts
    getTopBar() {
      loadEcharts('topBarLeft', kbTop())
      loadEcharts('topBarRight', kbTop())
    },
    // èŽ·å–å½“å‰æ—¶é—´
    getNowTime() {
      const dt = new Date()
      const wk = dt.getDay()
      const y = dt.getFullYear()
      const m = (dt.getMonth() + 1 + '').padStart(2, '0')
      const d = (dt.getDate() + '').padStart(2, '0')
<!--      this.getRightBottomEcharts()-->
<!--      setInterval(() => {-->
<!--        this.getRightBottomEcharts()-->
<!--      }, 1000 * 10)-->
<!--    },-->
<!--    getLeftTopEcharts() {-->
<!--      BadTop5({ StepCode: this.StepCode }).then(res => {-->
<!--        const dataArr = res.data.map(i => i.cont)-->
<!--        const titlenameArr = res.data.map(i => i.name)-->
<!--        loadEcharts('bar01', bar02(dataArr, titlenameArr))-->
<!--      })-->
<!--    },-->
<!--    getLeftBottomEcharts() {-->
<!--      BadWeek({ StepCode: this.StepCode }).then(res => {-->
<!--        const dataX = res.data.map(i => i.click_date)-->
<!--        const dataY = res.data.map(i => i.count)-->
<!--        loadEcharts('line01', line02(dataX, dataY))-->
<!--      })-->
<!--    },-->
<!--    getRightTopEcharts() {-->
<!--      BadDayDistriBute({ StepCode: this.StepCode }).then(res => {-->
<!--        loadEcharts('bar02', bar04(res.data))-->
<!--      })-->
<!--    },-->
<!--    getRightBottomEcharts() {-->
<!--      BadWeekDistriBute({ StepCode: this.StepCode }).then(res => {-->
<!--        loadEcharts('pie01', pie02(res.data))-->
<!--      })-->
<!--    },-->
<!--    // ä¸­é—´éƒ¨åˆ†çš„表格-->
<!--    getCenterTableDataSetInterval() {-->
<!--      let startValue = 0 // åˆå§‹å€¼-->
<!--      const scale = 23// åˆ»åº¦-->
<!--      BadContManger({ StepCode: this.StepCode }).then(res => {-->
<!--        this.tableDataCenterTopTemp = res.data-->
<!--        this.tableDataCenterTop = this.tableDataCenterTopTemp.slice(startValue, startValue + scale)-->
      const hh = (dt.getHours() + '').padStart(2, '0')
      const mm = (dt.getMinutes() + '').padStart(2, '0')
      const ss = (dt.getSeconds() + '').padStart(2, '0')
      const weeks = ['星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六']
      const week = weeks[wk]
<!--        const loop = Math.floor(this.tableDataCenterTopTemp.length / scale)// éœ€è¦å¾ªçŽ¯çš„æ¬¡æ•°-->
<!--        let nowLoop = 0// å½“前循环的次数-->
      this.headTime = `${y}-${m}-${d}  ${hh}:${mm}:${ss}   ${week}`
    },
    headerCellStyle() {
      return {
        // backgroundColor: 'rgb(30 ,33, 46)',
        backgroundColor: '#000',
        padding: '10px 0',
        textAlign: 'center',
        color: '#07acc2',
        border: 'none'
      }
    },
    cellStyle() {
      return {
        padding: '7px 0',
        textAlign: 'center',
        // backgroundColor: 'rgba(30, 33, 46)',
        backgroundColor: '#000',
        // backgroundColor: 'transparent',
        color: '#fff',
        border: 'none'
      }
    },
    headerCellStyleCenter() {
      return {
        // backgroundColor: 'rgb(30 ,33, 46)',
        backgroundColor: '#000',
        padding: '10px 0',
        textAlign: 'center',
        color: '#07acc2',
        border: 'none',
        fontSize: '20px'
      }
    },
    cellStyleCenter() {
      return {
        padding: '7.5px 0',
        textAlign: 'center',
        backgroundColor: '#000',
        color: '#fff',
        border: 'none',
        fontSize: '20px'
      }
    }
  }
<!--        const timer = setInterval(() => {-->
<!--          startValue = startValue + scale-->
<!--          this.tableDataCenterTop = this.tableDataCenterTopTemp.slice(startValue, startValue + scale)-->
<!--          if (nowLoop === loop) {-->
<!--            clearInterval(timer)-->
<!--            this.getCenterTableDataSetInterval()-->
<!--          }-->
}
</script>
<!--          nowLoop++-->
<!--        }, 1000 * 10)-->
<!--      })-->
<!--    },-->
<style lang="scss" scoped>
$main_color: #09d8f2;
$color01: #00FFFF;
.tableData {
  background: #000;
}
<!--    // èŽ·å–topEcharts-->
<!--    getTopBar() {-->
<!--      loadEcharts('topBarLeft', kbTop())-->
<!--      loadEcharts('topBarRight', kbTop())-->
<!--    },-->
<!--    // èŽ·å–å½“å‰æ—¶é—´-->
<!--    getNowTime() {-->
<!--      const dt = new Date()-->
<!--      const wk = dt.getDay()-->
<!--      const y = dt.getFullYear()-->
<!--      const m = (dt.getMonth() + 1 + '').padStart(2, '0')-->
<!--      const d = (dt.getDate() + '').padStart(2, '0')-->
.el-table::before {
  height: 0;
}
<!--      const hh = (dt.getHours() + '').padStart(2, '0')-->
<!--      const mm = (dt.getMinutes() + '').padStart(2, '0')-->
<!--      const ss = (dt.getSeconds() + '').padStart(2, '0')-->
<!--      const weeks = ['星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六']-->
<!--      const week = weeks[wk]-->
.el-table__empty-text {
  color: $main_color;
}
<!--      this.headTime = `${y}-${m}-${d}  ${hh}:${mm}:${ss}   ${week}`-->
<!--    },-->
<!--    headerCellStyle() {-->
<!--      return {-->
<!--        // backgroundColor: 'rgb(30 ,33, 46)',-->
<!--        backgroundColor: '#000',-->
<!--        padding: '10px 0',-->
<!--        textAlign: 'center',-->
<!--        color: '#07acc2',-->
<!--        border: 'none'-->
<!--      }-->
<!--    },-->
<!--    cellStyle() {-->
<!--      return {-->
<!--        padding: '7px 0',-->
<!--        textAlign: 'center',-->
<!--        // backgroundColor: 'rgba(30, 33, 46)',-->
<!--        backgroundColor: '#000',-->
<!--        // backgroundColor: 'transparent',-->
<!--        color: '#fff',-->
<!--        border: 'none'-->
<!--      }-->
<!--    },-->
<!--    headerCellStyleCenter() {-->
<!--      return {-->
<!--        // backgroundColor: 'rgb(30 ,33, 46)',-->
<!--        backgroundColor: '#000',-->
<!--        padding: '10px 0',-->
<!--        textAlign: 'center',-->
<!--        color: '#07acc2',-->
<!--        border: 'none',-->
<!--        fontSize: '18px'-->
<!--      }-->
<!--    },-->
<!--    cellStyleCenter() {-->
<!--      return {-->
<!--        padding: '7.5px 0',-->
<!--        textAlign: 'center',-->
<!--        backgroundColor: '#000',-->
<!--        color: '#fff',-->
<!--        border: 'none',-->
<!--        fontSize: '18px'-->
<!--      }-->
<!--    }-->
<!--  }-->
.tableDataCell {
  ::v-deep .cell {
    padding: 0 2px;
  }
}
<!--}-->
<!--</script>-->
</style>
<!--<style lang="scss" scoped>-->
<!--$main_color:#09d8f2;-->
<!--$color01: #00FFFF;-->
<!--.tableData{-->
<!--  background: #000;-->
<!--}-->
<!--星空-->
<style lang="css" scoped>
@keyframes rotate {
  0% {
    transform: perspective(400px) rotateZ(20deg) rotateX(-40deg) rotateY(0);
  }
  100% {
    transform: perspective(400px) rotateZ(20deg) rotateX(-40deg) rotateY(-360deg);
  }
}
<!--.el-table::before{-->
<!--  height: 0;-->
<!--}-->
.stars {
  transform: perspective(500px);
  transform-style: preserve-3d;
  position: absolute;
  perspective-origin: 50% 100%;
  left: 45%;
  animation: rotate 90s infinite linear;
  bottom: 0;
  z-index: 102;
}
<!--.el-table__empty-text{-->
<!--  color: $main_color;-->
<!--}-->
<!--.tableDataCell {-->
<!--  ::v-deep .cell{-->
<!--    padding: 0 2px ;-->
<!--  }-->
<!--}-->
<!--</style>-->
<!--&lt;!&ndash;星空&ndash;&gt;-->
<!--<style lang="css" scoped>-->
<!--@keyframes rotate {-->
<!--  0% {-->
<!--    transform: perspective(400px) rotateZ(20deg) rotateX(-40deg) rotateY(0);-->
<!--  }-->
<!--  100% {-->
<!--    transform: perspective(400px) rotateZ(20deg) rotateX(-40deg) rotateY(-360deg);-->
<!--  }-->
<!--}-->
<!--.stars {-->
<!--  transform: perspective(500px);-->
<!--  transform-style: preserve-3d;-->
<!--  position: absolute;-->
<!--  perspective-origin: 50% 100%;-->
<!--  left: 45%;-->
<!--  animation: rotate 90s infinite linear;-->
<!--  bottom: 0;-->
<!--  z-index: 102;-->
<!--}-->
<!--.star {-->
<!--  width: 2px;-->
<!--  height: 2px;-->
<!--  /*background: #f7f7b6;*/-->
<!--  background: #8edffc;-->
<!--  position: absolute;-->
<!--  left: 0;-->
<!--  top: 0;-->
<!--  backface-visibility: hidden;-->
<!--  z-index: 102;-->
<!--}-->
<!--</style>-->
.star {
  width: 2px;
  height: 2px;
  /*background: #f7f7b6;*/
  background: #8edffc;
  position: absolute;
  left: 0;
  top: 0;
  backface-visibility: hidden;
  z-index: 102;
}
</style>