格式化首页,调整流程参数非必传

This commit is contained in:
ywyonui 2025-09-15 23:28:07 +08:00
parent 8ecd234353
commit b46e29c5e6
2 changed files with 74 additions and 84 deletions

View File

@ -48,9 +48,9 @@ import { getByYwIdAndYwTypeApi } from "@/api/base/lcglSpApi";
const props = withDefaults(defineProps<{ const props = withDefaults(defineProps<{
ywId: string, ywId: string,
ywType: string, ywType: string,
showSqr: boolean, showSqr?: boolean,
showSpr: boolean, showSpr?: boolean,
showCsr: boolean, showCsr?: boolean,
}>(), { }>(), {
ywId: '', ywId: '',
ywType: '', ywType: '',

View File

@ -3,11 +3,11 @@
<view class="content-container"> <view class="content-container">
<!-- 用户信息卡片 --> <!-- 用户信息卡片 -->
<view class="user-info-card" v-if="curXs"> <view class="user-info-card" v-if="curXs">
<view class="banner-content"> <view class="banner-content">
<image src="/static/base/home/2211.png" class="banner-img"></image> <image src="/static/base/home/2211.png" class="banner-img"></image>
<view class="banner-overlay"> <view class="banner-overlay">
</view> </view>
</view> </view>
<!-- 学生信息 --> <!-- 学生信息 -->
<XsPicker :is-bar="false" @change="switchXs" /> <XsPicker :is-bar="false" @change="switchXs" />
@ -24,13 +24,8 @@
<view class="title-line"></view> <view class="title-line"></view>
</view> </view>
<view class="grid-menu"> <view class="grid-menu">
<view <view v-for="(item, index) in menuItems" :key="index" v-show="hasPermissionDirect(item.permissionKey)"
v-for="(item, index) in menuItems" class="grid-item" @click="handleMenuClick(item)">
:key="index"
v-show="hasPermissionDirect(item.permissionKey)"
class="grid-item"
@click="handleMenuClick(item)"
>
<view class="grid-icon-container"> <view class="grid-icon-container">
<view class="icon-background"></view> <view class="icon-background"></view>
<image :src="item.icon" class="grid-icon"></image> <image :src="item.icon" class="grid-icon"></image>
@ -48,12 +43,7 @@
</view> </view>
<view class="notice-list"> <view class="notice-list">
<view <view v-for="(notice, index) in announcements" :key="index" class="notice-item" @click="goToDetail(notice)">
v-for="(notice, index) in announcements"
:key="index"
class="notice-item"
@click="goToDetail(notice)"
>
<view class="notice-icon"> <view class="notice-icon">
<u-icon name="bell" size="20" color="#4A90E2"></u-icon> <u-icon name="bell" size="20" color="#4A90E2"></u-icon>
</view> </view>
@ -182,10 +172,10 @@ const menuItems = ref([
permissionKey: "school-cjcx", // permissionKey: "school-cjcx", //
}, },
{ {
title: "在线请假", title: "在线请假",
icon: "/static/base/home/draft-line.png", icon: "/static/base/home/draft-line.png",
path: "/pages/base/qj/index", path: "/pages/base/qj/index",
permissionKey: "school-zxqj", // 线 permissionKey: "school-zxqj", // 线
}, },
// TODO: // TODO:
// { // {
@ -267,15 +257,15 @@ const announcements = ref<any>([])
let curXs = computed(() => getCurXs) let curXs = computed(() => getCurXs)
let pageParams = ref({ let pageParams = ref({
page: 1, page: 1,
rows: 10, rows: 10,
appCode: getAppCode appCode: getAppCode
}) })
const goToGlxs = () => { const goToGlxs = () => {
uni.navigateTo({ uni.navigateTo({
url: "/pages/base/home/glxs", url: "/pages/base/home/glxs",
}); });
} }
// //
@ -299,10 +289,10 @@ function switchXs(xs: any) {
// //
function goToDetail(notice: any) { function goToDetail(notice: any) {
setData(notice) setData(notice)
uni.navigateTo({ uni.navigateTo({
url: '/pages/base/home/detail' url: '/pages/base/home/detail'
}) })
} }
const getArticleList = async () => { const getArticleList = async () => {
@ -320,9 +310,9 @@ const getArticleList = async () => {
getNoticeListApi(params).then(res => { getNoticeListApi(params).then(res => {
announcements.value = res.rows; announcements.value = res.rows;
}) })
.catch((error) => { .catch((error) => {
// //
}); });
} }
}; };
@ -441,11 +431,11 @@ watch(curXs, (newXs, oldXs) => {
overflow: hidden; overflow: hidden;
.banner-content { .banner-content {
position: absolute; position: absolute;
top: 0; top: 0;
bottom: 0; bottom: 0;
left: 0; left: 0;
right: 0; right: 0;
.banner-img { .banner-img {
width: 100%; width: 100%;