活动搜索条件
This commit is contained in:
parent
e639694427
commit
8481bc676e
@ -75,3 +75,16 @@ export const activityprocess = (query?: ActivityQuery): AxiosPromise<ActivityVO[
|
||||
params: query
|
||||
});
|
||||
};
|
||||
/**
|
||||
* 查询问答信息列表
|
||||
* @param query
|
||||
* @returns {*}
|
||||
*/
|
||||
|
||||
export const activityAnsweringlist = (query?: ActivityQuery): AxiosPromise<ActivityVO[]> => {
|
||||
return request({
|
||||
url: '/manage/activityAnswering/list',
|
||||
method: 'get',
|
||||
params: query
|
||||
});
|
||||
};
|
||||
|
@ -4,14 +4,14 @@
|
||||
<div v-show="showSearch" id="search_div" class="mb-[10px]">
|
||||
<el-card shadow="hover">
|
||||
<el-form ref="queryFormRef" :model="queryParams" :inline="true" label-width="70px">
|
||||
<el-form-item label="行程路线" prop="">
|
||||
<el-form-item label="活动名称" prop="">
|
||||
<el-input class="inputWidth" placeholder="请输入行程路线" clearable @keyup.enter="handleQuery" />
|
||||
</el-form-item>
|
||||
<el-form-item label="线路地点" prop="">
|
||||
<el-input class="inputWidth" placeholder="请输入线路地点" clearable @keyup.enter="handleQuery" />
|
||||
</el-form-item>
|
||||
<el-form-item label="线路类型" prop="">
|
||||
<el-input class="inputWidth" placeholder="请输入线路类型" clearable @keyup.enter="handleQuery" />
|
||||
<el-form-item label="挑选玩友" prop="">
|
||||
<el-select v-model="queryParams.status" class="inputWidth" placeholder="请选择是否挑选玩友" clearable>
|
||||
<el-option label="是" :value="1" />
|
||||
<el-option label="否" :value="0" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="发布状态" prop="">
|
||||
<el-select v-model="queryParams.status" class="inputWidth" placeholder="请选择发布状态" clearable>
|
||||
@ -40,15 +40,22 @@
|
||||
<el-table-column label="活动名称" align="center" fixed prop="activityName" width="180px" />
|
||||
<el-table-column label="活动描述" align="center" fixed prop="activityDescription" width="180px" show-overflow-tooltip />
|
||||
<el-table-column label="活动图片" align="center" prop="" />
|
||||
<el-table-column label="排序" align="center" prop="sortNum" />
|
||||
<el-table-column label="活动人数" align="center" prop="activityUserCount" />
|
||||
<el-table-column label="报名人数" align="center" prop="registrationCount" />
|
||||
<el-table-column label="挑选玩友" align="center" prop="isSelected" />
|
||||
<el-table-column label="挑选玩友" align="center" prop="isSelected">
|
||||
<template #default="scope">
|
||||
<div>{{ scope.row.isSelected == 1 ? '是' : '否' }}</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="活动时间" align="center" prop="activityTime" width="180px" />
|
||||
<el-table-column label="报名截止时间" align="center" prop="registrationDeadline" width="180px" />
|
||||
<el-table-column label="发布者地址" align="center" prop="publisherAddress" width="120px" />
|
||||
<el-table-column label="活动地点" align="center" prop="activityLocation" width="180px" />
|
||||
<el-table-column label="收费方式" align="center" prop="paymentMethod" />
|
||||
<el-table-column label="收费方式" align="center" prop="paymentMethod" width="100px">
|
||||
<template #default="scope">
|
||||
<div>{{ scope.row.paymentMethod == 1 ? '发起人收款' : '免费' }}</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="活动流程" align="center" prop="" width="100px">
|
||||
<template #default="scope">
|
||||
<el-button link type="primary" @click="handleUpdate(scope.row)">查看详情</el-button>
|
||||
@ -144,6 +151,7 @@
|
||||
<el-radio :value="1">挑选</el-radio>
|
||||
<el-radio :value="0">不挑选</el-radio>
|
||||
</el-radio-group>
|
||||
<span style="margin-left: 30px; font-size: 12px; color: #707070">勾选后,发起人需要逐个审核报名者,确认是否通过报名</span>
|
||||
</el-form-item>
|
||||
<el-form-item label="活动流程">
|
||||
<el-button type="primary" @click="addlisttiam">添加流程</el-button>
|
||||
@ -174,14 +182,30 @@
|
||||
</template>
|
||||
</el-dialog>
|
||||
<!-- 问答弹窗-->
|
||||
<el-dialog v-model="wendadialog.visible" title="问答" width="50%" append-to-body> </el-dialog>
|
||||
<el-dialog v-model="wendadialog.visible" title="问答" width="40%" append-to-body>
|
||||
<div v-for="item in Answeringlist" style="line-height: 30px; padding: 0 20px">
|
||||
<div style="display: flex; justify-content: space-between">
|
||||
<div style="font-weight: 600; font-size: 14px">Q:{{ item.declaration }}</div>
|
||||
<div style="font-size: 12px">{{ item.quserName }} {{ item.createTime }}</div>
|
||||
</div>
|
||||
<div style="font-size: 12px">A:{{ item.answer }}</div>
|
||||
</div>
|
||||
<pagination
|
||||
v-show="Answeringtotal > 0"
|
||||
id="table_page"
|
||||
v-model:page="queryAnswerings.pageNum"
|
||||
v-model:limit="queryAnswerings.pageSize"
|
||||
:total="Answeringtotal"
|
||||
@pagination="wendalist"
|
||||
/>
|
||||
</el-dialog>
|
||||
<!-- 报名人数弹窗-->
|
||||
<el-dialog v-model="numdialog.visible" title="报名人数" width="50%" append-to-body> </el-dialog>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script setup name="Activity" lang="ts">
|
||||
import { listActivity, getActivity, delActivity, addActivity, updateActivity, activityprocess } from '@/api/manage/activity';
|
||||
import { listActivity, getActivity, delActivity, addActivity, updateActivity, activityprocess, activityAnsweringlist } from '@/api/manage/activity';
|
||||
import { ActivityVO, ActivityQuery, ActivityForm } from '@/api/manage/activity/types';
|
||||
|
||||
const { proxy } = getCurrentInstance() as ComponentInternalInstance;
|
||||
@ -194,8 +218,10 @@ const ids = ref<Array<string | number>>([]);
|
||||
const single = ref(true);
|
||||
const multiple = ref(true);
|
||||
const total = ref(0);
|
||||
const listdatatime = ref([{ activityTime: '', planContent: '' }]);
|
||||
const Answeringtotal = ref(0);
|
||||
|
||||
const listdatatime = ref([{ activityTime: '', planContent: '' }]);
|
||||
const Answeringlist = ref([]);
|
||||
const queryFormRef = ref<ElFormInstance>();
|
||||
const activityFormRef = ref<ElFormInstance>();
|
||||
|
||||
@ -224,6 +250,11 @@ const initFormData: ActivityForm = {
|
||||
paymentMethod: undefined,
|
||||
status: undefined
|
||||
};
|
||||
const queryAnswerings = {
|
||||
pageNum: 1,
|
||||
pageSize: 10,
|
||||
activityId: undefined
|
||||
};
|
||||
const data = reactive<PageData<ActivityForm, ActivityQuery>>({
|
||||
form: { ...initFormData },
|
||||
queryParams: {
|
||||
@ -372,7 +403,12 @@ const dellistdata = (index) => {
|
||||
listdatatime.value.splice(index, 1);
|
||||
};
|
||||
//问答弹窗
|
||||
const wendalist = (row) => {
|
||||
const wendalist = async (row) => {
|
||||
queryAnswerings.activityId = row.id;
|
||||
const res = await activityAnsweringlist(queryAnswerings);
|
||||
console.log(res);
|
||||
Answeringlist.value = res.rows;
|
||||
Answeringtotal.value = res.total;
|
||||
wendadialog.visible = true;
|
||||
};
|
||||
onMounted(() => {
|
||||
|
@ -167,6 +167,10 @@
|
||||
<el-form-item label="描述">
|
||||
<el-input v-model="routeDetailsList.description" placeholder="请输入描述" style="width: 500px" autosize type="textarea" />
|
||||
</el-form-item>
|
||||
<el-form-item label="添加地点">
|
||||
<el-button type="primary">添加景点</el-button>
|
||||
</el-form-item>
|
||||
<div class="articlelist">
|
||||
<el-form-item label="添加地点">
|
||||
<el-select v-model="routeDetailsList.articleId" placeholder="请选择标记地点" size="large" style="width: 500px">
|
||||
<el-option v-for="item in sys_user_contentOptions" :key="item.id" :label="item.name" :value="item.id" />
|
||||
@ -184,6 +188,8 @@
|
||||
<el-form-item label="避坑指南">
|
||||
<el-input v-model="routeDetailsList.guide" placeholder="请输入避坑指南" style="width: 500px" autosize type="textarea" />
|
||||
</el-form-item>
|
||||
</div>
|
||||
|
||||
<el-form-item label="添加住宿攻略">
|
||||
<el-select v-model="hotelallvalue" placeholder="请选择住宿攻略" size="large" style="width: 500px" multiple>
|
||||
<el-option v-for="item in sys_user_hotelall" :key="item.id" :label="item.name" :value="item.id" />
|
||||
@ -712,4 +718,11 @@ const addressdata = (ids: string | null) => {
|
||||
}
|
||||
}
|
||||
}
|
||||
.articlelist {
|
||||
width: 90%;
|
||||
margin: 20px auto;
|
||||
padding: 20px;
|
||||
border-radius: 20px;
|
||||
background-color:#f2f2f2 ;
|
||||
}
|
||||
</style>
|
||||
|
Loading…
Reference in New Issue
Block a user