From 5b42cbce101b021c518e003049353f007f1cdb77 Mon Sep 17 00:00:00 2001
From: Lou <luzhiping@qqyjz.com>
Date: Mon, 11 Dec 2023 17:51:22 +0800
Subject: [PATCH] 物业详情数据渲染
---
api/tenement/tenement.js | 12 ++++
subPackage/workbench/views/rental.vue | 4 +
pages/home/index.vue | 13 ++-
subPackage/grid/tenement.vue | 112 +++++++++++++++++++++++++------------
4 files changed, 98 insertions(+), 43 deletions(-)
diff --git a/api/tenement/tenement.js b/api/tenement/tenement.js
new file mode 100644
index 0000000..9715f1b
--- /dev/null
+++ b/api/tenement/tenement.js
@@ -0,0 +1,12 @@
+import http from '@/http/api.js'
+
+//获取物业详情
+export const getDetail = (params) => {
+ return http.request({
+ url: 'blade-propertyCompany/propertyCompany/getDetail',
+ method: 'GET',
+ params: {
+ ...params
+ }
+ })
+}
\ No newline at end of file
diff --git a/pages/home/index.vue b/pages/home/index.vue
index 1db061c..5050c51 100644
--- a/pages/home/index.vue
+++ b/pages/home/index.vue
@@ -21,13 +21,13 @@
</u-grid>
<view class="section flex j-c-s-a a-i-c mt-40" v-if="isShowContact && curSelectSite.addressType == 1">
- <view class="section-item" v-for="(i,k) in contactList" :key="k" v-if="i.name" >
+ <view class="section-item" v-for="(i,k) in contactList" :key="k" v-if="i.name">
<image class="section-item-bg" :src="i.bgImg" mode="aspectFill"></image>
<view class="item-box">
<view class="f-28">{{i.title}}</view>
<view class="flex j-c-s-b">
<text class="f-22">{{i.name}}</text>
- <u-icon :name="i.icon" @click="callPhone(i.phone)"></u-icon>
+ <u-icon :name="i.icon" @click.stop="callPhone(i.phone)"></u-icon>
</view>
</view>
</view>
@@ -384,17 +384,20 @@
if (data.wg) {
this.contactList[1].name = data.wg.name;
this.contactList[1].phone = data.wg.phone
- this.contactList[1].path = ""
+ this.contactList[1].path = "";
+ this.contactList[1].id = data.wg.code;
}
if (data.wy) {
this.contactList[0].name = data.wy.name;
this.contactList[0].phone = data.wy.phone;
- this.contactList[0].path = "/subPackage/grid/tenement"
+ this.contactList[0].path = "/subPackage/grid/tenement";
+ this.contactList[0].id = data.wy.code;
}
if (data.ga) {
this.contactList[2].name = data.ga.name;
this.contactList[2].phone = data.ga.phone;
- this.contactList[2].path = ""
+ this.contactList[2].path = "";
+ this.contactList[2].id = data.ga.code;
}
})
},
diff --git a/subPackage/grid/tenement.vue b/subPackage/grid/tenement.vue
index eb3fe07..7aad32a 100644
--- a/subPackage/grid/tenement.vue
+++ b/subPackage/grid/tenement.vue
@@ -1,12 +1,12 @@
<template>
<view class="container">
- <view class="">
- <u-avatar size="78"></u-avatar>
- <view class="flex f-d-c">
- <text class="f-30 fw"></text>
- <view class="">
- <text class="c-99 f-26"></text>
- <view class="f-22">
+ <view class="hander flex ">
+ <u-avatar size="70"></u-avatar>
+ <view class="flex f-d-c ml-20">
+ <text class="f-30 fw mb-30">{{detailInfo.name}}</text>
+ <view class="flex a-i-c">
+ <text class="c-99 f-28">{{detailInfo.principalPhone}}</text>
+ <view class="call-tag f-22 c-main ml-20" @click="callPhone(detailInfo.principalPhone)">
拨打电话
</view>
</view>
@@ -14,32 +14,32 @@
</view>
<view class="mb-30">
- <caption-row text="物业简介" />
- <view class="intro bgc-ff">
+ <caption-row title="物业简介" />
+ <view class="intro bgc-ff mt-20">
<u-read-more ref="uReadMore">
- <rich-text :nodes="content"></rich-text>
+ <rich-text :nodes="detailInfo.remark"></rich-text>
</u-read-more>
</view>
</view>
<view class="mb-30">
- <caption-row text="人员信息" />
- <view class="person-list bgc-ff">
- <view class="person-list flex j-c-s-b a-i-c">
- <view class="flex">
- <u-avatar size="50"></u-avatar>
- <text class="ml-10 mr-10"></text>
+ <caption-row title="人员信息" />
+ <view class="person-list bgc-ff mt-20" >
+ <view class="person-list-item flex j-c-s-b a-i-c" v-for="(item,index) in detailInfo.districtUserVOS">
+ <view class="flex a-i-c">
+ <u-avatar size="40"></u-avatar>
+ <text class="ml-10 mr-10">{{item.name}}</text>
<text class="f-26 c-99"></text>
</view>
- <view class="flex a-i-c">
- <u-icon name="phone-fill"></u-icon>
- <text class="f-26 c-99"></text>
+ <view class="flex a-i-c" v-if="item.phone">
+ <u-icon name="phone-fill" color="#017BFC"></u-icon>
+ <text class="f-26 c-99" @click="callPhone(item.phone)">{{item.phone}}</text>
</view>
</view>
</view>
</view>
<view class="">
- <caption-row text="留言" />
- <view class="comment-list bgc-ff">
+ <caption-row title="留言" />
+ <view class="comment-list bgc-ff mt-20">
<view class="comment-item flex " v-for="(item,index) in commentList" :key="index">
<u-avatar size="45" src="/static/icon/user-01.png"></u-avatar>
<view class="comment-item-content">
@@ -54,7 +54,7 @@
</view>
</view>
</view>
-
+
</view>
@@ -63,16 +63,41 @@
<script>
import captionRow from "@/components/caption/caption.vue"
+ import {
+ getDetail
+ } from "@/api/tenement/tenement.js"
export default {
components: {
captionRow
},
data() {
return {
- commentList:[]
+ commentList: [],
+ detailInfo: {}
}
},
- methods:{
+
+ onLoad(option) {
+ this.getDetailInfo(option.id)
+ },
+
+ methods: {
+
+ getDetailInfo(id) {
+ getDetail({
+ id
+ }).then(res => {
+ console.log(res)
+ this.detailInfo = res.data;
+ })
+ },
+
+ callPhone(phone){
+ uni.makePhoneCall({
+ phoneNumber:phone
+ })
+ },
+
navToComment() {
uni.navigateTo({
url: `comment?id=${this.params.id}`
@@ -90,33 +115,46 @@
.container {
padding: 0 30rpx;
}
- .intro{
- border-radius: 10rpx;
- padding:10rpx;
- }
- .person-list{
- padding:0 10rpx;
- border-radius: 10rpx;
- .person-list-item{
- padding:20rpx 0;
- border-bottom:1px solid #f5f5f5;
+ .hander{
+ padding:30rpx 0;
+ .call-tag{
+ padding:3rpx 8rpx;
+ background-color: #017BFC;
+ color: rgb(236,244,255);
+ border-radius: 20rpx;
}
}
+
+ .intro {
+ border-radius: 10rpx;
+ padding: 10rpx;
+ }
+
+ .person-list {
+ padding: 0 10rpx;
+ border-radius: 10rpx;
+
+ .person-list-item {
+ padding: 20rpx 0;
+ border-bottom: 1px solid #f5f5f5;
+ }
+ }
+
.comment-list {
width: 100%;
padding-top: 20rpx;
-
+
.comment-item {
width: 100%;
padding: 20rpx 0;
}
-
+
.comment-item-content {
flex: 1;
margin-left: 20rpx;
}
}
-
+
.footer {
width: 100%;
padding: 20rpx 30rpx;
diff --git a/subPackage/workbench/views/rental.vue b/subPackage/workbench/views/rental.vue
index 6ed6668..34c5d40 100644
--- a/subPackage/workbench/views/rental.vue
+++ b/subPackage/workbench/views/rental.vue
@@ -206,7 +206,9 @@
methods: {
showStatus(status){
- for(let i of this.tabsList){
+ let data = this.tabsList;
+ // data.splice(0,1);
+ for(let i of data){
if(i.value == status){
return i.name
}
--
Gitblit v1.9.3