feat(label): add label page

This commit is contained in:
2026-03-10 18:20:50 +08:00
parent 1ae8509cce
commit 014c34ab76
65 changed files with 23477 additions and 0 deletions

View File

@@ -0,0 +1,65 @@
import httpFetch from "@/api/fetch"
import { BASE_LABEL_API } from "../const"
import { TimeFilter, WorkLoad } from "./typing"
// 标注工作量统计
export const getLabelStatisticsList = (params: TimeFilter) => {
return httpFetch<WorkLoad.LabelResponse>({
url: BASE_LABEL_API + "/api/v1/label_server/workload/label_statistics/list",
method: "GET",
data: params,
})
}
// 审核1工作量统计
export const getReview1StatisticsList = (params: TimeFilter) => {
return httpFetch<WorkLoad.Review1Response>({
url:
BASE_LABEL_API + "/api/v1/label_server/workload/review1_statistics/list",
method: "GET",
data: params,
})
}
// 审核2工作量统计
export const getReview2StatisticsList = (params: TimeFilter) => {
return httpFetch<WorkLoad.Review2Response>({
url:
BASE_LABEL_API + "/api/v1/label_server/workload/review2_statistics/list",
method: "GET",
data: params,
})
}
// 结算表格列表
export const getDownloadLog = () => {
return httpFetch<any[]>({
url: BASE_LABEL_API + "/api/v1/label_server/workload/settlement_form/list",
method: "GET",
})
}
// 导出结算表格
export const exportSettlementForm = (params: {
year: number
month: number
}) => {
return httpFetch<Blob>({
url:
BASE_LABEL_API + "/api/v1/label_server/workload/settlement_form/export",
method: "GET",
data: params,
isDownload: true,
})
}
// 下载结算表格
export const downloadSettlementForm = (params: { id: number }) => {
return httpFetch<Blob>({
url:
BASE_LABEL_API + "/api/v1/label_server/workload/settlement_form/download",
method: "GET",
data: params,
isDownload: true,
})
}

View File

@@ -0,0 +1,107 @@
export interface TimeFilter {
start_date: string
end_date: string
}
export namespace WorkLoad {
export interface LabelData {
commented_question_size: number
commented_size: number
commit_label_1: number
commit_reviewed_1: number
confirmed_prelabel_size: number
dynamic_size: number
group_name?: string
key_frame_size: number
object_size: number
prelabel_object_size: number
project_id: number
project_name: string
project_type: string
question_size: number
rejected_label_1: number
reviewed_question_size: number
reviewed_size: number
static_size: number
total_reviewed_size: number
uid: number
user_name: string
work_time: number
[property: string]: any
}
export interface LabelResponse {
all: LabelData[]
order_by_group_name: any[]
order_by_project_name: any[]
order_by_project_type: any[]
order_by_user_name: any[]
}
export interface Review1Data {
comment_size: number
commented_size: number
commit_review_1: number
commit_reviewed_2: number
confirmed_prelabel_size: number
group_name?: string
object_size: number
prelabel_object_size: number
project_id: number
project_name: string
project_type: string
reject_review_1: number
rejected_review_1: number
review_dynamic_size: number
review_key_frame_size: number
review_question_size: number
review_size: number
review_static_size: number
reviewed_size: number
total_review_size: number
total_reviewed_size: number
uid: number
user_name: string
work_time: number
[property: string]: any
}
export interface Review1Response {
all: Review1Data[]
order_by_group_name: any[]
order_by_project_name: any[]
order_by_project_type: any[]
order_by_user_name: any[]
}
export interface Review2Data {
comment_size: number
commit_review_2: number
confirmed_prelabel_size: number
group_name?: string
object_size: number
prelabel_object_size: number
project_id: number
project_name: string
project_type: string
reject_review_2: number
review_dynamic_size: number
review_key_frame_size: number
review_question_size: number
review_size: number
review_static_size: number
total_review_size: number
uid: number
user_name: string
work_time: number
[property: string]: any
}
export interface Review2Response {
all: Review2Data[]
order_by_group_name: any[]
order_by_project_name: any[]
order_by_project_type: any[]
order_by_user_name: any[]
}
}