wangfukang 4 weeks ago
parent
commit
0e0e4f78f9
  1. 227
      package2/shop/businessInfo.vue
  2. 21
      package2/shop/merchantCenter.vue
  3. 260
      package2/shop/shopInfo.vue
  4. 10
      pages.json

227
package2/shop/businessInfo.vue

@ -0,0 +1,227 @@
<template>
<view class="page1">
<view class="list-box">
<view class="list-1">
<view class="list-name">
营业开始时间
</view>
<view class="list-right">
<picker mode="time" :value="shop.businessHourBegin" start="00:00" end="23:59"
@change="bindTimeChange($event,'start')">
<view class="uni-input">{{shop.businessHourBegin}}</view>
</picker>
</view>
</view>
<view class="list-1">
<view class="list-name">
营业结束时间
</view>
<view class="list-right">
<picker mode="time" :value="shop.businessHourEnd" start="00:00" end="23:59"
@change="bindTimeChange($event,'end')">
<view class="uni-input">{{shop.businessHourEnd}}</view>
</picker>
</view>
</view>
<view class="list-1">
<view class="list-name">
营业状态
</view>
<view class="list-right">
{{shop.status == 0?'正常营业':shop.status == 1?'暂停营业':'冻结'}}
</view>
</view>
<view class="list-1">
<view class="list-name">
拼团佣金
</view>
<view class="list-right">
{{shop.commissionRateMore}}
</view>
</view>
<view class="list-1">
<view class="list-name">
单独购买佣金
</view>
<view class="list-right">
{{shop.commissionRateOne}}
</view>
</view>
<view class="list-1">
<view class="list-name">
经营品类
</view>
<view class="list-right">
{{shop.type}}
</view>
</view>
<view class="list-1">
<view class="list-name">
是否支持配送
</view>
<view class="list-right">
{{shop.isDelivery == 0?'是':'否'}}
</view>
</view>
<view class="list-1">
<view class="list-name">
出餐时间
</view>
<view class="list-right">
{{shop.cookingTime}}分钟
</view>
</view>
<view class="list-1">
<view class="list-name">
排名
</view>
<view class="list-right">
{{shop.shoprank}}
</view>
</view>
<view class="list-1">
<view class="list-name">
是否价格锁定
</view>
<view class="list-right">
{{shop.isPriceLock== 0?'是':'否'}}
</view>
</view>
</view>
<view class="list-box">
<view class="list-2" @click="submit">
保存
</view>
</view>
</view>
</template>
<script>
export default {
data() {
return {
shop: {}
}
},
onLoad() {
this.getShopMsg()
},
methods: {
getShopMsg() {
this.tui.request("/app/shoptakeaway/getByShopId", "get", {
shopId: uni.getStorageSync('shopId')
}, false, true).then((res) => {
if (res.code == 200) {
this.shop = res.result
for (let key in this.shop) {
if (this.shop[key] === null) {
delete this.shop[key];
}
}
} else {
this.tui.toast(res.message)
}
uni.hideLoading()
}).catch((res) => {})
},
bindTimeChange(e, type) {
if (type == 'start') {
this.shop.businessHourBegin = e.detail.value
} else {
this.shop.businessHourEnd = e.detail.value
}
},
submit() {
this.tui.request("/app/shoptakeaway/update", "POST", this.shop, false, true).then((res) => {
if (res.code == 200) {
uni.showModal({
title: '提示',
content: '更新信息成功',
showCancel: false,
success: function(res) {
if (res.confirm) {
uni.navigateBack()
}
}
});
} else {
this.tui.toast(res.message)
}
uni.hideLoading()
}).catch((res) => {})
}
}
}
</script>
<style>
page,
.page1 {
width: 100%;
height: 100%;
font-size: 28rpx;
background: #eee;
}
.list-box {
width: 100%;
height: auto;
background: #fff;
margin-top: 20rpx;
}
.list-1 {
display: flex;
width: 100%;
height: 100rpx;
line-height: 100rpx;
border-bottom: 1px solid #eee;
}
.list-2 {
width: 100%;
height: 100rpx;
line-height: 100rpx;
text-align: center;
border-bottom: 1px solid #eee;
}
.list-icon {
width: 100rpx;
height: 100rpx;
text-align: center;
}
.list-name {
flex: 1;
padding-left: 20rpx;
}
.list-right {
flex: 1;
height: 100rpx;
text-align: right;
padding-right: 20rpx;
overflow: hidden;
}
.upload-img {
width: 60rpx;
height: 60rpx;
background-size: 100%;
margin-top: 20rpx;
}
.list-2 {
width: 100%;
height: 100rpx;
line-height: 100rpx;
text-align: center;
border-bottom: 1px solid #eee;
}
</style>

21
package2/shop/merchantCenter.vue

@ -126,14 +126,14 @@
商品管理
</view>
</view>
<!-- <view class="menu22" @tap="goDetail('dp')">
<view class="menu22" @tap="goDetail('yy')">
<view class="menu33">
<img src="/static/images/dingdan/dd1.png" alt="" />
</view>
<view class="menu44">
店铺管理
营业信息
</view>
</view>
</view> -->
<view class="menu22" @tap="goDetail('dd')">
<view class="menu33">
<img src="/static/images/dingdan/dd2.png" alt="" />
@ -158,6 +158,14 @@
顾客评价
</view>
</view>
<view class="menu22" @tap="goDetail('sjxx')">
<view class="menu33">
<img src="/static/images/dingdan/dd2.png" alt="" />
</view>
<view class="menu44">
商家信息
</view>
</view>
<view class="menu22" @tap="goDetail('hx')">
<view class="menu33" style="width: 100%;height: 56rpx;">
<uni-icons type="scan" size="25"></uni-icons>
@ -270,8 +278,11 @@
case 'sp':
url = '/package2/myCenter/goodsList'
break;
case 'dp':
url = ''
case 'yy':
url = '/package2/shop/businessInfo'
break;
case 'sjxx':
url = '/package2/shop/shopInfo'
break;
case 'dd':
url = '/package2/shop/shopOrderList'

260
package2/shop/shopInfo.vue

@ -0,0 +1,260 @@
<template>
<view class="page1">
<view class="list-box">
<view class="list-1">
<view class="list-name">
门头图
</view>
<view class="list-right" @tap="pictureAdd('mentou')">
<view class="upload-img" v-if="shop.shopIcon ==''" style="background: #eee;text-align: center;line-height: 100rpx;">
<uni-icons type="camera" size="28" color="#777"></uni-icons>
</view>
<image :src="shop.shopIcon" v-if="shop.shopIcon !=''" mode="" class="upload-img"></image>
</view>
</view>
<view class="list-1">
<view class="list-name">
店铺名称
</view>
<view class="list-right">
{{shop.shopName}}
</view>
</view>
<view class="list-1">
<view class="list-name">
副标题
</view>
<view class="list-right">
<input type="text" placeholder="请输入副标题" v-model="shop.subtitle" style="height: 100rpx;line-height: 100rpx;" />
</view>
</view>
<view class="list-1">
<view class="list-name">
店铺地址
</view>
<view class="list-right">
{{shop.shopAddress}}
</view>
</view>
<!-- <view class="list-1">
<view class="list-name">
店铺环境
</view>
<view class="list-right">
<image :src="huanjing" mode=""></image>
</view>
</view> -->
<view class="list-1">
<view class="list-name">
身份证
</view>
<view class="list-right">
<image :src="shopImages[0]" mode="" class="upload-img"></image>
</view>
</view>
<view class="list-1">
<view class="list-name">
营业执照
</view>
<view class="list-right">
<image :src="shopImages[2]" mode="" class="upload-img"></image>
</view>
</view>
<view class="list-1">
<view class="list-name">
补充证照
</view>
<view class="list-right">
<image :src="huanjing" mode="" class="upload-img"></image>
</view>
</view>
<view class="list-1">
<view class="list-name">
支付宝账号
</view>
<view class="list-right">
<input type="text" placeholder="请输入支付宝账号" v-model="shop.aliAccount" style="height: 100rpx;line-height: 100rpx;" />
</view>
</view>
<view class="list-1">
<view class="list-name">
支付宝实名
</view>
<view class="list-right">
<input type="text" placeholder="请输入支付宝账号" v-model="shop.aliName" style="height: 100rpx;line-height: 100rpx;" />
</view>
</view>
</view>
<view class="list-box">
<view class="list-2" @click="submit">
保存
</view>
</view>
</view>
</template>
<script>
export default {
data() {
return {
shop:{},
shopImages:[],
huanjing:''
}
},
onLoad() {
this.shop = JSON.parse(uni.getStorageSync('shop'));
this.shopImages = this.shop.shopImages.split('@@')
this.huanjing = JSON.parse(this.shopImages[3])[0]
for (let key in this.shop) {
if (this.shop[key] === null) {
delete this.shop[key];
}
}
},
methods: {
navigatorTo(e){
let url = ""
if(e=='addgoods'){
url = '/package1/myCenter/addGoods'
}else if(e=='merchant'){
url = '/package1/myCenter/myMerchant'
}else if(e == 'xiugaixinxi'){
url = '/pages/myCenter/shopDetail'
}
uni.navigateTo({
url: url
})
},
pictureAdd(type) {
let that = this
uni.chooseMedia({
count: type == 'qita'?9:1,
mediaType: ['image'],
sourceType: ['album', 'camera'],
success(res) {
uni.showLoading({
title: '加载中...',
mask: true
})
for (let i = 0; i < res.tempFiles.length; i++) {
that.upLoadFile(res.tempFiles[i].tempFilePath,type)
}
}
})
},
async upLoadFile(path,type) {
let that = this;
let hiver_token = uni.getStorageSync("hiver_token")
await uni.uploadFile({
url: getApp().globalData.mainurl + '/upload/file',
filePath: path,
name: 'file',
header: {
"content-type": "multipart/form-data",
'accessToken': hiver_token
},
formData: {},
success: (uploadFileRes) => {
let pathData = JSON.parse(uploadFileRes.data)
that.shop.shopIcon = pathData.result
that.$forceUpdate()
},
fail: (err) => {
uni.hideLoading();
uni.showToast({
title: JSON.stringify(err),
icon: 'none'
})
}
});
await setTimeout(res => {
uni.hideLoading();
}, 1000)
},
submit(){
that.tui.request("/app/shop/edit", "PUT", this.shop, false, true).then((res) => {
if (res.code == 200) {
uni.showModal({
title: '提示',
content: '更新信息成功',
showCancel:false,
success: function (res) {
uni.setStorageSync('shop',this.shop)
if (res.confirm) {
uni.navigateBack()
}
}
});
} else {
that.tui.toast(res.message)
}
uni.hideLoading()
}).catch((res) => {})
}
}
}
</script>
<style>
page,.page1{
width: 100%;
height: 100%;
font-size: 28rpx;
background: #eee;
}
.list-box{
width: 100%;
height: auto;
background: #fff;
margin-top: 20rpx;
}
.list-1{
display: flex;
width: 100%;
height: 100rpx;
line-height: 100rpx;
border-bottom: 1px solid #eee;
}
.list-2{
width: 100%;
height: 100rpx;
line-height: 100rpx;
text-align: center;
border-bottom: 1px solid #eee;
}
.list-icon{
width: 100rpx;
height: 100rpx;
text-align: center;
}
.list-name{
flex: 1;
padding-left: 20rpx;
}
.list-right{
flex: 1;
height: 100rpx;
text-align: right;
padding-right: 20rpx;
overflow: hidden;
}
.upload-img{
width:60rpx;
height: 60rpx;
background-size: 100%;
margin-top: 20rpx;
}
.list-2{
width: 100%;
height: 100rpx;
line-height: 100rpx;
text-align: center;
border-bottom: 1px solid #eee;
}
</style>

10
pages.json

@ -260,6 +260,16 @@
"navigationBarTitleText": "我的发布",
"navigationStyle": "custom"
}
},{
"path": "shop/businessInfo",
"style": {
"navigationBarTitleText": "营业信息"
}
},{
"path": "shop/shopInfo",
"style": {
"navigationBarTitleText": "营业信息"
}
},{
"path": "shop/orderDetail",
"style": {

Loading…
Cancel
Save