APIService.java 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699
  1. package com.cooleshow.teacher.api;
  2. import com.common.im.bean.ContactRoomListBean;
  3. import com.cooleshow.base.data.net.BaseResponse;
  4. import com.cooleshow.teacher.bean.HomeLiveAndVideoBean;
  5. import com.cooleshow.teacher.bean.request.AssignHomeWorkEntry;
  6. import com.cooleshow.teacher.bean.request.CommentHomeWorkEntry;
  7. import com.cooleshow.teacher.bean.request.LiveCourseEntry;
  8. import com.cooleshow.teacher.bean.AccountDetailBean;
  9. import com.cooleshow.teacher.bean.AccountTotalBean;
  10. import com.cooleshow.teacher.bean.AddressBean;
  11. import com.cooleshow.teacher.bean.CountOfUnreadBean;
  12. import com.cooleshow.teacher.bean.CourseCommentListBean;
  13. import com.cooleshow.teacher.bean.CourseTableDataBean;
  14. import com.cooleshow.teacher.bean.HelpCenterContentBean;
  15. import com.cooleshow.teacher.bean.HomeCountBean;
  16. import com.cooleshow.teacher.bean.HomePageSheetMusicListBean;
  17. import com.cooleshow.teacher.bean.HomeworkListBean;
  18. import com.cooleshow.teacher.bean.LiveCourseListBean;
  19. import com.cooleshow.teacher.bean.LiveRoomInfoBean;
  20. import com.cooleshow.teacher.bean.MineLiveCourseListBean;
  21. import com.cooleshow.teacher.bean.MineVideoCourseListBean;
  22. import com.cooleshow.teacher.bean.MusicSheetListBean;
  23. import com.cooleshow.teacher.bean.MusicSheetShareBean;
  24. import com.cooleshow.teacher.bean.PayTestBean;
  25. import com.cooleshow.teacher.bean.PianoRoomCourseCommentBean;
  26. import com.cooleshow.teacher.bean.PianoRoomCourseHomeworkBean;
  27. import com.cooleshow.teacher.bean.PianoRoomCourseInfoBean;
  28. import com.cooleshow.teacher.bean.PianoRoomCourseListBean;
  29. import com.cooleshow.teacher.bean.QuerySubjectBean;
  30. import com.cooleshow.teacher.bean.ReceivedCommentListBean;
  31. import com.cooleshow.teacher.bean.ResponseBankCardBean;
  32. import com.cooleshow.teacher.bean.ResponseBindCardBean;
  33. import com.cooleshow.teacher.bean.ResponseUserBankCardBean;
  34. import com.cooleshow.teacher.bean.SparringCourseCommentBean;
  35. import com.cooleshow.teacher.bean.SparringCourseHomeworkBean;
  36. import com.cooleshow.teacher.bean.SparringCourseListBean;
  37. import com.cooleshow.teacher.bean.SystemMessageBean;
  38. import com.cooleshow.teacher.bean.TeachableInstrumentBean;
  39. import com.cooleshow.teacher.bean.TeacherSelfStyleInfoBean;
  40. import com.cooleshow.teacher.bean.TeacherUserInfo;
  41. import com.cooleshow.teacher.bean.UserAccountBean;
  42. import com.cooleshow.teacher.bean.VideoCourseListBean;
  43. import com.cooleshow.teacher.bean.WithdrawalInfoBean;
  44. import com.cooleshow.teacher.bean.WithdrawalRecordBean;
  45. import com.cooleshow.teacher.bean.request.QueryGroupListEntry;
  46. import com.cooleshow.teacher.bean.request.SheetMusicEntry;
  47. import com.cooleshow.teacher.bean.request.SysSuggestionEntry;
  48. import com.cooleshow.teacher.bean.request.TeacherPracticeCourseEntry;
  49. import com.cooleshow.teacher.bean.request.UnBindCardEntry;
  50. import com.cooleshow.usercenter.bean.SetDetailBean;
  51. import com.cooleshow.usercenter.bean.UserInfo;
  52. import java.util.List;
  53. import java.util.Map;
  54. import io.reactivex.rxjava3.core.Observable;
  55. import okhttp3.RequestBody;
  56. import okhttp3.ResponseBody;
  57. import retrofit2.http.Body;
  58. import retrofit2.http.FieldMap;
  59. import retrofit2.http.FormUrlEncoded;
  60. import retrofit2.http.GET;
  61. import retrofit2.http.Headers;
  62. import retrofit2.http.POST;
  63. import retrofit2.http.Path;
  64. import retrofit2.http.Query;
  65. import retrofit2.http.Streaming;
  66. import retrofit2.http.Url;
  67. import static com.cooleshow.base.common.BaseConstant.AUTH_GROUP;
  68. import static com.cooleshow.base.common.BaseConstant.CMS_SERVER;
  69. import static com.cooleshow.base.common.BaseConstant.MALL_PORTAL_SERVER;
  70. import static com.cooleshow.base.common.BaseConstant.STUDENT_GROUP;
  71. import static com.cooleshow.base.common.BaseConstant.TEACHER_GROUP;
  72. /**
  73. * Author by pq, Date on 2022/4/21.
  74. */
  75. public interface APIService {
  76. /**
  77. * 根据月份获取老师该月有课的日期
  78. *
  79. * @param
  80. * @return
  81. */
  82. @POST(TEACHER_GROUP + "courseSchedule/queryCourseSchedule")
  83. Observable<BaseResponse<List<String>>> getCourseScheduleDateByMonth(@Body RequestBody body);
  84. /**
  85. * 根据日期获取老师当日排课
  86. *
  87. * @param
  88. * @return
  89. */
  90. @POST(TEACHER_GROUP + "courseSchedule/queryCourseUser")
  91. Observable<BaseResponse<CourseTableDataBean>> getCourseSchedulesWithDate(@Body RequestBody body);
  92. /**
  93. * 调课(陪练课调整时间)
  94. *
  95. * @param
  96. * @return
  97. */
  98. @POST(TEACHER_GROUP + "courseSchedule/courseAdjust")
  99. Observable<BaseResponse<Object>> updateCourseDate(@Body RequestBody body);
  100. /**
  101. * 查询陪练课
  102. *
  103. * @param
  104. * @return
  105. */
  106. @POST(TEACHER_GROUP + "courseSchedule/queryTeacherPracticeCourse")
  107. Observable<BaseResponse<SparringCourseListBean>> getSparringCourses(@Body TeacherPracticeCourseEntry body);
  108. /**
  109. * 获取声部搜索下拉框
  110. *
  111. * @return
  112. */
  113. @POST(TEACHER_GROUP + "teacher/querySubjectItem")
  114. Observable<BaseResponse<List<QuerySubjectBean>>> querySubjectItem();
  115. /**
  116. * 查询琴房课列表
  117. *
  118. * @param
  119. * @return
  120. */
  121. @POST(TEACHER_GROUP + "courseSchedule/selectCourseList")
  122. Observable<BaseResponse<PianoRoomCourseListBean>> getPianoRoomCourseList(@Body RequestBody body);
  123. /**
  124. * 获取直播课信息
  125. * @return
  126. */
  127. @GET(TEACHER_GROUP + "courseSchedule/queryLiveAndVideo")
  128. Observable<BaseResponse<HomeLiveAndVideoBean>> queryLiveAndVideo();
  129. /**
  130. * 查询陪练课作业信息
  131. *
  132. * @param
  133. * @return
  134. */
  135. @GET(TEACHER_GROUP + "homework/detail/{courseId}/{studentId}")
  136. Observable<BaseResponse<SparringCourseHomeworkBean>> getSparringCourseHomework(@Path("courseId") String courseId, @Path("studentId") String studentId);
  137. /**
  138. * 查询琴房课作业信息
  139. *
  140. * @param
  141. * @return
  142. */
  143. @POST(TEACHER_GROUP + "homework/detail/list")
  144. Observable<BaseResponse<PianoRoomCourseInfoBean>> getPianoRoomCourseHomework(@Body RequestBody body);
  145. /**
  146. * 查询琴房课作业信息
  147. *
  148. * @param
  149. * @return
  150. */
  151. @GET(TEACHER_GROUP + "homework/detail/{courseId}/{studentId}")
  152. Observable<BaseResponse<PianoRoomCourseHomeworkBean>> getPianoRoomCourseHomework(@Path("courseId") String courseId, @Path("studentId") String studentId);
  153. /**
  154. * 查询课程评价信息
  155. *
  156. * @param
  157. * @return
  158. */
  159. @POST(TEACHER_GROUP + "courseReplied/selectReplied")
  160. Observable<BaseResponse<SparringCourseCommentBean>> getSparringCourseComment(@Body RequestBody body);
  161. /**
  162. * 查询琴房课评价信息
  163. *
  164. * @param
  165. * @return
  166. */
  167. @POST(TEACHER_GROUP + "courseReplied/selectReplied")
  168. Observable<BaseResponse<PianoRoomCourseCommentBean>> getPianoRoomCourseComment(@Body RequestBody body);
  169. /**
  170. * 提交琴房课老师布置作业
  171. *
  172. * @param
  173. * @return
  174. */
  175. @POST(TEACHER_GROUP + "homework/decorate")
  176. Observable<BaseResponse<Object>> submitPianoRoomCourseHomework(@Body RequestBody body);
  177. /**
  178. * 提交琴房课老师作业点评
  179. *
  180. * @param
  181. * @return
  182. */
  183. @POST(TEACHER_GROUP + "homework/review")
  184. Observable<BaseResponse<Object>> submitPianoRoomCourseHomeworkComment(@Body RequestBody body);
  185. /**
  186. * 提交陪练课老师评价
  187. *
  188. * @param
  189. * @return
  190. */
  191. @POST(TEACHER_GROUP + "courseReplied/replied")
  192. Observable<BaseResponse<Object>> submitSparringCourseComment(@Body RequestBody body);
  193. /**
  194. * 提交陪练课老师布置作业
  195. *
  196. * @param
  197. * @return
  198. */
  199. @POST(TEACHER_GROUP + "homework/decorate")
  200. Observable<BaseResponse<Object>> submitSparringCourseHomework(@Body AssignHomeWorkEntry body);
  201. /**
  202. * 提交陪练课老师作业点评
  203. *
  204. * @param
  205. * @return
  206. */
  207. @POST(TEACHER_GROUP + "homework/review")
  208. Observable<BaseResponse<Object>> submitSparringCourseHomeworkComment(@Body CommentHomeWorkEntry body);
  209. /**
  210. * 查询直播课
  211. *
  212. * @param
  213. * @return
  214. */
  215. @POST(TEACHER_GROUP + "courseSchedule/queryTeacherLiveCourse")
  216. Observable<BaseResponse<LiveCourseListBean>> getLiveCourses(@Body RequestBody body);
  217. /**
  218. * 查询视频课
  219. *
  220. * @param
  221. * @return
  222. */
  223. @POST(TEACHER_GROUP + "videoLessonGroup/page")
  224. Observable<BaseResponse<VideoCourseListBean>> getVideoCourses(@Body RequestBody body);
  225. /**
  226. * 查询个人信息
  227. *
  228. * @param
  229. * @return
  230. */
  231. @GET(AUTH_GROUP + "api/queryUserInfo")
  232. Observable<BaseResponse<UserInfo>> getUserInfo();
  233. /**
  234. * 查询老师个人信息
  235. *
  236. * @param
  237. * @return
  238. */
  239. @GET(TEACHER_GROUP + "teacher/queryUserInfo")
  240. Observable<BaseResponse<TeacherUserInfo>> getTeacherUserInfo();
  241. /**
  242. * 查询老师个人风采
  243. *
  244. * @param
  245. * @return
  246. */
  247. @GET(TEACHER_GROUP + "teacher/queryTeacherStyle")
  248. Observable<BaseResponse<TeacherSelfStyleInfoBean>> getTeacherSelfStyle();
  249. /**
  250. * 群列表-老师
  251. *
  252. * @return
  253. */
  254. @POST(TEACHER_GROUP + "imGroup/queryAll")
  255. Observable<BaseResponse<List<ContactRoomListBean>>> queryTeaGroupList(@Body QueryGroupListEntry requestBody);
  256. /**
  257. * 查询我收到的评价
  258. *
  259. * @param
  260. * @return
  261. */
  262. @POST(TEACHER_GROUP + "courseReplied/myReplied")
  263. Observable<BaseResponse<ReceivedCommentListBean>> getReceivedComment(@Body RequestBody body);
  264. /**
  265. * 查询课后评价
  266. *
  267. * @param
  268. * @return
  269. */
  270. @POST(TEACHER_GROUP + "courseSchedule/queryTeacherPracticeCourse")
  271. Observable<BaseResponse<CourseCommentListBean>> getCourseCommentList(@Body RequestBody body);
  272. /**
  273. * 查询课后评价
  274. *
  275. * @param
  276. * @return
  277. */
  278. @POST(TEACHER_GROUP + "music/sheet/list")
  279. Observable<BaseResponse<HomePageSheetMusicListBean>> getSheetMusicList(@Body SheetMusicEntry body);
  280. /**
  281. * 乐器列表查询
  282. *
  283. * @return
  284. */
  285. @GET(TEACHER_GROUP + "subject/subjectSelect")
  286. Observable<BaseResponse<List<TeachableInstrumentBean>>> subjectSelect();
  287. /**
  288. * 我的-个人风采保存
  289. *
  290. * @param body
  291. * @return
  292. */
  293. @POST(TEACHER_GROUP + "teacher/saveTeacherStyle")
  294. Observable<BaseResponse<TeacherSelfStyleInfoBean>> saveTeacherStyle(@Body RequestBody body);
  295. /**
  296. * 获取设置详情
  297. *
  298. * @return
  299. */
  300. @GET(AUTH_GROUP + "user/getSetDetail")
  301. Observable<BaseResponse<SetDetailBean>> getSetDetail();
  302. /**
  303. * 修改设置信息
  304. *
  305. * @param body
  306. * @return
  307. */
  308. @POST(AUTH_GROUP + "user/submitSetDetail")
  309. Observable<BaseResponse<SetDetailBean>> submitSetDetail(@Body RequestBody body);
  310. /**
  311. * 校验用户手机号和密码
  312. *
  313. * @param phone
  314. * @param password
  315. * @return
  316. */
  317. @GET(AUTH_GROUP + "user/checkUser")
  318. Observable<BaseResponse<Object>> checkUser(@Query("phone") String phone, @Query("password") String password);
  319. /**
  320. * 修改手机号
  321. *
  322. * @param authCode
  323. * @param newPhone
  324. * @param oldPhone
  325. * @return
  326. */
  327. @GET(AUTH_GROUP + "user/updatePhone")
  328. Observable<BaseResponse<Object>> updatePhone(@Query("authCode") String authCode, @Query("newPhone") String newPhone, @Query("oldPhone") String oldPhone);
  329. /**
  330. * 手机验证码修改密码
  331. *
  332. * @return
  333. */
  334. @FormUrlEncoded
  335. @POST(AUTH_GROUP + "user/updatePassword")
  336. Observable<BaseResponse<Object>> updatePassword(@FieldMap Map<String, String> params);
  337. /**
  338. * 发送登录短信验证码
  339. *
  340. * @param body mobile 手机号
  341. * type:类型(PASSWD:修改密码,LOGIN:登录或注册,BANK:绑定银行卡,PHONE:修改手机号)
  342. * @return
  343. */
  344. @POST(TEACHER_GROUP + "code/sendSmsCode")
  345. Observable<BaseResponse<Object>> sendSmsCode(@Body RequestBody body);
  346. /**
  347. * 校验短信验证码
  348. *
  349. * @param body mobile 手机号
  350. * type:类型(PASSWD:修改密码,LOGIN:登录或注册,BANK:绑定银行卡,PHONE:修改手机号)
  351. * @return
  352. */
  353. @POST(TEACHER_GROUP + "code/verifySmsCode")
  354. Observable<BaseResponse<Object>> verifySmsCode(@Body RequestBody body);
  355. /**
  356. * 实名认证
  357. *
  358. * @param body
  359. * @return
  360. */
  361. @POST(AUTH_GROUP + "user/realNameAuth")
  362. Observable<BaseResponse<Object>> realNameAuth(@Body RequestBody body);
  363. /**
  364. * 获取所有收货地址
  365. *
  366. * @return
  367. */
  368. @GET(MALL_PORTAL_SERVER + "member/address/list")
  369. Observable<BaseResponse<List<AddressBean>>> companyAddressList();
  370. /**
  371. * 添加收货地址
  372. *
  373. * @param body
  374. * @return
  375. */
  376. @POST(MALL_PORTAL_SERVER + "member/address/add")
  377. Observable<BaseResponse<Object>> createNewAddress(@Body RequestBody body);
  378. /**
  379. * 修改地址
  380. *
  381. * @param id
  382. * @param body
  383. * @return
  384. */
  385. @POST(MALL_PORTAL_SERVER + "member/address/update/{id}")
  386. Observable<BaseResponse<Object>> updateAddress(@Path("id") int id, @Body RequestBody body);
  387. /**
  388. * 意见反馈
  389. *
  390. * @param body
  391. * @return
  392. */
  393. @FormUrlEncoded
  394. @POST(TEACHER_GROUP + "sysSuggestion/add")
  395. Observable<BaseResponse<Object>> addSuggestion(@FieldMap Map<String, String> params);
  396. /**
  397. * 银行卡查询
  398. *
  399. * @param body
  400. * @return
  401. */
  402. @POST(TEACHER_GROUP + "userBankCard/page")
  403. Observable<BaseResponse<ResponseBankCardBean>> queryUserBankCard(@Body RequestBody body);
  404. /**
  405. * 用户绑卡
  406. *
  407. * @param body
  408. * @return
  409. */
  410. @POST(TEACHER_GROUP + "userBankCard/bankCard")
  411. Observable<BaseResponse<ResponseBindCardBean>> bindBankCard(@Body RequestBody body);
  412. /**
  413. * 用户解绑银行卡
  414. *
  415. * @param entry
  416. * @return
  417. */
  418. @POST(TEACHER_GROUP + "userBankCard/unBind")
  419. Observable<BaseResponse<ResponseBindCardBean>> unbindBankCard(@Body UnBindCardEntry entry);
  420. /**
  421. * 查询银行
  422. *
  423. * @return
  424. */
  425. @POST(TEACHER_GROUP + "userBankCard/bankList")
  426. Observable<BaseResponse<List<ResponseUserBankCardBean>>> userBankCard();
  427. /**
  428. * 分页查询直播课课程组列表
  429. *
  430. * @param body
  431. * @return
  432. */
  433. @POST(TEACHER_GROUP + "courseGroup/queryPageCourseGroup")
  434. Observable<BaseResponse<MineLiveCourseListBean>> queryPageCourseGroup(@Body LiveCourseEntry body);
  435. /**
  436. * 查询视频课
  437. *
  438. * @param body
  439. * @return
  440. */
  441. @POST(TEACHER_GROUP + "videoLesson/page")
  442. Observable<BaseResponse<MineVideoCourseListBean>> queryVideoCourseGroup(@Body RequestBody body);
  443. /**
  444. * 分页查询分页查询
  445. *
  446. * @param body
  447. * @return
  448. */
  449. @POST(TEACHER_GROUP + "music/sheet/list")
  450. Observable<BaseResponse<MusicSheetListBean>> queryMusicList(@Body RequestBody body);
  451. /**
  452. * 乐谱分享
  453. *
  454. * @return
  455. */
  456. @GET(TEACHER_GROUP + "music/sheet/share")
  457. Observable<BaseResponse<MusicSheetShareBean>> musicSheetShare();
  458. /**
  459. * 课后作业
  460. *
  461. * @param body
  462. * @return
  463. */
  464. @POST(TEACHER_GROUP + "homework/list")
  465. Observable<BaseResponse<HomeworkListBean>> queryHomeworkList(@Body RequestBody body);
  466. /**
  467. * 我的收入
  468. *
  469. * @return
  470. */
  471. @GET(TEACHER_GROUP + "userAccount/detail")
  472. Observable<BaseResponse<AccountDetailBean>> getUserAccountDetail();
  473. /**
  474. * 收入列表
  475. *
  476. * @param body
  477. * @return
  478. */
  479. @POST(TEACHER_GROUP + "userAccount/page")
  480. Observable<BaseResponse<UserAccountBean>> userAccountPage(@Body RequestBody body);
  481. /**
  482. * 查询结算页面信息
  483. *
  484. * @return
  485. */
  486. @POST(TEACHER_GROUP + "userWithdrawal/getWithdrawalInfo")
  487. Observable<BaseResponse<WithdrawalInfoBean>> getWithdrawalInfo();
  488. /**
  489. * 发起结算
  490. *
  491. * @param body
  492. * @return
  493. */
  494. @POST(TEACHER_GROUP + "userWithdrawal/withdrawal")
  495. Observable<BaseResponse<Object>> doWithdrawal(@Body RequestBody body);
  496. /**
  497. * 结算记录
  498. *
  499. * @param body
  500. * @return
  501. */
  502. @POST(TEACHER_GROUP + "userWithdrawal/withdrawalPage")
  503. Observable<BaseResponse<WithdrawalRecordBean>> getWithdrawalPage(@Body RequestBody body);
  504. /**
  505. * 获取所有消息列表
  506. *
  507. * @param body
  508. * @return
  509. */
  510. @POST(TEACHER_GROUP + "sysMessage/list")
  511. Observable<BaseResponse<SystemMessageBean>> sysMessageList(@Body RequestBody body);
  512. /**
  513. * 一键已读
  514. *
  515. * @return
  516. */
  517. @POST(TEACHER_GROUP + "sysMessage/batchSetRead")
  518. Observable<BaseResponse<Object>> batchSetRead();
  519. /**
  520. * 设置已读
  521. *
  522. * @return
  523. */
  524. @POST(TEACHER_GROUP + "sysMessage/setRead/{id}")
  525. Observable<BaseResponse<Object>> setCurrentRead(@Path("id") long id);
  526. /**
  527. * 查询用户未读消息条数
  528. *
  529. * @return
  530. */
  531. @GET(TEACHER_GROUP + "sysMessage/queryCountOfUnread")
  532. Observable<BaseResponse<List<CountOfUnreadBean>>> queryCountOfUnread();
  533. /**
  534. * 首页统计数据
  535. *
  536. * @return
  537. */
  538. @GET(TEACHER_GROUP + "home/count")
  539. Observable<BaseResponse<HomeCountBean>> getHomeCount();
  540. /**
  541. * 测试订单支付
  542. *
  543. * @return
  544. */
  545. @POST(STUDENT_GROUP + "userOrder/orderPay")
  546. Observable<BaseResponse<PayTestBean>> orderPay(@Body RequestBody body);
  547. /**
  548. * 首页统计数据
  549. *
  550. * @return
  551. */
  552. @POST(CMS_SERVER + "helpCenterContent/list")
  553. Observable<BaseResponse<HelpCenterContentBean>> helpCenterContentList(@Body RequestBody body);
  554. /**
  555. * @param body
  556. * @return
  557. */
  558. @POST(TEACHER_GROUP + "userAccount/accountTotal")
  559. Observable<BaseResponse<AccountTotalBean>> accountTotal(@Body RequestBody body);
  560. /**
  561. * 创建临时直播间
  562. *
  563. * @return
  564. */
  565. @POST(TEACHER_GROUP + "liveRoom/createTempLiveRoom")
  566. Observable<BaseResponse<String>> createLiveRoom(@Body RequestBody body);
  567. /**
  568. * 查询直播房间信息
  569. *
  570. * @return
  571. */
  572. @GET(TEACHER_GROUP + "liveRoom/speakerCheckRoomInfo")
  573. Observable<BaseResponse<LiveRoomInfoBean>> getLiveRoomInfo(@Query("roomUid") String roomUid);
  574. /**
  575. * 文件下载
  576. *
  577. * @return
  578. */
  579. @Streaming
  580. @GET
  581. @Headers("User-Agent:Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:0.9.4)")
  582. Observable<ResponseBody> downloadFileWithFixedUrl(@Url String url);
  583. /**
  584. * 通知加入直播房间成功
  585. *
  586. * @return
  587. */
  588. @GET(TEACHER_GROUP + "liveRoom/speakerJoinRoom")
  589. Observable<BaseResponse<Object>> notifyJoinRoomAction(@Query("roomUid") String roomUid, @Query("userId") String userId);
  590. /**
  591. * 通知离开直播房间
  592. *
  593. * @return
  594. */
  595. @POST(TEACHER_GROUP+"liveRoom/syncUserStatus")
  596. Observable<BaseResponse<Object>> notifyLeaveRoomAction(@Body RequestBody body);
  597. /**
  598. * 通知(关闭/开启)直播录像
  599. *
  600. * @return type 1:开始直播-开始录像 2:关闭直播关闭录像
  601. */
  602. @GET(TEACHER_GROUP + "imLiveBroadcastRoom/opsLiveVideo")
  603. Observable<BaseResponse<Object>> notifyOpenOpsLiveVideoAction(@Query("roomUid") String roomUid, @Query("type") String type, @Query("userId") String userId,@Query("videoResolution") String videoResolution);
  604. /**
  605. * 关闭直播间
  606. *
  607. * @return
  608. */
  609. @GET(TEACHER_GROUP + "liveRoom/destroyLiveRoom")
  610. Observable<BaseResponse<Object>> notifyCloseLiveRoomAction(@Query("roomUid") String roomUid);
  611. /**
  612. * 同步点赞数量
  613. *
  614. * @return
  615. */
  616. @GET(TEACHER_GROUP + "liveRoom/syncLike")
  617. Observable<BaseResponse<Object>> syncAddLikeNum(@Query("likeNum") String likeNum, @Query("roomUid") String roomUid);
  618. }