Files
property-resident-side/property-uniapp-project/pages/service-list/complaintsDetail.vue
2026-04-18 08:31:55 +08:00

289 lines
5.3 KiB
Vue
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<template>
<view class="contentStyle" style="">
<view class="status-bar"></view>
<uni-nav-bar title="投诉详情" backgroundColor="transparent" :border="false" left-icon="left" @clickLeft="goBack">
</uni-nav-bar>
<!-- 表单区域 -->
<scroll-view class="page" scroll-y="true">
<view class="page-container">
<!-- 投诉状态 -->
<view class="status-section">
<view class="section-title">
<text class="title-line"></text>
<text class="title-text">投诉状态</text>
</view>
<text class="status-value"
:class="status=='pending'?'pending':status=='processing'?'processing':status=='completed'?'completed':''">{{status=='pending'?'待处理':status=='processing'?'处理中':status=='completed'?'已完成':''}}</text>
</view>
<view class="completedDesc" v-if="status=='completed'">已完成处理已联系工作人员粘贴标语提醒并派人定时巡视</view>
<!-- 投诉详情 -->
<view class="detail-section">
<view class="section-title">
<text class="title-line"></text>
<text class="title-text">投诉详情</text>
</view>
<!-- 投诉类型 -->
<view class="info-item">
<text class="info-label">投诉类型</text>
<text class="info-value">社区服务</text>
</view>
<!-- 问题描述 -->
<view class="info-item desc-item">
<text class="info-label">问题描述</text>
<text class="info-value desc-value">
投诉内容投诉内容投诉内容投诉内容投诉内容投诉内容投诉内容投诉内容投诉内容投诉内容
</text>
</view>
<!-- 投诉人姓名 -->
<view class="info-item">
<text class="info-label">投诉人姓名</text>
<text class="info-value">匿名</text>
</view>
<!-- 手机号码 -->
<view class="info-item">
<text class="info-label">手机号码</text>
<text class="info-value"></text>
</view>
<!-- 问题照片 -->
<view class="photo-section">
<text class="photo-label">问题照片</text>
<view class="photo-list">
<image v-for="(img, index) in photoList" :key="index" :src="img" mode="aspectFill"
class="photo-item"></image>
</view>
</view>
</view>
</view>
</scroll-view>
</view>
</template>
<script>
export default {
onReady: function(e) {},
components: {
},
computed: {
},
created() {
},
onShow() {
},
onLoad(option) {
this.id = option.id;
this.status = option.status;
},
mounted() {},
onReady() {
this.$nextTick(() => {
})
},
data() {
return {
id: '',
status: '',
/* 设定状态栏默认高度 */
statusBarHeight: 20,
// 问题照片列表,替换为你的实际图片路径
photoList: [
"/static/propertyImgs/community1.png",
"/static/propertyImgs/community2.png",
"/static/propertyImgs/community3.png"
]
}
},
methods: {
goBack() {
uni.redirectTo({
url: '/pages/service-list/complaintsSuggestionsIndex',
success: res => {},
fail: () => {},
complete: () => {}
});
},
},
}
</script>
<style lang="scss">
page {
background: #f2f1f6;
}
</style>
<style scoped>
.contentStyle {
display: flex;
flex-direction: column;
height: 100vh;
/* 关键:占满屏幕高度 */
/* background: linear-gradient(to left bottom, #e2efff 0%, #f9f9f9 50%); */
}
.page {
flex: 1;
overflow-y: auto;
padding: 0px 20px;
box-sizing: border-box;
/* background-color: #fff; */
}
.page-container {
}
/* 通用标题样式(带蓝色竖线) */
.section-title {
display: flex;
align-items: center;
margin-bottom: 20rpx;
}
.title-line {
width: 8rpx;
height: 36rpx;
background-color: #007AFF;
margin-right: 12rpx;
border-radius: 4rpx;
}
.title-text {
font-size: 16px;
font-weight: bold;
color: #333333;
}
/* 投诉状态区域 */
.status-section {
display: flex;
justify-content: space-between;
align-items: center;
padding-bottom: 20rpx;
border-bottom: 1rpx solid #eeeeee;
margin-bottom: 30rpx;
}
.completedDesc {
color: #2F77FD;
font-size: 14px;
margin-bottom: 15px;
}
.status-value {
font-size: 32rpx;
color: #007AFF;
font-weight: 500;
}
/* 详情信息项通用样式 */
.info-item {
display: flex;
padding: 24rpx 0;
border-bottom: 1rpx solid #eeeeee;
align-items: flex-start;
}
.info-label {
width: 220rpx;
font-size: 14px;
color: #333333;
flex-shrink: 0;
line-height: 1.5;
}
.info-value {
flex: 1;
font-size: 14px;
color: #000;
line-height: 1.5;
}
/* 问题描述特殊样式(多行文本) */
.desc-item {
align-items: flex-start;
}
.desc-value {
white-space: pre-line;
word-break: break-all;
}
/* 问题照片区域 */
.photo-section {
padding: 24rpx 0;
}
.photo-label {
display: block;
font-size: 30rpx;
color: #666666;
margin-bottom: 20rpx;
}
.photo-list {
display: flex;
flex-wrap: wrap;
/* 自动换行 */
gap: 10px;
/* 图片之间的间距(可改) */
margin: 5px 0px 10px 0px;
}
.photo-item {
width: calc(33.333% - 7px);
height: 66px;
object-fit: cover;
}
.pending {
color: #2F77FD;
}
.processing {
color: #2F77FD;
}
.completed {
color: #999999;
}.status-bar{
width: 100vw;
height: 46px;
}
</style>