This commit is contained in:
aaron 2025-03-23 16:00:55 +08:00
parent 86d882770c
commit 41c7a9512e
2 changed files with 30 additions and 9 deletions

View File

@ -90,6 +90,7 @@
:step="0.5"
style="width: 100%"
placeholder="请输入优惠金额"
addonAfter="元"
/>
</a-form-item>
</a-form>
@ -100,14 +101,25 @@
<script>
import { defineComponent, ref, onMounted } from 'vue'
import { message } from 'ant-design-vue'
import { message, Table, Modal, Button, Form, Input, Select, Tag, Space, InputNumber } from 'ant-design-vue'
import PageContainer from '@/components/PageContainer.vue'
import dayjs from 'dayjs'
import request from '@/utils/request'
export default defineComponent({
components: {
PageContainer
PageContainer,
ATable: Table,
AModal: Modal,
AButton: Button,
AForm: Form,
AFormItem: Form.Item,
AInput: Input,
AInputNumber: InputNumber,
ASelect: Select,
ASelectOption: Select.Option,
ATag: Tag,
ASpace: Space
},
setup() {
@ -176,7 +188,8 @@ export default defineComponent({
//
const getCouponTypeColor = (type) => {
const colorMap = {
'CASH': 'blue'
'CASH': 'blue',
'PRODUCT': 'green'
}
return colorMap[type] || 'default'
}
@ -230,6 +243,13 @@ export default defineComponent({
coupon_type: undefined
})
//
const rules = {
name: [{ required: true, message: '请输入模板名称' }],
coupon_type: [{ required: true, message: '请选择优惠券类型' }],
amount: [{ required: true, message: '请输入优惠金额' }]
}
//
const showAddModal = () => {
isEdit.value = false
@ -248,7 +268,7 @@ export default defineComponent({
currentId.value = record.id
formState.value = {
name: record.name,
amount: record.coupon_type === 'CASH' ? record.amount : undefined,
amount: record.coupon_type === 'CASH' ? (record.amount || 0) : undefined,
coupon_type: record.coupon_type
}
modalVisible.value = true
@ -257,9 +277,9 @@ export default defineComponent({
//
const handleCouponTypeChange = (value) => {
if (value === 'PRODUCT') {
formState.value.amount = undefined
} else if (value === 'CASH' && !formState.value.amount) {
formState.value.amount = 0
formState.value.amount = undefined;
} else if (value === 'CASH') {
formState.value.amount = formState.value.amount || 0;
}
}
@ -324,7 +344,8 @@ export default defineComponent({
handleEdit,
handleSubmit,
handleCancel,
handleCouponTypeChange
handleCouponTypeChange,
rules
}
}
})

View File

@ -355,7 +355,7 @@ export default defineComponent({
const fetchCommunityList = async () => {
communityLoading.value = true
try {
const res = await request.get('/api/community', {
const res = await request.get('/api/community?limit=1000', {
params: {
limit: 1000,
skip: 0,