loulijun2021
2023-09-12 fc2ad48243a04090e0ce8df907d7c0beea738c9c
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 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>