package com.casic.smarttube.retrofit import okhttp3.MultipartBody import okhttp3.RequestBody import retrofit2.http.* interface RetrofitService { /** * PublicKey校验 */ @GET("/config/baseConfig") suspend fun obtainPublicKey(): String /** * 登录并获取Token * * @param sid * @param account 用户名 * @param secretKey 加密后的密码 */ @FormUrlEncoded @POST("/user/login") suspend fun obtainLoginResult( @Field("sid") sid: String, @Field("username") account: String, @Field("password") secretKey: String ): String /** * 退出登录 */ @GET("/user/logout") suspend fun loginOut(@Header("token") token: String): String /** * 获取用户信息 */ @GET("/user/info") suspend fun obtainUserDetail(@Header("token") token: String): String /** * 修改密码 * * @param oldPwd 旧密码 * @param newPwd 新密码 */ @FormUrlEncoded @POST("/mgr/changePwd") suspend fun changePassword( @Header("token") token: String, @Field("oldPwd") oldPwd: String, @Field("newPwd") newPwd: String ): String /** * 上传图片 * 系统路径static拼接图片返回路径 * http://xx.com/static/2019-10/8050891248624f2bbefedcb196ce89cb.jpeg */ @Multipart @POST("/imageUpload") suspend fun uploadImage( @Header("token") token: String, @Part file: MultipartBody.Part ): String /** * 更新APK版本 */ @POST("/app/checkVersion") suspend fun obtainVersionResult(@Header("token") token: String): String /** * 地图设备列表 */ @GET("/tube/well/list") suspend fun obtainMapDeviceList(@Header("token") token: String): String /** * 项目列表 */ @GET("/tube/groups/list") suspend fun obtainProGroupList(@Header("token") token: String): String /** * 根据项目ID查询该项目下的设备列表 */ @GET("/tube/groupdevice/list") suspend fun obtainDeviceListByGroup( @Header("token") token: String, @Query("wellGroupId") wellGroupId: String ): String /** * 获取设备分页列表 * */ @GET("/tube/groupdevice/listpage") suspend fun obtainDeviceListByPage( @Header("token") token: String, @Query("wellGroupId") wellGroupId: String?, @Query("order") order: Int, @Query("offset") offset: Int, @Query("limit") limit: Int ): String /** * 获取设备详情 * * @param wellGroupId 组 * @param devcode 管盯设备编号 */ @GET("/tube/detail") suspend fun obtainDeviceDetail( @Header("token") token: String, @Query("wellGroupId") wellGroupId: String, @Query("devcode") devcode: String ): String /** * 根据部门获取区ID * * @param deptId */ @GET("/config/getAreaByDept") suspend fun obtainAreaByDept( @Header("token") token: String, @Query("deptId") deptId: String ): String /** * 获取区/县等 * * @param pid */ @GET("/area/list") suspend fun obtainDistrict( @Header("token") token: String, @Query("pid") pid: String ): String /** * 获取街道 * * @param pid */ @GET("/area/list") suspend fun obtainStreet( @Header("token") token: String, @Query("pid") pid: String ): String /** * 获取管盯历史数据 * */ @GET("/tube/groupdevice/history") suspend fun obtainDeviceHistoryData( @Header("token") token: String, @Query("wellGroupId") wellGroupId: String, @Query("devcode") devcode: String?, @Query("beginTime") beginTime: String?, @Query("endTime") endTime: String? ): String /** * 获取设备最新数据 * * @param wellGroupId 管盯设备编号 */ @GET("/tube/latestdata") suspend fun obtainTubeLastData( @Header("token") token: String, @Query("wellGroupId") wellGroupId: String, @Query("devcode") devcode: String ): String /** * 查询工单 * */ @POST("/tube/qrcode-entry/add") suspend fun addDevice( @Header("token") token: String, @Body requestBody: RequestBody ): String /** * 获取项目编号列表 */ @GET("/tube/groupdict") suspend fun obtainGroupList( @Header("token") token: String ): String /** * 修改项目编号 */ @GET("/tube/group/edit") suspend fun changeGroupId( @Header("token") token: String, @Query("oldGroupName") oldGroupId: String, @Query("newGroupName") newGroupId: String ): String /** * 删除设备 * */ @POST("/tube/batch/delete") suspend fun deleteDeviceById( @Header("token") token: String, @Body requestBody: RequestBody ): String }