import {request} from "@/api/request"; export interface Student { company_id:number avatar: string dep_ids: number[] email: string id_card: string name: string password: string phone_number: string } interface UserInfoData { dep_ids: number[] user: Student } interface setRoleTypeData { /** 当前超级管理员ID */ auth_id: number /** 管理员权限,0 为员工,1为管理员,2为超级管理员 */ role_type: number } type DepList = Record export interface AddDepProps { id?: number | null name: string parent_id: number company_id: number sort: number } interface DepCurData { data: Curriculum[] total: number } export interface depCurProps { page: number size: number id: number } interface AddCurProps { course_id: number[] dep_id: number[] is_required: 1 | 0 } export interface CurLearningRecord { course: Curriculum data: User[] /** 部门 */ departments: Record /** 第一次记录 */ user_course_hour_user_first_at: Record /** 学习记录 */ user_course_records: Record /** 学员部门 */ user_dep_ids: Record total: number } export const ManageApi = { /** 添加学员 */ addUser(data: Student) { return request('/api/v1/user/create', "POST", data) }, userInfo(id: number) { return request(`/api/v1/user/${id}`, "GET") }, putUser(id: number, data: Student) { return request(`/api/v1/user/front/${id}`, "PUT", data) }, del(id: number) { return request(`/api/v1/user/${id}`, "DELETE") }, /** 修改学员类型 */ setRoleType(id: number, data: setRoleTypeData) { return request(`/api/v1/user/${id}`, "PUT", data) }, /** 部门 */ depList() { return request('/api/v1/department/index', "GET") }, addDep(data: AddDepProps) { return request('/api/v1/department/save', "POST", data) }, putDep(data: AddDepProps) { return request(`/api/v1/department/${data.id}`, "PUT", data) }, delDep(id: number) { return request(`/api/v1/department/${id}`, "DELETE") }, /** 部门课程 */ depCur(data: depCurProps) { return request(`/api/v1/department/${data.id}/courses?page=${data.page}&size=${data.size}`, "GET") }, /** 未添加课程 */ optionalCur(dep_id: number, category_id: number) { return request(`/api/v1/department/${dep_id}/optional?category_id=${category_id}`, "GET") }, addCur(data: AddCurProps) { return request('/api/v1/course/user', "POST", data) }, buyAll() { return request('/api/v1/course/buy/all', "GET") }, buy(data_list: number[]) { return request(`/api/v1/course/buy?data_list=${data_list}`, "POST") }, /** 课程绑定部门 */ bingDep(dep_id: number) { return request(`/api/v1/course/all/bind/${dep_id}`, "GET") }, /** 课程学员学习记录 */ curLearningRecord(cur_id: number | string,data:{page:number,size:number}) { return request(`/api/v1/course/${cur_id}/user/index`, "GET", data) } }