Browse Source

企业画像

master
wangmingyong@163.com 4 weeks ago
parent
commit
ddca60bf24
  1. 2
      zdxt-web-client/zdxt-efcode-enforcement-app/src/api/enforcement/index.js
  2. 1
      zdxt-web-client/zdxt-efcode-enforcement-app/src/util/util.js
  3. 38
      zdxt-web-client/zdxt-efcode-enforcement-app/src/views/enforcement/components/EnterpriseRecordCard.vue
  4. 13
      zdxt-web-client/zdxt-efcode-enforcement-app/src/views/enforcement/statistics/statisticsAnalysis.vue
  5. 4
      zdxt-web-client/zdxt-efcode-enforcement-app/vite-env/.env.enforcement-dev-wmy

2
zdxt-web-client/zdxt-efcode-enforcement-app/src/api/enforcement/index.js

@ -46,7 +46,7 @@ export const getEducationServicesDetail = (params, success, error) => _get(baseU
// region 案件模块
export const queryXzjcList = (enterpriseNumber, success, error) => _get(baseUrl + "/caseInfo/queryXzjcList", { c601034: enterpriseNumber }, success, error);
export const queryXzjcList = (enterpriseNumber, success, error) => _get(baseUrl + "/caseInfo/oldQueryXzjcList", { c601034: enterpriseNumber }, success, error);
export const queryXzcfList = (enterpriseNumber, success, error) => _get(baseUrl + "/caseInfo/queryXzcfList", { c201016: enterpriseNumber }, success, error);

1
zdxt-web-client/zdxt-efcode-enforcement-app/src/util/util.js

@ -166,7 +166,6 @@ const getDeviceType = () =>{
* @returns {Array} - 格式化后的执法人员数组每个元素为 "名字 - ID" 的格式
*/
const formatEnforcer = (item) => {
console.log(item,'item')
const enforcers = [];
if (item.lawEnforcer) {
const names = item.lawEnforcer.split(',').map(n => n.trim()).filter(n => n);

38
zdxt-web-client/zdxt-efcode-enforcement-app/src/views/enforcement/components/EnterpriseRecordCard.vue

@ -17,8 +17,8 @@
<div v-for="(item, index) in recordList" :key="index" class="record-card-item">
<div class="record-header">
<div class="record-company">{{ item.c601002 }}</div>
<div class="record-date">执法时间{{ item.c601005 }}</div>
<div class="record-count">执法结果{{ item.c601015 === '01' ? '合格' : '不合格' }}</div>
<div class="record-date">执法时间{{ formatTime(item.c601005) }}</div>
<!-- <div class="record-count">执法结果{{ item.c601015 === '01' ? '合格' : '不合格' }}</div> -->
</div>
</div>
<div v-if="recordList.length === 0" class="empty-state">
@ -30,9 +30,11 @@
<div class="record-list" v-if="recordTab === 1">
<div v-for="(item, index) in props.cfRecords" :key="index" class="record-card-item">
<div class="record-header">
<div class="record-company">{{ item.c601002 }}</div>
<div class="record-date">执法时间{{ item.c601005 }}</div>
<div class="record-count">执法结果{{ item.c601015 === '01' ? '合格' : '不合格' }}</div>
<div class="record-company">{{ item.c201002 }}</div>
<div class="record-date">执法主体{{ item.c201003 }}</div>
<div class="record-date">处罚种类{{ formatPunishType(item.c206011) }}</div>
<div class="record-date">处罚决定{{ item.c206010=="01" ? "给予处罚" : "不予处罚" }}</div>
<div class="record-date">处罚日期{{ formatTime(item.c206013) }}</div>
</div>
</div>
<div v-if="props.cfRecords.length === 0" class="empty-state">
@ -44,9 +46,11 @@
<div class="record-list" v-if="recordTab === 2">
<div v-for="(item, index) in props.qzRecords" :key="index" class="record-card-item">
<div class="record-header">
<div class="record-company">{{ item.c601002 }}</div>
<div class="record-date">执法时间{{ item.c601005 }}</div>
<div class="record-count">执法结果{{ item.c601015 === '01' ? '合格' : '不合格' }}</div>
<div class="record-company">{{ item.c301002!= '无'? item.c301002 : '-' }}</div>
<div class="record-date">强制种类{{ item.c302002}}</div>
<div class="record-date">强制措施{{ item.c302001}}</div>
<div class="record-date">批准时间{{ formatTime(item.c302007) }}</div>
</div>
</div>
<div v-if="props.qzRecords.length === 0" class="empty-state">
@ -59,6 +63,7 @@
<script setup>
import { ref } from 'vue';
import { formatTime } from '@/utils/utils';
const props = defineProps({
recordList: {
@ -89,6 +94,23 @@ const recordTab = ref(0);
const cfExpanded = ref(false);
const qzExpanded = ref(false);
const punishTypeMap = {
'01': '警告',
'02': '通报批评',
'03': '罚款',
'04': '没收违法所得',
'05': '没收违法财产',
'06': '责令停业整改',
'07': '暂扣许可证件',
'08': '行政拘留',
'09': '吊销许可证件',
};
const formatPunishType = (val) => {
if (!val) return '-';
return val.split(',').map(code => punishTypeMap[code] || code).join('、');
};
const toggleExpand = () => {
emit('toggle-expand');
};

13
zdxt-web-client/zdxt-efcode-enforcement-app/src/views/enforcement/statistics/statisticsAnalysis.vue

@ -44,16 +44,16 @@
<div class="total-number">{{ animatedTotal }}</div>
</div>
<div class="right-part">
<div class="comparison-item">
<!-- <div class="comparison-item">
<span class="comparison-label">环比</span>
<span class="up-arrow"></span>
<span class="comparison-value up">{{ statistics.huanPercentage }}%</span>
</div>
<div class="comparison-item">
</div> -->
<!-- <div class="comparison-item">
<span class="comparison-label">同比</span>
<span class="up-arrow"></span>
<span class="comparison-value up">{{ statistics.tongPercentage }}%</span>
</div>
</div> -->
</div>
</div>
@ -362,6 +362,7 @@ const loadStatistics = () => {
plantTotal: data.plantTotal || 0, //
huanPercentage: data.huanPercentage || 0, //
tongPercentage: data.tongPercentage || 0, //
total: data.total || 0, //
};
// 使
@ -409,7 +410,8 @@ const loadStatistics = () => {
const startNumberAnimation = () => {
const duration = 1000;
const startTime = performance.now();
const targetTotal = statistics.value.registrationTotal; //
const targetTotal = statistics.value.total; //
// const targetTotal = 1; //
const targetNotice = statistics.value.noticeTotal; //
const targetAuth = statistics.value.authTotal; //
@ -421,7 +423,6 @@ const startNumberAnimation = () => {
const elapsed = currentTime - startTime;
const progress = Math.min(elapsed / duration, 1);
const easeOut = 1 - Math.pow(1 - progress, 3);
animatedTotal.value = Math.round(targetTotal * easeOut);
animatedNotice.value = Math.round(targetNotice * easeOut);
animatedAuth.value = Math.round(targetAuth * easeOut);

4
zdxt-web-client/zdxt-efcode-enforcement-app/vite-env/.env.enforcement-dev-wmy

@ -4,8 +4,8 @@ VITE_BASE_URL = '/efcode20-enf-app/api'
VITE_CONTEXT_PATH = '/efcode20-enf-app/'
# VITE_PROXY_TARGET = 'http://139.186.148.21:8080'
# VITE_API_URL = 'http://192.168.1.17:8080'
VITE_PROXY_TARGET = 'http://172.16.21.213:8080'
# VITE_PROXY_TARGET = 'http://192.168.1.17:8080'
# VITE_PROXY_TARGET = 'http://172.16.21.213:8080'
VITE_PROXY_TARGET = 'http://172.16.20.72:8080'
VITE_DEFAULT_LOGIN = '/enforcement/loginByPassword'
VITE_APP_ENV = 'dev'
VITE_FILE_URL = ''

Loading…
Cancel
Save