ApiService.java 14 KB

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