feat(goods): 商品-基础设置添加秒杀配置
This commit is contained in:
parent
dcd0bd7356
commit
3ad71821ba
|
@ -761,3 +761,11 @@ export function getMaxSortNum(params) {
|
||||||
params
|
params
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export function resetInventoryUse(data) {
|
||||||
|
return request({
|
||||||
|
url: 'sale/manage/wares/resetInventoryUse',
|
||||||
|
method: 'post',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
|
@ -0,0 +1,510 @@
|
||||||
|
|
||||||
|
import { getToken } from '@/utils/auth'
|
||||||
|
import { getAwardsListChiose } from '@/api/level'
|
||||||
|
import * as api from '@/api/product.js'
|
||||||
|
import { specialArea } from '@/api/configManage'
|
||||||
|
|
||||||
|
const initFlashSaleForm = {
|
||||||
|
inventory: '',
|
||||||
|
inventoryUse: 0,
|
||||||
|
inventoryRatio: '',
|
||||||
|
memberLimit: '',
|
||||||
|
memberMonthLimit: ''
|
||||||
|
}
|
||||||
|
export default {
|
||||||
|
|
||||||
|
data() {
|
||||||
|
const validateMemberMonthLimit = (rule, value, callback) => {
|
||||||
|
if (value > this.form.memberLimit) {
|
||||||
|
callback(new Error('会员月限购不能大于会员总限购'))
|
||||||
|
} else {
|
||||||
|
callback()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return {
|
||||||
|
levelAll: false,
|
||||||
|
gradeAll: false,
|
||||||
|
// 产品明细
|
||||||
|
cpList: [],
|
||||||
|
uploadImgUrl: process.env.VUE_APP_BASE_API + '/system/upload',
|
||||||
|
headers: {
|
||||||
|
Authorization: getToken()
|
||||||
|
},
|
||||||
|
dialogImageUrl: '',
|
||||||
|
dialogVisible: false,
|
||||||
|
form: {
|
||||||
|
isMakerGift: 1,
|
||||||
|
waresGradeIds: [],
|
||||||
|
waresAwardsIds: [],
|
||||||
|
sales: '',
|
||||||
|
sortStatus: 0,
|
||||||
|
waresCode: '',
|
||||||
|
sort: '',
|
||||||
|
sptw: '',
|
||||||
|
ysList: [],
|
||||||
|
bzList: [],
|
||||||
|
pkGuaranteeLabel: [],
|
||||||
|
specialArea: '',
|
||||||
|
checkList: [],
|
||||||
|
waresMemberAuthorizeList: [],
|
||||||
|
waresAuthorityList: [
|
||||||
|
{
|
||||||
|
authorityType: 5,
|
||||||
|
memberCode: ''
|
||||||
|
}
|
||||||
|
],
|
||||||
|
waresSpecsPackList: [{ key: '', value: '' }],
|
||||||
|
...initFlashSaleForm
|
||||||
|
},
|
||||||
|
tabActive: 0,
|
||||||
|
waresDetailList: [],
|
||||||
|
waresSpecsSkuList: [],
|
||||||
|
waresRangeList: [],
|
||||||
|
agreeList: [
|
||||||
|
{
|
||||||
|
text: '允许',
|
||||||
|
val: 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
text: '禁止',
|
||||||
|
val: 1
|
||||||
|
}
|
||||||
|
],
|
||||||
|
// 套餐类型
|
||||||
|
tcList: [
|
||||||
|
{
|
||||||
|
text: '套装',
|
||||||
|
val: 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
text: '单品',
|
||||||
|
val: 1
|
||||||
|
}
|
||||||
|
],
|
||||||
|
postList: [
|
||||||
|
{
|
||||||
|
text: '包邮',
|
||||||
|
val: 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
text: '不包邮',
|
||||||
|
val: 1
|
||||||
|
}
|
||||||
|
],
|
||||||
|
isTj: [
|
||||||
|
{
|
||||||
|
label: '推荐',
|
||||||
|
value: 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: '不推荐',
|
||||||
|
value: 1
|
||||||
|
}
|
||||||
|
],
|
||||||
|
xsList: [
|
||||||
|
{
|
||||||
|
text: '允许出售',
|
||||||
|
val: 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
text: '禁止出售',
|
||||||
|
val: 1
|
||||||
|
}
|
||||||
|
],
|
||||||
|
topList: [
|
||||||
|
{
|
||||||
|
name: '基础设置',
|
||||||
|
id: 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '产品明细',
|
||||||
|
id: 1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '规格明细',
|
||||||
|
id: 2
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '团队配置',
|
||||||
|
id: 3
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '等级配置',
|
||||||
|
id: 5
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '奖衔配置',
|
||||||
|
id: 6
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '商品权限',
|
||||||
|
id: 7
|
||||||
|
}
|
||||||
|
],
|
||||||
|
goodList: [],
|
||||||
|
copyArr: [],
|
||||||
|
// 血缘列表
|
||||||
|
xyList: '',
|
||||||
|
// 海陆空
|
||||||
|
transportTypeList: [],
|
||||||
|
// 商品分类
|
||||||
|
hierarchyList: [],
|
||||||
|
// 所属专区
|
||||||
|
areaList: [],
|
||||||
|
// 预售状态
|
||||||
|
presaleList: [],
|
||||||
|
// 供应方式
|
||||||
|
gyList: [],
|
||||||
|
// 前缀标签
|
||||||
|
qzList: [],
|
||||||
|
// 酷炫标签
|
||||||
|
kxList: [],
|
||||||
|
// 保障标签
|
||||||
|
bzList: [],
|
||||||
|
// 卖点标签
|
||||||
|
mdList: [],
|
||||||
|
// 协议
|
||||||
|
agreementList: [],
|
||||||
|
// 邮费模板
|
||||||
|
postMoneyList1: [],
|
||||||
|
postMoneyList2: [],
|
||||||
|
postMoneyList3: [],
|
||||||
|
rules: {
|
||||||
|
waresName: [
|
||||||
|
{ required: true, message: '请输入商品名称', trigger: 'blur' }
|
||||||
|
],
|
||||||
|
sortStatus: [
|
||||||
|
{ required: true, message: '请选择', trigger: 'change' }
|
||||||
|
],
|
||||||
|
waresCode: [
|
||||||
|
{ required: true, message: '请输入商品编码', trigger: 'blur' }
|
||||||
|
],
|
||||||
|
sellingPoints: [
|
||||||
|
{ required: true, message: '请输入商品卖点', trigger: 'blur' }
|
||||||
|
],
|
||||||
|
sales: [{ required: true, message: '请输入商品销量', trigger: 'blur' }],
|
||||||
|
waresPrice: [
|
||||||
|
{ required: true, message: '请输入商品价格', trigger: 'blur' }
|
||||||
|
],
|
||||||
|
waresAchieve: [
|
||||||
|
{ required: true, message: '请输入商品业绩', trigger: 'blur' }
|
||||||
|
],
|
||||||
|
sort: [
|
||||||
|
{ required: true, message: '请输入排列序号', trigger: 'blur' }
|
||||||
|
],
|
||||||
|
pkAreaClassifys: [
|
||||||
|
{ required: true, message: '请选择商品分类', trigger: 'change' }
|
||||||
|
],
|
||||||
|
specialArea: [
|
||||||
|
{ required: true, message: '请选择所属专区', trigger: 'change' }
|
||||||
|
],
|
||||||
|
isPutOn: [
|
||||||
|
{ required: true, message: '请选择上架状态', trigger: 'change' }
|
||||||
|
],
|
||||||
|
operateScope: [
|
||||||
|
{ required: true, message: '请选择供应方式', trigger: 'change' }
|
||||||
|
],
|
||||||
|
preSaleStatus: [
|
||||||
|
{
|
||||||
|
required: true,
|
||||||
|
message: '请选择预售状态',
|
||||||
|
trigger: 'change'
|
||||||
|
}
|
||||||
|
],
|
||||||
|
isSale: [
|
||||||
|
{ required: true, message: '请选择销售状态', trigger: 'change' }
|
||||||
|
],
|
||||||
|
isSingle: [
|
||||||
|
{
|
||||||
|
required: true,
|
||||||
|
message: '请选择套餐类型',
|
||||||
|
trigger: 'change'
|
||||||
|
}
|
||||||
|
],
|
||||||
|
pkAgreement: [
|
||||||
|
{ required: true, message: '请选择补充协议', trigger: 'change' }
|
||||||
|
],
|
||||||
|
isFreeMail: [
|
||||||
|
{ required: true, message: '请选择包邮类型', trigger: 'change' }
|
||||||
|
],
|
||||||
|
// videoUrl: [
|
||||||
|
// { required: true, message: '请上传商品视频', trigger: 'blur' }
|
||||||
|
// ],
|
||||||
|
cover: [{ required: true, message: '请上传商品封面', trigger: 'blur' }],
|
||||||
|
cover1: [
|
||||||
|
{ required: true, message: '请上传图片', trigger: 'blur' }
|
||||||
|
],
|
||||||
|
// cover2: [
|
||||||
|
// { required: true, message: '请上传图片', trigger: 'blur' }
|
||||||
|
// ],
|
||||||
|
// cover3: [
|
||||||
|
// { required: true, message: '请上传图片', trigger: 'blur' }
|
||||||
|
// ],
|
||||||
|
// cover4: [
|
||||||
|
// { required: true, message: '请上传图片', trigger: 'blur' }
|
||||||
|
// ],
|
||||||
|
details: [
|
||||||
|
{ required: true, message: '请输入商品详情', trigger: 'blur' }
|
||||||
|
],
|
||||||
|
afterGuarantee: [
|
||||||
|
{ required: true, message: '请输入售后保障', trigger: 'blur' }
|
||||||
|
],
|
||||||
|
inventory: [
|
||||||
|
{ required: true, message: '请输入库存数量', trigger: 'blur' }
|
||||||
|
],
|
||||||
|
inventoryRatio: [
|
||||||
|
{ required: true, message: '请输入库存倒计时比例', trigger: 'blur' }
|
||||||
|
],
|
||||||
|
memberLimit: [
|
||||||
|
{ required: true, message: '请输入会员总限购', trigger: 'blur' }
|
||||||
|
],
|
||||||
|
memberMonthLimit: [
|
||||||
|
{ required: true, message: '请输入会员月限购', trigger: 'blur' },
|
||||||
|
{ validator: validateMemberMonthLimit, trigger: 'blur' }
|
||||||
|
]
|
||||||
|
},
|
||||||
|
levelList: [],
|
||||||
|
yesNo: [],
|
||||||
|
waresTypeList: [],
|
||||||
|
specialCurrency: [],
|
||||||
|
awardsList: [],
|
||||||
|
authorityList: [],
|
||||||
|
sortList: []
|
||||||
|
}
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
get_hierarchy_list(val) {
|
||||||
|
api
|
||||||
|
.get_hierarchy_list({
|
||||||
|
specialArea: val || null
|
||||||
|
})
|
||||||
|
.then((res) => {
|
||||||
|
this.hierarchyList = res.data
|
||||||
|
})
|
||||||
|
},
|
||||||
|
// 运输方式
|
||||||
|
getTransportType() {
|
||||||
|
api.transportType().then((res) => {
|
||||||
|
this.transportTypeList = res.data
|
||||||
|
})
|
||||||
|
},
|
||||||
|
setTopList(specialAreaId) {
|
||||||
|
if (
|
||||||
|
[3, 26, 12, 22].includes(specialAreaId)
|
||||||
|
) {
|
||||||
|
const idx = this.topList.findIndex((item) => item.id === 3)
|
||||||
|
this.topList.splice(idx, 0, {
|
||||||
|
name: '级差配置',
|
||||||
|
id: 4
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
const idx = this.topList.findIndex((item) => item.id === 4)
|
||||||
|
this.topList.splice(idx, 1)
|
||||||
|
}
|
||||||
|
},
|
||||||
|
selSpecial(e) {
|
||||||
|
this.get_hierarchy_list(e)
|
||||||
|
this.setTopList(e)
|
||||||
|
},
|
||||||
|
getGrade(e) {
|
||||||
|
if (e) {
|
||||||
|
const gradeArr = this.awardsList.map((item) => {
|
||||||
|
return item.pkId
|
||||||
|
})
|
||||||
|
this.form.waresAwardsIds = gradeArr
|
||||||
|
} else {
|
||||||
|
this.form.waresAwardsIds = []
|
||||||
|
}
|
||||||
|
},
|
||||||
|
getGradeAll(e) {
|
||||||
|
if (e.length == this.awardsList.length) {
|
||||||
|
this.gradeAll = true
|
||||||
|
} else {
|
||||||
|
this.gradeAll = false
|
||||||
|
}
|
||||||
|
},
|
||||||
|
getRangeList() {
|
||||||
|
api.rangeList().then((res) => {
|
||||||
|
this.levelList = res.data
|
||||||
|
})
|
||||||
|
},
|
||||||
|
getWaresCode() {
|
||||||
|
api.getWaresCode().then((res) => {
|
||||||
|
this.form.waresCode = res.msg
|
||||||
|
})
|
||||||
|
},
|
||||||
|
getLevel(e) {
|
||||||
|
if (e) {
|
||||||
|
const levelArr = this.levelList.map((item) => {
|
||||||
|
return item.pkId
|
||||||
|
})
|
||||||
|
this.form.waresGradeIds = levelArr
|
||||||
|
} else {
|
||||||
|
this.form.waresGradeIds = []
|
||||||
|
}
|
||||||
|
},
|
||||||
|
getLevelAll(e) {
|
||||||
|
if (e.length == this.levelList.length) {
|
||||||
|
this.levelAll = true
|
||||||
|
} else {
|
||||||
|
this.levelAll = false
|
||||||
|
}
|
||||||
|
},
|
||||||
|
getOther() {
|
||||||
|
api.get_sort().then((res) => {
|
||||||
|
this.sortList = res.data
|
||||||
|
})
|
||||||
|
api.yes_no().then((res) => {
|
||||||
|
this.yesNo = res.data
|
||||||
|
})
|
||||||
|
api.wares_type().then((res) => {
|
||||||
|
this.waresTypeList = res.data
|
||||||
|
})
|
||||||
|
api.special_currency().then((res) => {
|
||||||
|
this.specialCurrency = res.data
|
||||||
|
})
|
||||||
|
getAwardsListChiose().then((res) => {
|
||||||
|
this.awardsList = res.rows
|
||||||
|
})
|
||||||
|
api.ERegistrationAuthority().then((res) => {
|
||||||
|
this.authorityList = res.data
|
||||||
|
})
|
||||||
|
},
|
||||||
|
getTrans(data) {
|
||||||
|
this.form.isLandTrans = ''
|
||||||
|
this.form.isAirTrans = ''
|
||||||
|
this.form.isOceanTrans = ''
|
||||||
|
data.forEach((item) => {
|
||||||
|
if (item == 1) {
|
||||||
|
this.form.isLandTrans = 0
|
||||||
|
} else if (item == 2) {
|
||||||
|
this.form.isAirTrans = 0
|
||||||
|
} else if (item == 3) {
|
||||||
|
this.form.isOceanTrans = 0
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
getTeamList(val) {
|
||||||
|
if (val == 5) {
|
||||||
|
this.form.waresAuthorityList = [
|
||||||
|
{
|
||||||
|
authorityType: 5,
|
||||||
|
memberCode: ''
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
getPostageList() {
|
||||||
|
// 陆运
|
||||||
|
api.getPostageList({ tranType: 1 }).then((res) => {
|
||||||
|
this.postMoneyList1 = res.data
|
||||||
|
})
|
||||||
|
// 空运
|
||||||
|
api.getPostageList({ tranType: 2 }).then((res) => {
|
||||||
|
this.postMoneyList2 = res.data
|
||||||
|
})
|
||||||
|
// 海运
|
||||||
|
api.getPostageList({ tranType: 3 }).then((res) => {
|
||||||
|
this.postMoneyList3 = res.data
|
||||||
|
})
|
||||||
|
},
|
||||||
|
getAgreementList() {
|
||||||
|
api.getAgreementList().then((res) => {
|
||||||
|
this.agreementList = res.data
|
||||||
|
})
|
||||||
|
},
|
||||||
|
// 四个标签
|
||||||
|
labelAll() {
|
||||||
|
// 前缀标签
|
||||||
|
api.labelAll({ labelType: 1 }).then((res) => {
|
||||||
|
this.qzList = res.data
|
||||||
|
})
|
||||||
|
// 酷炫标签
|
||||||
|
api.labelAll({ labelType: 2 }).then((res) => {
|
||||||
|
this.kxList = res.data
|
||||||
|
})
|
||||||
|
// 保障标签
|
||||||
|
api.labelAll({ labelType: 3 }).then((res) => {
|
||||||
|
this.bzList = res.data
|
||||||
|
})
|
||||||
|
// 卖点标签
|
||||||
|
api.labelAll({ labelType: 4 }).then((res) => {
|
||||||
|
this.mdList = res.data
|
||||||
|
})
|
||||||
|
},
|
||||||
|
// 供应方式
|
||||||
|
supply_way() {
|
||||||
|
api.supply_way().then((res) => {
|
||||||
|
this.gyList = res.data
|
||||||
|
})
|
||||||
|
},
|
||||||
|
// 查询预售状态
|
||||||
|
presale_status() {
|
||||||
|
api.presale_status().then((res) => {
|
||||||
|
this.presaleList = res.data
|
||||||
|
})
|
||||||
|
},
|
||||||
|
// 获取专区
|
||||||
|
getArea() {
|
||||||
|
specialArea().then((res) => {
|
||||||
|
this.areaList = res.data
|
||||||
|
})
|
||||||
|
},
|
||||||
|
getImg1(data) {
|
||||||
|
this.form.videoUrl = data
|
||||||
|
},
|
||||||
|
delImg1() {},
|
||||||
|
getImg2(data) {
|
||||||
|
this.form.cover = data
|
||||||
|
},
|
||||||
|
delImg2() {},
|
||||||
|
getImg3(data) {
|
||||||
|
this.form.cover1 = data
|
||||||
|
},
|
||||||
|
delImg3() {},
|
||||||
|
getImg4(data) {
|
||||||
|
this.form.cover2 = data
|
||||||
|
},
|
||||||
|
delImg4() {},
|
||||||
|
getImg5(data) {
|
||||||
|
this.form.cover3 = data
|
||||||
|
},
|
||||||
|
delImg5() {},
|
||||||
|
getImg6(data) {
|
||||||
|
this.form.cover4 = data
|
||||||
|
},
|
||||||
|
delImg6() {},
|
||||||
|
getImg7(data) {
|
||||||
|
this.form.cover5 = data
|
||||||
|
},
|
||||||
|
delImg7() {},
|
||||||
|
getImg8(data) {
|
||||||
|
this.form.cover6 = data
|
||||||
|
},
|
||||||
|
delImg8() {},
|
||||||
|
removeGg(index) {
|
||||||
|
this.form.waresSpecsPackList.splice(index, 1)
|
||||||
|
},
|
||||||
|
removeTeamPz(index) {
|
||||||
|
this.form.waresAuthorityList.splice(index, 1)
|
||||||
|
},
|
||||||
|
getRangList(data) {
|
||||||
|
this.form.waresRangeList = data
|
||||||
|
},
|
||||||
|
// 商品分类赋值
|
||||||
|
flChange(value) {
|
||||||
|
this.form.pkAreaClassify = value[value.length - 1]
|
||||||
|
},
|
||||||
|
getXYList() {
|
||||||
|
api.getEWaresPermissionTypeList().then((res) => {
|
||||||
|
this.xyList = res.data
|
||||||
|
})
|
||||||
|
},
|
||||||
|
addTeamPz() {
|
||||||
|
this.form.waresAuthorityList.push({
|
||||||
|
kjlx: '',
|
||||||
|
teamOrder: ''
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -28,7 +28,7 @@
|
||||||
:model="form"
|
:model="form"
|
||||||
:rules="rules"
|
:rules="rules"
|
||||||
style="width:1200px"
|
style="width:1200px"
|
||||||
label-width="100px"
|
label-width="120px"
|
||||||
>
|
>
|
||||||
<el-row :gutter="40">
|
<el-row :gutter="40">
|
||||||
<el-col :span="16">
|
<el-col :span="16">
|
||||||
|
@ -98,7 +98,7 @@
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item
|
<el-form-item
|
||||||
:label="'商品业绩'+`(${isLocals()})`"
|
label="商品业绩"
|
||||||
prop="waresAchieve"
|
prop="waresAchieve"
|
||||||
>
|
>
|
||||||
<el-input
|
<el-input
|
||||||
|
@ -139,6 +139,39 @@
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
|
<template v-if="form.specialArea === 14">
|
||||||
|
<el-col :span="8">
|
||||||
|
<el-form-item label="库存数量" prop="inventory">
|
||||||
|
<el-input-number v-model="form.inventory" style="width: 100%" :min="0" :max="999999999" :controls="false" />
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="8">
|
||||||
|
<el-form-item label="已用库存数量" prop="inventoryUse">
|
||||||
|
<el-input v-model="form.inventoryUse" readonly>
|
||||||
|
<el-button slot="append" style="background-color: #409EFF; color: #fff; border-color: #409EFF" type="primary" @click="resetInventoryUse">
|
||||||
|
重置
|
||||||
|
</el-button>
|
||||||
|
</el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="8">
|
||||||
|
<el-form-item label="库存倒计时比例" prop="inventoryRatio">
|
||||||
|
<el-input v-model="form.inventoryRatio" style="width: 100%">
|
||||||
|
<template slot="append">%</template>
|
||||||
|
</el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="8">
|
||||||
|
<el-form-item label="会员总限购" prop="memberLimit">
|
||||||
|
<el-input-number v-model="form.memberLimit" style="width: 100%" :min="0" :max="999999999" :controls="false" />
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="8">
|
||||||
|
<el-form-item label="会员月限购" prop="memberMonthLimit">
|
||||||
|
<el-input-number v-model="form.memberMonthLimit" style="width: 100%" :min="0" :max="999999999" :controls="false" />
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</template>
|
||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item
|
<el-form-item
|
||||||
:label="'商品分类'"
|
:label="'商品分类'"
|
||||||
|
@ -940,260 +973,25 @@ import Editor from '@/components/Editor'
|
||||||
import Cpmx from '@/views/goodsManage/goodsList/goodsEdit/cpmx.vue'
|
import Cpmx from '@/views/goodsManage/goodsList/goodsEdit/cpmx.vue'
|
||||||
import Ggmx from '@/views/goodsManage/goodsList/goodsEdit/ggmx.vue'
|
import Ggmx from '@/views/goodsManage/goodsList/goodsEdit/ggmx.vue'
|
||||||
import Jcpz from '@/views/goodsManage/goodsList/goodsEdit/jcpz.vue'
|
import Jcpz from '@/views/goodsManage/goodsList/goodsEdit/jcpz.vue'
|
||||||
import { getToken } from '@/utils/auth'
|
|
||||||
import UpDataImg from '@/components/upDataImg'
|
|
||||||
import * as api from '@/api/product.js'
|
import * as api from '@/api/product.js'
|
||||||
import { specialArea } from '@/api/configManage'
|
|
||||||
import ImageUpload from '@/components/ImageUpload'
|
import ImageUpload from '@/components/ImageUpload'
|
||||||
import { isLocals } from '@/utils/numberToCurrency'
|
import { isLocals } from '@/utils/numberToCurrency'
|
||||||
import { getAwardsListChiose } from '@/api/level'
|
import jcszMixins from '@/views/goodsManage/common/jcsz-mixins'
|
||||||
export default {
|
export default {
|
||||||
name: 'Jcsz',
|
name: 'Jcsz',
|
||||||
components: {
|
components: {
|
||||||
ImageUpload,
|
ImageUpload,
|
||||||
Editor,
|
Editor,
|
||||||
UpDataImg,
|
|
||||||
Jcpz,
|
Jcpz,
|
||||||
Cpmx,
|
Cpmx,
|
||||||
Ggmx
|
Ggmx
|
||||||
},
|
},
|
||||||
|
mixins: [jcszMixins],
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
isMakerGift: 1,
|
|
||||||
levelAll: false,
|
|
||||||
gradeAll: false,
|
|
||||||
// 产品明细
|
|
||||||
cpList: [],
|
|
||||||
uploadImgUrl: process.env.VUE_APP_BASE_API + '/system/upload',
|
|
||||||
headers: {
|
|
||||||
Authorization: getToken()
|
|
||||||
},
|
|
||||||
dialogImageUrl: '',
|
|
||||||
dialogVisible: false,
|
|
||||||
form: {
|
|
||||||
waresGradeIds: [],
|
|
||||||
waresAwardsIds: [],
|
|
||||||
sales: '',
|
|
||||||
sortStatus: 0,
|
|
||||||
sort: '',
|
|
||||||
sptw: '',
|
|
||||||
ysList: [],
|
|
||||||
bzList: [],
|
|
||||||
pkGuaranteeLabel: [],
|
|
||||||
specialArea: '',
|
|
||||||
checkList: [],
|
|
||||||
waresMemberAuthorizeList: [],
|
|
||||||
waresAuthorityList: [
|
|
||||||
{
|
|
||||||
authorityType: 5,
|
|
||||||
memberCode: ''
|
|
||||||
}
|
|
||||||
],
|
|
||||||
waresSpecsPackList: [{ key: '', value: '' }]
|
|
||||||
},
|
|
||||||
moren: '/goodsManage/goodsRelease/jcsz',
|
|
||||||
tabActive: 0,
|
|
||||||
waresDetailList: [],
|
|
||||||
waresSpecsSkuList: [],
|
|
||||||
waresRangeList: [],
|
|
||||||
agreeList: [
|
|
||||||
{
|
|
||||||
text: '允许',
|
|
||||||
val: 0
|
|
||||||
},
|
|
||||||
{
|
|
||||||
text: '禁止',
|
|
||||||
val: 1
|
|
||||||
}
|
|
||||||
],
|
|
||||||
// 套餐类型
|
|
||||||
tcList: [
|
|
||||||
{
|
|
||||||
text: '套装',
|
|
||||||
val: 0
|
|
||||||
},
|
|
||||||
{
|
|
||||||
text: '单品',
|
|
||||||
val: 1
|
|
||||||
}
|
|
||||||
],
|
|
||||||
postList: [
|
|
||||||
{
|
|
||||||
text: '包邮',
|
|
||||||
val: 0
|
|
||||||
},
|
|
||||||
{
|
|
||||||
text: '不包邮',
|
|
||||||
val: 1
|
|
||||||
}
|
|
||||||
],
|
|
||||||
xsList: [
|
|
||||||
{
|
|
||||||
text: '允许出售',
|
|
||||||
val: 0
|
|
||||||
},
|
|
||||||
{
|
|
||||||
text: '禁止出售',
|
|
||||||
val: 1
|
|
||||||
}
|
|
||||||
],
|
|
||||||
isTj: [
|
|
||||||
{
|
|
||||||
label: '推荐',
|
|
||||||
value: 0
|
|
||||||
},
|
|
||||||
{
|
|
||||||
label: '不推荐',
|
|
||||||
value: 1
|
|
||||||
}
|
|
||||||
],
|
|
||||||
topList: [
|
|
||||||
{
|
|
||||||
name: '基础设置',
|
|
||||||
id: 0
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '产品明细',
|
|
||||||
id: 1
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '规格明细',
|
|
||||||
id: 2
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '团队配置',
|
|
||||||
id: 3
|
|
||||||
},
|
|
||||||
|
|
||||||
{
|
|
||||||
name: '等级配置',
|
|
||||||
id: 5
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '奖衔配置',
|
|
||||||
id: 6
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '商品权限',
|
|
||||||
id: 7
|
|
||||||
}
|
|
||||||
],
|
|
||||||
goodList: [],
|
|
||||||
copyArr: [],
|
|
||||||
// 血缘列表
|
|
||||||
xyList: '',
|
|
||||||
// 海陆空
|
|
||||||
transportTypeList: [],
|
|
||||||
// 商品分类
|
|
||||||
hierarchyList: [],
|
|
||||||
// 所属专区
|
|
||||||
areaList: [],
|
|
||||||
// 预售状态
|
|
||||||
presaleList: [],
|
|
||||||
// 供应方式
|
|
||||||
gyList: [],
|
|
||||||
// 前缀标签
|
|
||||||
qzList: [],
|
|
||||||
// 酷炫标签
|
|
||||||
kxList: [],
|
|
||||||
// 保障标签
|
|
||||||
bzList: [],
|
|
||||||
// 卖点标签
|
|
||||||
mdList: [],
|
|
||||||
// 协议
|
|
||||||
agreementList: [],
|
|
||||||
// 邮费模板
|
|
||||||
postMoneyList1: [],
|
|
||||||
postMoneyList2: [],
|
|
||||||
postMoneyList3: [],
|
|
||||||
rules: {
|
|
||||||
waresName: [
|
|
||||||
{ required: true, message: '请输入商品名称', trigger: 'blur' }
|
|
||||||
],
|
|
||||||
sortStatus: [
|
|
||||||
{ required: true, message: '请选择', trigger: 'change' }
|
|
||||||
],
|
|
||||||
waresCode: [{ required: true, message: '', trigger: 'blur' }],
|
|
||||||
sellingPoints: [
|
|
||||||
{ required: true, message: '请输入商品卖点', trigger: 'blur' }
|
|
||||||
],
|
|
||||||
sales: [{ required: true, message: '请输入商品销量', trigger: 'blur' }],
|
|
||||||
waresPrice: [
|
|
||||||
{ required: true, message: '请输入商品价格', trigger: 'blur' }
|
|
||||||
],
|
|
||||||
waresAchieve: [
|
|
||||||
{ required: true, message: '请输入商品业绩', trigger: 'blur' }
|
|
||||||
],
|
|
||||||
sort: [
|
|
||||||
{ required: true, message: '请输入排列序号', trigger: 'blur' }
|
|
||||||
],
|
|
||||||
pkAreaClassifys: [
|
|
||||||
{ required: true, message: '请选择商品分类', trigger: 'change' }
|
|
||||||
],
|
|
||||||
specialArea: [
|
|
||||||
{ required: true, message: '请选择所属专区', trigger: 'change' }
|
|
||||||
],
|
|
||||||
isPutOn: [
|
|
||||||
{ required: true, message: '请选择上架状态', trigger: 'change' }
|
|
||||||
],
|
|
||||||
operateScope: [
|
|
||||||
{ required: true, message: '请选择供应方式', trigger: 'change' }
|
|
||||||
],
|
|
||||||
preSaleStatus: [
|
|
||||||
{
|
|
||||||
required: true,
|
|
||||||
message: '请选择预售状态',
|
|
||||||
trigger: 'change'
|
|
||||||
}
|
|
||||||
],
|
|
||||||
isSale: [
|
|
||||||
{ required: true, message: '请选择销售状态', trigger: 'change' }
|
|
||||||
],
|
|
||||||
isSingle: [
|
|
||||||
{
|
|
||||||
required: true,
|
|
||||||
message: '请选择套餐类型',
|
|
||||||
trigger: 'change'
|
|
||||||
}
|
|
||||||
],
|
|
||||||
pkAgreement: [
|
|
||||||
{ required: true, message: '请选择补充协议', trigger: 'change' }
|
|
||||||
],
|
|
||||||
isFreeMail: [
|
|
||||||
{ required: true, message: '请选择包邮类型', trigger: 'change' }
|
|
||||||
],
|
|
||||||
// videoUrl: [
|
|
||||||
// { required: true, message: '请上传商品视频', trigger: 'blur' }
|
|
||||||
// ],
|
|
||||||
cover: [{ required: true, message: '请上传商品封面', trigger: 'blur' }],
|
|
||||||
cover1: [
|
|
||||||
{ required: true, message: '请上传图片', trigger: 'blur' }
|
|
||||||
],
|
|
||||||
// cover2: [
|
|
||||||
// { required: true, message: '请上传图片', trigger: 'blur' }
|
|
||||||
// ],
|
|
||||||
// cover3: [
|
|
||||||
// { required: true, message: '请上传图片', trigger: 'blur' }
|
|
||||||
// ],
|
|
||||||
// cover4: [
|
|
||||||
// { required: true, message: '请上传图片', trigger: 'blur' }
|
|
||||||
// ],
|
|
||||||
details: [
|
|
||||||
{ required: true, message: '请输入商品详情', trigger: 'blur' }
|
|
||||||
],
|
|
||||||
afterGuarantee: [
|
|
||||||
{ required: true, message: '请输入售后保障', trigger: 'blur' }
|
|
||||||
]
|
|
||||||
},
|
|
||||||
pkId: '',
|
pkId: '',
|
||||||
methods: 1,
|
methods: 1,
|
||||||
levelList: [],
|
moren: '/goodsManage/goodsRelease/jcsz'
|
||||||
yesNo: [],
|
|
||||||
specialCurrency: [],
|
|
||||||
waresTypeList: [],
|
|
||||||
awardsList: [],
|
|
||||||
authorityList: [],
|
|
||||||
sortList: []
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
created() {
|
created() {
|
||||||
|
@ -1230,75 +1028,6 @@ export default {
|
||||||
// },
|
// },
|
||||||
methods: {
|
methods: {
|
||||||
isLocals,
|
isLocals,
|
||||||
getOther() {
|
|
||||||
api.get_sort().then((res) => {
|
|
||||||
this.sortList = res.data
|
|
||||||
})
|
|
||||||
api.yes_no().then((res) => {
|
|
||||||
this.yesNo = res.data
|
|
||||||
})
|
|
||||||
api.wares_type().then((res) => {
|
|
||||||
this.waresTypeList = res.data
|
|
||||||
})
|
|
||||||
api.special_currency().then((res) => {
|
|
||||||
this.specialCurrency = res.data
|
|
||||||
})
|
|
||||||
getAwardsListChiose().then((res) => {
|
|
||||||
this.awardsList = res.rows
|
|
||||||
})
|
|
||||||
api.ERegistrationAuthority().then((res) => {
|
|
||||||
this.authorityList = res.data
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// getWaresSort() {
|
|
||||||
// api.waresSort().then((res) => {
|
|
||||||
// this.form.sort = res.data
|
|
||||||
// })
|
|
||||||
// },
|
|
||||||
getLevel(e) {
|
|
||||||
if (e) {
|
|
||||||
const levelArr = this.levelList.map((item) => {
|
|
||||||
return item.pkId
|
|
||||||
})
|
|
||||||
this.form.waresGradeIds = levelArr
|
|
||||||
} else {
|
|
||||||
this.form.waresGradeIds = []
|
|
||||||
}
|
|
||||||
},
|
|
||||||
getLevelAll(e) {
|
|
||||||
if (e.length == this.levelList.length) {
|
|
||||||
this.levelAll = true
|
|
||||||
} else {
|
|
||||||
this.levelAll = false
|
|
||||||
}
|
|
||||||
},
|
|
||||||
getGrade(e) {
|
|
||||||
if (e) {
|
|
||||||
const gradeArr = this.awardsList.map((item) => {
|
|
||||||
return item.pkId
|
|
||||||
})
|
|
||||||
this.form.waresAwardsIds = gradeArr
|
|
||||||
} else {
|
|
||||||
this.form.waresAwardsIds = []
|
|
||||||
}
|
|
||||||
},
|
|
||||||
getGradeAll(e) {
|
|
||||||
if (e.length == this.awardsList.length) {
|
|
||||||
this.gradeAll = true
|
|
||||||
} else {
|
|
||||||
this.gradeAll = false
|
|
||||||
}
|
|
||||||
},
|
|
||||||
getRangeList() {
|
|
||||||
api.rangeList().then((res) => {
|
|
||||||
this.levelList = res.data
|
|
||||||
})
|
|
||||||
},
|
|
||||||
getWaresCode() {
|
|
||||||
api.getWaresCode().then((res) => {
|
|
||||||
this.form.waresCode = res.msg
|
|
||||||
})
|
|
||||||
},
|
|
||||||
getEduitdata() {
|
getEduitdata() {
|
||||||
api
|
api
|
||||||
.waresDetail({
|
.waresDetail({
|
||||||
|
@ -1352,48 +1081,7 @@ export default {
|
||||||
// 排序
|
// 排序
|
||||||
// this.getWaresSort()
|
// this.getWaresSort()
|
||||||
}
|
}
|
||||||
if (
|
this.setTopList(this.form.specialArea)
|
||||||
this.form.specialArea == 3 ||
|
|
||||||
this.form.specialArea == 26 ||
|
|
||||||
this.form.specialArea == 12 ||
|
|
||||||
this.form.specialArea == 22 ||
|
|
||||||
this.form.specialArea == 14
|
|
||||||
) {
|
|
||||||
this.topList = [
|
|
||||||
{
|
|
||||||
name: '基础设置',
|
|
||||||
id: 0
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '产品明细',
|
|
||||||
id: 1
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '规格明细',
|
|
||||||
id: 2
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '团队配置',
|
|
||||||
id: 3
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '级差配置',
|
|
||||||
id: 4
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '等级配置',
|
|
||||||
id: 5
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '奖衔配置',
|
|
||||||
id: 6
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '商品权限',
|
|
||||||
id: 7
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
that.$refs.box.scrollTop = 0
|
that.$refs.box.scrollTop = 0
|
||||||
}, 50)
|
}, 50)
|
||||||
|
@ -1443,202 +1131,7 @@ export default {
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
getTrans(data) {
|
|
||||||
this.form.isLandTrans = ''
|
|
||||||
this.form.isAirTrans = ''
|
|
||||||
this.form.isOceanTrans = ''
|
|
||||||
data.forEach((item) => {
|
|
||||||
if (item == 1) {
|
|
||||||
this.form.isLandTrans = 0
|
|
||||||
} else if (item == 2) {
|
|
||||||
this.form.isAirTrans = 0
|
|
||||||
} else if (item == 3) {
|
|
||||||
this.form.isOceanTrans = 0
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
getTeamList(val) {
|
|
||||||
if (val == 5) {
|
|
||||||
this.form.waresAuthorityList = [
|
|
||||||
{
|
|
||||||
authorityType: 5,
|
|
||||||
memberCode: ''
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
getPostageList() {
|
|
||||||
// 陆运
|
|
||||||
api.getPostageList({ tranType: 1 }).then((res) => {
|
|
||||||
this.postMoneyList1 = res.data
|
|
||||||
})
|
|
||||||
// 空运
|
|
||||||
api.getPostageList({ tranType: 2 }).then((res) => {
|
|
||||||
this.postMoneyList2 = res.data
|
|
||||||
})
|
|
||||||
// 海运
|
|
||||||
api.getPostageList({ tranType: 3 }).then((res) => {
|
|
||||||
this.postMoneyList3 = res.data
|
|
||||||
})
|
|
||||||
},
|
|
||||||
getAgreementList() {
|
|
||||||
api.getAgreementList().then((res) => {
|
|
||||||
this.agreementList = res.data
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 四个标签
|
|
||||||
labelAll() {
|
|
||||||
// 前缀标签
|
|
||||||
api.labelAll({ labelType: 1 }).then((res) => {
|
|
||||||
this.qzList = res.data
|
|
||||||
})
|
|
||||||
// 酷炫标签
|
|
||||||
api.labelAll({ labelType: 2 }).then((res) => {
|
|
||||||
this.kxList = res.data
|
|
||||||
})
|
|
||||||
// 保障标签
|
|
||||||
api.labelAll({ labelType: 3 }).then((res) => {
|
|
||||||
this.bzList = res.data
|
|
||||||
})
|
|
||||||
// 卖点标签
|
|
||||||
api.labelAll({ labelType: 4 }).then((res) => {
|
|
||||||
this.mdList = res.data
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 供应方式
|
|
||||||
supply_way() {
|
|
||||||
api.supply_way().then((res) => {
|
|
||||||
this.gyList = res.data
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 查询预售状态
|
|
||||||
presale_status() {
|
|
||||||
api.presale_status().then((res) => {
|
|
||||||
this.presaleList = res.data
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 获取专区
|
|
||||||
getArea() {
|
|
||||||
specialArea().then((res) => {
|
|
||||||
this.areaList = res.data
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 商品分类赋值
|
|
||||||
flChange(value) {
|
|
||||||
console.log(
|
|
||||||
'%c [ value ]-827',
|
|
||||||
'font-size:13px; background:#7eb846; color:#c2fc8a;',
|
|
||||||
value
|
|
||||||
)
|
|
||||||
this.form.pkAreaClassify = value[value.length - 1]
|
|
||||||
},
|
|
||||||
selSpecial(e) {
|
|
||||||
this.get_hierarchy_list(e)
|
|
||||||
if (e == 3 || e == 26 || e == 12 || e == 22 || e == 14) {
|
|
||||||
this.$set(this, 'topList', [
|
|
||||||
{
|
|
||||||
name: '基础设置',
|
|
||||||
id: 0
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '产品明细',
|
|
||||||
id: 1
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '规格明细',
|
|
||||||
id: 2
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '团队配置',
|
|
||||||
id: 3
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '级差配置',
|
|
||||||
id: 4
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '等级配置',
|
|
||||||
id: 5
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '奖衔配置',
|
|
||||||
id: 6
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '商品权限',
|
|
||||||
id: 7
|
|
||||||
}
|
|
||||||
])
|
|
||||||
} else {
|
|
||||||
this.$set(this, 'topList', [
|
|
||||||
{
|
|
||||||
name: '基础设置',
|
|
||||||
id: 0
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '产品明细',
|
|
||||||
id: 1
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '规格明细',
|
|
||||||
id: 2
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '团队配置',
|
|
||||||
id: 3
|
|
||||||
},
|
|
||||||
|
|
||||||
{
|
|
||||||
name: '等级配置',
|
|
||||||
id: 5
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '奖衔配置',
|
|
||||||
id: 6
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '商品权限',
|
|
||||||
id: 7
|
|
||||||
}
|
|
||||||
])
|
|
||||||
}
|
|
||||||
},
|
|
||||||
// 查询分类父子级关系
|
|
||||||
get_hierarchy_list(val) {
|
|
||||||
api
|
|
||||||
.get_hierarchy_list({
|
|
||||||
specialArea: val || null
|
|
||||||
})
|
|
||||||
.then((res) => {
|
|
||||||
this.hierarchyList = res.data
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 运输方式
|
|
||||||
getTransportType() {
|
|
||||||
api.transportType().then((res) => {
|
|
||||||
this.transportTypeList = res.data
|
|
||||||
})
|
|
||||||
},
|
|
||||||
getXYList() {
|
|
||||||
api.getEWaresPermissionTypeList().then((res) => {
|
|
||||||
this.xyList = res.data
|
|
||||||
})
|
|
||||||
},
|
|
||||||
addTeamPz() {
|
|
||||||
this.form.waresAuthorityList.push({
|
|
||||||
kjlx: '',
|
|
||||||
teamOrder: ''
|
|
||||||
})
|
|
||||||
},
|
|
||||||
removeGg(index) {
|
|
||||||
this.form.waresSpecsPackList.splice(index, 1)
|
|
||||||
},
|
|
||||||
removeTeamPz(index) {
|
|
||||||
this.form.waresAuthorityList.splice(index, 1)
|
|
||||||
},
|
|
||||||
getRangList(data) {
|
|
||||||
this.form.waresRangeList = data
|
|
||||||
},
|
|
||||||
// 切换tab
|
// 切换tab
|
||||||
handleLink(id) {
|
handleLink(id) {
|
||||||
if (id == 2) {
|
if (id == 2) {
|
||||||
|
@ -1689,8 +1182,6 @@ export default {
|
||||||
mdChange(val) {
|
mdChange(val) {
|
||||||
this.form.pkSellingPoint = val
|
this.form.pkSellingPoint = val
|
||||||
},
|
},
|
||||||
// 多选框
|
|
||||||
changeYsfs() {},
|
|
||||||
// 获取产品明细数组内容
|
// 获取产品明细数组内容
|
||||||
getTableList(data) {
|
getTableList(data) {
|
||||||
this.form.waresDetailList = data
|
this.form.waresDetailList = data
|
||||||
|
@ -1703,38 +1194,21 @@ export default {
|
||||||
})
|
})
|
||||||
this.$refs.ggmxed.getData(this.cpList, this.form.specialArea)
|
this.$refs.ggmxed.getData(this.cpList, this.form.specialArea)
|
||||||
},
|
},
|
||||||
getImg1(data) {
|
resetInventoryUse() {
|
||||||
this.form.videoUrl = data
|
this.$confirm('确定重置库存吗?', '提示', {
|
||||||
},
|
confirmButtonText: '确定',
|
||||||
delImg1() {},
|
cancelButtonText: '取消',
|
||||||
getImg2(data) {
|
type: 'warning'
|
||||||
this.form.cover = data
|
}).then(() => {
|
||||||
},
|
api.resetInventoryUse({
|
||||||
delImg2() {},
|
waresId: this.form.waresId
|
||||||
getImg3(data) {
|
}).then((res) => {
|
||||||
this.form.cover1 = data
|
if (res.code === 200) {
|
||||||
},
|
this.form.inventoryUse = 0
|
||||||
delImg3() {},
|
}
|
||||||
getImg4(data) {
|
})
|
||||||
this.form.cover2 = data
|
})
|
||||||
},
|
}
|
||||||
delImg4() {},
|
|
||||||
getImg5(data) {
|
|
||||||
this.form.cover3 = data
|
|
||||||
},
|
|
||||||
delImg5() {},
|
|
||||||
getImg6(data) {
|
|
||||||
this.form.cover4 = data
|
|
||||||
},
|
|
||||||
delImg6() {},
|
|
||||||
getImg7(data) {
|
|
||||||
this.form.cover5 = data
|
|
||||||
},
|
|
||||||
delImg7() {},
|
|
||||||
getImg8(data) {
|
|
||||||
this.form.cover6 = data
|
|
||||||
},
|
|
||||||
delImg8() {}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
@ -1744,6 +1218,9 @@ export default {
|
||||||
.el-cascader {
|
.el-cascader {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
}
|
}
|
||||||
|
::v-deep .el-input-group__append {
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
|
||||||
::v-deep .el-date-editor.el-input,
|
::v-deep .el-date-editor.el-input,
|
||||||
.el-date-editor.el-input__inner {
|
.el-date-editor.el-input__inner {
|
||||||
|
@ -1793,6 +1270,7 @@ export default {
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
background: #f9f9f9;
|
background: #f9f9f9;
|
||||||
padding-top: 20px;
|
padding-top: 20px;
|
||||||
|
padding-left: 0 !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.main {
|
.main {
|
||||||
|
|
|
@ -487,9 +487,13 @@
|
||||||
/>
|
/>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
align="center"
|
align="center"
|
||||||
prop="actualSales"
|
prop="inventoryUse"
|
||||||
:label="'实际销量'"
|
label="实际销量"
|
||||||
/>
|
>
|
||||||
|
<template slot-scope="scope">
|
||||||
|
{{ (scope.row.inventoryUse || scope.row.inventoryUse === 0) ? scope.row.inventoryUse : '-' }}
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column
|
<el-table-column
|
||||||
align="center"
|
align="center"
|
||||||
|
|
|
@ -28,7 +28,7 @@
|
||||||
:rules="rules"
|
:rules="rules"
|
||||||
:model="form"
|
:model="form"
|
||||||
style="width:1200px"
|
style="width:1200px"
|
||||||
label-width="auto"
|
label-width="120px"
|
||||||
>
|
>
|
||||||
<el-row :gutter="40">
|
<el-row :gutter="40">
|
||||||
<el-col :span="16">
|
<el-col :span="16">
|
||||||
|
@ -95,7 +95,7 @@
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item
|
<el-form-item
|
||||||
:label="'商品业绩'+`(${isLocals()})`"
|
label="商品业绩"
|
||||||
prop="waresAchieve"
|
prop="waresAchieve"
|
||||||
>
|
>
|
||||||
<el-input
|
<el-input
|
||||||
|
@ -134,6 +134,36 @@
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
|
<template v-if="form.specialArea === 14">
|
||||||
|
<el-col :span="8">
|
||||||
|
<el-form-item label="库存数量" prop="inventory">
|
||||||
|
<el-input-number v-model="form.inventory" style="width: 100%" :min="0" :max="999999999" :controls="false" />
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<!-- <el-col :span="8">
|
||||||
|
<el-form-item label="已用库存数量" prop="inventoryUse">
|
||||||
|
<el-input-number v-model="form.inventoryUse" readonly :min="0" style="width: 100%" :max="form.inventory || 9999999999" :controls="false" />
|
||||||
|
</el-form-item>
|
||||||
|
</el-col> -->
|
||||||
|
<el-col :span="8">
|
||||||
|
<el-form-item label="库存倒计时比例" prop="inventoryRatio">
|
||||||
|
<el-input v-model="form.inventoryRatio" style="width: 100%">
|
||||||
|
<template slot="append">%</template>
|
||||||
|
</el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="8">
|
||||||
|
<el-form-item label="会员总限购" prop="memberLimit">
|
||||||
|
<el-input-number v-model="form.memberLimit" style="width: 100%" :min="0" :max="999999999" :controls="false" />
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="8">
|
||||||
|
<el-form-item label="会员月限购" prop="memberMonthLimit">
|
||||||
|
<el-input-number v-model="form.memberMonthLimit" style="width: 100%" :min="0" :max="999999999" :controls="false" />
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</template>
|
||||||
|
|
||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item
|
<el-form-item
|
||||||
:label="'商品分类'"
|
:label="'商品分类'"
|
||||||
|
@ -874,262 +904,25 @@ import Editor from '@/components/Editor'
|
||||||
import Cpmx from '@/views/goodsManage/goodsRelease/cpmx.vue'
|
import Cpmx from '@/views/goodsManage/goodsRelease/cpmx.vue'
|
||||||
import Ggmx from '@/views/goodsManage/goodsRelease/ggmx.vue'
|
import Ggmx from '@/views/goodsManage/goodsRelease/ggmx.vue'
|
||||||
import Jcpz from '@/views/goodsManage/goodsRelease/jcpz.vue'
|
import Jcpz from '@/views/goodsManage/goodsRelease/jcpz.vue'
|
||||||
import { getToken } from '@/utils/auth'
|
|
||||||
import UpDataImg from '@/components/upDataImg'
|
|
||||||
import * as api from '@/api/product.js'
|
import * as api from '@/api/product.js'
|
||||||
import { specialArea } from '@/api/configManage'
|
import { specialArea } from '@/api/configManage'
|
||||||
import ImageUpload from '@/components/ImageUpload'
|
import ImageUpload from '@/components/ImageUpload'
|
||||||
import { isLocals } from '@/utils/numberToCurrency'
|
import { isLocals } from '@/utils/numberToCurrency'
|
||||||
import { getAwardsListChiose } from '@/api/level'
|
import jcszMixins from '@/views/goodsManage/common/jcsz-mixins'
|
||||||
export default {
|
export default {
|
||||||
name: 'Jcsz',
|
name: 'Jcsz',
|
||||||
components: {
|
components: {
|
||||||
ImageUpload,
|
ImageUpload,
|
||||||
Editor,
|
Editor,
|
||||||
UpDataImg,
|
|
||||||
Jcpz,
|
Jcpz,
|
||||||
Cpmx,
|
Cpmx,
|
||||||
Ggmx
|
Ggmx
|
||||||
},
|
},
|
||||||
|
mixins: [jcszMixins],
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
levelAll: false,
|
|
||||||
gradeAll: false,
|
|
||||||
// 产品明细
|
|
||||||
cpList: [],
|
|
||||||
uploadImgUrl: process.env.VUE_APP_BASE_API + '/system/upload',
|
|
||||||
headers: {
|
|
||||||
Authorization: getToken()
|
|
||||||
},
|
|
||||||
dialogImageUrl: '',
|
|
||||||
dialogVisible: false,
|
|
||||||
form: {
|
|
||||||
isMakerGift: 1,
|
|
||||||
waresGradeIds: [],
|
|
||||||
waresAwardsIds: [],
|
|
||||||
sales: '',
|
|
||||||
sortStatus: 0,
|
|
||||||
waresCode: '',
|
|
||||||
sort: '',
|
|
||||||
sptw: '',
|
|
||||||
ysList: [],
|
|
||||||
bzList: [],
|
|
||||||
pkGuaranteeLabel: [],
|
|
||||||
specialArea: '',
|
|
||||||
checkList: [],
|
|
||||||
waresMemberAuthorizeList: [],
|
|
||||||
waresAuthorityList: [
|
|
||||||
{
|
|
||||||
authorityType: 5,
|
|
||||||
memberCode: ''
|
|
||||||
}
|
|
||||||
],
|
|
||||||
waresSpecsPackList: [{ key: '', value: '' }]
|
|
||||||
},
|
|
||||||
moren: '/goodsManage/goodsRelease/jcsz',
|
moren: '/goodsManage/goodsRelease/jcsz',
|
||||||
tabActive: 0,
|
isTrue: false
|
||||||
agreeList: [
|
|
||||||
{
|
|
||||||
text: '允许',
|
|
||||||
val: 0
|
|
||||||
},
|
|
||||||
{
|
|
||||||
text: '禁止',
|
|
||||||
val: 1
|
|
||||||
}
|
|
||||||
],
|
|
||||||
// 套餐类型
|
|
||||||
tcList: [
|
|
||||||
{
|
|
||||||
text: '套装',
|
|
||||||
val: 0
|
|
||||||
},
|
|
||||||
{
|
|
||||||
text: '单品',
|
|
||||||
val: 1
|
|
||||||
}
|
|
||||||
],
|
|
||||||
postList: [
|
|
||||||
{
|
|
||||||
text: '包邮',
|
|
||||||
val: 0
|
|
||||||
},
|
|
||||||
{
|
|
||||||
text: '不包邮',
|
|
||||||
val: 1
|
|
||||||
}
|
|
||||||
],
|
|
||||||
isTj: [
|
|
||||||
{
|
|
||||||
label: '推荐',
|
|
||||||
value: 0
|
|
||||||
},
|
|
||||||
{
|
|
||||||
label: '不推荐',
|
|
||||||
value: 1
|
|
||||||
}
|
|
||||||
],
|
|
||||||
xsList: [
|
|
||||||
{
|
|
||||||
text: '允许出售',
|
|
||||||
val: 0
|
|
||||||
},
|
|
||||||
{
|
|
||||||
text: '禁止出售',
|
|
||||||
val: 1
|
|
||||||
}
|
|
||||||
],
|
|
||||||
topList: [
|
|
||||||
{
|
|
||||||
name: '基础设置',
|
|
||||||
id: 0
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '产品明细',
|
|
||||||
id: 1
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '规格明细',
|
|
||||||
id: 2
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '团队配置',
|
|
||||||
id: 3
|
|
||||||
},
|
|
||||||
// {
|
|
||||||
// name: '级差配置',
|
|
||||||
// id: 4,
|
|
||||||
// },
|
|
||||||
{
|
|
||||||
name: '等级配置',
|
|
||||||
id: 5
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '奖衔配置',
|
|
||||||
id: 6
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '商品权限',
|
|
||||||
id: 7
|
|
||||||
}
|
|
||||||
],
|
|
||||||
goodList: [],
|
|
||||||
copyArr: [],
|
|
||||||
// 血缘列表
|
|
||||||
xyList: '',
|
|
||||||
// 海陆空
|
|
||||||
transportTypeList: [],
|
|
||||||
// 商品分类
|
|
||||||
hierarchyList: [],
|
|
||||||
// 所属专区
|
|
||||||
areaList: [],
|
|
||||||
// 预售状态
|
|
||||||
presaleList: [],
|
|
||||||
// 供应方式
|
|
||||||
gyList: [],
|
|
||||||
// 前缀标签
|
|
||||||
qzList: [],
|
|
||||||
// 酷炫标签
|
|
||||||
kxList: [],
|
|
||||||
// 保障标签
|
|
||||||
bzList: [],
|
|
||||||
// 卖点标签
|
|
||||||
mdList: [],
|
|
||||||
// 协议
|
|
||||||
agreementList: [],
|
|
||||||
// 邮费模板
|
|
||||||
postMoneyList1: [],
|
|
||||||
postMoneyList2: [],
|
|
||||||
postMoneyList3: [],
|
|
||||||
levelList: [],
|
|
||||||
rules: {
|
|
||||||
waresName: [
|
|
||||||
{ required: true, message: '请输入商品名称', trigger: 'blur' }
|
|
||||||
],
|
|
||||||
sortStatus: [
|
|
||||||
{ required: true, message: '请选择', trigger: 'change' }
|
|
||||||
],
|
|
||||||
waresCode: [
|
|
||||||
{ required: true, message: '请输入商品编码', trigger: 'blur' }
|
|
||||||
],
|
|
||||||
sellingPoints: [
|
|
||||||
{ required: true, message: '请输入商品卖点', trigger: 'blur' }
|
|
||||||
],
|
|
||||||
sales: [{ required: true, message: '请输入商品销量', trigger: 'blur' }],
|
|
||||||
waresPrice: [
|
|
||||||
{ required: true, message: '请输入商品价格', trigger: 'blur' }
|
|
||||||
],
|
|
||||||
waresAchieve: [
|
|
||||||
{ required: true, message: '请输入商品业绩', trigger: 'blur' }
|
|
||||||
],
|
|
||||||
sort: [
|
|
||||||
{ required: true, message: '请输入排列序号', trigger: 'blur' }
|
|
||||||
],
|
|
||||||
pkAreaClassifys: [
|
|
||||||
{ required: true, message: '请选择商品分类', trigger: 'change' }
|
|
||||||
],
|
|
||||||
specialArea: [
|
|
||||||
{ required: true, message: '请选择所属专区', trigger: 'change' }
|
|
||||||
],
|
|
||||||
isPutOn: [
|
|
||||||
{ required: true, message: '请选择上架状态', trigger: 'change' }
|
|
||||||
],
|
|
||||||
operateScope: [
|
|
||||||
{ required: true, message: '请选择供应方式', trigger: 'change' }
|
|
||||||
],
|
|
||||||
preSaleStatus: [
|
|
||||||
{
|
|
||||||
required: true,
|
|
||||||
message: '请选择预售状态',
|
|
||||||
trigger: 'change'
|
|
||||||
}
|
|
||||||
],
|
|
||||||
isSale: [
|
|
||||||
{ required: true, message: '请选择销售状态', trigger: 'change' }
|
|
||||||
],
|
|
||||||
isSingle: [
|
|
||||||
{
|
|
||||||
required: true,
|
|
||||||
message: '请选择套餐类型',
|
|
||||||
trigger: 'change'
|
|
||||||
}
|
|
||||||
],
|
|
||||||
pkAgreement: [
|
|
||||||
{ required: true, message: '请选择补充协议', trigger: 'change' }
|
|
||||||
],
|
|
||||||
isFreeMail: [
|
|
||||||
{ required: true, message: '请选择包邮类型', trigger: 'change' }
|
|
||||||
],
|
|
||||||
// videoUrl: [
|
|
||||||
// { required: true, message: '请上传商品视频', trigger: 'blur' }
|
|
||||||
// ],
|
|
||||||
cover: [{ required: true, message: '请上传商品封面', trigger: 'blur' }],
|
|
||||||
cover1: [
|
|
||||||
{ required: true, message: '请上传图片', trigger: 'blur' }
|
|
||||||
],
|
|
||||||
// cover2: [
|
|
||||||
// { required: true, message: '请上传图片', trigger: 'blur' }
|
|
||||||
// ],
|
|
||||||
// cover3: [
|
|
||||||
// { required: true, message: '请上传图片', trigger: 'blur' }
|
|
||||||
// ],
|
|
||||||
// cover4: [
|
|
||||||
// { required: true, message: '请上传图片', trigger: 'blur' }
|
|
||||||
// ],
|
|
||||||
details: [
|
|
||||||
{ required: true, message: '请输入商品详情', trigger: 'blur' }
|
|
||||||
],
|
|
||||||
afterGuarantee: [
|
|
||||||
{ required: true, message: '请输入售后保障', trigger: 'blur' }
|
|
||||||
]
|
|
||||||
},
|
|
||||||
yesNo: [],
|
|
||||||
waresTypeList: [],
|
|
||||||
specialCurrency: [],
|
|
||||||
awardsList: [],
|
|
||||||
authorityList: [],
|
|
||||||
isTrue: false,
|
|
||||||
sortList: []
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
|
@ -1172,75 +965,6 @@ export default {
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
getOther() {
|
|
||||||
api.get_sort().then((res) => {
|
|
||||||
this.sortList = res.data
|
|
||||||
})
|
|
||||||
api.yes_no().then((res) => {
|
|
||||||
this.yesNo = res.data
|
|
||||||
})
|
|
||||||
api.wares_type().then((res) => {
|
|
||||||
this.waresTypeList = res.data
|
|
||||||
})
|
|
||||||
api.special_currency().then((res) => {
|
|
||||||
this.specialCurrency = res.data
|
|
||||||
})
|
|
||||||
getAwardsListChiose().then((res) => {
|
|
||||||
this.awardsList = res.rows
|
|
||||||
})
|
|
||||||
api.ERegistrationAuthority().then((res) => {
|
|
||||||
this.authorityList = res.data
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// getWaresSort() {
|
|
||||||
// api.waresSort().then((res) => {
|
|
||||||
// this.form.sort = res.data
|
|
||||||
// })
|
|
||||||
// },
|
|
||||||
getLevel(e) {
|
|
||||||
if (e) {
|
|
||||||
const levelArr = this.levelList.map((item) => {
|
|
||||||
return item.pkId
|
|
||||||
})
|
|
||||||
this.form.waresGradeIds = levelArr
|
|
||||||
} else {
|
|
||||||
this.form.waresGradeIds = []
|
|
||||||
}
|
|
||||||
},
|
|
||||||
getLevelAll(e) {
|
|
||||||
if (e.length == this.levelList.length) {
|
|
||||||
this.levelAll = true
|
|
||||||
} else {
|
|
||||||
this.levelAll = false
|
|
||||||
}
|
|
||||||
},
|
|
||||||
getGrade(e) {
|
|
||||||
if (e) {
|
|
||||||
const gradeArr = this.awardsList.map((item) => {
|
|
||||||
return item.pkId
|
|
||||||
})
|
|
||||||
this.form.waresAwardsIds = gradeArr
|
|
||||||
} else {
|
|
||||||
this.form.waresAwardsIds = []
|
|
||||||
}
|
|
||||||
},
|
|
||||||
getGradeAll(e) {
|
|
||||||
if (e.length == this.awardsList.length) {
|
|
||||||
this.gradeAll = true
|
|
||||||
} else {
|
|
||||||
this.gradeAll = false
|
|
||||||
}
|
|
||||||
},
|
|
||||||
getRangeList() {
|
|
||||||
api.rangeList().then((res) => {
|
|
||||||
this.levelList = res.data
|
|
||||||
})
|
|
||||||
},
|
|
||||||
getWaresCode() {
|
|
||||||
api.getWaresCode().then((res) => {
|
|
||||||
this.form.waresCode = res.msg
|
|
||||||
})
|
|
||||||
},
|
|
||||||
goBack() {
|
goBack() {
|
||||||
this.$router.go(-1)
|
this.$router.go(-1)
|
||||||
},
|
},
|
||||||
|
@ -1288,207 +1012,6 @@ export default {
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
getTrans(data) {
|
|
||||||
this.form.isLandTrans = ''
|
|
||||||
this.form.isAirTrans = ''
|
|
||||||
this.form.isOceanTrans = ''
|
|
||||||
data.forEach((item) => {
|
|
||||||
if (item == 1) {
|
|
||||||
this.form.isLandTrans = 0
|
|
||||||
} else if (item == 2) {
|
|
||||||
this.form.isAirTrans = 0
|
|
||||||
} else if (item == 3) {
|
|
||||||
this.form.isOceanTrans = 0
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
getTeamList(val) {
|
|
||||||
if (val == 5) {
|
|
||||||
this.form.waresAuthorityList = [
|
|
||||||
{
|
|
||||||
authorityType: 5,
|
|
||||||
memberCode: ''
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
getPostageList() {
|
|
||||||
// 陆运
|
|
||||||
api.getPostageList({ tranType: 1 }).then((res) => {
|
|
||||||
this.postMoneyList1 = res.data
|
|
||||||
})
|
|
||||||
// 空运
|
|
||||||
api.getPostageList({ tranType: 2 }).then((res) => {
|
|
||||||
this.postMoneyList2 = res.data
|
|
||||||
})
|
|
||||||
// 海运
|
|
||||||
api.getPostageList({ tranType: 3 }).then((res) => {
|
|
||||||
this.postMoneyList3 = res.data
|
|
||||||
})
|
|
||||||
},
|
|
||||||
getAgreementList() {
|
|
||||||
api.getAgreementList().then((res) => {
|
|
||||||
this.agreementList = res.data
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 四个标签
|
|
||||||
labelAll() {
|
|
||||||
// 前缀标签
|
|
||||||
api.labelAll({ labelType: 1 }).then((res) => {
|
|
||||||
this.qzList = res.data
|
|
||||||
})
|
|
||||||
// 酷炫标签
|
|
||||||
api.labelAll({ labelType: 2 }).then((res) => {
|
|
||||||
this.kxList = res.data
|
|
||||||
})
|
|
||||||
// 保障标签
|
|
||||||
api.labelAll({ labelType: 3 }).then((res) => {
|
|
||||||
this.bzList = res.data
|
|
||||||
})
|
|
||||||
// 卖点标签
|
|
||||||
api.labelAll({ labelType: 4 }).then((res) => {
|
|
||||||
this.mdList = res.data
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 供应方式
|
|
||||||
supply_way() {
|
|
||||||
api.supply_way().then((res) => {
|
|
||||||
this.gyList = res.data
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 查询预售状态
|
|
||||||
presale_status() {
|
|
||||||
api.presale_status().then((res) => {
|
|
||||||
this.presaleList = res.data
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 获取专区
|
|
||||||
getArea() {
|
|
||||||
specialArea().then((res) => {
|
|
||||||
this.areaList = res.data
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 商品分类赋值
|
|
||||||
flChange(value) {
|
|
||||||
console.log(
|
|
||||||
'%c [ form.pkAreaClassifys ]-770',
|
|
||||||
'font-size:13px; background:#42289a; color:#866cde;',
|
|
||||||
this.form.pkAreaClassifys
|
|
||||||
)
|
|
||||||
this.form.pkAreaClassify = value[value.length - 1]
|
|
||||||
},
|
|
||||||
selSpecial(e) {
|
|
||||||
this.get_hierarchy_list(e)
|
|
||||||
if (e == 3 || e == 26 || e == 12 || e == 22 || e == 14) {
|
|
||||||
this.$set(this, 'topList', [
|
|
||||||
{
|
|
||||||
name: '基础设置',
|
|
||||||
id: 0
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '产品明细',
|
|
||||||
id: 1
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '规格明细',
|
|
||||||
id: 2
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '团队配置',
|
|
||||||
id: 3
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '级差配置',
|
|
||||||
id: 4
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '等级配置',
|
|
||||||
id: 5
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '奖衔配置',
|
|
||||||
id: 6
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '商品权限',
|
|
||||||
id: 7
|
|
||||||
}
|
|
||||||
])
|
|
||||||
} else {
|
|
||||||
this.$set(this, 'topList', [
|
|
||||||
{
|
|
||||||
name: '基础设置',
|
|
||||||
id: 0
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '产品明细',
|
|
||||||
id: 1
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '规格明细',
|
|
||||||
id: 2
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '团队配置',
|
|
||||||
id: 3
|
|
||||||
},
|
|
||||||
|
|
||||||
{
|
|
||||||
name: '等级配置',
|
|
||||||
id: 5
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '奖衔配置',
|
|
||||||
id: 6
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '商品权限',
|
|
||||||
id: 7
|
|
||||||
}
|
|
||||||
])
|
|
||||||
}
|
|
||||||
},
|
|
||||||
// 查询分类父子级关系
|
|
||||||
get_hierarchy_list(val) {
|
|
||||||
api
|
|
||||||
.get_hierarchy_list({
|
|
||||||
specialArea: val || null
|
|
||||||
})
|
|
||||||
.then((res) => {
|
|
||||||
this.hierarchyList = res.data
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 运输方式
|
|
||||||
getTransportType() {
|
|
||||||
api.transportType().then((res) => {
|
|
||||||
this.transportTypeList = res.data
|
|
||||||
})
|
|
||||||
},
|
|
||||||
getXYList() {
|
|
||||||
api.getEWaresPermissionTypeList().then((res) => {
|
|
||||||
console.log(
|
|
||||||
'%c [ res ]-451',
|
|
||||||
'font-size:13px; background:#73d160; color:#b7ffa4;',
|
|
||||||
res
|
|
||||||
)
|
|
||||||
this.xyList = res.data
|
|
||||||
})
|
|
||||||
},
|
|
||||||
addTeamPz() {
|
|
||||||
this.form.waresAuthorityList.push({
|
|
||||||
kjlx: '',
|
|
||||||
teamOrder: ''
|
|
||||||
})
|
|
||||||
},
|
|
||||||
removeGg(index) {
|
|
||||||
this.form.waresSpecsPackList.splice(index, 1)
|
|
||||||
},
|
|
||||||
removeTeamPz(index) {
|
|
||||||
this.form.waresAuthorityList.splice(index, 1)
|
|
||||||
},
|
|
||||||
getRangList(data) {
|
|
||||||
this.form.waresRangeList = data
|
|
||||||
},
|
|
||||||
// 切换tab
|
// 切换tab
|
||||||
handleLink(id) {
|
handleLink(id) {
|
||||||
if (id == 2) {
|
if (id == 2) {
|
||||||
|
@ -1540,11 +1063,8 @@ export default {
|
||||||
// console.log('%c [ val ]-828', 'font-size:13px; background:#f8a68c; color:#ffead0;', val)
|
// console.log('%c [ val ]-828', 'font-size:13px; background:#f8a68c; color:#ffead0;', val)
|
||||||
// this.form.pkSellingPoint = val
|
// this.form.pkSellingPoint = val
|
||||||
// },
|
// },
|
||||||
// 多选框
|
|
||||||
changeYsfs() {},
|
|
||||||
// 获取产品明细数组内容
|
// 获取产品明细数组内容
|
||||||
getTableList(data, isTrue) {
|
getTableList(data, isTrue) {
|
||||||
console.log('%c [ data ]-1313', 'font-size:13px; background:#442827; color:#886c6b;', data)
|
|
||||||
this.isTrue = isTrue
|
this.isTrue = isTrue
|
||||||
this.form.waresDetailList = data
|
this.form.waresDetailList = data
|
||||||
this.cpList = data.map((item) => {
|
this.cpList = data.map((item) => {
|
||||||
|
@ -1554,39 +1074,7 @@ export default {
|
||||||
quantity: item.quantity
|
quantity: item.quantity
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
},
|
}
|
||||||
getImg1(data) {
|
|
||||||
this.form.videoUrl = data
|
|
||||||
},
|
|
||||||
delImg1() {},
|
|
||||||
getImg2(data) {
|
|
||||||
this.form.cover = data
|
|
||||||
},
|
|
||||||
delImg2() {},
|
|
||||||
getImg3(data) {
|
|
||||||
this.form.cover1 = data
|
|
||||||
},
|
|
||||||
delImg3() {},
|
|
||||||
getImg4(data) {
|
|
||||||
this.form.cover2 = data
|
|
||||||
},
|
|
||||||
delImg4() {},
|
|
||||||
getImg5(data) {
|
|
||||||
this.form.cover3 = data
|
|
||||||
},
|
|
||||||
delImg5() {},
|
|
||||||
getImg6(data) {
|
|
||||||
this.form.cover4 = data
|
|
||||||
},
|
|
||||||
delImg6() {},
|
|
||||||
getImg7(data) {
|
|
||||||
this.form.cover5 = data
|
|
||||||
},
|
|
||||||
delImg7() {},
|
|
||||||
getImg8(data) {
|
|
||||||
this.form.cover6 = data
|
|
||||||
},
|
|
||||||
delImg8() {}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
@ -1595,6 +1083,12 @@ export default {
|
||||||
.el-cascader {
|
.el-cascader {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
}
|
}
|
||||||
|
::v-deep .el-input-group__append {
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
::v-deep .el-input-number {
|
||||||
|
width: 100% !important;
|
||||||
|
}
|
||||||
::v-deep .el-date-editor.el-input,
|
::v-deep .el-date-editor.el-input,
|
||||||
.el-date-editor.el-input__inner {
|
.el-date-editor.el-input__inner {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
|
|
Loading…
Reference in New Issue