1、商城的购物车悬浮按钮
2、发布信息的图片上传间距调整 3、招租详情的底部按钮样式调整 4、我的发布:静态页面,已完成tabs切换,待审核和未通过的列表样式完成了
This commit is contained in:
parent
0b7f8d6f9e
commit
f2bb7b768f
@ -508,10 +508,10 @@
|
||||
.footer-box {
|
||||
width: 100%;
|
||||
height: 98rpx;
|
||||
padding-bottom: 0rpx;
|
||||
padding-bottom: 30rpx;
|
||||
box-sizing: border-box;
|
||||
position: fixed;
|
||||
bottom: 0;
|
||||
bottom: 5rpx;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
|
@ -65,6 +65,15 @@
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<!-- 固定显示 -->
|
||||
<view class="car-show" v-show="!showLine" @click="getCarList">
|
||||
<!-- <image class="car-image" src="@/static/imgs/goods/gou.png"></image>
|
||||
<image class="logo-image" src="@/static/imgs/goods/gougou.png" mode=""></image>
|
||||
<image class="gou-image" src="@/static/imgs/goods/mai.png" mode=""></image> -->
|
||||
<image @click="toPage('/pages/index/cart')" class="cart-image" src="https://jiangxiaoxian.0rui.cn/car.png" mode=""></image>
|
||||
</view>
|
||||
|
||||
</s-layout>
|
||||
</template>
|
||||
|
||||
@ -103,6 +112,12 @@
|
||||
state.categoryList = data;
|
||||
}
|
||||
}
|
||||
|
||||
const toPage = (e) => {
|
||||
uni.navigateTo({
|
||||
url: e,
|
||||
})
|
||||
}
|
||||
|
||||
const onMenu = (val) => {
|
||||
state.activeMenu = val;
|
||||
@ -252,4 +267,43 @@
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.car-show {
|
||||
height: 78rpx;
|
||||
position: fixed;
|
||||
bottom: 150rpx;
|
||||
right: 0;
|
||||
|
||||
.car-image {
|
||||
width: 165rpx;
|
||||
height: 78rpx;
|
||||
}
|
||||
|
||||
.logo-image {
|
||||
width: 67rpx;
|
||||
height: 67rpx;
|
||||
position: absolute;
|
||||
top: -50rpx;
|
||||
left: 80rpx;
|
||||
}
|
||||
|
||||
.gou-image {
|
||||
width: 30rpx;
|
||||
height: 30rpx;
|
||||
position: absolute;
|
||||
top: 49%;
|
||||
left: 30rpx;
|
||||
transform: translateY(-50%);
|
||||
}
|
||||
|
||||
.cart-image {
|
||||
width: 130rpx;
|
||||
height: 130rpx;
|
||||
position: absolute;
|
||||
top: 45%;
|
||||
right: 20rpx;
|
||||
transform: translateY(-50%);
|
||||
}
|
||||
}
|
||||
|
||||
</style>
|
||||
|
@ -73,7 +73,7 @@
|
||||
<view class="label flex align-items" style="width: auto;">
|
||||
详细信息
|
||||
</view>
|
||||
<view style="margin-top: 20rpx;height: 120rpx;">
|
||||
<view style="margin-top: 20rpx;height: 120rpx;margin-bottom: 30rpx;">
|
||||
<textarea v-model="form.content" style="height: 120rpx;width: 100%;" maxlength="400"
|
||||
placeholder-style="font-size:28rpx;color:#9c9c9c;line-height:36rpx"
|
||||
placeholder="请输入你的招标详细信息"></textarea>
|
||||
@ -81,7 +81,7 @@
|
||||
|
||||
<!-- 图片 -->
|
||||
<s-uploader v-model:url="state.formData.images" fileMediatype="image" limit="9" mode="grid"
|
||||
:imageStyles="{ width: '168rpx', height: '168rpx' }"></s-uploader>
|
||||
:imageStyles="{ width: '168rpx', height: '168rpx'}"></s-uploader>
|
||||
</view>
|
||||
<span class="line-row" style="margin: 30rpx 0;"></span>
|
||||
|
||||
|
@ -1,9 +1,503 @@
|
||||
<template>
|
||||
<s-layout title="我的发布"></s-layout>
|
||||
<s-layout title="我的发布">
|
||||
<view class="container">
|
||||
<!-- tabs页签 -->
|
||||
<view class="tabs-box">
|
||||
<su-tabs :list="tabMaps" @change="onChange" :scrollable="false" :current="currentTab"></su-tabs>
|
||||
</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">
|
||||
<view class="rrecommList" v-for="(item,index) in rentList" :key="index" @click="toDetail(item)">
|
||||
<!-- 通过的 -->
|
||||
<view class="reListItem" v-if="item.status == 1">
|
||||
<!-- 左侧图片 -->
|
||||
<view class="listItem-images">
|
||||
<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 class="unListItem" v-if="item.status == 2">
|
||||
<!-- 左侧图片 -->
|
||||
<view class="listItem-images">
|
||||
<image v-if="item.status == 2"
|
||||
style="width: 151rpx;height: 210rpx;z-index: 100;position: relative;top: 78rpx;right: 15rpx;"
|
||||
src="https://jiangxiaoxian.0rui.cn/releaseFail.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 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>
|
||||
|
||||
</view>
|
||||
</scroll-view>
|
||||
|
||||
</view>
|
||||
</s-layout>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
<script setup>
|
||||
import sheep from '@/sheep';
|
||||
import {
|
||||
onLoad,
|
||||
onShow,
|
||||
onReachBottom
|
||||
} from '@dcloudio/uni-app';
|
||||
import {
|
||||
ref,
|
||||
reactive
|
||||
} from 'vue';
|
||||
import _ from 'lodash';
|
||||
|
||||
const listQuery = ref({
|
||||
page: 1,
|
||||
limit: 10,
|
||||
list_rows: 10,
|
||||
status: '',
|
||||
})
|
||||
const tabMaps = [{
|
||||
name: '全部',
|
||||
value: '3',
|
||||
},
|
||||
{
|
||||
name: '待审核',
|
||||
value: '0',
|
||||
},
|
||||
{
|
||||
name: '未通过',
|
||||
value: '2',
|
||||
},
|
||||
{
|
||||
name: '已发布',
|
||||
value: '1',
|
||||
},
|
||||
];
|
||||
const currentTab = ref(0)
|
||||
const rentList = ref([])
|
||||
const rentCount = ref(0)
|
||||
//切换tabs
|
||||
function onChange(e) {
|
||||
console.log('onChange', e);
|
||||
currentTab.value = e.index
|
||||
console.log('切换tabs', currentTab.value);
|
||||
if (currentTab.value == 0) {
|
||||
listQuery.value.status = ''
|
||||
} else {
|
||||
listQuery.value.status = tabMaps[currentTab.value].value
|
||||
}
|
||||
rentList.value = []
|
||||
}
|
||||
|
||||
|
||||
|
||||
//招租列表
|
||||
async function getList() {
|
||||
const res = await sheep.$api.rent.rentlist({
|
||||
page: listQuery.value.page,
|
||||
limit: listQuery.value.limit,
|
||||
order: 'normal',
|
||||
status: listQuery.value.status,
|
||||
});
|
||||
console.log('getList', res);
|
||||
|
||||
if (res.data && res.data.list) {
|
||||
// rentList.value = res.data.list;
|
||||
rentList.value = [...rentList.value, ...res.data.list];
|
||||
rentCount.value = res.data.count;
|
||||
rentList.value = rentList.value.map(item => {
|
||||
const newItem = {
|
||||
...item
|
||||
};
|
||||
if (newItem.release_time_text) {
|
||||
newItem.release_time_text = newItem.release_time_text.substring(0, 10);
|
||||
}
|
||||
|
||||
return newItem;
|
||||
});
|
||||
} else {
|
||||
rentList.value = [];
|
||||
}
|
||||
console.log('getList', rentList.value, rentCount.value);
|
||||
}
|
||||
//加载更多
|
||||
function onScrolltolower() {
|
||||
if (rentList.value.length < rentCount.value) {
|
||||
listQuery.value.page += 1;
|
||||
getList();
|
||||
}
|
||||
}
|
||||
//下拉刷新
|
||||
function onS() {
|
||||
homrS.value = true
|
||||
listQuery.value.keywords = ''
|
||||
uni.showLoading({
|
||||
title: '加载中...'
|
||||
});
|
||||
resetLists();
|
||||
|
||||
setTimeout(() => {
|
||||
homrS.value = false;
|
||||
uni.hideLoading();
|
||||
uni.stopPullDownRefresh();
|
||||
}, 2000)
|
||||
}
|
||||
// 重置列表
|
||||
function resetLists() {
|
||||
listQuery.value.page = 1;
|
||||
rentList.value = [];
|
||||
getList();
|
||||
}
|
||||
|
||||
function toDetail(e) {
|
||||
console.log('跳转详情', e);
|
||||
uni.navigateTo({
|
||||
url: '/pages/canteenRent/rentDetail?id=' + e.id
|
||||
})
|
||||
}
|
||||
|
||||
getList()
|
||||
</script>
|
||||
|
||||
<style>
|
||||
<style lang="scss" scoped>
|
||||
.title {
|
||||
color: #3d3d3d;
|
||||
font-size: 34rpx;
|
||||
font-weight: 800;
|
||||
line-height: 34rpx;
|
||||
}
|
||||
|
||||
.intro {
|
||||
font-size: 24rpx;
|
||||
font-weight: 400;
|
||||
line-height: 24rpx;
|
||||
}
|
||||
|
||||
.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 {
|
||||
|
||||
.recommend-box {
|
||||
// margin-top: 30rpx;
|
||||
padding: 0rpx 30rpx;
|
||||
|
||||
.rrecommList {
|
||||
margin-top: 30rpx;
|
||||
// padding: 30rpx;
|
||||
|
||||
.reListItem {
|
||||
background-color: #ffffff;
|
||||
width: 640rpx;
|
||||
height: 190rpx;
|
||||
padding: 30rpx;
|
||||
display: flex;
|
||||
justify-content: flex-start;
|
||||
align-items: center;
|
||||
border-radius: 18rpx;
|
||||
margin-bottom: 30rpx;
|
||||
|
||||
.listItem-images {
|
||||
display: grid;
|
||||
justify-content: flex-start;
|
||||
|
||||
.iamges-mainImg {
|
||||
width: 190rpx;
|
||||
height: 190rpx;
|
||||
position: relative;
|
||||
right: 0rpx;
|
||||
bottom: 0rpx;
|
||||
z-index: 1;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
.listItem-contents {
|
||||
margin-left: 20rpx;
|
||||
|
||||
.score-box {
|
||||
display: flex;
|
||||
|
||||
.cate {
|
||||
display: flex;
|
||||
justify-content: flex-start;
|
||||
align-items: center;
|
||||
|
||||
.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);
|
||||
|
||||
// opacity: 0.2;
|
||||
color: #F76100;
|
||||
//flex-shrink: 0
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
.cons-third {
|
||||
margin-top: 20rpx;
|
||||
display: flex;
|
||||
justify-content: space-around;
|
||||
align-items: center;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.unListItem {
|
||||
background-color: #ffffff;
|
||||
width: 640rpx;
|
||||
height: 190rpx;
|
||||
padding: 30rpx;
|
||||
display: flex;
|
||||
justify-content: flex-start;
|
||||
align-items: center;
|
||||
border-radius: 18rpx;
|
||||
margin-bottom: 30rpx;
|
||||
|
||||
.listItem-images {
|
||||
display: grid;
|
||||
justify-content: flex-start;
|
||||
|
||||
.iamges-mainImg {
|
||||
width: 190rpx;
|
||||
height: 190rpx;
|
||||
position: relative;
|
||||
right: 0rpx;
|
||||
bottom: 108rpx;
|
||||
z-index: 1;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
.listItem-contents {
|
||||
margin-left: 20rpx;
|
||||
|
||||
.score-box {
|
||||
display: flex;
|
||||
|
||||
.cate {
|
||||
display: flex;
|
||||
justify-content: flex-start;
|
||||
align-items: center;
|
||||
|
||||
.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);
|
||||
|
||||
// opacity: 0.2;
|
||||
color: #F76100;
|
||||
//flex-shrink: 0
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
.cons-third {
|
||||
margin-top: 20rpx;
|
||||
display: flex;
|
||||
justify-content: space-around;
|
||||
align-items: center;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.pandListItem {
|
||||
background-color: #ffffff;
|
||||
width: 640rpx;
|
||||
height: 190rpx;
|
||||
padding: 30rpx;
|
||||
display: flex;
|
||||
justify-content: flex-start;
|
||||
align-items: center;
|
||||
border-radius: 18rpx;
|
||||
margin-bottom: 30rpx;
|
||||
|
||||
.listItem-images {
|
||||
display: grid;
|
||||
justify-content: flex-start;
|
||||
|
||||
.iamges-mainImg {
|
||||
width: 190rpx;
|
||||
height: 190rpx;
|
||||
position: relative;
|
||||
right: 0rpx;
|
||||
bottom: 108rpx;
|
||||
z-index: 1;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
.listItem-contents {
|
||||
margin-left: 20rpx;
|
||||
|
||||
.score-box {
|
||||
display: flex;
|
||||
|
||||
.cate {
|
||||
display: flex;
|
||||
justify-content: flex-start;
|
||||
align-items: center;
|
||||
|
||||
.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);
|
||||
|
||||
// opacity: 0.2;
|
||||
color: #F76100;
|
||||
//flex-shrink: 0
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
.cons-third {
|
||||
margin-top: 20rpx;
|
||||
display: flex;
|
||||
justify-content: space-around;
|
||||
align-items: center;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
</style>
|
Loading…
x
Reference in New Issue
Block a user