You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

139 lines
3.7 KiB

<template>
<el-dialog :append-to-body="true" :close-on-click-modal="false" :before-close="cancel" :visible.sync="dialog"
:title="isAdd ? '新增' : '编辑'" width="900px">
<el-form ref="form" :model="form" :rules="rules" size="small" label-width="150px">
<el-form-item label="开启时间(整数小时)">
<!-- <el-input v-model="form.time" style="width: 270px;"/>-->
<el-time-select
v-model="form.time"
:picker-options="{
start: '00:00',
step: '00:60',
end: '24:00'
}"
placeholder="选择时间">
</el-time-select>
</el-form-item>
<el-form-item label="持续时间(整数小时)">
<el-input v-model="form.continued" style="width: 270px;"/>
</el-form-item>
<el-form-item label="是否开启">
<el-radio-group v-model="form.status">
<el-radio :label="1">开启</el-radio>
<el-radio :label="2">关闭</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="秒杀规则">
<editor v-model="form.rule" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<!--<el-input v-model="form.groupName" />-->
<el-button type="text" @click="cancel">取消</el-button>
<el-button :loading="loading" type="primary" @click="doSubmit">确认</el-button>
</div>
</el-dialog>
</template>
<script>
import {add, edit} from '@/api/bxg/yxSystemGroupData'
import picUpload from '@/components/pic-upload'
import editor from "@views/bxg/components/Editor";
export default {
components: {picUpload,editor},
props: {
isAdd: {
type: Boolean,
required: true
}
},
data() {
return {
loading: false, dialog: false,
form: {
id: '',
groupName: 'yshop_seckill_time',
time: '08:00',
status:2, //默认关闭
continued: 2,
rule:''
},
rules: {}
}
},
methods: {
cancel() {
this.resetForm()
},
doSubmit() {
if (parseInt(this.form.continued) + parseInt(this.form.time) > 24) {
return this.$message.error("开启+持续时间不能超过24小时")
}
this.loading = true
if (this.isAdd) {
this.doAdd()
} else this.doEdit()
},
doAdd() {
// console.log('this.form',Number(this.form.time.slice(0,2)))
this.form.time=Number(this.form.time.slice(0,2))
add(this.form).then(res => {
if (res.status==500){
this.$message.error(res.msg)
this.loading = false
return
}
this.resetForm()
this.$notify({
title: '添加成功',
type: 'success',
duration: 2500
})
this.loading = false
this.$parent.init()
}).catch(err => {
this.loading = false
console.log(err.response.data.message)
})
},
doEdit() {
this.form.time=Number(this.form.time.slice(0,2))
edit(this.form).then(res => {
if (res.status==500){
this.$message.error(res.msg)
this.loading = false
return
}
this.resetForm()
this.$notify({
title: '修改成功',
type: 'success',
duration: 2500
})
this.loading = false
this.$parent.init()
}).catch(err => {
this.loading = false
console.log(err.response.data.message)
})
},
resetForm() {
this.dialog = false
this.$refs['form'].resetFields()
this.form = {
id: '',
groupName: 'yshop_seckill_time',
time: '08:00',
continued: 2,
status:2, //默认关闭
rule:''
}
}
}
}
</script>
<style scoped>
</style>