From b1fc04036f964163c128586810fec8b5e9da7e2c Mon Sep 17 00:00:00 2001
From: 马宇豪 <978517621@qq.com>
Date: 星期一, 24 七月 2023 09:58:10 +0800
Subject: [PATCH] 样式修改
---
pages/tabBar/notice/measures.vue | 53 ++++++-
pages/tabBar/current/current.vue | 24 +-
pages/tabBar/information/information.vue | 74 ++++++---
pages/tabBar/notice/detail.vue | 55 ++++---
pages/tabBar/notice/notice.vue | 154 +++++++++++++--------
pages/tabBar/tabBarIndex.vue | 1
pages/index/index.vue | 2
pages/tabBar/response/response.vue | 51 +++++--
8 files changed, 273 insertions(+), 141 deletions(-)
diff --git a/pages/index/index.vue b/pages/index/index.vue
index 700fec8..8946186 100644
--- a/pages/index/index.vue
+++ b/pages/index/index.vue
@@ -53,7 +53,6 @@
Login(){
this.isLogining = true;
login(this.form).then(res => {
- console.log("res",res)
if (res.code === 100) {
this.isLogining = false;
//登录成功后
@@ -93,7 +92,6 @@
},
connect() {
uni.$on('connectStatusChange', (connectStatus) => {
- console.log('进入连接')
var connectStr = ''
if (connectStatus == true) {
connectStr = '已连接'
diff --git a/pages/tabBar/current/current.vue b/pages/tabBar/current/current.vue
index 46b8829..37cd53f 100644
--- a/pages/tabBar/current/current.vue
+++ b/pages/tabBar/current/current.vue
@@ -63,19 +63,21 @@
z-index: 1;
}
.navBarBox .navBar {
- background-color:lightgrey;
- height: 45px;
- display: flex;
- flex-direction: row;
- justify-content: center;
- align-items: center;
+ background-color:#fff;
+ height: 50px;
+ display: flex;
+ flex-direction: row;
+ justify-content: center;
+ align-items: center;
+ box-shadow: 0 3px 12px rgba(0,0,0,0.05);
}
.barText{
- text-align: center;
- width: 85%;
- font-size: 16px;
- /* text-align: center; */
- font-weight: 600;
+ /* margin-left: 20px; */
+ text-align: center;
+ width: 85%;
+ font-size: 16px;
+ /* text-align: center; */
+ font-weight: 600;
}
.statusBar{
background-color:lightgrey;
diff --git a/pages/tabBar/information/information.vue b/pages/tabBar/information/information.vue
index fd4674b..3fcffd5 100644
--- a/pages/tabBar/information/information.vue
+++ b/pages/tabBar/information/information.vue
@@ -21,8 +21,10 @@
<view class="listContent" v-if="informationList.length > 0">
<view v-for="(item, index) in informationList" :key="index" class="itemContent">
<view class="content" @click="toDetail(item)">
- <text>[{{item.colorContent}}]</text>
- <text>{{item.title}},{{item.content}}</text>
+ <view class="textContent">
+ <text>[{{item.colorContent}}]</text>
+ <text>{{item.title}},{{item.content}}</text>
+ </view>
<view class="buttonContent">
<u-button v-if="item.buttonContent == '审核通过'" size="mini" class="buttonCo" style="background-color:rgb(17, 204, 33);color: white">
{{item.buttonContent}}
@@ -125,7 +127,7 @@
</script>
-<style>
+<style lang="scss" scoped>
.box {
display: flex;
flex-direction: column;
@@ -141,12 +143,13 @@
z-index: 1;
}
.navBarBox .navBar {
- background-color:lightgrey;
- height: 40px;
- display: flex;
- flex-direction: row;
- justify-content: center;
- align-items: center;
+ background-color:#fff;
+ height: 50px;
+ display: flex;
+ flex-direction: row;
+ justify-content: center;
+ align-items: center;
+ box-shadow: 0 3px 12px rgba(0,0,0,0.05);
}
.barText{
text-align: center;
@@ -161,6 +164,7 @@
.contentList{
display: flex;
flex-direction: column;
+ padding-bottom: 65px;
}
.buttonGroup{
margin: 18px 12px;
@@ -215,38 +219,54 @@
align-items: center;
}
.listHead{
- display: flex;
- align-items: center;
- /* background-color:lightgrey; */
- height: 25px;
- padding: 10px 10px;
+ padding: 12px;
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
}
.listContent{
display: flex;
flex-direction: column;
- padding: 0 10px;
+ margin: 0 12px;
+ background: #fff;
+ border-radius: 5px;
+ box-shadow: 0 3px 12px rgba(0,0,0,0.05);
}
.itemContent{
- font-size: 16px;
- color: gray;
- margin-top: 10px;
- border-bottom: 1px solid lightgrey;
-
+ font-size: 16px;
+ color: #333;
+ margin-top: 15px;
+ padding: 0 12px 15px;
+ border-bottom: 1px solid #ebebeb;
+
+ &:last-of-type{
+ border-bottom: none;
+ }
}
.content{
+ width: 100%;
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
text-overflow: ellipsis;
overflow: hidden;
white-space: nowrap;
+
+ .textContent{
+ width: calc(100% - 90px);
+ text-overflow: ellipsis;
+ overflow: hidden;
+ white-space: nowrap;
+ }
+
+ .buttonContent{
+ width: 80px;
+ }
}
.buttonCo{
- margin-top: 5px;
- margin-bottom: 10px;
+ font-size: 13px;
}
-.buttonContent{
- float: right;
- width: 80px;
- margin-top: -5px;
-}
+
/* .divider{
height: 1px;
background-color: gray;
diff --git a/pages/tabBar/notice/detail.vue b/pages/tabBar/notice/detail.vue
index 5736c67..b08bcb3 100644
--- a/pages/tabBar/notice/detail.vue
+++ b/pages/tabBar/notice/detail.vue
@@ -10,12 +10,10 @@
<u-icon name="arrow-left" color="black" size="17" @click="goBack" />
<view class="barText">信息详情</view>
</view>
-
- <view class="divider"></view>
</view>
</view>
<!-- 页面内容 -->
- <view style="padding: 10px 15px;display: flex;flex-direction: column;">
+ <view class="detailCard">
<text style="font-size: 18px;"><b>标题:</b>{{detailData.title}}</text>
<text class="textTop"><b>类别:</b>{{detailData.disaster}}</text>
<view style="display: flex;align-items: center;" class="textTop">
@@ -103,9 +101,9 @@
>确认发布</u-button>
</view>
<!-- //村级显示 -->
- <view class="measures">
- <u-button type="primary" @click="goMeasures">响应措施反馈</u-button>
- </view>
+ </view>
+ <view class="measures">
+ <u-button class="resBtn" type="primary" @click="goMeasures">响应措施反馈</u-button>
</view>
</view>
</template>
@@ -173,7 +171,6 @@
},
methods: {
goBack() {
- console.log("1111")
uni.navigateBack({
url:'./notice/notice'
});
@@ -271,25 +268,26 @@
}
</script>
-<style>
+<style lang="scss" scoped>
a{
text-decoration: none;
}
.navBarBox .navBar {
- /* background-color:lightgrey; */
- height: 30px;
- display: flex;
- flex-direction: row;
- /* justify-content: center; */
- align-items: center;
-/* padding-top:5px ; */
- padding: 5px 8px;
+ background-color:#fff;
+ height: 50px;
+ display: flex;
+ flex-direction: row;
+ justify-content: center;
+ align-items: center;
+ box-shadow: 0 3px 12px rgba(0,0,0,0.05);
}
.barText{
- margin-left: 36%;
- font-weight: 600;
- font-size: 18px;
-
+ /* margin-left: 20px; */
+ text-align: center;
+ width: 85%;
+ font-size: 16px;
+ /* text-align: center; */
+ font-weight: 600;
}
.navBarBox .navBar .logo {
width: 82rpx;
@@ -323,6 +321,15 @@
background-color: lightgray;
margin-left: 15px;
}
+.detailCard{
+ display: flex;
+ flex-direction: column;
+ background: #fff;
+ box-shadow: 0 3px 12px rgba(0,0,0,0.05);
+ margin: 12px 12px 20px;
+ border-radius: 5px;
+ padding: 30px 12px;
+}
.btn{
margin-top: 80px;
display: flex;
@@ -331,7 +338,13 @@
width: 100%;
}
.measures{
- margin-top: 50px;
+ margin-top: 50px 12px 0;
+ padding: 0 12px;
+
+ .resBtn{
+ border-radius: 5px;
+ box-shadow: 0 3px 12px rgba(33,148,239,0.4);
+ }
}
</style>
diff --git a/pages/tabBar/notice/measures.vue b/pages/tabBar/notice/measures.vue
index 4723e25..b83563c 100644
--- a/pages/tabBar/notice/measures.vue
+++ b/pages/tabBar/notice/measures.vue
@@ -6,10 +6,11 @@
<view class="statusBar" :style="{ paddingTop: statusBarHeight + 'px' }"></view>
<!-- 真正的导航栏内容 -->
<view class="navBar">
+ <u-icon name="arrow-left" color="black" size="17" @click="goBack" />
<view class="barText">响应措施反馈</view>
</view>
</view>
- <view style="display: flex;flex-direction: column; padding: 10px 15px;">
+ <view class="measureCard">
<view class="first">
<text style="font-size: 16px;margin-bottom: 20px;">基础措施</text>
<u-checkbox-group
@@ -46,7 +47,9 @@
{{item.name}}
</view>
</view>
- <u-button class="btn" type="success">提交</u-button>
+ </view>
+ <view class="measures">
+ <u-button class="measureBtn" type="success">提交</u-button>
</view>
</view>
</template>
@@ -89,6 +92,12 @@
uni.hideTabBar();
},
methods: {
+ goBack() {
+ uni.navigateBack({
+ url:'./detail/detail'
+ });
+ },
+
checkboxChange(n) {
console.log('change', n);
},
@@ -148,12 +157,31 @@
<style lang='scss' scoped>
.navBarBox .navBar {
- background-color:lightgrey;
- height: 25px;
+ background-color:#fff;
+ height: 50px;
+ display: flex;
+ flex-direction: row;
+ justify-content: center;
+ align-items: center;
+ box-shadow: 0 3px 12px rgba(0,0,0,0.05);
+}
+.barText{
+ /* margin-left: 20px; */
+ text-align: center;
+ width: 85%;
+ font-size: 16px;
+ /* text-align: center; */
+ font-weight: 600;
+}
+
+.measureCard{
display: flex;
- flex-direction: row;
- justify-content: center;
- align-items: center;
+ flex-direction: column;
+ background: #fff;
+ box-shadow: 0 3px 12px rgba(0,0,0,0.05);
+ margin: 12px 12px 20px;
+ border-radius: 5px;
+ padding: 30px 12px;
}
.fix{
position: sticky;
@@ -191,6 +219,17 @@
margin-top: 5px;
font-size: 14px;
}
+
+.measures{
+ margin-top: 50px 12px 0;
+ padding: 0 12px;
+
+ .measureBtn{
+ border-radius: 5px;
+ box-shadow: 0 3px 12px rgba(33,239,102,0.4);
+ }
+}
+
/* .btn{
position: fixed;
bottom: var(--window-bottom, 1);
diff --git a/pages/tabBar/notice/notice.vue b/pages/tabBar/notice/notice.vue
index 8c41842..c11047e 100644
--- a/pages/tabBar/notice/notice.vue
+++ b/pages/tabBar/notice/notice.vue
@@ -12,36 +12,38 @@
</view>
</view>
<!-- 页面内容 -->
- <scroll-view scroll-y :style="{height: 900 + 'px'}">
- <view style="display: flex;flex-direction: column;margin-bottom: 10px;">
- <view class="buttonGroup">
- <view style="display: flex;">
- <view class="buttonAll all"
- :class="{ 'active': selectedSaleAnalysis === 'all'}"
- @click="handleButtonClick({label: 'all',name: '全部'})">
- 全部
- </view>
- <view v-for="(button, index) in buttons" :key="index" class="buttonItem"
- :class="{ 'active': selectedSaleAnalysis === button.label,
+ <view class="controlBar">
+ <view class="buttonGroup">
+ <view class="buttonItem all"
+ :class="{ 'active': selectedSaleAnalysis === 'all'}"
+ @click="handleButtonClick({label: 'all',name: '全部'})">
+ 全部
+ </view>
+ <view v-for="(button, index) in buttons" :key="index" class="buttonItem"
+ :class="{ 'active': selectedSaleAnalysis === button.label,
'red': button.label === 'red',
'orange':button.label === 'orange',
'yellow':button.label === 'yellow',
- 'blue': button.label === 'blue'}"
- @click="handleButtonClick(button)">
- {{ button.name }}
- </view>
- </view>
- <view class="switchBtn">
- <text style="margin-right: 7px;">仅紧临</text>
- <u-switch v-model="checked" size="20" @change="clickSwitch"></u-switch>
- </view>
- </view>
+ 'blue': button.label === 'blue'}"
+ @click="handleButtonClick(button)">
+ {{ button.name }}
+ </view>
+ </view>
+ <view class="listHead">
+ <view class="switchBtn">
+ <u-checkbox-group>
+ <u-checkbox v-model="isReadOnly" @change="chooseRead"></u-checkbox>
+ </u-checkbox-group>
+ <text>只显示未读</text>
+ </view>
+ <view class="switchBtn">
+ <u-switch v-model="checked" size="20" @change="clickSwitch" style="margin-right: 6px"></u-switch>
+ <text>仅紧临</text>
+ </view>
+ </view>
+ </view>
+ <view style="display: flex;flex-direction: column;margin-bottom: 55px;">
<view class="noticeList">
- <view class="listHead">
- <u-checkbox-group style="margin-left: 15px;">
- <u-checkbox v-model="isReadOnly" @change="chooseRead"></u-checkbox>只显示未读
- </u-checkbox-group>
- </view>
<view class="listContent" v-if="noticeList.length > 0" >
<view v-for="(item, index) in noticeList" :key="index" class="itemContent" >
<view class="content" v-if="item.isRead" >
@@ -88,7 +90,6 @@
</view>
</view>
</view>
- </scroll-view>
<view class="lastbottom">共<span style="font-weight: 600;"> {{noticeList.length}} </span>条 未叫应<span style="font-weight: 600;">{{noSpeak}}</span> 条</view>
<dia ref="showDialog" @close="close"></dia>
<tabBar :currentPagePath="page" :tabBarList="tabBarLists"></tabBar>
@@ -169,7 +170,6 @@
this.data.searchParams.emergType = this.checked ? 1 : null ;
this.data.searchParams.warningLevel = this.selectedSaleAnalysis =='all' ? null : this.selectedSaleAnalysis =='red' ? 1 : this.selectedSaleAnalysis =='orange' ? 2: this.selectedSaleAnalysis =='yellow'? 3 : 4;
getNotice(this.data).then(res => {
- console.log("dddddr",res);
if (res.code == 100) {
this.noticeList = res.data ? res.data : [];
this.noticeListCopy = this.noticeList;
@@ -244,7 +244,7 @@
}
</script>
-<style>
+<style lang="scss" scoped>
.box {
display: flex;
flex-direction: column;
@@ -260,12 +260,13 @@
z-index: 1;
}
.navBarBox .navBar {
- background-color:lightgrey;
- height: 40px;
- display: flex;
- flex-direction: row;
- justify-content: center;
- align-items: center;
+ background-color:#fff;
+ height: 50px;
+ display: flex;
+ flex-direction: row;
+ justify-content: center;
+ align-items: center;
+ box-shadow: 0 3px 12px rgba(0,0,0,0.05);
}
.barText{
/* margin-left: 20px; */
@@ -283,22 +284,46 @@
height: 82rpx;
margin-right: 10rpx;
} */
-.buttonGroup{
- margin: 18px 12px;
- display: flex;
- align-items: center;
- justify-content: space-between;
+
+.controlBar{
+ margin: 12px 12px 0;
+ padding: 12px;
+ height: 90px;
+ box-sizing: border-box;
+ display: flex;
+ flex-direction: column;
+ justify-content: space-between;
+ width: calc(100% - 24px);
+ background: #fff;
+ border-radius: 5px;
+ box-shadow: 0 3px 12px rgba(0,0,0,0.05);
+
+ .buttonGroup{
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+ margin-bottom: 12px;
+ }
+
+ .listHead{
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+ }
}
+
.buttonItem{
- margin-left:5px;
+ width: calc(20% - 4px);
color: white;
display: flex;
flex-direction: row;
justify-content: center;
align-items: center;
- width: 47px;
height: 30px;
border-radius: 5px;
+ &.active{
+ border: 1px solid #fff;
+ }
}
.buttonAll{
margin-left:5px;
@@ -320,7 +345,7 @@
border: 1.5px solid #8d8d8d;
}
.red {
- background-color: red;
+ background-color: #ff5555;
}
.orange {
background-color: rgb(251, 158, 13);
@@ -329,36 +354,44 @@
background-color: rgb(255, 223, 37);
}
.blue {
- background-color: rgb(2, 167, 240);
+ background-color: #409EFF;
}
.switchBtn{
display: flex;
align-items: center;
}
-.listHead{
- display: flex;
- align-items: center;
- background-color:lightgrey;
- height: 35px;
+.noticeList{
+ margin-top: 12px;
+ height: calc(100vh - 266px);
+ overflow: hidden;
+ overflow-y: scroll;
}
+
.listContent{
display: flex;
flex-direction: column;
- padding: 10px 10px;
+ margin: 0 12px;
+ background: #fff;
+ border-radius: 5px;
+ box-shadow: 0 3px 12px rgba(0,0,0,0.05);
}
.itemContent{
font-size: 16px;
- color: gray;
- margin-top: 10px;
- border-bottom: 1px solid lightgrey;
-
+ color: #333;
+ margin-top: 15px;
+ padding: 0 12px 15px;
+ border-bottom: 1px solid #ebebeb;
+
+ &:last-of-type{
+ border-bottom: none;
+ }
}
.content{
text-overflow: ellipsis;
overflow: hidden;
white-space: nowrap;
- margin-bottom: 10px;
+
}
.contentNoRead{
font-size: 14px;
@@ -366,13 +399,18 @@
}
.lastbottom{
width: 100%;
- height: 100px;
+ height: 40px;
background-color: white;
text-align: center;
- line-height: 50px;
+ line-height: 40px;
position: fixed;
- bottom: var(--window-bottom, 0);
+ bottom: 50px;
z-index: 99;
font-size: 16px;
+ box-shadow: 0 -3px 12px rgba(0,0,0,0.04);
+ border-radius: 5px 5px 0 0;
+ span{
+ margin: 0 2px;
+ }
}
</style>
diff --git a/pages/tabBar/response/response.vue b/pages/tabBar/response/response.vue
index 8730a72..8cd873c 100644
--- a/pages/tabBar/response/response.vue
+++ b/pages/tabBar/response/response.vue
@@ -6,7 +6,7 @@
<view class="statusBar" :style="{ paddingTop: statusBarHeight + 'px' }"></view>
<!-- 真正的导航栏内容 -->
<view class="navBar">
- <view class="barText"></view>
+ <view class="barText">叫应记录</view>
</view>
</view>
<!-- 页面内容 -->
@@ -103,12 +103,21 @@
<style>
.navBarBox .navBar {
- background-color:lightgrey;
- height: 15px;
- display: flex;
- flex-direction: row;
- justify-content: center;
- align-items: center;
+ background-color:#fff;
+ height: 50px;
+ display: flex;
+ flex-direction: row;
+ justify-content: center;
+ align-items: center;
+ box-shadow: 0 3px 12px rgba(0,0,0,0.05);
+}
+.barText{
+ /* margin-left: 20px; */
+ text-align: center;
+ width: 85%;
+ font-size: 16px;
+ /* text-align: center; */
+ font-weight: 600;
}
.fix{
position: sticky;
@@ -122,22 +131,34 @@
background-color:lightgrey;
}
.responseList{
- display: flex;
- flex-direction: column;
- padding: 20px 15px;
+ display: flex;
+ flex-direction: column;
+ margin: 0 12px;
+ background: #fff;
+ border-radius: 5px;
+ box-shadow: 0 3px 12px rgba(0,0,0,0.05);
+ margin-top: 12px;
}
.itemContent{
- display: flex;
- border-bottom: 1px lightgrey solid;
- margin-top: 15px;
+ display: flex;
+ align-items: center;
+ font-size: 16px;
+ color: #333;
+ margin-top: 15px;
+ padding: 0 12px;
+ border-bottom: 1px solid #ebebeb;
+
+ &:last-of-type{
+ border-bottom: none;
+ }
}
.timeLeft{
- border-radius: 13px;
+ border-radius: 5px;
padding: 15px 15px;
background-color: rgb(174, 228, 255) ;
display: flex;
flex-direction: column;
- align-items: center;
+ align-items: flex-start;
justify-content: center;
margin-bottom: 15px;
}
diff --git a/pages/tabBar/tabBarIndex.vue b/pages/tabBar/tabBarIndex.vue
index b9c0e1b..5a5efdc 100644
--- a/pages/tabBar/tabBarIndex.vue
+++ b/pages/tabBar/tabBarIndex.vue
@@ -61,6 +61,7 @@
background-color: red;
z-index: 9999;
width: 100%;
+ box-shadow: 0 -3px 12px rgba(0,0,0,0.05);
}
.u-page__item__slot-icon{
width: 24px;
--
Gitblit v1.9.2