# API 接口文档 ## 🌐 基础信息 - **基础URL**: `http://47.108.113.190:8181/` - **请求格式**: JSON - **响应格式**: JSON - **超时时间**: 30秒 ## 🔐 认证方式 所有API请求通过 `HeaderInterceptor` 自动添加认证信息: ``` Authorization: Bearer {token} ``` ## 📋 通用响应格式 ### 成功响应 ```json { "code": 200, "message": "success", "data": { ... } } ``` ### 列表响应 ```json { "code": 200, "message": "success", "data": [ ... ] } ``` ## 🚀 Retrofit 实现 ### 网络客户端配置 ```kotlin object RetrofitClient { // 主服务器 private val retrofit: Retrofit = Retrofit.Builder() .client(okHttpClientHeader()) .addConverterFactory(GsonConverterFactory.create()) .baseUrl("http://47.108.113.190:8181/") .build() // OSS服务器 private val ossRequest: Retrofit = Retrofit.Builder() .client(okHttpClientHeader()) .addConverterFactory(GsonConverterFactory.create()) .baseUrl("http://47.93.28.249:7080/") .build() } ``` ### 拦截器配置 - **HeaderInterceptor**: 自动添加 Token 认证 - **LoggingInterceptor**: 记录请求和响应日志 ### 协程支持 所有接口使用 `suspend` 函数,支持 Kotlin 协程: ```kotlin interface ApiService { @POST("/public/user/login") suspend fun login(@Body bean: LoginRequestBean): BaseResponseBean } ``` ## 📱 接口列表 ### 👤 用户认证 - `POST /public/user/login` - 用户登录 - `POST /public/user/logout` - 退出登录 - `GET /personal/basic/info` - 获取个人信息 - `POST /personal/basic/password/update` - 修改密码 ### 📊 项目管理 - `GET /admin/project/detail` - 项目详情 - `POST /admin/project/add_res` - 新建项目 - `POST /admin/project/edit` - 编辑项目 - `POST /admin/projectInfo/add` - 添加项目信息 - `POST /admin/projectInfo/edit` - 编辑项目信息 - `GET /admin/projectInfo/latest` - 查询项目信息 ### 📅 任务管理 - `POST /personal/toDo/plan/list` - 计划待办列表 - `GET /personal/toDo/checkTask/list` - 任务列表 - `GET /personal/toDo/checkTask/mine` - 我的待办 - `POST /admin/plan/add` - 创建计划 - `POST /admin/checkTask/add` - 添加任务 - `POST /admin/checkTask/edit` - 编辑任务 - `POST /admin/checkTask/close` - 关闭任务 ### ✅ 签到管理 - `POST /personal/sign/work` - 个人签到 - `POST /personal/sign/project` - 项目签到 ### 🔧 设备管理 - `GET /admin/entity/freeDevices` - 可用设备列表 - `GET /admin/project/device/usage/get` - 设备详情 - `POST /admin/project/device/usage/add` - 添加设备 - `POST /admin/project/device/usage/edit` - 编辑设备 - `POST /admin/project/device/usage/batch/del` - 删除设备 - `POST /admin/project/device/usage/batch/remove` - 移除设备 - `POST /admin/device/add` - 添加新设备 - `POST /admin/device/edit` - 修改设备信息 ### 👥 人员管理 - `GET /admin/entity/activeUsers` - 用户列表 - `GET /admin/entity/drivers` - 司机列表 - `GET /admin/entity/cars` - 车辆列表 ### 📝 问题记录 - `POST /admin/record/error/add` - 添加问题 - `POST /admin/record/error/edit` - 更新问题 - `POST /admin/record/error/del` - 删除问题 - `GET /personal/task/system/problems` - 综合问题列表 - `GET /personal/task/device/problems` - 设备问题列表 - `POST /admin/record/error/system/list` - 项目问题列表 - `POST /admin/record/error/device/list` - 设备问题列表 - `GET /admin/problem/detail` - 问题详情 ### 🔍 选项查询 - `GET /admin/entity/clients` - 通用选项 - `GET /app/client/search` - 委托方搜索 - `GET /admin/entity/systemModels` - 综合体系选项 - `GET /app/device/system/options` - 设备体系选项 - `GET /app/project/type/options` - 项目类型选项 - `GET /app/project/usage/type/options` - 项目用途类型选项 ### 📁 文件上传 - `GET /AssumeRole` - 获取OSS Token ### 🌳 层级体系 - `GET /personal/task/system/hierarchy` - 综合体系层级 - `GET /personal/task/device/hierarchy` - 设备体系层级 - `GET /admin/checkTask/byPassInfo/system/tree` - 轮空树信息(综合) - `GET /admin/checkTask/byPassInfo/device/tree` - 轮空树信息(设备) - `GET /admin/checkTask/byPassInfo/get` - 轮空详情 - `POST /admin/checkTask/byPassInfo/set` - 提交轮空信息 ### 📊 审核管理 - `POST /admin/record/review/get` - 获取审核信息 - `POST /admin/record/review/add` - 添加审核 - `POST /admin/record/review/edit` - 编辑审核 ### 🛠️ 其他功能 - `POST /admin/record/warning/list` - 正确做法列表 - `POST /admin/record/warning/add` - 添加正确做法 - `POST /admin/record/warning/edit` - 更新正确做法 - `GET /admin/checkTask/team/members` - 检查小组成员 - `POST /admin/project/device/usage/list` - 设备清单列表 - `GET /app/project/problem/fetchDangerLevel` - 获取隐患等级 ## 🚀 使用示例 ### Kotlin 协程调用 ```kotlin // 登录 val loginResponse = apiService.login(loginRequestBean) if (loginResponse.code == 200) { val token = loginResponse.data.token // 保存token } // 获取项目列表 val projectList = apiService.getPlanList(planListInfo) projectList.data?.forEach { project -> // 处理项目数据 } ``` ### 错误处理 ```kotlin try { val response = apiService.getProfileInfo() if (response.code == 200) { // 处理成功响应 } else { // 处理业务错误 showError(response.message) } } catch (e: Exception) { // 处理网络异常 showError("网络连接失败") } ```