马宇豪
2025-04-23 34ec919649adfefeecd0418284dd7b02e9ed49b8
src/views/specialCheck/components/sumSheet.vue
@@ -9,14 +9,14 @@
            </div>
            <div style="display: flex;justify-content: space-between;align-items: center;margin: 10px 0 20px;height: 40px">
                <div style="width: 140px"></div>
                <h2 style="text-align: center;margin: 0">{{taskName}}{{ activeTab==1?'批发':'零售' }}环节信息报送汇总表({{sheetStatus==1?'省级层面':(sheetStatus==2?'市级层面':'区县级')}})</h2>
                <h2 style="text-align: center;margin: 0">{{taskName}}{{ activeTab==1?'批发':'零售' }}环节信息报送汇总表({{sheetStatus==1?'省级层面':(sheetStatus==2?'地(州、市)级层面':'区县级')}})</h2>
                <el-button icon="el-icon-download" style="width: 140px" size="medium" type="primary" @click="exportSheet()" id="export">导出汇总表</el-button>
            </div>
            <div class="tabpanel">
                <table v-show="sheetStatus==1||sheetStatus==2" class="data-table" id="tableExcel" v-if="thisLevelStatistic && institutionalData && institutionalData.length>0">
                    <tr>
                        <th rowspan="3">序号</th>
                        <th rowspan="3">{{sheetStatus==1?'地市':'区县'}}</th>
                        <th rowspan="3">{{sheetStatus==1?'地(州、市)':'区县'}}</th>
                        <th colspan="2">企业基本情况</th>
                        <th colspan="11">企业自查及整改</th>
                        <th colspan="9">检查及整改情况</th>
@@ -29,8 +29,8 @@
                        <th rowspan="2">自查覆盖率要求</th>
                        <th rowspan="2">已完成覆盖率</th>
                        <th rowspan="2">当前有效期内企业数量</th>
                        <th rowspan="2">企业库存数量/万箱</th>
                        <th rowspan="2">企业库容量/万箱</th>
                        <th rowspan="2">企业库存数量/箱</th>
                        <th rowspan="2">企业库容量/箱</th>
                        <th colspan="2">隐患问题情况</th>
                        <th colspan="3">整改情况</th>
                        <th rowspan="2">检查层级</th>
@@ -42,7 +42,7 @@
                        <th rowspan="2">吊销许可证数量</th>
                        <th rowspan="2">暂扣许可证数量</th>
                        <th rowspan="2">罚款企业数量</th>
                        <th rowspan="2">罚款金额</th>
                        <th rowspan="2">罚款金额(万元)</th>
                    </tr>
                    <tr>
                        <th>隐患总数</th>
@@ -92,7 +92,7 @@
                        <td>{{sum.amerceMoneySum}}</td>
                    </tr>
                    <tr>
                        <td colspan="2">{{ sheetStatus==1?'省本级':'市本级' }}</td>
                        <td colspan="2">{{ sheetStatus==1?'省本级':'地(州、市)本级' }}</td>
                        <td>{{thisLevelStatistic.enterpriseSum?thisLevelStatistic.enterpriseSum: '--'}}</td>
                        <td>{{thisLevelStatistic.validEnterpriseNum?thisLevelStatistic.validEnterpriseNum: '--'}}</td>
                        <td>{{thisLevelStatistic.selfCheckEnterpriseNum?thisLevelStatistic.selfCheckEnterpriseNum: '--'}}</td>
@@ -106,7 +106,7 @@
                        <td>{{thisLevelStatistic.completedRectifyHiddendangerSum?thisLevelStatistic.completedRectifyHiddendangerSum:'--'}}</td>
                        <td>{{thisLevelStatistic.completedRectifyMajorHiddendangerNum?thisLevelStatistic.completedRectifyMajorHiddendangerNum:'--'}}</td>
                        <td>{{thisLevelStatistic.hiddendangerRectifyRate?thisLevelStatistic.hiddendangerRectifyRate:'--'}}</td>
                        <td>{{sheetStatus==1?'省级':'市级'}}</td>
                        <td>{{sheetStatus==1?'省级':'地(州、市)级'}}</td>
                        <td>{{thisLevelStatistic.thisLevelSpotCheckinfo.spotCheckEnterpriseNum}}</td>
                        <td>
                            {{typeof thisLevelStatistic.thisLevelSpotCheckinfo.spotCheckRateRequire=="string"?thisLevelStatistic.thisLevelSpotCheckinfo.spotCheckRateRequire:thisLevelStatistic.thisLevelSpotCheckinfo.spotCheckRateRequire + '%'}}
@@ -146,48 +146,48 @@
                        <td :rowspan="sheetStatus==1?2:1">{{ item.majorHiddendangerNum }}</td>
                        <td :rowspan="sheetStatus==1?2:1">{{ item.completedRectifyHiddendangerSum }}</td>
                        <td :rowspan="sheetStatus==1?2:1">{{ item.completedRectifyMajorHiddendangerNum }}</td>
                        <td :rowspan="sheetStatus==1?2:1">{{ item.hiddendangerRectifyRate==null?'--':item.hiddendangerRectifyRate + '%' }}</td>
                        <td>{{ sheetStatus==1?'设立区级':'县级' }}</td>
                        <td v-if="(item.citySpotCheckinfo && item.citySpotCheckinfo.spotCheckEnterpriseNum)|| (item.areaSpotCheckinfo && item.areaSpotCheckinfo.spotCheckEnterpriseNum)" class="point-item" @click="checkEnterprise(item.enterpriseCity,item.enterpriseArea)">
                        <td :rowspan="sheetStatus==1?2:1">{{ item.hiddendangerRectifyRate==null?'--':(item.hiddendangerRectifyRate + '%') }}</td>
                        <td>{{ sheetStatus==1?'设区地(州、市)级':'县级' }}</td>
                        <td v-if="(item.citySpotCheckinfo && item.citySpotCheckinfo.spotCheckEnterpriseNum !== undefined)|| (item.areaSpotCheckinfo && item.areaSpotCheckinfo.spotCheckEnterpriseNum !== undefined)" class="point-item" @click="checkEnterprise(item.enterpriseCity,item.enterpriseArea)">
                            {{sheetStatus==1?item.citySpotCheckinfo.spotCheckEnterpriseNum:item.areaSpotCheckinfo.spotCheckEnterpriseNum}}
                        </td>
                        <td v-if="(item.citySpotCheckinfo && item.citySpotCheckinfo.spotCheckRateRequire)|| (item.areaSpotCheckinfo && item.areaSpotCheckinfo.spotCheckRateRequire)">
                            {{sheetStatus==1?item.citySpotCheckinfo.spotCheckRateRequire + '%':item.areaSpotCheckinfo.spotCheckRateRequire + '%'}}
                        <td v-if="(item.citySpotCheckinfo && item.citySpotCheckinfo.spotCheckRateRequire !== undefined)|| (item.areaSpotCheckinfo && item.areaSpotCheckinfo.spotCheckRateRequire !== undefined)">
                            {{sheetStatus==1?(item.citySpotCheckinfo.spotCheckRateRequire + '%'):(item.areaSpotCheckinfo.spotCheckRateRequire + '%')}}
                        </td>
                        <td v-if="sheetStatus==1 && item.citySpotCheckinfo && item.citySpotCheckinfo.spotCheckCompleteRate" :class="item.citySpotCheckinfo.spotCheckCompleteRate<item.citySpotCheckinfo.spotCheckRateRequire?'warning':''">
                            {{item.citySpotCheckinfo.spotCheckCompleteRate==null?'--':item.citySpotCheckinfo.spotCheckCompleteRate + '%'}}
                        <td v-if="sheetStatus==1 && item.citySpotCheckinfo && item.citySpotCheckinfo.spotCheckCompleteRate!== undefined" :class="item.citySpotCheckinfo.spotCheckCompleteRate<item.citySpotCheckinfo.spotCheckRateRequire?'warning':''">
                            {{item.citySpotCheckinfo.spotCheckCompleteRate==null?'--':(item.citySpotCheckinfo.spotCheckCompleteRate + '%')}}
                        </td>
                        <td v-else :class="item.areaSpotCheckinfo.spotCheckCompleteRate<item.areaSpotCheckinfo.spotCheckRateRequire?'warning':''">
                            {{item.areaSpotCheckinfo.spotCheckCompleteRate==null?'--':item.areaSpotCheckinfo.spotCheckCompleteRate + '%'}}
                            {{item.areaSpotCheckinfo.spotCheckCompleteRate==null?'--':(item.areaSpotCheckinfo.spotCheckCompleteRate + '%')}}
                        </td>
                        <td v-if="(item.citySpotCheckHiddendangerinfo && item.citySpotCheckHiddendangerinfo.spotCheckHiddendangerSum)|| (item.areaSpotCheckHiddendangerinfo && item.areaSpotCheckHiddendangerinfo.spotCheckHiddendangerSum)">
                        <td v-if="(item.citySpotCheckHiddendangerinfo && item.citySpotCheckHiddendangerinfo.spotCheckHiddendangerSum!== undefined)|| (item.areaSpotCheckHiddendangerinfo && item.areaSpotCheckHiddendangerinfo.spotCheckHiddendangerSum!== undefined)">
                            {{sheetStatus==1?item.citySpotCheckHiddendangerinfo.spotCheckHiddendangerSum:item.areaSpotCheckHiddendangerinfo.spotCheckHiddendangerSum}}
                        </td>
                        <td v-if="(item.citySpotCheckHiddendangerinfo && item.citySpotCheckHiddendangerinfo.spotCheckMajorHiddendangerNum)|| (item.areaSpotCheckHiddendangerinfo && item.areaSpotCheckHiddendangerinfo.spotCheckMajorHiddendangerNum)">
                        <td v-if="(item.citySpotCheckHiddendangerinfo && item.citySpotCheckHiddendangerinfo.spotCheckMajorHiddendangerNum !== undefined)|| (item.areaSpotCheckHiddendangerinfo && item.areaSpotCheckHiddendangerinfo.spotCheckMajorHiddendangerNum !== undefined)">
                            {{sheetStatus==1?item.citySpotCheckHiddendangerinfo.spotCheckMajorHiddendangerNum:item.areaSpotCheckHiddendangerinfo.spotCheckMajorHiddendangerNum}}
                        </td>
                        <td v-if="(item.citySpotCheckHiddendangerinfo && item.citySpotCheckHiddendangerinfo.spotCheckCompletedRectifyHiddendangerSum)|| (item.areaSpotCheckHiddendangerinfo && item.areaSpotCheckHiddendangerinfo.spotCheckCompletedRectifyHiddendangerSum)">
                        <td v-if="(item.citySpotCheckHiddendangerinfo && item.citySpotCheckHiddendangerinfo.spotCheckCompletedRectifyHiddendangerSum !== undefined)|| (item.areaSpotCheckHiddendangerinfo && item.areaSpotCheckHiddendangerinfo.spotCheckCompletedRectifyHiddendangerSum !== undefined)">
                            {{sheetStatus==1?item.citySpotCheckHiddendangerinfo.spotCheckCompletedRectifyHiddendangerSum:item.areaSpotCheckHiddendangerinfo.spotCheckCompletedRectifyHiddendangerSum}}
                        </td>
                        <td v-if="(item.citySpotCheckHiddendangerinfo && item.citySpotCheckHiddendangerinfo.spotCheckCompletedRectifyMajorHiddendangerNum)|| (item.areaSpotCheckHiddendangerinfo && item.areaSpotCheckHiddendangerinfo.spotCheckCompletedRectifyMajorHiddendangerNum)">
                        <td v-if="(item.citySpotCheckHiddendangerinfo && item.citySpotCheckHiddendangerinfo.spotCheckCompletedRectifyMajorHiddendangerNum !== undefined)|| (item.areaSpotCheckHiddendangerinfo && item.areaSpotCheckHiddendangerinfo.spotCheckCompletedRectifyMajorHiddendangerNum !== undefined)">
                            {{sheetStatus==1?item.citySpotCheckHiddendangerinfo.spotCheckCompletedRectifyMajorHiddendangerNum:item.areaSpotCheckHiddendangerinfo.spotCheckCompletedRectifyMajorHiddendangerNum}}
                        </td>
                        <td v-if="sheetStatus==1 && item.citySpotCheckHiddendangerinfo && item.citySpotCheckHiddendangerinfo.spotCheckHiddendangerRectifyRate">
                            {{item.citySpotCheckHiddendangerinfo.spotCheckHiddendangerRectifyRate == null ? '--' : item.citySpotCheckHiddendangerinfo.spotCheckHiddendangerRectifyRate + '%' }}
                        <td v-if="sheetStatus==1 && item.citySpotCheckHiddendangerinfo && item.citySpotCheckHiddendangerinfo.spotCheckHiddendangerRectifyRate !== undefined">
                            {{item.citySpotCheckHiddendangerinfo.spotCheckHiddendangerRectifyRate == null ? '--' : (item.citySpotCheckHiddendangerinfo.spotCheckHiddendangerRectifyRate + '%') }}
                        </td>
                        <td v-else>
                            {{item.areaSpotCheckHiddendangerinfo.spotCheckHiddendangerRectifyRate==null?'--':item.areaSpotCheckHiddendangerinfo.spotCheckHiddendangerRectifyRate + '%'}}
                            {{item.areaSpotCheckHiddendangerinfo.spotCheckHiddendangerRectifyRate==null?'--': (item.areaSpotCheckHiddendangerinfo.spotCheckHiddendangerRectifyRate + '%')}}
                        </td>
                        <td v-if="(item.citySpotCheckinfo && item.citySpotCheckinfo.revokeLicenseEnterpriseSum)|| (item.areaSpotCheckinfo && item.areaSpotCheckinfo.revokeLicenseEnterpriseSum)">
                        <td v-if="(item.citySpotCheckinfo && item.citySpotCheckinfo.revokeLicenseEnterpriseSum !== undefined)|| (item.areaSpotCheckinfo && item.areaSpotCheckinfo.revokeLicenseEnterpriseSum !== undefined)">
                            {{sheetStatus==1?item.citySpotCheckinfo.revokeLicenseEnterpriseSum:item.areaSpotCheckinfo.revokeLicenseEnterpriseSum}}
                        </td>
                        <td v-if="(item.citySpotCheckinfo && item.citySpotCheckinfo.detainLicenseSum)|| (item.areaSpotCheckinfo && item.areaSpotCheckinfo.detainLicenseSum)">
                        <td v-if="(item.citySpotCheckinfo && item.citySpotCheckinfo.detainLicenseSum !== undefined)|| (item.areaSpotCheckinfo && item.areaSpotCheckinfo.detainLicenseSum !== undefined)">
                            {{sheetStatus==1?item.citySpotCheckinfo.detainLicenseSum:item.areaSpotCheckinfo.detainLicenseSum}}
                        </td>
                        <td v-if="(item.citySpotCheckinfo && item.citySpotCheckinfo.amerceEnterpriseNum)|| (item.areaSpotCheckinfo && item.areaSpotCheckinfo.amerceEnterpriseNum)">
                        <td v-if="(item.citySpotCheckinfo && item.citySpotCheckinfo.amerceEnterpriseNum !== undefined)|| (item.areaSpotCheckinfo && item.areaSpotCheckinfo.amerceEnterpriseNum !== undefined)">
                            {{sheetStatus==1?item.citySpotCheckinfo.amerceEnterpriseNum:item.areaSpotCheckinfo.amerceEnterpriseNum}}
                        </td>
                        <td v-if="(item.citySpotCheckinfo && item.citySpotCheckinfo.amerceMoneySum)|| (item.areaSpotCheckinfo && item.areaSpotCheckinfo.amerceMoneySum)">
                        <td v-if="(item.citySpotCheckinfo && item.citySpotCheckinfo.amerceMoneySum !==undefined) || (item.areaSpotCheckinfo && item.areaSpotCheckinfo.amerceMoneySum!==undefined)">
                            {{sheetStatus==1?item.citySpotCheckinfo.amerceMoneySum:item.areaSpotCheckinfo.amerceMoneySum}}
                        </td>
                    </tr>
@@ -218,7 +218,7 @@
<script>
import {mapGetters} from "vuex";
import Cookies from "_js-cookie@2.2.0@js-cookie";
import Cookies from "js-cookie";
import {paramList} from "../../../api/contract";
import {computePageCount} from "../../../utils";
import {parseError} from "../../../utils/messageDialog";
@@ -377,8 +377,14 @@
            t.$refs.enterprises.enterpriseArea = area
            if(t.sheetStatus == 1){
                t.$refs.enterprises.enterpriseCity = city
                if(area == 'all'){
                    t.$refs.enterprises.checkUnitType = 3
                }else{
                    t.$refs.enterprises.checkUnitType = 2
                }
            }else{
                t.$refs.enterprises.enterpriseCity = null
                t.$refs.enterprises.checkUnitType = 3
            }
            t.$refs.enterprises.dialogVisible = true
            t.$refs.enterprises.getEnterprises()
@@ -390,7 +396,6 @@
                t.enterpriseCity = city
                t.sheetStatus = 2
                t.getDataStatistics()
                console.log(t.sheetStatus,t.institutionalData[0].citySpotCheckinfo.spotCheckEnterpriseNum,'666666666666666666')
            }else{
                t.sheetStatus = 3
                t.$refs.areaSheet.taskId = t.taskId
@@ -415,7 +420,7 @@
        },
        exportSheet(){
            const t = this
            const sheetName = t.taskName + (t.activeTab==1 ?'批发':'零售') + '环节信息报送汇总表(' + (t.sheetStatus==1?'省级层面':(t.sheetStatus==2?'市级层面':'区县级'))
            const sheetName = t.taskName + (t.activeTab==1 ?'批发':'零售') + '环节信息报送汇总表(' + (t.sheetStatus==1?'省级层面':(t.sheetStatus==2?'地(州、市)级层面':'区县级'))
            if(t.sheetStatus==1||t.sheetStatus==2){
                t.tableToExcel("tableExcel", "export",sheetName);
            }else{
@@ -439,12 +444,12 @@
}
.data-table{
    border-collapse: collapse;
    border: 1px solid #ccc;
    border: 1px solid #eee;
    margin: 0 0 20px;
    background: #fff;
    box-shadow: 0 3px 12px rgba(0,0,0,.2);
    tr{
        border-bottom: 1px solid #ccc;
        border-bottom: 1px solid #eee;
        white-space: nowrap;
        font-size: 12px;
        &:last-of-type{
@@ -453,15 +458,16 @@
        th{
            padding: 6px 4px;
            border: 1px solid #ccc;
            border: 1px solid #eee;
            border-left: none;
            font-weight: bolder;
            text-align: center;
            color: #034EA2;
            color: #333;
            background: #F1F4F7;
            &:first-of-type{
                border-top: 1px solid #ccc;
                border-left: 1px solid #ccc;
                border-top: 1px solid #eee;
                border-left: 1px solid #eee;
            }
            &.dark-bg{
                background: #034ea2;
@@ -471,7 +477,7 @@
        td{
            padding: 6px 4px;
            border-right: 1px solid #ccc;
            border-right: 1px solid #eee;
            text-align: center;
            &:last-of-type{