Pārlūkot izejas kodu

refactor(qualityControlAnalysisReport): 更新部门名称从旅检科改为安检大队

fix(home-new): 优化消息推送空数据时的显示样式
移除无数据时的默认文本显示,并调整消息容器间距

refactor(qualityControlAnalysisReport): 移除模拟数据功能
删除qaAnalysis组件中的setMockData方法及相关模拟数据

fix(qualityControlAnalysisReport): 修正资质等级描述中的默认等级
将一级改为高级,并更新相关描述文本
huoyi 2 dienas atpakaļ
vecāks
revīzija
a1a2f10545

+ 7 - 6
src/pages/home-new/components/messagePush.vue

@@ -1,7 +1,8 @@
1 1
 <template>
2 2
     <div class="tips" @click="navigateToMessagePush">
3 3
         <img alt="" src="@/static/images/messagePush.png">
4
-        <div class="message-container">
4
+        <div class="message-container"
5
+            :style="{ gap: prohibitedItemText && concealmentPositionText && highRiskChannelText ? '8rpx' : '0rpx' }">
5 6
             <div class="message-line message-title">近15天违禁品查获情况群体消息推送</div>
6 7
             <div class="message-line">{{ prohibitedItemText }}</div>
7 8
             <div class="message-line">{{ concealmentPositionText }}</div>
@@ -24,7 +25,7 @@ export default {
24 25
     computed: {
25 26
         prohibitedItemText() {
26 27
             if (!this.prohibitedItemsTop3 || this.prohibitedItemsTop3.length === 0) {
27
-                return '移交公安TOP1:';
28
+                return '';
28 29
             }
29 30
             const item = this.prohibitedItemsTop3[0];
30 31
             const nameOne = item.categoryNameOne || '';
@@ -33,7 +34,7 @@ export default {
33 34
         },
34 35
         concealmentPositionText() {
35 36
             if (!this.concealmentPositionsTop3 || this.concealmentPositionsTop3.length === 0) {
36
-                return '藏匿部位TOP1:';
37
+                return '';
37 38
             }
38 39
             const item = this.concealmentPositionsTop3[0];
39 40
             const nameOne = item.positionNameOne || '';
@@ -42,7 +43,7 @@ export default {
42 43
         },
43 44
         highRiskChannelText() {
44 45
             if (!this.highRiskChannelsTop3 || this.highRiskChannelsTop3.length === 0) {
45
-                return '高发通道TOP1:';
46
+                return '';
46 47
             }
47 48
             const item = this.highRiskChannelsTop3[0];
48 49
             const terminalName = item.terminalName || '';
@@ -64,7 +65,7 @@ export default {
64 65
             try {
65 66
                 const response = await getPushMessage();
66 67
                 console.log('推送消息响应:', response);
67
-                
68
+
68 69
                 if (response && response.data) {
69 70
                     const { concealmentPositionsTop3, highRiskChannelsTop3, prohibitedItemsTop3 } = response.data;
70 71
                     this.concealmentPositionsTop3 = concealmentPositionsTop3 || [];
@@ -75,7 +76,7 @@ export default {
75 76
                 console.error('获取推送消息失败:', error);
76 77
             }
77 78
         },
78
-        
79
+
79 80
         // 跳转到消息推送详情页面
80 81
         navigateToMessagePush() {
81 82
             uni.navigateTo({

+ 12 - 12
src/pages/qualityControlAnalysisReport/components/dutyOrganization.vue

@@ -342,7 +342,7 @@ export default {
342 342
           }
343 343
         },
344 344
         legend: {
345
-          data: ['旅检一科', '旅检二科', '旅检三科', '全站'],
345
+          data: ['安检一大队', '安检二大队', '安检三大队', '全站'],
346 346
           top: 0,
347 347
           show: true,
348 348
         },
@@ -404,7 +404,7 @@ export default {
404 404
             data: []
405 405
           },
406 406
           {
407
-            name: '旅检一科',
407
+            name: '安检一大队',
408 408
             type: 'bar',
409 409
             barWidth: '10%',
410 410
             itemStyle: {
@@ -414,7 +414,7 @@ export default {
414 414
             data: []
415 415
           },
416 416
           {
417
-            name: '旅检二科',
417
+            name: '安检二大队',
418 418
             type: 'bar',
419 419
             barWidth: '10%',
420 420
             itemStyle: {
@@ -424,7 +424,7 @@ export default {
424 424
             data: []
425 425
           },
426 426
           {
427
-            name: '旅检三科',
427
+            name: '安检三大队',
428 428
             type: 'bar',
429 429
             barWidth: '10%',
430 430
             itemStyle: {
@@ -456,7 +456,7 @@ export default {
456 456
           }
457 457
         },
458 458
         legend: {
459
-          data: ['旅检一科', '旅检二科', '旅检三科'],
459
+          data: ['安检一大队', '安检二大队', '安检三大队'],
460 460
           top: 0
461 461
         },
462 462
         grid: {
@@ -739,7 +739,7 @@ export default {
739 739
               data: allData
740 740
             },
741 741
             {
742
-              name: '旅检一科',
742
+              name: '安检一大队',
743 743
               type: 'bar',
744 744
               barWidth: '10%',
745 745
               itemStyle: {
@@ -749,7 +749,7 @@ export default {
749 749
               data: dept1Data
750 750
             },
751 751
             {
752
-              name: '旅检二科',
752
+              name: '安检二大队',
753 753
               type: 'bar',
754 754
               barWidth: '10%',
755 755
               itemStyle: {
@@ -759,7 +759,7 @@ export default {
759 759
               data: dept2Data
760 760
             },
761 761
             {
762
-              name: '旅检三科',
762
+              name: '安检三大队',
763 763
               type: 'bar',
764 764
               barWidth: '10%',
765 765
               itemStyle: {
@@ -885,7 +885,7 @@ export default {
885 885
       // 找出占比最高的等级
886 886
       const highestLevel = data.reduce((max, item) => {
887 887
         return (item.count || 0) > (max.count || 0) ? item : max
888
-      }, { levelName: '级', count: 0 })
888
+      }, { levelName: '级', count: 0 })
889 889
 
890 890
       // 计算总人数
891 891
       const totalCount = data.reduce((sum, item) => sum + (item.count || 0), 0)
@@ -896,7 +896,7 @@ export default {
896 896
       const deptName = this.attendanceData && this.attendanceData.length > 0 && this.attendanceData[this.attendanceData.length - 1] ?
897 897
         this.attendanceData[this.attendanceData.length - 1].deptName : ''
898 898
 
899
-      return `${deptName}资质等级以"${highestLevel.levelName || '级'}"为主(占比为${highestPercentage}%)`
899
+      return `${deptName}资质等级以"${highestLevel.levelName || '级'}"为主(占比为${highestPercentage}%)`
900 900
     },
901 901
 
902 902
     // 格式化资质等级描述第二部分
@@ -920,7 +920,7 @@ export default {
920 920
 
921 921
         barData.forEach(dept => {
922 922
           if (dept.levelCounts && Array.isArray(dept.levelCounts)) {
923
-            const level1Data = dept.levelCounts.find(level => level.levelName === '级')
923
+            const level1Data = dept.levelCounts.find(level => level.levelName === '级')
924 924
             const deptTotalCount = dept.levelCounts.reduce((sum, level) => sum + (level.count || 0), 0)
925 925
 
926 926
             if (level1Data && level1Data.count > maxLevel1Count) {
@@ -937,7 +937,7 @@ export default {
937 937
       }
938 938
 
939 939
       // 生成第二部分描述文字
940
-      return `全站资质等级为"级"的人员集中在${topDeptForLevel1}(${level1Count}人)${topDeptForLevel1}的人员规模(共${totalDeptCount}人)高于一科、二科`
940
+      return `全站资质等级为"级"的人员集中在${topDeptForLevel1}(${level1Count}人)${topDeptForLevel1}的人员规模(共${totalDeptCount}人)高于一科、二科`
941 941
     },
942 942
 
943 943
     // 检查是否为用户类型(已废弃,使用computed属性替代)

+ 2 - 48
src/pages/qualityControlAnalysisReport/components/qaAnalysis.vue

@@ -312,8 +312,7 @@ export default {
312 312
 
313 313
       } catch (error) {
314 314
         console.error('加载抽问抽答数据失败:', error)
315
-        // 模拟数据作为备选
316
-        this.setMockData()
315
+      
317 316
       } finally {
318 317
         this.loading = false
319 318
       }
@@ -687,52 +686,7 @@ export default {
687 686
       return maxValue
688 687
     },
689 688
 
690
-    // 设置模拟数据
691
-    setMockData() {
692
-      // 答题完成趋势数据
693
-      const mockCompletionData = {
694
-        processedData: [
695
-          {
696
-            name: '全站',
697
-            type: 'line',
698
-            data: [85, 88, 92, 90, 87, 89, 91, 93, 95, 94, 92, 90],
699
-            symbol: 'circle',
700
-            symbolSize: 6,
701
-            smooth: true,
702
-            lineStyle: { width: 3 }
703
-          }
704
-        ],
705
-        xAxisData: ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月']
706
-      }
707
-
708
-      this.completionTrendDescription = '全站共答题120人次,同比+5.2%,环比+2.1%,旅检一科共答题45人次,占比最高为37.5%。'
709
-      this.updateCompletionTrendChart(mockCompletionData.processedData, mockCompletionData.xAxisData)
710
-
711
-      // 错题分布数据
712
-      const mockPieData = [
713
-        { value: 45.3, name: '操作执行类' },
714
-        { value: 28.7, name: '设施设备类' },
715
-        { value: 15.2, name: '勤务组织类' },
716
-        { value: 8.4, name: '安全知识类' },
717
-        { value: 2.4, name: '其他' }
718
-      ]
719
-
720
-      this.errorDistributionDescription = '错题主要集中于:操作执行类,占比:45.30%;其次为:设施设备类,占比:28.70%,为靶向培训、题库优化提供核心依据。'
721
-      this.updateErrorDistributionChart(mockPieData)
722
-
723
-      // 各科错题分布对比数据
724
-      const mockRadarData = {
725
-        indicators: ['操作执行类', '设施设备类', '勤务组织类', '安全知识类', '其他'],
726
-        series: [
727
-          { name: '旅检一科', data: [85, 45, 30, 60, 10] },
728
-          { name: '旅检二科', data: [40, 80, 55, 70, 15] },
729
-          { name: '旅检三科', data: [35, 50, 90, 45, 20] }
730
-        ]
731
-      }
732
-
733
-      this.departmentComparisonDescription = '旅检一科:问题主要集中于操作执行类;旅检二科:问题主要集中于设施设备类;旅检三科:问题主要集中于勤务组织类,可精准识别主管管理短板,分配质控资源。'
734
-      this.updateDepartmentComparisonChart(mockRadarData)
735
-    }
689
+   
736 690
   }
737 691
 }
738 692
 </script>

+ 3 - 3
src/pages/qualityControlAnalysisReport/components/riskHazard.vue

@@ -160,7 +160,7 @@
160 160
       </view>
161 161
 
162 162
       <!-- 第九个:可能异常查获数据 -->
163
-      <view class="panel-item" v-show="!isTeamsType && !isUserType">
163
+      <view class="panel-item" v-show="!isTeamsType && !isUserType && !isDepartmentType">
164 164
         <view class="panel-header">
165 165
           <text class="header-text">可能异常查获数据</text>
166 166
         </view>
@@ -168,7 +168,7 @@
168 168
         <!-- 描述卡片 -->
169 169
         <view class="describe-card" v-if="abnormalCaptureStats">
170 170
           <view class="describe-content">
171
-            {{ abnormalCaptureStats || '旅检一科、旅检二科、旅检三科查获违禁品数量显著高于整体水平,旅检四科、旅检五科查获违禁品数量显著低于整体水平。' }}
171
+            {{ abnormalCaptureStats || '安检一大队、安检二大队、安检三大队查获违禁品数量显著高于整体水平,旅检四科、旅检五科查获违禁品数量显著低于整体水平。' }}
172 172
           </view>
173 173
         </view>
174 174
 
@@ -946,7 +946,7 @@ export default {
946 946
       return data.slice(0, 5).map(item => ({
947 947
         channel: item.channelName || '未知通道',
948 948
         count: item.seizureQuantity || 0,
949
-        area: item.area || '未知区域'
949
+        area: item.regionalName || '未知区域'
950 950
       }))
951 951
     },
952 952