API 接口文档

🌐 基础信息

  • 基础URL: http://47.108.113.190:8181/
  • 请求格式: JSON
  • 响应格式: JSON
  • 超时时间: 30秒

🔐 认证方式

所有API请求通过 HeaderInterceptor 自动添加认证信息:
Authorization: Bearer {token}

📋 通用响应格式

成功响应

{
  "code": 200,
  "message": "success",
  "data": { ... }
}

列表响应

{
  "code": 200,
  "message": "success",
  "data": [ ... ]
}

🚀 Retrofit 实现

网络客户端配置

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<LoginBean> }

📱 接口列表

👤 用户认证

  • 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 协程调用

// 登录
val loginResponse = apiService.login(loginRequestBean)
if (loginResponse.code == 200) {
    val token = loginResponse.data.token
    // 保存token
}

// 获取项目列表
val projectList = apiService.getPlanList(planListInfo)
projectList.data?.forEach { project ->
    // 处理项目数据
}

错误处理

try {
    val response = apiService.getProfileInfo()
    if (response.code == 200) {
        // 处理成功响应
    } else {
        // 处理业务错误
        showError(response.message)
    }
} catch (e: Exception) {
    // 处理网络异常
    showError("网络连接失败")
}