|
|
@ -7,7 +7,7 @@ |
|
|
<h1 class="block_tit">行政执法</h1> |
|
|
<h1 class="block_tit">行政执法</h1> |
|
|
<div class="count_admin_wrap"> |
|
|
<div class="count_admin_wrap"> |
|
|
<div class="count_admin"> |
|
|
<div class="count_admin"> |
|
|
<label><img :src="imgPath('icon_jc2.png')" alt="单独执法" />单独执法</label> |
|
|
<label><img :src="imgPath('icon_jc2.png')" alt="单部门执法" />单部门执法</label> |
|
|
<div class="count_admin_num"> |
|
|
<div class="count_admin_num"> |
|
|
<b>{{ coordination.singleNum.toLocaleString() }}</b> |
|
|
<b>{{ coordination.singleNum.toLocaleString() }}</b> |
|
|
<span class="number_percent">{{ coordination.singlePer }}<i>%</i></span> |
|
|
<span class="number_percent">{{ coordination.singlePer }}<i>%</i></span> |
|
|
@ -75,7 +75,7 @@ |
|
|
</div> --> |
|
|
</div> --> |
|
|
</div> |
|
|
</div> |
|
|
<div class="count_admin"> |
|
|
<div class="count_admin"> |
|
|
<label><img :src="imgPath('icon_yj.png')" alt="入企压减率" />入企压减率</label> |
|
|
<label><img :src="imgPath('icon_yj.png')" alt="入企压减数" />入企压减数</label> |
|
|
<div class="count_admin_num"> |
|
|
<div class="count_admin_num"> |
|
|
<b>{{ coordination.cutNum.toLocaleString() }}</b> |
|
|
<b>{{ coordination.cutNum.toLocaleString() }}</b> |
|
|
</div> |
|
|
</div> |
|
|
@ -257,7 +257,6 @@ import * as echarts from 'echarts'; |
|
|
import { |
|
|
import { |
|
|
analysisEnterprises, |
|
|
analysisEnterprises, |
|
|
analysisEnterprisesCoordination, |
|
|
analysisEnterprisesCoordination, |
|
|
analysisEnterprisesNonAll, |
|
|
|
|
|
analysisNonRegistrationType, |
|
|
analysisNonRegistrationType, |
|
|
analysisRegistrationType, |
|
|
analysisRegistrationType, |
|
|
analysisTime, |
|
|
analysisTime, |
|
|
@ -271,7 +270,6 @@ import { |
|
|
normalizeDictStatList, |
|
|
normalizeDictStatList, |
|
|
normalizeEnterpriseStat, |
|
|
normalizeEnterpriseStat, |
|
|
normalizeTimeSeries, |
|
|
normalizeTimeSeries, |
|
|
toNum, |
|
|
|
|
|
unwrapData |
|
|
unwrapData |
|
|
} from '@/api/supervision/statistical/adapters'; |
|
|
} from '@/api/supervision/statistical/adapters'; |
|
|
import { buildAdminPieOption, buildNonAdminPieOption, buildTrendLineOption } from '@/views/supervision/statistical/utils/chartOptions'; |
|
|
import { buildAdminPieOption, buildNonAdminPieOption, buildTrendLineOption } from '@/views/supervision/statistical/utils/chartOptions'; |
|
|
@ -314,7 +312,7 @@ const coordination = reactive({ |
|
|
|
|
|
|
|
|
const enterprise = reactive({ num: 0, yoy: 0, rr: 0 }); |
|
|
const enterprise = reactive({ num: 0, yoy: 0, rr: 0 }); |
|
|
const nonTypeList = ref<DictStatItem[]>([]); |
|
|
const nonTypeList = ref<DictStatItem[]>([]); |
|
|
const njcAll = ref(0); |
|
|
const njcAll = computed(() => coordination.nonNum); |
|
|
const qJcNum = ref(0); |
|
|
const qJcNum = ref(0); |
|
|
const qNjcNum = ref(0); |
|
|
const qNjcNum = ref(0); |
|
|
|
|
|
|
|
|
@ -417,7 +415,9 @@ async function loadCoordination() { |
|
|
const res = await safeLoad(() => analysisEnterprisesCoordination(getTimeParams())); |
|
|
const res = await safeLoad(() => analysisEnterprisesCoordination(getTimeParams())); |
|
|
if (res) { |
|
|
if (res) { |
|
|
const data = normalizeCoordination(unwrapData(res)); |
|
|
const data = normalizeCoordination(unwrapData(res)); |
|
|
|
|
|
console.log(data); |
|
|
Object.assign(coordination, data); |
|
|
Object.assign(coordination, data); |
|
|
|
|
|
console.log(coordination); |
|
|
coordination.singleYoy = parseFloat(data.singleYoy); |
|
|
coordination.singleYoy = parseFloat(data.singleYoy); |
|
|
coordination.singleRr = parseFloat(data.singleRr); |
|
|
coordination.singleRr = parseFloat(data.singleRr); |
|
|
coordination.unionYoy = parseFloat(data.unionYoy); |
|
|
coordination.unionYoy = parseFloat(data.unionYoy); |
|
|
@ -435,15 +435,6 @@ async function loadEnterprise() { |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
async function loadNjcAll() { |
|
|
|
|
|
const res = await safeLoad(() => analysisEnterprisesNonAll(getTimeParams())); |
|
|
|
|
|
if (res) { |
|
|
|
|
|
njcAll.value = toNum(unwrapData(res)); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
// Mock data for when API is unavailable (已删除) |
|
|
|
|
|
|
|
|
|
|
|
async function loadAdminType() { |
|
|
async function loadAdminType() { |
|
|
const res = await safeLoad(() => analysisRegistrationType(getTimeParams())); |
|
|
const res = await safeLoad(() => analysisRegistrationType(getTimeParams())); |
|
|
const list = res ? normalizeDictStatList(unwrapData(res)) : []; |
|
|
const list = res ? normalizeDictStatList(unwrapData(res)) : []; |
|
|
@ -560,7 +551,6 @@ async function refreshAll() { |
|
|
await Promise.allSettled([ |
|
|
await Promise.allSettled([ |
|
|
loadCoordination(), |
|
|
loadCoordination(), |
|
|
loadEnterprise(), |
|
|
loadEnterprise(), |
|
|
loadNjcAll(), |
|
|
|
|
|
loadAdminType(), |
|
|
loadAdminType(), |
|
|
loadNonType(), |
|
|
loadNonType(), |
|
|
loadAdminTrend(), |
|
|
loadAdminTrend(), |
|
|
|