|
@@ -9,22 +9,25 @@
|
|
|
:model="form"
|
|
|
:rules="formRules"
|
|
|
label-width="120px">
|
|
|
- <el-form-item label="商品分类:">
|
|
|
- <el-select v-model="form.productAttributeCategoryId" placeholder="请选择">
|
|
|
+ <el-form-item
|
|
|
+ prop="category_id"
|
|
|
+ :rules="{required: true, message: '请选择商品分类', trigger: ['blur', 'change']}"
|
|
|
+ label="商品分类:">
|
|
|
+ <el-select v-model="form.category_id" placeholder="请选择">
|
|
|
<el-option
|
|
|
- v-for="item in [{id: 1, name: '柜台'},{id: 2, name: '厨房'}]"
|
|
|
+ v-for="item in categoryData"
|
|
|
:key="item.id"
|
|
|
- :label="item.name"
|
|
|
+ :label="item.category_name"
|
|
|
:value="item.id">
|
|
|
</el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
- <el-form-item prop="bar_name"
|
|
|
+ <el-form-item prop="product_name"
|
|
|
:rules="formRules.required"
|
|
|
label="商品名称:">
|
|
|
<el-col :span="16">
|
|
|
- <el-input v-model="form.bar_name"
|
|
|
- placeholder="请输入门店商品名称"
|
|
|
+ <el-input v-model="form.product_name"
|
|
|
+ placeholder="请输入商品名称"
|
|
|
clearable></el-input>
|
|
|
</el-col>
|
|
|
</el-form-item>
|
|
@@ -35,6 +38,7 @@
|
|
|
:on-success="handleAvatarSuccess"
|
|
|
:before-upload="beforeAvatarUpload"
|
|
|
:accept="'image/*'"
|
|
|
+ :limit="1"
|
|
|
:file-list="fileList"
|
|
|
list-type="picture-card"
|
|
|
action="/api/admin/v1/upload/file"
|
|
@@ -43,34 +47,37 @@
|
|
|
<div slot="tip" class="el-upload__tip">只能上传jpg/png文件,且不超过5M</div>
|
|
|
</el-upload>
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="出单位置:">
|
|
|
- <el-select v-model="form.productAttributeCategoryId" placeholder="请选择">
|
|
|
+ <el-form-item prop="product_place"
|
|
|
+ :rules="formRules.required"
|
|
|
+ label="出单位置:">
|
|
|
+ <el-select v-model="form.product_place" placeholder="请选择">
|
|
|
<el-option
|
|
|
- v-for="item in [{id: 1, name: '柜台'},{id: 2, name: '厨房'}]"
|
|
|
+ v-for="item in [{id: '1', name: '厨房'},{id: '2', name: '柜台'}]"
|
|
|
:key="item.id"
|
|
|
:label="item.name"
|
|
|
:value="item.id">
|
|
|
</el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
- <el-form-item prop="bar_status"
|
|
|
+ <el-form-item prop="product_status"
|
|
|
:rules="formRules.required"
|
|
|
label="是否上架:">
|
|
|
- <el-radio v-model="form.bar_status"
|
|
|
+ <el-radio v-model="form.product_status"
|
|
|
label="1">上架
|
|
|
</el-radio>
|
|
|
- <el-radio v-model="form.bar_status"
|
|
|
+ <el-radio v-model="form.product_status"
|
|
|
label="0">下架
|
|
|
</el-radio>
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="商品描述:">
|
|
|
- <tinymce :height="300" v-model="form.content"/>
|
|
|
+ <el-form-item prop="product_desc"
|
|
|
+ label="商品描述:">
|
|
|
+ <tinymce :height="300" v-model="form.product_desc"/>
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="设置SKU" required></el-form-item>
|
|
|
- <el-form-item v-for="(desk, index) in form.place_number"
|
|
|
+ <el-form-item label="设置SKU"></el-form-item>
|
|
|
+ <el-form-item v-for="(desk, index) in form.skus"
|
|
|
:label="'SKU' + (index + 1)"
|
|
|
:key="index"
|
|
|
- :prop="'place_number.' + index + '.value'"
|
|
|
+ :prop="'skus.' + index + '.value'"
|
|
|
:rules="formRules.required">
|
|
|
<el-col :span="9">
|
|
|
<el-input v-model="desk.value" placeholder="请设置SKU名"></el-input>
|
|
@@ -149,26 +156,32 @@ export default {
|
|
|
default: function () {
|
|
|
return {}
|
|
|
}
|
|
|
+ },
|
|
|
+ categoryData: {
|
|
|
+ type: Array,
|
|
|
+ default: function () {
|
|
|
+ return []
|
|
|
+ }
|
|
|
+ },
|
|
|
+ goodsAttrData: {
|
|
|
+ type: Array,
|
|
|
+ default: function () {
|
|
|
+ return []
|
|
|
+ }
|
|
|
}
|
|
|
},
|
|
|
data () {
|
|
|
return {
|
|
|
dialog: !!this.value,
|
|
|
form: {
|
|
|
- bar_name: '', // 门店名称
|
|
|
- bar_address: '', // 门店地址
|
|
|
- bar_status: '1', // 门店状态(0无效1有效)
|
|
|
- bar_img_url: [], // 门店图片
|
|
|
- bar_song_start_time: '', // 点歌开始时间
|
|
|
- bar_song_end_time: '', // 点歌结束时间
|
|
|
- bar_place_reserve_start_time: '', // 座位预定开始时间
|
|
|
- bar_place_reserve_end_time: '', // 座位预定结束时间
|
|
|
- content: '',
|
|
|
- place_number: [
|
|
|
- {
|
|
|
- value: ''
|
|
|
- }
|
|
|
- ]
|
|
|
+ category_id: '', // 分类ID
|
|
|
+ product_name: '', // 商品名称
|
|
|
+ product_img_url: '', // 商品图片
|
|
|
+ product_place: '1', // 出单位置(1厨房2柜台)
|
|
|
+ product_status: '1', // 商品状态(0无效1有效)
|
|
|
+ product_desc: '', // 商品描述
|
|
|
+ skus: [], // 商品sku
|
|
|
+ attachs: [] // 规格
|
|
|
},
|
|
|
fileList: [],
|
|
|
value1: true,
|
|
@@ -224,7 +237,7 @@ export default {
|
|
|
})
|
|
|
},
|
|
|
handleSubmit () {
|
|
|
- const url = this.exData.id ? '/v1/bar/modify' : '/v1/bar/add'
|
|
|
+ const url = this.exData.id ? '/v1/bar/product/modify' : '/v1/bar/product/add'
|
|
|
this.$refs.form.validate(async valid => {
|
|
|
if (valid) {
|
|
|
const data = await this.$fetch(url, {
|