付延余
2022-05-07 7c2ff43a4f70638fb063d0aa1d2f1624e6cada33
src/pages/show/shehuiBaozhang/shehuiBaozhangChildren/shebaoShouzhiZongbiao.vue
@@ -3,62 +3,217 @@
    <div class="shebaoShouzhiZongbiao-table">
      <h1>社会保障基金统计表</h1>
      <el-table
        :cell-style="handleCellStyle"
        :data="tableData"
        :cell-style="handleCellStyle"
        style="width: 100%">
        <template v-for="(item,index) in headerArry">
        <!--<template v-for="(item,index) in headerArry">
          <template v-if="index == 0">
            <el-table-column
              align="center"
              :prop="item.name"
              :prop="item.item"
              label="项目"
              fixed>
              <template slot-scope="scope">
                <span :class="[Number(item.taxesIncome) < 0 ? 'fontColorRed' : '']" style="margin-left: 10px">{{item.name}}</span>
                <span style="margin-left: 10px">{{scope.row.item}}</span>
              </template>
            </el-table-column>
            <template v-for="(e,i) in item.dataList">
              <el-table-column :label="e.month" align="center">
                <el-table-column
                  align="center"
                  label="总收入">
                  <template slot-scope="scope">
                    <template>
                      <template>
                        <span :class="[Number(e.taxesIncome) < 0 ? 'fontColorRed' : '']" style="margin-left: 10px">{{scope.row.dataList[0].totalIncome}}</span>
                      </template>
                    </template>
                  </template>
                </el-table-column>
                <el-table-column
                  align="center"
                  label="征集收入">
                  <template slot-scope="scope">
                    <span :class="[Number(e.taxesIncome) < 0 ? 'fontColorRed' : '']" style="margin-left: 10px">{{scope.row.dataList[0].taxesIncome}}</span>
                  </template>
                </el-table-column>
                <el-table-column
                  align="center"
                  label="本月支出">
                  <template slot-scope="scope">
                    <span :class="[Number(e.pay) < 0 ? 'fontColorRed' : '']" style="margin-left: 10px">{{scope.row.dataList[0].pay}}</span>
                  </template>
                </el-table-column>
                <el-table-column
                  align="center"
                  label="本月结余">
                  <template slot-scope="scope">
                    <span :class="[Number(e.balance) < 0 ? 'fontColorRed' : '']" style="margin-left: 10px">{{scope.row.dataList[0].balance}}</span>
                  </template>
                </el-table-column>
              </el-table-column>
            </template>
            <template>
              <el-table-column
                align="center"
                :prop="item.surplus"
                label="累计结余">
                <template slot-scope="scope">
                  <span :class="[Number(item.surplus) < 0 ? 'fontColorRed' : '']" style="margin-left: 10px">{{item.surplus}}</span>
                </template>
              </el-table-column>
            </template>
          </template>
          <el-table-column :label="item.month" align="center">
            <el-table-column
              align="center"
              label="总收入">
              <template slot-scope="scope">
                <span :class="[Number(item.totalIncome) < 0 ? 'fontColorRed' : '']" style="margin-left: 10px">{{item.totalIncome}}</span>
              </template>
            </el-table-column>
            <el-table-column
              align="center"
              label="征集收入">
              <template slot-scope="scope">
                <span :class="[Number(item.taxesIncome) < 0 ? 'fontColorRed' : '']" style="margin-left: 10px">{{item.taxesIncome}}</span>
              </template>
            </el-table-column>
            <el-table-column
              align="center"
              label="本月支出">
              <template slot-scope="scope">
                <span :class="[Number(item.pay) < 0 ? 'fontColorRed' : '']" style="margin-left: 10px">{{item.pay}}</span>
              </template>
            </el-table-column>
            <el-table-column
              align="center"
              label="本月结余">
              <template slot-scope="scope">
                <span :class="[Number(item.balance) < 0 ? 'fontColorRed' : '']" style="margin-left: 10px">{{item.balance}}</span>
              </template>
            </el-table-column>
        </template>-->
        <el-table-column
          width="260"
          align="center"
          prop="item"
          label="项目">
        </el-table-column>
        <el-table-column v-if="tableData[0]" :label="tableData[0].month1" align="center">
          <el-table-column
            align="center"
            label="总收入">
            <template slot-scope="scope">
              <span :class="Number(scope.row.totalIncome1) < 0 ? 'fontColorRed' : ''">{{scope.row.totalIncome1}}</span>
            </template>
          </el-table-column>
          <template v-if="index == headerArry.length - 1">
            <el-table-column
              align="center"
              :prop="item.surplus"
              label="累计结余">
              <template slot-scope="scope">
                <span :class="[Number(item.surplus) < 0 ? 'fontColorRed' : '']" style="margin-left: 10px">{{item.surplus}}</span>
              </template>
            </el-table-column>
          <el-table-column
            align="center"
            prop="taxesIncome1"
            label="征集收入">
            <template slot-scope="scope">
              <span :class="Number(scope.row.taxesIncome1) < 0 ? 'fontColorRed' : ''">{{scope.row.taxesIncome1}}</span>
            </template>
          </el-table-column>
          <el-table-column
            align="center"
            prop="pay1"
            label="本月支出">
            <template slot-scope="scope">
              <span :class="Number(scope.row.pay1) < 0 ? 'fontColorRed' : ''">{{scope.row.pay1}}</span>
            </template>
          </el-table-column>
          <el-table-column
            align="center"
            prop="balance1"
            label="本月结余">
            <template slot-scope="scope">
              <span :class="Number(scope.row.balance1) < 0 ? 'fontColorRed' : ''">{{scope.row.balance1}}</span>
            </template>
          </el-table-column>
        </el-table-column>
        <el-table-column v-if="tableData[0]" :label="tableData[0].month2" align="center">
          <el-table-column
            align="center"
            prop="totalIncome2"
            label="总收入">
            <template slot-scope="scope">
              <span :class="Number(scope.row.totalIncome2) < 0 ? 'fontColorRed' : ''">{{scope.row.totalIncome2}}</span>
            </template>
          </el-table-column>
          <el-table-column
            align="center"
            prop="taxesIncome2"
            label="征集收入">
            <template slot-scope="scope">
              <span :class="Number(scope.row.taxesIncome2) < 0 ? 'fontColorRed' : ''">{{scope.row.taxesIncome2}}</span>
            </template>
          </el-table-column>
          <el-table-column
            align="center"
            prop="pay2"
            label="本月支出">
            <template slot-scope="scope">
              <span :class="Number(scope.row.pay2) < 0 ? 'fontColorRed' : ''">{{scope.row.pay2}}</span>
            </template>
          </el-table-column>
          <el-table-column
            align="center"
            prop="balance2"
            label="本月结余">
            <template slot-scope="scope">
              <span :class="Number(scope.row.balance2) < 0 ? 'fontColorRed' : ''">{{scope.row.balance2}}</span>
            </template>
          </el-table-column>
        </el-table-column>
        <el-table-column v-if="tableData[0]" :label="tableData[0].month3" align="center">
          <el-table-column
            align="center"
            prop="totalIncome3"
            label="总收入">
            <template slot-scope="scope">
              <span :class="Number(scope.row.totalIncome3) < 0 ? 'fontColorRed' : ''">{{scope.row.totalIncome3}}</span>
            </template>
          </el-table-column>
          <el-table-column
            align="center"
            prop="taxesIncome3"
            label="征集收入">
            <template slot-scope="scope">
              <span :class="Number(scope.row.taxesIncome3) < 0 ? 'fontColorRed' : ''">{{scope.row.taxesIncome3}}</span>
            </template>
          </el-table-column>
          <el-table-column
            align="center"
            prop="pay3"
            label="本月支出">
            <template slot-scope="scope">
              <span :class="Number(scope.row.pay3) < 0 ? 'fontColorRed' : ''">{{scope.row.pay3}}</span>
            </template>
          </el-table-column>
          <el-table-column
            align="center"
            prop="balance3"
            label="本月结余">
            <template slot-scope="scope">
              <span :class="Number(scope.row.balance3) < 0 ? 'fontColorRed' : ''">{{scope.row.balance3}}</span>
            </template>
          </el-table-column>
        </el-table-column>
        <el-table-column v-if="tableData[0]" :label="tableData[0].month4" align="center">
          <el-table-column
            align="center"
            prop="totalIncome4"
            label="总收入">
            <template slot-scope="scope">
              <span :class="Number(scope.row.totalIncome4) < 0 ? 'fontColorRed' : ''">{{scope.row.totalIncome4}}</span>
            </template>
          </el-table-column>
          <el-table-column
            align="center"
            prop="taxesIncome4"
            label="征集收入">
            <template slot-scope="scope">
              <span :class="Number(scope.row.taxesIncome4) < 0 ? 'fontColorRed' : ''">{{scope.row.taxesIncome4}}</span>
            </template>
          </el-table-column>
          <el-table-column
            align="center"
            prop="pay4"
            label="本月支出">
            <template slot-scope="scope">
              <span :class="Number(scope.row.pay4) < 0 ? 'fontColorRed' : ''">{{scope.row.pay4}}</span>
            </template>
          </el-table-column>
          <el-table-column
            align="center"
            prop="balance4"
            label="本月结余">
            <template slot-scope="scope">
              <span :class="Number(scope.row.balance4) < 0 ? 'fontColorRed' : ''">{{scope.row.balance4}}</span>
            </template>
          </el-table-column>
        </el-table-column>
        <el-table-column
          align="center"
          prop="surplus"
          label="累计结余">
          <template slot-scope="scope">
            <span :class="Number(scope.row.surplus) < 0 ? 'fontColorRed' : ''">{{scope.row.surplus}}</span>
          </template>
        </template>
        </el-table-column>
      </el-table>
      <div class="shebaoShouzhiZongbiaoEcharts" id="shebaoShouzhiZongbiaoEcharts"></div>
    </div>
@@ -68,13 +223,14 @@
<script>
  import nowSize from "../../../../libs/nowSize";
  import {getStatisticsTable,getStatisticsChart } from '@/api/shehuiBaozhang'
  import index from "../../index/index";
export default {
  name: "shebaoShouzhiZongbiao",
  data() {
    return {
      tableHead:[],
      tableData:[],
      headerArry:[],
      headerArry:{},
      echartsSeries:{}
    }
  },
@@ -87,28 +243,13 @@
          getStatisticsTable().then(res => {
              if(res.code == 1000) {
                  this.tableData = res.list
                  this.getData()
                  res.list.forEach((item,index) => {
                      if(index == 0) {
                          this.headerArry = item
                          console.log(this.headerArry,'this.headerArry====')
                      }
                  })
              }
          })
      },
      getData() {
          let row = []
          this.tableData.forEach((e,index) => {
              e.dataList.forEach((c,i) => {
                  if(index == 0) {
                      row.push({
                          name: e.item,
                          "month": c.month ,
                          "totalIncome": c.totalIncome,
                          "taxesIncome": c.taxesIncome,
                          "pay": c.pay,
                          "balance": c.balance,
                          "surplus": c.surplus || null
                      })
                  }
              })
              this.headerArry = row
              console.log(this.headerArry)
          })
      },
      shebaoShouzhiZongbiaoEcharts() {
@@ -216,7 +357,7 @@
              myEchart.resize()
          })
      },
      handleCellStyle({rowIndex, columnIndex}) {
      handleCellStyle({row, column, rowIndex, columnIndex}) {
          if(columnIndex == 0) {
              return { background:'#51D2FF' }
          }