feat:调查问卷
Some checks are pending
Gitea Actions Demo / Explore-Gitea-Actions (push) Waiting to run

This commit is contained in:
2025-08-14 15:12:40 +08:00
parent 2cdbc64250
commit f24ec168bf
6 changed files with 490 additions and 0 deletions

View File

@@ -0,0 +1,61 @@
import type { QuestionVO, QuestionForm, QuestionQuery } from './model';
import type { ID, IDS } from '#/api/common';
import type { PageResult } from '#/api/common';
import { commonExport } from '#/api/helper';
import { requestClient } from '#/api/request';
/**
* 查询调查问卷问题列表
* @param params
* @returns 调查问卷问题列表
*/
export function questionList(params?: QuestionQuery) {
return requestClient.get<PageResult<QuestionVO>>('/property/question/list', { params });
}
/**
* 导出调查问卷问题列表
* @param params
* @returns 调查问卷问题列表
*/
export function questionExport(params?: QuestionQuery) {
return commonExport('/property/question/export', params ?? {});
}
/**
* 查询调查问卷问题详情
* @param id id
* @returns 调查问卷问题详情
*/
export function questionInfo(id: ID) {
return requestClient.get<QuestionVO>(`/property/question/${id}`);
}
/**
* 新增调查问卷问题
* @param data
* @returns void
*/
export function questionAdd(data: QuestionForm) {
return requestClient.postWithMsg<void>('/property/question', data);
}
/**
* 更新调查问卷问题
* @param data
* @returns void
*/
export function questionUpdate(data: QuestionForm) {
return requestClient.putWithMsg<void>('/property/question', data);
}
/**
* 删除调查问卷问题
* @param id id
* @returns void
*/
export function questionRemove(id: ID | IDS) {
return requestClient.deleteWithMsg<void>(`/property/question/${id}`);
}

View File

@@ -0,0 +1,114 @@
import type { PageQuery, BaseEntity } from '#/api/common';
export interface QuestionVO {
/**
* id
*/
id: string | number;
/**
* 调查问卷id
*/
questionnaireId: string | number;
/**
* 标题
*/
head: string;
/**
* 问题类型(1单行文本2多行文本3单选题4多选题5评分题6日期选择)
*/
type: string;
/**
* 是否必填(1不必填2必填)
*/
isRequired: string;
/**
* 描述
*/
depict: string;
/**
* 排序
*/
sort: number;
}
export interface QuestionForm extends BaseEntity {
/**
* id
*/
id?: string | number;
/**
* 调查问卷id
*/
questionnaireId?: string | number;
/**
* 标题
*/
head?: string;
/**
* 问题类型(1单行文本2多行文本3单选题4多选题5评分题6日期选择)
*/
type?: string;
/**
* 是否必填(1不必填2必填)
*/
isRequired?: string;
/**
* 描述
*/
depict?: string;
/**
* 排序
*/
sort?: number;
}
export interface QuestionQuery extends PageQuery {
/**
* 调查问卷id
*/
questionnaireId?: string | number;
/**
* 标题
*/
head?: string;
/**
* 问题类型(1单行文本2多行文本3单选题4多选题5评分题6日期选择)
*/
type?: string;
/**
* 是否必填(1不必填2必填)
*/
isRequired?: string;
/**
* 描述
*/
depict?: string;
/**
* 排序
*/
sort?: number;
/**
* 日期范围参数
*/
params?: any;
}

View File

@@ -0,0 +1,61 @@
import type { QuestionItemVO, QuestionItemForm, QuestionItemQuery } from './model';
import type { ID, IDS } from '#/api/common';
import type { PageResult } from '#/api/common';
import { commonExport } from '#/api/helper';
import { requestClient } from '#/api/request';
/**
* 查询调查问卷问题选项列表
* @param params
* @returns 调查问卷问题选项列表
*/
export function questionItemList(params?: QuestionItemQuery) {
return requestClient.get<PageResult<QuestionItemVO>>('/property/questionItem/list', { params });
}
/**
* 导出调查问卷问题选项列表
* @param params
* @returns 调查问卷问题选项列表
*/
export function questionItemExport(params?: QuestionItemQuery) {
return commonExport('/property/questionItem/export', params ?? {});
}
/**
* 查询调查问卷问题选项详情
* @param id id
* @returns 调查问卷问题选项详情
*/
export function questionItemInfo(id: ID) {
return requestClient.get<QuestionItemVO>(`/property/questionItem/${id}`);
}
/**
* 新增调查问卷问题选项
* @param data
* @returns void
*/
export function questionItemAdd(data: QuestionItemForm) {
return requestClient.postWithMsg<void>('/property/questionItem', data);
}
/**
* 更新调查问卷问题选项
* @param data
* @returns void
*/
export function questionItemUpdate(data: QuestionItemForm) {
return requestClient.putWithMsg<void>('/property/questionItem', data);
}
/**
* 删除调查问卷问题选项
* @param id id
* @returns void
*/
export function questionItemRemove(id: ID | IDS) {
return requestClient.deleteWithMsg<void>(`/property/questionItem/${id}`);
}

View File

@@ -0,0 +1,79 @@
import type { PageQuery, BaseEntity } from '#/api/common';
export interface QuestionItemVO {
/**
* id
*/
id: string | number;
/**
* 问题id
*/
questionId: string | number;
/**
* 选项内容
*/
itemContent: string;
/**
* 排序
*/
sort: number;
/**
* 备注
*/
remark: string;
}
export interface QuestionItemForm extends BaseEntity {
/**
* id
*/
id?: string | number;
/**
* 问题id
*/
questionId?: string | number;
/**
* 选项内容
*/
itemContent?: string;
/**
* 排序
*/
sort?: number;
/**
* 备注
*/
remark?: string;
}
export interface QuestionItemQuery extends PageQuery {
/**
* 问题id
*/
questionId?: string | number;
/**
* 选项内容
*/
itemContent?: string;
/**
* 排序
*/
sort?: number;
/**
* 日期范围参数
*/
params?: any;
}

View File

@@ -0,0 +1,61 @@
import type { QuestionnaireVO, QuestionnaireForm, QuestionnaireQuery } from './model';
import type { ID, IDS } from '#/api/common';
import type { PageResult } from '#/api/common';
import { commonExport } from '#/api/helper';
import { requestClient } from '#/api/request';
/**
* 查询调查问卷列表
* @param params
* @returns 调查问卷列表
*/
export function questionnaireList(params?: QuestionnaireQuery) {
return requestClient.get<PageResult<QuestionnaireVO>>('/property/questionnaire/list', { params });
}
/**
* 导出调查问卷列表
* @param params
* @returns 调查问卷列表
*/
export function questionnaireExport(params?: QuestionnaireQuery) {
return commonExport('/property/questionnaire/export', params ?? {});
}
/**
* 查询调查问卷详情
* @param id id
* @returns 调查问卷详情
*/
export function questionnaireInfo(id: ID) {
return requestClient.get<QuestionnaireVO>(`/property/questionnaire/${id}`);
}
/**
* 新增调查问卷
* @param data
* @returns void
*/
export function questionnaireAdd(data: QuestionnaireForm) {
return requestClient.postWithMsg<void>('/property/questionnaire', data);
}
/**
* 更新调查问卷
* @param data
* @returns void
*/
export function questionnaireUpdate(data: QuestionnaireForm) {
return requestClient.putWithMsg<void>('/property/questionnaire', data);
}
/**
* 删除调查问卷
* @param id id
* @returns void
*/
export function questionnaireRemove(id: ID | IDS) {
return requestClient.deleteWithMsg<void>(`/property/questionnaire/${id}`);
}

View File

@@ -0,0 +1,114 @@
import type { PageQuery, BaseEntity } from '#/api/common';
export interface QuestionnaireVO {
/**
* id
*/
id: string | number;
/**
* 标题
*/
head: string;
/**
* 描述
*/
depict: string;
/**
* 是否匿名收集
*/
isAnonyCollec: string;
/**
* 是否多次提交
*/
isCommit: string;
/**
* 截止日期
*/
deadline: string;
/**
* 状态(1草稿2已发布3未发布)
*/
status: string;
}
export interface QuestionnaireForm extends BaseEntity {
/**
* id
*/
id?: string | number;
/**
* 标题
*/
head?: string;
/**
* 描述
*/
depict?: string;
/**
* 是否匿名收集
*/
isAnonyCollec?: string;
/**
* 是否多次提交
*/
isCommit?: string;
/**
* 截止日期
*/
deadline?: string;
/**
* 状态(1草稿2已发布3未发布)
*/
status?: string;
}
export interface QuestionnaireQuery extends PageQuery {
/**
* 标题
*/
head?: string;
/**
* 描述
*/
depict?: string;
/**
* 是否匿名收集
*/
isAnonyCollec?: string;
/**
* 是否多次提交
*/
isCommit?: string;
/**
* 截止日期
*/
deadline?: string;
/**
* 状态(1草稿2已发布3未发布)
*/
status?: string;
/**
* 日期范围参数
*/
params?: any;
}