发布修改

master
Sigo 4 years ago
parent 000cf9254d
commit 4528ec8627

@ -2,7 +2,7 @@ import {
service
} from "../../utils/service";
// 主页查询
// 发布
export function doAdd(data) {
return service({
url: "/platformCoupon/add",

@ -18,6 +18,10 @@ export default {
// console.log('file', file);
console.log('fileList', fileList);
},
//
handleClear() {
this.$refs.upload.clearFiles();
}
}
}
</script>

@ -19,45 +19,49 @@
<el-radio v-model="form.serviceConditions" :label="0"></el-radio>
<el-radio v-model="form.serviceConditions" :label="1"></el-radio>
</el-form-item>
<el-form-item prop="fullReductionMoney" v-show="form.serviceConditions===0" :prop="form.serviceConditions===0?'fullReductionMoney':''">
<el-form-item v-if="form.serviceConditions===0" prop="fullReductionMoney">
<amount-input ref="fullReductionMoney" @amount="handleAmount" name="fullReductionMoney" placeholder="满减金额(满多少可以减)"></amount-input>
</el-form-item>
<el-form-item label="适用门店" prop="suitableStore">
<el-input v-model.trim="form.suitableStore" placeholder="优惠券适用的门店"></el-input>
<el-radio v-model="form.suitableStore" :label="0"></el-radio>
<el-radio v-model="form.suitableStore" :label="1"></el-radio>
</el-form-item>
<el-form-item v-if="form.suitableStore===1" prop="useStoreList">
<el-button type="primary" size="mini">选择门店</el-button>
</el-form-item>
<el-form-item label="适用项目" prop="suitableProject">
<el-input v-model.trim="form.suitableProject" placeholder="优惠券适用的项目"></el-input>
<el-radio v-model="form.suitableProject" :label="0"></el-radio>
<el-radio v-model="form.suitableProject" :label="1"></el-radio>
</el-form-item>
<el-form-item v-if="form.suitableProject===1" prop="projectList">
<el-button type="primary" size="mini">选择项目</el-button>
</el-form-item>
<el-form-item label="有效方式" prop="indateType">
<el-radio v-model="form.indateType" :label="0"></el-radio>
<el-radio v-model="form.indateType" :label="1"></el-radio>
</el-form-item>
<el-form-item v-show="form.indateType===0" :prop="form.indateType===0?'startDay':''">
<el-form-item v-if="form.indateType===0" prop="startDay">
<el-input v-model.trim="form.startDay" placeholder="领取后多少天生效"></el-input>
<el-input v-model.trim="form.endDay" placeholder="生效后多少天内有效"></el-input>
</el-form-item>
<!-- <el-form-item v-show="form.indateType===0" :prop="form.indateType===0?'endDay':''">
<el-form-item v-if="form.indateType===0" prop="endDay">
<el-input v-model.trim="form.endDay" placeholder="生效后多少天内有效"></el-input>
</el-form-item> -->
<el-form-item v-show="form.indateType===1" :prop="form.indateType===1?'startDate':''">
</el-form-item>
<el-form-item v-if="form.indateType===1" prop="startDate">
<el-date-picker v-model="form.fixDate" type="daterange" range-separator="至" start-placeholder="开始日期" end-placeholder="截止日期" value-format="yyyy-MM-dd">
</el-date-picker>
</el-form-item>
<!-- <el-form-item v-show="form.indateType===1" :prop="form.indateType===1?'endDay':''">
<el-date-picker v-model="form.endDay" type="date" placeholder="截止日期" value-format="yyyy-MM-dd"></el-date-picker>
</el-form-item> -->
<el-form-item label="分享提成规则" prop="shareCommissionRules">
<el-radio v-model="form.shareCommissionRules" :label="0"></el-radio>
<el-radio v-model="form.shareCommissionRules" :label="1">(%)</el-radio>
</el-form-item>
<el-form-item v-show="form.shareCommissionRules===0" :prop="form.shareCommissionRules===0?'fixedAmount':''">
<el-form-item v-if="form.shareCommissionRules===0" prop="fixedAmount">
<amount-input ref="fixedAmount" @amount="handleAmount" name="fixedAmount" placeholder="固定提成(元)"></amount-input>
</el-form-item>
<el-form-item v-show="form.shareCommissionRules===1" :prop="form.shareCommissionRules===1?'orderCommission':''">
<el-form-item v-if="form.shareCommissionRules===1" prop="orderCommission">
<amount-input ref="orderCommission" @amount="handleAmount" name="orderCommission" placeholder="单据金额抽成(%)"></amount-input>
</el-form-item>
<el-form-item label="活动图片" prop="imageUrl">
<active-img @active-img="handleImage"></active-img>
<active-img ref="activeImg" @active-img="handleImage"></active-img>
</el-form-item>
</el-form>
</el-col>
@ -76,7 +80,7 @@
<script>
import AmountInput from '@/components/AmountInput/index'
import ActiveImg from './activeImg.vue'
import ActiveImg from './activeImg'
export default {
name: 'Form',
components: { AmountInput, ActiveImg },
@ -98,15 +102,8 @@ export default {
couponType: [
{ required: true, message: '请选择优惠方式', trigger: ['blur', 'change'] },
],
fullReductionMoney: [
{ required: true, message: '请输入满减金额', trigger: 'blur' },
{
pattern: /^\d*(?:\.\d{0,2})?$/,
//pattern: /^1[3456789]\d{9}$/,
message: '最多能输入两位小数',
trigger: 'blur',
},
],
suitableStore: [
{ required: true, message: '请选择适用门店', trigger: ['blur', 'change'] },
@ -117,10 +114,16 @@ export default {
indateType: [
{ required: true, message: '请选择有效方式', trigger: ['blur', 'change'] },
],
startDay: [
{ required: true, message: '请输入多少天', trigger: 'blur' },
],
endDay: [
{ required: true, message: '请输入多少天', trigger: 'blur' },
],
shareCommissionRules: [
{ required: true, message: '请选择分享提成规则', trigger: ['blur', 'change'] },
],
// imageUrl: [{ required: true, message: '', trigger: ['blur', 'change'] }],
imageUrl: [{ required: true, message: '请上传活动图片', trigger: ['blur', 'change'] }],
},
}
},
@ -138,9 +141,16 @@ export default {
},
//
resetForm() {
this.$refs.fullReductionMoney.reset()
this.$refs.fixedAmount.reset()
this.$refs.orderCommission.reset()
let form = Object.assign({}, this.form);
if (form.serviceConditions === 0) {
this.$refs.fullReductionMoney.reset()
}
if (shareCommissionRules === 0) {
this.$refs.fixedAmount.reset()
}
if (shareCommissionRules === 1) {
this.$refs.orderCommission.reset()
}
this.$refs.form.resetFields()
this.$baseMessage('重置成功', 'success')
},
@ -148,7 +158,7 @@ export default {
//
handleImage(file) {
let form = Object.assign({}, this.form);
form.file = file
form.multipartFile = file
this.form = Object.assign({}, form);
},
//
@ -157,6 +167,10 @@ export default {
form[name] = amount
this.form = Object.assign({}, form)
},
//
handleClear() {
this.$refs.activeImg.handleClear()
}
},
}
</script>

@ -23,13 +23,14 @@
<el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
<div class="box">
<el-button type="warning" @click="handleLast" size="medium">上一步</el-button>
<el-button type="primary" @click="handleNext" size="medium">提交</el-button>
<el-button type="primary" @click="handleSubmit" size="medium">提交</el-button>
</div>
</el-col>
</el-row>
</div>
</template>
<script>
import { doAdd } from "@/api/discount-coupon/issue.js";
export default {
data() {
return {
@ -51,8 +52,19 @@ export default {
this.$emit('next', 1)
},
//
handleNext() {
this.$emit('next', 3)
async handleSubmit() {
let format = new FormData()
Object.keys(this.form).map(key => {
format.append(key, this.form[key])
})
let { code } = await doAdd(format)
if (code == '000000') {
this.$message({
message: '发布成功',
type: 'success'
});
this.$emit('next', 3)
}
},
},
}

@ -26,78 +26,25 @@ export default {
data() {
return {
active: 1,
form: {
couponNum: 1,
},
rules: {
name: [
{ required: true, message: '请输入活动名称', trigger: 'blur' },
{
min: 3,
max: 5,
message: '长度在 3 到 5 个字符',
trigger: 'blur',
},
],
deductionAmount: [
{ required: true, message: '请输入抵扣金额', trigger: 'blur' },
{
pattern: /^\d*(?:\.\d{0,2})?$/,
//pattern: /^1[3456789]\d{9}$/,
message: '最多能输入两位小数',
trigger: 'blur',
},
],
couponNum: [{ required: true, message: '优惠券数量', trigger: 'blur' }],
shareAmount: [
{ required: true, message: '请输入分润', trigger: 'blur' },
{
pattern: /^\d*(?:\.\d{0,2})?$/,
//pattern: /^1[3456789]\d{9}$/,
message: '最多能输入两位小数',
trigger: 'blur',
},
],
phone: [
{ required: true, message: '请输入联系方式', trigger: 'blur' },
{ min: 11, max: 11, message: '请输入11位手机号码', trigger: 'blur' },
{
pattern: /^(13[0-9]|14[579]|15[0-3,5-9]|16[6]|17[0135678]|18[0-9]|19[89])\d{8}$/,
//pattern: /^1[3456789]\d{9}$/,
message: '请输入正确的手机号码',
trigger: 'blur',
},
],
imgUrl: [{ required: true, message: '请上传活动图片', trigger: 'change' }],
region: [{ required: true, message: '请选择活动区域', trigger: 'change' }],
},
form: {},
}
},
methods: {
submitForm() {
this.$refs.form.validate((valid) => {
if (valid) {
alert('submit!')
} else {
return false
}
})
},
resetForm() {
this.$refs.deductionAmount.reset()
this.$refs.shareAmount.reset()
this.$refs.form.resetFields()
},
handleAmount(name, amount) {
let form = Object.assign({}, this.form)
form[name] = amount
this.form = Object.assign({}, form)
},
//
// /
handleNext(active, form) {
this.active = active
let activeName = active == 1 ? 'edit' : active == 2 ? 'templates' : 'complete'
this.$refs[activeName].handleData(fiorm)
if (activeName == 'templates') {
this.$nextTick(function () {
this.$refs[activeName].handleData(form)
});
}
if (active === 1) {
//
this.$nextTick(function () {
this.$refs.edit.handleClear()
});
}
},
},
}

Loading…
Cancel
Save