Merge branch 'dev' into test
This commit is contained in:
@@ -228,3 +228,11 @@ export function setTopHotelNew(data) {
|
|||||||
export function getHotelShareBackgroundImage(id) {
|
export function getHotelShareBackgroundImage(id) {
|
||||||
return request.get("/api/hotelMain/shareImage/" + id, {}, {login: true})
|
return request.get("/api/hotelMain/shareImage/" + id, {}, {login: true})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 店铺资讯
|
||||||
|
* @param id 店铺资讯ID int
|
||||||
|
* */
|
||||||
|
export function hotelNewsView(data) {
|
||||||
|
return request.post("/api/hotelNews/view", data, {login: true})
|
||||||
|
}
|
||||||
|
|||||||
@@ -59,6 +59,9 @@
|
|||||||
font-size: 24rpx;
|
font-size: 24rpx;
|
||||||
text-align: right;
|
text-align: right;
|
||||||
}
|
}
|
||||||
|
.value2 {
|
||||||
|
width: auto;
|
||||||
|
}
|
||||||
|
|
||||||
.red {
|
.red {
|
||||||
color: #FF564A;
|
color: #FF564A;
|
||||||
|
|||||||
@@ -67,6 +67,12 @@ export default {
|
|||||||
computed: {
|
computed: {
|
||||||
list() {
|
list() {
|
||||||
const temp = this.current === 0 ? this.twoList['usable'] : this.twoList['unusable']
|
const temp = this.current === 0 ? this.twoList['usable'] : this.twoList['unusable']
|
||||||
|
if (this.current === 0) {
|
||||||
|
const localCouponId = uni.getStorageSync('couponId') || 0
|
||||||
|
temp.map(item => {
|
||||||
|
item.checked = localCouponId === item.id
|
||||||
|
})
|
||||||
|
}
|
||||||
return this.$global.deepClone(temp)
|
return this.$global.deepClone(temp)
|
||||||
},
|
},
|
||||||
canUse() {
|
canUse() {
|
||||||
|
|||||||
@@ -75,6 +75,7 @@
|
|||||||
current: cind,
|
current: cind,
|
||||||
indicator: 'default'
|
indicator: 'default'
|
||||||
});
|
});
|
||||||
|
this.$emit('click')
|
||||||
},
|
},
|
||||||
getheight() {
|
getheight() {
|
||||||
let that = this;
|
let that = this;
|
||||||
|
|||||||
@@ -207,12 +207,19 @@ export default {
|
|||||||
goRefund(order) {
|
goRefund(order) {
|
||||||
// fix bug#1631
|
// fix bug#1631
|
||||||
if (this.type === 4 || parseInt(order._status._type) === 3) {
|
if (this.type === 4 || parseInt(order._status._type) === 3) {
|
||||||
uni.showToast({
|
// 打开售后的目的就是开启已完成/待评价订单的退款功能,确认打开售后之后,小程序用户再点击申请退款,就可以进入退款申请填写页面,正常走退款流程,提交退款申请以后,订单状态变为退款中
|
||||||
title: '订单已收货,如需退款请联系客服',
|
if (order.refundSystemStatus === 0) {
|
||||||
mask: false,
|
uni.showToast({
|
||||||
icon: 'none',
|
title: '订单已收货,如需退款请联系客服',
|
||||||
duration: 3000
|
mask: false,
|
||||||
})
|
icon: 'none',
|
||||||
|
duration: 3000
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
uni.navigateTo({
|
||||||
|
url: `/pkg_orders/views/refund?id=${order.orderId}`
|
||||||
|
})
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
uni.navigateTo({
|
uni.navigateTo({
|
||||||
url: `/pkg_orders/views/refund?id=${order.orderId}`
|
url: `/pkg_orders/views/refund?id=${order.orderId}`
|
||||||
|
|||||||
@@ -432,7 +432,6 @@ export default {
|
|||||||
item.checked = false
|
item.checked = false
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
uni.removeStorageSync('couponId')
|
|
||||||
} else {
|
} else {
|
||||||
uni.removeStorageSync('couponId')
|
uni.removeStorageSync('couponId')
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -154,19 +154,20 @@
|
|||||||
|
|
||||||
<!-- v6服务项目开始 -->
|
<!-- v6服务项目开始 -->
|
||||||
<view class="service-section goods-section" v-if="storeInfo && storeInfo.isTickets!=1">
|
<view class="service-section goods-section" v-if="storeInfo && storeInfo.isTickets!=1">
|
||||||
<view class="cell flex jc-between ai-center" @click="changeCoupons()" v-if="couponList['usable'].length>0">
|
<view
|
||||||
<view>
|
v-if="couponListLimit2ToShow.length > 0"
|
||||||
<template v-for="(item, index) in couponList.usable">
|
class="cell flex jc-between ai-center"
|
||||||
<text
|
@click="changeCoupons()"
|
||||||
v-if="index < 2"
|
>
|
||||||
:key="index"
|
<view
|
||||||
class="coupon-label tc"
|
v-for="(item, index) in couponListLimit2ToShow"
|
||||||
>
|
:key="index"
|
||||||
{{ item.couponTitle }}
|
class="coupon-label tc"
|
||||||
</text>
|
>
|
||||||
</template>
|
{{ item.couponTitle }}
|
||||||
</view>
|
</view>
|
||||||
<view class="value">优惠详情
|
<view class="value value2">
|
||||||
|
优惠详情
|
||||||
<uni-icons type="right" size="13" color="#707070"></uni-icons>
|
<uni-icons type="right" size="13" color="#707070"></uni-icons>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
@@ -188,7 +189,9 @@
|
|||||||
<view class="sub-title flex ai-end">
|
<view class="sub-title flex ai-end">
|
||||||
<image class="icon-time" :src="webUrl+'/20230106150523489905.png'" mode="scaleToFill"/>
|
<image class="icon-time" :src="webUrl+'/20230106150523489905.png'" mode="scaleToFill"/>
|
||||||
<view class="text">
|
<view class="text">
|
||||||
{{ storeInfo.isFastPost == 1 ? "预计48小时内发货" : "预计发货时间:" + storeInfo.postTime }}
|
<text v-if="storeInfo.isFastPost == 1">预计48小时内发货</text>
|
||||||
|
<text v-if="storeInfo.isFastPost == 2">预计72小时内发货</text>
|
||||||
|
<text v-if="storeInfo.isFastPost == 0">{{ "预计发货时间:" + storeInfo.postTime }}</text>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
@@ -507,8 +510,9 @@ export default {
|
|||||||
show: false,
|
show: false,
|
||||||
uniqueId: null,
|
uniqueId: null,
|
||||||
isFavorite: false,
|
isFavorite: false,
|
||||||
pageKeyId: ''
|
pageKeyId: '',
|
||||||
};
|
couponListLimit2ToShow: []
|
||||||
|
}
|
||||||
},
|
},
|
||||||
computed: mapGetters(["isLogin", "location", "userInfo"]),
|
computed: mapGetters(["isLogin", "location", "userInfo"]),
|
||||||
onShareAppMessage() {
|
onShareAppMessage() {
|
||||||
@@ -917,6 +921,22 @@ export default {
|
|||||||
|
|
||||||
// data.couponList['unusable']?.map(item => item.status = 2)
|
// data.couponList['unusable']?.map(item => item.status = 2)
|
||||||
this.$set(this, 'couponList', data.couponList)
|
this.$set(this, 'couponList', data.couponList)
|
||||||
|
const usableList = data.couponList.usable
|
||||||
|
if (usableList.length > 0) {
|
||||||
|
const tempType = {}
|
||||||
|
const tempTypeArr = []
|
||||||
|
usableList.map(usableItem => {
|
||||||
|
if (!tempType[usableItem.type + '']) {
|
||||||
|
tempType[usableItem.type + ''] = 1
|
||||||
|
tempTypeArr.push(usableItem)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
if (tempTypeArr.length >= 2) {
|
||||||
|
this.couponListLimit2ToShow = [tempTypeArr[0], tempTypeArr[1]]
|
||||||
|
} else {
|
||||||
|
this.couponListLimit2ToShow = [tempTypeArr[0]]
|
||||||
|
}
|
||||||
|
}
|
||||||
this.$set(this, 'replyCount', data.replyCount)
|
this.$set(this, 'replyCount', data.replyCount)
|
||||||
this.$set(this, 'replyChance', data.replyChance)
|
this.$set(this, 'replyChance', data.replyChance)
|
||||||
this.reply = data.reply ? [data.reply] : []
|
this.reply = data.reply ? [data.reply] : []
|
||||||
|
|||||||
+34
-15
@@ -232,6 +232,7 @@
|
|||||||
controls
|
controls
|
||||||
play-btn-position="center"
|
play-btn-position="center"
|
||||||
class="video-item"
|
class="video-item"
|
||||||
|
@play="infoItemViewClick(item)"
|
||||||
/>
|
/>
|
||||||
</view>
|
</view>
|
||||||
<view v-else>
|
<view v-else>
|
||||||
@@ -240,6 +241,7 @@
|
|||||||
:num="item.resources.length"
|
:num="item.resources.length"
|
||||||
:img-radius="10"
|
:img-radius="10"
|
||||||
style="width: 100%;"
|
style="width: 100%;"
|
||||||
|
@click="infoItemViewClick(item)"
|
||||||
/>
|
/>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
@@ -258,21 +260,21 @@
|
|||||||
<view class="flex">
|
<view class="flex">
|
||||||
<image
|
<image
|
||||||
v-if="!item.zanVo"
|
v-if="!item.zanVo"
|
||||||
:src="webUrl + '/page/hotel/zan-off.png'"
|
:src="webUrl + '/page/hotel/zan-off-2.png'"
|
||||||
class="zan-off-icon"
|
class="zan-off-icon"
|
||||||
@click="likeInfoItemHandle(item, index, 1)"
|
@click="likeInfoItemHandle(item, index, item.zan + 1, 1)"
|
||||||
/>
|
/>
|
||||||
<image
|
<image
|
||||||
v-else
|
v-else
|
||||||
:src="webUrl + '/page/hotel/zan-on.png'"
|
:src="webUrl + '/page/hotel/zan-on-2.png'"
|
||||||
class="zan-on-icon"
|
class="zan-on-icon"
|
||||||
@click="likeInfoItemHandle(item, index, 0)"
|
@click="likeInfoItemHandle(item, index, item.zan -1, 0)"
|
||||||
/>
|
/>
|
||||||
<!-- <image
|
<text
|
||||||
:src="webUrl + '/20230803151302213857.png'"
|
v-show="item.zan > 0"
|
||||||
class="icon"
|
:class="item.zanVo ? 'on' : ''"
|
||||||
/>
|
class="seeNum-txt"
|
||||||
<text class="seeNum-txt">{{ item.zan }}</text> -->
|
>{{ item.zan }}</text>
|
||||||
</view>
|
</view>
|
||||||
<view v-if="isMyInn" class="flex more-btn" @click="toggleMoreHandle(index)">
|
<view v-if="isMyInn" class="flex more-btn" @click="toggleMoreHandle(index)">
|
||||||
<image
|
<image
|
||||||
@@ -422,7 +424,8 @@ import {
|
|||||||
postHotelNewsDel,
|
postHotelNewsDel,
|
||||||
setTopHotelNew,
|
setTopHotelNew,
|
||||||
getHotelNewsZan,
|
getHotelNewsZan,
|
||||||
getHotelShareBackgroundImage
|
getHotelShareBackgroundImage,
|
||||||
|
hotelNewsView
|
||||||
} from "@/api/inn.js"
|
} from "@/api/inn.js"
|
||||||
import {formatDateTime} from "@/utils"
|
import {formatDateTime} from "@/utils"
|
||||||
import {getUrlParam} from "@/utils/common.js"
|
import {getUrlParam} from "@/utils/common.js"
|
||||||
@@ -657,6 +660,17 @@ export default {
|
|||||||
infoClick: function (info) {
|
infoClick: function (info) {
|
||||||
// this.$yrouter.push('/pagesInn/inn/innInfoDetail?id=' + info.id)
|
// this.$yrouter.push('/pagesInn/inn/innInfoDetail?id=' + info.id)
|
||||||
},
|
},
|
||||||
|
infoItemViewClick(item) {
|
||||||
|
uni.$u.debounce(() => {
|
||||||
|
hotelNewsView({ id: item.id }).finally(() => {
|
||||||
|
this.infoArray.map(info => {
|
||||||
|
if (info.id === item.id) {
|
||||||
|
info.pv += 1
|
||||||
|
}
|
||||||
|
})
|
||||||
|
})
|
||||||
|
}, 500)
|
||||||
|
},
|
||||||
publishBtnClick: function () {
|
publishBtnClick: function () {
|
||||||
this.$yrouter.push('/pagesInn/inn/innInfoPublish?hotelId=' + this.inn.id)
|
this.$yrouter.push('/pagesInn/inn/innInfoPublish?hotelId=' + this.inn.id)
|
||||||
},
|
},
|
||||||
@@ -916,15 +930,15 @@ export default {
|
|||||||
}, 3000)
|
}, 3000)
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
likeInfoItemHandle(item, index, value) {
|
likeInfoItemHandle(item, index, value, voValue) {
|
||||||
getHotelNewsZan(item.id).then(res => {
|
getHotelNewsZan(item.id).then(res => {
|
||||||
const { success } = res
|
const { success } = res
|
||||||
if (success) {
|
if (success) {
|
||||||
this.$dialog.toast({
|
this.$dialog.toast({
|
||||||
mes: '操作成功!'
|
mes: '操作成功!'
|
||||||
})
|
})
|
||||||
this.$set(this.infoArray[index], 'zanVo', value)
|
this.$set(this.infoArray[index], 'zan', value)
|
||||||
// this.fetchInnInfoList()
|
this.$set(this.infoArray[index], 'zanVo', voValue)
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
@@ -1374,13 +1388,18 @@ export default {
|
|||||||
margin: 0 8rpx 0 0;
|
margin: 0 8rpx 0 0;
|
||||||
}
|
}
|
||||||
.zan-off-icon {
|
.zan-off-icon {
|
||||||
width: 138rpx;
|
width: 40rpx;
|
||||||
height: 40rpx;
|
height: 40rpx;
|
||||||
}
|
}
|
||||||
.zan-on-icon {
|
.zan-on-icon {
|
||||||
width: 80rpx;
|
width: 40rpx;
|
||||||
height: 40rpx;
|
height: 40rpx;
|
||||||
}
|
}
|
||||||
|
.seeNum-txt {
|
||||||
|
&.on {
|
||||||
|
color: #D81E06;
|
||||||
|
}
|
||||||
|
}
|
||||||
.more-btn {
|
.more-btn {
|
||||||
position: relative;
|
position: relative;
|
||||||
.more-wrapper {
|
.more-wrapper {
|
||||||
|
|||||||
@@ -330,36 +330,36 @@ export default {
|
|||||||
})
|
})
|
||||||
},
|
},
|
||||||
submit() {
|
submit() {
|
||||||
if (this.innApplyInfo.logo.length === 0) {
|
if (!this.innApplyInfo.logo) {
|
||||||
this.$dialog.error('请上传店铺LOGO图片')
|
this.$dialog.error('请上传店铺LOGO')
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
if (this.innApplyInfo.cover.length === 0 && this.innApplyInfo.coverType === 1) {
|
if (!this.innApplyInfo.cover && this.innApplyInfo.coverType === 1) {
|
||||||
this.$dialog.error('请上传店铺封面图片')
|
this.$dialog.error('请上传店铺封面图片')
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
if (this.innApplyInfo.coverVideo.length === 0 && this.innApplyInfo.coverType === 2) {
|
if (!this.innApplyInfo.coverVideo && this.innApplyInfo.coverType === 2) {
|
||||||
this.$dialog.error('请上传店铺封面视频')
|
this.$dialog.error('请上传店铺封面视频')
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
if (this.innApplyInfo.ownerName.length === 0) {
|
if (!this.innApplyInfo.ownerName) {
|
||||||
this.$dialog.error('请输入店主名字')
|
this.$dialog.error('请输入店主名字')
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
if (this.innApplyInfo.content.length === 0) {
|
if (!this.innApplyInfo.content) {
|
||||||
this.$dialog.error('请输入一句话介绍')
|
this.$dialog.error('请输入一句话介绍')
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
if (this.innApplyInfo.desc.length === 0) {
|
// if (!this.innApplyInfo.desc) {
|
||||||
this.$dialog.error('请输入店铺简介')
|
// this.$dialog.error('请输入店铺简介')
|
||||||
return
|
// return
|
||||||
}
|
// }
|
||||||
if (this.uploadedFilesArray.length === 0) {
|
if (this.uploadedFilesArray.length === 0) {
|
||||||
this.$dialog.error('请上传至少一张店铺图片')
|
this.$dialog.error('请上传店铺图片')
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
if (this.uploadedQualificationFilesArray.length === 0) {
|
if (this.uploadedQualificationFilesArray.length === 0) {
|
||||||
this.$dialog.error('请上传至少一张店铺资质图片')
|
this.$dialog.error('请上传资质图片')
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
// 深拷贝
|
// 深拷贝
|
||||||
|
|||||||
@@ -49,15 +49,13 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import {userUnionId} from "@/api/public";
|
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "room",
|
name: "room",
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
webUrl: this.$VUE_APP_RESOURCES_URL,
|
webUrl: this.$VUE_APP_RESOURCES_URL,
|
||||||
token: null,
|
token: null,
|
||||||
unionId: null,
|
uid: null,
|
||||||
userInfo: null,
|
userInfo: null,
|
||||||
storeId: null,
|
storeId: null,
|
||||||
merName: null,
|
merName: null,
|
||||||
@@ -82,7 +80,8 @@ export default {
|
|||||||
}
|
}
|
||||||
this.token = uni.getStorageSync("login_status");
|
this.token = uni.getStorageSync("login_status");
|
||||||
this.userInfo = uni.getStorageSync("userInfo");
|
this.userInfo = uni.getStorageSync("userInfo");
|
||||||
this.getUnionId();
|
this.uid = this.userInfo.uid
|
||||||
|
this.connectSocketInit()
|
||||||
},
|
},
|
||||||
onUnload() {
|
onUnload() {
|
||||||
if (this.socketOpen) {
|
if (this.socketOpen) {
|
||||||
@@ -90,15 +89,6 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
getUnionId() {
|
|
||||||
userUnionId().then(res => {
|
|
||||||
if (res.success) {
|
|
||||||
this.unionId = res.data;
|
|
||||||
this.connectSocketInit();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
getUploadToken() {
|
getUploadToken() {
|
||||||
let that = this;
|
let that = this;
|
||||||
|
|
||||||
@@ -136,7 +126,7 @@ export default {
|
|||||||
let param = {
|
let param = {
|
||||||
type: "msg",
|
type: "msg",
|
||||||
user_type: 0,
|
user_type: 0,
|
||||||
unionid: that.unionId,
|
uid: that.uid,
|
||||||
username: that.userInfo.nickname,
|
username: that.userInfo.nickname,
|
||||||
header: that.userInfo.avatar,
|
header: that.userInfo.avatar,
|
||||||
room_id: that.roomId,
|
room_id: that.roomId,
|
||||||
@@ -201,7 +191,7 @@ export default {
|
|||||||
let param = {
|
let param = {
|
||||||
type: "msg",
|
type: "msg",
|
||||||
user_type: 0,
|
user_type: 0,
|
||||||
unionid: this.unionId,
|
uid: this.uid,
|
||||||
username: this.userInfo.nickname,
|
username: this.userInfo.nickname,
|
||||||
header: this.userInfo.avatar,
|
header: this.userInfo.avatar,
|
||||||
room_id: this.roomId,
|
room_id: this.roomId,
|
||||||
@@ -217,7 +207,7 @@ export default {
|
|||||||
let param = {
|
let param = {
|
||||||
type: "join",
|
type: "join",
|
||||||
user_type: 0,
|
user_type: 0,
|
||||||
unionid: this.unionId,
|
uid: this.uid,
|
||||||
username: this.userInfo.nickname,
|
username: this.userInfo.nickname,
|
||||||
header: this.userInfo.avatar,
|
header: this.userInfo.avatar,
|
||||||
store_id: this.storeId
|
store_id: this.storeId
|
||||||
|
|||||||
@@ -1,17 +1,21 @@
|
|||||||
<template>
|
<template>
|
||||||
<view class="common-roomLogs">
|
<view class="common-roomLogs">
|
||||||
<view class="item flex" v-for="(item,index) in list" :key="index" @click="goRoom(item)"
|
<view v-if="list.length > 0">
|
||||||
v-if="list.length>0">
|
<view
|
||||||
<image class="cover flex-0" :src="item.store_avatar || webUrl+'/20221114155314348118.png'"/>
|
v-for="(item,index) in list"
|
||||||
<view>
|
:key="index" @click="goRoom(item)"
|
||||||
<view class="flex jc-between ai-center">
|
class="item flex"
|
||||||
<view class="name">{{ item.store_name }}</view>
|
>
|
||||||
<view class="datetime" v-if="item.last_msg">{{ item.last_msg.created_at }}</view>
|
<image class="cover flex-0" :src="item.store_avatar || webUrl+'/20221114155314348118.png'"/>
|
||||||
|
<view>
|
||||||
|
<view class="flex jc-between ai-center">
|
||||||
|
<view class="name">{{ item.store_name }}</view>
|
||||||
|
<view class="datetime" v-if="item.last_msg">{{ item.last_msg.created_at }}</view>
|
||||||
|
</view>
|
||||||
|
<view class="sub one-t" v-if="item.last_msg">{{ item.last_msg.msg_type===0?item.last_msg.msg_content:'[图片]' }}</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="sub one-t" v-if="item.last_msg">{{ item.last_msg.msg_type===0?item.last_msg.msg_content:'[图片]' }}</view>
|
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
<view class="v4-nodata" v-if="list.length===0">
|
<view class="v4-nodata" v-if="list.length===0">
|
||||||
<image src="@/static/images/img_nodata.png" mode="scaleToFill"/>
|
<image src="@/static/images/img_nodata.png" mode="scaleToFill"/>
|
||||||
<view class="text">暂无数据</view>
|
<view class="text">暂无数据</view>
|
||||||
@@ -20,42 +24,35 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import {userUnionId} from "@/api/public";
|
import { mapGetters } from 'vuex'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "roomLogs",
|
name: 'RoomLogs',
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
webUrl:this.$VUE_APP_RESOURCES_URL,
|
webUrl:this.$VUE_APP_RESOURCES_URL,
|
||||||
unionId: null,
|
uid: null,
|
||||||
list: []
|
list: []
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
computed: mapGetters(['userInfo']),
|
||||||
onShow() {
|
onShow() {
|
||||||
this.getUnionId();
|
this.uid = this.userInfo.uid
|
||||||
|
this.fetchList()
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
goRoom(item) {
|
goRoom(item) {
|
||||||
uni.navigateTo({url: `/pkg_common/views/room?id=${item.store_id}&name=${item.store_name}`})
|
uni.navigateTo({url: `/pkg_common/views/room?id=${item.store_id}&name=${item.store_name}`})
|
||||||
},
|
},
|
||||||
|
|
||||||
getUnionId() {
|
|
||||||
userUnionId().then(res => {
|
|
||||||
if (res.success) {
|
|
||||||
this.unionId = res.data;
|
|
||||||
this.fetchList();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
fetchList() {
|
fetchList() {
|
||||||
|
const _this = this
|
||||||
uni.request({
|
uni.request({
|
||||||
url: this.$SERVICE_API_URL + "/customer-chat-list",
|
url: _this.$SERVICE_API_URL + '/customer-chat-list',
|
||||||
method: "POST",
|
method: 'POST',
|
||||||
data: {unionid: this.unionId},
|
data: {uid: _this.uid},
|
||||||
success: res => {
|
success: res => {
|
||||||
if (res.data.status_code === 200) {
|
if (res.data.status_code === 200) {
|
||||||
this.list = res.data.content;
|
_this.list = res.data.content
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|||||||
+19
-16
@@ -218,6 +218,7 @@
|
|||||||
<u-input
|
<u-input
|
||||||
v-model="form.phone"
|
v-model="form.phone"
|
||||||
:disabled="reviewing"
|
:disabled="reviewing"
|
||||||
|
maxlength="11"
|
||||||
type="number"
|
type="number"
|
||||||
border="none"
|
border="none"
|
||||||
placeholder="请填写联系方式"
|
placeholder="请填写联系方式"
|
||||||
@@ -537,8 +538,8 @@ export default {
|
|||||||
},
|
},
|
||||||
getCode() {
|
getCode() {
|
||||||
if (this.reviewing) return
|
if (this.reviewing) return
|
||||||
if (this.form.phone.length === 0) {
|
if (!this.form.phone) {
|
||||||
uni.$u.toast('请输入位手机号')
|
uni.$u.toast('请输入手机号')
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
if (this.form.phone.length !== 11) {
|
if (this.form.phone.length !== 11) {
|
||||||
@@ -584,20 +585,22 @@ export default {
|
|||||||
}
|
}
|
||||||
this.isDraft = data.isDraft
|
this.isDraft = data.isDraft
|
||||||
this.reviewStatus = data.reviewStatus
|
this.reviewStatus = data.reviewStatus
|
||||||
switch (data.reviewStatus) {
|
if (data.isDraft !== 1) {
|
||||||
case 0:
|
switch (data.reviewStatus) {
|
||||||
this.stateTitle = '审核中'
|
case 0:
|
||||||
this.stateType = 'primary'
|
this.stateTitle = '审核中'
|
||||||
this.reviewing = true
|
this.stateType = 'primary'
|
||||||
break
|
this.reviewing = true
|
||||||
case 1:
|
break
|
||||||
this.reviewing = false
|
case 1:
|
||||||
break
|
this.reviewing = false
|
||||||
case 2:
|
break
|
||||||
this.stateTitle = '审核驳回:' + data.reviewMsg
|
case 2:
|
||||||
this.stateType = 'error'
|
this.stateTitle = '审核驳回:' + data.reviewMsg
|
||||||
this.reviewing = false
|
this.stateType = 'error'
|
||||||
break
|
this.reviewing = false
|
||||||
|
break
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if (data.hotelInfo) {
|
if (data.hotelInfo) {
|
||||||
// 店铺图片
|
// 店铺图片
|
||||||
|
|||||||
+20
-17
@@ -76,6 +76,7 @@
|
|||||||
<template #value>
|
<template #value>
|
||||||
<u-input
|
<u-input
|
||||||
v-model="formSupplier.phone"
|
v-model="formSupplier.phone"
|
||||||
|
maxlength="11"
|
||||||
:disabled="reviewing"
|
:disabled="reviewing"
|
||||||
type="number"
|
type="number"
|
||||||
border="none"
|
border="none"
|
||||||
@@ -718,11 +719,11 @@ export default {
|
|||||||
},
|
},
|
||||||
getCode() {
|
getCode() {
|
||||||
if (this.reviewing) return
|
if (this.reviewing) return
|
||||||
if (this.form.phone.length === 0) {
|
if (!this.formSupplier.phone) {
|
||||||
uni.$u.toast('请输入位手机号')
|
uni.$u.toast('请输入手机号')
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
if (this.form.phone.length !== 11) {
|
if (this.formSupplier.phone.length !== 11) {
|
||||||
uni.$u.toast('请输入11位手机号')
|
uni.$u.toast('请输入11位手机号')
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
@@ -765,20 +766,22 @@ export default {
|
|||||||
}
|
}
|
||||||
this.isDraft = data.isDraft
|
this.isDraft = data.isDraft
|
||||||
this.reviewStatus = data.reviewStatus
|
this.reviewStatus = data.reviewStatus
|
||||||
switch (data.reviewStatus) {
|
if (data.isDraft !== 1) {
|
||||||
case 0:
|
switch (data.reviewStatus) {
|
||||||
this.stateTitle = '审核中'
|
case 0:
|
||||||
this.stateType = 'primary'
|
this.stateTitle = '审核中'
|
||||||
this.reviewing = true
|
this.stateType = 'primary'
|
||||||
break
|
this.reviewing = true
|
||||||
case 1:
|
break
|
||||||
this.reviewing = false
|
case 1:
|
||||||
break
|
this.reviewing = false
|
||||||
case 2:
|
break
|
||||||
this.stateTitle = '审核驳回:' + data.reviewMsg
|
case 2:
|
||||||
this.stateType = 'error'
|
this.stateTitle = '审核驳回:' + data.reviewMsg
|
||||||
this.reviewing = false
|
this.stateType = 'error'
|
||||||
break
|
this.reviewing = false
|
||||||
|
break
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if (data.hotelInfo) {
|
if (data.hotelInfo) {
|
||||||
// 店铺图片
|
// 店铺图片
|
||||||
|
|||||||
@@ -77,6 +77,7 @@
|
|||||||
<u-input
|
<u-input
|
||||||
v-model="form.phone"
|
v-model="form.phone"
|
||||||
:disabled="reviewing"
|
:disabled="reviewing"
|
||||||
|
maxlength="11"
|
||||||
type="number"
|
type="number"
|
||||||
border="none"
|
border="none"
|
||||||
placeholder="请填写联系方式"
|
placeholder="请填写联系方式"
|
||||||
@@ -136,11 +137,16 @@
|
|||||||
v-if="!form.qualification"
|
v-if="!form.qualification"
|
||||||
class="btn-upload"
|
class="btn-upload"
|
||||||
>上传图片</view>
|
>上传图片</view>
|
||||||
<image
|
<view v-else>
|
||||||
v-else
|
<view v-if="qualificationArr.length > 0" class="flex">
|
||||||
:src="form.qualification"
|
<image
|
||||||
class="img-preview"
|
v-for="(item, index) in qualificationArr"
|
||||||
/>
|
:key="index"
|
||||||
|
:src="item"
|
||||||
|
class="img-preview"
|
||||||
|
/>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
</u-cell>
|
</u-cell>
|
||||||
@@ -298,6 +304,7 @@ export default {
|
|||||||
},
|
},
|
||||||
district: [],
|
district: [],
|
||||||
address: {},
|
address: {},
|
||||||
|
qualificationArr: [],
|
||||||
isAgree: false,
|
isAgree: false,
|
||||||
show: false,
|
show: false,
|
||||||
notice: '',
|
notice: '',
|
||||||
@@ -327,8 +334,8 @@ export default {
|
|||||||
},
|
},
|
||||||
getCode() {
|
getCode() {
|
||||||
if (this.reviewing) return
|
if (this.reviewing) return
|
||||||
if (this.form.phone.length === 0) {
|
if (!this.form.phone) {
|
||||||
uni.$u.toast('请输入位手机号')
|
uni.$u.toast('请输入手机号')
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
if (this.form.phone.length !== 11) {
|
if (this.form.phone.length !== 11) {
|
||||||
@@ -372,23 +379,28 @@ export default {
|
|||||||
this.isDraft = data.isDraft
|
this.isDraft = data.isDraft
|
||||||
this.reviewStatus = data.reviewStatus
|
this.reviewStatus = data.reviewStatus
|
||||||
}
|
}
|
||||||
switch (data.reviewStatus) {
|
if (data.isDraft !== 1) {
|
||||||
case 0:
|
switch (data.reviewStatus) {
|
||||||
this.stateTitle = '审核中'
|
case 0:
|
||||||
this.stateType = 'primary'
|
this.stateTitle = '审核中'
|
||||||
this.reviewing = true
|
this.stateType = 'primary'
|
||||||
break;
|
this.reviewing = true
|
||||||
case 1:
|
break;
|
||||||
this.reviewing = false
|
case 1:
|
||||||
break;
|
this.reviewing = false
|
||||||
case 2:
|
break;
|
||||||
this.stateTitle = '审核驳回:' + data.reviewMsg
|
case 2:
|
||||||
this.stateType = 'error'
|
this.stateTitle = '审核驳回:' + data.reviewMsg
|
||||||
this.reviewing = false
|
this.stateType = 'error'
|
||||||
break;
|
this.reviewing = false
|
||||||
|
break;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if (data.wholesalerInfo) {
|
if (data.wholesalerInfo) {
|
||||||
this.form = data.wholesalerInfo
|
this.form = data.wholesalerInfo
|
||||||
|
if (this.form.qualification) {
|
||||||
|
this.qualificationArr = this.form.qualification.split(',')
|
||||||
|
}
|
||||||
this.form.position = this.$forceToDecimal(this.form.longitude, 6) + ',' + this.$forceToDecimal(this.form.latitude, 6)
|
this.form.position = this.$forceToDecimal(this.form.longitude, 6) + ',' + this.$forceToDecimal(this.form.latitude, 6)
|
||||||
this.form.area = `${this.form.provinceName} ${this.form.cityName} ${this.form.areaName}`
|
this.form.area = `${this.form.provinceName} ${this.form.cityName} ${this.form.areaName}`
|
||||||
}
|
}
|
||||||
@@ -403,6 +415,7 @@ export default {
|
|||||||
break
|
break
|
||||||
case 'licence':
|
case 'licence':
|
||||||
this.form.qualification = img
|
this.form.qualification = img
|
||||||
|
this.qualificationArr = [img]
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -258,8 +258,8 @@ export default {
|
|||||||
font-size: 12px;
|
font-size: 12px;
|
||||||
color: #fff;
|
color: #fff;
|
||||||
.good-img {
|
.good-img {
|
||||||
width: 96px;
|
width: 90px;
|
||||||
height: 96px;
|
height: 90px;
|
||||||
.img {
|
.img {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
|
|||||||
@@ -7,13 +7,13 @@
|
|||||||
type="text"
|
type="text"
|
||||||
placeholder="搜索内容"
|
placeholder="搜索内容"
|
||||||
placeholder-style="color:#949494"
|
placeholder-style="color:#949494"
|
||||||
@confirm="search"
|
@confirm="searchClick"
|
||||||
>
|
>
|
||||||
<image
|
<image
|
||||||
:src="webUrl+'/20220903142935869059.png'"
|
:src="webUrl+'/20220903142935869059.png'"
|
||||||
class="icon"
|
class="icon"
|
||||||
mode="scaleToFill"
|
mode="scaleToFill"
|
||||||
@click="search"
|
@click="searchClick"
|
||||||
/>
|
/>
|
||||||
</view>
|
</view>
|
||||||
<swiper
|
<swiper
|
||||||
@@ -101,7 +101,7 @@
|
|||||||
@click="goStore(item.id)"
|
@click="goStore(item.id)"
|
||||||
>
|
>
|
||||||
<image
|
<image
|
||||||
:src="item.cover"
|
:src="item.cover + (item.coverType === 2 ? '?vframe/jpg/offset/1' : '')"
|
||||||
class="cover"
|
class="cover"
|
||||||
mode="scaleToFill"
|
mode="scaleToFill"
|
||||||
/>
|
/>
|
||||||
@@ -115,7 +115,11 @@
|
|||||||
<view class="one-t">{{ item.name }}</view>
|
<view class="one-t">{{ item.name }}</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="item" @click="goGoods(item.id)" v-else>
|
<view
|
||||||
|
v-else
|
||||||
|
class="item"
|
||||||
|
@click="goGoods(item.id)"
|
||||||
|
>
|
||||||
<image
|
<image
|
||||||
:src="item.image"
|
:src="item.image"
|
||||||
class="cover"
|
class="cover"
|
||||||
@@ -178,7 +182,7 @@ export default {
|
|||||||
})
|
})
|
||||||
fetchCity(4).then(({data}) => {
|
fetchCity(4).then(({data}) => {
|
||||||
this.asideList = data.group
|
this.asideList = data.group
|
||||||
this.search()
|
this.searchReq()
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
changeTab(index) {
|
changeTab(index) {
|
||||||
@@ -187,13 +191,17 @@ export default {
|
|||||||
this.page = 1
|
this.page = 1
|
||||||
this.dataList = []
|
this.dataList = []
|
||||||
this.tabIndex = index
|
this.tabIndex = index
|
||||||
this.search()
|
this.searchReq()
|
||||||
},
|
},
|
||||||
onLower() {
|
onLower() {
|
||||||
this.page++
|
this.page++
|
||||||
this.search()
|
this.searchReq()
|
||||||
},
|
},
|
||||||
search() {
|
searchClick() {
|
||||||
|
this.page = 1
|
||||||
|
this.searchReq()
|
||||||
|
},
|
||||||
|
searchReq() {
|
||||||
let param = {
|
let param = {
|
||||||
page: this.page,
|
page: this.page,
|
||||||
limit: 10,
|
limit: 10,
|
||||||
@@ -235,7 +243,7 @@ export default {
|
|||||||
this.asideIndex = index
|
this.asideIndex = index
|
||||||
this.page = 1
|
this.page = 1
|
||||||
this.dataList = []
|
this.dataList = []
|
||||||
this.search()
|
this.searchReq()
|
||||||
},
|
},
|
||||||
goStore(id) {
|
goStore(id) {
|
||||||
uni.navigateTo({
|
uni.navigateTo({
|
||||||
|
|||||||
@@ -1,15 +1,33 @@
|
|||||||
<template>
|
<template>
|
||||||
<view class="container">
|
<view class="container">
|
||||||
<mescroll-body ref="mescrollRef" top="0" bottom="0" class='cotent-scroll' :up="upOption" :down="downOption"
|
<mescroll-body
|
||||||
@up="upCallback" @down="downCallback" @init="mescrollInit" @emptyclick="emptyClick">
|
ref="mescrollRef"
|
||||||
|
:up="upOption"
|
||||||
|
:down="downOption"
|
||||||
|
top="0"
|
||||||
|
bottom="0"
|
||||||
|
class='cotent-scroll'
|
||||||
|
@up="upCallback"
|
||||||
|
@down="downCallback"
|
||||||
|
@init="mescrollInit"
|
||||||
|
@emptyclick="emptyClick"
|
||||||
|
>
|
||||||
<view id="dataList" class="data-list acea-row row-column">
|
<view id="dataList" class="data-list acea-row row-column">
|
||||||
<view class="item acea-row row-column" :style="{'background':card.bgColor}" :key="index"
|
<view
|
||||||
v-for="(card, index) in list" @click="cardClick(card)">
|
v-for="(card, index) in list"
|
||||||
|
:key="index"
|
||||||
|
:style="{'background':card.bgColor}"
|
||||||
|
class="item acea-row row-column"
|
||||||
|
@click="cardClick(card)"
|
||||||
|
>
|
||||||
<view class="acea-row row-column">
|
<view class="acea-row row-column">
|
||||||
<view class="acea-row row-between">
|
<view class="acea-row row-between">
|
||||||
<view class="txt-bankname">{{ card.bankName }}</view>
|
<view class="txt-bankname">{{ card.bankName }}</view>
|
||||||
<view class="unbind-btn" @click="unbindCard(index)">解除绑定</view>
|
<view
|
||||||
|
v-if="!isSelectMode"
|
||||||
|
class="unbind-btn"
|
||||||
|
@click.stop="unbindCard(index)"
|
||||||
|
>解除绑定</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="acea-row row-middle" style="margin-top: 58rpx;flex-wrap: nowrap;">
|
<view class="acea-row row-middle" style="margin-top: 58rpx;flex-wrap: nowrap;">
|
||||||
<view class="acea-row row-left" style="flex: 1;margin-right: 18rpx;">
|
<view class="acea-row row-left" style="flex: 1;margin-right: 18rpx;">
|
||||||
@@ -151,8 +169,6 @@ export default {
|
|||||||
// });
|
// });
|
||||||
uni.setStorageSync("selectedBankCard", JSON.stringify(card));
|
uni.setStorageSync("selectedBankCard", JSON.stringify(card));
|
||||||
this.$yrouter.back();
|
this.$yrouter.back();
|
||||||
} else {
|
|
||||||
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
addBtnClick: function () {
|
addBtnClick: function () {
|
||||||
|
|||||||
@@ -20,7 +20,7 @@
|
|||||||
|
|
||||||
<view class="list flex flex-wrap" v-if="list.length">
|
<view class="list flex flex-wrap" v-if="list.length">
|
||||||
<view class="item" v-for="item in list" :key="item.id" @click="goStore(item)">
|
<view class="item" v-for="item in list" :key="item.id" @click="goStore(item)">
|
||||||
<image class="image" :src="item.cover" mode="scaleToFill"></image>
|
<image class="image" :src="item.cover + (item.coverType === 2 ? '?vframe/jpg/offset/1' : '')" mode="scaleToFill"></image>
|
||||||
|
|
||||||
<view class="title more-t">{{ item.content }}</view>
|
<view class="title more-t">{{ item.content }}</view>
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user