<template>
|
<!--
|
作者:luoyiming
|
时间:2019-10-25
|
描述:商品-添加
|
-->
|
<el-dialog title="添加门店" :visible.sync="dialogVisible" @close='dialogFormVisible' :close-on-click-modal="false"
|
:close-on-press-escape="false">
|
<el-form size="small" :model="form" ref="form">
|
<el-form-item label="门店名称" :label-width="formLabelWidth" :rules="[{required: true,message: ' '}]" prop="store_name">
|
<el-input v-model="form.store_name" autocomplete="off" placeholder="请输入门店名称"></el-input>
|
</el-form-item>
|
<el-form-item label="门店类型" :label-width="formLabelWidth" :rules="[{required: true,message: ' '}]">
|
|
<el-checkbox-group :class="{type_validator:ischeck}" v-model="checkList">
|
<el-checkbox v-for="(dict,index) in type_dict" :label="dict.value" :key="index">{{dict.name}}</el-checkbox>
|
</el-checkbox-group>
|
<!-- <el-checkbox v-for="(dict,index) in type_dict" :key="index" v-model="dict.value">{{dict.name}}</el-checkbox> -->
|
<!-- <el-input v-model="form.store_type" autocomplete="off" placeholder="请输入门店类型"></el-input> -->
|
</el-form-item>
|
<el-form-item label="小程序名称" :label-width="formLabelWidth" :rules="[{required: true,message: ' '}]" prop="store_app_name">
|
<el-input v-model="form.store_app_name" autocomplete="off" placeholder="请输入小程序名称"></el-input>
|
</el-form-item>
|
<el-form-item label="所属代理商" :label-width="formLabelWidth" :rules="[{required: true,message: ' '}]" prop="store_belonging">
|
|
<el-select v-model="form.store_belonging" placeholder="请选择所属代理商">
|
<el-option v-for="(dict,index) in belonging_dict" :label="dict.name" :value="dict.value" :key="index"></el-option>
|
</el-select>
|
|
<!-- <el-input v-model="form.store_belonging" autocomplete="off" placeholder="请输入所属代理商"></el-input> -->
|
</el-form-item>
|
|
<el-form-item label="起止时间" :label-width="formLabelWidth" :rules="[{required: true,message: ' '}]">
|
<div class="block">
|
<el-date-picker
|
:class="{type_validator:ischeck}"
|
v-model="date_value"
|
type="datetimerange"
|
value-format="yyyy-MM-dd HH:mm:ss"
|
range-separator="至"
|
start-placeholder="开始日期"
|
end-placeholder="结束日期">
|
</el-date-picker>
|
</div>
|
|
</el-form-item>
|
</el-form>
|
<div slot="footer" class="dialog-footer">
|
<el-button @click="dialogFormVisible">取 消</el-button>
|
<el-button type="primary" @click="addClick()" :loading="loading">确 定</el-button>
|
</div>
|
</el-dialog>
|
</template>
|
|
<script>
|
import StoreApi from '@/api/store.js';
|
import DictApi from '@/api/base_dict.js';
|
export default {
|
data() {
|
return {
|
form: {
|
status: 0,
|
sort: 100,
|
},
|
categoryList: [],
|
sort: '100',
|
radio: '1',
|
/*左边长度*/
|
formLabelWidth: '120px',
|
/*是否显示*/
|
dialogVisible: false,
|
loading: false,
|
|
date_value:[],
|
belonging_dict:[],
|
type_dict:[],
|
checkList:[],
|
type_validator:'',
|
ischeck:false,
|
ischeck2:false,
|
};
|
},
|
props: ['open_add'],
|
created() {
|
this.dialogVisible = this.open_add;
|
this.get_dict();
|
},
|
methods: {
|
/*获取字典*/
|
get_dict() {
|
let self = this;
|
DictApi.get_dict(['代理商','门店类型'], true)
|
.then(data => {
|
self.belonging_dict = data.data.dict[0];
|
self.type_dict = data.data.dict[1];
|
})
|
.catch(error => {
|
self.loading = false;
|
});
|
},
|
/*添加插件*/
|
addClick() {
|
let self = this;
|
let params = this.form;
|
self.$refs.form.validate((valid) => {
|
if(self.checkList.length <= 0){self.ischeck = true;}//else{self.ischeck = false;params.store_type = 1;}
|
if(self.date_value.length <= 0){self.ischeck2 = true;}//else{self.ischeck2 = false;params.end_date = 1;}
|
|
if (valid) {
|
self.loading = true;
|
params.register_date = self.date_value[0];//拆分起止时间
|
params.end_date = self.date_value[1];
|
|
params.store_type = self.checkList[0];//门店类型
|
for(var i=1;i<self.checkList.length;i++){
|
params.store_type = params.store_type + '/' + self.checkList[i];
|
}
|
|
StoreApi.addStore(params, true).then(res => {
|
if (res.code == 1) {
|
self.loading = false;
|
self.$message({
|
message: '恭喜你,添加成功',
|
type: 'success'
|
});
|
self.dialogFormVisible(true);
|
} else {
|
self.loading = false;
|
}
|
})
|
.catch(error => {
|
|
});
|
}
|
});
|
|
|
},
|
/*关闭弹窗*/
|
dialogFormVisible(e) {
|
if (e) {
|
this.$emit('closeDialog', {
|
type: 'success',
|
openDialog: false
|
})
|
} else {
|
this.$emit('closeDialog', {
|
type: 'error',
|
openDialog: false
|
})
|
}
|
}
|
|
}
|
};
|
</script>
|
|
<style>
|
.type_validator{
|
border: red solid 0.5px;
|
border-radius: 4px;
|
}
|
</style>
|