This commit is contained in:
2026-07-20 11:50:47 +08:00
parent 95d43746f6
commit 019ed28d37
401 changed files with 61622 additions and 23869 deletions
+79
View File
@@ -0,0 +1,79 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { ClassInfo, ClassImportItem, ClassInfoParam } from './model';
export async function pageClassInfo(params: ClassInfoParam) {
const res = await request.get<ApiResult<PageResult<ClassInfo>>>(
'/gxmu/class/page',
{
params
}
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
export async function listClassInfo(params?: ClassInfoParam) {
const res = await request.get<ApiResult<ClassInfo[]>>('/gxmu/class', {
params
});
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
export async function getClassInfo(id: number) {
const res = await request.get<ApiResult<ClassInfo>>('/gxmu/class/' + id);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
export async function addClassInfo(data: ClassInfo) {
const res = await request.post<ApiResult<unknown>>('/gxmu/class', data);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
export async function updateClassInfo(data: ClassInfo) {
const res = await request.put<ApiResult<unknown>>('/gxmu/class', data);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
export async function removeClassInfo(id?: number) {
const res = await request.delete<ApiResult<unknown>>('/gxmu/class/' + id);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
export async function removeBatchClassInfo(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>('/gxmu/class/batch', {
data
});
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
export async function importClassInfo(data: ClassImportItem[]) {
const res = await request.post<ApiResult<unknown>>(
'/gxmu/class/import',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
+41
View File
@@ -0,0 +1,41 @@
import type { PageParam } from '@/api';
export interface ClassInfo {
id?: number;
collegeId?: number;
collegeName?: string;
classCode?: string;
className?: string;
gradeYear?: number;
counselorName?: string;
counselorPhone?: string;
studentCount?: number;
sortNumber?: number;
status?: number;
remark?: string;
createTime?: string;
updateTime?: string;
}
export interface ClassImportItem {
collegeName?: string;
classCode?: string;
className?: string;
gradeYear?: number;
counselorName?: string;
counselorPhone?: string;
studentCount?: number;
sortNumber?: number;
status?: number;
remark?: string;
}
export interface ClassInfoParam extends PageParam {
id?: number;
collegeId?: number;
classCode?: string;
className?: string;
gradeYear?: number;
status?: number;
keywords?: string;
}
+68
View File
@@ -0,0 +1,68 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { College, CollegeParam } from './model';
export async function pageCollege(params: CollegeParam) {
const res = await request.get<ApiResult<PageResult<College>>>(
'/gxmu/college/page',
{
params
}
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
export async function listCollege(params?: CollegeParam) {
const res = await request.get<ApiResult<College[]>>('/gxmu/college', {
params
});
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
export async function getCollege(id: number) {
const res = await request.get<ApiResult<College>>('/gxmu/college/' + id);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
export async function addCollege(data: College) {
const res = await request.post<ApiResult<unknown>>('/gxmu/college', data);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
export async function updateCollege(data: College) {
const res = await request.put<ApiResult<unknown>>('/gxmu/college', data);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
export async function removeCollege(id?: number) {
const res = await request.delete<ApiResult<unknown>>('/gxmu/college/' + id);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
export async function removeBatchCollege(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>('/gxmu/college/batch', {
data
});
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
+24
View File
@@ -0,0 +1,24 @@
import type { PageParam } from '@/api';
export interface College {
id?: number;
collegeCode?: string;
collegeName?: string;
shortName?: string;
leaderName?: string;
leaderPhone?: string;
sortNumber?: number;
status?: number;
remark?: string;
classCount?: number;
createTime?: string;
updateTime?: string;
}
export interface CollegeParam extends PageParam {
id?: number;
collegeCode?: string;
collegeName?: string;
status?: number;
keywords?: string;
}
@@ -0,0 +1,55 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type {
CrossSchoolActivityArticle,
CrossSchoolActivityArticleParam
} from './model';
/**
* 分页查询跨校活动情报文章
*/
export async function pageCrossSchoolActivityArticle(
params: CrossSchoolActivityArticleParam
) {
const res = await request.get<ApiResult<PageResult<CrossSchoolActivityArticle>>>(
'/gxmu/cross-school-activity-article/page',
{
params
}
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询跨校活动情报文章
*/
export async function listCrossSchoolActivityArticle(
params?: CrossSchoolActivityArticleParam
) {
const res = await request.get<ApiResult<CrossSchoolActivityArticle[]>>(
'/gxmu/cross-school-activity-article',
{
params
}
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 同步跨校活动情报文章
*/
export async function syncCrossSchoolActivityArticle() {
const res = await request.post<ApiResult<number>>(
'/gxmu/cross-school-activity-article/sync'
);
if (res.data.code === 0) {
return res.data.data ?? 0;
}
return Promise.reject(new Error(res.data.message));
}
@@ -0,0 +1,38 @@
import type { PageParam } from '@/api';
/**
* 跨校活动情报文章
*/
export interface CrossSchoolActivityArticle {
id?: number;
sourceKey?: string;
title?: string;
schoolName?: string;
category?: string;
heatLevel?: '高热' | '跟进' | '观察' | string;
sourceName?: string;
publishTime?: string;
summary?: string;
tags?: string;
coverImage?: string;
detailUrl?: string;
sourceUrl?: string;
highlight?: string;
contentText?: string;
lastSyncTime?: string;
createTime?: string;
updateTime?: string;
deleted?: number;
}
/**
* 跨校活动情报文章搜索条件
*/
export interface CrossSchoolActivityArticleParam extends PageParam {
id?: number;
title?: string;
schoolName?: string;
category?: string;
heatLevel?: string;
keywords?: string;
}
+106
View File
@@ -0,0 +1,106 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { Declare, DeclareParam } from './model';
import { MODULES_API_URL } from '@/config/setting';
/**
* 分页查询申报管理
*/
export async function pageDeclare(params: DeclareParam) {
const res = await request.get<ApiResult<PageResult<Declare>>>(
MODULES_API_URL + '/gxmu/declare/page',
{
params
}
);
if (res.data.code === 0) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询申报管理列表
*/
export async function listDeclare(params?: DeclareParam) {
const res = await request.get<ApiResult<Declare[]>>(
MODULES_API_URL + '/gxmu/declare',
{
params
}
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 添加申报管理
*/
export async function addDeclare(data: Declare) {
const res = await request.post<ApiResult<unknown>>(
MODULES_API_URL + '/gxmu/declare',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 修改申报管理
*/
export async function updateDeclare(data: Declare) {
const res = await request.put<ApiResult<unknown>>(
MODULES_API_URL + '/gxmu/declare',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 删除申报管理
*/
export async function removeDeclare(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/gxmu/declare/' + id
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 批量删除申报管理
*/
export async function removeBatchDeclare(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/gxmu/declare/batch',
{
data
}
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 根据id查询申报管理
*/
export async function getDeclare(id: number) {
const res = await request.get<ApiResult<Declare>>(
MODULES_API_URL + '/gxmu/declare/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
+58
View File
@@ -0,0 +1,58 @@
import type { PageParam } from '@/api';
/**
* 申报管理
*/
export interface Declare {
//
id?: number;
//
title?: string;
//
year?: number;
//
module?: string;
// 挑战杯项目类型
projectType?: string | string[];
// 挑战杯项目分组
projectGroup?: string | string[];
// 挑战杯申报表项目类型
formProjectType?: string | string[];
// 挑战杯申报表项目分组
formProjectGroup?: string | string[];
// 挑战杯公开展示项目类型
publicProjectType?: string | string[];
// 挑战杯公开展示项目分组
publicProjectGroup?: string | string[];
//
startTime?: string;
//
endTime?: string;
// 用户ID
userId?: string;
// 租户ID
tenantId?: string;
// 创建时间
createTime?: string;
// 更新时间
updateTime?: string;
// 删除标记:0未删 1已删
deleted?: number;
// 是否可申报
usable?: boolean;
}
/**
* 申报管理搜索条件
*/
export interface DeclareParam extends PageParam {
id?: number;
keywords?: string;
usable?: boolean;
projectType?: string;
projectGroup?: string;
formProjectType?: string;
formProjectGroup?: string;
publicProjectType?: string;
publicProjectGroup?: string;
}
@@ -0,0 +1,19 @@
import request from '@/utils/request';
import type { ApiResult } from '@/api';
import type { WxxzxTopicSemanticSearchItem } from './model';
/**
* 项目主题语义检索
*/
export async function searchProjectTopics(keyword: string, module?: string) {
const res = await request.get<ApiResult<WxxzxTopicSemanticSearchItem[]>>(
'/gxmu/wxxzx-form/semantic-search',
{
params: { keyword, module }
}
);
if (res.data.code === 0) {
return res.data.data || [];
}
return Promise.reject(new Error(res.data.message));
}
@@ -0,0 +1,10 @@
export interface WxxzxTopicSemanticSearchItem {
id: number;
module?: string;
moduleName?: string;
topicName?: string;
topicType?: string;
rationale?: string;
snippet?: string;
score?: number;
}
+123
View File
@@ -0,0 +1,123 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { FileRecord } from '@/api/system/file/model';
import type { QmgcForm, QmgcFormParam } from './model';
/**
* 分页查询QmgcForm
*/
export async function pageQmgcForm(params: QmgcFormParam) {
const res = await request.get<ApiResult<PageResult<QmgcForm>>>(
'/gxmu/qmgc-form/page',
{
params: { ...params, backendAccess: true }
}
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 用户分页查询QmgcForm
*/
export async function userPageQmgcForm(params: QmgcFormParam) {
const res = await request.get<ApiResult<PageResult<QmgcForm>>>(
'/gxmu/qmgc-form/userPage',
{
params: { ...params, backendAccess: true }
}
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询QmgcForm列表
*/
export async function listQmgcForm(params?: QmgcFormParam) {
const res = await request.get<ApiResult<QmgcForm[]>>('/gxmu/qmgc-form', {
params
});
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 根据id查询QmgcForm
*/
export async function getQmgcForm(id: number) {
const res = await request.get<ApiResult<QmgcForm>>('/gxmu/qmgc-form/' + id);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 添加QmgcForm
*/
export async function addQmgcForm(data: QmgcForm) {
const res = await request.post<ApiResult<unknown>>('/gxmu/qmgc-form', data);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 修改QmgcForm
*/
export async function updateQmgcForm(data: QmgcForm) {
const res = await request.put<ApiResult<unknown>>('/gxmu/qmgc-form', data);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 删除QmgcForm
*/
export async function removeQmgcForm(id?: number) {
const res = await request.delete<ApiResult<unknown>>('/gxmu/qmgc-form/' + id);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 批量删除QmgcForm
*/
export async function removeBatchQmgcForm(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
'/gxmu/qmgc-form/batch',
{
data
}
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 导出QmgcForm
*/
export async function exportQmgcForm(params?: QmgcFormParam) {
const res = await request.post<ApiResult<FileRecord>>('/gxmu/qmgc-form/export', {
...params,
backendAccess: true
});
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
+48
View File
@@ -0,0 +1,48 @@
import type { PageParam } from '@/api';
import type { ReviewList } from '@/api/gxmu/reviewList/model';
/**
* QmgcForm
*/
export interface QmgcForm {
id?: number;
year?: string;
name?: string;
gender?: string;
nation?: string;
photo?: string;
birthMonth?: string;
politics?: string;
nativePlace?: string;
phone?: string;
wechat?: string;
email?: string;
qq?: string;
idCardNo?: string;
hobby?: string;
willingToWorkInGuangxi?: string;
schoolInfo?: string;
leaguePosition?: string;
resume?: string;
awards?: string;
academicPerformance?: string;
secondaryLeagueOpinion?: string;
secondaryLeagueOpinionDate?: string;
secondaryPartyOpinion?: string;
secondaryPartyOpinionDate?: string;
schoolLeagueOpinion?: string;
schoolLeagueOpinionDate?: string;
reviewList?: ReviewList[];
}
/**
* QmgcForm 搜索条件
*/
export interface QmgcFormParam extends PageParam {
id?: number;
year?: string;
name?: string;
phone?: string;
schoolInfo?: string;
keywords?: string;
}
+106
View File
@@ -0,0 +1,106 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { ReviewFlow, ReviewFlowParam } from './model';
import { MODULES_API_URL } from '@/config/setting';
/**
* 分页查询审核流
*/
export async function pageReviewFlow(params: ReviewFlowParam) {
const res = await request.get<ApiResult<PageResult<ReviewFlow>>>(
MODULES_API_URL + '/gxmu/review-flow/page',
{
params
}
);
if (res.data.code === 0) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询审核流列表
*/
export async function listReviewFlow(params?: ReviewFlowParam) {
const res = await request.get<ApiResult<ReviewFlow[]>>(
MODULES_API_URL + '/gxmu/review-flow',
{
params
}
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 添加审核流
*/
export async function addReviewFlow(data: ReviewFlow) {
const res = await request.post<ApiResult<unknown>>(
MODULES_API_URL + '/gxmu/review-flow',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 修改审核流
*/
export async function updateReviewFlow(data: ReviewFlow) {
const res = await request.put<ApiResult<unknown>>(
MODULES_API_URL + '/gxmu/review-flow',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 删除审核流
*/
export async function removeReviewFlow(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/gxmu/review-flow/' + id
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 批量删除审核流
*/
export async function removeBatchReviewFlow(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/gxmu/review-flow/batch',
{
data
}
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 根据id查询审核流
*/
export async function getReviewFlow(id: number) {
const res = await request.get<ApiResult<ReviewFlow>>(
MODULES_API_URL + '/gxmu/review-flow/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
+37
View File
@@ -0,0 +1,37 @@
import type { PageParam } from "@/api";
/**
* 审核流
*/
export interface ReviewFlow {
//
id?: number;
//
title?: string;
//
organizationId?: number;
//
level?: number;
// 是否删除, 0否, 1是
deleted?: number;
// 租户id
tenantId?: number;
reviewUserId?: number;
// 创建时间
createTime?: string;
// 修改时间
updateTime?: string;
//
userId?: number;
organizationName?: string;
flows?: ReviewFlow[];
}
/**
* 审核流搜索条件
*/
export interface ReviewFlowParam extends PageParam {
id?: number;
keywords?: string;
withGroup?: boolean;
}
+106
View File
@@ -0,0 +1,106 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { ReviewFlowConfig, ReviewFlowConfigParam } from './model';
import { MODULES_API_URL } from '@/config/setting';
/**
* 分页查询
*/
export async function pageReviewFlowConfig(params: ReviewFlowConfigParam) {
const res = await request.get<ApiResult<PageResult<ReviewFlowConfig>>>(
MODULES_API_URL + '/gxmu/review-flow-config/page',
{
params
}
);
if (res.data.code === 0) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询列表
*/
export async function listReviewFlowConfig(params?: ReviewFlowConfigParam) {
const res = await request.get<ApiResult<ReviewFlowConfig[]>>(
MODULES_API_URL + '/gxmu/review-flow-config',
{
params
}
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 添加
*/
export async function addReviewFlowConfig(data: ReviewFlowConfig) {
const res = await request.post<ApiResult<unknown>>(
MODULES_API_URL + '/gxmu/review-flow-config',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 修改
*/
export async function updateReviewFlowConfig(data: ReviewFlowConfig) {
const res = await request.put<ApiResult<unknown>>(
MODULES_API_URL + '/gxmu/review-flow-config',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 删除
*/
export async function removeReviewFlowConfig(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/gxmu/review-flow-config/' + id
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 批量删除
*/
export async function removeBatchReviewFlowConfig(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/gxmu/review-flow-config/batch',
{
data
}
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 根据id查询
*/
export async function getReviewFlowConfig(id: number) {
const res = await request.get<ApiResult<ReviewFlowConfig>>(
MODULES_API_URL + '/gxmu/review-flow-config/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
@@ -0,0 +1,37 @@
import type { PageParam } from '@/api';
/**
*
*/
export interface ReviewFlowConfig {
//
id?: number;
//
title?: string;
// 所属部门(机构)
organizationId?: number;
// 所属部门名称(后端可能返回)
organizationName?: string;
// 流id
flowId?: number;
// 模块
module?: string;
// 是否删除, 0否, 1是
deleted?: number;
// 租户id
tenantId?: number;
// 创建时间
createTime?: string;
// 修改时间
updateTime?: string;
//
userId?: number;
}
/**
* 搜索条件
*/
export interface ReviewFlowConfigParam extends PageParam {
id?: number;
keywords?: string;
}
+122
View File
@@ -0,0 +1,122 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { ReviewList, ReviewListParam } from './model';
import { MODULES_API_URL } from '@/config/setting';
/**
* 分页查询审核列表
*/
export async function pageReviewList(params: ReviewListParam) {
const res = await request.get<ApiResult<PageResult<ReviewList>>>(
MODULES_API_URL + '/gxmu/review-list/page',
{
params: { ...params, backendAccess: true }
}
);
if (res.data.code === 0) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 分页查询聚合后的审核列表
*/
export async function pageGroupReviewList(params: ReviewListParam) {
const res = await request.get<ApiResult<PageResult<ReviewList>>>(
MODULES_API_URL + '/gxmu/review-list/groupPage',
{
params: { ...params, backendAccess: true }
}
);
if (res.data.code === 0) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询审核列表列表
*/
export async function listReviewList(params?: ReviewListParam) {
const res = await request.get<ApiResult<ReviewList[]>>(
MODULES_API_URL + '/gxmu/review-list',
{
params
}
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 添加审核列表
*/
export async function addReviewList(data: ReviewList) {
const res = await request.post<ApiResult<unknown>>(
MODULES_API_URL + '/gxmu/review-list',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 修改审核列表
*/
export async function updateReviewList(data: ReviewList) {
const res = await request.put<ApiResult<unknown>>(
MODULES_API_URL + '/gxmu/review-list',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 删除审核列表
*/
export async function removeReviewList(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/gxmu/review-list/' + id
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 批量删除审核列表
*/
export async function removeBatchReviewList(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
MODULES_API_URL + '/gxmu/review-list/batch',
{
data
}
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 根据id查询审核列表
*/
export async function getReviewList(id: number) {
const res = await request.get<ApiResult<ReviewList>>(
MODULES_API_URL + '/gxmu/review-list/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
+51
View File
@@ -0,0 +1,51 @@
import type { PageParam } from '@/api';
/**
* 审核列表
*/
export interface ReviewList {
//
id?: number;
// 模块
module?: string;
// 模块名称
moduleName?: string;
// 业务名称
businessName?: string;
// 主键
pk?: number;
// 状态(0不通过 1通过)
status?: number;
// 审核意见
content?: string;
// 是否删除, 0否, 1是
deleted?: number;
// 租户id
tenantId?: number;
// 创建时间
createTime?: string;
// 修改时间
updateTime?: string;
//
userId?: number;
//
sortNumber?: number;
// 审核人信息
user?: {
realName?: string;
username?: string;
};
// 聚合后的审核流
reviewFlowList?: ReviewList[];
}
/**
* 审核列表搜索条件
*/
export interface ReviewListParam extends PageParam {
backendAccess?: boolean;
id?: number;
keywords?: string;
module?: string;
pk?: number;
}
+114
View File
@@ -0,0 +1,114 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { FileRecord } from '@/api/system/file/model';
import type { SjqnForm, SjqnFormParam } from './model';
/**
* 分页查询SjqnForm
*/
export async function pageSjqnForm(params: SjqnFormParam) {
const res = await request.get<ApiResult<PageResult<SjqnForm>>>('/gxmu/sjqn-form/page', {
params: { ...params, backendAccess: true }
});
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 用户分页查询SjqnForm
*/
export async function userPageSjqnForm(params: SjqnFormParam) {
const res = await request.get<ApiResult<PageResult<SjqnForm>>>('/gxmu/sjqn-form/userPage', {
params: { ...params, backendAccess: true }
});
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询SjqnForm列表
*/
export async function listSjqnForm(params?: SjqnFormParam) {
const res = await request.get<ApiResult<SjqnForm[]>>('/gxmu/sjqn-form', {
params
});
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 根据id查询SjqnForm
*/
export async function getSjqnForm(id: number) {
const res = await request.get<ApiResult<SjqnForm>>('/gxmu/sjqn-form/' + id);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 添加SjqnForm
*/
export async function addSjqnForm(data: SjqnForm) {
const res = await request.post<ApiResult<unknown>>('/gxmu/sjqn-form', data);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 修改SjqnForm
*/
export async function updateSjqnForm(data: SjqnForm) {
const res = await request.put<ApiResult<unknown>>('/gxmu/sjqn-form', data);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 删除SjqnForm
*/
export async function removeSjqnForm(id?: number) {
const res = await request.delete<ApiResult<unknown>>('/gxmu/sjqn-form/' + id);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 批量删除SjqnForm
*/
export async function removeBatchSjqnForm(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>('/gxmu/sjqn-form/batch', {
data
});
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 导出SjqnForm
*/
export async function exportSjqnForm(params?: SjqnFormParam) {
const res = await request.post<ApiResult<FileRecord>>('/gxmu/sjqn-form/export', {
...params,
backendAccess: true
});
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
+40
View File
@@ -0,0 +1,40 @@
import type { PageParam } from '@/api';
import type { ReviewList } from '@/api/gxmu/reviewList/model';
/**
* SjqnForm
*/
export interface SjqnForm {
id?: number;
year?: string;
applyType?: string;
name?: string;
gender?: string;
birthMonth?: string;
nation?: string;
politics?: string;
education?: string;
position?: string;
title?: string;
unit?: string;
awards?: string;
experience?: string;
mainStory?: string;
leagueOpinion?: string;
partyOpinion?: string;
schoolOpinion?: string;
reviewList?: ReviewList[];
}
/**
* SjqnForm搜索条件
*/
export interface SjqnFormParam extends PageParam {
backendAccess?: boolean;
id?: number;
year?: string;
name?: string;
unit?: string;
applyType?: string;
keywords?: string;
}
+114
View File
@@ -0,0 +1,114 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { FileRecord } from '@/api/system/file/model';
import type { SjtbzbsjForm, SjtbzbsjFormParam } from './model';
/**
* 分页查询SjtbzbsjForm
*/
export async function pageSjtbzbsjForm(params: SjtbzbsjFormParam) {
const res = await request.get<ApiResult<PageResult<SjtbzbsjForm>>>('/gxmu/sjtbzbsj-form/page', {
params: { ...params, backendAccess: true }
});
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 用户分页查询SjtbzbsjForm
*/
export async function userPageSjtbzbsjForm(params: SjtbzbsjFormParam) {
const res = await request.get<ApiResult<PageResult<SjtbzbsjForm>>>('/gxmu/sjtbzbsj-form/userPage', {
params: { ...params, backendAccess: true }
});
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询SjtbzbsjForm列表
*/
export async function listSjtbzbsjForm(params?: SjtbzbsjFormParam) {
const res = await request.get<ApiResult<SjtbzbsjForm[]>>('/gxmu/sjtbzbsj-form', {
params
});
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 根据id查询SjtbzbsjForm
*/
export async function getSjtbzbsjForm(id: number) {
const res = await request.get<ApiResult<SjtbzbsjForm>>('/gxmu/sjtbzbsj-form/' + id);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 添加SjtbzbsjForm
*/
export async function addSjtbzbsjForm(data: SjtbzbsjForm) {
const res = await request.post<ApiResult<unknown>>('/gxmu/sjtbzbsj-form', data);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 修改SjtbzbsjForm
*/
export async function updateSjtbzbsjForm(data: SjtbzbsjForm) {
const res = await request.put<ApiResult<unknown>>('/gxmu/sjtbzbsj-form', data);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 删除SjtbzbsjForm
*/
export async function removeSjtbzbsjForm(id?: number) {
const res = await request.delete<ApiResult<unknown>>('/gxmu/sjtbzbsj-form/' + id);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 批量删除SjtbzbsjForm
*/
export async function removeBatchSjtbzbsjForm(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>('/gxmu/sjtbzbsj-form/batch', {
data
});
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 导出SjtbzbsjForm
*/
export async function exportSjtbzbsjForm(params?: SjtbzbsjFormParam) {
const res = await request.post<ApiResult<FileRecord>>('/gxmu/sjtbzbsj-form/export', {
...params,
backendAccess: true
});
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
+37
View File
@@ -0,0 +1,37 @@
import type { PageParam } from '@/api';
import type { ReviewList } from '@/api/gxmu/reviewList/model';
/**
* SjtbzbsjForm
*/
export interface SjtbzbsjForm {
id?: number;
year?: string;
name?: string;
gender?: string;
birthMonth?: string;
nation?: string;
politics?: string;
collegeClass?: string;
branch?: string;
eduEval?: string;
awards?: string;
experience?: string;
mainStory?: string;
leagueOpinion?: string;
partyOpinion?: string;
schoolOpinion?: string;
reviewList?: ReviewList[];
}
/**
* SjtbzbsjForm搜索条件
*/
export interface SjtbzbsjFormParam extends PageParam {
id?: number;
year?: string;
name?: string;
collegeClass?: string;
branch?: string;
keywords?: string;
}
+169
View File
@@ -0,0 +1,169 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { FileRecord } from '@/api/system/file/model';
import type {
TyglDataCenterRecord,
TyglDataCenterResult,
TyglForm,
TyglFormParam,
TyglGrowthArchive,
TyglMemberRecord
} from './model';
export interface TyglMemberRecordsPayload {
memberRecords?: TyglMemberRecord[];
}
export interface TyglGrowthArchivesPayload {
growthArchives?: TyglGrowthArchive[];
}
/**
* 分页查询TyglForm
*/
export async function pageTyglForm(params: TyglFormParam) {
const res = await request.get<ApiResult<PageResult<TyglForm>>>(
'/gxmu/tygl-form/page',
{
params: { ...params, backendAccess: true }
}
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询TyglForm列表
*/
export async function listTyglForm(params?: TyglFormParam) {
const res = await request.get<ApiResult<TyglForm[]>>('/gxmu/tygl-form', {
params
});
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 根据id查询TyglForm
*/
export async function getTyglForm(id: number) {
const res = await request.get<ApiResult<TyglForm>>('/gxmu/tygl-form/' + id);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询团员青年数据分析中心明细
*/
export async function getTyglDataCenterRecords() {
const res = await request.get<ApiResult<TyglDataCenterResult>>(
'/gxmu/tygl-form/data-center'
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 添加TyglForm
*/
export async function addTyglForm(data: TyglForm) {
const res = await request.post<ApiResult<unknown>>('/gxmu/tygl-form', data);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 修改TyglForm
*/
export async function updateTyglForm(data: TyglForm) {
const res = await request.put<ApiResult<unknown>>('/gxmu/tygl-form', data);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 更新团员记录
*/
export async function updateTyglMemberRecords(
id: number,
data: TyglMemberRecordsPayload
) {
const res = await request.put<ApiResult<unknown>>(
'/gxmu/tygl-form/member-records/' + id,
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 更新成长档案
*/
export async function updateTyglGrowthArchives(
id: number,
data: TyglGrowthArchivesPayload
) {
const res = await request.put<ApiResult<unknown>>(
'/gxmu/tygl-form/growth-archives/' + id,
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 删除TyglForm
*/
export async function removeTyglForm(id?: number) {
const res = await request.delete<ApiResult<unknown>>('/gxmu/tygl-form/' + id);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 批量删除TyglForm
*/
export async function removeBatchTyglForm(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
'/gxmu/tygl-form/batch',
{
data
}
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 导出TyglForm
*/
export async function exportTyglForm(params?: TyglFormParam) {
const res = await request.post<ApiResult<FileRecord>>('/gxmu/tygl-form/export', {
...params,
backendAccess: true
});
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
+84
View File
@@ -0,0 +1,84 @@
import type { PageParam } from '@/api';
import type { ReviewList } from '@/api/gxmu/reviewList/model';
export interface TyglMemberRecord {
type?: string;
content?: string;
recordTime?: string;
}
export interface TyglGrowthArchive {
content?: string;
archiveTime?: string;
}
export interface TyglDataCenterRecord {
id?: number;
serialNo?: number;
name?: string;
gender?: string;
nation?: string;
phone?: string;
leaguePosition?: string;
archiveInCurrentOrg?: string;
joinMonth?: string;
joinYear?: string;
memberRecordCount?: number;
growthArchiveCount?: number;
profileStatus?: string;
}
export interface TyglDataCenterSummary {
memberCount?: number;
youthUnder28Count?: number;
memberYouthRatio?: string;
maleCount?: number;
femaleCount?: number;
genderRatio?: string;
archiveInOrgCount?: number;
completedProfileCount?: number;
}
export interface TyglDataCenterResult {
records?: TyglDataCenterRecord[];
summary?: TyglDataCenterSummary;
}
/**
* TyglForm
*/
export interface TyglForm {
id?: number;
serialNo?: number;
name?: string;
gender?: string;
nation?: string;
college?: string;
className?: string;
politics?: string;
phone?: string;
leaguePosition?: string;
branchOrganizationId?: number;
branchOrganizationName?: string;
idCardNo?: string;
birthDate?: string;
archiveInCurrentOrg?: string;
joinMonth?: string;
memberRecords?: TyglMemberRecord[];
growthArchives?: TyglGrowthArchive[];
reviewList?: ReviewList[];
}
/**
* TyglForm 搜索条件
*/
export interface TyglFormParam extends PageParam {
backendAccess?: boolean;
id?: number;
name?: string;
nation?: string;
phone?: string;
politics?: string;
leaguePosition?: string;
keywords?: string;
}
+53
View File
@@ -0,0 +1,53 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type {
TzbProjectListRecord,
TzbProjectListRecordParam
} from './model';
/**
* 分页查询挑战杯项目库列表
*/
export async function pageTzbProjectList(params: TzbProjectListRecordParam) {
const res = await request.get<ApiResult<PageResult<TzbProjectListRecord>>>(
'/gxmu/tzb-project-list/page',
{
params
}
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询挑战杯项目库列表
*/
export async function listTzbProjectList(
params?: TzbProjectListRecordParam
) {
const res = await request.get<ApiResult<TzbProjectListRecord[]>>(
'/gxmu/tzb-project-list',
{
params
}
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 根据ID查询挑战杯项目库列表记录
*/
export async function getTzbProjectList(id: number) {
const res = await request.get<ApiResult<TzbProjectListRecord>>(
'/gxmu/tzb-project-list/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
@@ -0,0 +1,38 @@
import type { PageParam } from '@/api';
/**
* 挑战杯项目库列表记录
*/
export interface TzbProjectListRecord {
id?: number;
sourceId?: number;
projectName?: string;
schoolName?: string;
awardName?: string;
matchYear?: number;
matchTerm?: string;
matchLevel?: string;
coverImage?: string;
detailUrl?: string;
sourceUrl?: string;
pageNo?: number;
lastSyncTime?: string;
createTime?: string;
updateTime?: string;
deleted?: number;
}
/**
* 挑战杯项目库列表搜索条件
*/
export interface TzbProjectListRecordParam extends PageParam {
id?: number;
sourceId?: number;
projectName?: string;
schoolName?: string;
awardName?: string;
matchYear?: number;
matchTerm?: string;
matchLevel?: string;
keywords?: string;
}
+51
View File
@@ -0,0 +1,51 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type {
TzbTalentListRecord,
TzbTalentListRecordParam
} from './model';
/**
* 分页查询挑战杯人才库列表
*/
export async function pageTzbTalentList(params: TzbTalentListRecordParam) {
const res = await request.get<ApiResult<PageResult<TzbTalentListRecord>>>(
'/gxmu/tzb-talent-list/page',
{
params
}
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询挑战杯人才库列表
*/
export async function listTzbTalentList(params?: TzbTalentListRecordParam) {
const res = await request.get<ApiResult<TzbTalentListRecord[]>>(
'/gxmu/tzb-talent-list',
{
params
}
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 根据ID查询挑战杯人才库列表记录
*/
export async function getTzbTalentList(id: number) {
const res = await request.get<ApiResult<TzbTalentListRecord>>(
'/gxmu/tzb-talent-list/' + id
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
@@ -0,0 +1,40 @@
import type { PageParam } from '@/api';
/**
* 挑战杯人才库列表记录
*/
export interface TzbTalentListRecord {
id?: number;
sourceId?: number;
personName?: string;
schoolName?: string;
talentType?: string;
projectName?: string;
awardName?: string;
matchTerm?: string;
matchLevel?: string;
coverImage?: string;
detailUrl?: string;
sourceUrl?: string;
pageNo?: number;
lastSyncTime?: string;
createTime?: string;
updateTime?: string;
deleted?: number;
}
/**
* 挑战杯人才库列表搜索条件
*/
export interface TzbTalentListRecordParam extends PageParam {
id?: number;
sourceId?: number;
personName?: string;
schoolName?: string;
talentType?: string;
projectName?: string;
awardName?: string;
matchTerm?: string;
matchLevel?: string;
keywords?: string;
}
+126
View File
@@ -0,0 +1,126 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { TzbcyForm, TzbcyFormParam, TzbcyStatisticsResult } from './model';
/**
* 分页查询TzbcyForm
*/
export async function pageTzbcyForm(params: TzbcyFormParam) {
const res = await request.get<ApiResult<PageResult<TzbcyForm>>>(
'/gxmu/tzbcy-form/page',
{
params: { ...params, backendAccess: true }
}
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 用户分页查询TzbcyForm
*/
export async function userPageTzbcyForm(params: TzbcyFormParam) {
const res = await request.get<ApiResult<PageResult<TzbcyForm>>>(
'/gxmu/tzbcy-form/userPage',
{
params: { ...params, backendAccess: true }
}
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询TzbcyForm列表
*/
export async function listTzbcyForm(params?: TzbcyFormParam) {
const res = await request.get<ApiResult<TzbcyForm[]>>('/gxmu/tzbcy-form', {
params
});
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 根据id查询TzbcyForm
*/
export async function getTzbcyForm(id: number) {
const res = await request.get<ApiResult<TzbcyForm>>('/gxmu/tzbcy-form/' + id);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 添加TzbcyForm
*/
export async function addTzbcyForm(data: TzbcyForm) {
const res = await request.post<ApiResult<unknown>>('/gxmu/tzbcy-form', data);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 修改TzbcyForm
*/
export async function updateTzbcyForm(data: TzbcyForm) {
const res = await request.put<ApiResult<unknown>>('/gxmu/tzbcy-form', data);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 删除TzbcyForm
*/
export async function removeTzbcyForm(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
'/gxmu/tzbcy-form/' + id
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 批量删除TzbcyForm
*/
export async function removeBatchTzbcyForm(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>(
'/gxmu/tzbcy-form/batch',
{
data
}
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询挑战杯数据统计
*/
export async function getTzbcyStatistics(params?: { year?: number }) {
const res = await request.get<ApiResult<TzbcyStatisticsResult>>(
'/gxmu/tzbcy-form/statistics',
{
params
}
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
+82
View File
@@ -0,0 +1,82 @@
import type { PageParam } from '@/api';
import type { ReviewList } from '@/api/gxmu/reviewList/model';
export interface TzbcyTeamMember {
name?: string;
gender?: string;
college?: string;
gradeMajor?: string;
phone?: string;
remark?: string;
}
export interface TzbcyAdvisor {
name?: string;
gender?: string;
college?: string;
title?: string;
duty?: string;
phone?: string;
}
export interface TzbcyForm {
id?: number;
year?: string;
provinceCity?: string;
schoolName?: string;
projectName?: string;
projectType?: string;
projectGroup?: string;
publicProjectType?: string;
publicProjectGroup?: string;
leader?: string;
phone?: string;
teamMembers?: TzbcyTeamMember[];
advisors?: TzbcyAdvisor[];
projectBrief?: string;
socialValue?: string;
practiceProcess?: string;
innovationMeaning?: string;
developmentProspect?: string;
teamCooperation?: string;
projectMaterials?: string;
otherProofs?: string;
projectSummary?: string;
teamIntro?: string;
teamSlogan?: string;
practiceLog?: string;
reviewList?: ReviewList[];
}
export interface TzbcyFormParam extends PageParam {
id?: number;
year?: string;
projectName?: string;
leader?: string;
schoolName?: string;
keywords?: string;
}
export interface TzbcyStatisticItem {
label: string;
value: number;
}
export interface TzbcyStatisticsSummary {
declarationCount: number;
participantCount: number;
advisorCount: number;
awardCount: number;
schoolCount: number;
}
export interface TzbcyStatisticsResult {
year?: number;
availableYears: number[];
summary: TzbcyStatisticsSummary;
awardCountDescription?: string;
yearDistribution: TzbcyStatisticItem[];
typeDistribution: TzbcyStatisticItem[];
groupDistribution: TzbcyStatisticItem[];
schoolDistribution: TzbcyStatisticItem[];
}
+88
View File
@@ -0,0 +1,88 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { FileRecord } from '@/api/system/file/model';
import type {
TzbcyMaterial,
TzbcyMaterialAuditParam,
TzbcyMaterialParam
} from './model';
export async function pageTzbcyMaterial(params: TzbcyMaterialParam) {
const res = await request.get<ApiResult<PageResult<TzbcyMaterial>>>(
'/gxmu/tzbcy-material/page',
{
params: { ...params, backendAccess: true }
}
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
export async function listTzbcyMaterial(params?: TzbcyMaterialParam) {
const res = await request.get<ApiResult<TzbcyMaterial[]>>(
'/gxmu/tzbcy-material',
{
params: { ...params, backendAccess: true }
}
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
export async function addTzbcyMaterial(data: TzbcyMaterial) {
const res = await request.post<ApiResult<unknown>>(
'/gxmu/tzbcy-material',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
export async function updateTzbcyMaterial(data: TzbcyMaterial) {
const res = await request.put<ApiResult<unknown>>(
'/gxmu/tzbcy-material',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
export async function auditTzbcyMaterial(data: TzbcyMaterialAuditParam) {
const res = await request.put<ApiResult<unknown>>(
'/gxmu/tzbcy-material/audit',
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
export async function removeTzbcyMaterial(id?: number) {
const res = await request.delete<ApiResult<unknown>>(
'/gxmu/tzbcy-material/' + id
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
export async function exportTzbcyMaterial(params?: TzbcyMaterialParam) {
const res = await request.post<ApiResult<FileRecord>>(
'/gxmu/tzbcy-material/export',
{ ...params, backendAccess: true }
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
@@ -0,0 +1,39 @@
import type { PageParam } from '@/api';
export interface TzbcyMaterial {
id?: number;
formId?: number;
materialType?: string;
fileId?: number;
fileName?: string;
filePath?: string;
fileUrl?: string;
downloadUrl?: string;
fileSize?: number;
contentType?: string;
status?: number;
rejectReason?: string;
auditUserId?: number;
auditTime?: string;
userId?: number;
tenantId?: number;
createTime?: string;
updateTime?: string;
projectName?: string;
leader?: string;
}
export interface TzbcyMaterialParam extends PageParam {
id?: number;
formId?: number;
materialType?: string;
status?: number;
userId?: number;
backendAccess?: boolean;
}
export interface TzbcyMaterialAuditParam {
id?: number;
status?: number;
rejectReason?: string;
}
+62
View File
@@ -0,0 +1,62 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { WorkLedger, WorkLedgerParam } from './model';
const createWorkLedgerApi = (baseUrl: string) => ({
async page(params: WorkLedgerParam) {
const res = await request.get<ApiResult<PageResult<WorkLedger>>>(
`${baseUrl}/page`,
{ params }
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
},
async userPage(params: WorkLedgerParam) {
const res = await request.get<ApiResult<PageResult<WorkLedger>>>(
`${baseUrl}/userPage`,
{ params }
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
},
async get(id: number) {
const res = await request.get<ApiResult<WorkLedger>>(`${baseUrl}/${id}`);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
},
async add(data: WorkLedger) {
const res = await request.post<ApiResult<unknown>>(baseUrl, data);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
},
async update(data: WorkLedger) {
const res = await request.put<ApiResult<unknown>>(baseUrl, data);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
},
async remove(id?: number) {
const res = await request.delete<ApiResult<unknown>>(`${baseUrl}/${id}`);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
});
export const leagueCommitteeLedgerApi = createWorkLedgerApi(
'/gxmu/league-committee-ledger'
);
export const leagueBranchLedgerApi = createWorkLedgerApi(
'/gxmu/league-branch-ledger'
);
+237
View File
@@ -0,0 +1,237 @@
import type { PageParam } from '@/api';
export interface WorkLedgerCommitteeMember {
name?: string;
gender?: string;
birthMonth?: string;
politics?: string;
leagueDuty?: string;
partTimeWork?: string;
}
export interface WorkLedgerFeeRecord {
date?: string;
purpose?: string;
income?: string;
expense?: string;
balance?: string;
}
export interface WorkLedgerSubordinateOrg {
branchName?: string;
leaderName?: string;
phone?: string;
memberCount?: string;
youthCount?: string;
feeCount?: string;
paidCount?: string;
}
export interface WorkLedgerHonorRecord {
honorName?: string;
awardTime?: string;
winner?: string;
rewardSituation?: string;
remark?: string;
}
export interface WorkLedgerActivistRecommendation {
name?: string;
gender?: string;
nation?: string;
birthMonth?: string;
classMajor?: string;
currentDuty?: string;
}
export interface WorkLedgerDisciplineRecord {
name?: string;
time?: string;
handlingType?: string;
reason?: string;
}
export interface WorkLedgerMeetingRecord {
meetingName?: string;
meetingTheme?: string;
time?: string;
location?: string;
host?: string;
attendees?: string;
absentees?: string;
content?: string;
recorder?: string;
}
export interface WorkLedgerActivityRecord {
activityName?: string;
activityTheme?: string;
activityTime?: string;
location?: string;
participants?: string;
content?: string;
recorder?: string;
}
export interface WorkLedgerEducationEvaluation {
branchName?: string;
name?: string;
result?: string;
remark?: string;
}
export interface WorkLedgerBranchOverviewMember {
name?: string;
phone?: string;
}
export interface WorkLedgerBranchCommitteeMember {
name?: string;
gender?: string;
birthMonth?: string;
politics?: string;
leagueDuty?: string;
partTimeWork?: string;
}
export interface WorkLedgerLeagueMemberRegister {
name?: string;
gender?: string;
birthMonth?: string;
nation?: string;
joinMonth?: string;
leagueDuty?: string;
workDuty?: string;
remark?: string;
}
export interface WorkLedgerYouthRegister {
name?: string;
gender?: string;
birthMonth?: string;
nation?: string;
workDuty?: string;
remark?: string;
}
export interface WorkLedgerBranchHonorRecord {
honorName?: string;
awardTime?: string;
winner?: string;
rewardSituation?: string;
remark?: string;
}
export interface WorkLedgerMemberFeeRecord {
name?: string;
januaryAmount?: string;
februaryAmount?: string;
marchAmount?: string;
aprilAmount?: string;
mayAmount?: string;
juneAmount?: string;
julyAmount?: string;
augustAmount?: string;
septemberAmount?: string;
octoberAmount?: string;
novemberAmount?: string;
decemberAmount?: string;
totalAmount?: string;
}
export interface WorkLedgerBranchMeetingRecord {
meetingName?: string;
meetingTheme?: string;
time?: string;
location?: string;
host?: string;
attendees?: string;
absentees?: string;
content?: string;
recorder?: string;
}
export interface WorkLedgerBranchActivityRecord {
activityName?: string;
activityTheme?: string;
activityTime?: string;
location?: string;
participants?: string;
content?: string;
recorder?: string;
}
export interface WorkLedgerBranchEducationEvaluation {
name?: string;
excellent?: string;
qualified?: string;
basicallyQualified?: string;
unqualified?: string;
remark?: string;
}
export interface WorkLedger {
id?: number;
ledgerType?: string;
unitName?: string;
responsiblePerson?: string;
useStartMonth?: string;
useEndMonth?: string;
secretaryName?: string;
branchCount?: string;
memberTotal?: string;
facultyMemberCount?: string;
studentMemberCount?: string;
minorityMemberCount?: string;
femaleMemberCount?: string;
youth14To28Count?: string;
youth29To35Count?: string;
cadreTotal?: string;
facultyCadreCount?: string;
studentCadreCount?: string;
lastElectionTime?: string;
feeBalance?: string;
firstHalfFeeDue?: string;
firstHalfFeePaid?: string;
secondHalfFeeDue?: string;
secondHalfFeePaid?: string;
schoolSocietyConnectionRate?: string;
smartLeagueEntryRate?: string;
branchSecretaryName?: string;
branchSecretaryPhone?: string;
totalPeopleCount?: string;
partyMemberCount?: string;
youthCount?: string;
leagueYouthRatio?: string;
branchAnnualSummary?: string;
standardLevel?: string;
annualSummary?: string;
committeeMembers?: WorkLedgerCommitteeMember[];
feeRecords?: WorkLedgerFeeRecord[];
subordinateOrgs?: WorkLedgerSubordinateOrg[];
honorRecords?: WorkLedgerHonorRecord[];
activistRecommendations?: WorkLedgerActivistRecommendation[];
disciplineRecords?: WorkLedgerDisciplineRecord[];
meetingRecords?: WorkLedgerMeetingRecord[];
activityRecords?: WorkLedgerActivityRecord[];
educationEvaluations?: WorkLedgerEducationEvaluation[];
branchCommitteeMembers?: WorkLedgerBranchCommitteeMember[];
leagueMemberRegisters?: WorkLedgerLeagueMemberRegister[];
youthRegisters?: WorkLedgerYouthRegister[];
branchHonorRecords?: WorkLedgerBranchHonorRecord[];
memberFeeRecords?: WorkLedgerMemberFeeRecord[];
branchMeetingRecords?: WorkLedgerBranchMeetingRecord[];
branchActivityRecords?: WorkLedgerBranchActivityRecord[];
branchEducationEvaluations?: WorkLedgerBranchEducationEvaluation[];
year?: number | string;
createTime?: string;
updateTime?: string;
}
export interface WorkLedgerParam extends PageParam {
id?: number;
unitName?: string;
responsiblePerson?: string;
year?: number | string;
keywords?: string;
}
+114
View File
@@ -0,0 +1,114 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { FileRecord } from '@/api/system/file/model';
import type { WshqtwForm, WshqtwFormParam } from './model';
/**
* 分页查询WshqtwForm
*/
export async function pageWshqtwForm(params: WshqtwFormParam) {
const res = await request.get<ApiResult<PageResult<WshqtwForm>>>('/gxmu/wshqtw-form/page', {
params: { ...params, backendAccess: true }
});
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 用户分页查询WshqtwForm
*/
export async function userPageWshqtwForm(params: WshqtwFormParam) {
const res = await request.get<ApiResult<PageResult<WshqtwForm>>>('/gxmu/wshqtw-form/userPage', {
params: { ...params, backendAccess: true }
});
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询WshqtwForm列表
*/
export async function listWshqtwForm(params?: WshqtwFormParam) {
const res = await request.get<ApiResult<WshqtwForm[]>>('/gxmu/wshqtw-form', {
params
});
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 根据id查询WshqtwForm
*/
export async function getWshqtwForm(id: number) {
const res = await request.get<ApiResult<WshqtwForm>>('/gxmu/wshqtw-form/' + id);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 添加WshqtwForm
*/
export async function addWshqtwForm(data: WshqtwForm) {
const res = await request.post<ApiResult<unknown>>('/gxmu/wshqtw-form', data);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 修改WshqtwForm
*/
export async function updateWshqtwForm(data: WshqtwForm) {
const res = await request.put<ApiResult<unknown>>('/gxmu/wshqtw-form', data);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 删除WshqtwForm
*/
export async function removeWshqtwForm(id?: number) {
const res = await request.delete<ApiResult<unknown>>('/gxmu/wshqtw-form/' + id);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 批量删除WshqtwForm
*/
export async function removeBatchWshqtwForm(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>('/gxmu/wshqtw-form/batch', {
data
});
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 导出WshqtwForm
*/
export async function exportWshqtwForm(params?: WshqtwFormParam) {
const res = await request.post<ApiResult<FileRecord>>('/gxmu/wshqtw-form/export', {
...params,
backendAccess: true
});
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
+47
View File
@@ -0,0 +1,47 @@
import type { PageParam } from '@/api';
import type { ReviewList } from '@/api/gxmu/reviewList/model';
/**
* WshqtwForm
*/
export interface WshqtwForm {
id?: number;
year?: string;
orgName?: string;
leader?: string;
phone?: string;
memberTotal?: string;
memberDeveloped2024?: string;
smartSystemLogin?: string;
committeeCount?: string;
fulltimeCadreCount?: string;
parttimeCadreCount?: string;
lastElectionTime?: string;
feeReceivable2024?: string;
feeReceived2024?: string;
feePayable2024?: string;
feePaid2024?: string;
branchCount?: string;
standardizedWork2024?: string;
recommendActivist2024?: string;
activistConfirmed?: string;
recommendDevTarget2024?: string;
devTargetConfirmed?: string;
honorsFiveYears?: string;
workSummaryThreeYears?: string;
partyOpinion?: string;
schoolOpinion?: string;
reviewList?: ReviewList[];
}
/**
* WshqtwForm搜索条件
*/
export interface WshqtwFormParam extends PageParam {
id?: number;
year?: string;
orgName?: string;
leader?: string;
phone?: string;
keywords?: string;
}
+114
View File
@@ -0,0 +1,114 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { FileRecord } from '@/api/system/file/model';
import type { WshqtzbForm, WshqtzbFormParam } from './model';
/**
* 分页查询WshqtzbForm
*/
export async function pageWshqtzbForm(params: WshqtzbFormParam) {
const res = await request.get<ApiResult<PageResult<WshqtzbForm>>>('/gxmu/wshqtzb-form/page', {
params: { ...params, backendAccess: true }
});
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 用户分页查询WshqtzbForm
*/
export async function userPageWshqtzbForm(params: WshqtzbFormParam) {
const res = await request.get<ApiResult<PageResult<WshqtzbForm>>>('/gxmu/wshqtzb-form/userPage', {
params: { ...params, backendAccess: true }
});
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询WshqtzbForm列表
*/
export async function listWshqtzbForm(params?: WshqtzbFormParam) {
const res = await request.get<ApiResult<WshqtzbForm[]>>('/gxmu/wshqtzb-form', {
params
});
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 根据id查询WshqtzbForm
*/
export async function getWshqtzbForm(id: number) {
const res = await request.get<ApiResult<WshqtzbForm>>('/gxmu/wshqtzb-form/' + id);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 添加WshqtzbForm
*/
export async function addWshqtzbForm(data: WshqtzbForm) {
const res = await request.post<ApiResult<unknown>>('/gxmu/wshqtzb-form', data);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 修改WshqtzbForm
*/
export async function updateWshqtzbForm(data: WshqtzbForm) {
const res = await request.put<ApiResult<unknown>>('/gxmu/wshqtzb-form', data);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 删除WshqtzbForm
*/
export async function removeWshqtzbForm(id?: number) {
const res = await request.delete<ApiResult<unknown>>('/gxmu/wshqtzb-form/' + id);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 批量删除WshqtzbForm
*/
export async function removeBatchWshqtzbForm(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>('/gxmu/wshqtzb-form/batch', {
data
});
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 导出WshqtzbForm
*/
export async function exportWshqtzbForm(params?: WshqtzbFormParam) {
const res = await request.post<ApiResult<FileRecord>>('/gxmu/wshqtzb-form/export', {
...params,
backendAccess: true
});
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
+52
View File
@@ -0,0 +1,52 @@
import type { PageParam } from '@/api';
import type { ReviewList } from '@/api/gxmu/reviewList/model';
/**
* WshqtzbForm
*/
export interface WshqtzbForm {
id?: number;
year?: string;
branchName?: string;
secondOrg?: string;
secretary?: string;
politics?: string;
contact?: string;
establishTime?: string;
lastElectionTime?: string;
smartSystemLogin?: string;
memberTotal?: string;
memberDeveloped2024?: string;
feeReceivable2024?: string;
feeReceived2024?: string;
feePayable2024?: string;
feePaid2024?: string;
recommendActivist2024?: string;
activistConfirmed?: string;
recommendDevTarget2024?: string;
devTargetConfirmed?: string;
branchCommitteeMeetingCount?: string;
branchMemberMeetingCount?: string;
eduEvalDone?: string;
annualRegDone?: string;
classCount?: string;
smartSystem100?: string;
honorsFiveYears?: string;
workSummaryThreeYears?: string;
leagueOpinion?: string;
partyOpinion?: string;
schoolOpinion?: string;
reviewList?: ReviewList[];
}
/**
* WshqtzbForm搜索条件
*/
export interface WshqtzbFormParam extends PageParam {
id?: number;
year?: string;
branchName?: string;
secretary?: string;
contact?: string;
keywords?: string;
}
+187
View File
@@ -0,0 +1,187 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { FileRecord } from '@/api/system/file/model';
import type {
WxxzxArchiveRecord,
WxxzxDocxValidationResult,
WxxzxForm,
WxxzxFormParam,
WxxzxProjectQualityReviewResult
} from './model';
export interface WxxzxMaterialsPayload {
fundingBudgetFile?: string;
fundingAllocationFile?: string;
midtermRemark?: string;
midtermMaterials?: string;
finalRemark?: string;
finalMaterials?: string;
archiveAwards?: string;
archiveProofs?: string;
archiveRecords?: WxxzxArchiveRecord[];
}
/**
* 分页查询WxxzxForm
*/
export async function pageWxxzxForm(params: WxxzxFormParam) {
const res = await request.get<ApiResult<PageResult<WxxzxForm>>>('/gxmu/wxxzx-form/page', {
params: { ...params, backendAccess: true }
});
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 用户分页查询WxxzxForm
*/
export async function userPageWxxzxForm(params: WxxzxFormParam) {
const res = await request.get<ApiResult<PageResult<WxxzxForm>>>('/gxmu/wxxzx-form/userPage', {
params: { ...params, backendAccess: true }
});
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询WxxzxForm列表
*/
export async function listWxxzxForm(params?: WxxzxFormParam) {
const res = await request.get<ApiResult<WxxzxForm[]>>('/gxmu/wxxzx-form', {
params
});
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 根据id查询WxxzxForm
*/
export async function getWxxzxForm(id: number) {
const res = await request.get<ApiResult<WxxzxForm>>('/gxmu/wxxzx-form/' + id);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 添加WxxzxForm
*/
export async function addWxxzxForm(data: WxxzxForm) {
const res = await request.post<ApiResult<unknown>>('/gxmu/wxxzx-form', data);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 修改WxxzxForm
*/
export async function updateWxxzxForm(data: WxxzxForm) {
const res = await request.put<ApiResult<unknown>>('/gxmu/wxxzx-form', data);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 更新未来学术之星过程材料
*/
export async function updateWxxzxMaterials(
id: number,
data: WxxzxMaterialsPayload
) {
const res = await request.put<ApiResult<unknown>>(
'/gxmu/wxxzx-form/materials/' + id,
data
);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 校验未来学术之星项目申报书 docx 文件格式
*/
export async function validateWxxzxProjectBook(file: File) {
const formData = new FormData();
formData.append('file', file);
const res = await request.post<ApiResult<WxxzxDocxValidationResult>>(
'/gxmu/wxxzx-form/validate-project-book',
formData
);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 项目书质量初审
*/
export async function reviewWxxzxProjectBookQuality(
newProject: File,
customRubric?: File
) {
const formData = new FormData();
formData.append('newProject', newProject);
if (customRubric) {
formData.append('customRubric', customRubric);
}
const res = await request.post<ApiResult<WxxzxProjectQualityReviewResult>>(
'/ai/project-quality-review',
formData
);
if (res.data.code === 0) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message || '项目书质量初审失败'));
}
/**
* 删除WxxzxForm
*/
export async function removeWxxzxForm(id?: number) {
const res = await request.delete<ApiResult<unknown>>('/gxmu/wxxzx-form/' + id);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 批量删除WxxzxForm
*/
export async function removeBatchWxxzxForm(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>('/gxmu/wxxzx-form/batch', {
data
});
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 导出WxxzxForm
*/
export async function exportWxxzxForm(params?: WxxzxFormParam) {
const res = await request.post<ApiResult<FileRecord>>('/gxmu/wxxzx-form/export', {
...params,
backendAccess: true
});
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
+123
View File
@@ -0,0 +1,123 @@
import type { PageParam } from '@/api';
import type { ReviewList } from '@/api/gxmu/reviewList/model';
export interface WxxzxGuidanceTeacher {
year?: string;
name?: string;
gender?: string;
title?: string;
dept?: string;
sign?: string;
}
export interface WxxzxApplicant {
year?: string;
name?: string;
grade?: string;
className?: string;
gender?: string;
major?: string;
role?: string;
}
export interface WxxzxBudget {
year?: string;
item?: string;
amount?: string;
reason?: string;
}
export interface WxxzxReviewMember {
year?: string;
name?: string;
gender?: string;
nation?: string;
politics?: string;
birthMonth?: string;
title?: string;
duty?: string;
department?: string;
remark?: string;
}
export interface WxxzxArchiveRecord {
id?: number;
year?: string;
awardName?: string;
awardTime?: string;
remark?: string;
proofFile?: string;
}
export interface WxxzxForm {
id?: number;
year?: string;
topicName?: string;
leader?: string;
collegeGradeClass?: string;
phone?: string;
advisor?: string;
topicType?: string;
guidanceTeachers?: WxxzxGuidanceTeacher[];
applicants?: WxxzxApplicant[];
budgets?: WxxzxBudget[];
rationale?: string;
teacherOpinion?: string;
teacherSign?: string;
reviewOpinion?: string;
reviewScore?: string;
reviewLeaderSign?: string;
collegeOpinion?: string;
schoolOpinion?: string;
promiseSigner?: string;
promiseSignature?: string;
reviewCollege?: string;
reviewReporter?: string;
reviewDate?: string;
reviewMembers?: WxxzxReviewMember[];
archiveRecords?: WxxzxArchiveRecord[];
fundingBudgetFile?: string;
fundingAllocationFile?: string;
midtermRemark?: string;
midtermMaterials?: string;
finalRemark?: string;
finalMaterials?: string;
archiveAwards?: string;
archiveProofs?: string;
reviewList?: ReviewList[];
}
export interface WxxzxDocxValidationItem {
rule: string;
passed: boolean;
detail: string;
suggestion?: string;
paragraphIndex?: number;
paragraphText?: string;
}
export interface WxxzxDocxValidationResult {
fileName?: string;
passed: boolean;
summary?: string;
totalIssues?: number;
items: WxxzxDocxValidationItem[];
}
export interface WxxzxProjectQualityReviewResult {
answer?: string;
taskId?: string;
workflowRunId?: string;
outputs?: Record<string, any>;
raw?: Record<string, any>;
[key: string]: any;
}
export interface WxxzxFormParam extends PageParam {
id?: number;
year?: string;
topicName?: string;
leader?: string;
collegeGradeClass?: string;
keywords?: string;
}
+114
View File
@@ -0,0 +1,114 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { FileRecord } from '@/api/system/file/model';
import type { YxgqtdgbForm, YxgqtdgbFormParam } from './model';
/**
* 分页查询YxgqtdgbForm
*/
export async function pageYxgqtdgbForm(params: YxgqtdgbFormParam) {
const res = await request.get<ApiResult<PageResult<YxgqtdgbForm>>>('/gxmu/yxgqtdgb-form/page', {
params: { ...params, backendAccess: true }
});
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 用户分页查询YxgqtdgbForm
*/
export async function userPageYxgqtdgbForm(params: YxgqtdgbFormParam) {
const res = await request.get<ApiResult<PageResult<YxgqtdgbForm>>>('/gxmu/yxgqtdgb-form/userPage', {
params: { ...params, backendAccess: true }
});
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询YxgqtdgbForm列表
*/
export async function listYxgqtdgbForm(params?: YxgqtdgbFormParam) {
const res = await request.get<ApiResult<YxgqtdgbForm[]>>('/gxmu/yxgqtdgb-form', {
params
});
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 根据id查询YxgqtdgbForm
*/
export async function getYxgqtdgbForm(id: number) {
const res = await request.get<ApiResult<YxgqtdgbForm>>('/gxmu/yxgqtdgb-form/' + id);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 添加YxgqtdgbForm
*/
export async function addYxgqtdgbForm(data: YxgqtdgbForm) {
const res = await request.post<ApiResult<unknown>>('/gxmu/yxgqtdgb-form', data);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 修改YxgqtdgbForm
*/
export async function updateYxgqtdgbForm(data: YxgqtdgbForm) {
const res = await request.put<ApiResult<unknown>>('/gxmu/yxgqtdgb-form', data);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 删除YxgqtdgbForm
*/
export async function removeYxgqtdgbForm(id?: number) {
const res = await request.delete<ApiResult<unknown>>('/gxmu/yxgqtdgb-form/' + id);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 批量删除YxgqtdgbForm
*/
export async function removeBatchYxgqtdgbForm(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>('/gxmu/yxgqtdgb-form/batch', {
data
});
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 导出YxgqtdgbForm
*/
export async function exportYxgqtdgbForm(params?: YxgqtdgbFormParam) {
const res = await request.post<ApiResult<FileRecord>>('/gxmu/yxgqtdgb-form/export', {
...params,
backendAccess: true
});
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
+42
View File
@@ -0,0 +1,42 @@
import type { PageParam } from '@/api';
import type { ReviewList } from '@/api/gxmu/reviewList/model';
/**
* YxgqtdgbForm
*/
export interface YxgqtdgbForm {
id?: number;
year?: string;
name?: string;
gender?: string;
nation?: string;
birthMonth?: string;
politics?: string;
position?: string;
identity?: string;
organization?: string;
contact?: string;
memberNo?: string;
currentDutyTime?: string;
cadreYears?: string;
assessment2024?: string;
volunteerRegTime?: string;
cadreExperience?: string;
honorsFiveYears?: string;
mainStory?: string;
leagueOpinion?: string;
partyOpinion?: string;
reviewList?: ReviewList[];
}
/**
* YxgqtdgbForm搜索条件
*/
export interface YxgqtdgbFormParam extends PageParam {
id?: number;
year?: string;
name?: string;
organization?: string;
contact?: string;
keywords?: string;
}
+114
View File
@@ -0,0 +1,114 @@
import request from '@/utils/request';
import type { ApiResult, PageResult } from '@/api';
import type { FileRecord } from '@/api/system/file/model';
import type { YxgqtyForm, YxgqtyFormParam } from './model';
/**
* 分页查询YxgqtyForm
*/
export async function pageYxgqtyForm(params: YxgqtyFormParam) {
const res = await request.get<ApiResult<PageResult<YxgqtyForm>>>('/gxmu/yxgqty-form/page', {
params: { ...params, backendAccess: true }
});
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 用户分页查询YxgqtyForm
*/
export async function userPageYxgqtyForm(params: YxgqtyFormParam) {
const res = await request.get<ApiResult<PageResult<YxgqtyForm>>>('/gxmu/yxgqty-form/userPage', {
params: { ...params, backendAccess: true }
});
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 查询YxgqtyForm列表
*/
export async function listYxgqtyForm(params?: YxgqtyFormParam) {
const res = await request.get<ApiResult<YxgqtyForm[]>>('/gxmu/yxgqty-form', {
params
});
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 根据id查询YxgqtyForm
*/
export async function getYxgqtyForm(id: number) {
const res = await request.get<ApiResult<YxgqtyForm>>('/gxmu/yxgqty-form/' + id);
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 添加YxgqtyForm
*/
export async function addYxgqtyForm(data: YxgqtyForm) {
const res = await request.post<ApiResult<unknown>>('/gxmu/yxgqty-form', data);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 修改YxgqtyForm
*/
export async function updateYxgqtyForm(data: YxgqtyForm) {
const res = await request.put<ApiResult<unknown>>('/gxmu/yxgqty-form', data);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 删除YxgqtyForm
*/
export async function removeYxgqtyForm(id?: number) {
const res = await request.delete<ApiResult<unknown>>('/gxmu/yxgqty-form/' + id);
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 批量删除YxgqtyForm
*/
export async function removeBatchYxgqtyForm(data: (number | undefined)[]) {
const res = await request.delete<ApiResult<unknown>>('/gxmu/yxgqty-form/batch', {
data
});
if (res.data.code === 0) {
return res.data.message;
}
return Promise.reject(new Error(res.data.message));
}
/**
* 导出YxgqtyForm
*/
export async function exportYxgqtyForm(params?: YxgqtyFormParam) {
const res = await request.post<ApiResult<FileRecord>>('/gxmu/yxgqty-form/export', {
...params,
backendAccess: true
});
if (res.data.code === 0 && res.data.data) {
return res.data.data;
}
return Promise.reject(new Error(res.data.message));
}
+43
View File
@@ -0,0 +1,43 @@
import type { PageParam } from '@/api';
import type { ReviewList } from '@/api/gxmu/reviewList/model';
/**
* YxgqtyForm
*/
export interface YxgqtyForm {
id?: number;
year?: string;
name?: string;
gender?: string;
nation?: string;
politics?: string;
birthMonth?: string;
joinTime?: string;
collegeMajorClass?: string;
position?: string;
volunteerRegTime?: string;
eduEval2024?: string;
smartSystem?: string;
contact?: string;
totalVolunteerHours?: string;
volunteerHours2024?: string;
memberNo?: string;
honorsFiveYears?: string;
mainStory?: string;
leagueOpinion?: string;
partyOpinion?: string;
schoolOpinion?: string;
reviewList?: ReviewList[];
}
/**
* YxgqtyForm搜索条件
*/
export interface YxgqtyFormParam extends PageParam {
id?: number;
year?: string;
name?: string;
collegeMajorClass?: string;
contact?: string;
keywords?: string;
}