Browse Source

首页高度调整,底部栏显示非现场的图标,消息增加非现场的入口

dev-v1.0.2
wangmingyong 4 months ago
parent
commit
4928db1283
  1. BIN
      zdxt-web-client/zdxt-efcode-enterprise-app/src/assets/images/nos/off_site_bottom_icon.png
  2. BIN
      zdxt-web-client/zdxt-efcode-enterprise-app/src/assets/images/nos/tab_bar_bg.png
  3. 2
      zdxt-web-client/zdxt-efcode-enterprise-app/src/assets/style/index.less
  4. 30
      zdxt-web-client/zdxt-efcode-enterprise-app/src/components/enterprise/footerNav.vue
  5. 2
      zdxt-web-client/zdxt-efcode-enterprise-app/src/views/enterprise/home/enterpriseHome.vue
  6. 30
      zdxt-web-client/zdxt-efcode-enterprise-app/src/views/enterprise/home/enterpriseHomeV2.vue
  7. 53
      zdxt-web-client/zdxt-efcode-enterprise-app/src/views/enterprise/message/messageCenter.vue
  8. 2
      zdxt-web-client/zdxt-efcode-enterprise-app/src/views/enterprise/nos/message/nosEvaluationList.vue
  9. 2
      zdxt-web-client/zdxt-efcode-enterprise-app/src/views/enterprise/nos/message/nosTaskList.vue

BIN
zdxt-web-client/zdxt-efcode-enterprise-app/src/assets/images/nos/off_site_bottom_icon.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

BIN
zdxt-web-client/zdxt-efcode-enterprise-app/src/assets/images/nos/tab_bar_bg.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.2 KiB

2
zdxt-web-client/zdxt-efcode-enterprise-app/src/assets/style/index.less

@ -28,7 +28,7 @@ html,body,#app{
}
.footer_body{
height: 1.5rem;
// height: 1.5rem;
}
.no_data{

30
zdxt-web-client/zdxt-efcode-enterprise-app/src/components/enterprise/footerNav.vue

@ -4,11 +4,16 @@
<van-tabbar-item name="Home" replace icon="wap-home" to="/enterprise/enterpriseHome">{{
$t("common.lang_home")
}}</van-tabbar-item>
<!-- <van-tabbar-item name="Classify" replace icon="bell" to="/enterprise/lawQuery">
<van-tabbar-item name="Classify" replace icon="bell" to="/enterprise/lawQuery">
法律查询
</van-tabbar-item>-->
<van-tabbar-item name="Classify" replace icon="bell" to="/enterprise/nos">
非现场
</van-tabbar-item>
<van-tabbar-item name="Classify" replace to="/enterprise/nos">
<template #icon>
<img src="@/assets/images/nos/off_site_bottom_icon.png" class="nos-icon" alt="" />
</template>
<template #icon-active>
<img src="@/assets/images/nos/off_site_bottom_icon.png" class="nos-icon nos-icon-active" alt="" />
</template>
</van-tabbar-item>
<van-tabbar-item name="Message" replace icon="todo-list" to="/enterprise/messageCenter" :badge="useCommon.unreadMessageCount > 0 ? useCommon.unreadMessageCount : undefined">
消息
@ -53,12 +58,12 @@ const fetchMessageUnreadCount = () => {
</script>
<style lang="less" scoped>
.footer_body{
height: 1.5rem;
// height: 1.5rem;
}
.footer_nav{
height: 1.5rem;
background-color: #fff;
box-shadow: 0 0 0.15rem #d7d7d7;
background: url(~@/assets/images/nos/tab_bar_bg.png) no-repeat center top;
background-size: 100% auto;
height: 86px;
.footer-bar{
position: absolute;
bottom: 0.2rem;
@ -76,4 +81,13 @@ const fetchMessageUnreadCount = () => {
:deep(.van-tabbar-item--active) {
color: #1989fa;
}
.nos-icon {
width: 86px;
height: 86px;
}
.nos-icon-active {
opacity: 1;
}
</style>

2
zdxt-web-client/zdxt-efcode-enterprise-app/src/views/enterprise/home/enterpriseHome.vue

@ -138,7 +138,7 @@ const applyLoginResult = (data) => {
onMounted(() => {
console.log("企业端 Home onMounted");
new Vconsolefrom();
// new Vconsolefrom();
console.log(useCommon.firstLoad);
isLoading.value = useCommon.firstLoad;

30
zdxt-web-client/zdxt-efcode-enterprise-app/src/views/enterprise/home/enterpriseHomeV2.vue

@ -12,14 +12,9 @@
<!-- 通知栏 -->
<div class="notice-bar">
<img src="@/assets/images/icon_notice.png" class="notice-icon" alt="" />
<van-notice-bar
v-if="noticeList.length > 0"
class="notice-scroll"
<van-notice-bar v-if="noticeList.length > 0" class="notice-scroll"
:scrollable="noticeList.length > 1 || (noticeList[0]?.title || '').length > 16"
background="transparent"
color="#8c8c8c"
:text="noticeText"
/>
background="transparent" color="#8c8c8c" :text="noticeText" />
<span v-else class="notice-text">暂无新通知</span>
</div>
@ -95,9 +90,9 @@ const fetchBannerList = () => {
const rows = res?.rows || res?.data?.rows || res?.data || [];
if (!Array.isArray(rows)) return;
bannerList.value = rows.map(item => ({
title: item.title || '',
title: item.title || '',
image: (import.meta.env.VITE_FILE_URL || '') + (item.imageUrl || ''),
link: item.linkUrl || '',
link: item.linkUrl || '',
raw: item,
}));
}, () => { });
@ -204,7 +199,7 @@ const hasUserInfo = () => {
onMounted(() => {
console.log("企业端 Home onMounted");
new Vconsolefrom();
// new Vconsolefrom();
//debugger;
console.log(useCommon.firstLoad);
console.log(useCommon);
@ -328,7 +323,7 @@ onMounted(() => {
background: url('@/assets/images/bg_sz_top.png') center center no-repeat, linear-gradient(180deg, #fff 0%, #def0ff 20%, #60baff 100%);
background-size: cover;
width: 100%;
height: 200px;
height: 152px;
display: flex;
flex-direction: column;
align-items: center;
@ -336,7 +331,7 @@ onMounted(() => {
.logo_top-img {
width: 100%;
height: 200px;
height: 150px;
display: block;
}
@ -344,14 +339,14 @@ onMounted(() => {
height: 30px;
display: block;
position: absolute;
top: 126px;
top: 93px;
}
.slogan_top-img {
width: 200px;
height: 30px;
position: absolute;
top: 160px;
top: 124px;
}
}
@ -412,19 +407,14 @@ onMounted(() => {
.banner-inner {
width: 100%;
height: 180px;
background: linear-gradient(135deg, #c8e2f8 0%, #a0c8f0 30%, #7bb3e8 60%, #5a9de0 100%);
height: 130px;
position: relative;
overflow: hidden;
display: flex;
align-items: center;
justify-content: center;
}
.banner-img {
width: 100%;
height: 100%;
object-fit: cover;
}
.banner-placeholder {

53
zdxt-web-client/zdxt-efcode-enterprise-app/src/views/enterprise/message/messageCenter.vue

@ -39,6 +39,7 @@
</div>
<div class="item-desc">{{ item.desc }}</div>
</div>
<div class="item-right">></div>
</div>
</van-list>
</van-pull-refresh>
@ -60,10 +61,11 @@
<div class="item-info">
<div class="item-header">
<span class="item-title">{{ item.title }}</span>
<!-- <span class="item-time">{{ item.time }}</span>-->
<!-- <span class="item-time">{{ item.time }}</span>-->
</div>
<div class="item-desc">{{ item.desc }}</div>
</div>
<div class="item-right">></div>
</div>
</van-list>
</van-pull-refresh>
@ -141,11 +143,19 @@ const initMessageList = () => {
{
id: 1,
title: '普法服务',
desc: '最新一条普法信息标题',
time: '2026-04-15 10:07',
desc: '',
time: '',
icon: 'law',
iconBg: 'icon-blue',
unreadCount: messageStats.value.pffwCount,
}, {
id: 2,
title: '非现场执法通知',
desc: '',
time: '',
icon: 'law',
iconBg: 'icon-blue',
unreadCount: messageStats.value.messageTab,
},
];
};
@ -156,8 +166,8 @@ const initTodoList = () => {
{
id: 101,
title: '执法预告',
desc: messageStats.value.zfygCount > 0 ? `您有${messageStats.value.zfygCount}条执法预告,请及时查看` : '暂无执法预告',
time: '2026-04-15 09:30',
desc: '',
time: '',
icon: 'check',
iconBg: 'icon-red',
unreadCount: messageStats.value.zfygCount,
@ -165,8 +175,17 @@ const initTodoList = () => {
{
id: 102,
title: '待评价执法',
desc: messageStats.value.zfpjcount > 0 ? `您有${messageStats.value.zfpjcount}条执法记录待评价` : '暂无待评价执法',
time: '2026-04-14 15:00',
desc: '',
time: '',
icon: 'check',
iconBg: 'icon-orange',
unreadCount: messageStats.value.zfpjcount,
},
{
id: 103,
title: '待评价非现场执法',
desc: '',
time: '',
icon: 'check',
iconBg: 'icon-orange',
unreadCount: messageStats.value.zfpjcount,
@ -256,6 +275,12 @@ const onMessageClick = (item) => {
router.push({
path: '/enterprise/lawServiceList',
});
} else if (item.title === '非现场执法通知') {
// 点击非现场执法通知,返回时显示消息tab页(0)
sessionStorage.setItem('messageTab', '0');
router.push({
path: '/enterprise/nos/noticeList',
});
} else {
showToast(`点击了:${item.title}`);
}
@ -275,6 +300,12 @@ const onTodoClick = (item) => {
router.push({
path: '/enterprise/enforcementEvaluate',
});
} else if (item.title === '待评价非现场执法') {
// 点击待评价非现场执法,返回时显示待办tab页(1)
sessionStorage.setItem('messageReturnTab', '1');
router.push({
path: '/enterprise/nos/evaluationList',
});
} else {
showToast(`点击了:${item.title}`);
}
@ -415,7 +446,7 @@ onMounted(() => {
/* ===== 消息列表项 ===== */
.message-item {
display: flex;
align-items: flex-start;
align-items:center;
background: #fff;
border-radius: 12px;
padding: 14px 16px;
@ -484,7 +515,6 @@ onMounted(() => {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 6px;
}
.item-title {
@ -509,6 +539,11 @@ onMounted(() => {
white-space: nowrap;
}
.item-right {
font-size: 22px;
color: #a6a6a6;
}
/* ===== 底部导航 ===== */
.footer_body {
flex-shrink: 0;

2
zdxt-web-client/zdxt-efcode-enterprise-app/src/views/enterprise/nos/message/nosEvaluationList.vue

@ -20,7 +20,7 @@
<van-list
v-model:loading="state.loading"
:finished="state.finished"
finished-text="没有更多了"
finished-text=""
:error="state.error"
error-text="请求失败,点击重试"
@load="onLoad"

2
zdxt-web-client/zdxt-efcode-enterprise-app/src/views/enterprise/nos/message/nosTaskList.vue

@ -12,7 +12,7 @@
<van-list
v-model:loading="state.loading"
:finished="state.finished"
finished-text="已全部加载"
finished-text=""
:error="state.error"
error-text="请求失败,点击重试"
:offset="50"

Loading…
Cancel
Save