1、发布:同意须知弹框的按钮样式

2、发布:身份认证的跳转
3、我的发布的列表样式修改-添加按钮(修改和取消啊按钮),并实现按钮功能
4、我发布的修改页面接参和数据反显
5、足迹的页面高度打开,合并相同日期的数据
This commit is contained in:
wangzimeng 2025-08-01 15:08:52 +08:00
parent f2bb7b768f
commit 211d8853f6
8 changed files with 2077 additions and 300 deletions

View File

@ -96,8 +96,7 @@
}
}
],
"subPackages": [
{
"subPackages": [{
"root": "pages/canteenRent",
"pages": [{
"path": "rentList",
@ -119,6 +118,17 @@
"title": "招租详情",
"group": "食堂招租"
}
},
{
"path": "rentEdit",
"style": {
"navigationBarTitleText": "修改发布信息"
},
"meta": {
"sync": true,
"title": "修改发布信息",
"group": "食堂招租"
}
}
]

View File

@ -239,12 +239,6 @@
title:'已收藏',
icon:'none'
})
// setTimeout(() => {
// uni.showToast({
// title:'',
// icon:'none'
// })
// }, 1000)
}
}

File diff suppressed because it is too large Load Diff

View File

@ -106,8 +106,8 @@
选择标签
</view>
<view class="row-right" style="width: 500rpx;" @click="openPopbq">
<view v-if="form.tags == '' " style="font-size: 28rpx;color: #9C9C9C">选择</view>
<view v-else style="font-size: 28rpx;color: #3d3d3d;">河南</view>
<view style="font-size: 28rpx;color: #9C9C9C">选择</view>
<!--v-if="form.tags == '' " <view v-else style="font-size: 28rpx;color: #3d3d3d;">河南</view> -->
<image style="width: 28rpx;height: 28rpx;margin-left: 10rpx;"
src="https://jiangxiaoxian.0rui.cn/rightMore.png"></image>
</view>
@ -163,15 +163,16 @@
@close="close" @open="open" :safeAreaInsetBottom="false" :closeOnClickOverlay="false">
<view style="width: 620rpx;height: 984rpx;padding: 30rpx;text-align: center;">
<view style="font-size: 40rpx;font-weight: 800;height: 120rpx;margin: 0 auto;">责任承诺确认书</view>
<scroll-view ref="scrollView" :scroll-top="scrollTop" :show-scrollbar='true' @scrolltolower="handleScroll"
scroll-y="true" style="height: 900rpx;">
<scroll-view ref="scrollView" :scroll-top="scrollTop" :show-scrollbar='true'
@scrolltolower="handleScroll" scroll-y="true" style="height: 900rpx;">
<view class=" flex align-items flex-column">
<rich-text style="text-align: justify;" :nodes="Negotiate"></rich-text>
</view>
</scroll-view>
</view>
<view style="width: 96%;display: flex;justify-content: space-between;align-items: center;margin-bottom: 30rpx;padding: 0 14rpx;">
<view
style="width: 96%;display: flex;justify-content: space-between;align-items: center;margin-bottom: 30rpx;padding: 0 14rpx;">
<view class="btn_4" @click="show = false">取消</view>
<view class="btn_3" v-if="agreeShow == false">我同意</view>
<view class="btn_2" v-if="agreeShow == true" @click="change()">我同意</view>
@ -183,9 +184,14 @@
<su-popup :show="cardShow == true" type="center" round="10" :isMaskClick="false">
<view class="popupContacted">
<view class="contactedBox">
<image style="width: 198rpx;height: 122rpx;position: relative;left: 12rpx;" src="https://jiangxiaoxian.0rui.cn/couponSuccess.png"></image>
<view style="font-size: 36rpx;line-height: 50rpx;font-weight: 900;color: #3d3d3d;text-align: center;">身份认证</view>
<view style="font-size: 30rpx;line-height: 44rpx;font-weight: 400;color: #3d3d3d;text-align: center;">认证后即可发布信息</view>
<image style="width: 198rpx;height: 122rpx;position: relative;left: 12rpx;"
src="https://jiangxiaoxian.0rui.cn/couponSuccess.png"></image>
<view
style="font-size: 36rpx;line-height: 50rpx;font-weight: 900;color: #3d3d3d;text-align: center;">
身份认证</view>
<view
style="font-size: 30rpx;line-height: 44rpx;font-weight: 400;color: #3d3d3d;text-align: center;">
认证后即可发布信息</view>
</view>
<view class="contactBtn">
<view class="tactBtnBox" style="color: #999999;" @click="cardShow = false">取消</view>
@ -345,10 +351,10 @@
//
function getAuthentied() {
sheep.$api.rent.isAuthentied().then((res) => {
if(res.code == 1) {
if(res.data !=1) {
if (res.code == 1) {
if (res.data != 1) {
cardShow.value = true;
}else {
} else {
cardShow.value = false;
}
}
@ -357,10 +363,10 @@
//
function getFbKnow() {
sheep.$api.rent.fabuAgree().then((res) => {
if(res.code == 1) {
console.log('发布须知',res.data);
if (res.code == 1) {
console.log('发布须知', res.data);
Negotiate.value = res.data.notice_publication_agreement
console.log('发布须知——Negotiate',Negotiate.value);
console.log('发布须知——Negotiate', Negotiate.value);
}
})
}
@ -434,7 +440,7 @@
form.value.type = Object.keys(typeList.value).find(
key => typeList.value[key] === form.value.typeName
);
console.log('type',form.value.type);
console.log('type', form.value.type);
showType.value = false;
}
@ -511,6 +517,22 @@
agreeShow.value = true
}
//
function getDetail() {
sheep.$api.rent.rentInfo(rentEditId.value).then((res) => {
if (res.code == 1) {
form.value = res.data,
selectTagslist.value = tagList.value.reduce((acc, obj) => {
if (form.value.cate_ids.includes(obj.id)) {
acc.push(obj);
}
return acc;
}, []);
console.log('详情',selectTagslist.value);
}
})
}
async function apply() {
if (agreeAdd.value == false) {
uni.showToast({
@ -599,7 +621,7 @@
console.log('apply——form:', form.value);
const res = await sheep.$api.rent.addRent(form.value)
if(res.code == 1){
if (res.code == 1) {
console.log('发布成功');
agreeAdd.value = false;
selectTagslist.value = []
@ -621,7 +643,7 @@
}
state.formData.images = []
uni.switchTab({
url:'/pages/index/user'
url: '/pages/index/user'
})
}
@ -634,7 +656,8 @@
display: flex;
justify-content: flex-start;
flex-wrap: wrap;
word-wrap: break-word; /* 允许长单词或URL换行 */
word-wrap: break-word;
/* 允许长单词或URL换行 */
overflow-wrap: break-word;
align-items: center;

View File

@ -170,6 +170,27 @@
// }
};
function getTag() {
// if (_.isEmpty(uni.getStorageSync('areaCity'))) {
sheep.$api.rent.tagsList().then((res) => {
if (res.code === 1) {
uni.setStorageSync('tagList', res.data.list);
}
});
// }
};
function getType() {
// if (_.isEmpty(uni.getStorageSync('areaCity'))) {
sheep.$api.rent.listType().then((res) => {
if (res.code === 1) {
uni.setStorageSync('typeList', res.data);
}
});
// }
};
const template = computed(() => sheep.$store('app').template?.home);
const isLogin = computed(() => sheep.$store('user').isLogin);
const qualification = ref(false)

View File

@ -3,7 +3,7 @@
<view class="cart-box ss-flex ss-flex-col ss-row-between">
<scroll-view @scrolltolower="onScrolltolower" :refresher-enabled="true" :refresher-triggered="homrS"
@refresherrefresh="onS" scroll-y="true" class="flex align-items"
style="height: 1000rpx;box-sizing: border-box;">
style="height: 80vh;box-sizing: border-box;">
<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="dataBox">{{item.date_text}}</view>
@ -126,13 +126,39 @@
});
console.log('足迹返值', res);
if (res.code == 1) {
feetHisList.value = [...feetHisList.value, ...res.data.list]
if(listQuery.value.page == 1) {
feetHisList.value = res.data.list;
}else {
if (feetHisList.value.length > 0 && res.data.list.length > 0) {
const lastItemOfPrevPage = feetHisList.value[feetHisList.value.length - 1];
const firstItemOfNewPage = res.data.list[0];
//
if (isSameDate(lastItemOfPrevPage.date, firstItemOfNewPage.date)) {
//
lastItemOfPrevPage.log = [...lastItemOfPrevPage.log, ...firstItemOfNewPage.log];
//
feetHisList.value = [...feetHisList.value, ...res.data.list.slice(1)];
} else {
//
feetHisList.value = [...feetHisList.value, ...res.data.list];
}
} else {
feetHisList.value = [...feetHisList.value, ...res.data.list];
}
}
// feetHisList.value = [...feetHisList.value, ...res.data.list]
feetCount.value = res.data.count
console.log('足迹列表', feetHisList.value);
}
}
//
function isSameDate(date1, date2) {
return date1 === date2;
}
//
function onScrolltolower() {
if (feetHisList.value.length < feetCount.value) {

View File

@ -14,13 +14,16 @@
<view class="rrecommList" v-for="(item,index) in rentList" :key="index" @click="toDetail(item)">
<!-- 通过的 -->
<view class="reListItem" v-if="item.status == 1">
<view class="reItemCon">
<!-- 左侧图片 -->
<view class="listItem-images">
<image class="iamges-mainImg" :src="item.images[0]"></image>
<image class="iamges-mainImg" :src="item.images[0]" mode=""></image>
</view>
<!-- 右侧内容 -->
<view class="listItem-contents">
<view class="title2" style="margin-bottom: 20rpx;">{{item.platform_title || item.title}}</view>
<view class="title2" style="margin-bottom: 20rpx;">
{{item.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">
@ -45,9 +48,68 @@
</view>
</view>
</view>
<view
style="background-color: #f7f7f7;height: 1rpx;width: 630rpx;border-radius: 12rpx;margin: 30rpx 0;">
</view>
<view class="reItemBtn">
<view class="editItemBtn" @click.stop="rentEdit(item)">修改信息</view>
<view class="cancelItemBtn" @click.stop="rentCancel(item)">取消发布</view>
</view>
</view>
<!-- 待审核的的 -->
<view class="pandListItem" v-if="item.status == 0">
<view class="pandItemCon">
<!-- 左侧图片 -->
<view class="listItem-images">
<image v-if="item.status == 0"
style="width: 151rpx;height: 210rpx;z-index: 100;position: relative;top: 78rpx;right: 15rpx;"
src="https://jiangxiaoxian.0rui.cn/releasePanding.png"></image>
<image class="iamges-mainImg" :src="item.images[0]" mode=""></image>
</view>
<!-- 右侧内容 -->
<view class="listItem-contents">
<view class="title2" style="margin-bottom: 20rpx;">
{{item.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>
</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
style="background-color: #f7f7f7;height: 1rpx;width: 630rpx;border-radius: 12rpx;margin: 30rpx 0;">
</view>
<view class="reItemBtn">
<view class="editItemBtn" @click.stop="rentEdit(item)">修改信息</view>
<view class="cancelItemBtn" @click.stop="rentCancel(item)">取消发布</view>
</view>
</view>
<!-- 未通过的 -->
<view class="unListItem" v-if="item.status == 2">
<view class="unItemCon">
<!-- 左侧图片 -->
<view class="listItem-images">
<image v-if="item.status == 2"
@ -57,7 +119,9 @@
</view>
<!-- 右侧内容 -->
<view class="listItem-contents">
<view class="title2" style="margin-bottom: 20rpx;">{{item.platform_title || item.title}}</view>
<view class="title2" style="margin-bottom: 20rpx;">
{{item.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">
@ -81,44 +145,16 @@
</view>
</view>
</view>
</view>
<view class="failReasonBox">
<view class="titltFail">驳回原因{{item.reason}}</view>
</view>
<view class="reItemBtn">
<view class="editItemBtn" @click.stop="rentEdit(item)">修改信息</view>
<view class="cancelItemBtn" @click.stop="rentCancel(item)">取消发布</view>
</view>
<!-- 待审核的的 -->
<view class="pandListItem" v-if="item.status == 0">
<!-- 左侧图片 -->
<view class="listItem-images">
<image v-if="item.status == 0"
style="width: 151rpx;height: 210rpx;z-index: 100;position: relative;top: 78rpx;right: 15rpx;"
src="https://jiangxiaoxian.0rui.cn/releasePanding.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 || item.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>
</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>
@ -180,10 +216,9 @@
listQuery.value.status = tabMaps[currentTab.value].value
}
rentList.value = []
getList();
}
//
async function getList() {
const res = await sheep.$api.rent.rentlist({
@ -191,6 +226,7 @@
limit: listQuery.value.limit,
order: 'normal',
status: listQuery.value.status,
my: 1,
});
console.log('getList', res);
@ -241,13 +277,42 @@
rentList.value = [];
getList();
}
//
function toDetail(e) {
console.log('跳转详情', e);
uni.navigateTo({
url: '/pages/canteenRent/rentDetail?id=' + e.id
})
}
//
function rentEdit(item) {
console.log('修改招租',item);
uni.navigateTo({
url: `/pages/canteenRent/rentEdit?id=${item.id}`
})
}
//
function rentCancel(item) {
console.log('取消招租',item.id);
const ids = item.id
console.log('取消招租',ids);
sheep.$api.rent.delRent({ids:item.id}).then((res) => {
if(res.code === 1) {
console.log('delete:',res);
uni.showToast({
title: '取消成功',
icon: 'none'
})
rentList.value = []
getList()
}else {
uni.showToast({
title: res.msg,
icon: 'error'
})
}
})
}
getList()
</script>
@ -280,26 +345,40 @@
line-height: 22rpx;
}
.titltFail {
font-size: 28rpx;
font-weight: 400;
line-height: 28rpx;
color: #3d3d3d;
display: flex;
justify-content: flex-start;
}
.container {
.recommend-box {
// margin-top: 30rpx;
padding: 0rpx 30rpx;
.rrecommList {
margin-top: 30rpx;
// padding: 30rpx;
.reListItem {
background-color: #ffffff;
width: 640rpx;
height: 190rpx;
height: 320rpx;
padding: 30rpx;
// display: block;
// justify-content: ;
// align-items: center;
border-radius: 18rpx;
margin-bottom: 30rpx;
.reItemCon {
width: 100%;
display: flex;
justify-content: flex-start;
align-items: center;
border-radius: 18rpx;
margin-bottom: 30rpx;
.listItem-images {
display: grid;
@ -350,24 +429,36 @@
.cons-third {
margin-top: 20rpx;
width: 428rpx;
margin-top: 26rpx;
display: flex;
justify-content: space-around;
justify-content: space-between;
align-items: center;
}
}
}
}
.unListItem {
background-color: #ffffff;
width: 640rpx;
height: 190rpx;
height: 440rpx;
padding: 30rpx;
border-radius: 18rpx;
margin-bottom: 30rpx;
.unItemCon {
width: 100%;
height: 190rpx;
display: flex;
justify-content: flex-start;
align-items: center;
border-radius: 18rpx;
margin-bottom: 30rpx;
.listItem-images {
display: grid;
@ -418,24 +509,45 @@
.cons-third {
margin-top: 20rpx;
width: 428rpx;
margin-top: 26rpx;
display: flex;
justify-content: space-around;
justify-content: space-between;
align-items: center;
}
}
}
.failReasonBox {
height: 69rpx;
width: 570rpx;
margin: 30rpx 0;
padding: 30rpx;
background-color: #f7f7f7;
border-radius: 12rpx;
overflow-wrap: break-word;
word-break: break-word;
white-space: normal;
}
}
.pandListItem {
background-color: #ffffff;
width: 640rpx;
height: 190rpx;
height: 320rpx;
padding: 30rpx;
border-radius: 18rpx;
margin-bottom: 30rpx;
.pandItemCon {
width: 100%;
height: 190rpx;
display: flex;
justify-content: flex-start;
align-items: center;
border-radius: 18rpx;
margin-bottom: 30rpx;
.listItem-images {
display: grid;
@ -486,18 +598,58 @@
.cons-third {
margin-top: 20rpx;
width: 428rpx;
margin-top: 26rpx;
display: flex;
justify-content: space-around;
justify-content: space-between;
align-items: center;
}
}
}
}
}
}
}
}
.reItemBtn {
width: 100%;
display: flex;
justify-content: flex-end;
align-items: center;
.editItemBtn {
width: 189rpx;
height: 70rpx;
display: flex;
justify-content: center;
align-items: center;
font-size: 32rpx;
border-radius: 128rpx;
border: 1rpx solid #333333;
font-weight: 400;
color: #333333;
line-height: 20rpx;
}
.cancelItemBtn {
width: 189rpx;
height: 70rpx;
background: linear-gradient(to right, #FFBD25, #FCCA58);
margin-left: 20rpx;
display: flex;
justify-content: center;
align-items: center;
font-size: 32rpx;
border-radius: 128rpx;
font-weight: 400;
color: #333333;
line-height: 20rpx;
}
}
</style>

View File

@ -52,6 +52,20 @@ export default {
method: 'POST',
data,
}),
//编辑提交
editRent: (data) =>
request({
url: 'meal.information/edit',
method: 'POST',
data,
}),
//删除
delRent: (data) =>
request({
url: 'meal.information/del',
method: 'POST',
data,
}),
//省市
getCity: () =>
request({