6.19(同步app

This commit is contained in:
Hong
2024-06-19 18:51:22 +08:00
parent 40ec8394b5
commit d7df3a3e00
60 changed files with 1092 additions and 201 deletions

22
api/home/home.js Normal file
View File

@@ -0,0 +1,22 @@
import request from '@/utils/request'
/**
* 咨询分类列表 front/community/category/list/{{pid}}
*/
export function categoryTypeList() {
return request({
url: `/api/front/community/category/list/3`,
method: 'get'
})
}
/**
* 分佣平台列表 front/return/commission/platform/page/list
*/
export function getPlatformList(params) {
return request({
url: '/api/front/return/commission/platform/page/list',
method: 'get',
params
})
}

41
data/homeData.js Normal file
View File

@@ -0,0 +1,41 @@
export const functionList = [{
url: '/pages/showroom/index',
imgae: 'http://qicheoss.oss-cn-shanghai.aliyuncs.com/static/images/app/home/01.png',
title: '租卖车',
type:1
}, {
url: '/pages/serve/repair/repair',
imgae: 'http://qicheoss.oss-cn-shanghai.aliyuncs.com/static/images/app/home/02.png',
title: '维修',
type:2
}, {
url: '/pages/serve/activity_list',
imgae: 'http://qicheoss.oss-cn-shanghai.aliyuncs.com/static/images/app/home/03.png',
title: '0元租车',
type:2
}, {
url: '/pagesA/every_day_card/every_day_card',
imgae: 'http://qicheoss.oss-cn-shanghai.aliyuncs.com/static/images/app/home/04.png',
title: '瓜分红包',
type:2
}, {
url: '/pagesA/rebate/rebate',
imgae: 'http://qicheoss.oss-cn-shanghai.aliyuncs.com/static/images/app/home/05.png',
title: '流水返佣',
type:2
}, {
url: '/pages/welfare/task/task',
imgae: 'http://qicheoss.oss-cn-shanghai.aliyuncs.com/static/images/app/home/06.png',
title: '任务中心',
type:2
}, {
url: '/pages/serve/coupons/coupons?num=1',
imgae: 'http://qicheoss.oss-cn-shanghai.aliyuncs.com/static/images/app/home/07.png',
title: '限时秒杀',
type:2
}, {
url: '/pages/welfare/invite/invite',
imgae: 'http://qicheoss.oss-cn-shanghai.aliyuncs.com/static/images/app/home/08.png',
title: '邀请有礼',
type:2
}]

View File

@@ -117,7 +117,7 @@ export const indexTabList = [{
value: 1,
type: 'true'
}, {
name: '地',
name: '地',
value: 4,
type: 'true'
},{
@@ -130,12 +130,13 @@ export const indexTabList = [{
// value: 2,
// type: 'true'
// },
{
name: '资讯',
value: 3,
type: 'true'
// {
// name: '资讯',
// value: 3,
// type: 'true'
}]
// },
]
export const tabsList8 = [{
name: '全部卡券',
value: 1,

View File

@@ -1,8 +1,17 @@
{
"pages": [{
"path": "pages/home/home",
"style": {
"navigationBarTitleText": "首页",
"navigationStyle": "custom",
"app-plus": {
"bounce": "none"
}
}
}, {
"path": "pages/index/index",
"style": {
"navigationBarTitleText": "发现",
"navigationBarTitleText": "滴友圈",
"navigationStyle": "custom"
}
}, {
@@ -126,8 +135,8 @@
// "navigationStyle": "custom",
"enablePullDownRefresh": false
}
},
},
{
"path": "pages/serve/repair/repair",
"style": {
@@ -639,18 +648,16 @@
}
},
{
"path" : "pages/search/search",
"style" :
{
"navigationBarTitleText" : "搜索",
"enablePullDownRefresh" : false
"path": "pages/search/search",
"style": {
"navigationBarTitleText": "搜索",
"enablePullDownRefresh": false
}
}
],
"subPackages": [{
"root": "pagesA",
"pages": [
{
"pages": [{
"path": "serve/message/message",
"style": {
"navigationBarTitleText": "消息",
@@ -701,136 +708,150 @@
"enablePullDownRefresh": false
}
},
{
"path": "common/textview/index",
"style": {
"navigationBarTitleText": "富文本解析页面",
"navigationStyle": "custom"
{
"path": "common/textview/index",
"style": {
"navigationBarTitleText": "富文本解析页面",
"navigationStyle": "custom"
}
}, {
"path": "serve/repair/re_create/select_city",
"style": {
"navigationBarTitleText": "搜索城市",
"enablePullDownRefresh": false
}
}, {
"path": "serve/repair/re_create/select_store",
"style": {
"navigationBarTitleText": "常规保养",
"enablePullDownRefresh": false
}
}, {
"path": "serve/repair/re_create/result",
"style": {
"navigationBarTitleText": "维修预约",
"enablePullDownRefresh": false
}
}, {
"path": "serve/repair/re_create/reservation",
"style": {
"navigationBarTitleText": "维修预约",
"enablePullDownRefresh": false
}
}, {
"path": "serve/repair/re_create/select_time",
"style": {
"navigationBarTitleText": "预约时间",
"enablePullDownRefresh": false
}
}, {
"path": "serve/repair/re_binding",
"style": {
"navigationBarTitleText": "绑定车辆",
"enablePullDownRefresh": false
}
},
{
"path": "showroom/confirmOrder/confirmOrder",
"style": {
"navigationBarTitleText": "确认订单",
"navigationBarBackgroundColor": "#f5f5f5"
}
},
{
"path": "my_favorite/my_favorite",
"style": {
"navigationBarTitleText": "我的收藏",
"enablePullDownRefresh": false,
"navigationStyle": "custom"
}
},
{
"path": "my_order/serveOrder/serve_order",
"style": {
"navigationBarTitleText": "服务订单",
"enablePullDownRefresh": false
}
},
{
"path": "my_order/serveOrder/serve_particulars",
"style": {
"navigationBarTitleText": "服务订单卡券详情",
"enablePullDownRefresh": false,
"navigationStyle": "custom"
}
},
{
"path": "my_order/serveOrder/integral_particulars",
"style": {
"navigationBarTitleText": "服务订单积分详情",
"enablePullDownRefresh": false,
"navigationStyle": "custom"
}
},
{
"path": "my_order/serveOrder/work_particulars",
"style": {
"navigationBarTitleText": "服务订单工单详情",
"enablePullDownRefresh": false,
"navigationStyle": "custom"
}
},
{
"path": "every_day_card/every_day_card",
"style": {
"navigationBarTitleText": "天天打卡",
"enablePullDownRefresh": false,
"navigationStyle": "custom"
}
},
{
"path": "every_day_card/previous_list",
"style": {
"navigationBarTitleText": "往期开奖",
"enablePullDownRefresh": false
}
},
{
"path": "rebate/rebate",
"style": {
"navigationBarTitleText": "返佣计划"
}
},
{
"path": "rebate/rebate_web",
"style": {
"navigationBarTitleText": "返佣计划"
}
}
},{
"path": "serve/repair/re_create/select_city",
"style": {
"navigationBarTitleText": "搜索城市",
"enablePullDownRefresh" : false
}
}, {
"path": "serve/repair/re_create/select_store",
"style": {
"navigationBarTitleText": "常规保养",
"enablePullDownRefresh": false
}
}, {
"path": "serve/repair/re_create/result",
"style": {
"navigationBarTitleText": "维修预约",
"enablePullDownRefresh": false
}
}, {
"path": "serve/repair/re_create/reservation",
"style": {
"navigationBarTitleText": "维修预约",
"enablePullDownRefresh": false
}
}, {
"path": "serve/repair/re_create/select_time",
"style": {
"navigationBarTitleText": "预约时间",
"enablePullDownRefresh": false
}
},{
"path": "serve/repair/re_binding",
"style": {
"navigationBarTitleText": "绑定车辆",
"enablePullDownRefresh": false
}
},
{
"path": "showroom/confirmOrder/confirmOrder",
"style": {
"navigationBarTitleText": "确认订单",
"navigationBarBackgroundColor": "#f5f5f5"
}
},
{
"path": "my_favorite/my_favorite",
"style": {
"navigationBarTitleText": "我的收藏",
"enablePullDownRefresh": false,
"navigationStyle": "custom"
}
},
{
"path": "my_order/serveOrder/serve_order",
"style": {
"navigationBarTitleText": "服务订单",
"enablePullDownRefresh": false
}
},
{
"path": "my_order/serveOrder/serve_particulars",
"style": {
"navigationBarTitleText": "服务订单卡券详情",
"enablePullDownRefresh": false,
"navigationStyle": "custom"
}
},
{
"path": "my_order/serveOrder/integral_particulars",
"style": {
"navigationBarTitleText": "服务订单积分详情",
"enablePullDownRefresh": false,
"navigationStyle": "custom"
}
},
{
"path": "my_order/serveOrder/work_particulars",
"style": {
"navigationBarTitleText": "服务订单工单详情",
"enablePullDownRefresh": false,
"navigationStyle": "custom"
}
},
{
"path": "every_day_card/every_day_card",
"style": {
"navigationBarTitleText": "天天打卡",
"enablePullDownRefresh": false,
"navigationStyle": "custom"
}
},
{
"path": "every_day_card/previous_list",
"style": {
"navigationBarTitleText": "往期开奖",
"enablePullDownRefresh": false
}
}
]
}],
"tabBar": {
"color": "#666666",
"selectedColor": "#000000",
"list": [{
"pagePath": "pages/index/index",
// "pagePath": "pages/index/index",
"pagePath": "pages/home/home",
"iconPath": "/static/images/tabbar/index.png",
"selectedIconPath": "/static/images/tabbar/index_active.png",
"text": "发现"
"text": "首页"
}, {
"pagePath": "pages/welfare/index",
// "pagePath": "pages/welfare/index",
"pagePath": "pages/index/index",
"iconPath": "/static/images/tabbar/welfare.png",
"selectedIconPath": "/static/images/tabbar/welfare_active.png",
"text": "惊喜"
"text": "滴友圈"
}, {
"pagePath": "pages/showroom/index",
"iconPath": "/static/images/tabbar/showroom.png",
"selectedIconPath": "/static/images/tabbar/showroom_active.png",
"text": "展厅"
"text": "租买车"
}, {
"pagePath": "pages/serve/index",
"iconPath": "/static/images/tabbar/serve.png",
"selectedIconPath": "/static/images/tabbar/serve_active.png",
"text": "服务"
"text": "服务"
}, {
"pagePath": "pages/mine/index",
"iconPath": "/static/images/tabbar/mine.png",

473
pages/home/home.vue Normal file
View File

@@ -0,0 +1,473 @@
<template>
<view class="">
<z-paging ref="paging" v-model="dataList" @query="queryList" default-page-size="5">
<view class="home-search" slot="top">
<view class="home-header">
<image class="home-bj" :src="`${config.aliyunOssUrl}/static/images/app/home/home_bj.png`" mode="">
</image>
</view>
<view :style="{height: `${$u.sys().statusBarHeight}px;`}" />
<view class="flex align-center" style="padding:0 32rpx;position: relative;">
<view class="brand-name flex align-center justify-between"
@click="$tab.navigateTo('/pagesA/serve/repair/re_create/select_city')">
<view class="brand-name-tit">
{{citySave?citySave:'杭州'}}
</view>
<u-icon name="arrow-down-fill" size="10" color="#000"></u-icon>
</view>
<view class="search-box " @click="$tab.navigateTo('/pages/search/search')">
<image class="search-bj" :src="`${config.aliyunOssUrl}/static/images/app/home/home_search.png`"
mode=""></image>
<view class="search-box-c flex align-center">
<image class="search-box-image"
:src="`${config.aliyunOssUrl}/static/images/app/icon/search.png`" mode="">
</image>
<view class="search-box-search align-center flex">搜索</view>
</view>
</view>
</view>
</view>
<view class="home-income">
<image style="width: 725rpx;height: 261rpx;"
:src="`${config.aliyunOssUrl}/static/images/app/home/home_number.png`" mode=""></image>
<view class="home-income-top-left f-26 c666">
今日收益()
</view>
<view class="home-income-top-right f-28">
我的收益
</view>
<view class="home-income-center flex justify-center align-center">
<view v-if="0"><text class="home-income-center-text">+</text>
26.08</view>
<view class="home-income-center-button" v-else>
点击加入流水返佣
</view>
</view>
<view class="home-income-bottom-left f-26 c666">可提现收益
<text class="f-30 c333">125.6</text>
</view>
<view class="home-income-bottom-right f-26 c666">累计总收益
<text class="f-30 c333">12225.6</text>
</view>
</view>
<view class="function-list flex justify-around flex-wrap">
<view class="function-list-cont" v-for="(item,index) in functionList" :key="index"
@click="navigatorFn(item)">
<image style="width: 68rpx;height: 68rpx;" :src="item.imgae" mode=""></image>
<view class="f-24 c333">{{item.title}}</view>
</view>
</view>
<view class="swiper-box">
<u-swiper keyName="image" :list="brannerList" height="240rpx" @change="brannerChange"
@click="brannerClick"></u-swiper>
</view>
<view class="home-information">
<u-tabs :list="tabList" @click="tabClick" :scrollable="true" lineColor="#13AFA8"
:activeStyle="{color: '#303133',fontWeight: 600,transform: 'scale(1.05)',fontSize: '31rpx'}"
:inactiveStyle="{color: '#606266',fontWeight:500,transform: 'scale(1)',fontSize: '31rpx'}"
itemStyle="padding-left: 15px; padding-right: 15px; height: 30px;"></u-tabs>
<view class="list-box">
<view v-for="(item,index) in dataList" :key="index" @click="toDetailPages(item,index)">
<block>
<view class="consult" @click.stop="toDetailPages(item,index)">
<view class="consult-list" v-if="item.image.length==1">
<view class="flex align-center">
<view class="consult-list-left flex flex-column justify-between">
<view class="consult-list-left-title">
{{item.title}}
</view>
<view class="flex justify-between c999">
<text>{{item.authorName}}</text>
<text>{{item.strCreateTime}}</text>
</view>
</view>
<image class="consult-image-one" @click.stop="examineFn(item.image,imageIndex)"
v-for="(itemImage,imageIndex) in item.image" :key="imageIndex"
:src="itemImage" mode=""></image>
</view>
</view>
<view class="consult-list" v-else>
<view class="consult-list-left-title">
<u--text :lines="2" bold size="16" :text="item.title"></u--text>
</view>
<view v-if="item.image.length==2" class="flex justify-between flex-wrap">
<image class="consult-image-two" @click.stop="examineFn(item.image,imageIndex)"
v-for="(itemImage,imageIndex) in item.image" :key="imageIndex"
:src="itemImage" mode=""></image>
</view>
<view v-else class="flex justify-between flex-wrap">
<block v-for="(itemImage,imageIndex) in item.image" :key="imageIndex">
<image v-if="imageIndex<3" class="consult-image-three"
@click.stop="examineFn(item.image,imageIndex)" :src="itemImage" mode="">
</image>
</block>
</view>
<view class="consult-list-name flex justify-between c999">
<text>{{item.authorName}}</text>
<text>{{item.strCreateTime}}</text>
</view>
</view>
</view>
</block>
</view>
</view>
</view>
</z-paging>
</view>
</template>
<script>
import {
categoryTypeList
} from "@/api/home/home.js"
import {
getPlazaList,
} from "@/api/discover/discover.js"
import {
functionList
} from "@/data/homeData.js"
import {
mapGetters
} from 'vuex'
import {
brannerList
} from '@/api/system/config'
export default {
computed: {
...mapGetters(['citySave'])
},
data() {
return {
config: getApp().globalData.config,
dataList: [],
functionList,
//轮播图
brannerList: [],
tabList: [{
name: '推荐',
type: 1
}, {
name: '玩转滴友',
type: 2
}],
};
},
methods: {
toDetailPages(item, index) {
uni.navigateTo({
url: `/pages/driver/index/consult_detail?id=${item.id}`
})
},
// 一级tab
tabClick(e) {
console.log(e);
this.ticketType = e.id
this.$refs.paging.refresh();
},
//nav
navigatorFn(item) {
console.log(item);
if (item.type == 1) {
uni.switchTab({
url: item.url
})
} else {
uni.navigateTo({
url: item.url
})
}
},
//列表
queryList(page, limit) {
let obj = {
categoryId: this.ticketType,
page,
limit
}
console.log(obj);
getPlazaList(obj).then(res => {
console.log('咨询', res.data.list);
res.data.list.forEach((item, index) => {
if (item.image != '') {
item.image = item.image.split(",")
} else {
item.image = []
}
if (Number(item.wide) > Number(item.high)) {
let num = 686 / uni.$u.getPx(`${item.wide}rpx`)
item.wide = uni.$u.getPx(`${item.wide}rpx`) * num + 'rpx'
item.high = uni.$u.getPx(`${item.high}rpx`) * num + 'rpx'
} else {
let num = 302 / uni.$u.getPx(`${item.wide}rpx`)
item.wide = uni.$u.getPx(`${item.wide}rpx`) * num + 'rpx'
item.high = uni.$u.getPx(`${item.high}rpx`) * num + 'rpx'
}
})
// console.log(res.data.list);
this.$refs.paging.complete(res.data.list);
}).catch(err => {
this.$refs.paging.complete(false)
})
},
// 获取轮播图
getBrannerList() {
brannerList({
type: 6
}).then(res => {
this.brannerList = res.data.list
})
},
// 点击轮播图
brannerClick(e) {
if (this.brannerList[e].linkType == 2 || this.brannerList[e] == 3) {
let linkObj = JSON.parse(this.brannerList[e].linkUrl)
console.log(linkObj);
this.$tab.navigateTo(linkObj.linkUrl)
}
},
brannerChange() {},
//获取社区分类
categoryTypeListFn() {
categoryTypeList().then(res => {
console.log(res.data);
this.tabList = res.data
this.ticketType = this.tabList[0].id
this.$refs.paging.refresh();
})
}
},
onLoad() {
this.getBrannerList()
//获取社区分类
this.categoryTypeListFn()
}
}
</script>
<style lang="scss">
page {
background-color: #f5f5f5;
}
.list-box {
width: 690rpx;
padding: 0 32rpx 30rpx 32rpx;
background: #ffffff;
.consult {
width: 100%;
padding-bottom: 29rpx;
border-bottom: 1rpx solid #EDEDED;
padding-top: 24rpx;
.consult-list {
.consult-list-left {
min-height: 150rpx;
width: calc(100% - 234rpx);
margin-right: 16rpx;
.consult-list-left-title {
font-weight: 600;
font-size: 34rpx;
color: #111111;
line-height: 38rpx;
display: -webkit-box;
overflow: hidden;
text-overflow: ellipsis;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
}
.consult-list-name {
font-size: 26rpx;
color: #666;
}
}
.consult-image-one {
width: 218rpx;
height: 150rpx;
border-radius: 8rpx;
margin: 24rpx 0;
}
.consult-image-two {
width: 310rpx;
height: 230rpx;
// box-shadow: 0rpx 0rpx 4rpx 0rpx rgba(0, 0, 0, 0.09);
border-radius: 8rpx;
margin: 24rpx 0;
}
.consult-image-three {
width: 200rpx;
height: 160rpx;
// box-shadow: 0rpx 0rpx 4rpx 0rpx rgba(0, 0, 0, 0.09);
border-radius: 8rpx;
margin: 24rpx 0;
}
}
}
}
.home-information {
background: #ffffff;
width: 690rpx;
margin-left: 30rpx;
border-radius: 20rpx;
padding-top: 16rpx;
}
.swiper-box {
padding: 30rpx;
}
.function-list {
width: 690rpx;
margin-left: 30rpx;
text-align: center;
background: #ffffff;
height: 289rpx;
border-radius: 20rpx;
padding-top: 26rpx;
.function-list-cont {
width: 170rpx;
margin-bottom: 34rpx;
}
}
.home-header {
position: relative;
height: 1rpx;
.home-bj {
width: 750rpx;
height: 555rpx;
position: absolute;
top: 0;
left: 0;
}
}
.home-search {
position: relative;
top: 0rpx;
width: 750rpx;
.brand-name {
height: 68rpx;
max-width: 180rpx;
font-size: 36rpx;
font-weight: bold;
color: #000000;
.brand-name-tit {
max-width: 160rpx;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 2;
/* 控制显示的行数 */
overflow: hidden;
text-overflow: ellipsis;
}
}
}
.home-income {
position: relative;
left: 13rpx;
margin-top: 29rpx;
.home-income-center {
position: absolute;
width: 100%;
top: 81rpx;
color: #00A473;
font-size: 68rpx;
font-weight: 700;
.home-income-center-button {
width: 291rpx;
height: 66rpx;
background: #00CE90;
border-radius: 10rpx;
line-height: 66rpx;
text-align: center;
font-size: 30rpx;
font-weight: 500;
color: #ffffff;
}
.home-income-center-text {
color: #00A473;
font-size: 54rpx;
font-weight: 700;
}
}
.home-income-top-left {
position: absolute;
top: 30rpx;
left: 38rpx;
}
.home-income-top-right {
position: absolute;
top: 20rpx;
left: 569rpx;
color: #018D63;
font-weight: 600;
}
.home-income-bottom-left {
position: absolute;
bottom: 52rpx;
left: 42rpx;
}
.home-income-bottom-right {
position: absolute;
bottom: 52rpx;
right: 61rpx;
}
}
.search-box {
margin: 0 20rpx;
// margin-top: 16rpx;
// padding: 0 24rpx;
width: 447rpx;
height: 68rpx;
// background: #F5F5F5;
border-radius: 32rpx;
position: relative;
.search-bj {
position: absolute;
left: 0;
top: 0;
}
.search-box-c {
height: 64rpx;
padding: 0;
padding-left: 18rpx;
.search-box-search {
height: 84rpx;
// background: red;
width: 120rpx;
// text-align: center;
line-height: 78rpx;
}
.search-box-image {
margin: 0 12rpx;
width: 25rpx;
height: 25rpx;
}
}
}
</style>

View File

@@ -4,30 +4,30 @@
:hide-empty-view="userInfo.concernedNum==0 && actTabType == 5">
<!-- <u-sticky> -->
<view slot="top">
<view class="home-header">
<image class="home-bj" :src="`${config.aliyunOssUrl}/static/images/app/home/home_bj.png`" mode="">
</image>
</view>
<view :style="{height: `${$u.sys().statusBarHeight}px;`}" />
<view class="navbar-top flex align-center justify-between element">
<view class="messgage-icon rel flex align-center">
<image class="messgage-icon-image"
:src="`${config.aliyunOssUrl}/static/images/app/serve/serve_message.png`" mode=""
@click="$tab.navigateTo('/pages/message/message')"></image>
<view v-if="unreadNum>0" class="num abs bg-primary">
{{unreadNum}}
</view>
</view>
<!-- <view class="search-box" @click="$tab.navigateTo('/pages/search/search')">
<view class="navbar-top flex align-center">
<view class="search-box " @click="$tab.navigateTo('/pages/search/search')">
<image class="search-bj" :src="`${config.aliyunOssUrl}/static/images/app/home/home_search.png`"
mode=""></image>
<view class="search-box-c flex align-center">
<image class="search-box-image"
:src="`${config.aliyunOssUrl}/static/images/app/icon/search.png`" mode=""></image>
<view class="search-box-search">搜索</view>
:src="`${config.aliyunOssUrl}/static/images/app/icon/search.png`" mode="">
</image>
<view class="search-box-search align-center flex">搜索</view>
</view>
</view>
<view class="header-post flex align-center justify-center" @click="issueFn">
<image class="search-bj" :src="`${config.aliyunOssUrl}/static/images/app/home/index_post.png`"
mode=""></image>
<view class="flex align-center justify-center">
<image class="" style="width: 20rpx;height: 20rpx;margin-right: 4rpx;"
:src="`${config.aliyunOssUrl}/static/images/app/home/index_add.png`" mode=""></image>
发布
</view>
</view> -->
<view class="" :style="{'margin-right': `${menuWidth}px`}">
<image class="issue-image"
src="https://qicheoss.oss-cn-shanghai.aliyuncs.com/static/images/app/icon/index_search.png" mode=""
@click="$tab.navigateTo('/pages/search/search')"></image>
<image class="issue-image"
src="https://qicheoss.oss-cn-shanghai.aliyuncs.com/static/images/app/icon/index_add.png" mode=""
@click="issueFn"></image>
</view>
</view>
<u-overlay :show="postFlag" @click="postFlag = false" opacity="0.2" zIndex="555"></u-overlay>
@@ -58,10 +58,10 @@
</view>
<!-- <view v-if="showElement" style="height: 200rpx;" /> -->
</view>
<view class="swiper-box" v-if="actTabType != 5">
<!-- <view class="swiper-box" v-if="actTabType != 5">
<u-swiper keyName="image" :list="brannerList" height="560rpx" @change="brannerChange"
@click="brannerClick" radius='0'></u-swiper>
</view>
</view> -->
<view class="list-box">
<view v-for="(item,index) in dataList" :key="index">
<block v-if="actTabType==3">
@@ -134,14 +134,15 @@
:poster="item.cover" class="video-box1" @play="handleVideoClick(index)"
:style="{width:`${item.wide}`,height:`${item.high}`}" @pause="currentVideoIndex = -1">
</video> -->
<view class="video-box" :style="{width:item.wide,height:item.high}" v-if="item.video"
@click.stop="actTabTypeVideoFn(item,index)">
<image class="video-box-bo" :src="`${config.aliyunOssUrl}/static/images/app/mine/bo_fang.png`" mode=""></image>
<image class="video-box-bo"
:src="`${config.aliyunOssUrl}/static/images/app/mine/bo_fang.png`" mode=""></image>
<image :style="{width:item.wide}" class="video-box-bg" :src="item.cover"
mode="widthFix"></image>
</view>
<view v-if="item.image" class="image-list-box" @click="toDetailPages(item,index)">
<view v-if="item.image.length==1">
<view class="image-one" v-for="(itemImage,imageIndex) in item.image"
@@ -345,8 +346,8 @@
dataList: [],
//消息未读数量
unreadNum: 0,
showMore:false,
reportId:null,
showMore: false,
reportId: null,
//存放播放的视频id
videos: [],
currentVideoIndex: -1,
@@ -435,7 +436,7 @@
this.showElement = true;
}
},
navPostFn(index) {
this.$tab.navigateTo(`./post?type=${1}&issueType=${index}`)
this.postFlag = false
@@ -476,15 +477,15 @@
url: '/pages/index/report?id=' + this.reportId
})
},
cancelMore(){
cancelMore() {
uni.showTabBar()
this.showMore=false
this.showMore = false
},
//三个点
reportFn(item) {
uni.hideTabBar()
this.showMore=true
this.reportId=item.id
this.showMore = true
this.reportId = item.id
// uni.showActionSheet({
// itemList: ['举报'],
// success: (res) => {
@@ -660,9 +661,9 @@
item.high = uni.$u.getPx(`${item.high}rpx`) * num + 'rpx'
} else {
// if (item.wide > 686) {
let num = 300 / uni.$u.getPx(`${item.wide}rpx`)
item.wide = uni.$u.getPx(`${item.wide}rpx`) * num + 'rpx'
item.high = uni.$u.getPx(`${item.high}rpx`) * num + 'rpx'
let num = 300 / uni.$u.getPx(`${item.wide}rpx`)
item.wide = uni.$u.getPx(`${item.wide}rpx`) * num + 'rpx'
item.high = uni.$u.getPx(`${item.high}rpx`) * num + 'rpx'
// } else {
// let num = 454 / uni.$u.getPx(`${item.wide}rpx`)
// item.wide = uni.$u.getPx(`${item.wide}rpx`) * num + 'rpx'
@@ -705,9 +706,9 @@
item.high = uni.$u.getPx(`${item.high}rpx`) * num + 'rpx'
} else {
// if (item.wide > 686) {
let num = 300 / uni.$u.getPx(`${item.wide}rpx`)
item.wide = uni.$u.getPx(`${item.wide}rpx`) * num + 'rpx'
item.high = uni.$u.getPx(`${item.high}rpx`) * num + 'rpx'
let num = 300 / uni.$u.getPx(`${item.wide}rpx`)
item.wide = uni.$u.getPx(`${item.wide}rpx`) * num + 'rpx'
item.high = uni.$u.getPx(`${item.high}rpx`) * num + 'rpx'
// } else {
// item.wide = this.pxToRpx(item.wide) + 'rpx'
// item.high = this.pxToRpx(item.high) + 'rpx'
@@ -755,9 +756,9 @@
item.high = uni.$u.getPx(`${item.high}rpx`) * num + 'rpx'
} else {
// if (item.wide > 686) {
let num = 300 / uni.$u.getPx(`${item.wide}rpx`)
item.wide = uni.$u.getPx(`${item.wide}rpx`) * num + 'rpx'
item.high = uni.$u.getPx(`${item.high}rpx`) * num + 'rpx'
let num = 300 / uni.$u.getPx(`${item.wide}rpx`)
item.wide = uni.$u.getPx(`${item.wide}rpx`) * num + 'rpx'
item.high = uni.$u.getPx(`${item.high}rpx`) * num + 'rpx'
// } else {
// item.wide = this.pxToRpx(item.wide) + 'rpx'
// item.high = this.pxToRpx(item.high) + 'rpx'
@@ -796,14 +797,28 @@
</script>
<style lang="scss">
.home-header {
position: relative;
height: 1rpx;
.home-bj {
width: 750rpx;
height: 555rpx;
position: absolute;
top: 0;
left: 0;
}
}
.video-flex {
position: fixed;
right: -750rpx;
top: 0;
}
.more_view {
padding: 0 32rpx;
.txt {
padding: 32rpx 0;
text-align: center;
@@ -811,7 +826,7 @@
font-weight: 400;
color: #111111;
}
.foot {
padding: 32rpx 0;
text-align: center;
@@ -821,6 +836,7 @@
border-top: 1px solid #f1f1ff;
}
}
#shareBtn {
position: absolute;
z-index: 2;
@@ -877,15 +893,15 @@
.navbar-top {
padding: 0 24rpx;
width: 750rpx;
height: 88rpx;
// height: 88rpx;
.messgage-icon {
width: 80rpx;
width: 100rpx;
height: 88rpx;
.num {
top: 6rpx;
right: 0rpx;
top: 14rpx;
right: 14rpx;
min-width: 32rpx;
font-size: 18rpx;
height: 32rpx;
@@ -898,53 +914,62 @@
.messgage-icon-image {
margin-left: 12rpx;
width: 58rpx;
height: 58rpx;
width: 66rpx;
height: 66rpx;
}
}
.issue-image {
width: 48rpx;
height: 48rpx;
margin-right: 24rpx;
}
// .issue-image1 {
// width: 48rpx;
// height: 48rpx;
// margin-left: 24rpx;
// }
.header-post {
margin: 0 20rpx;
width: 163rpx;
height: 68rpx;
border-radius: 32rpx;
position: relative;
.search-bj {
position: absolute;
left: 0;
top: 0;
}
}
.search-box {
margin: 0 20rpx;
// padding: 0 24rpx;
width: 566rpx;
height: 64rpx;
background: #F5F5F5;
width: 300rpx;
height: 68rpx;
border-radius: 32rpx;
position: relative;
.search-bj {
position: absolute;
left: 0;
top: 0;
}
.search-box-c {
height: 64rpx;
padding: 0;
padding-left: 18rpx;
.search-box-search {
height: 84rpx;
// background: red;
width: 120rpx;
// text-align: center;
line-height: 78rpx;
font-size: 28rpx;
color: #999999;
}
.search-box-image {
margin: 0 12rpx 0 24rpx;
width: 30rpx;
height: 30rpx;
margin: 0 12rpx;
width: 25rpx;
height: 25rpx;
}
}
}
}
.tab-box {
@@ -953,6 +978,7 @@
margin-left: 32rpx;
margin-bottom: 24rpx;
margin-top: 14rpx;
position: relative;
.tab-item {
font-size: 34rpx;
@@ -1003,7 +1029,7 @@
color: #111111;
line-height: 43rpx;
letter-spacing: 2rpx;
white-space:pre-line;
white-space: pre-line;
}
.video-box1 {
@@ -1011,19 +1037,19 @@
margin-top: 24rpx;
border-radius: 8rpx;
}
.video-box {
border-radius: 8rpx;
margin-top: 24rpx;
position: relative;
.video-box-bg {
// border: 1px solid blue;
position: absolute;
top: 0;
left: 0;
}
.video-box-bo {
// border: 1px solid red;
position: absolute;
@@ -1223,14 +1249,15 @@
padding-bottom: 32rpx;
border-bottom: 1rpx solid #EDEDED;
margin-top: 48rpx;
.consult-list-left-title1{
.consult-list-left-title1 {
font-size: 32rpx;
color: #111111;
line-height: 38rpx;
margin-bottom: 20rpx;
// border: 1px solid blue;
}
.consult-list-name1 {
font-size: 26rpx;
color: #666;

286
pagesA/rebate/rebate.vue Normal file
View File

@@ -0,0 +1,286 @@
<template>
<view class="rebate">
<view class="rebate-header-bj">
<view class="rebate-header">
<image class="rebate-header-tit" :src="`${config.aliyunOssUrl}/static/images/app/home/home_rebate_tit.png`" mode=""></image>
<view class="rebate-header-cont flex justify-between">
<view>
<image :src="`${config.aliyunOssUrl}/static/images/app/home/home_rebate_01.png`" mode=""></image>
<view>平台齐全</view>
</view>
<view>
<image :src="`${config.aliyunOssUrl}/static/images/app/home/home_rebate_02.png`" mode=""></image>
<view>单单返佣</view>
</view>
<view>
<image :src="`${config.aliyunOssUrl}/static/images/app/home/home_rebate_03.png`" mode=""></image>
<view>月返千元</view>
</view>
<view>
<image :src="`${config.aliyunOssUrl}/static/images/app/home/home_rebate_04.png`" mode=""></image>
<view>提现秒到</view>
</view>
</view>
</view>
</view>
<view class="swiper-box">
<u-swiper keyName="image" :list="brannerList" height="180rpx"></u-swiper>
</view>
<view class="rebate-shop">
<z-paging use-page-scroll :fixed="false" style="max-height: 1150rpx;" ref="paging" v-model="dataList"
@query="queryList">
<view class="rebate-shop-hea flex justify-between align-center">
<view class="f-36 fw-5 c333">返佣平台</view>
<view class="rebate-shop-address flex align-center justify-center f-26 c333"
@click="$tab.navigateTo('/pages/driver/serve/repair/re_create/select_city')">
<u-icon name="map" color="#333333" size="18"></u-icon>
<view class="rebate-shop-address-cont">
{{citySave?citySave:'杭州'}}
</view>
</view>
</view>
<view class="rebate-shop-list flex align-center" v-for="(item,index) in dataList" :key="index">
<image class="rebate-shop-list-image" :src="item.image" mode="aspectFill"></image>
<view class="rebate-shop-list-name">
<view class="f-30 c333 fw-6">{{item.name}}</view>
<view class="f-28 c333 fw-5" style="margin-top: 10rpx;">今日返佣最高<text
class="f-28 red ml-3">{{item.ratio*100}}%</text></view>
</view>
<view class="rebate-shop-list-status f-30">
<view class="rebate-status1" v-if="item.status==1">已加入</view>
<view class="rebate-status3" v-else-if="item.status==2">审核中</view>
<view class="rebate-status3" v-else-if="item.status==3">未通过</view>
<view class="rebate-status4" v-else @click="joinRebateFn(item)">加入返佣</view>
</view>
</view>
</z-paging>
</view>
<view class="rebate-header">
<image class="rebate-header-tit" :src="`${config.aliyunOssUrl}/static/images/app/home/home_rebate_tit2.png`" mode=""></image>
<view class="rebate-header-cont flex justify-between">
<view>
<image :src="`${config.aliyunOssUrl}/static/images/app/home/home_rebate_05.png`" mode=""></image>
<view>点击加入返佣</view>
<view> 提交个人资料</view>
</view>
<view>
<image :src="`${config.aliyunOssUrl}/static/images/app/home/home_rebate_06.png`" mode=""></image>
<view>后台资料审核</view>
<view>账号绑定成功</view>
</view>
<view>
<image :src="`${config.aliyunOssUrl}/static/images/app/home/home_rebate_07.png`" mode=""></image>
<view>平台出车赚钱</view>
<view>返佣每日更新</view>
</view>
</view>
</view>
<view class="rebate-header mt-2">
<image class="rebate-header-tit" :src="`${config.aliyunOssUrl}/static/images/app/home/home_rebate_tit3.png`" mode=""></image>
<view class="fulizhengce-bj f-30 c333">
<view>1.享受平台限时免抽佣金奖励</view>
<view>2.每月最高可获得1000元流水返佣奖励</view>
<view>3.有机会享受平台0元喷漆0元租车权益</view>
</view>
<view class="staple c999">
<view class="f-28 c666 mt-24">注意事项</view>
<view class="mt-24 f-26">如显示审核未通过请联系客服 400-9966-409</view>
<view class="mt-24 f-26">具体返佣比例请查看活动规则</view>
<view class="mt-24 f-26">本活动最终解释权归滴友之家所有</view>
</view>
</view>
<view class="pb-4 pt-2"></view>
</view>
</template>
<script>
import {
getPlatformList
} from "@/api/home/home.js"
import {
mapGetters
} from 'vuex'
import {
brannerList
} from '@/api/system/config'
export default {
computed: {
...mapGetters(['citySave'])
},
data() {
return {
brannerList: [],
dataList: [],
config: getApp().globalData.config,
};
},
onShow() {
if (this.$refs.paging) {
this.$refs.paging.refresh();
}
},
methods: {
//加入返佣
joinRebateFn(item) {
console.log(item);
uni.navigateTo({
url: `/pagesA/rebate/rebate_web?contract=${item.contract}`
})
},
//获取列表
queryList(page, limit) {
getPlatformList({
page,
limit,
city: this.citySave
}).then(res => {
console.log('第三方平台', res.data.list);
this.$refs.paging.complete(res.data.list)
}).catch(err => {
this.$refs.paging.complete(false);
})
}
},
onLoad() {
brannerList({
type: 6
}).then(res => {
this.brannerList = res.data.list
})
}
}
</script>
<style lang="scss">
page {
background: #f5f5f5;
}
.rebate-shop {
width: 690rpx;
margin: 20rpx 0rpx 20rpx 30rpx;
background: #ffffff;
border-radius: 16rpx;
.rebate-shop-list {
padding: 28rpx 32rpx 20rpx 38rpx;
border-bottom: 1rpx dotted #DEDEDE;
.rebate-shop-list-image {
width: 83rpx;
height: 83rpx;
border-radius: 50%;
}
.rebate-shop-list-name {
width: 385rpx;
height: 83rpx;
margin-left: 30rpx;
margin-right: 30rpx;
}
.rebate-shop-list-status {
width: 162rpx;
height: 54rpx;
text-align: center;
line-height: 54rpx;
.rebate-status1 {
border-radius: 6rpx;
background: rgba(43, 209, 21, 0.8);
color: #ffffff;
}
.rebate-status3 {
border-radius: 6rpx;
background: #E4E4E4;
color: #333333;
}
.rebate-status4 {
border-radius: 6rpx;
background: #FF8134;
color: #ffffff;
}
}
}
.rebate-shop-hea {
padding: 30rpx;
.rebate-shop-address {
width: 180rpx;
padding: 10rpx;
border-radius: 40rpx;
border: 2rpx solid #000000;
.rebate-shop-address-cont {
width: 120rpx;
text-align: center;
white-space: nowrap;
/* 禁止换行 */
overflow: hidden;
/* 超出容器的部分隐藏 */
text-overflow: ellipsis;
/* 超出容器时显示省略号 */
}
}
}
}
.swiper-box {
padding: 30rpx;
margin-top: 21rpx;
}
.rebate {
.rebate-header-bj {
width: 750rpx;
height: 585rpx;
background-image: url('https://qicheoss.oss-cn-shanghai.aliyuncs.com/static/images/app/home/home_rebate_bj.png');
background-size: 100%;
padding-top: 330rpx;
}
.rebate-header {
margin-left: 30rpx;
width: 690rpx;
// height: 274rpx;
background: #ffffff;
border-radius: 16rpx;
padding: 30rpx;
text-align: center;
.rebate-header-tit {
width: 270rpx;
height: 33rpx;
margin-bottom: 30rpx;
}
.rebate-header-cont {
image {
width: 102rpx;
height: 102rpx;
margin-bottom: 22rpx;
}
}
.fulizhengce-bj {
width: 629rpx;
height: 187rpx;
background-image: url('https://qicheoss.oss-cn-shanghai.aliyuncs.com/static/images/app/home/fulizhengce_bj.png');
background-size: 100%;
line-height: 45rpx;
padding: 28rpx 22rpx;
text-align: left;
}
}
}
.staple {
text-align: left;
}
</style>

View File

@@ -0,0 +1,21 @@
<template>
<view>
<web-view :src="contract"></web-view>
</view>
</template>
<script>
export default {
data() {
return {
contract: ''
}
},
onLoad(options) {
this.contract = options.contract
},
}
</script>
<style>
</style>

View File

@@ -21,7 +21,7 @@
<view class="footview" hover-class="hover-footview" v-for="(item,index) in dataList" :key="item.id"
@click="link(`/pagesA/serve/repair/re_create/reservation?id=${item.id}`,`${item.id}`)">
<view class="footleft">
<image class="footleft_img" :src="item.backImage"></image>
<image class="footleft_img" :src="item.avatar"></image>
<!-- coverImage 封面图 backImage 背景图 avatar 头像 -->
</view>
<view class="footright">

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 68 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 215 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 244 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 243 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 114 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 70 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 212 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 452 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 224 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 70 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.3 KiB

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.7 KiB

After

Width:  |  Height:  |  Size: 6.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.6 KiB

After

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.9 KiB

After

Width:  |  Height:  |  Size: 8.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.4 KiB

After

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.6 KiB

After

Width:  |  Height:  |  Size: 8.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.6 KiB

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.9 KiB

After

Width:  |  Height:  |  Size: 7.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.3 KiB

After

Width:  |  Height:  |  Size: 4.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.5 KiB

After

Width:  |  Height:  |  Size: 9.9 KiB

View File

@@ -159,7 +159,6 @@ export default {
sizeType:opt.sizeType||['original'],
sourceType:opt.sourceType||['album', 'camera'],
success: (res) => {
// uni.showLoading({mask:true,title:'上传中...'});
res.tempFiles.forEach(item=>{
ossUpload(item.path,item.path,opt.dir||'crmebimage/public/maintain/',(p)=>{
if (progress != null && typeof(progress) === 'function') {