奖品列表新增奖品添加积分数选项;抽奖记录下载添加区分区域功能

This commit is contained in:
Leo_Ding 2025-09-12 17:34:40 +08:00
parent 595298afb6
commit ec9dc95c8d
2 changed files with 36 additions and 6 deletions

View File

@ -1,10 +1,33 @@
<template>
<x-search-bar class="mb-8-2">
<template #default="{ gutter, colSpan }">
<a-form :model="searchFormData" layout="inline">
<a-row :gutter="gutter">
<a-col >
<a-form-item label="所属区域" name="areaId" style="width: 500px;">
<a-select v-model:value="searchFormData.areaId" allowClear>
<a-select-option :value="1">南通</a-select-option>
<a-select-option :value="2">盐城</a-select-option>
</a-select>
</a-form-item>
</a-col>
<a-col >
<a-space>
<a-button @click="handleResetSearch">{{ $t('button.reset') }}</a-button>
<a-button ghost type="primary" @click="handleSearch">
{{ $t('button.search') }}
</a-button>
</a-space>
</a-col>
</a-row>
</a-form>
</template>
</x-search-bar>
<a-row :gutter="8" :wrap="false">
<a-col flex="auto">
<a-card type="flex">
<div class="exportExcel"><a-button type="primary">
<a
:href='config("http.apiBasic") + "/api/v1/apps/common/raffle/Atbrw2334D_FVadfyb435zr55q3"'>导出Excel</a></a-button>
<a :href='config("http.apiBasic") + `/api/v1/apps/common/raffle/Atbrw2334D_FVadfyb435zr55q3?area_id=${searchFormData.areaId}`'>导出Excel</a></a-button>
</div>
<a-table :columns="columns" :data-source="listData" bordered="true" :loading="loading"
:pagination="paginationState" :scroll="{ x: 1000 }" @change="onTableChange">

View File

@ -21,6 +21,12 @@
</a-select>
</a-form-item>
</a-col>
<a-col :span="24">
<a-form-item :label="'积分数'" name="point" v-if="formData.type==='point'">
<a-input-number :placeholder="'请输入积分数'" v-model:value="formData.point"
style="width: 100%;"></a-input-number>
</a-form-item>
</a-col>
<a-col :span="24">
<a-form-item :label="'奖品名称'" name="name">
<a-input :placeholder="'请输入奖品名称'" v-model:value="formData.name"></a-input>
@ -86,7 +92,7 @@ const { spining, showSpining, hideSpining } = useSpining()
const cancelText = ref(t('button.cancel'))
const okText = ref(t('button.confirm'))
const listData = ref([])
const lotteryTypes=ref([
const lotteryTypes = ref([
{ id: 'point', name: '积分奖品' },
{ id: 'product', name: '实体奖品' },
{ id: 'none', name: '谢谢惠顾' },
@ -97,6 +103,7 @@ formRules.value = {
type: { required: true, message: '请选择奖品类型' },
name: { required: true, message: '请输入奖品名称' },
maxNum: { required: true, message: '请输入最大中奖数' },
point: { required: true, message: '请输入积分数' },
probability: { required: true, message: '请中奖率', trigger: 'change' },
status: [{ required: true, message: '请输入状态', trigger: 'change' }],
}
@ -147,8 +154,8 @@ async function handleEdit(record = {}) {
probability: data.probability * 100,
imgList: data.img ? [config('http.apiBasic') + data.img] : []
}
numChecked.value = data.maxNum < 0?true:false
probabilityChecked.value = data.probability < 0?true:false
numChecked.value = data.maxNum < 0 ? true : false
probabilityChecked.value = data.probability < 0 ? true : false
} catch (error) {
message.error({ content: error.message })
hideSpining()
@ -164,7 +171,7 @@ function handleOk() {
showLoading()
const params = {
...values,
probability:probabilityChecked.value ?-1: formData.value.probability / 100,
probability: probabilityChecked.value ? -1 : formData.value.probability / 100,
img: formData.value.imgList && spliceUrl(formData.value.imgList[0]),
maxNum: numChecked.value ? -1 : formData.value.maxNum,
}