Files
fe_supplier_frontend/src/servers/api/typings.d.ts

241 lines
5.1 KiB
TypeScript
Raw Normal View History

2025-06-17 14:20:06 +08:00
declare namespace API {
type APIResponse<T> = {
code: number;
success: boolean;
message: string;
data: T;
}
2025-07-09 14:01:45 +08:00
//登录
interface LoginSupplier {
account: string;
password: string;
identifying: string;
encryptValue: string;
}
// 省市区
interface RegionOption {
label: string;
value: string;
id: string;
2025-07-17 15:17:49 +08:00
name?: string;
dicName?: string;
children?: RegionOption[];
}
2025-06-17 14:20:06 +08:00
2025-06-24 18:58:43 +08:00
// 用户相关接口类型定义
export interface UserListRequest {
2025-07-01 17:02:11 +08:00
basePageRequest: {
pageNumber: number;
pageSize: number;
};
2025-06-24 18:58:43 +08:00
keyword?: string;
[property: string]: any;
}
export interface UserItem {
userId: string;
userName: string;
userDept: string;
userDeptId: string;
[property: string]: any;
}
// 评价任务人员选择器相关接口
export interface PersonnelItem {
id: string;
name: string;
userDept: string;
userDeptId: string;
2025-06-24 18:58:43 +08:00
position?: string;
selected?: boolean;
isSelected?: boolean;
2025-06-24 18:58:43 +08:00
}
export interface Department {
id: string;
name: string;
}
2025-06-17 18:32:33 +08:00
2025-06-17 14:20:06 +08:00
export type RegisterRequest = {
coscoSupplierBank: CoscoSupplierBank[];
coscoSupplierBase: CoscoSupplierBase;
coscoSupplierInvoice: CoscoSupplierInvoice;
coscoSupplierQualifications: CoscoSupplierQualification[];
coscoSupplierSurvey: CoscoSupplierSurvey;
coscoSupplierSurveyAttachments: CoscoSupplierSurveyAttachment[];
coscoSupplierSurveyQuestionReply: CoscoSupplierSurveyQuestionReply[];
[property: string]: any;
}
export type CoscoSupplierBank = {
account?: string;
accountName?: string;
bank?: string;
city?: string;
currency?: string;
interbankNumber?: string;
nation?: string;
province?: string;
[property: string]: any;
}
export type CoscoSupplierBase = {
capital: number;
contactsEmail: string;
contactsName: string;
contactsPhone: string;
contactsType: string;
enterpriseType: string;
idCard: string;
legalPerson: string;
licenceAccessory: string;
licenceDate: string;
name: string;
nameEn: string;
parentCompanyInvestor: string;
range: string;
regAddress: string;
socialCreditCode: string;
supplierType: string;
telephone: string;
workAddress: string;
[property: string]: any;
}
export type CoscoSupplierInvoice = {
account: string;
address: string;
bank: string;
head: string;
phone: string;
qualificationCertificate: string;
taxpayerCode: string;
taxpayerType: string;
[property: string]: any;
}
export type CoscoSupplierQualification = {
accessory?: string;
authority?: string;
certificateType?: string;
code?: string;
dateTime?: string;
name?: string;
termOfValidity?: string;
typeLevel?: string;
[property: string]: any;
}
export type CoscoSupplierSurvey = {
dateTime: string;
email: string;
name: string;
phone: string;
position: string;
supplierName: string;
[property: string]: any;
}
export type CoscoSupplierSurveyAttachment = {
attachmentsType: string;
fileName: string;
filePath: string;
fileSize: string;
fileType: string;
fileUrl: string;
[property: string]: any;
}
export type CoscoSupplierSurveyQuestionReply = {
replyValue?: string;
surveyQuestionId?: string;
[property: string]: any;
}
// 调查问卷返回类型
type SurveyQuestionResponse = {
id: string;
question: string;
orderBy: string;
coscoSurveyQuestionOptionList: {
id: string;
opentionValue: string;
optionName: string;
}[];
}[]
2025-06-17 18:32:33 +08:00
2025-06-18 14:37:42 +08:00
// 通用响应类型
type Response<T = any> = {
success: boolean;
data: T;
message?: string;
code?: number;
};
// 分页响应类型
type PageResponse<T = any> = {
records: T[];
total: number;
size: number;
current: number;
pages: number;
};
// 基础分页请求
interface BasePageRequest {
2025-06-17 18:32:33 +08:00
pageNo: number;
pageSize: number;
2025-06-18 14:37:42 +08:00
[property: string]: any;
2025-06-17 18:32:33 +08:00
}
// 分页请求参数
2025-06-18 14:37:42 +08:00
interface PageRequest {
2025-06-17 18:32:33 +08:00
basePageRequest: BasePageRequest;
2025-06-18 14:37:42 +08:00
[property: string]: any;
2025-06-17 18:32:33 +08:00
}
// 文件上传响应
export interface UploadResponse {
id: string;
fileName: string;
fileSize: number;
fileType: string;
fileUrl: string;
}
2025-06-17 21:06:27 +08:00
2025-06-24 14:00:51 +08:00
//
2025-06-18 22:04:33 +08:00
// 供应商评价任务状态枚举
export enum TaskStatus {
DRAFT = '0', // 草稿
PUBLISHED = '1', // 已发布
PROCESSING = '2', // 进行中
COMPLETED = '3', // 已完成
CANCELED = '4', // 已取消
}
// 供应商评价任务类型枚举
export enum TaskType {
REGULAR = '1', // 常规评价
SPECIAL = '2', // 专项评价
}
2025-06-24 14:00:51 +08:00
// 评价打分详情数据
interface IndicatorDetailData {
category: string;
name: string;
taskIndicatorVo: {
baseIndicator: string;
indicatorDesc: string;
score: string;
subIndicator: {
id: string;
remark: string | null;
scoreNum: string | null;
starIndicator: string;
stId: string;
subIndicator: string;
subScore: string;
}[];
}[];
}
2025-06-17 14:20:06 +08:00
}