feat:支付选择优惠券
This commit is contained in:
1 parent
51e8351dea
commit
3182c7701e
4 files changed
+43
-11
No files matched your search
@@ -1,5 +1,5 @@
|
||||
<template>
|
||||
<el-dialog :title="form.id ? '编辑优惠券' : '新增优惠券'" v-model="visible" :close-on-click-modal="false" draggable>
|
||||
<el-dialog :title="form.id ? '编辑优惠券' : '新增优惠券'" width="70%" v-model="visible" :close-on-click-modal="false" draggable>
|
||||
<el-form ref="dataFormRef" :model="form" :rules="dataRules" formDialogRef label-width="120px" v-loading="loading">
|
||||
<el-row :gutter="24">
|
||||
<el-col :span="24" class="mb20">
|
||||
@@ -26,9 +26,14 @@
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12" class="mb20">
|
||||
<!-- 立减券不需要门槛 -->
|
||||
<el-col v-if="form.type != '3'" :span="12" class="mb20">
|
||||
<el-form-item label="使用门槛" prop="minPoint">
|
||||
<el-input v-model="form.minPoint" placeholder="不填表示无门槛" />
|
||||
<el-input v-model="form.minPoint" placeholder="不填表示无门槛">
|
||||
<template #append>
|
||||
元
|
||||
</template>
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12" class="mb20">
|
||||
@@ -70,7 +75,7 @@
|
||||
<el-col :span="12" class="mb20" v-if="form.validType === '1'">
|
||||
<el-form-item label="有效期" prop="validRange">
|
||||
<el-date-picker v-model="validRange" type="datetimerange" start-placeholder="开始时间" end-placeholder="结束时间"
|
||||
style="width: 100%" />
|
||||
value-format="YYYY-MM-DD HH:mm:ss" format="YYYY-MM-DD HH:mm:ss" style="width: 100%" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="24" class="mb20" v-if="form.validType === '2'">
|
||||
@@ -119,6 +124,7 @@ import { useMessage } from "/@/hooks/message";
|
||||
import * as actCouponApi from '/@/api/act/act-coupon'
|
||||
import { rule } from '/@/utils/validate';
|
||||
import { useDict } from "/@/hooks/dict"
|
||||
import { storePrice, displayPrice } from "/@/utils/formatMoney"
|
||||
|
||||
const emit = defineEmits(['refresh']);
|
||||
|
||||
@@ -188,7 +194,16 @@ const onSubmit = async () => {
|
||||
|
||||
try {
|
||||
loading.value = true;
|
||||
form.id ? await actCouponApi.putObj(form) : await actCouponApi.addObj(form);
|
||||
const _params: any = {
|
||||
...form
|
||||
}
|
||||
if (['1', '3'].includes(_params.type)) {
|
||||
_params.faceValue = storePrice(_params.faceValue)
|
||||
}
|
||||
if (_params.minPoint) {
|
||||
_params.minPoint = storePrice(_params.minPoint)
|
||||
}
|
||||
form.id ? await actCouponApi.putObj(_params) : await actCouponApi.addObj(_params);
|
||||
useMessage().success(form.id ? '修改成功' : '添加成功');
|
||||
visible.value = false;
|
||||
emit('refresh');
|
||||
@@ -206,6 +221,16 @@ const getactCouponData = (id: string) => {
|
||||
loading.value = true
|
||||
actCouponApi.getObj(id).then((res: any) => {
|
||||
Object.assign(form, res.data)
|
||||
if (form.validStartTime && form.validEndTime) {
|
||||
validRange.value = [form.validStartTime, form.validEndTime]
|
||||
}
|
||||
// faceValue 如果是金额就要转换
|
||||
if (['1', '3'].includes(form.type)) {
|
||||
form.faceValue = displayPrice(form.faceValue, "")
|
||||
}
|
||||
if (form.minPoint) {
|
||||
form.minPoint = displayPrice(form.minPoint, "")
|
||||
}
|
||||
}).finally(() => {
|
||||
loading.value = false
|
||||
})
|
||||
|
||||
@@ -84,9 +84,9 @@
|
||||
<template #default="{ row }">
|
||||
<span v-if="row.validType === '2'">领取后{{ row.validDays }}天</span>
|
||||
<span v-else>
|
||||
<span v-if="row.validStartTime">{{ formatDate(row.validStartTime, "YYYY-mm-dd HH:MM:SS") }}</span>
|
||||
<span v-if="row.validStartTime">{{ row.validStartTime }}</span>
|
||||
至
|
||||
<span v-if="row.validEndTime">{{ formatDate(row.validEndTime, "YYYY-mm-dd HH:MM:SS") }}</span>
|
||||
<span v-if="row.validEndTime">{{ row.validEndTime }}</span>
|
||||
</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
@@ -107,6 +107,12 @@
|
||||
{{ displayPrice(row.extraPrice, "元", 2) }}
|
||||
</span>
|
||||
</div>
|
||||
<div class="status">
|
||||
<span>优惠金额</span>
|
||||
<span class="color-primary">
|
||||
{{ displayPrice(row.couponPrice, "元", 2) }}
|
||||
</span>
|
||||
</div>
|
||||
<div class="status">
|
||||
<span>实际支付</span>
|
||||
<span class="color-primary">
|
||||
@@ -492,6 +498,7 @@ const getSummaries = (param: SummaryMethodProps) => {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
margin-bottom: 2px;
|
||||
font-size: 12px;
|
||||
|
||||
span {
|
||||
display: inline-block;
|
||||
|
||||
Reference in new issue
Block a user