| 
					
				 | 
			
			
				@@ -0,0 +1,143 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	<div class="sensitive-words flex"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		<div class="table-box"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			<pageSearch ref="searchTableRef" :searchConfig="searchDetailConfig" /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			<pageContent 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				ref="tableListRef" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				:total="total" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				v-loading="loading" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				:contentConfig="contentDetailConfig" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				:pageList="tableData" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				<template #operate="scope"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					<el-button type="primary" link @click="handleCheck(scope.row.liaisonId)"> 查看 </el-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				</template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			</pageContent> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			<!-- <pageDetail :modalConfig="detailConfig" ref="modalRef"> </pageDetail> --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		</div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	</div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+</template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<script setup lang="ts"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import pageContent from '@/components/components/pageContent.vue'; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import contentDetailConfig from '../mattersStatistics/config/content.detail.config'; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import searchDetailConfig from './config/search.config.detail'; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import pageSearch from '@/components/components/pageSearch.vue'; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import pageDetail from './components/detail.detail.vue'; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+// import detailConfig from './config/detail.config'; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import useSystemStore from '@/store/main'; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import { useRoute, useRouter } from 'vue-router'; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	bj_notification_type, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	overdueStatus, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	notificationStatus, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	bj_lssuing_unit, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	categoryOnm, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	isFeedback, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	takeMeasures, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} from '@/plugins/dictData'; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+// 使用pinia数据 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+const systemStore = useSystemStore(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+const { pageDetailInfo, searchObj } = storeToRefs(systemStore); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+const total = ref(0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+const pageSize = ref([10, 20, 30]); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+const tableData = ref([]); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+const tableListRef: any = ref<InstanceType<typeof pageContent>>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+// --- 路由与Store --- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+const route = useRoute(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+const router = useRouter(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+const activeTab = ref('1'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+const searchTableRef: any = ref<InstanceType<typeof pageSearch>>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+// 操作弹框 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import usePageModal from '@/components/components/hooks/usePageDetails'; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+const { modalRef, handleNewDataClick, handleEditDataClick, handleCheckDataClick, handlePageDetail } = 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	usePageModal(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+const handleCheck = async (id: string) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	await handlePageDetail(id); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	await handleCheckDataClick(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+onMounted(async () => {}); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+const loading = ref(false); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+// 筛选-状态赋值 bj_notification_status 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+async function searchItem() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	searchDetailConfig.formItems.forEach(item => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if (item.prop === 'deliveryUnit') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			item.options = bj_lssuing_unit; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if (item.prop === 'releasedUnit') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			item.options = bj_lssuing_unit; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if (item.prop === 'notificationStatus') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			item.options = notificationStatus; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if (item.prop === 'overdueStatus') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			item.options = overdueStatus; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if (item.prop === 'notificationType') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			item.options = bj_notification_type; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if (item.prop === 'conm') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			item.options = categoryOnm; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if (item.prop === 'wfir') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			item.options = isFeedback; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if (item.prop === 'takeMeasures') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			item.options = takeMeasures; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	}); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+searchItem(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+</script> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<style scoped lang="scss"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+.sensitive-words { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	height: calc(100vh - 95px); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	margin-top: 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	overflow-y: auto; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	overflow-x: hidden; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	scrollbar-width: none; /* 可选:隐藏滚动条 */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	&::-webkit-scrollbar { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		display: none; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+.status { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	cursor: pointer; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	position: relative; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	.status-tip { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		position: absolute; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		top: 2px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		left: 60px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+.dialog-tip { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	text-align: center; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+.table-box { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	width: 55%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	display: flex; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	flex-direction: column; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	flex: 3; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+:deep .el-tabs__item.is-active { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	color: #fff; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	background-color: #409eff; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+:deep .el-tabs__header { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	padding-left: 20px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	background-color: #fff; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+</style> 
			 |