Merge branch 'master' of gitee.com:beijing_hongye_huicheng/lilishop-ui
commit
59a580ccac
|
@ -457,23 +457,21 @@ export function memberMsgList (params) {
|
||||||
* 设置消息为已读
|
* 设置消息为已读
|
||||||
* @param {String} messageId 消息id
|
* @param {String} messageId 消息id
|
||||||
*/
|
*/
|
||||||
export function readMemberMsg (params) {
|
export function readMemberMsg (id) {
|
||||||
return request({
|
return request({
|
||||||
url: `/buyer/member/message`,
|
url: `/buyer/member/message/${id}`,
|
||||||
method: Method.PUT,
|
method: Method.PUT,
|
||||||
needToken: true,
|
needToken: true
|
||||||
params
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* 删除会员消息
|
* 删除会员消息
|
||||||
* @param {String} messageId 消息id
|
* @param {String} messageId 消息id
|
||||||
*/
|
*/
|
||||||
export function delMemberMsg (params) {
|
export function delMemberMsg (id) {
|
||||||
return request({
|
return request({
|
||||||
url: `/buyer/member/message`,
|
url: `/buyer/member/message/${id}`,
|
||||||
method: Method.DELETE,
|
method: Method.DELETE,
|
||||||
needToken: true,
|
needToken: true
|
||||||
params
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
@ -17,15 +17,15 @@ export default {
|
||||||
* @description api请求基础路径
|
* @description api请求基础路径
|
||||||
*/
|
*/
|
||||||
api_dev: {
|
api_dev: {
|
||||||
// common: 'http://192.168.0.109:8890',
|
common: 'http://192.168.0.100:8890',
|
||||||
// buyer: 'http://192.168.0.109:8888',
|
buyer: 'http://192.168.0.100:8888',
|
||||||
// seller: 'http://192.168.0.109:8889',
|
seller: 'http://192.168.0.100:8889',
|
||||||
// manager: 'http://192.168.0.109:8887'
|
manager: 'http://192.168.0.100:8887'
|
||||||
|
|
||||||
common: 'https://common-api.pickmall.cn',
|
// common: 'https://common-api.pickmall.cn',
|
||||||
buyer: 'https://buyer-api.pickmall.cn',
|
// buyer: 'https://buyer-api.pickmall.cn',
|
||||||
seller: 'https://store-api.pickmall.cn',
|
// seller: 'https://store-api.pickmall.cn',
|
||||||
manager: 'https://admin-api.pickmall.cn'
|
// manager: 'https://admin-api.pickmall.cn'
|
||||||
},
|
},
|
||||||
api_prod: {
|
api_prod: {
|
||||||
common: 'https://common-api.pickmall.cn',
|
common: 'https://common-api.pickmall.cn',
|
||||||
|
|
|
@ -9,10 +9,12 @@
|
||||||
<img :src="storeMsg.storeLogo" height="50" alt="">
|
<img :src="storeMsg.storeLogo" height="50" alt="">
|
||||||
<div>
|
<div>
|
||||||
<p>{{storeMsg.storeName || 'xx店铺'}}</p>
|
<p>{{storeMsg.storeName || 'xx店铺'}}</p>
|
||||||
<p v-html="storeMsg.storeDesc"></p>
|
<p class="ellipsis" :alt="storeMsg.storeDesc" v-html="storeMsg.storeDesc"></p>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<span class="hover-pointer" @click="collect"><Icon type="ios-heart" :color="storeCollected ? '#ed3f14' : '#fff'" />{{storeCollected?'已收藏店铺':'收藏店铺'}}</span>
|
||||||
|
<span style="width:80px" class="hover-pointer ml_10" @click="connectCs(storeMsg.yzfSign)"><Icon custom="icomoon icon-customer-service" />联系客服</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="store-collect" @click="collect"><Icon type="ios-heart" :color="storeCollected ? '#ed3f14' : '#fff'" />{{storeCollected?'已收藏店铺':'收藏店铺'}}</div>
|
|
||||||
<span class="hover-pointer ml_10" @click="connectCs(storeMsg.yzfSign)"><Icon custom="icomoon icon-customer-service" />联系客服</span>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="store-category">
|
<div class="store-category">
|
||||||
|
@ -183,15 +185,25 @@ export default {
|
||||||
position: relative;
|
position: relative;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
background-color: #666;
|
background-color: #666;
|
||||||
padding: 10px;
|
padding: 4px;
|
||||||
color: #fff;
|
color: #fff;
|
||||||
>div{
|
>div{
|
||||||
display: flex;
|
display: flex;
|
||||||
width: 1200px;
|
width: 1200px;
|
||||||
margin: 0 auto;
|
margin: 0 auto;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
>div{
|
|
||||||
|
img {
|
||||||
|
width: 80px;
|
||||||
|
}
|
||||||
|
|
||||||
|
>div:nth-child(2){
|
||||||
margin-left: 10px;
|
margin-left: 10px;
|
||||||
|
flex: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
>div:nth-child(3){
|
||||||
|
width: 200px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
img {
|
img {
|
||||||
|
@ -202,14 +214,11 @@ export default {
|
||||||
}
|
}
|
||||||
p:nth-child(2){
|
p:nth-child(2){
|
||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
|
max-height: 40px;
|
||||||
|
max-width: 400px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.store-collect{
|
|
||||||
margin-left: 750px!important;
|
|
||||||
&:hover{
|
|
||||||
cursor: pointer;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.store-category {
|
.store-category {
|
||||||
background-color: #005aa0;
|
background-color: #005aa0;
|
||||||
color: #fff;
|
color: #fff;
|
||||||
|
|
|
@ -1,15 +1,14 @@
|
||||||
<template>
|
<template>
|
||||||
<div class="login">
|
<div class="login">
|
||||||
|
<div style="height:50px;"></div>
|
||||||
<!-- 顶部logo -->
|
<!-- 顶部logo -->
|
||||||
<div class="top-content">
|
|
||||||
<div class="logo-box">
|
<div class="logo-box">
|
||||||
<img
|
<img
|
||||||
src="../assets/images/logo1.png"
|
:src="logoImg" width='150'
|
||||||
@click="$router.push('/')"
|
@click="$router.push('/')"
|
||||||
/>
|
/>
|
||||||
<div>修改密码</div>
|
<div>修改密码</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
<div class="login-container">
|
<div class="login-container">
|
||||||
<!-- 验证手机号 -->
|
<!-- 验证手机号 -->
|
||||||
<Form
|
<Form
|
||||||
|
@ -119,6 +118,7 @@ export default {
|
||||||
components: { Verify },
|
components: { Verify },
|
||||||
data () {
|
data () {
|
||||||
return {
|
return {
|
||||||
|
logoImg: '', // logo图
|
||||||
loading: false, // 加载状态
|
loading: false, // 加载状态
|
||||||
loading1: false, // 第二步加载状态
|
loading1: false, // 第二步加载状态
|
||||||
formFirst: { // 手机验证码表单
|
formFirst: { // 手机验证码表单
|
||||||
|
@ -242,35 +242,23 @@ export default {
|
||||||
},
|
},
|
||||||
mounted () {
|
mounted () {
|
||||||
this.$refs.formFirst.resetFields();
|
this.$refs.formFirst.resetFields();
|
||||||
|
this.logoImg = this.Cookies.getItem('logo')
|
||||||
},
|
},
|
||||||
watch: {
|
watch: {
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
<style scoped lang="scss">
|
<style scoped lang="scss">
|
||||||
.login {
|
.logo-box {
|
||||||
height: 100%;
|
width: 600px;
|
||||||
}
|
|
||||||
.top-content {
|
|
||||||
width: 100%;
|
|
||||||
height: 80px;
|
|
||||||
position: relative;
|
|
||||||
z-index: 1;
|
|
||||||
box-shadow: 0 1px 1px #ddd;
|
|
||||||
background-color: #fff;
|
|
||||||
|
|
||||||
.logo-box {
|
|
||||||
width: 80%;
|
|
||||||
max-width: 1200px;
|
|
||||||
height: 80px;
|
height: 80px;
|
||||||
margin: 0 auto;
|
margin: 0 auto;
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
img {
|
img {
|
||||||
width: 200px;
|
width: 150px;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
}
|
}
|
||||||
}
|
|
||||||
div {
|
div {
|
||||||
font-size: 20px;
|
font-size: 20px;
|
||||||
margin-top: 10px;
|
margin-top: 10px;
|
||||||
|
@ -278,22 +266,23 @@ export default {
|
||||||
}
|
}
|
||||||
|
|
||||||
.login-container {
|
.login-container {
|
||||||
|
border-top: 2px solid $theme_color;
|
||||||
position: relative;
|
position: relative;
|
||||||
margin: 10px auto;
|
margin: 0 auto;
|
||||||
width: 1200px;
|
width: 600px;
|
||||||
background-color: #fff;
|
background-color: #fff;
|
||||||
padding: 20px;
|
padding: 20px 150px;
|
||||||
.login-btn{
|
.login-btn{
|
||||||
position: absolute;
|
position: absolute;
|
||||||
right: 20px;
|
right: 20px;
|
||||||
top: 20px;
|
top: -45px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.verify-con{
|
.verify-con{
|
||||||
position: absolute;
|
position: absolute;
|
||||||
left: 400px;
|
left: 140px;
|
||||||
top: 50px;
|
top: -30px;
|
||||||
z-index: 10;
|
z-index: 10;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,22 @@
|
||||||
<template>
|
<template>
|
||||||
<div class="msg-list">
|
<div class="msg-list">
|
||||||
<card _Title="我的消息" :_Tabs="status" :_Size="16" />
|
<card _Title="我的消息" :_Tabs="status" :_Size="16" @_Change="statusChange"/>
|
||||||
|
|
||||||
|
<Table v-if="params.status != 'ALREADY_REMOVE' " :columns="messageColumns" :data="messageData.records"></Table>
|
||||||
|
<Table v-if="params.status == 'ALREADY_REMOVE' " :columns="messageDelColumns" :data="messageData.records"></Table>
|
||||||
|
<!-- 分页 -->
|
||||||
|
<Page
|
||||||
|
style="float:right;margin-top:10px"
|
||||||
|
:current="params.pageNumber"
|
||||||
|
:total="messageData.total"
|
||||||
|
:page-size="params.pageSize"
|
||||||
|
@on-change="changePage"
|
||||||
|
@on-page-size-change="changePageSize"
|
||||||
|
:page-size-opts="[10, 20, 50]"
|
||||||
|
size="small"
|
||||||
|
show-total
|
||||||
|
show-elevator
|
||||||
|
></Page>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
|
@ -8,27 +24,171 @@ import {memberMsgList, readMemberMsg, delMemberMsg} from '@/api/member.js'
|
||||||
export default {
|
export default {
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
list: [], // 会员列表
|
messageData: {}, // 消息数据
|
||||||
status: ['未读', '已读', '回收站'],
|
status: ['未读', '已读', '回收站'],
|
||||||
params: { // 请求参数
|
params: { // 请求参数
|
||||||
pageNumber: 1,
|
pageNumber: 1,
|
||||||
pageSize: 10,
|
pageSize: 10,
|
||||||
status: ''
|
status: 'UN_READY'
|
||||||
},
|
},
|
||||||
|
messageDelColumns: [ // table展示数据
|
||||||
|
{
|
||||||
|
title: '消息标题',
|
||||||
|
key: 'title',
|
||||||
|
align: 'left',
|
||||||
|
tooltip: true,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: '消息内容',
|
||||||
|
key: 'content',
|
||||||
|
align: 'left',
|
||||||
|
tooltip: true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: '发送时间',
|
||||||
|
key: 'createTime',
|
||||||
|
align: 'left',
|
||||||
|
width: 240
|
||||||
|
},
|
||||||
|
],
|
||||||
|
messageColumns: [ // table展示数据
|
||||||
|
{
|
||||||
|
title: '消息标题',
|
||||||
|
key: 'title',
|
||||||
|
align: 'left',
|
||||||
|
tooltip: true,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: '消息内容',
|
||||||
|
key: 'content',
|
||||||
|
align: 'left',
|
||||||
|
tooltip: true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: '发送时间',
|
||||||
|
key: 'createTime',
|
||||||
|
align: 'left',
|
||||||
|
width: 240
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: '操作',
|
||||||
|
key: 'action',
|
||||||
|
align: 'center',
|
||||||
|
fixed: 'right',
|
||||||
|
width: 150,
|
||||||
|
render: (h, params) => {
|
||||||
|
if (params.row.status === 'UN_READY') {
|
||||||
|
return h('div', [
|
||||||
|
h(
|
||||||
|
'Button',
|
||||||
|
{
|
||||||
|
props: {
|
||||||
|
type: 'info',
|
||||||
|
size: 'small'
|
||||||
|
},
|
||||||
|
style: {
|
||||||
|
marginRight: '5px'
|
||||||
|
},
|
||||||
|
on: {
|
||||||
|
click: () => {
|
||||||
|
this.setRead(params.row.id);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
'已读'
|
||||||
|
), h(
|
||||||
|
'Button',
|
||||||
|
{
|
||||||
|
props: {
|
||||||
|
size: 'small',
|
||||||
|
type: 'error'
|
||||||
|
},
|
||||||
|
on: {
|
||||||
|
click: () => {
|
||||||
|
this.removeMessage(params.row.id);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
'删除'
|
||||||
|
)
|
||||||
|
]);
|
||||||
|
} else if (params.row.status === 'ALREADY_READY') {
|
||||||
|
return h('div', [
|
||||||
|
h(
|
||||||
|
'Button',
|
||||||
|
{
|
||||||
|
props: {
|
||||||
|
size: 'small',
|
||||||
|
type: 'error'
|
||||||
|
},
|
||||||
|
on: {
|
||||||
|
click: () => {
|
||||||
|
this.removeMessage(params.row.id);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
'删除'
|
||||||
|
)
|
||||||
|
]);
|
||||||
|
} else {
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
// 消息状态发生变化
|
||||||
|
statusChange (index) {
|
||||||
|
if (index === 0) { this.params.status = 'UN_READY' }
|
||||||
|
if (index === 1) { this.params.status = 'ALREADY_READY' }
|
||||||
|
if (index === 2) { this.params.status = 'ALREADY_REMOVE' }
|
||||||
|
this.getList()
|
||||||
|
},
|
||||||
|
// 修改页码
|
||||||
|
changePage (v) {
|
||||||
|
this.params.pageNumber = v;
|
||||||
|
this.getList();
|
||||||
|
},
|
||||||
|
// 修改页数
|
||||||
|
changePageSize (v) {
|
||||||
|
this.params.pageSize = v;
|
||||||
|
this.getList();
|
||||||
|
},
|
||||||
getList () { // 获取消息列表
|
getList () { // 获取消息列表
|
||||||
memberMsgList(this.params).then(res => {
|
memberMsgList(this.params).then(res => {
|
||||||
if (res.success) {
|
if (res.success) {
|
||||||
this.list = res.result.records;
|
this.messageData = res.result;
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
setRead (id) { // 设置消息已读
|
// 设置消息已读
|
||||||
|
setRead (id) {
|
||||||
readMemberMsg(id).then(res => {
|
readMemberMsg(id).then(res => {
|
||||||
|
if (res.success) {
|
||||||
|
this.getList()
|
||||||
|
}
|
||||||
})
|
})
|
||||||
|
},
|
||||||
|
// 消息放入回收站
|
||||||
|
removeMessage (id) {
|
||||||
|
this.$Modal.confirm({
|
||||||
|
title: '确认删除',
|
||||||
|
// 记得确认修改此处
|
||||||
|
content: '确认要删除此消息?',
|
||||||
|
loading: true,
|
||||||
|
onOk: () => {
|
||||||
|
// 删除
|
||||||
|
delMemberMsg(id).then((res) => {
|
||||||
|
this.$Modal.remove();
|
||||||
|
if (res.success) {
|
||||||
|
this.$Message.success('消息已成功放入回收站');
|
||||||
|
this.getList();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
},
|
||||||
|
});
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
mounted () {
|
mounted () {
|
||||||
|
|
|
@ -63,6 +63,7 @@ export default {
|
||||||
this.num++;
|
this.num++;
|
||||||
if (this.num >= 7) {
|
if (this.num >= 7) {
|
||||||
clearInterval(this.interval);
|
clearInterval(this.interval);
|
||||||
|
this.interval = null;
|
||||||
}
|
}
|
||||||
let params = JSON.parse(JSON.stringify(this.$route.query));
|
let params = JSON.parse(JSON.stringify(this.$route.query));
|
||||||
delete params.paymentMethod;
|
delete params.paymentMethod;
|
||||||
|
@ -70,6 +71,7 @@ export default {
|
||||||
payCallback(params).then(res => {
|
payCallback(params).then(res => {
|
||||||
if (res.result) {
|
if (res.result) {
|
||||||
clearInterval(this.interval);
|
clearInterval(this.interval);
|
||||||
|
this.interval = null;
|
||||||
this.$router.push({path: '/payDone', query: {orderType: this.$route.query.orderType}});
|
this.$router.push({path: '/payDone', query: {orderType: this.$route.query.orderType}});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
|
@ -10,7 +10,6 @@
|
||||||
/>
|
/>
|
||||||
</FormItem>
|
</FormItem>
|
||||||
<FormItem prop="storeAddressIdPath" label="公司所在地">
|
<FormItem prop="storeAddressIdPath" label="公司所在地">
|
||||||
<!-- <Input type="text" v-model="form.storeAddressIdPath" placeholder="请选择公司所在地" /> -->
|
|
||||||
<region
|
<region
|
||||||
style="width: 250px"
|
style="width: 250px"
|
||||||
@selected="selectedRegion"
|
@selected="selectedRegion"
|
||||||
|
@ -32,6 +31,13 @@
|
||||||
><span slot="append">人</span>
|
><span slot="append">人</span>
|
||||||
</Input>
|
</Input>
|
||||||
</FormItem>
|
</FormItem>
|
||||||
|
<FormItem prop="linkPhone" label="公司电话">
|
||||||
|
<Input
|
||||||
|
type="text"
|
||||||
|
v-model="form.companyPhone"
|
||||||
|
placeholder="请填写公司电话"
|
||||||
|
></Input>
|
||||||
|
</FormItem>
|
||||||
<FormItem prop="registeredCapital" label="注册资金">
|
<FormItem prop="registeredCapital" label="注册资金">
|
||||||
<Input
|
<Input
|
||||||
type="text"
|
type="text"
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
<div style="height: 20px"></div>
|
<div style="height: 20px"></div>
|
||||||
<div class="content">
|
<div class="content">
|
||||||
<h3>店铺入驻</h3>
|
<h3>店铺入驻</h3>
|
||||||
<Steps :current="currentIndex" size="small" class="margin">
|
<Steps :current="currentIndex" class="margin">
|
||||||
<Step title="企业资质信息"></Step>
|
<Step title="企业资质信息"></Step>
|
||||||
<Step title="财务资质信息"></Step>
|
<Step title="财务资质信息"></Step>
|
||||||
<Step title="其他信息"></Step>
|
<Step title="其他信息"></Step>
|
||||||
|
@ -38,38 +38,37 @@
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
import { agreement, applyStatus } from "@/api/shopentry";
|
import { agreement, applyStatus } from '@/api/shopentry';
|
||||||
import firstApply from "./first-apply";
|
import firstApply from './first-apply';
|
||||||
import secondApply from "./second-apply";
|
import secondApply from './second-apply';
|
||||||
import thirdApply from "./third-apply";
|
import thirdApply from './third-apply';
|
||||||
export default {
|
export default {
|
||||||
components: {
|
components: {
|
||||||
firstApply,
|
firstApply,
|
||||||
secondApply,
|
secondApply,
|
||||||
thirdApply,
|
thirdApply
|
||||||
},
|
},
|
||||||
data() {
|
data () {
|
||||||
return {
|
return {
|
||||||
currentIndex: 0, // 当前步骤
|
currentIndex: 0, // 当前步骤
|
||||||
showAgreement: false, // 协议显示
|
showAgreement: false, // 协议显示
|
||||||
agreementCon: "", // 协议内容
|
agreementCon: '', // 协议内容
|
||||||
checked: false, // 选中协议
|
checked: false, // 选中协议
|
||||||
applyData: {}, // 申请数据
|
|
||||||
firstData: {}, // 第一步数据
|
firstData: {}, // 第一步数据
|
||||||
secondData: {}, // 第二步数据
|
secondData: {}, // 第二步数据
|
||||||
thirdData: {}, // 第三步数据
|
thirdData: {}, // 第三步数据
|
||||||
storeDisable: "", // APPLY OPEN 开店中 CLOSED 关闭 REFUSED 拒绝 APPLYING 申请中,审核
|
storeDisable: '', // APPLY OPEN 开店中 CLOSED 关闭 REFUSED 拒绝 APPLYING 申请中,审核
|
||||||
dataReview: true, // 根据接口返回判断是否可展示数据
|
dataReview: true // 根据接口返回判断是否可展示数据
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
getArticle() {
|
getArticle () {
|
||||||
// 入驻协议
|
// 入驻协议
|
||||||
agreement().then((res) => {
|
agreement().then((res) => {
|
||||||
this.agreementCon = res.result.content;
|
this.agreementCon = res.result.content;
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
getData() {
|
getData () { // 获取已填写店铺信息
|
||||||
applyStatus().then((res) => {
|
applyStatus().then((res) => {
|
||||||
if (res.success) {
|
if (res.success) {
|
||||||
if (!res.result) {
|
if (!res.result) {
|
||||||
|
@ -78,34 +77,34 @@ export default {
|
||||||
this.dataReview = false;
|
this.dataReview = false;
|
||||||
let data = res.result;
|
let data = res.result;
|
||||||
let first = [
|
let first = [
|
||||||
"addressIdPath",
|
'storeAddressIdPath',
|
||||||
"addressPath",
|
'storeAddressPath',
|
||||||
"companyAddress",
|
'storeAddressDetail',
|
||||||
"companyEmail",
|
'companyEmail',
|
||||||
"companyName",
|
'companyName',
|
||||||
"employeeNum",
|
'employeeNum',
|
||||||
"legalId",
|
'legalId',
|
||||||
"legalName",
|
'legalName',
|
||||||
"licencePhoto",
|
'licencePhoto',
|
||||||
"legalPhoto",
|
'legalPhoto',
|
||||||
"licenseNum",
|
'licenseNum',
|
||||||
"linkName",
|
'linkName',
|
||||||
"linkPhone",
|
'linkPhone',
|
||||||
"registeredCapital",
|
'registeredCapital',
|
||||||
"scope",
|
'scope'
|
||||||
];
|
];
|
||||||
let second = [
|
let second = [
|
||||||
"settlementBankAccountName",
|
'settlementBankAccountName',
|
||||||
"settlementBankAccountNum",
|
'settlementBankAccountNum',
|
||||||
"settlementBankBranchName",
|
'settlementBankBranchName',
|
||||||
"settlementBankJointName",
|
'settlementBankJointName'
|
||||||
];
|
];
|
||||||
let third = [
|
let third = [
|
||||||
"goodsManagementCategory",
|
'goodsManagementCategory',
|
||||||
"storeCenter",
|
'storeCenter',
|
||||||
"storeDesc",
|
'storeDesc',
|
||||||
"storeLogo",
|
'storeLogo',
|
||||||
"storeName",
|
'storeName'
|
||||||
];
|
];
|
||||||
|
|
||||||
this.storeDisable = data.storeDisable;
|
this.storeDisable = data.storeDisable;
|
||||||
|
@ -120,25 +119,28 @@ export default {
|
||||||
this.thirdData[e] = data[e];
|
this.thirdData[e] = data[e];
|
||||||
});
|
});
|
||||||
|
|
||||||
if (this.storeDisable === "APPLY") {
|
if (this.storeDisable === 'APPLY') {
|
||||||
this.currentIndex = 0;
|
this.currentIndex = 0;
|
||||||
} else {
|
} else {
|
||||||
this.currentIndex = 3;
|
this.currentIndex = 3;
|
||||||
}
|
}
|
||||||
|
this.$nextTick(() => {
|
||||||
this.dataReview = true;
|
this.dataReview = true;
|
||||||
this.$forceUpdate();
|
this.$forceUpdate();
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
console.log(33333333333333);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
nextPage(step) {
|
nextPage (step) {
|
||||||
this.currentIndex = step;
|
this.currentIndex = step;
|
||||||
|
}
|
||||||
},
|
},
|
||||||
},
|
mounted () {
|
||||||
mounted() {
|
|
||||||
this.getData();
|
this.getData();
|
||||||
this.getArticle();
|
this.getArticle();
|
||||||
},
|
}
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
|
@ -159,7 +161,7 @@ export default {
|
||||||
}
|
}
|
||||||
|
|
||||||
.margin {
|
.margin {
|
||||||
margin: 10px 0;
|
margin: 30px 0;
|
||||||
}
|
}
|
||||||
.agreeent-con {
|
.agreeent-con {
|
||||||
max-height: 500px;
|
max-height: 500px;
|
||||||
|
|
|
@ -60,17 +60,23 @@
|
||||||
>
|
>
|
||||||
</Select>
|
</Select>
|
||||||
</FormItem>
|
</FormItem>
|
||||||
<FormItem prop="storeCenter" label="经纬度">
|
<FormItem prop="storeCenter" label="店铺定位">
|
||||||
<Input
|
<!-- <Input
|
||||||
type="text"
|
type="text"
|
||||||
v-model="form.storeCenter"
|
v-model="form.storeCenter"
|
||||||
readonly
|
readonly
|
||||||
placeholder="点击右侧按钮选择店铺位置"
|
placeholder="点击右侧按钮选择店铺位置"
|
||||||
/>
|
/> -->
|
||||||
<Button
|
<Button
|
||||||
icon="ios-locate-outline"
|
type="info"
|
||||||
|
v-if="!form.storeCenter"
|
||||||
@click="$refs.liliMap.showMap = true"
|
@click="$refs.liliMap.showMap = true"
|
||||||
></Button>
|
>点击获取店铺定位</Button>
|
||||||
|
<Button
|
||||||
|
type="success"
|
||||||
|
v-else
|
||||||
|
@click="$refs.liliMap.showMap = true"
|
||||||
|
>已定位</Button>
|
||||||
</FormItem>
|
</FormItem>
|
||||||
<FormItem prop="storeDesc" label="店铺简介">
|
<FormItem prop="storeDesc" label="店铺简介">
|
||||||
<Input
|
<Input
|
||||||
|
|
|
@ -15,7 +15,8 @@
|
||||||
>
|
>
|
||||||
<div class="user-icon">
|
<div class="user-icon">
|
||||||
<div class="user-img">
|
<div class="user-img">
|
||||||
<img :src="userInfo.face" />
|
<img :src="userInfo.face" v-if="userInfo.face" alt />
|
||||||
|
<Avatar icon="ios-person" class="mb_10" v-else size="96" />
|
||||||
</div>
|
</div>
|
||||||
<p>{{userInfo.nickName}}</p>
|
<p>{{userInfo.nickName}}</p>
|
||||||
</div>
|
</div>
|
||||||
|
@ -125,10 +126,6 @@ export default {
|
||||||
align-items: center;
|
align-items: center;
|
||||||
}
|
}
|
||||||
|
|
||||||
.user-icon span {
|
|
||||||
font-size: 96px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.user-img {
|
.user-img {
|
||||||
margin-bottom: 15px;
|
margin-bottom: 15px;
|
||||||
width: 96px;
|
width: 96px;
|
||||||
|
@ -137,10 +134,6 @@ export default {
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
}
|
}
|
||||||
|
|
||||||
.user-img img {
|
|
||||||
width: 100%;
|
|
||||||
}
|
|
||||||
|
|
||||||
.layout-footer-center {
|
.layout-footer-center {
|
||||||
padding: 0px 15px;
|
padding: 0px 15px;
|
||||||
|
|
||||||
|
|
|
@ -116,6 +116,7 @@ async function refresh (error) {
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
onCancel: () => {
|
onCancel: () => {
|
||||||
|
router.go(0)
|
||||||
Modal.remove();
|
Modal.remove();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
|
@ -21,6 +21,10 @@ export default {
|
||||||
buyer: "https://buyer-api.pickmall.cn",
|
buyer: "https://buyer-api.pickmall.cn",
|
||||||
seller: "https://store-api.pickmall.cn",
|
seller: "https://store-api.pickmall.cn",
|
||||||
manager: "https://admin-api.pickmall.cn"
|
manager: "https://admin-api.pickmall.cn"
|
||||||
|
// common: 'http://192.168.0.109:8890',
|
||||||
|
// buyer: 'http://192.168.0.109:8888',
|
||||||
|
// seller: 'http://192.168.0.109:8889',
|
||||||
|
// manager: 'http://192.168.0.109:8887'
|
||||||
},
|
},
|
||||||
api_prod: {
|
api_prod: {
|
||||||
common: "https://common-api.pickmall.cn",
|
common: "https://common-api.pickmall.cn",
|
||||||
|
|
|
@ -112,7 +112,7 @@
|
||||||
</Form>
|
</Form>
|
||||||
<div slot="footer">
|
<div slot="footer">
|
||||||
<Button type="text" @click="modalVisible = false">取消</Button>
|
<Button type="text" @click="modalVisible = false">取消</Button>
|
||||||
<Button type="primary" :loading="submitLoading" @click="lower(form.id)"
|
<Button type="primary" :loading="submitLoading" @click="lower"
|
||||||
>提交</Button
|
>提交</Button
|
||||||
>
|
>
|
||||||
</div>
|
</div>
|
||||||
|
@ -363,7 +363,7 @@ export default {
|
||||||
this.modalTitle = "下架操作";
|
this.modalTitle = "下架操作";
|
||||||
this.modalVisible = true;
|
this.modalVisible = true;
|
||||||
},
|
},
|
||||||
lower(id) {
|
lower() {
|
||||||
lowGoods(this.id, this.underForm).then((res) => {
|
lowGoods(this.id, this.underForm).then((res) => {
|
||||||
this.$Modal.remove();
|
this.$Modal.remove();
|
||||||
if (res.success) {
|
if (res.success) {
|
||||||
|
|
|
@ -150,7 +150,7 @@
|
||||||
<div class="today-item">
|
<div class="today-item">
|
||||||
<div>今日交易额</div>
|
<div>今日交易额</div>
|
||||||
|
|
||||||
<span>¥{{homeData.todayOrderPrice | unitPrice }}</span>
|
<span>¥{{homeData.todayOrderPrice ? (homeData.todayOrderPrice | unitPrice) : 0}}</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="today-item">
|
<div class="today-item">
|
||||||
<div>今日新增店铺</div>
|
<div>今日新增店铺</div>
|
||||||
|
|
|
@ -324,7 +324,7 @@ export default {
|
||||||
// 已选择用户数据
|
// 已选择用户数据
|
||||||
selectedList: {
|
selectedList: {
|
||||||
type: null,
|
type: null,
|
||||||
default: "",
|
default: [],
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
watch: {
|
watch: {
|
||||||
|
@ -344,6 +344,7 @@ export default {
|
||||||
callback(val, index) {
|
callback(val, index) {
|
||||||
this.$set(val, "___selected", !val.___selected);
|
this.$set(val, "___selected", !val.___selected);
|
||||||
console.log(val.___selected);
|
console.log(val.___selected);
|
||||||
|
console.log(this.selectMember);
|
||||||
let findUser = this.selectMember.find((item) => {
|
let findUser = this.selectMember.find((item) => {
|
||||||
return item.id == val.id;
|
return item.id == val.id;
|
||||||
});
|
});
|
||||||
|
|
|
@ -18,7 +18,7 @@
|
||||||
import { getVerifyImg, postVerifyImg } from './verify.js';
|
import { getVerifyImg, postVerifyImg } from './verify.js';
|
||||||
export default {
|
export default {
|
||||||
props: {
|
props: {
|
||||||
verifyType: {
|
verifyType: { // 验证方式,登录,注册等
|
||||||
defalut: 'LOGIN',
|
defalut: 'LOGIN',
|
||||||
type: String
|
type: String
|
||||||
}
|
}
|
||||||
|
@ -97,9 +97,6 @@ export default {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
created () {
|
|
||||||
// this.getImg();
|
|
||||||
},
|
|
||||||
watch: {
|
watch: {
|
||||||
verifyType: {
|
verifyType: {
|
||||||
immediate: true,
|
immediate: true,
|
||||||
|
|
|
@ -98,8 +98,8 @@
|
||||||
|
|
||||||
</p>
|
</p>
|
||||||
<p class="item">
|
<p class="item">
|
||||||
<span class="label">店铺经纬度:</span>
|
<span class="label">店铺定位:</span>
|
||||||
<span class="info">{{storeInfo.storeCenter?storeInfo.storeCenter:'暂未完善'}}</span>
|
<span class="info">{{storeInfo.storeCenter?'已定位':'未定位'}}</span>
|
||||||
</p>
|
</p>
|
||||||
<p class="item">
|
<p class="item">
|
||||||
<span class="label">经营范围:</span>
|
<span class="label">经营范围:</span>
|
||||||
|
|
|
@ -27,8 +27,18 @@
|
||||||
</RadioGroup>
|
</RadioGroup>
|
||||||
</FormItem>
|
</FormItem>
|
||||||
|
|
||||||
<FormItem label="店铺经纬度" prop="shopCenter">
|
<FormItem label="店铺定位" prop="shopCenter">
|
||||||
<Input v-model="shopForm.storeCenter" @on-focus="$refs.liliMap.showMap = true" clearable style="width: 350px" />
|
<!-- <Input v-model="shopForm.storeCenter" @on-focus="$refs.liliMap.showMap = true" clearable style="width: 350px" /> -->
|
||||||
|
<Button
|
||||||
|
type="info"
|
||||||
|
v-if="!shopForm.storeCenter"
|
||||||
|
@click="$refs.liliMap.showMap = true"
|
||||||
|
>点击获取店铺定位</Button>
|
||||||
|
<Button
|
||||||
|
type="success"
|
||||||
|
v-else
|
||||||
|
@click="$refs.liliMap.showMap = true"
|
||||||
|
>已定位</Button>
|
||||||
</FormItem>
|
</FormItem>
|
||||||
|
|
||||||
<FormItem label="店铺所在地" prop="storeAddressPath">
|
<FormItem label="店铺所在地" prop="storeAddressPath">
|
||||||
|
@ -267,7 +277,7 @@ export default {
|
||||||
{ required: true, message: "店铺简介不能为空", trigger: "blur" },
|
{ required: true, message: "店铺简介不能为空", trigger: "blur" },
|
||||||
],
|
],
|
||||||
storeCenter: [
|
storeCenter: [
|
||||||
{ required: true, message: "店铺经纬度不能为空", trigger: "change" },
|
{ required: true, message: "店铺未定位", trigger: "change" },
|
||||||
],
|
],
|
||||||
companyName: [
|
companyName: [
|
||||||
{ required: true, message: "公司名称不能为空", trigger: "blur" },
|
{ required: true, message: "公司名称不能为空", trigger: "blur" },
|
||||||
|
|
|
@ -18,14 +18,14 @@ export default {
|
||||||
* @description api请求基础路径
|
* @description api请求基础路径
|
||||||
*/
|
*/
|
||||||
api_dev: {
|
api_dev: {
|
||||||
// common: 'https://common-api.pickmall.cn',
|
common: 'https://common-api.pickmall.cn',
|
||||||
// buyer: 'https://buyer-api.pickmall.cn',
|
buyer: 'https://buyer-api.pickmall.cn',
|
||||||
// seller: 'https://store-api.pickmall.cn',
|
seller: 'https://store-api.pickmall.cn',
|
||||||
// manager: 'https://admin-api.pickmall.cn',
|
manager: 'https://admin-api.pickmall.cn',
|
||||||
common: 'http://192.168.0.109:8890',
|
// common: 'http://192.168.0.100:8890',
|
||||||
buyer: 'http://192.168.0.109:8888',
|
// buyer: 'http://192.168.0.100:8888',
|
||||||
seller: 'http://192.168.0.109:8889',
|
// seller: 'http://192.168.0.100:8889',
|
||||||
manager: 'http://192.168.0.109:8887'
|
// manager: 'http://192.168.0.100:8887'
|
||||||
},
|
},
|
||||||
api_prod: {
|
api_prod: {
|
||||||
common: 'https://common-api.pickmall.cn',
|
common: 'https://common-api.pickmall.cn',
|
||||||
|
|
|
@ -423,7 +423,7 @@ div.base-info-item {
|
||||||
display:flex;
|
display:flex;
|
||||||
}
|
}
|
||||||
.demo-upload-list-cover div {
|
.demo-upload-list-cover div {
|
||||||
margin: 10% 0;
|
margin-top: 50px;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
|
|
||||||
> i {
|
> i {
|
||||||
|
|
|
@ -36,7 +36,7 @@
|
||||||
<DropdownItem name="uppers">批量上架</DropdownItem>
|
<DropdownItem name="uppers">批量上架</DropdownItem>
|
||||||
<DropdownItem name="lowers">批量下架</DropdownItem>
|
<DropdownItem name="lowers">批量下架</DropdownItem>
|
||||||
<DropdownItem name="deleteAll">批量删除</DropdownItem>
|
<DropdownItem name="deleteAll">批量删除</DropdownItem>
|
||||||
<!-- <DropdownItem name="batchShipTemplate">批量设置运费模板</DropdownItem> -->
|
<DropdownItem name="batchShipTemplate">批量设置物流模板</DropdownItem>
|
||||||
</DropdownMenu>
|
</DropdownMenu>
|
||||||
</Dropdown>
|
</Dropdown>
|
||||||
</Row>
|
</Row>
|
||||||
|
@ -87,21 +87,10 @@
|
||||||
</div>
|
</div>
|
||||||
</Modal>
|
</Modal>
|
||||||
|
|
||||||
<!-- 批量设置运费模板 -->
|
<!-- 批量设置物流模板 -->
|
||||||
<Modal title="批量设置运费模板" v-model="shipTemplateModal" :mask-closable="false" :width="500">
|
<Modal title="批量设置物流模板" v-model="shipTemplateModal" :mask-closable="false" :width="500">
|
||||||
<Form ref="shipTemplateForm" :model="shipTemplateForm" :label-width="120">
|
<Form ref="shipTemplateForm" :model="shipTemplateForm" :label-width="120">
|
||||||
<FormItem class="form-item-view-el" label="运费" prop="freightPayer">
|
<FormItem class="form-item-view-el" label="物流模板" prop="templateId">
|
||||||
<RadioGroup type="button" button-style="solid" @on-change="logisticsTemplateUndertakerChange" v-model="shipTemplateForm.freightPayer">
|
|
||||||
<Radio label="STORE">
|
|
||||||
<span>卖家承担运费</span>
|
|
||||||
</Radio>
|
|
||||||
<Radio label="BUYER">
|
|
||||||
<span>使用物流规则</span>
|
|
||||||
</Radio>
|
|
||||||
</RadioGroup>
|
|
||||||
</FormItem>
|
|
||||||
|
|
||||||
<FormItem class="form-item-view-el" label="物流模板" prop="templateId" v-if="shipTemplateShow">
|
|
||||||
<Select v-model="shipTemplateForm.templateId" style="width: 200px">
|
<Select v-model="shipTemplateForm.templateId" style="width: 200px">
|
||||||
<Option v-for="item in logisticsTemplate" :value="item.id" :key="item.id">{{ item.name }}
|
<Option v-for="item in logisticsTemplate" :value="item.id" :key="item.id">{{ item.name }}
|
||||||
</Option>
|
</Option>
|
||||||
|
@ -124,10 +113,9 @@ import {
|
||||||
upGoods,
|
upGoods,
|
||||||
lowGoods,
|
lowGoods,
|
||||||
deleteGoods,
|
deleteGoods,
|
||||||
batchShipTemplate,
|
batchShipTemplate
|
||||||
} from "@/api/goods";
|
} from "@/api/goods";
|
||||||
|
import * as API_Shop from "@/api/shops";
|
||||||
import * as API_Store from "@/api/shops";
|
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "goods",
|
name: "goods",
|
||||||
|
@ -135,10 +123,7 @@ export default {
|
||||||
return {
|
return {
|
||||||
id: "", //要操作的id
|
id: "", //要操作的id
|
||||||
loading: true, // 表单加载状态
|
loading: true, // 表单加载状态
|
||||||
shipTemplateForm: {
|
shipTemplateForm: {},
|
||||||
freightPayer: "STORE",
|
|
||||||
},
|
|
||||||
shipTemplateShow: false, //物流模板是否显示
|
|
||||||
shipTemplateModal: false, // 物流模板是否显示
|
shipTemplateModal: false, // 物流模板是否显示
|
||||||
logisticsTemplate: [], // 物流列表
|
logisticsTemplate: [], // 物流列表
|
||||||
updateStockModalVisible: false, // 更新库存模态框显隐
|
updateStockModalVisible: false, // 更新库存模态框显隐
|
||||||
|
@ -421,11 +406,12 @@ export default {
|
||||||
if (v == "deleteAll") {
|
if (v == "deleteAll") {
|
||||||
this.deleteAll();
|
this.deleteAll();
|
||||||
}
|
}
|
||||||
//批量设置运费模板
|
//批量设置物流模板
|
||||||
if (v == "batchShipTemplate") {
|
if (v == "batchShipTemplate") {
|
||||||
this.batchShipTemplate();
|
this.batchShipTemplate();
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
// 获取库存详情
|
||||||
getStockDetail(id) {
|
getStockDetail(id) {
|
||||||
getGoodsSkuListDataSeller({ goodsId: id, pageSize: 1000 }).then((res) => {
|
getGoodsSkuListDataSeller({ goodsId: id, pageSize: 1000 }).then((res) => {
|
||||||
if (res.success) {
|
if (res.success) {
|
||||||
|
@ -435,6 +421,7 @@ export default {
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
// 更新库存
|
||||||
updateStock() {
|
updateStock() {
|
||||||
let updateStockList = this.stockList.map((i) => {
|
let updateStockList = this.stockList.map((i) => {
|
||||||
let j = { skuId: i.id, quantity: i.quantity };
|
let j = { skuId: i.id, quantity: i.quantity };
|
||||||
|
@ -486,28 +473,24 @@ export default {
|
||||||
this.selectList = e;
|
this.selectList = e;
|
||||||
this.selectCount = e.length;
|
this.selectCount = e.length;
|
||||||
},
|
},
|
||||||
//保存运费模板信息
|
//保存物流模板信息
|
||||||
saveShipTemplate() {
|
saveShipTemplate() {
|
||||||
if (this.shipTemplateForm.freightPayer == "STORE") {
|
|
||||||
{
|
|
||||||
this.shipTemplateForm.templateId = 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
this.$Modal.confirm({
|
this.$Modal.confirm({
|
||||||
title: "确认设置运费模板",
|
title: "确认设置物流模板",
|
||||||
content:
|
content:
|
||||||
"您确认要设置所选的 " + this.selectCount + " 个商品的运费模板?",
|
"您确认要设置所选的 " + this.selectCount + " 个商品的物流模板?",
|
||||||
loading: true,
|
loading: true,
|
||||||
onOk: () => {
|
onOk: () => {
|
||||||
let ids = [];
|
let ids = [];
|
||||||
this.selectList.forEach(function (e) {
|
this.selectList.forEach(function (e) {
|
||||||
ids.push(e.id);
|
ids.push(e.id);
|
||||||
});
|
});
|
||||||
// 批量设置运费模板
|
// 批量设置物流模板
|
||||||
batchShipTemplate(this.shipTemplateForm).then((res) => {
|
batchShipTemplate(this.shipTemplateForm).then((res) => {
|
||||||
this.$Modal.remove();
|
this.$Modal.remove();
|
||||||
if (res.success) {
|
if (res.success) {
|
||||||
this.$Message.success("运费模板设置成功");
|
this.$Message.success("物流模板设置成功");
|
||||||
this.clearSelectAll();
|
this.clearSelectAll();
|
||||||
this.getDataList();
|
this.getDataList();
|
||||||
}
|
}
|
||||||
|
@ -516,12 +499,13 @@ export default {
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
//批量设置运费模板
|
//批量设置物流模板
|
||||||
batchShipTemplate() {
|
batchShipTemplate() {
|
||||||
if (this.selectCount <= 0) {
|
if (this.selectCount <= 0) {
|
||||||
this.$Message.warning("您还未选择要设置运费模板的商品");
|
this.$Message.warning("您还未选择要设置物流模板的商品");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
this.getShipTempList()
|
||||||
let data = [];
|
let data = [];
|
||||||
this.selectList.forEach(function (e) {
|
this.selectList.forEach(function (e) {
|
||||||
data.push(e.id);
|
data.push(e.id);
|
||||||
|
@ -529,21 +513,7 @@ export default {
|
||||||
this.shipTemplateForm.goodsId = data;
|
this.shipTemplateForm.goodsId = data;
|
||||||
this.shipTemplateModal = true;
|
this.shipTemplateModal = true;
|
||||||
},
|
},
|
||||||
//运费承担者变化
|
// 获取商品列表数据
|
||||||
logisticsTemplateUndertakerChange(v) {
|
|
||||||
//如果是卖家承担运费 需要显示运费模板
|
|
||||||
if (v == "BUYER") {
|
|
||||||
API_Store.getShipTemplate().then((res) => {
|
|
||||||
if (res.success) {
|
|
||||||
this.logisticsTemplate = res.result;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
this.shipTemplateShow = true;
|
|
||||||
}
|
|
||||||
if (v == "STORE") {
|
|
||||||
this.shipTemplateShow = false;
|
|
||||||
}
|
|
||||||
},
|
|
||||||
getDataList() {
|
getDataList() {
|
||||||
this.loading = true;
|
this.loading = true;
|
||||||
// 带多条件搜索参数获取表单数据
|
// 带多条件搜索参数获取表单数据
|
||||||
|
@ -555,6 +525,14 @@ export default {
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
// 获取物流模板
|
||||||
|
getShipTempList () {
|
||||||
|
API_Shop.getShipTemplate().then((res) => {
|
||||||
|
if (res.success) {
|
||||||
|
this.logisticsTemplate = res.result;
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
//下架商品
|
//下架商品
|
||||||
lower(v) {
|
lower(v) {
|
||||||
this.$Modal.confirm({
|
this.$Modal.confirm({
|
||||||
|
|
|
@ -137,27 +137,33 @@
|
||||||
<Input type="text" v-model="baseInfoForm.cost" placeholder="市场价格" clearable style="width: 260px"/>
|
<Input type="text" v-model="baseInfoForm.cost" placeholder="市场价格" clearable style="width: 260px"/>
|
||||||
</FormItem>
|
</FormItem>
|
||||||
<FormItem class="form-item-view-el required" label="商品图片" prop="goodsGalleryFiles">
|
<FormItem class="form-item-view-el required" label="商品图片" prop="goodsGalleryFiles">
|
||||||
|
<vuedraggable
|
||||||
|
:list="baseInfoForm.goodsGalleryFiles"
|
||||||
|
:animation="200"
|
||||||
|
style="display:inline-block;"
|
||||||
|
ghost-class="thumb-ghost"
|
||||||
|
>
|
||||||
<div class="demo-upload-list" v-for="(item, __index) in baseInfoForm.goodsGalleryFiles" :key="__index">
|
<div class="demo-upload-list" v-for="(item, __index) in baseInfoForm.goodsGalleryFiles" :key="__index">
|
||||||
<template v-if="item.status === 'finished'">
|
<template v-if="item.status === 'finished'">
|
||||||
<img :src="item.url"/>
|
<img :src="item.url"/>
|
||||||
|
|
||||||
<div class="demo-upload-list-cover">
|
<div class="demo-upload-list-cover">
|
||||||
<div>
|
<div>
|
||||||
<Icon type="ios-eye-outline" @click.native="handleViewGoodsPicture(item.url)"></Icon>
|
<Icon type="ios-eye-outline" size="30" @click.native="handleViewGoodsPicture(item.url)"></Icon>
|
||||||
<Icon type="ios-trash-outline" @click.native="handleRemoveGoodsPicture(item)"></Icon>
|
<Icon type="ios-trash-outline" size="30" @click.native="handleRemoveGoodsPicture(item)"></Icon>
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<!-- <div>
|
||||||
<Icon type="ios-arrow-dropleft" @click.native="
|
<Icon type="ios-arrow-dropleft" @click.native="
|
||||||
handleGoodsPicRemoteUp(baseInfoForm.goodsGalleryFiles,__index)"/>
|
handleGoodsPicRemoteUp(baseInfoForm.goodsGalleryFiles,__index)"/>
|
||||||
<Icon type="ios-arrow-dropright" @click.native="
|
<Icon type="ios-arrow-dropright" @click.native="
|
||||||
handleGoodsPicRemoteDown(baseInfoForm.goodsGalleryFiles,__index)"/>
|
handleGoodsPicRemoteDown(baseInfoForm.goodsGalleryFiles,__index)"/>
|
||||||
</div>
|
</div> -->
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<template v-else>
|
<template v-else>
|
||||||
<Progress v-if="item.showProgress" :percent="item.percentage" hide-info></Progress>
|
<Progress v-if="item.showProgress" :percent="item.percentage" hide-info></Progress>
|
||||||
</template>
|
</template>
|
||||||
</div>
|
</div>
|
||||||
|
</vuedraggable>
|
||||||
<Upload ref="upload" :show-upload-list="false" :default-file-list="baseInfoForm.goodsGalleryFiles"
|
<Upload ref="upload" :show-upload-list="false" :default-file-list="baseInfoForm.goodsGalleryFiles"
|
||||||
:on-success="handleSuccessGoodsPicture" :format="['jpg', 'jpeg', 'png']"
|
:on-success="handleSuccessGoodsPicture" :format="['jpg', 'jpeg', 'png']"
|
||||||
:on-format-error="handleFormatError" :on-exceeded-size="handleMaxSize"
|
:on-format-error="handleFormatError" :on-exceeded-size="handleMaxSize"
|
||||||
|
@ -167,6 +173,7 @@
|
||||||
<Icon type="ios-camera" size="20"></Icon>
|
<Icon type="ios-camera" size="20"></Icon>
|
||||||
</div>
|
</div>
|
||||||
</Upload>
|
</Upload>
|
||||||
|
<!-- <upload-pic-thumb v-model="baseInfoForm.goodsGalleryFiles" :multiple="true"></upload-pic-thumb> -->
|
||||||
|
|
||||||
<Modal title="View Image" v-model="goodsPictureVisible">
|
<Modal title="View Image" v-model="goodsPictureVisible">
|
||||||
<img :src="previewGoodsPicture" v-if="goodsPictureVisible" style="width: 100%"/>
|
<img :src="previewGoodsPicture" v-if="goodsPictureVisible" style="width: 100%"/>
|
||||||
|
@ -371,7 +378,7 @@
|
||||||
<Select v-model="params.paramValue" placeholder="请选择" style="width: 200px" clearable
|
<Select v-model="params.paramValue" placeholder="请选择" style="width: 200px" clearable
|
||||||
@on-change="selectParams(paramsGroup,groupIndex,params,paramsIndex,params.paramValue)">
|
@on-change="selectParams(paramsGroup,groupIndex,params,paramsIndex,params.paramValue)">
|
||||||
<Option v-for="option in params.options.split(',')" :label="option"
|
<Option v-for="option in params.options.split(',')" :label="option"
|
||||||
:value="option"></Option>
|
:value="option" :key="option"></Option>
|
||||||
</Select>
|
</Select>
|
||||||
</FormItem>
|
</FormItem>
|
||||||
</p>
|
</p>
|
||||||
|
@ -428,18 +435,17 @@
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import {regular} from "@/utils";
|
import {regular} from "@/utils";
|
||||||
import uploadPicThumb from "@/views/my-components/lili/upload-pic-thumb";
|
|
||||||
import editor from "@/views/my-components/lili/editor";
|
import editor from "@/views/my-components/lili/editor";
|
||||||
import * as API_GOODS from "@/api/goods";
|
import * as API_GOODS from "@/api/goods";
|
||||||
import * as API_Shop from "@/api/shops";
|
import * as API_Shop from "@/api/shops";
|
||||||
|
|
||||||
import cloneObj from "@/utils/index";
|
import cloneObj from "@/utils/index";
|
||||||
|
import vuedraggable from "vuedraggable";
|
||||||
export default {
|
export default {
|
||||||
name: "addGoods",
|
name: "addGoods",
|
||||||
components: {
|
components: {
|
||||||
uploadPicThumb,
|
|
||||||
editor,
|
editor,
|
||||||
|
vuedraggable
|
||||||
},
|
},
|
||||||
watch: {
|
watch: {
|
||||||
selectGoodsType: {
|
selectGoodsType: {
|
||||||
|
@ -620,8 +626,8 @@ export default {
|
||||||
updateSku: true,
|
updateSku: true,
|
||||||
/** 是否重新生成sku */
|
/** 是否重新生成sku */
|
||||||
regeneratorSkuFlag: false,
|
regeneratorSkuFlag: false,
|
||||||
/** 运费模板id **/
|
/** 物流模板id **/
|
||||||
templateId: 0,
|
templateId: '',
|
||||||
/** 参数组*/
|
/** 参数组*/
|
||||||
goodsParamsDTOList: [],
|
goodsParamsDTOList: [],
|
||||||
},
|
},
|
||||||
|
@ -647,7 +653,7 @@ export default {
|
||||||
/** 规格图片 */
|
/** 规格图片 */
|
||||||
images: [],
|
images: [],
|
||||||
|
|
||||||
/** 运费模板 **/
|
/** 物流模板 **/
|
||||||
logisticsTemplate: [],
|
logisticsTemplate: [],
|
||||||
|
|
||||||
/** 固定列校验提示内容 */
|
/** 固定列校验提示内容 */
|
||||||
|
@ -685,6 +691,7 @@ export default {
|
||||||
{required: true, message: "请输入物流参数"},
|
{required: true, message: "请输入物流参数"},
|
||||||
{validator: checkWeight},
|
{validator: checkWeight},
|
||||||
],
|
],
|
||||||
|
templateId: [{required: true, message: '请选择物流模板'}],
|
||||||
sellingPoint: [{required: true, message: "请输入商品卖点"}],
|
sellingPoint: [{required: true, message: "请输入商品卖点"}],
|
||||||
goodsUnit: [{required: true, message: "请选择计量单位"}],
|
goodsUnit: [{required: true, message: "请选择计量单位"}],
|
||||||
},
|
},
|
||||||
|
@ -715,7 +722,7 @@ export default {
|
||||||
this.accessToken = {
|
this.accessToken = {
|
||||||
accessToken: this.getStore("accessToken"),
|
accessToken: this.getStore("accessToken"),
|
||||||
};
|
};
|
||||||
// 获取运费模板
|
// 获取物流模板
|
||||||
API_Shop.getShipTemplate().then((res) => {
|
API_Shop.getShipTemplate().then((res) => {
|
||||||
if (res.success) {
|
if (res.success) {
|
||||||
this.logisticsTemplate = res.result;
|
this.logisticsTemplate = res.result;
|
||||||
|
@ -763,7 +770,7 @@ export default {
|
||||||
mobileIntro: "",
|
mobileIntro: "",
|
||||||
updateSku: true,
|
updateSku: true,
|
||||||
regeneratorSkuFlag: false,
|
regeneratorSkuFlag: false,
|
||||||
templateId: 0,
|
templateId: '',
|
||||||
goodsParamsDTOList: [],
|
goodsParamsDTOList: [],
|
||||||
};
|
};
|
||||||
this.activestep = 0;
|
this.activestep = 0;
|
||||||
|
@ -837,7 +844,6 @@ export default {
|
||||||
* @value 参数选项值
|
* @value 参数选项值
|
||||||
*/
|
*/
|
||||||
selectParams(paramsGroup, groupIndex, params, paramsIndex, value) {
|
selectParams(paramsGroup, groupIndex, params, paramsIndex, value) {
|
||||||
console.log(params.id);
|
|
||||||
if (!this.baseInfoForm.goodsParamsDTOList[groupIndex]) {
|
if (!this.baseInfoForm.goodsParamsDTOList[groupIndex]) {
|
||||||
this.baseInfoForm.goodsParamsDTOList[groupIndex] = {
|
this.baseInfoForm.goodsParamsDTOList[groupIndex] = {
|
||||||
groupId:'',
|
groupId:'',
|
||||||
|
@ -871,14 +877,13 @@ export default {
|
||||||
|
|
||||||
// 编辑sku图片
|
// 编辑sku图片
|
||||||
editSkuPicture(row) {
|
editSkuPicture(row) {
|
||||||
console.log(row);
|
|
||||||
if (row.images && row.images.length > 0) {
|
if (row.images && row.images.length > 0) {
|
||||||
this.previewPicture = row.images[0].url;
|
this.previewPicture = row.images[0].url;
|
||||||
}
|
}
|
||||||
this.selectedSku = row;
|
this.selectedSku = row;
|
||||||
this.showSkuPicture = true;
|
this.showSkuPicture = true;
|
||||||
},
|
},
|
||||||
handleView(url) {
|
handleView (url) {
|
||||||
this.previewPicture = url;
|
this.previewPicture = url;
|
||||||
this.visible = true;
|
this.visible = true;
|
||||||
},
|
},
|
||||||
|
@ -937,7 +942,6 @@ export default {
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
handleBeforeUploadGoodsPicture() {
|
handleBeforeUploadGoodsPicture() {
|
||||||
console.log(this.baseInfoForm);
|
|
||||||
const check = this.baseInfoForm.goodsGalleryFiles.length < 5;
|
const check = this.baseInfoForm.goodsGalleryFiles.length < 5;
|
||||||
if (!check) {
|
if (!check) {
|
||||||
this.$Notice.warning({
|
this.$Notice.warning({
|
||||||
|
@ -1016,7 +1020,6 @@ export default {
|
||||||
...this.baseInfoForm,
|
...this.baseInfoForm,
|
||||||
...response.result,
|
...response.result,
|
||||||
};
|
};
|
||||||
// console.warn(this.baseInfoForm);
|
|
||||||
|
|
||||||
this.baseInfoForm.release = "true";
|
this.baseInfoForm.release = "true";
|
||||||
this.baseInfoForm.recommend = this.baseInfoForm.recommend
|
this.baseInfoForm.recommend = this.baseInfoForm.recommend
|
||||||
|
@ -1140,7 +1143,6 @@ export default {
|
||||||
group.goodsParamsItemDTOList.forEach(param => {
|
group.goodsParamsItemDTOList.forEach(param => {
|
||||||
param.groupId = group.groupId
|
param.groupId = group.groupId
|
||||||
paramsArr.push(param)
|
paramsArr.push(param)
|
||||||
console.log(param);
|
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
// 循环参数分组
|
// 循环参数分组
|
||||||
|
@ -1154,7 +1156,6 @@ export default {
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
});
|
});
|
||||||
console.log(this.goodsParams);
|
|
||||||
} else {
|
} else {
|
||||||
this.baseInfoForm.goodsParamsDTOList = []
|
this.baseInfoForm.goodsParamsDTOList = []
|
||||||
}
|
}
|
||||||
|
@ -1183,10 +1184,7 @@ export default {
|
||||||
},
|
},
|
||||||
// 编辑规格值
|
// 编辑规格值
|
||||||
async skuValueChange(val, index, item) {
|
async skuValueChange(val, index, item) {
|
||||||
/** 更新skuInfo数据 */
|
|
||||||
// let _arr = cloneObj(item);
|
|
||||||
// this.$set(item, "name", _arr.name);
|
|
||||||
// this.$set(this.skuInfo, index, _arr);
|
|
||||||
/**
|
/**
|
||||||
* 渲染规格详细表格
|
* 渲染规格详细表格
|
||||||
*/
|
*/
|
||||||
|
@ -1308,7 +1306,6 @@ export default {
|
||||||
);
|
);
|
||||||
|
|
||||||
this.skuTableColumn = pushData;
|
this.skuTableColumn = pushData;
|
||||||
console.log(this.skuTableColumn);
|
|
||||||
//克隆所有渲染的数据
|
//克隆所有渲染的数据
|
||||||
let cloneTemp = cloneObj(this.skuInfo);
|
let cloneTemp = cloneObj(this.skuInfo);
|
||||||
|
|
||||||
|
@ -1328,7 +1325,6 @@ export default {
|
||||||
cloneTemp.splice(0, 1);
|
cloneTemp.splice(0, 1);
|
||||||
result = this.specIterator(result, cloneTemp);
|
result = this.specIterator(result, cloneTemp);
|
||||||
this.skuTableData = result;
|
this.skuTableData = result;
|
||||||
console.log(this.skuTableData);
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
/**
|
/**
|
||||||
|
@ -1458,7 +1454,6 @@ export default {
|
||||||
this.GET_GoodData();
|
this.GET_GoodData();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
console.log(this.baseInfoForm);
|
|
||||||
this.GET_GoodsParams();
|
this.GET_GoodsParams();
|
||||||
/** 1级校验 */
|
/** 1级校验 */
|
||||||
this.loading = true;
|
this.loading = true;
|
||||||
|
@ -1548,6 +1543,7 @@ export default {
|
||||||
this.$Message.error("请上传商品图片");
|
this.$Message.error("请上传商品图片");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
if (this.baseInfoForm.templateId === '') this.baseInfoForm.templateId = 0;
|
||||||
let flag = false;
|
let flag = false;
|
||||||
let paramValue = "";
|
let paramValue = "";
|
||||||
// //参数校验
|
// //参数校验
|
||||||
|
@ -1580,7 +1576,6 @@ export default {
|
||||||
}
|
}
|
||||||
/** 参数校验 **/
|
/** 参数校验 **/
|
||||||
/* Object.keys(this.baseInfoForm.goodsParamsList).forEach((item) => {
|
/* Object.keys(this.baseInfoForm.goodsParamsList).forEach((item) => {
|
||||||
console.warn(item.paramName)
|
|
||||||
});*/
|
});*/
|
||||||
|
|
||||||
if (this.goodsId) {
|
if (this.goodsId) {
|
||||||
|
|
|
@ -121,7 +121,7 @@
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="detail-item">
|
<div class="detail-item">
|
||||||
<div>
|
<div @click="navigateTo('seckill')">
|
||||||
<span>{{homeData.seckillNum || 0}}</span>
|
<span>{{homeData.seckillNum || 0}}</span>
|
||||||
<div>待参加活动</div>
|
<div>待参加活动</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -48,7 +48,7 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="card-item">
|
<div class="card-item">
|
||||||
<div class="card-item-label">下单金额</div>
|
<div class="card-item-label">下单金额</div>
|
||||||
<div class="card-item-value">{{overViewList.orderAmount| unitPrice('¥') }}</div>
|
<div class="card-item-value">{{overViewList.orderAmount ? ($options.filters.unitPrice(overViewList.orderAmount )) : 0 }}</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-item">
|
<div class="card-item">
|
||||||
<div class="card-item-label">付款笔数</div>
|
<div class="card-item-label">付款笔数</div>
|
||||||
|
@ -56,7 +56,7 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="card-item">
|
<div class="card-item">
|
||||||
<div class="card-item-label">付款金额</div>
|
<div class="card-item-label">付款金额</div>
|
||||||
<div class="card-item-value">{{overViewList.paymentAmount | unitPrice('¥')}}</div>
|
<div class="card-item-value">{{ overViewList.paymentAmount ? ($options.filters.unitPrice(overViewList.paymentAmount)) : 0 }}</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
Loading…
Reference in New Issue