| | |
| | | <span class="more-link" @click="toNoticeMng">更多 ></span> |
| | | </div> |
| | | <div class="notice-list"> |
| | | <div class="notice-item" v-for="item in noticeList" :key="item"> |
| | | <span class="notice-title" @click="openNoticeFile(item.filePath)">{{item.content}}</span> |
| | | <span class="notice-date">{{item.publishDate}}</span> |
| | | </div> |
| | | |
| | | <template v-if="noticeLoading"> |
| | | <div v-for="i in 6" :key="i" class="notice-item skeleton"> |
| | | <div class="skeleton-title"></div> |
| | | <div class="skeleton-date"></div> |
| | | </div> |
| | | </template> |
| | | |
| | | <template v-else> |
| | | <div class="notice-item" v-for="item in noticeList" :key="item.id"> |
| | | <span class="notice-title" @click="openNoticeFile(item.filePath)">{{item.content}}</span> |
| | | <span class="notice-date">{{item.publishDate}}</span> |
| | | </div> |
| | | </template> |
| | | </div> |
| | | </div> |
| | | |
| | |
| | | <div class="process-list" v-if="flowList && flowList.length>0"> |
| | | <div class="process-item" v-for="process in flowList" :key="process.id"> |
| | | <div class="process-info" @click="openDetail(process)"> |
| | | <span class="process-status" :class="{processing: process.type == 1,pending: process.type == 2,success: process.type == 3,normal: process.type == 4,seal: process.type == 5,normal: process.type == 6}"> |
| | | {{process.type == 1? '内审实施计划':process.type == 2? '培训计划':process.type == 3? '项目评审':process.type == 4?'年度检定计划':process.type == 5?'用章审批(申请)': process.type == 6? '用章审批(待审批)': '颁布令'}} |
| | | <span class="process-status" :class="{processing: process.type == 1,pending: process.type == 2,success: process.type == 3,normal: process.type == 4,seal: process.type == 5,normal: process.type == 6,normal: process.type == 8}"> |
| | | {{process.type == 1? '内审实施计划':process.type == 2? '培训计划':process.type == 3? '项目评审':process.type == 4?'年度检定计划':process.type == 5?'用章审批(申请)': process.type == 6? '用章审批(待审批)':process.type == 7?'颁布令':process.type == 8?'合同审批':'' }} |
| | | </span> |
| | | <span class="process-name">{{process.title}}</span> |
| | | </div> |
| | |
| | | import userDialog from '@/views/build/conpanyFunctionConsult/staffManage/staffRegister/components/staffDialog.vue' |
| | | import editDialog from '@/views/build/conpanyFunctionConsult/infoPlatform/components/editDialog.vue' |
| | | import sealDialog from "@/views/work/sealManagement/apply/components/editDialog" |
| | | import menu1 from '@/assets/icons/menu1.png' |
| | | import menu2 from '@/assets/icons/menu2.png' |
| | | import menu3 from '@/assets/icons/menu3.png' |
| | | import menu4 from '@/assets/icons/menu4.png' |
| | | import menu5 from '@/assets/icons/menu5.png' |
| | | import menu6 from '@/assets/icons/menu6.png' |
| | | |
| | | // 引入农历库 |
| | | import * as lunarCalendar from 'lunar-calendar' |
| | |
| | | const calendarRef = ref() |
| | | const dialogRef = ref() |
| | | const noticeRef = ref(); |
| | | const noticeLoading = ref(true) |
| | | |
| | | const userStore = useUserStore() |
| | | const state = reactive({ |
| | | noticeParams: { |
| | |
| | | state.platformParams.companyId = userStore.companyId |
| | | state.isAdmin = false |
| | | } |
| | | await getNoticeList() |
| | | await getPlatformList() |
| | | await getFlowList() |
| | | await getMemo() |
| | | // 并行加载所有数据 |
| | | await Promise.allSettled([ |
| | | getNoticeList(), |
| | | getPlatformList(), |
| | | getFlowList(), |
| | | getMemo() |
| | | ]) |
| | | state.platformList.forEach(system => { |
| | | cardStates.value[system.id] = { |
| | | mouseX: 0, |
| | |
| | | noticeRef.value.openDialog('review', data,state.companyList) |
| | | } |
| | | } |
| | | function getNoticeList() { |
| | | listNotice(state.noticeParams).then(res => { |
| | | state.noticeList = res.data.list |
| | | }) |
| | | async function getNoticeList() { |
| | | try { |
| | | noticeLoading.value = true |
| | | const res = await listNotice(state.noticeParams) |
| | | state.noticeList = res.data.list || [] |
| | | } catch (error) { |
| | | console.error('获取通知公告失败:', error) |
| | | state.noticeList = [] |
| | | } finally { |
| | | noticeLoading.value = false |
| | | } |
| | | } |
| | | const getCompanyList = async ()=>{ |
| | | const queryParams = { |