收藏页面基本完成,但是需要在平台页面完成后,测试一下加载多条是否正常
积分商城的静态页面完成 足迹页面完成,但是加载多条逻辑未完善
This commit is contained in:
parent
e597673831
commit
56d82c1b8b
@ -367,7 +367,7 @@
|
||||
"meta": {
|
||||
"auth": true,
|
||||
"sync": true,
|
||||
"title": "商品收藏",
|
||||
"title": "我的收藏",
|
||||
"group": "用户中心"
|
||||
}
|
||||
},
|
||||
@ -379,7 +379,7 @@
|
||||
"meta": {
|
||||
"auth": true,
|
||||
"sync": true,
|
||||
"title": "浏览记录",
|
||||
"title": "我的足迹",
|
||||
"group": "用户中心"
|
||||
}
|
||||
},
|
||||
@ -459,7 +459,7 @@
|
||||
"meta": {
|
||||
"auth": true,
|
||||
"sync": true,
|
||||
"title": "用户积分",
|
||||
"title": "我的积分",
|
||||
"group": "用户中心"
|
||||
}
|
||||
}
|
||||
|
@ -1,77 +1,219 @@
|
||||
<!-- 页面 -->
|
||||
<template>
|
||||
<s-layout title="积分商城">
|
||||
<view class="ss-p-20">
|
||||
<view v-for="item in state.pagination.data" :key="item.id" class="ss-m-b-20">
|
||||
<s-score-card
|
||||
size="sl"
|
||||
:data="item"
|
||||
priceColor="#FF3000"
|
||||
@tap="sheep.$router.go('/pages/goods/score', { id: item.id })"
|
||||
></s-score-card>
|
||||
</view>
|
||||
</view>
|
||||
<s-empty
|
||||
v-if="state.pagination.total === 0"
|
||||
icon="/static/goods-empty.png"
|
||||
text="暂无积分商品"
|
||||
></s-empty>
|
||||
<uni-load-more
|
||||
v-if="state.pagination.total > 0"
|
||||
:status="state.loadStatus"
|
||||
:content-text="{
|
||||
contentdown: '上拉加载更多',
|
||||
}"
|
||||
@tap="loadmore"
|
||||
/>
|
||||
</s-layout>
|
||||
<s-layout title="积分商城">
|
||||
<view class="container">
|
||||
<!-- 顶部信息 -->
|
||||
<view class="conTop">
|
||||
<view class="textLine">
|
||||
<view class="fs30 bold c3" style="line-height: 26rpx;">当前积分</view>
|
||||
<view class="fs60 bold c3" style="margin-top: 30rpx;line-height: 60rpx;">6963</view>
|
||||
<view class="scoreDetail" @click="toPage('/pages/user/wallet/score')">
|
||||
<view class="fs28 c9">积分明细</view>
|
||||
<image style="width: 28rpx;height: 28rpx;margin-left: 10rpx;"
|
||||
src="https://jiangxiaoxian.0rui.cn/rightMore.png"></image>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<!-- tabs页签 -->
|
||||
<view class="tabs-box">
|
||||
<su-tabs
|
||||
:list="tabMaps"
|
||||
@change="onChange"
|
||||
:scrollable="false"
|
||||
:current="currentTab"
|
||||
></su-tabs>
|
||||
</view>
|
||||
|
||||
<!-- 可兑换券列表 -->
|
||||
<view class="exChangeBox">
|
||||
<view class="couponsList">
|
||||
<view class="list-item">
|
||||
<image style="width: 330rpx;height: 200rpx;" src="https://jiangxiaoxian.0rui.cn/fullCoupon.png"></image>
|
||||
<view class="item-text">
|
||||
<view class="fs30 c3" style="margin: 0 auto;">优惠券满100减50</view>
|
||||
<view class="exchangeBtn">
|
||||
100积分兑换
|
||||
</view>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
<view class="list-item">
|
||||
<image style="width: 330rpx;height: 200rpx;" src="https://jiangxiaoxian.0rui.cn/fullCoupon.png"></image>
|
||||
<view class="item-text">
|
||||
<view class="fs30 c3" style="margin: 0 auto;">优惠券满100减50</view>
|
||||
<view class="exchangeBtn">
|
||||
100积分兑换
|
||||
</view>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
<view class="list-item">
|
||||
<image style="width: 330rpx;height: 200rpx;" src="https://jiangxiaoxian.0rui.cn/fullCoupon.png"></image>
|
||||
<view class="item-text">
|
||||
<view class="fs30 c3" style="margin: 0 auto;">优惠券满100减50</view>
|
||||
<view class="exchangeBtn">
|
||||
100积分兑换
|
||||
</view>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
|
||||
<!-- 无数据展示
|
||||
<view class="flex flex-column flex-start align-items"
|
||||
v-if="feetHisList.length == 0" style="margin-top: 300rpx;">
|
||||
<image src="https://jiangxiaoxian.0rui.cn/noneList.png" mode="" style="width: 180rpx;height: 180rpx;">
|
||||
</image>
|
||||
<view style="margin-top: 30rpx;font-size: 28rpx;color: #323232;">暂无数据信息</view>
|
||||
</view>-->
|
||||
|
||||
|
||||
</view>
|
||||
|
||||
</s-layout>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import sheep from '@/sheep';
|
||||
import { onLoad, onReachBottom } from '@dcloudio/uni-app';
|
||||
import { reactive } from 'vue';
|
||||
import _ from 'lodash';
|
||||
import sheep from '@/sheep';
|
||||
import {
|
||||
onLoad,
|
||||
onShow,
|
||||
onReachBottom
|
||||
} from '@dcloudio/uni-app';
|
||||
import {
|
||||
ref,
|
||||
reactive
|
||||
} from 'vue';
|
||||
import _ from 'lodash';
|
||||
|
||||
const state = reactive({
|
||||
pagination: {
|
||||
data: [],
|
||||
current_page: 1,
|
||||
total: 1,
|
||||
last_page: 1,
|
||||
},
|
||||
loadStatus: '',
|
||||
});
|
||||
async function getData(page = 1, list_rows = 5) {
|
||||
state.loadStatus = 'loading';
|
||||
let res = await sheep.$api.app.scoreShop.list({
|
||||
list_rows,
|
||||
page,
|
||||
});
|
||||
if (res.code === 1) {
|
||||
let couponlist = _.concat(state.pagination.data, res.data.data);
|
||||
state.pagination = {
|
||||
...res.data,
|
||||
data: couponlist,
|
||||
};
|
||||
if (state.pagination.current_page < state.pagination.last_page) {
|
||||
state.loadStatus = 'more';
|
||||
} else {
|
||||
state.loadStatus = 'noMore';
|
||||
}
|
||||
}
|
||||
}
|
||||
// 加载更多
|
||||
function loadmore() {
|
||||
if (state.loadStatus !== 'noMore') {
|
||||
getData(state.pagination.current_page + 1);
|
||||
}
|
||||
}
|
||||
const tabMaps = [
|
||||
{
|
||||
name: '优惠券',
|
||||
value: '0',
|
||||
},
|
||||
{
|
||||
name: '次数券',
|
||||
value: '1',
|
||||
},
|
||||
];
|
||||
const currentTab = ref(0)
|
||||
//切换tabs
|
||||
function onChange(e) {
|
||||
console.log('onChange',e);
|
||||
currentTab.value = e.index
|
||||
console.log('切换tabs',currentTab.value);
|
||||
// getLogList();
|
||||
}
|
||||
|
||||
// 上拉加载更多
|
||||
onReachBottom(() => {
|
||||
loadmore();
|
||||
});
|
||||
onLoad(() => {
|
||||
getData();
|
||||
});
|
||||
//页面跳转
|
||||
const toPage = (e) => {
|
||||
uni.navigateTo({
|
||||
url: e
|
||||
})
|
||||
|
||||
}
|
||||
|
||||
// 上拉加载更多
|
||||
onReachBottom(() => {
|
||||
// loadmore();
|
||||
});
|
||||
onLoad(() => {
|
||||
// getData();
|
||||
});
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.fs30 {
|
||||
font-size: 30rpx;
|
||||
}
|
||||
|
||||
.fs60 {
|
||||
font-size: 60rpx;
|
||||
}
|
||||
|
||||
.fs28 {
|
||||
font-size: 28rpx;
|
||||
}
|
||||
|
||||
.bold {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.c3 {
|
||||
color: #333333;
|
||||
}
|
||||
|
||||
.c9 {
|
||||
color: #999999;
|
||||
}
|
||||
|
||||
.container {
|
||||
background-color: #ffffff;
|
||||
|
||||
.conTop {
|
||||
width: 100%;
|
||||
height: 300rpx;
|
||||
background-image: url('https://jiangxiaoxian.0rui.cn/scoreTopBack.png');
|
||||
background-size: 100%;
|
||||
|
||||
.textLine {
|
||||
position: relative;
|
||||
top: 68rpx;
|
||||
left: 60rpx;
|
||||
display: block;
|
||||
|
||||
.scoreDetail {
|
||||
margin-top: 20rpx;
|
||||
display: flex;
|
||||
justify-content: flex-start;
|
||||
align-items: center;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.exChangeBox {
|
||||
background-color: #ffffff;
|
||||
width: 690rpx;
|
||||
|
||||
.couponsList {
|
||||
width: 100%;
|
||||
padding: 0 30rpx;
|
||||
display: grid;
|
||||
grid-template-columns: repeat(2, 1fr);;
|
||||
grid-gap: 20px;
|
||||
// display: flex;
|
||||
// justify-content: center;
|
||||
// align-items: center;
|
||||
|
||||
|
||||
.list-item {
|
||||
width: 330rpx;
|
||||
border-radius: 18rpx;
|
||||
box-shadow: 4rpx 4rpx 4rpx 4rpx rgba(153, 153, 153, 0.1);
|
||||
|
||||
.item-text {
|
||||
padding: 30rpx;
|
||||
|
||||
.exchangeBtn {
|
||||
background-color: #fcc74e;
|
||||
height: 70rpx;
|
||||
width: 270rpx;
|
||||
border-radius: 223rpx;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
display: flex;
|
||||
font-size: 28rpx;
|
||||
line-height: 30rpx;
|
||||
font-weight: 400;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
</style>
|
@ -1,240 +1,421 @@
|
||||
<template>
|
||||
<s-layout title="商品收藏">
|
||||
<view class="cart-box ss-flex ss-flex-col ss-row-between">
|
||||
<!-- 头部 -->
|
||||
<view class="cart-header ss-flex ss-col-center ss-row-between ss-p-x-30">
|
||||
<view class="header-left ss-flex ss-col-center ss-font-26">
|
||||
共
|
||||
<text class="goods-number ui-TC-Main ss-flex">{{ state.pagination.total }}</text>
|
||||
件商品
|
||||
</view>
|
||||
<view class="header-right">
|
||||
<button
|
||||
v-if="state.editMode && state.pagination.total"
|
||||
class="ss-reset-button"
|
||||
@tap="state.editMode = false"
|
||||
>
|
||||
取消
|
||||
</button>
|
||||
<button
|
||||
v-if="!state.editMode && state.pagination.total"
|
||||
class="ss-reset-button ui-TC-Main"
|
||||
@tap="state.editMode = true"
|
||||
>编辑</button
|
||||
>
|
||||
</view>
|
||||
</view>
|
||||
<!-- 内容 -->
|
||||
<view class="cart-content">
|
||||
<view
|
||||
class="goods-box ss-r-10 ss-m-b-14"
|
||||
v-for="item in state.pagination.data"
|
||||
:key="item.id"
|
||||
>
|
||||
<view class="ss-flex ss-col-center">
|
||||
<label
|
||||
class="check-box ss-flex ss-col-center ss-p-l-10"
|
||||
v-if="state.editMode"
|
||||
@tap="onSelect(item.goods_id)"
|
||||
>
|
||||
<radio
|
||||
:checked="state.selectedCollectList.includes(item.goods_id)"
|
||||
color="var(--ui-BG-Main)"
|
||||
style="transform: scale(0.8)"
|
||||
@tap.stop="onSelect(item.goods_id)"
|
||||
/>
|
||||
</label>
|
||||
<s-goods-item
|
||||
:title="item.goods.title"
|
||||
:img="item.goods.image"
|
||||
:price="item.goods.price[0]"
|
||||
:skuText="item.goods.subtitle"
|
||||
priceColor="#FF3000"
|
||||
:titleWidth="400"
|
||||
@tap="
|
||||
sheep.$router.go('/pages/goods/index', {
|
||||
id: item.goods_id,
|
||||
})
|
||||
"
|
||||
>
|
||||
</s-goods-item>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<!-- 底部 -->
|
||||
<su-fixed bottom :val="0" placeholder v-show="state.editMode">
|
||||
<view class="cart-footer ss-flex ss-col-center ss-row-between ss-p-x-30 border-bottom">
|
||||
<view class="footer-left ss-flex ss-col-center">
|
||||
<label class="check-box ss-flex ss-col-center ss-p-r-30" @tap="onSelectAll">
|
||||
<radio
|
||||
:checked="state.selectAll"
|
||||
color="var(--ui-BG-Main)"
|
||||
style="transform: scale(0.7)"
|
||||
@tap.stop="onSelectAll"
|
||||
/>
|
||||
<view> 全选 </view>
|
||||
</label>
|
||||
</view>
|
||||
<view class="footer-right">
|
||||
<button
|
||||
class="ss-reset-button ui-BG-Main-Gradient pay-btn ss-font-28 ui-Shadow-Main"
|
||||
@tap="onCancel"
|
||||
>取消收藏</button
|
||||
>
|
||||
</view>
|
||||
</view>
|
||||
</su-fixed>
|
||||
</view>
|
||||
<uni-load-more
|
||||
v-if="state.pagination.total > 0"
|
||||
:status="state.loadStatus"
|
||||
:content-text="{
|
||||
contentdown: '上拉加载更多',
|
||||
}"
|
||||
@tap="loadmore"
|
||||
/>
|
||||
<s-empty v-if="state.pagination.total === 0" text="暂无收藏" icon="/static/collect-empty.png" />
|
||||
</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" v-if="currentTab == 0">
|
||||
<view class="rrecommList" v-for="(item,index) in collectRentList" :key="index">
|
||||
<view class="reListItem">
|
||||
<!-- 左侧图片 -->
|
||||
<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>
|
||||
</view>
|
||||
<!-- 右侧收藏 -->
|
||||
<view>
|
||||
<image style="width: 44rpx;height: 44rpx;"
|
||||
src="https://jiangxiaoxian.0rui.cn/collected.png"></image>
|
||||
<!-- <image style="width: 44rpx;height: 44rpx;" src="https://jiangxiaoxian.0rui.cn/unCollect.png"></image> -->
|
||||
<view class="fs24 Regular c3">取消收藏</view>
|
||||
<!-- <view class="fs24 Regular c9">收藏</view> -->
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
|
||||
<!-- 平台课程 -->
|
||||
<view class="exChangeBox" v-if="currentTab == 1">
|
||||
<view class="couponsList" v-for="(item,index) in collectSchoolList" :key="index">
|
||||
<view class="list-item">
|
||||
<image style="width: 330rpx;height: 200rpx;" :src="item.image">
|
||||
</image>
|
||||
<view class="item-text">
|
||||
<view class="fs30 c3" style="margin: 0 auto;">{{item.title}}</view>
|
||||
<view class="exchangeBtn">
|
||||
取消收藏
|
||||
</view>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
<!-- <view class="list-item">
|
||||
<image style="width: 330rpx;height: 200rpx;" src="https://jiangxiaoxian.0rui.cn/fullCoupon.png">
|
||||
</image>
|
||||
<view class="item-text">
|
||||
<view class="fs30 c3" style="margin: 0 auto;">优惠券满100减50</view>
|
||||
<view class="exchangeBtn">
|
||||
取消收藏
|
||||
</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>
|
||||
|
||||
</s-layout>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import sheep from '@/sheep';
|
||||
import { reactive } from 'vue';
|
||||
import { onLoad, onReachBottom } from '@dcloudio/uni-app';
|
||||
import _ from 'lodash';
|
||||
import sheep from '@/sheep';
|
||||
import {
|
||||
reactive,
|
||||
ref
|
||||
} from 'vue';
|
||||
import {
|
||||
onLoad,
|
||||
onReachBottom
|
||||
} from '@dcloudio/uni-app';
|
||||
import _ from 'lodash';
|
||||
|
||||
const sys_navBar = sheep.$platform.navbar;
|
||||
const pagination = {
|
||||
data: [],
|
||||
current_page: 1,
|
||||
total: 1,
|
||||
last_page: 1,
|
||||
};
|
||||
const state = reactive({
|
||||
pagination: {
|
||||
data: [],
|
||||
current_page: 1,
|
||||
total: 1,
|
||||
last_page: 1,
|
||||
},
|
||||
loadStatus: '',
|
||||
editMode: false,
|
||||
selectedCollectList: [],
|
||||
selectAll: false,
|
||||
});
|
||||
const sys_navBar = sheep.$platform.navbar;
|
||||
|
||||
async function getData(page = 1, list_rows = 10) {
|
||||
state.loadStatus = 'loading';
|
||||
let res = await sheep.$api.user.goodsLog.list({
|
||||
type: 'favorite',
|
||||
list_rows,
|
||||
page,
|
||||
});
|
||||
if (res.code === 1) {
|
||||
let orderList = _.concat(state.pagination.data, res.data.data);
|
||||
state.pagination = {
|
||||
...res.data,
|
||||
data: orderList,
|
||||
};
|
||||
if (state.pagination.current_page < state.pagination.last_page) {
|
||||
state.loadStatus = 'more';
|
||||
} else {
|
||||
state.loadStatus = 'noMore';
|
||||
}
|
||||
}
|
||||
}
|
||||
// 格式化价格
|
||||
function formatPrice(e) {
|
||||
return e.length === 1 ? e[0] : e.join('~');
|
||||
}
|
||||
const listQuery = ref({
|
||||
keywords: null,
|
||||
add_type: null,
|
||||
type: null,
|
||||
my: null,
|
||||
page: 1,
|
||||
rentPage: 1,
|
||||
schoolPage: 1,
|
||||
limit: 10,
|
||||
cate_ids: '',
|
||||
province: null,
|
||||
city: null,
|
||||
district: null,
|
||||
status: null,
|
||||
recommend: null,
|
||||
collect: null,
|
||||
order: null,
|
||||
nearby: null,
|
||||
latitude: null,
|
||||
longitude: '',
|
||||
area: null,
|
||||
})
|
||||
|
||||
// 单选选中
|
||||
const onSelect = (id) => {
|
||||
if (!state.selectedCollectList.includes(id)) {
|
||||
state.selectedCollectList.push(id);
|
||||
} else {
|
||||
state.selectedCollectList.splice(state.selectedCollectList.indexOf(id), 1);
|
||||
}
|
||||
state.selectAll = state.selectedCollectList.length === state.pagination.data.length;
|
||||
};
|
||||
// 全选
|
||||
const onSelectAll = () => {
|
||||
state.selectAll = !state.selectAll;
|
||||
if (!state.selectAll) {
|
||||
state.selectedCollectList = [];
|
||||
} else {
|
||||
state.pagination.data.forEach((item) => {
|
||||
if (state.selectedCollectList.includes(item.goods_id)) {
|
||||
state.selectedCollectList.splice(state.selectedCollectList.indexOf(item.goods_id), 1);
|
||||
}
|
||||
state.selectedCollectList.push(item.goods_id);
|
||||
});
|
||||
}
|
||||
};
|
||||
async function onCancel() {
|
||||
if (state.selectedCollectList) {
|
||||
state.selectedCollectList = state.selectedCollectList.toString();
|
||||
const { code } = await sheep.$api.user.favorite.cancel(state.selectedCollectList);
|
||||
if (code === 1) {
|
||||
state.editMode = false;
|
||||
state.selectedCollectList = [];
|
||||
state.selectAll = false;
|
||||
state.pagination = pagination;
|
||||
getData();
|
||||
}
|
||||
}
|
||||
}
|
||||
// 加载更多
|
||||
function loadmore() {
|
||||
if (state.loadStatus !== 'noMore') {
|
||||
getData(state.pagination.current_page + 1);
|
||||
}
|
||||
}
|
||||
onReachBottom(() => {
|
||||
loadmore();
|
||||
});
|
||||
onLoad(() => {
|
||||
getData();
|
||||
});
|
||||
// const
|
||||
const tabMaps = [{
|
||||
name: '食堂招租',
|
||||
value: '0',
|
||||
},
|
||||
{
|
||||
name: '平台学院',
|
||||
value: '1',
|
||||
},
|
||||
];
|
||||
const currentTab = ref(0)
|
||||
const collectRentList = ref([])
|
||||
const rentCount = ref(0)
|
||||
const collectSchoolList = ref([])
|
||||
const schoolCount = ref(0)
|
||||
const homrS = ref(false)
|
||||
//切换tabs
|
||||
function onChange(e) {
|
||||
console.log('onChange', e);
|
||||
currentTab.value = e.index
|
||||
console.log('切换tabs', currentTab.value);
|
||||
if (currentTab.value == 0) {
|
||||
getRentList();
|
||||
} else {
|
||||
getSchoolList();
|
||||
}
|
||||
}
|
||||
|
||||
//招租收藏列表
|
||||
async function getRentList() {
|
||||
const res = await sheep.$api.rent.rentlist({
|
||||
keywords: listQuery.value.keywords,
|
||||
page: listQuery.value.rentPage,
|
||||
limit: listQuery.value.limit,
|
||||
order: 'normal',
|
||||
status: 1,
|
||||
recommend: 1,
|
||||
collect: 1,
|
||||
|
||||
});
|
||||
console.log('招租收藏列表', res);
|
||||
|
||||
if (res.code == 1) {
|
||||
collectRentList.value =[...collectRentList.value,...res.data.list];
|
||||
rentCount.value = res.data.count
|
||||
} else {
|
||||
// Handle case where data is not in expected format
|
||||
collectRentList.value = [];
|
||||
uni.showToast({
|
||||
title: res.msg,
|
||||
icon: 'none'
|
||||
})
|
||||
}
|
||||
console.log('getList', collectRentList.value);
|
||||
}
|
||||
//平台课程收藏列表
|
||||
async function getSchoolList() {
|
||||
const res = await sheep.$api.school.schoolList({
|
||||
keywords: listQuery.value.keywords,
|
||||
page: listQuery.value.schoolPage,
|
||||
limit: listQuery.value.limit,
|
||||
order: 'normal',
|
||||
recommend: 1,
|
||||
collect: 1,
|
||||
|
||||
});
|
||||
console.log('平台课程收藏列表', res);
|
||||
|
||||
if (res.code == 1) {
|
||||
collectSchoolList.value =[...collectSchoolList.value,...res.data.list];
|
||||
schoolCount.value = res.data.count
|
||||
} else {
|
||||
// Handle case where data is not in expected format
|
||||
collectSchoolList.value = [];
|
||||
uni.showToast({
|
||||
title: res.msg,
|
||||
icon: 'none'
|
||||
})
|
||||
}
|
||||
console.log('平台课程收藏列表-222', collectSchoolList.value);
|
||||
}
|
||||
|
||||
//加载更多
|
||||
function onScrolltolower() {
|
||||
if (currentTab.value == 0) {
|
||||
if (collectRentList.value.length < rentCount.value) {
|
||||
listQuery.value.rentPage+=1;
|
||||
getRentList();
|
||||
}
|
||||
} else {
|
||||
if (collectSchoolList.value.length < schoolCount.value) {
|
||||
listQuery.value.schoolPage+=1;
|
||||
getSchoolList();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
function onS() {
|
||||
homrS.value = true
|
||||
}
|
||||
|
||||
onReachBottom(() => {});
|
||||
onLoad(() => {
|
||||
getRentList();
|
||||
});
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.cart-box {
|
||||
.cart-header {
|
||||
height: 70rpx;
|
||||
background-color: #f6f6f6;
|
||||
width: 100%;
|
||||
position: fixed;
|
||||
left: 0;
|
||||
top: v-bind('sys_navBar') rpx;
|
||||
z-index: 1000;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
.flex {
|
||||
display: flex;
|
||||
}
|
||||
|
||||
.cart-footer {
|
||||
height: 100rpx;
|
||||
background-color: #fff;
|
||||
.flex-start {
|
||||
align-items: flex-start;
|
||||
}
|
||||
|
||||
.pay-btn {
|
||||
height: 80rpx;
|
||||
line-height: 80rpx;
|
||||
border-radius: 40rpx;
|
||||
padding: 0 40rpx;
|
||||
min-width: 200rpx;
|
||||
}
|
||||
}
|
||||
.justify-center {
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.cart-content {
|
||||
width: 100%;
|
||||
margin-top: 70rpx;
|
||||
padding: 0 20rpx;
|
||||
box-sizing: border-box;
|
||||
.goods-box {
|
||||
background-color: #fff;
|
||||
&:last-child {
|
||||
margin-bottom: 40rpx;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
.align-items {
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.flex-column {
|
||||
flex-flow: column;
|
||||
}
|
||||
|
||||
.fs24 {
|
||||
font-size: 24rpx;
|
||||
}
|
||||
|
||||
.Regular {
|
||||
font-weight: 400;
|
||||
}
|
||||
|
||||
.c3 {
|
||||
color: #333333;
|
||||
}
|
||||
|
||||
.c9 {
|
||||
color: #999999;
|
||||
}
|
||||
|
||||
.container {
|
||||
// background-color: #ffffff;
|
||||
|
||||
.recommend-box {
|
||||
margin-top: 30rpx;
|
||||
padding: 20rpx 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;
|
||||
|
||||
.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 {
|
||||
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;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
.exChangeBox {
|
||||
background-color: #ffffff;
|
||||
width: 690rpx;
|
||||
|
||||
.couponsList {
|
||||
width: 100%;
|
||||
padding: 0 30rpx;
|
||||
display: grid;
|
||||
grid-template-columns: repeat(2, 1fr);
|
||||
;
|
||||
grid-gap: 20px;
|
||||
// display: flex;
|
||||
// justify-content: center;
|
||||
// align-items: center;
|
||||
|
||||
|
||||
.list-item {
|
||||
width: 330rpx;
|
||||
border-radius: 18rpx;
|
||||
box-shadow: 4rpx 4rpx 4rpx 4rpx rgba(153, 153, 153, 0.1);
|
||||
|
||||
.item-text {
|
||||
padding: 30rpx;
|
||||
|
||||
.exchangeBtn {
|
||||
margin-top: 30rpx;
|
||||
background-color: #ffffff;
|
||||
border: 2rpx solid #999999;
|
||||
height: 70rpx;
|
||||
width: 270rpx;
|
||||
border-radius: 223rpx;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
display: flex;
|
||||
color: #999999;
|
||||
font-size: 28rpx;
|
||||
line-height: 30rpx;
|
||||
font-weight: 400;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
</style>
|
@ -1,8 +1,8 @@
|
||||
<template>
|
||||
<s-layout title="我的足迹" :bgStyle="{ color: '#f2f2f2' }">
|
||||
<view class="cart-box ss-flex ss-flex-col ss-row-between">
|
||||
<!-- 头部 -->
|
||||
<!-- <view class="cart-header ss-flex ss-col-center ss-row-between ss-p-x-30">
|
||||
<s-layout title="我的足迹" :bgStyle="{ color: '#f2f2f2' }">
|
||||
<view class="cart-box ss-flex ss-flex-col ss-row-between">
|
||||
<!-- 头部 -->
|
||||
<!-- <view class="cart-header ss-flex ss-col-center ss-row-between ss-p-x-30">
|
||||
<view class="header-left ss-flex ss-col-center ss-font-26">
|
||||
共
|
||||
<text class="goods-number ui-TC-Main ss-flex">
|
||||
@ -27,200 +27,363 @@
|
||||
</button>
|
||||
</view>
|
||||
</view>-->
|
||||
<!-- 内容 -->
|
||||
<view class="cart-content">
|
||||
<view
|
||||
class="goods-box ss-r-10 ss-m-b-14"
|
||||
v-for="item in state.pagination.data"
|
||||
:key="item.id"
|
||||
>
|
||||
<view class="ss-flex ss-col-center">
|
||||
<label
|
||||
class="check-box ss-flex ss-col-center ss-p-l-10"
|
||||
v-if="state.editMode"
|
||||
@tap="onSelect(item.goods_id)"
|
||||
>
|
||||
<radio
|
||||
:checked="state.selectedCollectList.includes(item.goods_id)"
|
||||
color="var(--ui-BG-Main)"
|
||||
style="transform: scale(0.8)"
|
||||
@tap.stop="onSelect(item.goods_id)"
|
||||
/>
|
||||
</label>
|
||||
<s-goods-item
|
||||
:title="item.goods.title"
|
||||
:img="item.goods.image"
|
||||
:price="item.goods.price[0]"
|
||||
:skuText="item.goods.subtitle"
|
||||
priceColor="#FF3000"
|
||||
:titleWidth="400"
|
||||
@tap="
|
||||
sheep.$router.go('/pages/goods/index', {
|
||||
id: item.goods_id,
|
||||
})
|
||||
"
|
||||
>
|
||||
</s-goods-item>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<!-- 内容 -->
|
||||
<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>
|
||||
<view class="rrecommList" v-for="(e,i) in item.log" :key="i">
|
||||
<view class="reListItem">
|
||||
<!-- 左侧图片 -->
|
||||
<view class="listItem-images">
|
||||
<image v-if="e.information.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="e.information.images[0]"></image>
|
||||
</view>
|
||||
<!-- 右侧内容 -->
|
||||
<view class="listItem-contents">
|
||||
<view class="title2" style="margin-bottom: 20rpx;">{{e.information.platform_title}}</view>
|
||||
<scroll-view class="score-box">
|
||||
<view class="fs11 flex cate">
|
||||
<view class="cate-e" v-for="(w,q) in e.information.cate" :key="q">
|
||||
<view v-show="w" class="status-tag " style="margin-right: 20rpx;">{{w}}
|
||||
</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;">{{e.information.address_city_text}}
|
||||
</view>
|
||||
</view>
|
||||
<view class="title3">{{e.information.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;">{{e.information.views}}</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
<uni-load-more
|
||||
v-if="state.pagination.total > 0"
|
||||
:status="state.loadStatus"
|
||||
:content-text="{
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="flex flex-column flex-start align-items"
|
||||
v-if="feetHisList.length == 0" style="margin-top: 300rpx;">
|
||||
<image src="https://jiangxiaoxian.0rui.cn/noneList.png" mode="" style="width: 180rpx;height: 180rpx;">
|
||||
</image>
|
||||
<view style="margin-top: 30rpx;font-size: 28rpx;color: #323232;">暂无数据信息</view>
|
||||
</view>
|
||||
</view>
|
||||
<!-- <uni-load-more v-if="state.pagination.total > 0" :status="state.loadStatus" :content-text="{
|
||||
contentdown: '上拉加载更多',
|
||||
}"
|
||||
@tap="loadmore"
|
||||
/>
|
||||
<s-empty
|
||||
v-if="state.pagination.total === 0"
|
||||
text="暂无浏览记录"
|
||||
icon="/static/collect-empty.png"
|
||||
/>
|
||||
</s-layout>
|
||||
}" @tap="loadmore" />
|
||||
<s-empty v-if="state.pagination.total === 0" text="暂无浏览记录" icon="/static/collect-empty.png" /> -->
|
||||
</s-layout>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import sheep from '@/sheep';
|
||||
import { reactive } from 'vue';
|
||||
import { onLoad, onReachBottom } from '@dcloudio/uni-app';
|
||||
import _ from 'lodash';
|
||||
import sheep from '@/sheep';
|
||||
import {
|
||||
ref,
|
||||
reactive
|
||||
} from 'vue';
|
||||
import {
|
||||
onLoad,
|
||||
onReachBottom
|
||||
} from '@dcloudio/uni-app';
|
||||
import _ from 'lodash';
|
||||
import dayjs from 'dayjs';
|
||||
|
||||
const sys_navBar = sheep.$platform.navbar;
|
||||
const pagination = {
|
||||
data: [],
|
||||
current_page: 1,
|
||||
total: 1,
|
||||
last_page: 1,
|
||||
};
|
||||
const state = reactive({
|
||||
pagination: {
|
||||
data: [],
|
||||
current_page: 1,
|
||||
total: 1,
|
||||
last_page: 1,
|
||||
},
|
||||
loadStatus: '',
|
||||
editMode: false,
|
||||
selectedCollectList: [],
|
||||
selectAll: false,
|
||||
});
|
||||
const date = new Date();
|
||||
const year = date.getFullYear();
|
||||
const month = String(date.getMonth() + 1).padStart(2, '0'); // 补零
|
||||
const day = String(date.getDate()).padStart(2, '0'); // 补零
|
||||
|
||||
async function getData(page = 1, list_rows = 10) {
|
||||
state.loadStatus = 'loading';
|
||||
let res = await sheep.$api.user.goodsLog.list({
|
||||
type: 'views',
|
||||
list_rows,
|
||||
page,
|
||||
});
|
||||
if (res.code === 1) {
|
||||
let orderList = _.concat(state.pagination.data, res.data.data);
|
||||
state.pagination = {
|
||||
...res.data,
|
||||
data: orderList,
|
||||
};
|
||||
if (state.pagination.current_page < state.pagination.last_page) {
|
||||
state.loadStatus = 'more';
|
||||
} else {
|
||||
state.loadStatus = 'noMore';
|
||||
}
|
||||
}
|
||||
}
|
||||
// 格式化价格
|
||||
const today = `${year}-${month}-${day}`;
|
||||
// const today = ref('')
|
||||
|
||||
// 加载更多
|
||||
function loadmore() {
|
||||
if (state.loadStatus !== 'noMore') {
|
||||
getData(state.pagination.current_page + 1);
|
||||
}
|
||||
}
|
||||
onReachBottom(() => {
|
||||
loadmore();
|
||||
});
|
||||
onLoad(() => {
|
||||
getData();
|
||||
});
|
||||
const feetHisList = ref([])
|
||||
// 接口传参
|
||||
const listQuery = ref({
|
||||
page: 1,
|
||||
limit: 10,
|
||||
addrLatitude: null,
|
||||
addrLongitude: null,
|
||||
address: null,
|
||||
address1: null,
|
||||
categoryId: null,
|
||||
tags: '',
|
||||
cate_ids: '',
|
||||
area: null,
|
||||
city: null,
|
||||
province: null,
|
||||
district: null,
|
||||
keywords: null,
|
||||
|
||||
// district: '',
|
||||
})
|
||||
|
||||
onLoad(() => {
|
||||
// getData();
|
||||
getFeetList();
|
||||
});
|
||||
|
||||
async function getFeetList() {
|
||||
const res = await sheep.$api.user.goodsLog.list({
|
||||
keywords: listQuery.value.keywords,
|
||||
page: listQuery.value.page,
|
||||
limit: listQuery.value.limit,
|
||||
});
|
||||
console.log('足迹返值', res);
|
||||
if (res.code == 1) {
|
||||
feetHisList.value = res.data.list
|
||||
console.log('足迹列表', feetHisList.value);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
const sys_navBar = sheep.$platform.navbar;
|
||||
const pagination = {
|
||||
data: [],
|
||||
current_page: 1,
|
||||
total: 1,
|
||||
last_page: 1,
|
||||
};
|
||||
const state = reactive({
|
||||
pagination: {
|
||||
data: [],
|
||||
current_page: 1,
|
||||
total: 1,
|
||||
last_page: 1,
|
||||
},
|
||||
loadStatus: '',
|
||||
editMode: false,
|
||||
selectedCollectList: [],
|
||||
selectAll: false,
|
||||
});
|
||||
|
||||
async function getData(page = 1, list_rows = 10) {
|
||||
state.loadStatus = 'loading';
|
||||
let res = await sheep.$api.user.goodsLog.list({
|
||||
type: 'views',
|
||||
list_rows,
|
||||
page,
|
||||
});
|
||||
if (res.code === 1) {
|
||||
let orderList = _.concat(state.pagination.data, res.data.data);
|
||||
state.pagination = {
|
||||
...res.data,
|
||||
data: orderList,
|
||||
};
|
||||
if (state.pagination.current_page < state.pagination.last_page) {
|
||||
state.loadStatus = 'more';
|
||||
} else {
|
||||
state.loadStatus = 'noMore';
|
||||
}
|
||||
}
|
||||
}
|
||||
// 格式化价格
|
||||
|
||||
// 加载更多
|
||||
function loadmore() {
|
||||
if (state.loadStatus !== 'noMore') {
|
||||
getData(state.pagination.current_page + 1);
|
||||
}
|
||||
}
|
||||
onReachBottom(() => {
|
||||
loadmore();
|
||||
});
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.cart-box {
|
||||
.cart-header {
|
||||
height: 70rpx;
|
||||
background-color: #f6f6f6;
|
||||
width: 100%;
|
||||
position: fixed;
|
||||
left: 0;
|
||||
top: v-bind('sys_navBar') rpx;
|
||||
z-index: 1000;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
.title {
|
||||
color: #3d3d3d;
|
||||
font-size: 34rpx;
|
||||
font-weight: 800;
|
||||
line-height: 34rpx;
|
||||
}
|
||||
|
||||
.cart-footer {
|
||||
height: 100rpx;
|
||||
background-color: #fff;
|
||||
.intro {
|
||||
font-size: 24rpx;
|
||||
font-weight: 400;
|
||||
line-height: 24rpx;
|
||||
}
|
||||
|
||||
.pay-btn {
|
||||
height: 80rpx;
|
||||
line-height: 80rpx;
|
||||
border-radius: 40rpx;
|
||||
padding: 0 40rpx;
|
||||
min-width: 200rpx;
|
||||
}
|
||||
}
|
||||
.title2 {
|
||||
color: #3d3d3d;
|
||||
font-size: 30rpx;
|
||||
font-weight: 800;
|
||||
line-height: 42rpx;
|
||||
}
|
||||
|
||||
.cart-content {
|
||||
width: 100%;
|
||||
padding: 0 20rpx;
|
||||
box-sizing: border-box;
|
||||
margin-top: 70rpx;
|
||||
.goods-box {
|
||||
background-color: #fff;
|
||||
&:last-child {
|
||||
margin-bottom: 40rpx;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
.title3 {
|
||||
font-size: 20rpx;
|
||||
font-weight: 400;
|
||||
color: #999999;
|
||||
line-height: 22rpx;
|
||||
}
|
||||
|
||||
.title-card {
|
||||
padding: 36rpx 0 46rpx 20rpx;
|
||||
.cart-box {
|
||||
.cart-header {
|
||||
height: 70rpx;
|
||||
background-color: #f6f6f6;
|
||||
width: 100%;
|
||||
position: fixed;
|
||||
left: 0;
|
||||
top: v-bind('sys_navBar') rpx;
|
||||
z-index: 1000;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
.img-box {
|
||||
width: 164rpx;
|
||||
height: 164rpx;
|
||||
.cart-footer {
|
||||
height: 100rpx;
|
||||
background-color: #fff;
|
||||
|
||||
.order-img {
|
||||
width: 164rpx;
|
||||
height: 164rpx;
|
||||
}
|
||||
}
|
||||
.pay-btn {
|
||||
height: 80rpx;
|
||||
line-height: 80rpx;
|
||||
border-radius: 40rpx;
|
||||
padding: 0 40rpx;
|
||||
min-width: 200rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.check-box {
|
||||
height: 100%;
|
||||
}
|
||||
.cart-content {
|
||||
width: 100%;
|
||||
padding: 0 20rpx;
|
||||
box-sizing: border-box;
|
||||
margin-top: 30rpx;
|
||||
|
||||
.title-text {
|
||||
font-size: 28rpx;
|
||||
font-weight: 500;
|
||||
color: #333333;
|
||||
}
|
||||
.goods-box {
|
||||
// background-color: #fff;
|
||||
|
||||
.params-box {
|
||||
.params-title {
|
||||
height: 38rpx;
|
||||
background: #f4f4f4;
|
||||
border-radius: 2rpx;
|
||||
font-size: 24rpx;
|
||||
font-weight: 400;
|
||||
color: #666666;
|
||||
}
|
||||
}
|
||||
.dataBox {
|
||||
margin: 30rpx;
|
||||
}
|
||||
|
||||
.price-text {
|
||||
color: $red;
|
||||
font-family: OPPOSANS;
|
||||
}
|
||||
}
|
||||
.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;
|
||||
|
||||
.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 {
|
||||
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;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
&:last-child {
|
||||
margin-bottom: 40rpx;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.title-card {
|
||||
padding: 36rpx 0 46rpx 20rpx;
|
||||
|
||||
.img-box {
|
||||
width: 164rpx;
|
||||
height: 164rpx;
|
||||
|
||||
.order-img {
|
||||
width: 164rpx;
|
||||
height: 164rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.check-box {
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.title-text {
|
||||
font-size: 28rpx;
|
||||
font-weight: 500;
|
||||
color: #333333;
|
||||
}
|
||||
|
||||
.params-box {
|
||||
.params-title {
|
||||
height: 38rpx;
|
||||
background: #f4f4f4;
|
||||
border-radius: 2rpx;
|
||||
font-size: 24rpx;
|
||||
font-weight: 400;
|
||||
color: #666666;
|
||||
}
|
||||
}
|
||||
|
||||
.price-text {
|
||||
color: $red;
|
||||
font-family: OPPOSANS;
|
||||
}
|
||||
}
|
||||
</style>
|
@ -13,6 +13,7 @@ import third from "./third"
|
||||
import trade from "./trade"
|
||||
import user from "./user"
|
||||
import rent from "./rent"
|
||||
import school from "./school"
|
||||
|
||||
export default {
|
||||
activity,
|
||||
@ -30,5 +31,6 @@ export default {
|
||||
trade,
|
||||
user,
|
||||
rent,
|
||||
school,
|
||||
}
|
||||
|
||||
|
24
sheep/api/school.js
Normal file
24
sheep/api/school.js
Normal file
@ -0,0 +1,24 @@
|
||||
import request from '@/sheep/request';
|
||||
|
||||
export default {
|
||||
// 招租列表
|
||||
schoolList: (params) =>
|
||||
request({
|
||||
url: 'meal.classes/classes_list',
|
||||
method: 'GET',
|
||||
params,
|
||||
custom: {
|
||||
showLoading: false,
|
||||
},
|
||||
}),
|
||||
// detail: (id, user_coupon_id) =>
|
||||
// request({
|
||||
// url: 'coupon/detail',
|
||||
// method: 'GET',
|
||||
// params: {
|
||||
// id: id,
|
||||
// user_coupon_id,
|
||||
// },
|
||||
// }),
|
||||
|
||||
};
|
@ -40,7 +40,7 @@
|
||||
{
|
||||
width: addUnit(lineWidth),
|
||||
height: addUnit(lineHeight),
|
||||
background: lineColor ? lineColor : 'var(--ui-BG-Main)',
|
||||
background: lineColor ? lineColor : '#fcc74e',
|
||||
backgroundSize: lineBgSize,
|
||||
},
|
||||
]"
|
||||
@ -56,7 +56,7 @@
|
||||
transform: `translate(${lineOffsetLeft}px)`,
|
||||
transitionDuration: `${firstTime ? 0 : duration}ms`,
|
||||
height: addUnit(lineHeight),
|
||||
background: lineColor ? lineColor : 'var(--ui-BG-Main)',
|
||||
background: lineColor ? lineColor : '#fcc74e',
|
||||
backgroundSize: lineBgSize,
|
||||
},
|
||||
]"
|
||||
@ -409,7 +409,7 @@
|
||||
|
||||
&__text {
|
||||
font-size: 14px;
|
||||
color: #606266;
|
||||
color: #999999;
|
||||
white-space: nowrap !important;
|
||||
|
||||
&--disabled {
|
||||
|
Loading…
x
Reference in New Issue
Block a user