浏览代码

reactor:通知公告新增超时阅读标记;

zhangchong 1 年之前
父节点
当前提交
69415b5183

+ 0 - 143
src/views/auxiliary/notice/component/Notice-detail.vue

@@ -1,143 +0,0 @@
-<template>
-	<el-dialog v-model="state.dialogVisible" width="50%" draggable :title="dialogTitle">
-		<el-form :model="state.ruleForm" label-width="110px" ref="ruleFormRef">
-			<template v-if="dialogTitle === '通知详情'">
-				<el-row :gutter="10">
-					<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12">
-						<el-form-item label="通知类型" prop="commonType" :rules="[{ required: true, message: '请选择通知类型', trigger: 'change' }]">
-							<el-select v-model="state.ruleForm.commonType" placeholder="请选择通知类型" clearable class="w100">
-								<el-option v-for="item in commonType" :value="item.key" :key="item.key" :label="item.value" />
-							</el-select>
-						</el-form-item>
-					</el-col>
-					<el-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
-						<el-form-item label="通知标题" prop="content" :rules="[{ required: true, message: '请输入通知标题', trigger: 'blur' }]">
-							<el-input v-model="state.ruleForm.content" placeholder="请输入通知标题" clearable show-word-limit maxlength="200"></el-input>
-						</el-form-item>
-					</el-col>
-					<el-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
-						<el-form-item label="必须阅读" prop="content" :rules="[{ required: true, message: '请选择必须阅读', trigger: 'change' }]">
-							<el-radio-group v-model="state.ruleForm.content">
-								<el-radio label="1">是</el-radio>
-								<el-radio label="2">否</el-radio>
-							</el-radio-group>
-						</el-form-item>
-					</el-col>
-				</el-row>
-			</template>
-			<template v-if="dialogTitle === '公告详情'">
-				<el-row :gutter="10">
-					<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12">
-						<el-form-item label="公告类型:">
-              {{ state.ruleForm.bulletinTypeName}}
-						</el-form-item>
-					</el-col>
-					<el-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
-						<el-form-item label="公告标题:" >
-              {{ state.ruleForm.title}}
-						</el-form-item>
-					</el-col>
-					<el-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
-						<el-form-item label="失效时间:">
-              {{ formatDate(state.ruleForm.loseEfficacyTime, 'YYYY-mm-dd HH:MM:SS') }}
-						</el-form-item>
-					</el-col>
-					<el-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
-						<el-form-item label="来源单位:">
-              {{ state.ruleForm.sourceOrgName}}
-						</el-form-item>
-					</el-col>
-					<el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
-						<el-form-item label="公告范围:" >
-              {{ state.ruleForm.pushRangesText}}
-						</el-form-item>
-					</el-col>
-					<el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
-						<el-form-item label="文档内容:">
-              <div v-html="state.ruleForm.content"></div>
-						</el-form-item>
-					</el-col>
-				</el-row>
-			</template>
-		</el-form>
-		<template #footer>
-			<span class="dialog-footer">
-				<el-button @click="closeDialog" class="default-button">关 闭</el-button>
-			</span>
-		</template>
-	</el-dialog>
-</template>
-
-<script setup lang="ts" name="noticeDetail">
-import { reactive, ref, defineAsyncComponent } from 'vue';
-import '@wangeditor/editor/dist/css/style.css'; // 引入 css
-import { bulletinAddBaseData, bulletinDetail } from '/@/api/auxiliary/notice';
-import {formatDate} from "/@/utils/formatTime";
-// 引入组件
-const Editor = defineAsyncComponent(() => import('/@/components/Editor/index.vue')); // 富文本编辑器
-// 定义子组件向父组件传值/事件
-const emit = defineEmits(['updateList']);
-const props = defineProps({
-	commonType: {
-		type: Array,
-		default: () => [],
-	},
-});
-// 定义变量内容
-const state = reactive<any>({
-	dialogVisible: false,
-	ruleForm: {
-		bulletinObj: {}, // 公告类型
-		bulletinType: '', // 公告类型
-		bulletinTypeName: '', // 公告类型
-		title: '', // 公告标题
-		loseEfficacyTime: '', // 失效时间
-		sourceOrgId: '', // 来源单位
-		pushRangesArray: [], // 公告范围
-		content: '', // 文档内容
-		sourceOrg: [], // 来源单位
-	},
-});
-let loading = ref<boolean>(false); // 加载状态
-// 打开弹窗
-const ruleFormRef = ref<RefType>();
-const dialogTitle = ref<string>('通知详情');
-
-const bulletinTypeOptions = ref<EmptyArrayType>([]); // 公告类型
-const circularTypeOptions = ref<EmptyArrayType>([]); // 通知类型
-const pushRangesOptions = ref<EmptyArrayType>([]); // 公告范围
-const orgsOptions = ref<EmptyArrayType>([]); // 来源单位
-const openDialog = async (row: any, type: string) => {
-	try {
-    switch (type) {
-      case '0':
-        dialogTitle.value = '通知详情';
-        break;
-      case '1':
-        dialogTitle.value = '公告详情';
-        const [responseAnnounce, response] = await Promise.all([bulletinAddBaseData(), bulletinDetail(row.id)]);
-        bulletinTypeOptions.value = responseAnnounce.result?.bulletinType ?? [];
-        pushRangesOptions.value = responseAnnounce.result?.pushRanges ?? [];
-        orgsOptions.value = responseAnnounce.result?.orgsOptions ?? [];
-
-        state.ruleForm = response.result;
-        break;
-      default:
-        dialogTitle.value = '通知详情';
-        break;
-    }
-		state.dialogVisible = true;
-	} catch (error) {
-		console.log(error);
-	}
-};
-// 关闭弹窗
-const closeDialog = () => {
-	state.dialogVisible = false;
-};
-// 暴露变量
-defineExpose({
-	openDialog,
-	closeDialog,
-});
-</script>

+ 16 - 3
src/views/auxiliary/notice/detail.vue

@@ -190,9 +190,22 @@ const closePage = () => {
 	// 关闭当前 tagsView
 	mittBus.emit('onCurrentContextmenuClick', Object.assign({}, { contextMenuClickId: 1, ...route }));
 	mittBus.emit('clearCache', 'auxiliaryNoticeAudit');
-	router.push({
-		path: '/auxiliary/noticeAudit',
-	});
+  if(noticeType.value === '通知审批'){
+    router.push({
+      path: '/auxiliary/noticeAudit',
+    });
+  }else if(noticeType.value === '公告审批'){
+    router.push({
+      name: 'auxiliaryNoticeAudit',
+      state: {
+        index: '1',
+      },
+    });
+  }else{
+    router.push({
+      path: '/auxiliary/noticeAudit',
+    });
+  }
 };
 const examineFormRef = ref<RefType>();
 // 审核通过

+ 1 - 1
src/views/auxiliary/notice/index.vue

@@ -88,7 +88,7 @@
 										<el-scrollbar class="mt5" v-if="row.circularReadGroups?.length">
 											<el-tag v-for="item in row.circularReadGroups.filter((i) => i.isRead)">{{
 												row.circularType === 1 ? item.userName : item.orgName
-											}}</el-tag>
+											}} <span v-if="item.isTimeOut" class="color-danger">(超时阅读)</span> </el-tag>
 										</el-scrollbar>
 									</div>
 									<div class="notice-container-box-inner">

+ 234 - 247
src/views/auxiliary/noticeAudit/index.vue

@@ -1,290 +1,277 @@
 <template>
-  <div class="auxiliary-notice-audit-container layout-pd">
-    <el-card shadow="never">
-      <el-tabs v-model="listType" @tab-change="queryList">
-        <el-tab-pane name="0" label="通知审批"></el-tab-pane>
-        <el-tab-pane name="1" label="公告审批"></el-tab-pane>
-      </el-tabs>
-      <el-form :model="state.queryParams" ref="ruleFormRef" :inline="true" @submit.native.prevent class="mt10">
-        <el-form-item label="标题" prop="Title">
-          <el-input v-model="state.queryParams.Title" placeholder="标题" clearable @keyup.enter="queryList" style="width: 250px" />
-        </el-form-item>
-        <template v-if="listType === '0'">
-          <el-form-item label="通知类型" prop="CircularTypeId">
-            <el-select v-model="state.queryParams.CircularTypeId" placeholder="请选择通知类型">
-              <el-option v-for="item in circularType" :value="item.dicDataValue" :key="item.dicDataValue" :label="item.dicDataName" />
-            </el-select>
-          </el-form-item>
-          <el-form-item label="通知时间" prop="exTime">
-            <el-date-picker
-                v-model="state.queryParams.exTime"
-                type="datetimerange"
-                unlink-panels
-                range-separator="至"
-                start-placeholder="开始时间"
-                end-placeholder="结束时间"
-                :shortcuts="shortcuts"
-                @change="timeStartChangeCr"
-                value-format="YYYY-MM-DD[T]HH:mm:ss"
-            />
-          </el-form-item>
-        </template>
-        <template v-else>
-          <el-form-item label="公告类型" prop="BulletinTypeId">
-            <el-select v-model="state.queryParams.BulletinTypeId" placeholder="请选择公告类型">
-              <el-option v-for="item in bulletinType" :value="item.dicDataValue" :key="item.dicDataValue" :label="item.dicDataName" />
-            </el-select>
-          </el-form-item>
-          <el-form-item label="公告时间" prop="Time">
-            <el-date-picker
-                v-model="state.queryParams.Time"
-                type="datetimerange"
-                unlink-panels
-                range-separator="至"
-                start-placeholder="开始时间"
-                end-placeholder="结束时间"
-                :shortcuts="shortcuts"
-                @change="timeStartChange"
-                value-format="YYYY-MM-DD[T]HH:mm:ss"
-            />
-          </el-form-item>
-        </template>
+	<div class="auxiliary-notice-audit-container layout-pd">
+		<el-card shadow="never">
+			<el-tabs v-model="listType" @tab-change="queryList">
+				<el-tab-pane name="0" label="通知审批"></el-tab-pane>
+				<el-tab-pane name="1" label="公告审批"></el-tab-pane>
+			</el-tabs>
+			<el-form :model="state.queryParams" ref="ruleFormRef" :inline="true" @submit.native.prevent class="mt10">
+				<el-form-item label="标题" prop="Title">
+					<el-input v-model="state.queryParams.Title" placeholder="标题" clearable @keyup.enter="queryList" style="width: 250px" />
+				</el-form-item>
+				<template v-if="listType === '0'">
+					<el-form-item label="通知类型" prop="CircularTypeId">
+						<el-select v-model="state.queryParams.CircularTypeId" placeholder="请选择通知类型">
+							<el-option v-for="item in circularType" :value="item.dicDataValue" :key="item.dicDataValue" :label="item.dicDataName" />
+						</el-select>
+					</el-form-item>
+					<el-form-item label="通知时间" prop="exTime">
+						<el-date-picker
+							v-model="state.queryParams.exTime"
+							type="datetimerange"
+							unlink-panels
+							range-separator="至"
+							start-placeholder="开始时间"
+							end-placeholder="结束时间"
+							:shortcuts="shortcuts"
+							@change="timeStartChangeCr"
+							value-format="YYYY-MM-DD[T]HH:mm:ss"
+						/>
+					</el-form-item>
+				</template>
+				<template v-else>
+					<el-form-item label="公告类型" prop="BulletinTypeId">
+						<el-select v-model="state.queryParams.BulletinTypeId" placeholder="请选择公告类型">
+							<el-option v-for="item in bulletinType" :value="item.dicDataValue" :key="item.dicDataValue" :label="item.dicDataName" />
+						</el-select>
+					</el-form-item>
+					<el-form-item label="公告时间" prop="Time">
+						<el-date-picker
+							v-model="state.queryParams.Time"
+							type="datetimerange"
+							unlink-panels
+							range-separator="至"
+							start-placeholder="开始时间"
+							end-placeholder="结束时间"
+							:shortcuts="shortcuts"
+							@change="timeStartChange"
+							value-format="YYYY-MM-DD[T]HH:mm:ss"
+						/>
+					</el-form-item>
+				</template>
 
-        <el-form-item>
-          <el-button type="primary" @click="queryList" :loading="state.loading"> <SvgIcon name="ele-Search" class="mr5" />查询 </el-button>
-          <el-button @click="resetQuery(ruleFormRef)" v-waves class="default-button"> <SvgIcon name="ele-Refresh" class="mr5" />重置 </el-button>
-        </el-form-item>
-      </el-form>
-      <!-- 表格 -->
-      <el-table :data="state.tableData" v-loading="state.loading" row-key="id" ref="multipleTableRef" @selection-change="handleSelectionChange">
-        <el-table-column type="selection" width="55" />
-        <!--  通知  -->
-        <template v-if="listType === '0'">
-          <el-table-column prop="circularTypeName" label="通知类型" show-overflow-tooltip></el-table-column>
-          <el-table-column prop="circularStateText" label="通知状态" show-overflow-tooltip></el-table-column>
-          <el-table-column prop="title" label="通知标题" show-overflow-tooltip></el-table-column>
-          <el-table-column prop="commonTypeText" label="必须阅读" show-overflow-tooltip>
-            <template #default="{ row }">
-              {{row.isMustRead ? '是' : '否'}}
-            </template>
-          </el-table-column>
-          <el-table-column prop="circularTypeText" label="通知对象" show-overflow-tooltip></el-table-column>
-          <el-table-column prop="commonTypeText" label="通知时间" show-overflow-tooltip width="170">
-            <template #default="{ row }">
-              <span>{{ formatDate(row.creationTime, 'YYYY-mm-dd HH:MM:SS') }}</span>
-            </template>
-          </el-table-column>
-          <el-table-column label="失效时间" show-overflow-tooltip width="170">
-            <template #default="{ row }">
-              <span>{{ formatDate(row.lostEfficacyTime, 'YYYY-mm-dd HH:MM:SS') }}</span>
-            </template>
-          </el-table-column>
-          <el-table-column prop="sourceOrgName" label="来源单位" show-overflow-tooltip></el-table-column>
-        </template>
-        <!--  公告  -->
-        <template v-if="listType === '1'">
-          <el-table-column prop="bulletinTypeName" label="公告类型" show-overflow-tooltip></el-table-column>
-          <el-table-column prop="bulletinStateText" label="公告状态" show-overflow-tooltip></el-table-column>
-          <el-table-column prop="title" label="公告标题" show-overflow-tooltip></el-table-column>
-          <el-table-column prop="pushRangesText" label="公告范围" show-overflow-tooltip width="300"></el-table-column>
-          <el-table-column prop="commonTypeText" label="通知时间" show-overflow-tooltip width="170">
-            <template #default="{ row }">
-              <span>{{ formatDate(row.creationTime, 'YYYY-mm-dd HH:MM:SS') }}</span>
-            </template>
-          </el-table-column>
-          <el-table-column label="失效时间" show-overflow-tooltip width="170">
-            <template #default="{ row }">
-              <span>{{ formatDate(row.loseEfficacyTime, 'YYYY-mm-dd HH:MM:SS') }}</span>
-            </template>
-          </el-table-column>
-          <el-table-column prop="creatorOrgName" label="来源单位" show-overflow-tooltip></el-table-column>
-        </template>
-        <el-table-column label="操作" width="100" fixed="right" align="center">
-          <template #default="{ row }">
-<!--            <el-button link type="primary" @click="onAudit(row)" v-auth="'auxiliary:noticeAudit:audit'" title="审批通知公告"> 审批 </el-button>-->
-            <el-button link type="primary" @click="onDetail(row)"> 查看详情 </el-button>
-          </template>
-        </el-table-column>
-        <template #empty>
-          <Empty />
-        </template>
-      </el-table>
-      <!-- 分页 -->
-      <pagination
-          :total="state.total"
-          v-model:page="state.queryParams.PageIndex"
-          v-model:limit="state.queryParams.PageSize"
-          @pagination="queryList"
-      />
-    </el-card>
-    <!-- 流程审批 -->
-    <process-audit ref="processAuditRef" @orderProcessSuccess="queryList" />
-  </div>
+				<el-form-item>
+					<el-button type="primary" @click="queryList" :loading="state.loading"> <SvgIcon name="ele-Search" class="mr5" />查询 </el-button>
+					<el-button @click="resetQuery(ruleFormRef)" v-waves class="default-button"> <SvgIcon name="ele-Refresh" class="mr5" />重置 </el-button>
+				</el-form-item>
+			</el-form>
+			<!-- 表格 -->
+			<el-table :data="state.tableData" v-loading="state.loading" row-key="id" ref="multipleTableRef" @selection-change="handleSelectionChange">
+				<el-table-column type="selection" width="55" />
+				<!--  通知  -->
+				<template v-if="listType === '0'">
+					<el-table-column prop="circularTypeName" label="通知类型" show-overflow-tooltip></el-table-column>
+					<el-table-column prop="circularStateText" label="通知状态" show-overflow-tooltip></el-table-column>
+					<el-table-column prop="title" label="通知标题" show-overflow-tooltip></el-table-column>
+					<el-table-column prop="commonTypeText" label="必须阅读" show-overflow-tooltip>
+						<template #default="{ row }">
+							{{ row.isMustRead ? '是' : '否' }}
+						</template>
+					</el-table-column>
+					<el-table-column prop="circularTypeText" label="通知对象" show-overflow-tooltip></el-table-column>
+					<el-table-column prop="commonTypeText" label="通知时间" show-overflow-tooltip width="170">
+						<template #default="{ row }">
+							<span>{{ formatDate(row.creationTime, 'YYYY-mm-dd HH:MM:SS') }}</span>
+						</template>
+					</el-table-column>
+					<el-table-column label="失效时间" show-overflow-tooltip width="170">
+						<template #default="{ row }">
+							<span>{{ formatDate(row.lostEfficacyTime, 'YYYY-mm-dd HH:MM:SS') }}</span>
+						</template>
+					</el-table-column>
+					<el-table-column prop="sourceOrgName" label="来源单位" show-overflow-tooltip></el-table-column>
+				</template>
+				<!--  公告  -->
+				<template v-if="listType === '1'">
+					<el-table-column prop="bulletinTypeName" label="公告类型" show-overflow-tooltip></el-table-column>
+					<el-table-column prop="bulletinStateText" label="公告状态" show-overflow-tooltip></el-table-column>
+					<el-table-column prop="title" label="公告标题" show-overflow-tooltip></el-table-column>
+					<el-table-column prop="pushRangesText" label="公告范围" show-overflow-tooltip width="300"></el-table-column>
+					<el-table-column prop="commonTypeText" label="通知时间" show-overflow-tooltip width="170">
+						<template #default="{ row }">
+							<span>{{ formatDate(row.creationTime, 'YYYY-mm-dd HH:MM:SS') }}</span>
+						</template>
+					</el-table-column>
+					<el-table-column label="失效时间" show-overflow-tooltip width="170">
+						<template #default="{ row }">
+							<span>{{ formatDate(row.loseEfficacyTime, 'YYYY-mm-dd HH:MM:SS') }}</span>
+						</template>
+					</el-table-column>
+					<el-table-column prop="creatorOrgName" label="来源单位" show-overflow-tooltip></el-table-column>
+				</template>
+				<el-table-column label="操作" width="100" fixed="right" align="center">
+					<template #default="{ row }">
+						<!--            <el-button link type="primary" @click="onAudit(row)" v-auth="'auxiliary:noticeAudit:audit'" title="审批通知公告"> 审批 </el-button>-->
+						<el-button link type="primary" @click="onDetail(row)"> 查看详情 </el-button>
+					</template>
+				</el-table-column>
+				<template #empty>
+					<Empty />
+				</template>
+			</el-table>
+			<!-- 分页 -->
+			<pagination
+				:total="state.total"
+				v-model:page="state.queryParams.PageIndex"
+				v-model:limit="state.queryParams.PageSize"
+				@pagination="queryList"
+			/>
+		</el-card>
+	</div>
 </template>
 
 <script lang="ts" setup name="auxiliaryNoticeAudit">
-import {defineAsyncComponent, onMounted, reactive, ref} from 'vue';
-import {ElMessage, FormInstance} from 'element-plus';
-import {shortcuts} from '/@/utils/constants';
-import {formatDate} from '/@/utils/formatTime';
-import {auth} from '/@/utils/authFunction';
-import {bulletinBaseData, bulletinList, circularBaseData, circularList} from '/@/api/auxiliary/notice';
-import {useRouter} from "vue-router";
-
-// 引入组件
-const ProcessAudit = defineAsyncComponent(() => import('/@/components/ProcessAudit/index.vue')); // 流程审批
+import {onActivated, onMounted, reactive, ref} from 'vue';
+import { ElMessage, FormInstance } from 'element-plus';
+import { shortcuts } from '/@/utils/constants';
+import { formatDate } from '/@/utils/formatTime';
+import { auth } from '/@/utils/authFunction';
+import { bulletinBaseData, bulletinList, circularBaseData, circularList } from '/@/api/auxiliary/notice';
+import { useRouter } from 'vue-router';
 
 // 定义变量内容
 const state = reactive<any>({
-  loading: false, // 加载状态
-  queryParams: {
-    // 查询参数
-    PageIndex: 1,
-    PageSize: 10,
-    Title: null,
-    BulletinTimeStart: null, // 创建时间 开始
-    BulletinTimeEnd: null, // 创建时间 结束
-    CircularTimeStart: null,
-    CircularTimeEnd: null,
-    exTime: [],
-    Time: [],
-    BulletinTypeId: null, //通知类型
-    CircularTypeId:null,
-    CircularState:1,
-    BulletinState:1,
-  },
-  total: 0, // 总条数
-  tableData: [], // 表格数据
+	loading: false, // 加载状态
+	queryParams: {
+		// 查询参数
+		PageIndex: 1,
+		PageSize: 10,
+		Title: null,
+		BulletinTimeStart: null, // 创建时间 开始
+		BulletinTimeEnd: null, // 创建时间 结束
+		CircularTimeStart: null,
+		CircularTimeEnd: null,
+		exTime: [],
+		Time: [],
+		BulletinTypeId: null, //通知类型
+		CircularTypeId: null,
+		CircularState: 1,
+		BulletinState: 1,
+	},
+	total: 0, // 总条数
+	tableData: [], // 表格数据
 });
 const ruleFormRef = ref<RefType>(null); // 表单ref
 const bulletinType = ref<EmptyArrayType>([]); // 公告类型
 const circularType = ref<EmptyArrayType>([]); // 通知类型
 const listType = ref<string>('0'); // 列表类型
 const handleTimeChange = (val: string[], startKey: string, endKey: string) => {
-  if (val) {
-    state.queryParams[startKey] = val[0];
-    state.queryParams[endKey] = val[1];
-  } else {
-    state.queryParams[startKey] = '';
-    state.queryParams[endKey] = '';
-  }
-  queryList();
+	if (val) {
+		state.queryParams[startKey] = val[0];
+		state.queryParams[endKey] = val[1];
+	} else {
+		state.queryParams[startKey] = '';
+		state.queryParams[endKey] = '';
+	}
+	queryList();
 };
 // 甄别时间
 const timeStartChangeCr = (val: string[]) => {
-  handleTimeChange(val, 'CircularTimeStart', 'CircularTimeEnd');
+	handleTimeChange(val, 'CircularTimeStart', 'CircularTimeEnd');
 };
 const timeStartChange = (val: string[]) => {
-  handleTimeChange(val, 'BulletinTimeStart', 'BulletinTimeEnd');
+	handleTimeChange(val, 'BulletinTimeStart', 'BulletinTimeEnd');
 };
 const getBaseData = async () => {
-  try {
-    const resCircularType = await circularBaseData();
-    circularType.value = resCircularType.result?.circularType ?? [];
-    const res = await bulletinBaseData();
-    bulletinType.value = res.result.bulletinType ?? [];
-  } catch (error) {
-    console.log(error);
-  }
+	try {
+		const resCircularType = await circularBaseData();
+		circularType.value = resCircularType.result?.circularType ?? [];
+		const res = await bulletinBaseData();
+		bulletinType.value = res.result.bulletinType ?? [];
+	} catch (error) {
+		console.log(error);
+	}
 };
 // 获取参数列表
 const queryList = () => {
-  state.loading = true;
-  if (!auth('auxiliary:notice:query')) ElMessage.error('抱歉,您没有权限获取通知公告列表!');
-  else {
-    switch (listType.value) {
-      case '0':
-        const requestCircular = {
-          title: state.queryParams.Title,
-          CircularTypeId: state.queryParams.CircularTypeId,
-          CircularTimeStart: state.queryParams.CircularTimeStart,
-          CircularTimeEnd: state.queryParams.CircularTimeEnd,
-          CircularState: state.queryParams.CircularState,
-          PageIndex: state.queryParams.PageIndex,
-          PageSize: state.queryParams.PageSize,
-        }
-        circularList(requestCircular)
-            .then((res) => {
-              state.loading = false;
-              state.tableData = res.result.items ?? [];
-              state.total = res.result.total ?? 0;
-            })
-            .finally(() => {
-              state.loading = false;
-            });
-        break;
-      case '1':
-        const requestBulletin = {
-          title: state.queryParams.Title,
-          BulletinTypeId: state.queryParams.BulletinTypeId,
-          BulletinTimeStart: state.queryParams.BulletinTimeStart,
-          BulletinTimeEnd: state.queryParams.BulletinTimeEnd,
-          BulletinState: state.queryParams.BulletinState,
-          PageIndex: state.queryParams.PageIndex,
-          PageSize: state.queryParams.PageSize,
-        }
-        bulletinList(requestBulletin)
-            .then((res) => {
-              state.loading = false;
-              state.tableData = res.result.items ?? [];
-              state.total = res.result.total ?? 0;
-            })
-            .finally(() => {
-              state.loading = false;
-            });
-        break;
-    }
-  }
+	state.loading = true;
+	if (!auth('auxiliary:notice:query')) ElMessage.error('抱歉,您没有权限获取通知公告列表!');
+	else {
+		switch (listType.value) {
+			case '0':
+				const requestCircular = {
+					title: state.queryParams.Title,
+					CircularTypeId: state.queryParams.CircularTypeId,
+					CircularTimeStart: state.queryParams.CircularTimeStart,
+					CircularTimeEnd: state.queryParams.CircularTimeEnd,
+					CircularState: state.queryParams.CircularState,
+					PageIndex: state.queryParams.PageIndex,
+					PageSize: state.queryParams.PageSize,
+				};
+				circularList(requestCircular)
+					.then((res) => {
+						state.loading = false;
+						state.tableData = res.result.items ?? [];
+						state.total = res.result.total ?? 0;
+					})
+					.finally(() => {
+						state.loading = false;
+					});
+				break;
+			case '1':
+				const requestBulletin = {
+					title: state.queryParams.Title,
+					BulletinTypeId: state.queryParams.BulletinTypeId,
+					BulletinTimeStart: state.queryParams.BulletinTimeStart,
+					BulletinTimeEnd: state.queryParams.BulletinTimeEnd,
+					BulletinState: state.queryParams.BulletinState,
+					PageIndex: state.queryParams.PageIndex,
+					PageSize: state.queryParams.PageSize,
+				};
+				bulletinList(requestBulletin)
+					.then((res) => {
+						state.loading = false;
+						state.tableData = res.result.items ?? [];
+						state.total = res.result.total ?? 0;
+					})
+					.finally(() => {
+						state.loading = false;
+					});
+				break;
+		}
+	}
 };
 // 重置表单
 const resetQuery = (formEl: FormInstance | undefined) => {
-  if (!formEl) return;
-  formEl.resetFields();
-  state.queryParams.BulletinTimeStart = null;
-  state.queryParams.BulletinTimeEnd = null;
-  state.queryParams.CircularTimeStart = null;
-  state.queryParams.CircularTimeEnd = null;
-  queryList();
+	if (!formEl) return;
+	formEl.resetFields();
+	state.queryParams.BulletinTimeStart = null;
+	state.queryParams.BulletinTimeEnd = null;
+	state.queryParams.CircularTimeStart = null;
+	state.queryParams.CircularTimeEnd = null;
+	queryList();
 };
 // 表格多选
 const multipleTableRef = ref<RefType>();
 const multipleSelection = ref<any>([]);
 const handleSelectionChange = (val: any[]) => {
-  multipleSelection.value = val;
+	multipleSelection.value = val;
 };
 // 查看详情
 const router = useRouter();
 const onDetail = (row: any) => {
-  const tagsViewName = listType.value === '0' ? '通知审批' : '公告审批';
-  router.push({
-    name: 'auxiliaryNoticeDetail',
-    params: {
-      id: row.id,
-      isRead: 0,
-      tagsViewName,
-    },
-  });
+	const tagsViewName = listType.value === '0' ? '通知审批' : '公告审批';
+	router.push({
+		name: 'auxiliaryNoticeDetail',
+		params: {
+			id: row.id,
+			isRead: 0,
+			tagsViewName,
+		},
+	});
 };
-// 审批
-const processAuditRef = ref<RefType>(); // 处理流程
-const onAudit = (row:any)=>{
-  const processType = listType.value === '0' ? '通知审批' : '公告审批';
-  const annexName = listType.value === '0' ? '通知附件' : '公告附件';
-  const params = {
-    id: row.workflowId,
-    processType,
-    orderDetail: {},
-    extra: {
-      dialogTitle: processType,
-      inputPlaceholder: '办理意见',
-      annexName,
-    },
-  };
-  processAuditRef.value.openDialog(params);
-}
+const params = history.state;
 // 页面加载时
 onMounted(() => {
   getBaseData();
+  if (params.index) {
+    listType.value = params.index as string;
+  }
   queryList();
 });
+onActivated(() => {
+  if (params.index) {
+    listType.value = params.index as string;
+  }
+});
 </script>