优惠卷列表
This commit is contained in:
parent
bce4651dfd
commit
0f6f973192
@ -47,5 +47,9 @@ export function getCouponDetail(id){
|
||||
data
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
export function getProduct(){//系统-发放系统优惠卷
|
||||
return request({
|
||||
url:'admin/product/list',
|
||||
method: 'post'
|
||||
})
|
||||
}
|
||||
|
||||
@ -1,11 +1,11 @@
|
||||
import request from '../../utils/request'
|
||||
|
||||
const url = '/admin/inquiry/config/doctor';
|
||||
const url = '/admin/inquiry/doctor';
|
||||
|
||||
|
||||
export function getInquiryconfigList(params){
|
||||
return request({
|
||||
url:'/admin/inquiry/config/doctor',
|
||||
url:'/admin/inquiry/doctor',
|
||||
method: 'get',
|
||||
params
|
||||
})
|
||||
@ -13,21 +13,21 @@ export function getInquiryconfigList(params){
|
||||
|
||||
export function addInquiryconfig(data){//添加配置
|
||||
return request({
|
||||
url:'/admin/inquiry/config/doctor',
|
||||
url:'/admin/inquiry/doctor',
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
export function editInquiryconfig(data,id){//添加配置
|
||||
return request({
|
||||
url:'/admin/inquiry/config/doctor/'+id,
|
||||
url:'/admin/inquiry/doctor/'+id,
|
||||
method: 'put',
|
||||
data
|
||||
})
|
||||
}
|
||||
export function getInquiryconfigDetail(id){
|
||||
return request({
|
||||
url:'/admin/inquiry/config/doctor/'+id,
|
||||
url:'/admin/inquiry/doctor/'+id,
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
@ -1,11 +1,11 @@
|
||||
import request from '../../utils/request'
|
||||
|
||||
const url = '/admin/inquiry/config/system';
|
||||
const url = '/admin/inquiry/system';
|
||||
|
||||
|
||||
export function getSysconfigList(params){
|
||||
return request({
|
||||
url:'/admin/inquiry/config/system',
|
||||
url:'/admin/inquiry/system',
|
||||
method: 'get',
|
||||
params
|
||||
})
|
||||
@ -13,21 +13,21 @@ export function getSysconfigList(params){
|
||||
|
||||
export function addSysconfig(data){//添加配置
|
||||
return request({
|
||||
url:'/admin/inquiry/config/system',
|
||||
url:'/admin/inquiry/system',
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
export function editSysconfig(data,id){//添加配置
|
||||
return request({
|
||||
url:'/admin/inquiry/config/system/'+id,
|
||||
url:'/admin/inquiry/system/'+id,
|
||||
method: 'put',
|
||||
data
|
||||
})
|
||||
}
|
||||
export function getSysconfigDetail(id){
|
||||
return request({
|
||||
url:'/admin/inquiry/config/system/'+id,
|
||||
url:'/admin/inquiry/system/'+id,
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
@ -13,10 +13,10 @@
|
||||
<div class="bar"></div>
|
||||
<div class="name">优惠卷信息</div>
|
||||
</div>
|
||||
<a-form :model="modalForm" ref="modalFormRef" :auto-label-width="true">
|
||||
<a-form :model="modalForm" ref="modalFormRef" :auto-label-width="true" :rules="rules">
|
||||
<a-row :gutter="24" style="margin-top: 35px">
|
||||
<a-col :span="12">
|
||||
<a-form-item field="inquiry_no" label="优惠卷名称:">
|
||||
<a-form-item field="coupon_name" label="优惠卷名称:">
|
||||
<a-input
|
||||
placeholder="请输入优惠卷名称"
|
||||
v-model="modalForm.coupon_name"
|
||||
@ -24,7 +24,7 @@
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="12">
|
||||
<a-form-item field="inquiry_no" label="使用平台:">
|
||||
<a-form-item field="coupon_client" label="使用平台:">
|
||||
<a-select
|
||||
placeholder="请选择使用平台"
|
||||
v-model="modalForm.coupon_client"
|
||||
@ -117,7 +117,6 @@
|
||||
:style="{ width: '320px' }"
|
||||
placeholder="请选择问诊类型"
|
||||
v-model="modalForm.inquiry_type"
|
||||
|
||||
>
|
||||
<!-- 1:'专家问诊', 2:'快速问诊', 3:'公益问诊', 4:'问诊购药',5:'糖组检测') -->
|
||||
<a-option key="1" value="1" label="专家问诊">专家问诊</a-option>
|
||||
@ -129,9 +128,35 @@
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row :gutter="24">
|
||||
<a-col a-col :span="24">
|
||||
<a-form-item field="coupon_count" label="发放数量:">
|
||||
<a-input-number
|
||||
v-model="modalForm.coupon_count"
|
||||
:style="{ width: '320px' }"
|
||||
placeholder="请输入发放数量"
|
||||
class="input-demo"
|
||||
:min="1"
|
||||
/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row :gutter="24">
|
||||
<a-col a-col :span="24">
|
||||
<a-form-item field="coupon_price" label="优惠卷金额:">
|
||||
<a-input-number
|
||||
v-model="modalForm.coupon_price"
|
||||
:style="{ width: '320px' }"
|
||||
placeholder="请输入优惠卷金额"
|
||||
class="input-demo"
|
||||
:min="0"
|
||||
/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row :gutter="24" v-if="showTimeRange">
|
||||
<a-col :span="12">
|
||||
<a-form-item field="inquiry_type" label="有效时间:">
|
||||
<a-form-item field="valid_start_time" label="有效时间:" :rules="[{required: true,message:'请选择有效时间'}]">
|
||||
<a-range-picker
|
||||
style="width: 360px; margin: 0 24px 24px 0"
|
||||
show-time
|
||||
@ -145,7 +170,7 @@
|
||||
</a-row>
|
||||
<a-row :gutter="24" v-if="showValidDay">
|
||||
<a-col a-col :span="24">
|
||||
<a-form-item field="valid_days" label="领取之日起有效天数:">
|
||||
<a-form-item field="valid_days" label="领取之日起有效天数:" :rules="[{required: true,message:'请输入领取之日起有效天数'}]">
|
||||
<a-input-number
|
||||
v-model="modalForm.valid_days"
|
||||
:style="{ width: '320px' }"
|
||||
@ -156,22 +181,9 @@
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<!-- <a-row :gutter="24">
|
||||
<a-col a-col :span="24">
|
||||
<a-form-item field="inquiry_type" label="发放个数:">
|
||||
<a-input-number
|
||||
v-model="value"
|
||||
:style="{ width: '320px' }"
|
||||
placeholder="请输入发放个数"
|
||||
class="input-demo"
|
||||
:min="1"
|
||||
/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
</a-row> -->
|
||||
<a-row :gutter="24" v-if="showManjian">
|
||||
<a-col a-col :span="24">
|
||||
<a-form-item field="with_amount" label="满减金额(元):">
|
||||
<a-form-item field="with_amount" label="满减金额(元):" :rules="[{required: true,message:'请输入满减金额'}]">
|
||||
<a-input-number
|
||||
v-model="modalForm.with_amount"
|
||||
:style="{ width: '320px' }"
|
||||
@ -184,7 +196,7 @@
|
||||
</a-row>
|
||||
<a-row :gutter="24">
|
||||
<a-col a-col :span="24">
|
||||
<a-form-item field="min_usable_number" label="单商品最小可使用数量:">
|
||||
<a-form-item field="min_usable_number" label="单商品最小可使用数量:" :rules="[{required: true,message:'请输入单商品最小可使用数量'}]">
|
||||
<a-input-number
|
||||
v-model="modalForm.min_usable_number"
|
||||
:style="{ width: '320px' }"
|
||||
@ -216,15 +228,13 @@
|
||||
</a-col>
|
||||
</a-row> -->
|
||||
<a-row :gutter="24" v-if="showProduct">
|
||||
<a-col a-col :span="24">
|
||||
<a-form-item field="product_id" label="关联商品:">
|
||||
<a-input-number
|
||||
v-model="modalForm.product_id"
|
||||
:style="{ width: '320px' }"
|
||||
placeholder="请选择关联商品"
|
||||
class="input-demo"
|
||||
:min="1"
|
||||
/>
|
||||
<a-col a-col :span="12">
|
||||
<a-form-item field="product_id" label="关联商品:" :rules="[{required: true,message:'请选择关联商品'}]">
|
||||
<a-select multiple v-model="modalForm.product_id" placeholder="请选择关联商品">
|
||||
<a-option v-for="item in productList" :key="item.product_platform_id" :value="item.product_platform_id" :label="item.product_name">
|
||||
{{ item.product_name }}
|
||||
</a-option>
|
||||
</a-select>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
</a-row>
|
||||
@ -321,9 +331,10 @@
|
||||
</a-modal>
|
||||
</template>
|
||||
<script setup>
|
||||
import { ref, toRefs, reactive, watch} from 'vue';
|
||||
import { addCoupon,updateCoupon } from '@/api/coupon/list';
|
||||
import { ref, toRefs, watch,getCurrentInstance} from 'vue';
|
||||
import { addCoupon,updateCoupon,getProduct } from '@/api/coupon/list';
|
||||
import { Message } from '@arco-design/web-vue';
|
||||
const { proxy } = getCurrentInstance();
|
||||
const emits = defineEmits(['closeChange']);
|
||||
const props = defineProps({
|
||||
// 是否显示
|
||||
@ -395,7 +406,11 @@ watch(
|
||||
changeType(props.modalForm.coupon_type);
|
||||
changeScope(props.modalForm.application_scope);
|
||||
changeObject(props.modalForm.distribution_object);
|
||||
changeValidType(props.modalForm.valid_type)
|
||||
changeValidType(props.modalForm.valid_type);
|
||||
if(props.modalForm.valid_start_time && props.modalForm.valid_end_time){
|
||||
defaultValue.value=[props.modalForm.valid_start_time,props.modalForm.valid_end_time]
|
||||
};
|
||||
|
||||
}
|
||||
},
|
||||
{ immediate: true, deep: true }
|
||||
@ -403,42 +418,113 @@ watch(
|
||||
const onOk = (dateString, date) => {
|
||||
[valid_start_time.value, valid_end_time.value] = dateString;
|
||||
};
|
||||
|
||||
|
||||
const productList=ref([])
|
||||
const handleGetProduct=async()=>{
|
||||
const {code,data}=await getProduct();
|
||||
if(code==200){
|
||||
productList.value=data;
|
||||
}
|
||||
}
|
||||
const handleClose = () => {
|
||||
emits('closeChange', (modalVisible.value = false));
|
||||
};
|
||||
const disabledDate = (time) => {
|
||||
return time.getTime() < Date.now() - 8.64e7;
|
||||
};
|
||||
const handleAddCoupon=async()=>{
|
||||
const {code}=await addCoupon({
|
||||
|
||||
const handleAddCoupon=()=>{
|
||||
proxy.$refs.modalFormRef.validate(async(valid) => {
|
||||
if (!valid) {
|
||||
let {coupon_name,coupon_client,coupon_type,distribution_object,application_scope,
|
||||
inquiry_type,is_mutex,is_display,distribution_with_day,min_usable_number,coupon_count,coupon_price,with_amount,valid_type,valid_days,valid_start_time,valid_end_time,product_id,reissue_interval_days,is_reissuable_after_expire,is_popup,coupon_desc}=props.modalForm;
|
||||
let product_id_arr=[];
|
||||
if(product_id){
|
||||
product_id_arr=product_id.split(',');
|
||||
}
|
||||
const {code}=await addCoupon({
|
||||
coupon_name,
|
||||
coupon_client,
|
||||
coupon_type,
|
||||
distribution_object,
|
||||
application_scope,
|
||||
inquiry_type,
|
||||
is_mutex,
|
||||
is_display,
|
||||
distribution_with_day,
|
||||
min_usable_number,
|
||||
coupon_count,
|
||||
coupon_price,
|
||||
with_amount,
|
||||
valid_type,
|
||||
valid_days,
|
||||
valid_start_time,
|
||||
valid_end_time,
|
||||
product_id,
|
||||
reissue_interval_days,
|
||||
is_reissuable_after_expire,
|
||||
is_popup,
|
||||
coupon_desc
|
||||
})
|
||||
if(code==200){
|
||||
Message.success("添加成功");
|
||||
handleClose();
|
||||
}
|
||||
if(code==200){
|
||||
Message.success("添加成功");
|
||||
handleClose();
|
||||
}else{
|
||||
proxy.$notification.error(response.message);
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
};
|
||||
const handleUpdateCoupon=async()=>{
|
||||
const {code}=await updateCoupon({
|
||||
|
||||
proxy.$refs.modalFormRef.validate(async(valid) => {
|
||||
if (!valid) {
|
||||
let {coupon_id,coupon_name,coupon_client,coupon_type,distribution_object,application_scope,
|
||||
inquiry_type,is_mutex,is_display,distribution_with_day,min_usable_number,coupon_count,coupon_price,with_amount,valid_type,valid_days,valid_start_time,valid_end_time,product_id,reissue_interval_days,is_reissuable_after_expire,is_popup,coupon_desc}=props.modalForm;
|
||||
let product_id_arr=[];
|
||||
if(product_id){
|
||||
product_id_arr=product_id.split(',');
|
||||
}
|
||||
const {code}=await updateCoupon(coupon_id,{
|
||||
coupon_name,
|
||||
coupon_client,
|
||||
coupon_type,
|
||||
distribution_object,
|
||||
application_scope,
|
||||
inquiry_type,
|
||||
is_mutex,
|
||||
is_display,
|
||||
distribution_with_day,
|
||||
min_usable_number,
|
||||
coupon_count,
|
||||
coupon_price,
|
||||
with_amount,
|
||||
valid_type,
|
||||
valid_days,
|
||||
valid_start_time,
|
||||
valid_end_time,
|
||||
product_id:product_id_arr,
|
||||
reissue_interval_days,
|
||||
is_reissuable_after_expire,
|
||||
is_popup,
|
||||
coupon_desc
|
||||
})
|
||||
if(code==200){
|
||||
Message.success("修改成功");
|
||||
handleClose();
|
||||
}else{
|
||||
proxy.$notification.error(response.message);
|
||||
}
|
||||
}
|
||||
})
|
||||
if(code==200){
|
||||
Message.success("修改成功");
|
||||
handleClose()
|
||||
}
|
||||
};
|
||||
const rules = {
|
||||
coupon_name: [{ required: true, message: '请输入优惠卷名称' }],
|
||||
department_custom_id: [{ required: true, message: '请选择所在科室' }],
|
||||
coupon_client:[{ required: true, message: '请选择使用平台' }],
|
||||
application_scope: [{ required: true, message: '请选择使用范围' }],
|
||||
coupon_type:[{ required: true, message: '请选择发放类型' }],
|
||||
distribution_object:[{ required: true, message: '请选择发放对象' }],
|
||||
valid_type:[{ required: true, message: '请选择有效类型' }],
|
||||
};
|
||||
|
||||
</script>
|
||||
<style scoped>
|
||||
.infobox {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: space-between;
|
||||
}
|
||||
<style scoped>
|
||||
|
||||
</style>
|
||||
@ -100,11 +100,10 @@
|
||||
</a-table>
|
||||
|
||||
<!-- Modal -->
|
||||
<couponDetail :modalVisible="modalVisible" :modalForm="modalForm" @closeChange="()=>{modalVisible=false;}"></couponDetail>
|
||||
<couponDetail :modalVisible="modalVisible" :modalForm="modalForm" @closeChange="closeCouponDetail"></couponDetail>
|
||||
|
||||
|
||||
<!-- 就诊人详情 -->
|
||||
<familyModal :modalVisible="familyVisible" :modalForm="familyForm" @familyVisibleChange="()=>{familyVisible=false}"></familyModal>
|
||||
|
||||
<!-- Akiraka 20230223 删除与批量删除 结束 -->
|
||||
<a-modal v-model:visible="okVisible" :modal-style="{width:'420px'}" body-class="okmodal"
|
||||
@cancel="cancelOk" @ok="handleOk">
|
||||
@ -273,6 +272,7 @@ const isVisible=ref(false);
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
//关闭启用弹框
|
||||
const closeChangeOk = () => {
|
||||
isVisible.value = false;
|
||||
@ -286,47 +286,6 @@ const showCoupon=(value,record)=>{
|
||||
isVisible.value=true;
|
||||
cur_coupon_id.value=record.coupon_id;
|
||||
};
|
||||
//改变用户状态
|
||||
const handleChangeStatus=async(status)=>{
|
||||
|
||||
|
||||
if(status==0){
|
||||
cur_coupon_id.value=modalForm.coupon_id;
|
||||
//okVisible.value=true;
|
||||
isVisible.value=true
|
||||
}else{
|
||||
//okVisible.value=true;
|
||||
isVisible.value=true
|
||||
// switchStatus(modalForm.coupon_id,{
|
||||
// status:1
|
||||
// })
|
||||
}
|
||||
// await updateCouponStatus(cur_coupon_id,{
|
||||
// coupon_status:!status?1:2
|
||||
// })
|
||||
|
||||
// if(record.status==0){
|
||||
// okVisible.value=true;
|
||||
// }else{
|
||||
// switchStatus(record.coupon_id,{
|
||||
// status:1
|
||||
// })
|
||||
}
|
||||
//就诊人详情
|
||||
const familyVisible=ref(false);
|
||||
const familyForm=reactive({
|
||||
user:{},
|
||||
avatar: 'https://img.applets.igandanyiyuan.com/basic/file/patient_avatar.png',
|
||||
});
|
||||
const handleFamilyDetail = async (family_id) => {
|
||||
const { code, data} = await getFamilyDetail(family_id);
|
||||
if (code == 200) {
|
||||
Object.assign(familyForm, data);
|
||||
familyVisible.value = true;
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* 分页改变
|
||||
* @param {Number} [page]
|
||||
@ -373,7 +332,10 @@ const handleChangeStatus=async(status)=>{
|
||||
proxy.$refs.queryFormRef.resetFields();
|
||||
getInfo(queryForm);
|
||||
}
|
||||
|
||||
const closeCouponDetail=()=>{
|
||||
modalVisible.value=false;
|
||||
getInfo({ ...pager, ...queryForm });
|
||||
}
|
||||
onMounted(() => {
|
||||
getInfo(pager);
|
||||
});
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user