ApiService.java 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401
  1. package http.client.retrofit;
  2. import http.vo.CommonDataResponse;
  3. import http.vo.CommonResponse;
  4. import http.vo.CommonRowsResponse;
  5. import http.vo.request.AuthFaceReq;
  6. import http.vo.request.BannerImageReq;
  7. import http.vo.request.FaceCompareReq;
  8. import http.vo.request.LotDeviceReq;
  9. import http.vo.request.MonitorReq;
  10. import http.vo.request.NoticeReq;
  11. import http.vo.request.OnLineUserReq;
  12. import http.vo.request.PatrolSignInReq;
  13. import http.vo.request.SafetyListReq;
  14. import http.vo.request.SignInReq;
  15. import http.vo.request.SubIdReq;
  16. import http.vo.request.TerminalAuthReq;
  17. import http.vo.response.ApkInfoResp;
  18. import http.vo.response.BannerImageBean;
  19. import http.vo.response.CheckMachineVo;
  20. import http.vo.response.DutyPersonVo;
  21. import http.vo.response.HazardBook;
  22. import http.vo.response.HomeMiddleResp;
  23. import http.vo.response.HomeRightResp;
  24. import http.vo.response.HomeTopResp;
  25. import http.vo.response.LabBulletinBoardVo;
  26. import xn.xxp.room.bean.LabConfig;
  27. import http.vo.response.LabHazardVo;
  28. import http.vo.response.LabPersonVo;
  29. import http.vo.response.LabWarnVo;
  30. import http.vo.response.LaboratoryVo;
  31. import http.vo.response.LotDeviceVo;
  32. import http.vo.response.MonitorVo;
  33. import xn.xxp.room.bean.NoticeSummary;
  34. import http.vo.response.RecordsResponse;
  35. import http.vo.response.SafeBook;
  36. import http.vo.response.SignInCheckResp;
  37. import http.vo.response.SpeakInfo;
  38. import http.vo.response.UserFingerVo;
  39. import http.vo.response.UserVo;
  40. import java.util.List;
  41. import java.util.Map;
  42. import io.reactivex.rxjava3.core.Observable;
  43. import okhttp3.MultipartBody;
  44. import okhttp3.RequestBody;
  45. import retrofit2.http.Body;
  46. import retrofit2.http.Field;
  47. import retrofit2.http.FormUrlEncoded;
  48. import retrofit2.http.GET;
  49. import retrofit2.http.Multipart;
  50. import retrofit2.http.POST;
  51. import retrofit2.http.Part;
  52. import retrofit2.http.PartMap;
  53. import retrofit2.http.Path;
  54. import retrofit2.http.Query;
  55. import retrofit2.http.QueryMap;
  56. public interface ApiService {
  57. /**
  58. * ZD-A002: 查询APK版本
  59. * <p>
  60. * code: aio_infobord/aio_manager
  61. * deviceNo:
  62. * version:
  63. */
  64. @GET("iot/aio/report")
  65. Observable<CommonDataResponse<ApkInfoResp>> apkVersion(@QueryMap Map<String, String> filters);
  66. /**
  67. * ZD-A004: 实验室信息
  68. */
  69. @GET("terminal/lab/onemachine/{id}")
  70. Observable<CommonDataResponse<LaboratoryVo>> laboratoryInfo(@Path("id") String id);
  71. /**
  72. * ZD-A005: 危险源信息
  73. */
  74. @GET("terminal/lab/onemachine/{subId}/Hazard/list")
  75. Observable<CommonDataResponse<List<LabHazardVo>>> hazardlist(@Path("subId") String subId, @Query("pageNum") int pageNum, @Query("pageSize") int pageSize);
  76. /**
  77. * ZD-A006: 签到验证(进入)
  78. */
  79. @GET("terminal/lab/onemachine/{subId}/SignInCheck/{username}")
  80. Observable<CommonDataResponse<SignInCheckResp>> signInCheck(@Path("subId") String subId, @Path("username") String username);
  81. /**
  82. * ZD-A007: 签到验证(进入)
  83. */
  84. @GET("terminal/lab/onemachine/{subId}/SignInXxpCheck/{userId}")
  85. Observable<CommonDataResponse<SignInCheckResp>> signInXxpCheck(@Path("subId") String subId, @Path("userId") String userId);
  86. /**
  87. * ZD-A008: 签到提交-人脸验证
  88. */
  89. @POST("terminal/lab/onemachine/{code}/SignIn2")
  90. Observable<CommonDataResponse<String>> signInFace(@Path("code") String code, @Body SignInReq data);
  91. /**
  92. * ZD-A009: 签到-安全准入检测三合一
  93. */
  94. @Multipart
  95. @POST("terminal/lab/signIn/check/checkInAll")
  96. Observable<CommonDataResponse<String>> checkInAll(@PartMap Map<String, RequestBody> params, @Part MultipartBody.Part file);
  97. /**
  98. * ZD-A010: 签到-安全准入检测三合一
  99. */
  100. @Multipart
  101. @POST("terminal/lab/signIn/check/checkInXxpAll")
  102. Observable<CommonDataResponse<String>> checkInXxpAll(@PartMap Map<String, RequestBody> params, @Part MultipartBody.Part file);
  103. /**
  104. * ZD-A011: 签到提交
  105. */
  106. @POST("terminal/lab/onemachine/{id}/SignIn/commit")
  107. Observable<CommonResponse> signIn(@Path("id") String id);
  108. /**
  109. * ZD-A012: 签到提交-有跳过安全准入检测时使用
  110. */
  111. @POST("terminal/lab/checklog/{id}/jump/{code}")
  112. Observable<CommonResponse> signInJump(@Path("id") String id, @Path("code") String code);
  113. /**
  114. * ZD-A013: 签到验证(离开)
  115. */
  116. @GET("terminal/lab/onemachine/{subId}/SignOutCheck/{username}")
  117. Observable<CommonDataResponse<SignInCheckResp>> signOutCheck(@Path("subId") String subId, @Path("username") String username);
  118. /**
  119. * ZD-A014: 签到验证(离开)
  120. */
  121. @GET("terminal/lab/onemachine/{subId}/SignOutXXpCheck/{userId}")
  122. Observable<CommonDataResponse<SignInCheckResp>> signOutXXpCheck(@Path("subId") String subId, @Path("userId") String userId);
  123. /**
  124. * ZD-A015: 离开提交
  125. */
  126. @POST("terminal/lab/onemachine/{code}/SignOut")
  127. Observable<CommonResponse> signOut(@Path("code") String code);
  128. /**
  129. * ZD-A016: 获取实验室一体机可控制设备
  130. */
  131. @POST("terminal/iot/onemachine/controller/list")
  132. Observable<CommonDataResponse<List<LotDeviceVo>>> controllerList(@Body LotDeviceReq param);
  133. /**
  134. * ZD-A017: 控制设备
  135. */
  136. @POST("terminal/iot/controlDevice/{id}/{command}")
  137. Observable<CommonResponse> sendControllerCMD(@Path("id") String id, @Path("command") String command);
  138. /**
  139. * ZD-A018: 实验室测点功能列表(首页-左侧看板)
  140. */
  141. @GET("terminal/iot/onemachine/{subId}/function/list")
  142. Observable<CommonDataResponse<List<LabBulletinBoardVo>>> functionList(@Path("subId") String subId);
  143. /**
  144. * ZD-A019: 实验室预警测点
  145. */
  146. @POST("terminal/lab/onemachine/{subId}/noAuthWarn")
  147. Observable<CommonDataResponse<List<LabWarnVo>>> warnList(@Path("subId") String subId);
  148. /**
  149. * ZD-A020: 人脸比对
  150. */
  151. @POST("terminal/sys/user/face/compare")
  152. Observable<CommonResponse> faceCompare(@Body FaceCompareReq param);
  153. /**
  154. * ZD-A021: 心跳
  155. */
  156. @GET("terminal/iot/monitor")
  157. Observable<CommonResponse> heartbeat(@Query("deviceNo") String deviceNo);
  158. /**
  159. * ZD-A022: 查询实验室安全制度列表
  160. */
  161. @POST("terminal/lab/safeBook/queryOptionList")
  162. Observable<CommonDataResponse<List<SafeBook>>> safeBookList(@Body SafetyListReq safetyListReq);
  163. /**
  164. * ZD-A023: 获取实验室安全制度详细信息
  165. */
  166. @GET("terminal/lab/safeBook/info/{id}")
  167. Observable<CommonDataResponse<SafeBook>> safeBookDetail(@Path("id") String id);
  168. /**
  169. * ZD-A024: 一体机查询危化品
  170. */
  171. @GET("chemical/aio/msds")
  172. Observable<CommonDataResponse<RecordsResponse<HazardBook>>> hazardBookList();
  173. /**
  174. * ZD-A025: 获取危化品安全技术说明书详细信息
  175. */
  176. @GET("chemical/aio/msdsDetails")
  177. Observable<CommonDataResponse<HazardBook>> hazardBookDetail(@Query("id") String id);
  178. /**
  179. * ZD-A026: 查询实验室在线人员
  180. */
  181. @POST("terminal/lab/sub/online/user")
  182. Observable<CommonRowsResponse<LabPersonVo>> onlineUser(@Body OnLineUserReq param);
  183. /**
  184. * ZD-A027: 实验室安全整改信息
  185. */
  186. @POST("terminal/lab/aioUnify/warningNoticeList")
  187. Observable<CommonDataResponse<RecordsResponse<CheckMachineVo>>> checkMachineMsgList(@Body SubIdReq param);
  188. /**
  189. * ZD-A029: 实验室文化图
  190. */
  191. @POST("terminal/lab/aioUnify/rotationList")
  192. Observable<CommonDataResponse<List<BannerImageBean>>> bannerImages(@Body BannerImageReq param);
  193. /**
  194. * ZD-A030: 文字转语音
  195. */
  196. @GET("terminal/iot/textParseVoiceUrl")
  197. Observable<CommonDataResponse<SpeakInfo>> textParseVideo(@Query("speed") String speed, @Query("volume") String volume, @Query("text") String text);
  198. /**
  199. * ZD-A031: 物联控制权限验证
  200. */
  201. @GET("terminal/lab/{subId}/LotInCheck/{username}")
  202. Observable<CommonDataResponse<String>> lotInCheck(@Path("subId") String subId, @Path("username") String username);
  203. /**
  204. * ZD-A032: 查询实验室配置
  205. */
  206. @GET("terminal/lab/getSubjectIdByNum/{deviceNum}")
  207. Observable<CommonDataResponse<LabConfig>> queryLabConfig(@Path("deviceNum") String deviceNum);
  208. /**
  209. * ZD-A033: 查询首页头部信息
  210. */
  211. @GET("terminal/lab/topInfo")
  212. Observable<CommonDataResponse<HomeTopResp>> homeTopInfo(@Query("labId") String labId);
  213. /**
  214. * ZD-A034: 查询首页中部信息
  215. */
  216. @GET("terminal/lab/middleInfo")
  217. Observable<CommonDataResponse<HomeMiddleResp>> homeMiddleInfo(@Query("labId") String labId);
  218. /**
  219. * ZD-A035: 查询首页右侧人员信息
  220. */
  221. @GET("terminal/lab/rightInfo")
  222. Observable<CommonDataResponse<HomeRightResp>> homeRightInfo(@Query("labId") String labId);
  223. /**
  224. * ZD-A036: 实验室介绍
  225. */
  226. @GET("terminal/lab/labIntro")
  227. Observable<CommonDataResponse<String>> labIntro(@Query("labId") String labId);
  228. /**
  229. * ZD-A037: 查询值班人员列表
  230. */
  231. @GET("terminal/lab/dutyUserList")
  232. Observable<CommonDataResponse<DutyPersonVo>> dutyUserList(@Query("labId") String labId, @Query("startTime") String startTime);
  233. /**
  234. * ZD-A038: 查询实验人员列表
  235. */
  236. @GET("terminal/lab/signUserList")
  237. Observable<CommonDataResponse<List<LabPersonVo>>> signUserList(@Query("labId") String labId);
  238. /**
  239. * ZD-A039: 查询准入人员列表
  240. */
  241. @GET("terminal/lab/securityUserList")
  242. Observable<CommonDataResponse<List<LabPersonVo>>> securityUserList(@Query("labId") String labId, @Query("pageNumber") int pageNumber, @Query("pageSize") int pageSize);
  243. /**
  244. * ZD-A040: 查询巡查人员列表
  245. */
  246. @GET("terminal/lab/inspectUserList")
  247. Observable<CommonDataResponse<DutyPersonVo>> inspectUserList(@Query("labId") String labId, @Query("startTime") String startTime);
  248. /**
  249. * ZD-A041: 视频监控
  250. */
  251. @POST("terminal/iot/findByCondition")
  252. Observable<CommonDataResponse<RecordsResponse<MonitorVo>>> cameraBySubjectId(@Body MonitorReq param);
  253. /**
  254. * ZD-A042: 获取准入人员的指纹信息列表
  255. */
  256. @GET("terminal/lab/getFingerList")
  257. Observable<CommonDataResponse<List<UserFingerVo>>> getFingerList(@Query("labId") String labId);
  258. /**
  259. * ZD-A043: 根据用户查询指纹列表
  260. */
  261. @GET("terminal/lab/getFingerByUserId")
  262. Observable<CommonDataResponse<List<UserFingerVo>>> getFingerByUserId(@Query("labId") String labId,
  263. @Query("userId") String userId);
  264. /**
  265. * ZD-A044: 指纹录入
  266. */
  267. @POST("terminal/lab/addUserFinger")
  268. Observable<CommonResponse> addUserFinger(@Body UserFingerVo param);
  269. /**
  270. * ZD-A045: 删除指纹
  271. */
  272. @GET("terminal/lab/deleteFingerById")
  273. Observable<CommonResponse> deleteFingerById(@Query("id") String id);
  274. /**
  275. * ZD-A046: 获取人像特征值
  276. */
  277. @Multipart
  278. @POST("terminal/sys/faceFeature")
  279. Observable<CommonDataResponse<String>> faceFeature(@Part MultipartBody.Part filePart);
  280. /**
  281. * ZD-A047: 人脸识别
  282. */
  283. @POST("terminal/lab/multiFaceDetection")
  284. Observable<CommonDataResponse<UserVo>> multiFaceDetection(@Body AuthFaceReq param);
  285. /**
  286. * ZD-A048: 刷卡验证
  287. */
  288. @GET("terminal/lab/cardValidate")
  289. Observable<CommonDataResponse<UserVo>> cardValidate(@Query("labId") String labId,
  290. @Query("cardNum") String cardNum);
  291. /**
  292. * ZD-A049: 密码验证
  293. */
  294. @GET("terminal/lab/pwdValidate")
  295. Observable<CommonDataResponse<UserVo>> pwdValidate(@Query("num") String num,
  296. @Query("labId") String labId,
  297. @Query("userId") String userId,
  298. @Query("pwd") String pwd);
  299. /**
  300. * ZD-A050: 校园卡是否能开启门禁
  301. */
  302. @GET("terminal/lab/getCardIsOpen")
  303. Observable<CommonDataResponse<UserVo>> getCardIsOpen(@Query("labId") String labId,
  304. @Query("cardNum") String cardNum);
  305. /**
  306. * ZD-A051: 巡查签到
  307. */
  308. @POST("terminal/lab/XxpInspection/addInspection/signIn")
  309. Observable<CommonResponse> signInWithPatrol(@Body PatrolSignInReq param);
  310. /**
  311. * ZD-A052: 巡查签退
  312. */
  313. @FormUrlEncoded
  314. @POST("terminal/lab/XxpInspection/addInspection/signOut")
  315. Observable<CommonResponse> signOutWithPatrol(@Field("labId") String labId,
  316. @Field("userId") String userId);
  317. /**
  318. * ZD-A053: 巡查签退/准入签退判断
  319. * 1-巡查 2-准入
  320. */
  321. @FormUrlEncoded
  322. @POST("terminal/lab/XxpInspection/isSignInType")
  323. Observable<CommonDataResponse<String>> isSignInType(@Field("labId") String labId,
  324. @Field("userId") String userId);
  325. /**
  326. * ZD-A054: 巡查签到前置校验
  327. */
  328. @FormUrlEncoded
  329. @POST("terminal/lab/XxpInspection/isSignInspection")
  330. Observable<CommonResponse> signInCheckWithPatrol(@Field("labId") String labId,
  331. @Field("userId") String userId);
  332. /**
  333. * ZD-A055: 滚动消息列表
  334. */
  335. @POST("terminal/sys/notice/list")
  336. Observable<CommonDataResponse<RecordsResponse<NoticeSummary>>> newMsgGroup(@Body NoticeReq param);
  337. /**
  338. * 鉴权
  339. */
  340. @POST("terminal/authorize")
  341. Observable<CommonDataResponse<String>> terminalAuth(@Body TerminalAuthReq param);
  342. }