新增题库配置、题库、用户试卷存储页面
This commit is contained in:
63
src/api/safety/questionBank/index.ts
Normal file
63
src/api/safety/questionBank/index.ts
Normal file
@ -0,0 +1,63 @@
|
||||
import request from '@/utils/request';
|
||||
import { AxiosPromise } from 'axios';
|
||||
import { QuestionBankVO, QuestionBankForm, QuestionBankQuery } from '@/api/safety/questionBank/types';
|
||||
|
||||
/**
|
||||
* 查询题库列表
|
||||
* @param query
|
||||
* @returns {*}
|
||||
*/
|
||||
|
||||
export const listQuestionBank = (query?: QuestionBankQuery): AxiosPromise<QuestionBankVO[]> => {
|
||||
return request({
|
||||
url: '/safety/questionBank/list',
|
||||
method: 'get',
|
||||
params: query
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 查询题库详细
|
||||
* @param id
|
||||
*/
|
||||
export const getQuestionBank = (id: string | number): AxiosPromise<QuestionBankVO> => {
|
||||
return request({
|
||||
url: '/safety/questionBank/' + id,
|
||||
method: 'get'
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 新增题库
|
||||
* @param data
|
||||
*/
|
||||
export const addQuestionBank = (data: QuestionBankForm) => {
|
||||
return request({
|
||||
url: '/safety/questionBank',
|
||||
method: 'post',
|
||||
data: data
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 修改题库
|
||||
* @param data
|
||||
*/
|
||||
export const updateQuestionBank = (data: QuestionBankForm) => {
|
||||
return request({
|
||||
url: '/safety/questionBank',
|
||||
method: 'put',
|
||||
data: data
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 删除题库
|
||||
* @param id
|
||||
*/
|
||||
export const delQuestionBank = (id: string | number | Array<string | number>) => {
|
||||
return request({
|
||||
url: '/safety/questionBank/' + id,
|
||||
method: 'delete'
|
||||
});
|
||||
};
|
101
src/api/safety/questionBank/types.ts
Normal file
101
src/api/safety/questionBank/types.ts
Normal file
@ -0,0 +1,101 @@
|
||||
export interface QuestionBankVO {
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
id: string | number;
|
||||
|
||||
/**
|
||||
* 题目类别
|
||||
*/
|
||||
categoryType: string;
|
||||
|
||||
/**
|
||||
* 题目类型
|
||||
*/
|
||||
questionType: string;
|
||||
|
||||
/**
|
||||
* 题目内容
|
||||
*/
|
||||
questionContent: string;
|
||||
|
||||
/**
|
||||
* 选项(以JSON数组形式存储)
|
||||
*/
|
||||
optionList: Array<string>;
|
||||
|
||||
/**
|
||||
* 正确答案
|
||||
*/
|
||||
correctAnswer: string;
|
||||
|
||||
}
|
||||
|
||||
export interface QuestionBankForm extends BaseEntity {
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
id?: string | number;
|
||||
|
||||
/**
|
||||
* 题目类别
|
||||
*/
|
||||
categoryType?: string;
|
||||
|
||||
/**
|
||||
* 题目类型
|
||||
*/
|
||||
questionType?: string;
|
||||
|
||||
/**
|
||||
* 题目内容
|
||||
*/
|
||||
questionContent?: string;
|
||||
|
||||
/**
|
||||
* 选项(以JSON数组形式存储)
|
||||
*/
|
||||
optionList?: Array<string>;
|
||||
|
||||
/**
|
||||
* 正确答案
|
||||
*/
|
||||
correctAnswer?: string;
|
||||
|
||||
}
|
||||
|
||||
export interface QuestionBankQuery extends PageQuery {
|
||||
|
||||
/**
|
||||
* 题目类别
|
||||
*/
|
||||
categoryType?: string;
|
||||
|
||||
/**
|
||||
* 题目类型
|
||||
*/
|
||||
questionType?: string;
|
||||
|
||||
/**
|
||||
* 题目内容
|
||||
*/
|
||||
questionContent?: string;
|
||||
|
||||
/**
|
||||
* 选项(以JSON数组形式存储)
|
||||
*/
|
||||
optionList?: Array<string>;
|
||||
|
||||
/**
|
||||
* 正确答案
|
||||
*/
|
||||
correctAnswer?: string;
|
||||
|
||||
/**
|
||||
* 日期范围参数
|
||||
*/
|
||||
params?: any;
|
||||
}
|
||||
|
||||
|
||||
|
63
src/api/safety/questionUserAnswer/index.ts
Normal file
63
src/api/safety/questionUserAnswer/index.ts
Normal file
@ -0,0 +1,63 @@
|
||||
import request from '@/utils/request';
|
||||
import { AxiosPromise } from 'axios';
|
||||
import { QuestionUserAnswerVO, QuestionUserAnswerForm, QuestionUserAnswerQuery } from '@/api/safety/questionUserAnswer/types';
|
||||
|
||||
/**
|
||||
* 查询用户试卷存储列表
|
||||
* @param query
|
||||
* @returns {*}
|
||||
*/
|
||||
|
||||
export const listQuestionUserAnswer = (query?: QuestionUserAnswerQuery): AxiosPromise<QuestionUserAnswerVO[]> => {
|
||||
return request({
|
||||
url: '/safety/questionUserAnswer/list',
|
||||
method: 'get',
|
||||
params: query
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 查询用户试卷存储详细
|
||||
* @param id
|
||||
*/
|
||||
export const getQuestionUserAnswer = (id: string | number): AxiosPromise<QuestionUserAnswerVO> => {
|
||||
return request({
|
||||
url: '/safety/questionUserAnswer/' + id,
|
||||
method: 'get'
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 新增用户试卷存储
|
||||
* @param data
|
||||
*/
|
||||
export const addQuestionUserAnswer = (data: QuestionUserAnswerForm) => {
|
||||
return request({
|
||||
url: '/safety/questionUserAnswer',
|
||||
method: 'post',
|
||||
data: data
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 修改用户试卷存储
|
||||
* @param data
|
||||
*/
|
||||
export const updateQuestionUserAnswer = (data: QuestionUserAnswerForm) => {
|
||||
return request({
|
||||
url: '/safety/questionUserAnswer',
|
||||
method: 'put',
|
||||
data: data
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 删除用户试卷存储
|
||||
* @param id
|
||||
*/
|
||||
export const delQuestionUserAnswer = (id: string | number | Array<string | number>) => {
|
||||
return request({
|
||||
url: '/safety/questionUserAnswer/' + id,
|
||||
method: 'delete'
|
||||
});
|
||||
};
|
146
src/api/safety/questionUserAnswer/types.ts
Normal file
146
src/api/safety/questionUserAnswer/types.ts
Normal file
@ -0,0 +1,146 @@
|
||||
export interface QuestionUserAnswerVO {
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
id: string | number;
|
||||
|
||||
/**
|
||||
* 项目id
|
||||
*/
|
||||
projectId: string | number;
|
||||
|
||||
/**
|
||||
* 用户id
|
||||
*/
|
||||
userId: string | number;
|
||||
|
||||
/**
|
||||
* 题库id列表
|
||||
*/
|
||||
bankIdList: Array<string | number>;
|
||||
|
||||
/**
|
||||
* 答案列表
|
||||
*/
|
||||
answerList: Array<string>;
|
||||
|
||||
/**
|
||||
* 得分
|
||||
*/
|
||||
score: number;
|
||||
|
||||
/**
|
||||
* 用时时间(时间戳/秒)
|
||||
*/
|
||||
takeTime: number;
|
||||
|
||||
/**
|
||||
* 及格线/总分(格式:60,100)
|
||||
*/
|
||||
pass: string;
|
||||
|
||||
/**
|
||||
* 文件地址
|
||||
*/
|
||||
file: string;
|
||||
|
||||
}
|
||||
|
||||
export interface QuestionUserAnswerForm extends BaseEntity {
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
id?: string | number;
|
||||
|
||||
/**
|
||||
* 项目id
|
||||
*/
|
||||
projectId?: string | number;
|
||||
|
||||
/**
|
||||
* 用户id
|
||||
*/
|
||||
userId?: string | number;
|
||||
|
||||
/**
|
||||
* 题库id列表
|
||||
*/
|
||||
bankIdList: Array<string | number>;
|
||||
|
||||
/**
|
||||
* 答案列表
|
||||
*/
|
||||
answerList: Array<string>;
|
||||
|
||||
/**
|
||||
* 得分
|
||||
*/
|
||||
score?: number;
|
||||
|
||||
/**
|
||||
* 用时时间(时间戳/秒)
|
||||
*/
|
||||
takeTime?: number;
|
||||
|
||||
/**
|
||||
* 及格线/总分(格式:60,100)
|
||||
*/
|
||||
pass?: string;
|
||||
|
||||
/**
|
||||
* 文件地址
|
||||
*/
|
||||
file?: string;
|
||||
|
||||
}
|
||||
|
||||
export interface QuestionUserAnswerQuery extends PageQuery {
|
||||
|
||||
/**
|
||||
* 项目id
|
||||
*/
|
||||
projectId?: string | number;
|
||||
|
||||
/**
|
||||
* 用户id
|
||||
*/
|
||||
userId?: string | number;
|
||||
|
||||
/**
|
||||
* 题库id列表
|
||||
*/
|
||||
bankIdList: Array<string | number>;
|
||||
|
||||
/**
|
||||
* 答案列表
|
||||
*/
|
||||
answerList: Array<string>;
|
||||
|
||||
/**
|
||||
* 得分
|
||||
*/
|
||||
score?: number;
|
||||
|
||||
/**
|
||||
* 用时时间(时间戳/秒)
|
||||
*/
|
||||
takeTime?: number;
|
||||
|
||||
/**
|
||||
* 及格线/总分(格式:60,100)
|
||||
*/
|
||||
pass?: string;
|
||||
|
||||
/**
|
||||
* 文件地址
|
||||
*/
|
||||
file?: string;
|
||||
|
||||
/**
|
||||
* 日期范围参数
|
||||
*/
|
||||
params?: any;
|
||||
}
|
||||
|
||||
|
||||
|
63
src/api/safety/questionsConfig/index.ts
Normal file
63
src/api/safety/questionsConfig/index.ts
Normal file
@ -0,0 +1,63 @@
|
||||
import request from '@/utils/request';
|
||||
import { AxiosPromise } from 'axios';
|
||||
import { QuestionsConfigVO, QuestionsConfigForm, QuestionsConfigQuery } from '@/api/safety/questionsConfig/types';
|
||||
|
||||
/**
|
||||
* 查询题库配置列表
|
||||
* @param query
|
||||
* @returns {*}
|
||||
*/
|
||||
|
||||
export const listQuestionsConfig = (query?: QuestionsConfigQuery): AxiosPromise<QuestionsConfigVO[]> => {
|
||||
return request({
|
||||
url: '/safety/questionsConfig/list',
|
||||
method: 'get',
|
||||
params: query
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 查询题库配置详细
|
||||
* @param id
|
||||
*/
|
||||
export const getQuestionsConfig = (id: string | number): AxiosPromise<QuestionsConfigVO> => {
|
||||
return request({
|
||||
url: '/safety/questionsConfig/' + id,
|
||||
method: 'get'
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 新增题库配置
|
||||
* @param data
|
||||
*/
|
||||
export const addQuestionsConfig = (data: QuestionsConfigForm) => {
|
||||
return request({
|
||||
url: '/safety/questionsConfig',
|
||||
method: 'post',
|
||||
data: data
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 修改题库配置
|
||||
* @param data
|
||||
*/
|
||||
export const updateQuestionsConfig = (data: QuestionsConfigForm) => {
|
||||
return request({
|
||||
url: '/safety/questionsConfig',
|
||||
method: 'put',
|
||||
data: data
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 删除题库配置
|
||||
* @param id
|
||||
*/
|
||||
export const delQuestionsConfig = (id: string | number | Array<string | number>) => {
|
||||
return request({
|
||||
url: '/safety/questionsConfig/' + id,
|
||||
method: 'delete'
|
||||
});
|
||||
};
|
161
src/api/safety/questionsConfig/types.ts
Normal file
161
src/api/safety/questionsConfig/types.ts
Normal file
@ -0,0 +1,161 @@
|
||||
export interface QuestionsConfigVO {
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
id: string | number;
|
||||
|
||||
/**
|
||||
* 单选题(单位/道)
|
||||
*/
|
||||
singleChoice: number;
|
||||
|
||||
/**
|
||||
* 单选分数
|
||||
*/
|
||||
singleScore: number;
|
||||
|
||||
/**
|
||||
* 多选题(单位/道)
|
||||
*/
|
||||
multipleChoice: number;
|
||||
|
||||
/**
|
||||
* 多选分数
|
||||
*/
|
||||
multipleScore: number;
|
||||
|
||||
/**
|
||||
* 判断题(单位/道)
|
||||
*/
|
||||
estimate: number;
|
||||
|
||||
/**
|
||||
* 判断分数
|
||||
*/
|
||||
estimateScore: number;
|
||||
|
||||
/**
|
||||
* 满分
|
||||
*/
|
||||
fullMark: number;
|
||||
|
||||
/**
|
||||
* 及格线
|
||||
*/
|
||||
passScore: number;
|
||||
|
||||
/**
|
||||
* 答题最大时间(单位/分钟)
|
||||
*/
|
||||
answerTime: number;
|
||||
|
||||
}
|
||||
|
||||
export interface QuestionsConfigForm extends BaseEntity {
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
id?: string | number;
|
||||
|
||||
/**
|
||||
* 单选题(单位/道)
|
||||
*/
|
||||
singleChoice?: number;
|
||||
|
||||
/**
|
||||
* 单选分数
|
||||
*/
|
||||
singleScore?: number;
|
||||
|
||||
/**
|
||||
* 多选题(单位/道)
|
||||
*/
|
||||
multipleChoice?: number;
|
||||
|
||||
/**
|
||||
* 多选分数
|
||||
*/
|
||||
multipleScore?: number;
|
||||
|
||||
/**
|
||||
* 判断题(单位/道)
|
||||
*/
|
||||
estimate?: number;
|
||||
|
||||
/**
|
||||
* 判断分数
|
||||
*/
|
||||
estimateScore?: number;
|
||||
|
||||
/**
|
||||
* 满分
|
||||
*/
|
||||
fullMark?: number;
|
||||
|
||||
/**
|
||||
* 及格线
|
||||
*/
|
||||
passScore?: number;
|
||||
|
||||
/**
|
||||
* 答题最大时间(单位/分钟)
|
||||
*/
|
||||
answerTime?: number;
|
||||
|
||||
}
|
||||
|
||||
export interface QuestionsConfigQuery extends PageQuery {
|
||||
|
||||
/**
|
||||
* 单选题(单位/道)
|
||||
*/
|
||||
singleChoice?: number;
|
||||
|
||||
/**
|
||||
* 单选分数
|
||||
*/
|
||||
singleScore?: number;
|
||||
|
||||
/**
|
||||
* 多选题(单位/道)
|
||||
*/
|
||||
multipleChoice?: number;
|
||||
|
||||
/**
|
||||
* 多选分数
|
||||
*/
|
||||
multipleScore?: number;
|
||||
|
||||
/**
|
||||
* 判断题(单位/道)
|
||||
*/
|
||||
estimate?: number;
|
||||
|
||||
/**
|
||||
* 判断分数
|
||||
*/
|
||||
estimateScore?: number;
|
||||
|
||||
/**
|
||||
* 满分
|
||||
*/
|
||||
fullMark?: number;
|
||||
|
||||
/**
|
||||
* 及格线
|
||||
*/
|
||||
passScore?: number;
|
||||
|
||||
/**
|
||||
* 答题最大时间(单位/分钟)
|
||||
*/
|
||||
answerTime?: number;
|
||||
|
||||
/**
|
||||
* 日期范围参数
|
||||
*/
|
||||
params?: any;
|
||||
}
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user