import { DefineApiModule } from '@/api/api'
import { User } from './api-types/user'

const UserApi: DefineApiModule<User.ApiMap> = {
  /** 登录 */
  userLogin: {
    url: '/api/auth/login',
    noAuth: true,
  },
  /** 登出 */
  userLogout: '/api/auth/logout',
  /** 导入用户 */
  exportUser: {
    url: '/api/user/export',
    download: true,
  },
  /** 下载用户导入模板 */
  downloadUserTemplate: '/api/user/import/template',
  /** 查询当前用户信息 */
  getMyUserInfo: '/api/user/my/info',
  /** 查询指定用户信息 */
  getUserInfo: '/api/user/info',
  /** 查询用户列表 */
  getUserList: '/api/user/page',
  /** 修改用户密码 */
  updateUserPwd: '/api/user/password',
  /** 重置指定用户密码 */
  resetUsersPwd: '/api/user/reset/passwd',
  /** 启用/禁用 用户 */
  toggleEnableUsers: '/api/user/toggle',
  /** 新增/修改用户信息 */
  saveUserInfo: '/api/user/save',
  /** 批量创建用户 */
  bulkSaveUser: '/api/user/batch/create',
  /** 超管选择考试 */
  checkExam: '/api/auth/exam',
  /** 修改用户姓名 */
  updateUserName: '/api/user/modify/name',
  /** 获取用户菜单 */
  getUserPrivilege: '/api/user/privilege',
  /** 获取评卷员分组 */
  getMarkerTree: '/api/user/marker/group',
  /** 获取评卷员 */
  getMarkerList: '/api/user/marker/list',
  /** 用户分组 - 发消息 */
  getUserGroup: '/api/user/group',
  /** 设置试卷配置信息 */
  setUserMarkConfig: '/api/user/config/set',
  /** 获取试卷配置信息 */
  getUserMarkConfig: '/api/user/config/get',
}

export default UserApi
