MyServer.java
16.7 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
package com.hh.xuetubao;
import com.hh.xuetubao.bean.AddressBean;
import com.hh.xuetubao.bean.AnswerBean;
import com.hh.xuetubao.bean.BdPhoneBean;
import com.hh.xuetubao.bean.CertListBean;
import com.hh.xuetubao.bean.ChapterLstBean;
import com.hh.xuetubao.bean.CompanyBean;
import com.hh.xuetubao.bean.CompanyDetailBean;
import com.hh.xuetubao.bean.CompanySearchBody;
import com.hh.xuetubao.bean.CourseDetailInfoBean;
import com.hh.xuetubao.bean.DoExerciseBean;
import com.hh.xuetubao.bean.FreeCourseBean;
import com.hh.xuetubao.bean.HotJobBean;
import com.hh.xuetubao.bean.JobSearchBody;
import com.hh.xuetubao.bean.LearningRecordDataBean;
import com.hh.xuetubao.bean.MsgListBean;
import com.hh.xuetubao.bean.MyLearningInfoBean;
import com.hh.xuetubao.bean.OfficeDetailBean;
import com.hh.xuetubao.bean.PQbean;
import com.hh.xuetubao.bean.QuestionBankLstBean;
import com.hh.xuetubao.bean.ResumeDetailBean;
import com.hh.xuetubao.bean.ResumedJobListBean;
import com.hh.xuetubao.bean.TranscriptBean;
import com.hh.xuetubao.bean.UserBean;
import io.reactivex.Observable;
import retrofit2.http.Body;
import retrofit2.http.Field;
import retrofit2.http.FormUrlEncoded;
import retrofit2.http.GET;
import retrofit2.http.POST;
import retrofit2.http.Query;
public interface MyServer {
/**
* 学习首页-获取免费课程列表接口
*
* @param pageIndex
* @param pageSize
* @return
*/
@GET("GetFreeLessonsLst")
Observable<FreeCourseBean> getFreeLessonsLst(@Query("pageIndex") int pageIndex, @Query("pageSize") int pageSize);
/**
* 练习目录接口
*
* @return
*/
@GET("GetCatalogLst")
Observable<DoExerciseBean> getCatalogLst();
/**
* 1.3获取认证课程列表接口
*
* @param accountOid 当前用户OID
* @param catalogOid 认证目录OID
* @return
*/
@GET("GetLessonLstByCatalogOid")
Observable<FreeCourseBean> getLessonLstByCatalogOid(@Query("accountOid") String accountOid, @Query("catalogOid") String catalogOid);
/**
* 课程详情接口
*
* @param lessonOid 课程ID
* @return
*/
@GET("GetCourseDetailInfo")
Observable<CourseDetailInfoBean> GetCourseDetailInfo(@Query("lessonOid") String lessonOid);
/**
* 课程目录接口
*
* @param accountOid 用户ID
* @param lessonOid 课程ID
* @return
*/
@GET("GetChapterLstByLessonOid")
Observable<ChapterLstBean> GetChapterLstByLessonOid(@Query("accountOid") String accountOid, @Query("lessonOid") String lessonOid);
/**
* 保存学习进度接口
*
* @param accountOid 用户ID
* @param currentLessonOid 当前资源所在课程IDGetCourseDetailInfo
* @param currentChapterOid 当前资源所在章ID
* @param currentSectionOid 当前资源所在节ID
* @param currentResourceOid 当前资源ID
* @param currentDuration 当前这次视频累计播放时间
* @param currentProgress 当前视频进度条的进度
* @param currentTotalLen 当前视频总时长
* @return
*/
@POST("InsertLearningProgress")
Observable<UserBean> InsertLearningProgress(@Query("accountOid") String accountOid, @Query("currentLessonOid") String currentLessonOid,
@Query("currentChapterOid") String currentChapterOid, @Query("currentSectionOid") String currentSectionOid,
@Query("currentResourceOid") String currentResourceOid, @Query("currentDuration") int currentDuration,
@Query("currentProgress") int currentProgress, @Query("currentTotalLen") int currentTotalLen);
/**
* 我的学习-用户信息接口 accountOid 用户ID
*
* @param accountOid 用户ID
* @return
*/
@GET("GetMyLearningInfo")
Observable<MyLearningInfoBean> GetMyLearningInfo(@Query("accountOid") String accountOid);
/**
* 我的学习-柱状图数据接口
*
* @param accountOid 用户ID
* @return
*/
@GET("GetLearningDurationChartData")
Observable<UserBean> GetLearningDurationChartData(@Query("accountOid") String accountOid);
/**
* 我的学习-学习记录列表接口
*
* @param accountOid 用户ID
* @param pageIndex
* @param pageSize
* @return
*/
@GET("GetLearningRecordData")
Observable<LearningRecordDataBean> GetLearningRecordData(@Query("accountOid") String accountOid, @Query("pageIndex") int pageIndex, @Query("pageSize") int pageSize);
/**
* 1.1发送验证码接口
*
* @param mobileNumber
* @param type 0:手机和验证码登录时发送,1:微信或手机号码绑定时发送
* @return
*/
@GET("SendValidateCode")
Observable<UserBean> sendValidateCode(@Query("mobileNumber") String mobileNumber, @Query("type") int type);
/**
* 手机验证码登录接口
*
* @param mobileNumber
* @param verCode 验证码
* @return
*/
@GET("MobileLogin")
Observable<UserBean> mobileLogin(@Query("mobileNumber") String mobileNumber, @Query("verCode") String verCode);
/**
* 微信绑定手机
*
* @param OpenId
* @param phone
* @param verCode
* @return
*/
@FormUrlEncoded
@POST("SaveWxBinding")
Observable<BdPhoneBean> bd_phone(@Field("wxOpenId") String OpenId, @Field("mobileNumber") String phone, @Field("verCode") String verCode);
/**
* 微信登录接口
*
* @param wxOpenId 微信用户的OpenId
* @return
*/
@GET("WeixinLogin")
Observable<UserBean> WeixinLogin(@Query("wxOpenId") String wxOpenId);
/**
* 微信登录绑定接口
*
* @param wxOpenId 微信用户的OpenId
* @param mobileNumber 手机号码
* @param verCode 验证码
* @return
*/
@GET("SaveWxBinding")
Observable<UserBean> SaveWxBinding(@Query("wxOpenId") String wxOpenId, @Query("mobileNumber") String mobileNumber, @Query("verCode") String verCode);
/**
* 账号密码登录接口
*
* @param account 账号
* @param password 密码
* @return
*/
@GET("AccountLogin")
Observable<UserBean> AccountLogin(@Query("account") String account, @Query("password") String password);
/**
* 手机号码绑定接口
*
* @param account 用户账号
* @param mobileNumber 手机号码
* @param verCode 验证码
* @return
*/
@POST("SaveAccountBinding")
Observable<UserBean> SaveAccountBinding(@Query("account") String account, @Query("mobileNumber") String mobileNumber, @Query("verCode") String verCode);
/**
* 获取热门课程列表接口
*
* @param num 获取的数量
* @return
*/
@GET("GetHotLessonLst")
Observable<FreeCourseBean> GetHotLessonLst(@Query("num") int num);
/**
* 获取题库列表接口
*
* @param num 获取的数量
* @return
*/
@GET("GetQuestionBankLst")
Observable<QuestionBankLstBean> GetQuestionBankLst(@Query("num") int num);
/**
* 热门企业列表接口
*
* @param Count 查询数量
* @return
*/
@GET("HotCompanyList")
Observable<CompanyBean> HotCompanyList(@Query("Count") int Count);
/**
* 热门职位列表接口
*
* @param Count
* @return
*/
@GET("HotJobList")
Observable<HotJobBean> HotJobList(@Query("Count") int Count);
/**
* 查询职位列表接口
*
* @param jobSearchBody
* @return
*/
@POST("JobSearch")
Observable<HotJobBean> JobSearch(@Body JobSearchBody jobSearchBody);
/**
* 查询企业列表接口
*
* @param jobSearchBody
* @return
*/
@POST("CompanySearch")
Observable<CompanyBean> CompanySearch(@Body CompanySearchBody jobSearchBody);
/**
* 职位详情接口
*
* @param JobOid 职位ID
* @param AccountOid 用户ID
* @return
*/
@GET("JobDetailInfo")
Observable<OfficeDetailBean> JobDetailInfo(@Query("JobOid") String JobOid, @Query("AccountOid") String AccountOid);
/**
* 企业详情接口
*
* @param CompanyOid 职位ID
* @return
*/
@GET("CompanyDetailInfo")
Observable<CompanyDetailBean> CompanyDetailInfo(@Query("CompanyOid") String CompanyOid);
/**
* 获取默认图片接口
*
* @param ImgType 可选参数:HeadPic(头像图片),CoverPic(封面图片)
* @return
*/
@GET("GetDefaultPic")
Observable<UserBean> GetDefaultPic(@Query("ImgType") String ImgType);
/**
* 获取个人中心头部信息接口
*
* @param AccountOid 用户ID
* @return
*/
@GET("GetHeadInfo")
Observable<UserBean> GetHeadInfo(@Query("AccountOid") String AccountOid);
/**
* 获取基本信息接口
*
* @param AccountOid
* @return
*/
@GET("UserInfo")
Observable<UserBean> UserInfo(@Query("AccountOid") String AccountOid);
/**
* 修改基本信息接口
*
* @param AccountOid 用户ID
* @param UpdateType 修改类型,可选参数为:UserName,Sex,Company,WebSite
* @param Value 修改值,当类型为Sex时,男为0,女为1,当类型是WebSite时,应传入URL绝对路径
* @return
*/
@POST("UpdateUserInfo")
Observable<UserBean> UpdateUserInfo(@Query("AccountOid") String AccountOid, @Query("UpdateType") String UpdateType, @Query("Value") String Value);
/**
* 获取消息列表接口
*
* @param AccountOid 用户ID
* @param MsgType 消息类型,可选参数 系统消息:System,互动消息:Interaction
* @param Page
* @param PageSize
* @return
*/
@POST("MsgList")
Observable<MsgListBean> MsgList(@Query("AccountOid") String AccountOid, @Query("MsgType") String MsgType, @Query("Page") int Page, @Query("PageSize") int PageSize);
/**
* 变更消息已读状态接口
*
* @param MsgOid 消息ID
* @return
*/
@POST("SetNewsStatusByRead")
Observable<UserBean> SetNewsStatusByRead(@Query("MsgOid") String MsgOid);
/**
* 获取消息内容接口
*
* @param MsgOid 消息ID
* @return
*/
@GET("GetMsgContent")
Observable<UserBean> GetMsgContent(@Query("MsgOid") String MsgOid);
/**
* 获取未读消息数量接口
*
* @param AccountOid
* @return
*/
@GET("GetUserUnReadMsgCount")
Observable<UserBean> GetUserUnReadMsgCount(@Query("AccountOid") String AccountOid);
/**
* 获取PQ币数量接口
*
* @param AccountOid
* @return
*/
@GET("GetUserPQCoin")
Observable<UserBean> GetUserPQCoin(@Query("AccountOid") String AccountOid);
/**
* 获取简历信息接口
*
* @param AccountOid
* @return
*/
@POST("ResumeDetailInfo")
Observable<ResumeDetailBean> ResumeDetailInfo(@Query("AccountOid") String AccountOid);
/**
* 已投递职位列表接口
*
* @param Page
* @param PageSize
* @param AccountOid
* @return
*/
@POST("ResumedJobList")
Observable<ResumedJobListBean> ResumedJobList(@Query("Page") int Page, @Query("PageSize") int PageSize, @Query("AccountOid") String AccountOid);
/**
* 获取用户认证证书列表接口
*
* @param AccountOid
* @param Page
* @param PageSize
* @return
*/
@GET("UserCertList")
Observable<CertListBean> UserCertList(@Query("AccountOid") String AccountOid, @Query("Page") int Page, @Query("PageSize") int PageSize);
/**
* 获取PQ币历史列表接口
*
* @param AccountOid
* @param searchType 可选参数 收入:Incoming,支出:Payout。不填、空字符串或者null为全部
* @param Page
* @param PageSize
* @return
*/
@GET("PQCoinRecord")
Observable<PQbean> PQCoinRecord(@Query("AccountOid") String AccountOid, @Query("searchType") String searchType, @Query("Page") int Page, @Query("PageSize") int PageSize);
/**
* 一键投递接口
*
* @param JobOids 职位ID字符串,多个时中间逗号分隔
* @param ResumeOid 要投递的简历的唯一ID
* @return
*/
@POST("SubmitResume")
Observable<UserBean> SubmitResume(@Query("JobOids") String JobOids, @Query("ResumeOid") String ResumeOid);
/**
* 企业职位列表接口
*
* @param Count 数量
* @param CompanyOid 公司ID
* @param IsUnResumed 是否仅查询未投递简历的职位,True时仅查询未投递简历的职位,false时查询全部职位
* @param ResumeOid 简历唯一ID
* @return
*/
@GET("CompanyJobList")
Observable<HotJobBean> CompanyJobList(@Query("Count") int Count, @Query("CompanyOid") String CompanyOid, @Query("IsUnResumed") boolean IsUnResumed, @Query("ResumeOid") String ResumeOid);
/**
* 获取省份列表接口
*
* @param IsAll 当为true时,返回列表会包含,”不限”这一项
* @return
*/
@GET("GetProvinceList")
Observable<AddressBean> GetProvinceList(@Query("IsAll") boolean IsAll);
/**
* 获取城市列表接口
*
* @param ProvinceId 省份唯一id
* @param IsAll 当为true时,返回列表会包含,”不限”这一项
* @return
*/
@GET("GetCityListByProvince")
Observable<AddressBean> GetCityListByProvince(@Query("ProvinceId") String ProvinceId, @Query("IsAll") boolean IsAll);
/**
* 获取职位查询属性列表接口
*
* @param PropType 行业领域 = 0,工作职能 =1,公司性质=3,公司规模=4,薪资范围= 5,工作性质 =6,工作经验 = 7,学历= 8
* @param IsAll 当为true时,返回列表会包含,”不限”这一项
* @return
*/
@GET("GetJobPropList")
Observable<AddressBean> GetJobPropList(@Query("PropType") int PropType, @Query("IsAll") boolean IsAll);
/**
* 获取模拟题基本信息接口
*
* @param catalogOid 题库分类ID
* @param accountOid 用户ID
* @return
*/
@GET("GetSimExerciseInfo")
Observable<UserBean> GetSimExerciseInfo(@Query("catalogOid") String catalogOid, @Query("accountOid") String accountOid);
/**
* 获取模拟题列表接口
*
* @param catalogOid
* @param accountOid
* @return
*/
@GET("GetSimExamQuestions")
Observable<AnswerBean> GetSimExamQuestions(@Query("catalogOid") String catalogOid, @Query("accountOid") String accountOid);
/**
* 获取成绩单信息接口
*
* @param catalogOid
* @param accountOid
* @return
*/
@GET("GetSimExamReportInfo")
Observable<TranscriptBean> GetSimExamReportInfo(@Query("catalogOid") String catalogOid, @Query("accountOid") String accountOid);
/**
* 保存错题信息接口
*
* @param accountOid
* @param questionOid 题目ID
* @param wrongQuestionType 错题类型.0:练习,1:模拟题
* @return
*/
@POST("InsertWrongQuestion")
Observable<UserBean> InsertWrongQuestion(@Query("accountOid") String accountOid, @Query("questionOid") String questionOid, @Query("wrongQuestionType") int wrongQuestionType);
/**
* 获取错题目录列表接口
*
* @param accountOid
* @return
*/
@GET("GetWrongCatalogLst")
Observable<AnswerBean> GetWrongCatalogLst(@Query("accountOid") String accountOid);
/**
* 获取错题列表接口
*
* @param accountOidRemoveWrongQuestion
* @param catalogOid 当前目录ID
* @param wrongQuestionType 错题类型,0:练习的错题,1:模拟题的错题
* @return
*/
@GET("GetWrongQuestionsByCatalogOid")
Observable<AnswerBean> GetWrongQuestionsByCatalogOid(@Query("accountOid") String accountOid, @Query("catalogOid") String catalogOid, @Query("wrongQuestionType") int wrongQuestionType);
/**
* 删除用户错题接口
*
* @param accountOid
* @param questionOid 题目ID
* @param wrongQuestionType 0:练习,1:模拟题
* @param catalogOid 当前目录ID
* @return
*/
@GET("RemoveWrongQuestion")
Observable<AnswerBean> RemoveWrongQuestion(@Query("accountOid") String accountOid, @Query("questionOid") String questionOid, @Query("wrongQuestionType") int wrongQuestionType, @Query("catalogOid") String catalogOid);
/**
* 获取随机习题列表接口
*
* @param catalogOid
* @param randomNum
* @param accountOid
* @return
*/
@GET("GetRandomQuestions")
Observable<AnswerBean> GetRandomQuestions(@Query("catalogOid") String catalogOid, @Query("randomNum") int randomNum, @Query("accountOid") String accountOid);
}