Feat: 管家详情

This commit is contained in:
linxi
2025-10-30 18:40:13 +08:00
parent ff1c4b3313
commit 7a0073cd62
4 changed files with 1477 additions and 16 deletions
+13 -2
View File
@@ -141,12 +141,12 @@ export function postJiaLouZan(data) {
// 旅居资讯查看 // 旅居资讯查看
export function postJiaLouNewsView(data) { export function postJiaLouNewsView(data) {
return request.post('/countyFamous/news/view', data, {login: true}) return request.post('/travel/news/view', data, {login: true})
} }
// 旅居资讯点赞 // 旅居资讯点赞
export function postJiaLouNewsZan(data) { export function postJiaLouNewsZan(data) {
return request.post('/countyFamous/news/zan', data, {login: true}) return request.post('/travel/news/zan', data, {login: true})
} }
// 分享旅居 // 分享旅居
@@ -238,3 +238,14 @@ export function createJiaLouOrder(params) {
export function createJiaLouOrderPay(params) { export function createJiaLouOrderPay(params) {
return request.post('/travel/travelGroupOrder/create/' + params.key, params, {login: true}) return request.post('/travel/travelGroupOrder/create/' + params.key, params, {login: true})
} }
/**
* 旅居资讯列表
* merId int 旅居管家商户ID
page int 页码
limit int 每页条数
*/
export function getJiaLouNewsList(params) {
return request.get('/travel/news', params, {login: true})
}
+7
View File
@@ -726,6 +726,13 @@
"navigationStyle": "custom" "navigationStyle": "custom"
} }
}, },
{
"path": "views/housekeeperDetail",
"style": {
"navigationBarTitleText": "",
"navigationStyle": "custom"
}
},
{ {
"path": "views/groupBuyDetails", "path": "views/groupBuyDetails",
"style": { "style": {
File diff suppressed because it is too large Load Diff
+51 -14
View File
@@ -100,7 +100,7 @@
'background-image': item.isTop ? ('url(' + webUrl + '/page/hotel/info-top-bg.png)') : 'none' 'background-image': item.isTop ? ('url(' + webUrl + '/page/hotel/info-top-bg.png)') : 'none'
}" }"
class="info-item-header" class="info-item-header"
@click="infoClick(item)"> >
<view class="name"> <view class="name">
{{ item.title }} {{ item.title }}
</view> </view>
@@ -272,19 +272,22 @@
<!-- 管家 --> <!-- 管家 -->
<view v-if="activeIndex === 4" class="v12-pa-3" style="background: #F5F5F5;"> <view v-if="activeIndex === 4" class="v12-pa-3" style="background: #F5F5F5;">
<view v-for="(item, index) in jiaLouStewardArr" :key="index" class="steward-item"> <view v-for="(item, index) in jiaLouStewardArr" :key="index" class="steward-item">
<view class="st-card"> <view class="st-card" @click="goHousekeeperDetail(item)">
<view class="st-left"> <view class="st-left">
<view class="portrait-card"> <view class="portrait-card" >
<image :src="item.mainImage" class="mainImage-wap" mode="aspectFill" />
<image :src="item.avatar" class="avatar" mode="aspectFill" /> <image :src="item.avatar" class="avatar" mode="aspectFill" />
<view class="role-badge">旅居管家</view> <view class="gg-box">
<view class="name-badge">{{ item.name }}</view> <view class="v12-font-bold gg">旅居管家</view>
<view class="v12-font-bold v12-white-text">{{ item.name }}</view>
</view>
</view> </view>
</view> </view>
<view class="st-right"> <view class="st-right">
<view class="star"> <view class="star">
<image src="/static/images/start.png" class="star-icon" /> <image :src="webUrl + '/home/管家角标.png'" class="star-icon" />
</view> </view>
<view class="desc more-t"> <view class="desc more-t v12-font-bold">
{{ item.desc }} {{ item.desc }}
</view> </view>
<view class="tag-list"> <view class="tag-list">
@@ -334,7 +337,8 @@ import {
postJiaLouZan, postJiaLouZan,
postJiaLouShare, postJiaLouShare,
getJiaLouProductList, getJiaLouProductList,
getJiaLouStewardList getJiaLouStewardList,
getJiaLouNewsList
} from '@/api/qianxian' } from '@/api/qianxian'
import imgBox from '@/components/imageTypeSet/imagebox.vue' import imgBox from '@/components/imageTypeSet/imagebox.vue'
export default { export default {
@@ -406,6 +410,12 @@ export default {
} }
}, },
methods: { methods: {
// 跳转管家详情
goHousekeeperDetail(item) {
uni.navigateTo({
url: '/pkg_product/views/housekeeperDetail?id=' + item.id
})
},
getJiaLouStewardList() { getJiaLouStewardList() {
uni.showLoading({ uni.showLoading({
title: '加载中', title: '加载中',
@@ -539,9 +549,9 @@ export default {
const params = { const params = {
page: 1, page: 1,
limit: 9999, limit: 9999,
sojournId: this.id merId: this.id
} }
getJiaLouNews(params).then(res => { getJiaLouNewsList(params).then(res => {
this.infoArray = res.data.records || [] this.infoArray = res.data.records || []
this.isLoadInfoListSuccess = true this.isLoadInfoListSuccess = true
}) })
@@ -578,7 +588,7 @@ export default {
}, },
likeInfoItemHandle(item) { likeInfoItemHandle(item) {
const params = { const params = {
countyFamousNewsId: item.id travelGroupNewsId: item.id
} }
postJiaLouNewsZan(params).then(res => { postJiaLouNewsZan(params).then(res => {
const {success} = res const {success} = res
@@ -620,7 +630,7 @@ export default {
} }
if(this.videoPlayers.filter(id => id === playerId).length > 1) return if(this.videoPlayers.filter(id => id === playerId).length > 1) return
const params = { const params = {
countyFamousNewsId: item.id travelGroupNewsId: item.id
} }
postJiaLouNewsView(params).then(res => { postJiaLouNewsView(params).then(res => {
const {success} = res const {success} = res
@@ -1229,6 +1239,7 @@ export default {
align-items: center; align-items: center;
justify-content: center; justify-content: center;
flex-direction: column; flex-direction: column;
overflow: hidden;
} }
.avatar { .avatar {
width: 180rpx; width: 180rpx;
@@ -1280,11 +1291,37 @@ export default {
} }
.tag { .tag {
padding: 6rpx 16rpx; padding: 6rpx 16rpx;
border: 2rpx solid #E95959; border: 2rpx solid #C52733;
color: #E95959; color: #C52733;
border-radius: 100rpx; border-radius: 100rpx;
font-size: 24rpx; font-size: 24rpx;
margin-right: 16rpx; margin-right: 16rpx;
margin-top: 12rpx; margin-top: 12rpx;
} }
.mainImage-wap{
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
// transform: translate(-50%, -50%);
}
.gg-box{
border: 2rpx solid #FADE9F;
border-radius: 22rpx;
position: absolute;
width: 160rpx;
bottom: 12rpx;
left: 0;
right: 0;
margin: auto;
text-align: center;
}
.gg{
border-radius: 120rpx;
background: #FADE9F;
padding: 6rpx 5rpx;
margin-bottom: 12rpx;
color: #333;
}
</style> </style>