1、取消发布信息页面的下拉刷新

2、搜索页面的完善
3、招租详情的查看过的人数和图标居中对齐
4、招租列表的查看过的人数和图标居中对齐;顶部的搜素框的宽度增加
5、优惠券列表的scroll-view的高度的设置为85vh;
6、首页的省市名展示取消中间的空格
7、个人中心分享绑定点击事件
8、平台课程的客服直接拨打电话,不使用对话框
9、食堂招租列表的调用接口时不需要传参数是否是平台的
10、收藏页面下拉刷新时,在重置的方法中调用列表接口
11、足迹的列表展示的时间只取年月日
12、我发布的列表的scroll-view的高度设置为85vh
12、su-navbar的顶部的竖线颜色改为#3d3d3d
This commit is contained in:
wangzimeng 2025-08-05 10:49:40 +08:00
parent 3041b67a53
commit 5542dcdd15
14 changed files with 620 additions and 123 deletions

View File

@ -2,10 +2,149 @@
<s-layout title="搜索结果" :bgStyle="{ color: '#ffffff' }"> <s-layout title="搜索结果" :bgStyle="{ color: '#ffffff' }">
<!-- <view>搜索页面</view> --> <!-- <view>搜索页面</view> -->
<view class="container"> <view class="container">
<view class="top">
<!-- 顶部-地址&搜索 -->
<view class="locTop">
<view class="locTop-right">
<uni-section style="border-radius: 192rpx;padding: 0;" type="line">
<uni-search-bar v-model="listQuery.keywords" @confirm="search"
style="border-radius: 192rpx;" radius="23" placeholder="搜索您需要的信息" bgColor="#EEEEEE"
clearButton="none" cancelButton="none" />
</uni-section>
<!-- @confirm="search" -->
</view>
</view>
</view>
<!-- tabs页签 --> <!-- tabs页签 -->
<view class="tabs-box"> <view class="tabs-box">
<su-tabs :list="tabMaps" @change="onChange" :scrollable="false" :current="currentTab"></su-tabs> <su-tabs :list="tabMaps" @change="onChange" :scrollable="false" :current="currentTab"></su-tabs>
</view> </view>
<scroll-view @scrolltolower="onScrolltolower" :refresher-enabled="true" :refresher-triggered="homrS"
@refresherrefresh="onS" scroll-y="true" class="flex align-items"
style="height: 1250rpx;box-sizing: border-box;">
<!-- 食堂招租 -->
<view class="recommend-box" v-if="currentTab == 0">
<view class="rrecommList" v-for="(item,index) in collectRentList" :key="index">
<view class="rrecommList">
<view class="reListItem" v-for="(item,index) in rentList" :key="index"
@click="toDetail(item)">
<!-- 左侧图片 -->
<view class="listItem-images">
<image v-if="item.recommend == 1"
style="width: 77rpx;height: 36rpx;z-index: 100;position: relative;top: 34rpx;left: 0rpx;"
src="https://jiangxiaoxian.0rui.cn/hot.png"></image>
<image class="iamges-mainImg" :src="item.images[0]"></image>
</view>
<!-- 右侧内容 -->
<view class="listItem-contents">
<view class="title2" style="margin-bottom: 20rpx;">{{item.platform_title}}</view>
<scroll-view class="score-box">
<view class="fs11 flex cate">
<view class="cate-e" v-for="(e,i) in item.cate" :key="i">
<view v-show="e" class="status-tag " style="margin-right: 20rpx;">{{e}}
</view>
</view>
<!-- <text v-show="item.cate[1]"
class="status-tag" style="margin-right: 20rpx;">{{item.cate[1]}}</text>
<text v-show="item.cate[2]"
class="status-tag">{{item.cate[2]}}</text> -->
</view>
</scroll-view>
<view class="cons-third">
<view style="display: flex;">
<image style="width: 24rpx;height: 24rpx;"
src="https://jiangxiaoxian.0rui.cn/locationList.png"></image>
<view class="title3" style="margin-left: 10rpx;">{{item.address_city_text}}
</view>
</view>
<view class="title3">{{item.release_time_text}}</view>
<view style="display: flex;">
<image style="width: 26rpx;height: 20rpx;"
src="https://jiangxiaoxian.0rui.cn/eye.png"></image>
<view class="title3" style="margin-left: 10rpx;">{{item.views}}</view>
</view>
</view>
</view>
</view>
</view>
</view>
</view>
<!-- 平台课程 -->
<view class="exChangeBox" v-if="currentTab == 1">
<view class="couponsList">
<view class="list-item" v-for="(item,index) in classesList" :key="index"
@click="toDetail(item)">
<image style="width: 100%;height: 200rpx;border-radius: 30rpx 30rpx 0 0;" :src="item.image">
</image>
<image v-if="item.status == 1"
style="width: 77rpx;height: 36rpx;z-index: 100;position: relative;bottom: 190rpx;left: 20rpx;"
src="https://jiangxiaoxian.0rui.cn/schoolText.png"></image>
<image v-if="item.status == 2"
style="width: 77rpx;height: 36rpx;z-index: 100;position: relative;bottom: 190rpx;left: 20rpx;"
src="https://jiangxiaoxian.0rui.cn/schoolVideo.png"></image>
<view class="item-text">
<view class="fs30 c3 classTitle" style="">{{item.title}}</view>
<view class="cons-third">
<view class="title3">{{item.release_time_text}}</view>
<view style="display: flex;">
<image style="width: 26rpx;height: 20rpx;"
src="https://jiangxiaoxian.0rui.cn/eye.png">
</image>
<view class="title3" style="margin-left: 10rpx;">{{item.views}}</view>
</view>
</view>
</view>
</view>
</view>
</view>
<!-- 原料商城 -->
<view class="goodsBox" v-if="currentTab == 2">
<view class="goodsList">
<view class="list-item" v-for="(item,index) in mallList" :key="index" @click="sheep.$router.go('/pages/goods/index', { id: item.id })">
<image style="width: 330rpx;height: 200rpx;border-radius: 18rpx 18rpx 0 0;"
:src="item.image">
</image>
<view class="item-text">
<view class="fs30 c3 goodsTitle" style="margin: 0 auto;width: 300rpx;">{{item.title}}</view>
<view class="cons-third">
<view class="title3">{{item.release_time_text}}</view>
<view style="display: flex;">
<image style="width: 26rpx;height: 20rpx;"
src="https://jiangxiaoxian.0rui.cn/eye.png">
</image>
<view class="title3" style="margin-left: 10rpx;">{{item.views}}</view>
</view>
</view>
</view>
</view>
</view>
</view>
<!-- 无数据展示
<view class="flex flex-column flex-start align-items" style="margin-top: 400rpx;"
v-if="( currentTab == 0 && collectRentList.length == 0) || (currentTab == 1 && collectSchoolList.length == 0)">
<image src="https://jiangxiaoxian.0rui.cn/noneList.png" mode=""
style="width: 520rpx;height: 259rpx;">
</image>
<view style="margin-top: 30rpx;font-size: 28rpx;color: #323232;">暂无数据信息</view>
</view>-->
</scroll-view>
</view> </view>
</s-layout> </s-layout>
</template> </template>
@ -21,7 +160,7 @@
onReachBottom onReachBottom
} from '@dcloudio/uni-app'; } from '@dcloudio/uni-app';
import _ from 'lodash'; import _ from 'lodash';
// const // const
const tabMaps = [{ const tabMaps = [{
name: '食堂招租', name: '食堂招租',
@ -51,8 +190,10 @@
type: null, type: null,
my: null, my: null,
page: 1, page: 1,
list_rows: 10,
rentPage: 1, rentPage: 1,
schoolPage: 1, schoolPage: 1,
mallPage: 1,
limit: 10, limit: 10,
cate_ids: '', cate_ids: '',
province: null, province: null,
@ -71,18 +212,50 @@
function onChange(e) { function onChange(e) {
console.log('onChange', e); console.log('onChange', e);
currentTab.value = e.index currentTab.value = e.index
console.log('切换tabs', currentTab.value); console.log('切换tabs', currentTab.value,listQuery.value.keywords);
if(listQuery.value.keywords != null) {
if (currentTab.value == 0) {
collectRentList.value = [];
getRentList();
} else if (currentTab.value == 1) {
collectSchoolList.value = [];
getSchoolList();
} else {
getGoods();
}
}
}
function search(e) {
console.log('搜索', e.value);
if (currentTab.value == 0) { if (currentTab.value == 0) {
collectRentList.value = []; collectRentList.value = [];
getRentList(); getRentList();
} else if(currentTab.value == 1){ } else if (currentTab.value == 1) {
collectSchoolList.value = []; collectSchoolList.value = [];
getSchoolList(); getSchoolList();
}else { } else {
getGoods();
} }
} }
//
function getGoods() {
console.log('商品', listQuery.value.keywords);
// const listQuery =
sheep.$api.goods.list({
page: listQuery.value.mallPage,
list_rows: listQuery.value.list_rows,
keyword: listQuery.value.keywords,
}).then((res) => {
if (res.code == 1) {
console.log('商品搜素列表:', res.data);
mallList.value = res.data.data
mallCount.value = res.data.total
}
})
}
// //
async function getRentList() { async function getRentList() {
const res = await sheep.$api.rent.rentlist({ const res = await sheep.$api.rent.rentlist({
@ -93,7 +266,7 @@
status: 1, status: 1,
}); });
console.log('招租收藏列表', res); console.log('招租收藏列表', res);
if (res.code == 1) { if (res.code == 1) {
collectRentList.value = [...collectRentList.value, ...res.data.list]; collectRentList.value = [...collectRentList.value, ...res.data.list];
rentCount.value = res.data.count rentCount.value = res.data.count
@ -114,10 +287,9 @@
page: listQuery.value.schoolPage, page: listQuery.value.schoolPage,
limit: listQuery.value.limit, limit: listQuery.value.limit,
order: 'normal', order: 'normal',
status: 1,
}); });
console.log('平台课程收藏列表', res); console.log('平台课程收藏列表', res);
if (res.code == 1) { if (res.code == 1) {
collectSchoolList.value = [...collectSchoolList.value, ...res.data.list]; collectSchoolList.value = [...collectSchoolList.value, ...res.data.list];
schoolCount.value = res.data.count schoolCount.value = res.data.count
@ -131,7 +303,7 @@
} }
console.log('平台课程收藏列表-222', collectSchoolList.value); console.log('平台课程收藏列表-222', collectSchoolList.value);
} }
// //
function onScrolltolower() { function onScrolltolower() {
if (currentTab.value == 0) { if (currentTab.value == 0) {
@ -139,26 +311,27 @@
listQuery.value.rentPage += 1; listQuery.value.rentPage += 1;
getRentList(); getRentList();
} }
} else { } else if(currentTab.value == 1) {
if (collectSchoolList.value.length < schoolCount.value) { if (collectSchoolList.value.length < schoolCount.value) {
listQuery.value.schoolPage += 1; listQuery.value.schoolPage += 1;
getSchoolList(); getSchoolList();
} }
}else {
if (mallList.value.length < mallCount.value) {
listQuery.value.mallPage += 1;
getGoods();
}
} }
} }
// //
function onS() { function onS() {
homrS.value = true homrS.value = true;
listQuery.value.keywords = ''
uni.showLoading({ uni.showLoading({
title: '加载中...' title: '加载中...'
}); });
resetLists(); resetLists();
if (currentTab.value == 0) {
getRentList();
} else {
getSchoolList();
}
setTimeout(() => { setTimeout(() => {
homrS.value = false; homrS.value = false;
uni.hideLoading(); uni.hideLoading();
@ -171,20 +344,300 @@
listQuery.value.rentPage = 1; listQuery.value.rentPage = 1;
collectRentList.value = []; collectRentList.value = [];
loadStatus.value = "loading"; loadStatus.value = "loading";
} else { getRentList();
} else if(currentTab.value == 1) {
listQuery.value.schoolPage = 1; listQuery.value.schoolPage = 1;
collectSchoolList.value = []; collectSchoolList.value = [];
loadStatus.value = "loading"; loadStatus.value = "loading";
getSchoolList();
}else {
listQuery.value.mallPage = 1;
mallList.value = [];
loadStatus.value = "loading";
getGoods();
} }
} }
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.search-result {
padding-top: 10px;
padding-bottom: 20px;
text-align: center;
}
.search-result-text {
text-align: center;
font-size: 14px;
color: #666;
}
.example-body {
/* #ifndef APP-NVUE */
display: block;
/* #endif */
padding: 0px;
}
.uni-mt-10 {
margin-top: 10px;
}
.title2 {
color: #3d3d3d;
font-size: 30rpx;
font-weight: 800;
line-height: 42rpx;
}
.title3 {
font-size: 20rpx;
font-weight: 400;
color: #999999;
line-height: 22rpx;
}
.container { .container {
.top {
height: 70rpx;
background-size: 100%;
padding: 30rpx;
display: grid;
.locTop {
width: 100%;
height: 70rpx;
display: flex;
.locTop-right {
width: 690rpx;
height: 70rpx;
}
}
}
.recommend-box {
padding: 0rpx 30rpx;
.rrecommList {
margin-top: 30rpx;
.reListItem {
background-color: #ffffff;
width: 640rpx;
// height: 190rpx auto;
padding: 30rpx;
display: flex;
justify-content: flex-start;
align-items: center;
border-radius: 18rpx;
.listItem-images {
display: grid;
justify-content: flex-start;
.iamges-mainImg {
width: 190rpx;
height: 190rpx;
position: relative;
right: 0rpx;
bottom: 18rpx;
z-index: 1;
}
}
.listItem-contents {
width: 300rpx;
height: auto;
margin-left: 20rpx;
.score-box {
// width: 300rpx;
display: flex;
.cate {
width: 300rpx;
height: 190rpx auto;
display: flex;
justify-content: flex-start;
align-items: center;
white-space: nowrap;
/* 禁止换行 */
overflow: hidden;
/* 超出部分隐藏 */
.cate-e {
.status-tag {
padding: 5rpx 15rpx;
border-radius: 5rpx;
font-size: 22rpx;
font-weight: 400;
line-height: 22rpx;
background-color: rgba(247, 97, 0, 0.2);
width: 107rpx;
height: 36rpx;
display: flex;
justify-content: center;
align-items: center;
color: #F76100;
}
}
}
.cate-e {
width: 300rpx;
height: 190rpx auto;
display: flex;
justify-content: flex-start;
align-items: center;
overflow-wrap: break-word;
word-break: break-word;
white-space: normal;
.status-tag {
// padding: 5rpx 15rpx;
border-radius: 5rpx;
font-size: 22rpx;
font-weight: 400;
line-height: 22rpx;
background-color: rgba(247, 97, 0, 0.2);
width: 107rpx;
height: 36rpx;
display: flex;
justify-content: center;
align-items: center;
color: #F76100;
}
}
}
.cons-third {
margin-top: 20rpx;
display: flex;
justify-content: flex-start;
align-items: center;
}
}
}
}
}
.exChangeBox {
width: 690rpx;
margin: 0 auto;
.couponsList {
width: 100%;
// padding: 0 30rpx;
display: grid;
grid-template-columns: repeat(2, 1fr);
grid-gap: 20rpx;
box-sizing: border-box;
margin-top: 30rpx;
.list-item {
width: 330rpx;
border-radius: 18rpx;
box-shadow: 4rpx 4rpx 4rpx 4rpx rgba(153, 153, 153, 0.1);
background-color: #ffffff;
.item-text {
padding: 0rpx 20rpx 0rpx 20rpx;
height: 120rpx;
position: relative;
bottom: 30rpx;
// text-align: center;
.classTitle {
height: 80rpx;
width: 300rpx;
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
overflow: hidden;
text-overflow: ellipsis;
}
.cons-third {
margin-top: 20rpx;
display: flex;
justify-content: space-between;
align-items: center;
}
}
}
}
}
.goodsBox {
width: 690rpx;
margin: 0 auto;
.goodsList {
width: 100%;
// padding: 0 30rpx;
display: grid;
grid-template-columns: repeat(2, 1fr);
grid-gap: 20rpx;
box-sizing: border-box;
margin-top: 30rpx;
.list-item {
width: 330rpx;
border-radius: 18rpx;
box-shadow: 4rpx 4rpx 4rpx 4rpx rgba(153, 153, 153, 0.1);
background-color: #ffffff;
.item-text {
padding: 20rpx;
min-height: 140rpx;
position: relative;
bottom: 0rpx;
// text-align: center;
.goodsTitle {
min-height: 100rpx;
width: 300rpx;
display: -webkit-box;
-webkit-line-clamp: 3;
-webkit-box-orient: vertical;
overflow: hidden;
text-overflow: ellipsis;
}
.cons-third {
margin-top: 20rpx;
display: flex;
justify-content: space-between;
align-items: center;
}
}
}
}
}
} }
</style> </style>

View File

@ -23,8 +23,7 @@
{ {
"path": "pages/index/fabu", "path": "pages/index/fabu",
"style": { "style": {
"navigationBarTitleText": "发布信息", "navigationBarTitleText": "发布信息"
"enablePullDownRefresh": true
}, },
"meta": { "meta": {
"sync": true, "sync": true,

View File

@ -51,8 +51,8 @@
</view> </view>
<view class="title5" style="margin-left: 30rpx;">项目类型 {{detailRent.type_text}}</view> <view class="title5" style="margin-left: 30rpx;">项目类型 {{detailRent.type_text}}</view>
</view> </view>
<view style="display: flex;"> <view style="display: flex;align-items: center;justify-content: center;">
<image style="width: 26rpx;height: 20rpx;" src="https://jiangxiaoxian.0rui.cn/eye.png"></image> <image style="width: 26rpx;height: 20rpx;" src="https://jiangxiaoxian.0rui.cn/eye.png"></image>
<view class="title3" style="margin-left: 10rpx;">{{detailRent.views}}</view> <view class="title3" style="margin-left: 10rpx;">{{detailRent.views}}</view>
</view> </view>
@ -106,7 +106,7 @@
<image v-else class="btnIcon" src="https://jiangxiaoxian.0rui.cn/collected.png" mode=""></image> <image v-else class="btnIcon" src="https://jiangxiaoxian.0rui.cn/collected.png" mode=""></image>
<view class="btnText" style="margin-top: 10rpx;">收藏</view> <view class="btnText" style="margin-top: 10rpx;">收藏</view>
</view> </view>
<view style="margin-left: 40rpx;" @click="toPage('/pages/chat/index')"> <view style="margin-left: 40rpx;" @click="handleService()">
<image class="btnIcon" src="https://jiangxiaoxian.0rui.cn/service.png" mode=""></image> <image class="btnIcon" src="https://jiangxiaoxian.0rui.cn/service.png" mode=""></image>
<view class="btnText" style="margin-top: 10rpx;">客服</view> <view class="btnText" style="margin-top: 10rpx;">客服</view>
</view> </view>
@ -116,27 +116,35 @@
</view> </view>
</view> </view>
<su-popup :show="showContacted == true" type="center" round="10" :isMaskClick="false"> <su-popup :show="showContacted == true" type="center" round="10" :isMaskClick="false">
<view class="popupContacted"> <view class="popupContacted">
<view class="contactedBox"> <view class="contactedBox">
<image style="width: 120rpx;height: 120rpx;position: relative;left: 54rpx;" src="https://jiangxiaoxian.0rui.cn/rentContact1.png"></image> <image style="width: 120rpx;height: 120rpx;position: relative;left: 54rpx;"
<view style="font-size: 36rpx;line-height: 50rpx;font-weight: 900;color: #3d3d3d;position: relative;left: 44rpx;">确认拨号</view> src="https://jiangxiaoxian.0rui.cn/rentContact1.png"></image>
<view style="font-size: 30rpx;line-height: 44rpx;font-weight: 400;color: #3d3d3d;">剩余联系次数{{detailRent.all_mobile_num}}</view> <view
style="font-size: 36rpx;line-height: 50rpx;font-weight: 900;color: #3d3d3d;position: relative;left: 44rpx;">
确认拨号</view>
<view style="font-size: 30rpx;line-height: 44rpx;font-weight: 400;color: #3d3d3d;">
剩余联系次数{{detailRent.all_mobile_num}}</view>
</view> </view>
<view class="contactBtn"> <view class="contactBtn">
<view class="tactBtnBox" style="color: #999999;" @click="showContacted = false">取消</view> <view class="tactBtnBox" style="color: #999999;" @click="showContacted = false">取消</view>
<view class="tactBtnBox" style="color: #333333;" @click="handleTell">确定</view> <view class="tactBtnBox" style="color: #333333;" @click="handleTell">确定</view>
</view> </view>
</view> </view>
</su-popup> </su-popup>
<su-popup :show="showContactNo == true" type="center" round="10" :isMaskClick="false"> <su-popup :show="showContactNo == true" type="center" round="10" :isMaskClick="false">
<view class="popupContactNo"> <view class="popupContactNo">
<view class="contactNoBox"> <view class="contactNoBox">
<image style="width: 120rpx;height: 120rpx;position: relative;left: 190rpx;" src="https://jiangxiaoxian.0rui.cn/rentContact2.png"></image> <image style="width: 120rpx;height: 120rpx;position: relative;left: 190rpx;"
<view style="font-size: 36rpx;line-height: 50rpx;font-weight: 900;color: #3d3d3d;position: relative;left: 180rpx;">非常抱歉</view> src="https://jiangxiaoxian.0rui.cn/rentContact2.png"></image>
<view style="font-size: 30rpx;line-height: 44rpx;font-weight: 400;color: #3d3d3d;">你的联系次数不足请前往积分商城兑换</view> <view
style="font-size: 36rpx;line-height: 50rpx;font-weight: 900;color: #3d3d3d;position: relative;left: 180rpx;">
非常抱歉</view>
<view style="font-size: 30rpx;line-height: 44rpx;font-weight: 400;color: #3d3d3d;">你的联系次数不足请前往积分商城兑换
</view>
</view> </view>
<view class="contactBtn"> <view class="contactBtn">
<view class="tactBtnBox" style="color: #999999;" @click="showContactNo = false">取消</view> <view class="tactBtnBox" style="color: #999999;" @click="showContactNo = false">取消</view>
@ -144,7 +152,7 @@
</view> </view>
</view> </view>
</su-popup> </su-popup>
</s-layout> </s-layout>
</template> </template>
@ -169,7 +177,9 @@
} from '@/sheep/validate/form'; } from '@/sheep/validate/form';
import rent from '../../sheep/api/rent'; import rent from '../../sheep/api/rent';
import sheep from '@/sheep'; import sheep from '@/sheep';
import { showShareModal } from '@/sheep/hooks/useModal'; import {
showShareModal
} from '@/sheep/hooks/useModal';
const rentId = ref(''); const rentId = ref('');
const detailRent = ref('') const detailRent = ref('')
@ -184,7 +194,7 @@
// getDetail(); // getDetail();
// } // }
}) })
onShow(() => { onShow(() => {
if (rentId.value) { if (rentId.value) {
getDetail(); getDetail();
@ -197,11 +207,11 @@
if (res.code == 1) { if (res.code == 1) {
detailRent.value = res.data.detail detailRent.value = res.data.detail
detailRent.value.release_time_text = detailRent.value.release_time_text.substring(0, 10); detailRent.value.release_time_text = detailRent.value.release_time_text.substring(0, 10);
const imageList = res.data.detail.images const imageList = res.data.detail.images
console.log('imageList:',imageList.length); console.log('imageList:', imageList.length);
imagesNum.value = imageList.length imagesNum.value = imageList.length
console.log('imagesNum:',imagesNum.value); console.log('imagesNum:', imagesNum.value);
} else { } else {
uni.showToast({ uni.showToast({
title: res.msg, title: res.msg,
@ -209,76 +219,76 @@
}) })
} }
} }
// //
function backHome() { function backHome() {
uni.switchTab({ uni.switchTab({
url: '/pages/index/index' url: '/pages/index/index'
}) })
} }
// //
const toPage = (e) => { const toPage = (e) => {
uni.navigateTo({ uni.navigateTo({
url: e url: e
}) })
} }
// //
function handleColect() { function handleColect() {
console.log('收藏',detailRent.value.is_collect); console.log('收藏', detailRent.value.is_collect);
if(detailRent.value.is_collect == 1) { if (detailRent.value.is_collect == 1) {
detailRent.value.is_collect = 0 detailRent.value.is_collect = 0
const data = { const data = {
id: detailRent.value.id, id: detailRent.value.id,
is_collect: detailRent.value.is_collect is_collect: detailRent.value.is_collect
} }
sheep.$api.rent.rentCollect(data).then((res) => { sheep.$api.rent.rentCollect(data).then((res) => {
if(res.code == 1) { if (res.code == 1) {
uni.showToast({ uni.showToast({
title:'已取消收藏', title: '已取消收藏',
icon:'none', icon: 'none',
duration: 2000 duration: 2000
}) })
setTimeout(() =>{ setTimeout(() => {
getDetail() getDetail()
},1000) }, 1000)
// getDetail() // getDetail()
} }
}) })
}else { } else {
detailRent.value.is_collect = 1 detailRent.value.is_collect = 1
const data1 = { const data1 = {
id: detailRent.value.id, id: detailRent.value.id,
is_collect: detailRent.value.is_collect is_collect: detailRent.value.is_collect
} }
sheep.$api.rent.rentCollect(data1).then((res) => { sheep.$api.rent.rentCollect(data1).then((res) => {
if(res.code == 1) { if (res.code == 1) {
uni.showToast({ uni.showToast({
title:'已收藏', title: '已收藏',
icon:'none', icon: 'none',
duration: 2000 duration: 2000
}) })
setTimeout(() =>{ setTimeout(() => {
getDetail() getDetail()
},1000) }, 1000)
// getDetail() // getDetail()
} }
}) })
} }
} }
// //
function handleJuage() { function handleJuage() {
console.log('拨打电话次数:',detailRent.value.all_mobile_num); console.log('拨打电话次数:', detailRent.value.all_mobile_num);
if(detailRent.value.all_mobile_num > 0){ if (detailRent.value.all_mobile_num > 0) {
showContacted.value = true showContacted.value = true
}else { } else {
showContactNo.value = true showContactNo.value = true
} }
} }
@ -286,22 +296,22 @@
// //
async function handleTell() { async function handleTell() {
const res = await sheep.$api.rent.getPhoneNum({ const res = await sheep.$api.rent.getPhoneNum({
id:rentId.value id: rentId.value
}) })
console.log('获取电话',res); console.log('获取电话', res);
if(res.code == 1) { if (res.code == 1) {
phoneTell.value = res.data.contact_number phoneTell.value = res.data.contact_number
showContacted.value = false showContacted.value = false
wx.makePhoneCall({ wx.makePhoneCall({
phoneNumber: phoneTell.value, phoneNumber: phoneTell.value,
success: function() { success: function() {
console.log("拨打电话成功") console.log("拨打电话成功")
}, },
fail: function(err) { fail: function(err) {
console.log("拨打电话失败", err) console.log("拨打电话失败", err)
} }
}) })
} }
} }
// //
@ -311,7 +321,21 @@
url: '/pages/app/score-shop' url: '/pages/app/score-shop'
}) })
} }
//
function handleService() {
console.log('联系平台客服',detailRent.value.platform_contact_number);
wx.makePhoneCall({
phoneNumber: detailRent.value.platform_contact_number,
success: function() {
console.log("拨打电话成功")
},
fail: function(err) {
console.log("拨打电话失败", err)
}
})
}
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
@ -566,14 +590,14 @@
} }
} }
.popupContacted { .popupContacted {
width: 660rpx; width: 660rpx;
height: 477rpx; height: 477rpx;
background-color: #fff; background-color: #fff;
display: grid; display: grid;
border-radius: 18rpx; border-radius: 18rpx;
.contactedBox { .contactedBox {
width: 660rpx; width: 660rpx;
height: 325rpx; height: 325rpx;
@ -583,7 +607,7 @@
justify-content: center; justify-content: center;
align-items: center; align-items: center;
} }
.contactBtn { .contactBtn {
width: 660rpx; width: 660rpx;
height: 92rpx; height: 92rpx;
@ -591,7 +615,7 @@
display: flex; display: flex;
border-radius: 0 0 18rpx 18rpx; border-radius: 0 0 18rpx 18rpx;
// margin-top: 40rpx; // margin-top: 40rpx;
.tactBtnBox { .tactBtnBox {
width: 330rpx; width: 330rpx;
height: 92rpx; height: 92rpx;
@ -601,16 +625,16 @@
justify-content: center; justify-content: center;
} }
} }
} }
.popupContactNo { .popupContactNo {
width: 660rpx; width: 660rpx;
height: 477rpx; height: 477rpx;
background-color: #fff; background-color: #fff;
display: grid; display: grid;
border-radius: 18rpx; border-radius: 18rpx;
.contactNoBox { .contactNoBox {
width: 660rpx; width: 660rpx;
height: 325rpx; height: 325rpx;
@ -619,14 +643,14 @@
justify-content: center; justify-content: center;
align-items: center; align-items: center;
} }
.contactBtn { .contactBtn {
width: 660rpx; width: 660rpx;
height: 92rpx; height: 92rpx;
border-top: 1rpx solid #eeeeee; border-top: 1rpx solid #eeeeee;
display: flex; display: flex;
border-radius: 0 0 18rpx 18rpx; border-radius: 0 0 18rpx 18rpx;
.tactBtnBox { .tactBtnBox {
width: 330rpx; width: 330rpx;
height: 92rpx; height: 92rpx;
@ -637,5 +661,4 @@
} }
} }
} }
</style> </style>

View File

@ -66,11 +66,6 @@
<view v-show="e" class="status-tag " style="margin-right: 20rpx;">{{e}} <view v-show="e" class="status-tag " style="margin-right: 20rpx;">{{e}}
</view> </view>
</view> </view>
<!-- <text v-show="item.cate[1]"
class="status-tag" style="margin-right: 20rpx;">{{item.cate[1]}}</text>
<text v-show="item.cate[2]"
class="status-tag">{{item.cate[2]}}</text> -->
</view> </view>
</scroll-view> </scroll-view>
<view class="cons-third"> <view class="cons-third">
@ -81,7 +76,7 @@
</view> </view>
</view> </view>
<view class="title3">{{item.release_time_text}}</view> <view class="title3">{{item.release_time_text}}</view>
<view style="display: flex;"> <view style="display: flex;align-items: center;justify-content: center;">
<image style="width: 26rpx;height: 20rpx;" <image style="width: 26rpx;height: 20rpx;"
src="https://jiangxiaoxian.0rui.cn/eye.png"></image> src="https://jiangxiaoxian.0rui.cn/eye.png"></image>
<view class="title3" style="margin-left: 10rpx;">{{item.views}}</view> <view class="title3" style="margin-left: 10rpx;">{{item.views}}</view>
@ -174,6 +169,7 @@
const proCity = ref(''); // const proCity = ref(''); //
function searchRent() { function searchRent() {
rentList.value = []
console.log('搜索', listQuery.value.keywords); console.log('搜索', listQuery.value.keywords);
getList() getList()
} }
@ -386,7 +382,7 @@
} }
.locTop-right { .locTop-right {
width: 330rpx; width: 350rpx;
height: 70rpx; height: 70rpx;
} }
@ -465,6 +461,7 @@
.cons-third { .cons-third {
margin-top: 20rpx; margin-top: 20rpx;
width: 430rpx;
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
align-items: center; align-items: center;

View File

@ -10,7 +10,7 @@
<!-- 可兑换券列表 --> <!-- 可兑换券列表 -->
<scroll-view @scrolltolower="onScrolltolower" :refresher-enabled="true" :refresher-triggered="homrS" <scroll-view @scrolltolower="onScrolltolower" :refresher-enabled="true" :refresher-triggered="homrS"
@refresherrefresh="onS" scroll-y="true" class="flex align-items" @refresherrefresh="onS" scroll-y="true" class="flex align-items"
style="height: 700rpx auto;box-sizing: border-box;margin-top: 30rpx;"> style="height: 85vh;box-sizing: border-box;margin-top: 30rpx;">
<!-- 满减券 --> <!-- 满减券 -->
<view class="exChangeBox" v-if="currentTab == 0"> <view class="exChangeBox" v-if="currentTab == 0">
<view class="couponsListFull"> <view class="couponsListFull">

View File

@ -901,10 +901,9 @@
width: 750rpx; width: 750rpx;
height: 200rpx; height: 200rpx;
background: #FFFFFF; background: #FFFFFF;
// box-shadow: 0rpx -6rpx 12rpx 0rpx rgba(111, 190, 255, 0.1);
border-radius: 0rpx 0rpx 0rpx 0rpx; border-radius: 0rpx 0rpx 0rpx 0rpx;
bottom: 0;
position: fixed; position: fixed;
bottom: 0;
z-index: 10; z-index: 10;
.btns { .btns {

View File

@ -237,7 +237,8 @@
if(state.model.province_name == state.model.city_name) { if(state.model.province_name == state.model.city_name) {
proCity.value = state.model.province_name proCity.value = state.model.province_name
}else { }else {
proCity.value = state.model.province_name + " " + state.model.city_name // proCity.value = state.model.province_name + " " + state.model.city_name
proCity.value = state.model.province_name + state.model.city_name
} }
// proCity.value = state.model.province_name + " " + state.model.city_name // proCity.value = state.model.province_name + " " + state.model.city_name
@ -347,7 +348,7 @@
const res = await sheep.$api.rent.rentlist({ const res = await sheep.$api.rent.rentlist({
keywords: listQuery.value.keywords, keywords: listQuery.value.keywords,
page: listQuery.value.page, page: listQuery.value.page,
limit: listQuery.value.limit, limit: 25,
cate_ids: listQuery.value.cate_ids, cate_ids: listQuery.value.cate_ids,
order: 'normal', order: 'normal',
status: 1, status: 1,
@ -632,8 +633,9 @@
.cons-third { .cons-third {
margin-top: 20rpx; margin-top: 20rpx;
width: 430rpx;
display: flex; display: flex;
justify-content: space-around; justify-content: space-between;
align-items: center; align-items: center;
} }
} }

View File

@ -17,7 +17,7 @@
</view> </view>
<view class="headAvatar-info justify-start"> <view class="headAvatar-info justify-start">
<view class="info-name fs-36 weight8 flexD" v-if="isLogin == true"> <view class="info-name fs-36 weight8 flexD" v-if="isLogin == true">
<view style="font-weight: 800;" @click="toLogin">{{ userInfo.nickname}} </view> <view style="font-weight: 800;">{{ userInfo.nickname}} </view>
<view class="UnAuthenBox weight8 fs-20" v-if="authenInfo.status == -1 " @click="toPage('/pages/user/authentication')">未认证</view> <view class="UnAuthenBox weight8 fs-20" v-if="authenInfo.status == -1 " @click="toPage('/pages/user/authentication')">未认证</view>
<view class="authenticationBox weight8 fs-20" v-if="authenInfo.status == 1 ">已认证</view> <view class="authenticationBox weight8 fs-20" v-if="authenInfo.status == 1 ">已认证</view>
</view> </view>
@ -116,7 +116,7 @@
</view> </view>
<view class="line-row" style="margin: 30rpx 0;"></view> <view class="line-row" style="margin: 30rpx 0;"></view>
<!-- 分享好友 --> <!-- 分享好友 -->
<view class="fabuBox"> <view class="fabuBox" @click="showShareModal">
<view class="flex align-items"> <view class="flex align-items">
<image style="width: 36rpx;height: 36rpx;margin-right: 20rpx;" <image style="width: 36rpx;height: 36rpx;margin-right: 20rpx;"
src="https://jiangxiaoxian.0rui.cn/share.png"></image> src="https://jiangxiaoxian.0rui.cn/share.png"></image>
@ -216,6 +216,9 @@
import { import {
baseUrl, baseUrl,
} from '@/sheep/config'; } from '@/sheep/config';
import {
showShareModal
} from '@/sheep/hooks/useModal';
const showLogin = ref(false); const showLogin = ref(false);
const iv = ref(''); const iv = ref('');

View File

@ -61,7 +61,7 @@
<image class="btnIcon" src="https://jiangxiaoxian.0rui.cn/rentShare.png" mode=""></image> <image class="btnIcon" src="https://jiangxiaoxian.0rui.cn/rentShare.png" mode=""></image>
<view class="btnText" style="margin-top: 10rpx;">分享</view> <view class="btnText" style="margin-top: 10rpx;">分享</view>
</view> </view>
<view style="margin-left: 40rpx;" @click="toPage('/pages/chat/index')"> <view style="margin-left: 40rpx;" @click="handleService()">
<image class="btnIcon" src="https://jiangxiaoxian.0rui.cn/service.png" mode=""></image> <image class="btnIcon" src="https://jiangxiaoxian.0rui.cn/service.png" mode=""></image>
<view class="btnText" style="margin-top: 10rpx;">客服</view> <view class="btnText" style="margin-top: 10rpx;">客服</view>
</view> </view>
@ -225,6 +225,22 @@
}) })
} }
} }
//
function handleService() {
console.log('联系平台客服',detailRent.value.platform_contact_number);
wx.makePhoneCall({
phoneNumber: detailRent.value.platform_contact_number,
success: function() {
console.log("拨打电话成功")
},
fail: function(err) {
console.log("拨打电话失败", err)
}
})
}
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>

View File

@ -97,7 +97,6 @@
page: listQuery.value.page, page: listQuery.value.page,
limit: listQuery.value.limit, limit: listQuery.value.limit,
order: 'normal', order: 'normal',
recommend: 0,
}); });
console.log('getList', res); console.log('getList', res);
@ -133,7 +132,7 @@
title: '加载中...' title: '加载中...'
}); });
resetLists(); resetLists();
getList()
setTimeout(() => { setTimeout(() => {
homrS.value = false; homrS.value = false;
uni.hideLoading(); uni.hideLoading();
@ -144,6 +143,7 @@
function resetLists() { function resetLists() {
listQuery.value.page = 1; listQuery.value.page = 1;
classesList.value = []; classesList.value = [];
getList();
// loadStatus.value = "loading"; // loadStatus.value = "loading";
} }

View File

@ -240,11 +240,11 @@
title: '加载中...' title: '加载中...'
}); });
resetLists(); resetLists();
if (currentTab.value == 0) { // if (currentTab.value == 0) {
getRentList(); // getRentList();
} else { // } else {
getSchoolList(); // getSchoolList();
} // }
setTimeout(() => { setTimeout(() => {
homrS.value = false; homrS.value = false;
uni.hideLoading(); uni.hideLoading();
@ -257,10 +257,12 @@
listQuery.value.rentPage = 1; listQuery.value.rentPage = 1;
collectRentList.value = []; collectRentList.value = [];
loadStatus.value = "loading"; loadStatus.value = "loading";
getRentList();
} else { } else {
listQuery.value.schoolPage = 1; listQuery.value.schoolPage = 1;
collectSchoolList.value = []; collectSchoolList.value = [];
loadStatus.value = "loading"; loadStatus.value = "loading";
getSchoolList();
} }
} }

View File

@ -3,7 +3,7 @@
<view class="cart-box ss-flex ss-flex-col ss-row-between"> <view class="cart-box ss-flex ss-flex-col ss-row-between">
<scroll-view @scrolltolower="onScrolltolower" :refresher-enabled="true" :refresher-triggered="homrS" <scroll-view @scrolltolower="onScrolltolower" :refresher-enabled="true" :refresher-triggered="homrS"
@refresherrefresh="onS" scroll-y="true" class="flex align-items" @refresherrefresh="onS" scroll-y="true" class="flex align-items"
style="height: 80vh;box-sizing: border-box;"> style="height: 87vh;box-sizing: border-box;">
<view class="cart-content"> <view class="cart-content">
<view class="goods-box ss-r-10 ss-m-b-14" v-for="(item, index) in feetHisList" :key="index"> <view class="goods-box ss-r-10 ss-m-b-14" v-for="(item, index) in feetHisList" :key="index">
<view class="dataBox">{{item.date_text}}</view> <view class="dataBox">{{item.date_text}}</view>
@ -36,7 +36,7 @@
{{e.information.address_city_text}} {{e.information.address_city_text}}
</view> </view>
</view> </view>
<view class="title3">{{e.information.release_time_text}}</view> <view class="title3">{{e.information.release_time_text.split(' ')[0]}}</view>
<view style="display: flex;"> <view style="display: flex;">
<image style="width: 26rpx;height: 20rpx;" <image style="width: 26rpx;height: 20rpx;"
src="https://jiangxiaoxian.0rui.cn/eye.png"></image> src="https://jiangxiaoxian.0rui.cn/eye.png"></image>
@ -169,6 +169,7 @@
// //
function onS() { function onS() {
homrS.value = true homrS.value = true
listQuery.value.keywords = ''
uni.showLoading({ uni.showLoading({
title: '加载中...' title: '加载中...'
}); });
@ -247,7 +248,7 @@
.cart-content { .cart-content {
width: 100%; width: 100%;
padding: 0 20rpx; padding: 0 30rpx;
box-sizing: border-box; box-sizing: border-box;
margin-top: 30rpx; margin-top: 30rpx;
@ -255,7 +256,7 @@
// background-color: #fff; // background-color: #fff;
.dataBox { .dataBox {
margin: 30rpx; margin: 30rpx 0;
} }
.rrecommList { .rrecommList {
@ -322,8 +323,9 @@
.cons-third { .cons-third {
margin-top: 20rpx; margin-top: 20rpx;
width: 430rpx;
display: flex; display: flex;
justify-content: space-around; justify-content: space-between;
align-items: center; align-items: center;
} }
} }

View File

@ -9,7 +9,7 @@
<!-- 推荐列表 --> <!-- 推荐列表 -->
<scroll-view @scrolltolower="onScrolltolower" :refresher-enabled="true" :refresher-triggered="homrS" <scroll-view @scrolltolower="onScrolltolower" :refresher-enabled="true" :refresher-triggered="homrS"
@refresherrefresh="onS" scroll-y="true" class="flex align-items" @refresherrefresh="onS" scroll-y="true" class="flex align-items"
style="height: 1250rpx;box-sizing: border-box;"> style="height: 85vh;box-sizing: border-box;">
<view class="recommend-box"> <view class="recommend-box">
<view class="rrecommList" v-for="(item,index) in rentList" :key="index" @click="toDetail(item)"> <view class="rrecommList" v-for="(item,index) in rentList" :key="index" @click="toDetail(item)">
<!-- 通过的 --> <!-- 通过的 -->

View File

@ -291,7 +291,8 @@
.line { .line {
width: 2rpx; width: 2rpx;
height: 24rpx; height: 24rpx;
background: #e5e5e7; // background: #e5e5e7;
background: #3d3d3d;
} }
.sicon-back { .sicon-back {
font-size: 32rpx; font-size: 32rpx;