You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
yanzong_qianduan/pages/news/consult/storeEdit.vue

237 lines
5.3 KiB

4 months ago
<template>
<view class="addressList">
<view class="addressList-hd">
<!-- <view class="items">
<view class="a">门店相册图片<text>(最多可上传 5 尺寸 230px*236px 大小5M</text></view>
<view class="c">
<u-upload :action="action" :header="header" width="160" @on-uploaded="success" max-count="5"
height="160" :file-list="fileList" :custom-btn="true" :max-size="1 * 1024 * 1024">
<template v-slot:addBtn>
<view class="slot-btn" hover-class="slot-btn__hover" hover-stay-time="150">
<image src="/static/news/icon-upload.png"></image>
<view class="1">上传图片</view>
</view>
</template>
</u-upload>
</view>
</view> -->
<view class="items">
<view class="a">进群分享图<text></text></view>
<view class="c">
<u-upload :action="action" :header="header" @on-remove="onRemove" @on-uploaded="success" width="160"
height="160" :file-list="fileList" :custom-btn="true" max-count="1">
<template v-slot:addBtn>
<view class="slot-btn" hover-class="slot-btn__hover" hover-stay-time="150">
<image :src="$picUrl + '/static/news/icon-upload.png'"></image>
<view class="1">上传图片</view>
</view>
</template>
</u-upload>
</view>
</view>
<view class="items" style="margin-top: 20rpx;">
<view class="a">店铺Logo<text></text></view>
<view class="c">
<u-upload :action="action" :header="header" @on-remove="onRemoveLogo" @on-uploaded="successLogo" width="160"
height="160" :file-list="fileLogoList" :custom-btn="true" max-count="1">
<template v-slot:addBtn>
<view class="slot-btn" hover-class="slot-btn__hover" hover-stay-time="150">
<image :src="$picUrl + '/static/news/icon-upload.png'"></image>
<view class="1">上传图片</view>
</view>
</template>
</u-upload>
</view>
</view>
</view>
<view class="addressList-fd" @click="onSaveSubmit">
<view class="btn">保存</view>
</view>
<addShuiyin />
</view>
</template>
<script>
import Config from '@/core/config'
import * as help from '@/api/help'
export default {
data() {
return {
action: '',
header: {},
fileList: [],
image_id: '',
logo_image_id:'',
fileLogoList:[]
};
},
onReady() {
this.action = (Config.get('apiUrl') + 'upload/image').replace("index.php?s=/", "")
this.header = {
'Storeid': uni.getStorageSync('Store').storeInfo.store_id,
'Access-Token': uni.getStorageSync('AccessToken'),
'platform': "MP-WEIXIN",
}
},
onLoad() {
this.onShowInfo()
},
methods: {
//接受上传返回的数据
success(list) {
if (list.length > 0) {
const { response } = list[0];
if (response.status == 200) {
uni.showToast({
title: "上传成功"
})
this.image_id = response.data.fileInfo.file_id
}
}
},
//接受上传返回的数据
successLogo(list) {
if (list.length > 0) {
const { response } = list[0];
if (response.status == 200) {
uni.showToast({
title: "上传成功"
})
this.logo_image_id = response.data.fileInfo.file_id
}
}
},
onRemoveLogo() {
this.logo_image_id = ''
this.fileLogoList = []
},
onSaveSubmit() {
if (!this.image_id) {
uni.showToast({
title: '请先上传店铺分享图片!',
icon: 'none',
duration: 2000
})
return
}
if (!this.logo_image_id) {
uni.showToast({
title: '请先上传店铺Logo图片!',
icon: 'none',
duration: 2000
})
return
}
help.storeSet({ group_share_img_id: this.image_id,logo_image_id:this.logo_image_id })
.then(res => {
if (res.status) {
uni.showToast({
title: '设置成功',
icon: 'none',
duration: 2000
})
}
})
.finally()
},
onRemove() {
this.image_id = ''
this.fileList = []
},
onShowInfo() {
help.storeInfo()
.then(res => {
if (res.status == 200) {
this.fileList = [{
url: res.data.group_share_img
}]
this.fileLogoList = [{
url: res.data.logo_image
}]
this.image_id = res.data.group_share_img_id
this.logo_image_id = res.data.logo_image_id
}
})
.finally()
}
}
}
</script>
<style lang="scss" scoped>
.addressList {
margin-top: 16rpx;
padding: 24rpx 40rpx 40rpx;
background: #fff;
&-hd {
background-color: #fff;
.items {
line-height: 50rpx;
font-size: 28rpx;
color: #212121;
.a {
font-size: 28rpx;
color: #3B3B3B;
text {
font-size: 24rpx;
font-weight: 400;
color: #ABABAB;
margin-left: 10rpx;
}
}
.c {
padding-top: 20rpx;
overflow: hidden;
.slot-btn {
width: 184rpx;
height: 184rpx;
background: #F6F6F6;
border-radius: 8rpx;
border: 1px solid #C0C0C0;
text-align: center;
font-size: 24rpx;
font-weight: 500;
color: #757575;
image {
width: 50rpx;
height: 50rpx;
margin-top: 40rpx;
}
}
}
}
}
&-fd {
width: 100%;
position: fixed;
left: 0;
bottom: 0;
padding: 30rpx;
text-align: center;
background-color: #fafafa;
box-sizing: border-box;
.btn {
width: 630rpx;
line-height: 88rpx;
background: #F34A40;
border-radius: 72rpx;
text-align: center;
display: inline-block;
font-size: 28rpx;
font-weight: 500;
color: #FFFFFF;
}
}
}
</style>