Merge branch 'master' of gitee.com:beijing_hongye_huicheng/lilishop-ui

master
paulGao 2021-12-11 13:51:33 +08:00
commit ef73a6fe94
6 changed files with 97 additions and 63 deletions

View File

@ -459,22 +459,32 @@ export const modelData = [
options: {
list: [
{
/**
* 2021/12/9
* 新增索引index判断商品归属分类
* 之前代码没有配置index也不会收到印象
* 新建的楼层将采用索引判断分类
*/
titleWay: [
{
title: "精选",
desc: "电子推荐"
desc: "电子推荐",
___index:0,
},
{
title: "实惠",
desc: "便宜好货"
desc: "便宜好货",
___index:1,
},
{
title: "进口",
desc: "国际自营"
desc: "国际自营",
___index:2,
},
{
title: "推荐",
desc: "喂奶推荐"
desc: "喂奶推荐",
___index:3,
}
],
listWay: [
@ -483,50 +493,18 @@ export const modelData = [
price: "120",
title:
" 微软 (Microsoft) Xbox 无线控制器/手柄 湛蓝色 | 3.5mm耳机接口蓝牙连接 Xbox主机电脑平板通用",
type: "精选"
type: "精选",
___index:0
},
{
img: "https://i.loli.net/2020/12/05/c9mptI5Pg8qJ6ny.png",
title:
"宏碁(acer) DP高清线1.2版 2K*4KDisplayPort公对公接线笔记本电脑显卡连接显示器视频线1.5米",
price: "190",
type: "精选"
type: "精选",
___index:0
},
{
img: "https://i.loli.net/2020/12/05/QsSYIPF743Hgf8q.png",
title:
"宏碁(acer) DP高清线1.2版 2K*4KDisplayPort公对公接线笔记本电脑显卡连接显示器视频线1.5米",
price: "10",
type: "精选"
},
{
img: "https://i.loli.net/2020/12/05/VTwDYcLWnukGxat.png",
title:
"宏碁(acer) DP高清线1.2版 2K*4KDisplayPort公对公接线笔记本电脑显卡连接显示器视频线1.5米",
price: "190",
type: "精选"
},
{
img: "https://i.loli.net/2020/12/05/SIFwaVpE4YJAuQf.png",
title:
"宏碁(acer) DP高清线1.2版 2K*4KDisplayPort公对公接线笔记本电脑显卡连接显示器视频线1.5米",
price: "10",
type: "精选"
},
{
img: "https://i.loli.net/2021/05/14/KTLSrOVJmEdX12A.png",
title:
"宏碁(acer) DP高清线1.2版 2K*4KDisplayPort公对公接线笔记本电脑显卡连接显示器视频线1.5米",
price: "190",
type: "精选"
},
{
img: "https://i.loli.net/2021/05/14/xA5FW2ubiShBdPE.jpg",
title:
"宏碁(acer) DP高清线1.2版 2K*4KDisplayPort公对公接线笔记本电脑显卡连接显示器视频线1.5米",
price: "10",
type: "精选"
}
]
}
]

View File

@ -49,7 +49,7 @@
<div class="decorate-view-link" v-if="res.options.list[0].listWay.length != 0">
<!-- 绑定商品选择器回调已选择的商品 -->
<div v-if="title_item.title == bindGoods.type" v-for="(bindGoods,bindGoodsIndex) in res.options.list[0].listWay" :key="bindGoodsIndex">
<div v-if="title_item.___index == bindGoods.___index || title_item.title == bindGoods.type" v-for="(bindGoods,bindGoodsIndex) in res.options.list[0].listWay" :key="bindGoodsIndex">
{{bindGoods.title}},
</div>
@ -183,10 +183,13 @@ export default {
if (!val) return false;
let data = val.map((item) => {
delete item.selected;
delete item.intro
delete item.mobileIntro
return {
img: item.thumbnail,
title: item.goodsName,
type: this.selectedGoods.title,
___index:this.selectedGoods.___index,
...item
};
});

View File

@ -108,6 +108,12 @@ export default {
},
methods: {
enableBindGoodsShow(){
},
//
init() {
if (!this.$route.query.id) return false;
@ -156,6 +162,7 @@ export default {
},
//
handleDrawer(val) {
let newIndex = this.selected;
this.decorateData = "";

View File

@ -7,7 +7,7 @@
</div>
</div>
<div class="goods-list">
<div v-if="selected.val == item.type" class="goods-item" v-for="(item, item_index) in res.list[0].listWay" :key="item_index">
<div v-if="selected.index == item.___index || selected.val == item.type" class="goods-item" v-for="(item, item_index) in res.list[0].listWay" :key="item_index">
<div class="goods-img">
<Icon size="20" color="#e1251b" @click="closeGoods(item, item_index)" class="goods-icon" type="ios-close-circle" />
<img :src="item.img" alt />
@ -31,7 +31,6 @@ export default {
selected: {
//
index: 0,
val: "",
},
};
},

View File

@ -89,6 +89,11 @@ export const getRefundGoodsAddress = () => {
export const saveRefundGoodsAddress = (params) => {
return putRequest(`/settings/storeAfterSaleAddress`, params)
}
//修改im商户id
export const updatEmerchantId = (params) => {
return putRequest(`/settings/merchantEuid`, params)
}
//修改保存库存预警数
export const updateStockWarning = (params) => {
@ -113,4 +118,3 @@ export const editShipTemplate = (id, params, headers) => {
}

View File

@ -6,13 +6,13 @@
<TabPane label="基本信息" name="INFO">
<Form ref="form" :model="form" :label-width="100" :rules="formValidate">
<FormItem label="店铺名称">
<Input v-model="storeName" disabled clearable style="width: 20%" />
<Input v-model="storeName" disabled clearable style="width: 20%"/>
</FormItem>
<FormItem label="店铺地址" prop="address">
<Input v-model="form.address" @on-focus="$refs.liliMap.showMap = true" clearable style="width: 20%" />
<Input v-model="form.address" @on-focus="$refs.liliMap.showMap = true" clearable style="width: 20%"/>
</FormItem>
<FormItem label="详细地址" prop="shopAddressDetail">
<Input v-model="form.storeAddressDetail" clearable style="width: 20%" maxlength="50" />
<Input v-model="form.storeAddressDetail" clearable style="width: 20%" maxlength="50"/>
</FormItem>
<FormItem label="店铺LOGO">
<upload-pic-thumb v-model="form.storeLogo" :multiple="false"></upload-pic-thumb>
@ -29,19 +29,20 @@
<TabPane label="退货地址" name="REFUND_GOODS_ADDRESS">
<Form ref="addressForm" :model="addressForm" :label-width="100" :rules="afterFormValidate">
<FormItem label="收货人" prop="salesConsigneeName">
<Input v-model="addressForm.salesConsigneeName" maxlength="11" clearable style="width: 20%" />
<Input v-model="addressForm.salesConsigneeName" maxlength="11" clearable style="width: 20%"/>
</FormItem>
<FormItem label="收货人电话" prop="salesConsigneeMobile">
<Input v-model="addressForm.salesConsigneeMobile" maxlength="11" style="width: 20%" />
<Input v-model="addressForm.salesConsigneeMobile" maxlength="11" style="width: 20%"/>
</FormItem>
<FormItem label="售后地址">
<Input v-model="region" disabled style="width: 20%" v-if="showRegion == false" />
<Button v-if="showRegion == false" @click="regionClick" :loading="submitLoading" type="primary" style="margin-left:8px">
<Input v-model="region" disabled style="width: 20%" v-if="showRegion == false"/>
<Button v-if="showRegion == false" @click="regionClick" :loading="submitLoading" type="primary"
style="margin-left:8px">修改
</Button>
<regionMap style="width: 20%" @selected="selectedRegion" v-if="showRegion == true" />
<regionMap style="width: 20%" @selected="selectedRegion" v-if="showRegion == true"/>
</FormItem>
<FormItem label="详细地址" prop="salesConsigneeDetail">
<Input v-model="addressForm.salesConsigneeDetail" clearable style="width: 20%" maxlength="50" />
<Input v-model="addressForm.salesConsigneeDetail" clearable style="width: 20%" maxlength="50"/>
</FormItem>
<Form-item>
@ -54,10 +55,24 @@
<Form ref="stockWarningForm" :model="stockWarningForm" :label-width="100" :rules="stockWarningFormValidate">
<FormItem label="预警数" prop="stockWarning">
<Input v-model="stockWarningForm.stockWarning" type="number" maxlength="6" clearable style="width: 20%" />
<Input v-model="stockWarningForm.stockWarning" type="number" maxlength="6" clearable style="width: 20%"/>
</FormItem>
<Form-item>
<Button @click="stockWarningHandleSubmit" :loading="submitLoading" type="primary" style="margin-right:5px">修改
<Button @click="stockWarningHandleSubmit" :loading="submitLoading" type="primary"
style="margin-right:5px">修改
</Button>
</Form-item>
</Form>
</TabPane>
<TabPane label="客服设置" name="UDESK">
<Form ref="udeskForm" :model="udeskForm" :label-width="100" :rules="udeskFormValidate">
<FormItem label="坐席id" prop="merchantEuid">
<Input v-model="udeskForm.merchantEuid" maxlength="30" clearable style="width: 20%"/>
</FormItem>
<Form-item>
<Button @click="merchantSubmit" :loading="submitLoading" type="primary"
style="margin-right:5px">修改
</Button>
</Form-item>
</Form>
@ -71,12 +86,13 @@
<script>
import * as API_Shop from "@/api/shops";
import { validateMobile } from "@/libs/validate";
import {validateMobile} from "@/libs/validate";
import uploadPicThumb from "@/views/my-components/lili/upload-pic-thumb";
import liliMap from "@/views/my-components/map/index";
import regionMap from "@/views/lili-components/region";
import * as RegExp from "@/libs/RegExp.js";
import Cookies from "js-cookie";
export default {
name: "shopSetting",
components: {
@ -103,14 +119,23 @@ export default {
stockWarningForm: {
stockWarning: "", //
},
//im form
udeskForm: {
merchantEuid: ""
},
stockWarningFormValidate: {
stockWarning: [
{ required: true, message: "请输入库存预警数", trigger: "blur" },
{required: true, message: "请输入库存预警数", trigger: "blur"},
],
},
udeskFormValidate: {
merchantEuid: [
{required: true, message: "请输入店铺坐席ID", trigger: "blur"},
],
},
afterFormValidate: {
salesConsigneeMobile: [
{ required: true, message: "手机号不能为空", trigger: "blur" },
{required: true, message: "手机号不能为空", trigger: "blur"},
{
pattern: RegExp.mobile,
trigger: "blur",
@ -118,10 +143,10 @@ export default {
},
],
salesConsigneeName: [
{ required: true, message: "请输入收货人", trigger: "blur" },
{required: true, message: "请输入收货人", trigger: "blur"},
],
salesConsigneeDetail: [
{ required: true, message: "请输入详细地址", trigger: "blur" },
{required: true, message: "请输入详细地址", trigger: "blur"},
],
},
form: {
@ -197,10 +222,13 @@ export default {
this.form.storeCenter = res.result.storeCenter;
Cookies.set("userInfoSeller", JSON.stringify(res.result));
//
this.$nextTick(() => {
this.stockWarningForm.stockWarning = res.result.stockWarning + "";
});
if (res.result.merchantEuid) {
//id
this.udeskForm.merchantEuid = res.result.merchantEuid;
}
}
});
},
@ -243,6 +271,21 @@ export default {
}
});
},
merchantSubmit() {
this.$refs.udeskForm.validate((valid) => {
if (valid) {
this.submitLoading = true;
API_Shop.updatEmerchantId(this.udeskForm).then((res) => {
this.submitLoading = false;
if (res.success) {
this.$Message.success("修改成功");
this.getShopInfo();
}
});
}
});
},
//
selectedRegion(val) {
this.region = val[1];
@ -296,7 +339,7 @@ export default {
this.$set(this.form, "address", item.addr);
this.form.storeAddressPath = item.addr;
this.form.storeAddressIdPath = item.addrId;
this.form.storeCenter = item.position.lng + "," + item.position.lat
this.form.storeCenter = item.position.lng + "," + item.position.lat
},
},
mounted() {