ParentsController.java 42 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856
  1. package com.ssj.aijia.parents.controller;
  2. import com.alibaba.dubbo.config.annotation.Reference;
  3. import com.ssj.bean.sys.appinfo.bean.AppInfo;
  4. import com.ssj.framework.core.common.controller.BaseController;
  5. import com.ssj.framework.core.security.annotation.IgnoreSecurity;
  6. import com.ssj.framework.core.security.annotation.ModifySecurity;
  7. import com.ssj.framework.core.security.manager.TokenManager;
  8. import com.ssj.framework.core.util.ResponseConstant;
  9. import com.ssj.framework.core.util.ResponseEntity;
  10. import com.ssj.framework.core.util.StringUtil;
  11. import com.ssj.service.conch.common.service.ConchCommonService;
  12. import com.ssj.service.conch.conch.service.ConchDerverService;
  13. import com.ssj.service.conch.parents.dto.*;
  14. import com.ssj.service.conch.parents.request.*;
  15. import com.ssj.service.conch.parents.request.version4.*;
  16. import com.ssj.service.conch.parents.service.ParentService;
  17. import com.ssj.service.conch.schoolmaster.dto.CourseDateDataDto;
  18. import com.ssj.service.conch.schoolmaster.request.ConfirmAdjustSchoolHoursRequest;
  19. import com.ssj.service.conch.schoolmaster.request.TeacherCoursePlanDetailRequest;
  20. import com.ssj.service.conch.schoolmaster.service.SchoolService;
  21. import com.ssj.service.conch.zyb.request.ZuoybDayReq;
  22. import com.ssj.service.sys.situation.service.ILearningSituationMain;
  23. import com.ssj.service.sys.situation.service.LearningSituationService;
  24. import com.ssj.service.weixin.user.dto.AppWxUserInfo;
  25. import com.ssj.service.weixin.user.service.UserService;
  26. import io.swagger.annotations.Api;
  27. import io.swagger.annotations.ApiOperation;
  28. import org.apache.commons.lang3.StringUtils;
  29. import org.springframework.beans.factory.annotation.Autowired;
  30. import org.springframework.data.domain.Pageable;
  31. import org.springframework.data.domain.Sort.Direction;
  32. import org.springframework.web.bind.annotation.*;
  33. import java.util.HashMap;
  34. import java.util.List;
  35. import java.util.Map;
  36. /**
  37. * @author ZhangCaibao
  38. * @version 2018年4月13日 下午5:52:07
  39. * 类说明
  40. */
  41. @Api(value = "家长端相关的接口", tags = "家长端相关的接口")
  42. @RestController
  43. @RequestMapping("/api/parents/parents")
  44. public class ParentsController extends BaseController {
  45. @Reference(version = "1.0" ,timeout = 60000)
  46. private ParentService parentService;
  47. @Autowired
  48. private TokenManager tokenManager;
  49. @Reference(version = "1.0" ,timeout = 60000)
  50. private ConchDerverService conchDerverService;
  51. @Reference(version = "1.0" ,timeout = 60000)
  52. private ConchCommonService conchCommonService;
  53. @Reference(version = "1.0" ,timeout = 60000)
  54. private UserService userService;
  55. @Reference(version = "1.0" ,timeout = 60000)
  56. private SchoolService schoolService;
  57. @Reference(version = "1.0" ,timeout = 60000)
  58. private LearningSituationService learningSituationService;
  59. @ApiOperation(value = "家长端APP微信授权登录")
  60. @IgnoreSecurity
  61. @ModifySecurity
  62. @RequestMapping(value = "/appAuthlogin", method = RequestMethod.POST)
  63. public ResponseEntity appAuthlogin( @RequestBody (required=true) ParentAuthLoginReq param) {
  64. ResponseEntity responseEntity = null;
  65. try{
  66. responseEntity = parentService.appAuthlogin(param);
  67. } catch (Exception e){
  68. responseEntity = new ResponseEntity();
  69. responseEntity.failure(ResponseConstant.CODE_500, "服务器发生异常,请稍后重试");
  70. }
  71. return responseEntity;
  72. }
  73. @ApiOperation(value = "APP授权保存用户的基本信息")
  74. @RequestMapping(value = "/saveAppUserInfo", method = RequestMethod.POST)
  75. public ResponseEntity saveAppUserInfo(@RequestParam(name = "accessToken") String accessToken,
  76. @RequestBody (required=true) AppWxUserInfo info ) {
  77. ResponseEntity responseEntity = new ResponseEntity();
  78. try {
  79. if(StringUtil.isEmpty(info.getUnionid())){
  80. responseEntity.failure("用户unionid为空");
  81. return responseEntity;
  82. }
  83. if(StringUtil.isEmpty(info.getOpenid())){
  84. responseEntity.failure("用户openid为空");
  85. return responseEntity;
  86. }
  87. if(StringUtil.isEmpty(info.getNickname())){
  88. responseEntity.failure("用户普通用户昵称为空");
  89. return responseEntity;
  90. }
  91. userService.saveAppUser(accessToken, info);
  92. responseEntity.success("保存成功");
  93. } catch (Exception e) {
  94. responseEntity.failure(ResponseConstant.CODE_000, "服务器发生异常,请稍后重试");
  95. }
  96. return responseEntity;
  97. }
  98. /**
  99. * 退出登录
  100. * @param accessToken
  101. * @return
  102. */
  103. @ApiOperation(value = "退出登录")
  104. @IgnoreSecurity
  105. @RequestMapping(value = "/logout", method = RequestMethod.POST)
  106. public ResponseEntity logout(@RequestParam(name = "accessToken") String accessToken) {
  107. tokenManager.removeToken(accessToken);
  108. return new ResponseEntity().success();
  109. }
  110. /**
  111. *===============================首页===================================
  112. */
  113. @RequestMapping(value = "/childSmarttimeList", method = RequestMethod.POST)
  114. @ApiOperation(value = "孩子相册", httpMethod = "POST", notes = "孩子相册")
  115. public ResponseEntity childSmarttimeList(@RequestParam(name = "accessToken") String accessToken, @RequestBody ChildSmarttimeListReq req){
  116. ResponseEntity responseEntity = new ResponseEntity();
  117. try{
  118. Map<String, Object> params = new HashMap<String, Object>();
  119. params.put("vipId", req.getVipId());
  120. Pageable pageable = initPage(req.getPageNo(), req.getPageSize());
  121. Map<String, Object> result = parentService.childSmarttimeList(params, pageable);
  122. responseEntity.success(result, "成功");
  123. } catch (Exception e){
  124. responseEntity.failure(ResponseConstant.CODE_500, "服务器发生异常,请稍后重试");
  125. }
  126. return responseEntity;
  127. }
  128. @IgnoreSecurity
  129. @RequestMapping(value = "/getChildLocation", method = RequestMethod.POST)
  130. @ApiOperation(value = "获取孩子定位信息", httpMethod = "POST", notes = "获取孩子定位信息")
  131. public ResponseEntity getChildLocation(@RequestParam(name = "accessToken") String accessToken, @RequestBody VipReq req){
  132. ResponseEntity responseEntity;
  133. try{
  134. responseEntity = parentService.getChildLocation(req.getVipId());
  135. } catch (Exception e){
  136. responseEntity = new ResponseEntity();
  137. responseEntity.failure(ResponseConstant.CODE_500, "服务器发生异常,请稍后重试");
  138. }
  139. return responseEntity;
  140. }
  141. @RequestMapping(value = "/getSayList", method = RequestMethod.POST)
  142. @ApiOperation(value = "爸妈说消息列表", httpMethod = "POST", notes = "爸妈说消息列表")
  143. public ResponseEntity getSayList(@RequestParam(name = "accessToken") String accessToken){
  144. ResponseEntity responseEntity = new ResponseEntity();
  145. try {
  146. String userId = tokenManager.getUserId(accessToken);
  147. Map<String, Object> data = new HashMap<String, Object>() ;
  148. List<ParentsSayDto> dataList = parentService.getSayList(userId);
  149. data.put("list", dataList);
  150. responseEntity.success(data,"成功");
  151. } catch (Exception e) {
  152. responseEntity.failure(ResponseConstant.CODE_500, "服务器发生异常,请稍后重试");
  153. }
  154. return responseEntity;
  155. }
  156. @RequestMapping(value = "/getMessageList", method = RequestMethod.POST)
  157. @ApiOperation(value = "获取消息列表", httpMethod = "POST", notes = "获取消息列表")
  158. public ResponseEntity getMessageList(@RequestParam(name = "accessToken") String accessToken,@RequestBody MessageReq req){
  159. ResponseEntity responseEntity;
  160. try{
  161. Pageable pageable = initPage(req.getPageNo(),req.getPageSize(),Direction.DESC,"created");
  162. responseEntity = parentService.getMessageList(req, pageable);
  163. } catch (Exception e){
  164. responseEntity = new ResponseEntity();
  165. responseEntity.failure(ResponseConstant.CODE_500, "服务器发生异常,请稍后重试");
  166. }
  167. return responseEntity;
  168. }
  169. @RequestMapping(value = "/getPhotoList", method = RequestMethod.POST)
  170. @IgnoreSecurity
  171. @ApiOperation(value = "首页轮播图片", httpMethod = "POST", notes = "首页轮播图片")
  172. public ResponseEntity getPhotoList(@RequestBody PhotoReq req){
  173. ResponseEntity responseEntity;
  174. try{
  175. responseEntity = parentService.getPhotoList(req.getPhoneType());
  176. } catch (Exception e){
  177. responseEntity = new ResponseEntity();
  178. responseEntity.failure(ResponseConstant.CODE_500, "服务器发生异常,请稍后重试");
  179. }
  180. return responseEntity;
  181. }
  182. /**
  183. *==============================作业模块==================================
  184. */
  185. @RequestMapping(value = "/homeworkTask", method = RequestMethod.POST)
  186. @ApiOperation(value = "作业任务", httpMethod = "POST", notes = "作业任务")
  187. public ResponseEntity homeworkTask (@RequestParam(name = "accessToken") String accessToken, @RequestBody HomeworkTaskReq req){
  188. ResponseEntity responseEntity = new ResponseEntity();
  189. try{
  190. Pageable pageable = initPage(req.getPageNo(), req.getPageSize());
  191. Map<String, Object> data = parentService.getHistoryTask(req.getVipId(), req.getMaxCreateTime(), pageable);
  192. data.put("todayTask", parentService.searchTodayHomeworkTask(req.getVipId()));
  193. responseEntity.success(data, "成功");
  194. } catch (Exception e){
  195. logger.error("异常", e);
  196. responseEntity.failure(ResponseConstant.CODE_500, "服务器发生异常,请稍后重试");
  197. }
  198. return responseEntity;
  199. }
  200. @RequestMapping(value = "/correctDetail", method = RequestMethod.POST)
  201. @ApiOperation(value = "单科批改详情", httpMethod = "POST", notes = "单科批改详情")
  202. public ResponseEntity correctDetail (@RequestParam(name = "accessToken") String accessToken, @RequestBody CorrectDetailReq req){
  203. ResponseEntity responseEntity = new ResponseEntity();
  204. try{
  205. Map<String, Object> data = parentService.correctDetail(req.getVipId(), req.getSubject(), req.getDate());
  206. if ((Boolean)data.get("isSuccess")){
  207. responseEntity.success(data.get("data"), "成功");
  208. } else {
  209. responseEntity.failure(ResponseConstant.CODE_000, "失败");
  210. }
  211. } catch (Exception e){
  212. logger.error("异常", e);
  213. responseEntity.failure(ResponseConstant.CODE_500, "服务器发生异常,请稍后重试");
  214. }
  215. return responseEntity;
  216. }
  217. @RequestMapping(value = "/homeworkReport", method = RequestMethod.POST)
  218. @ApiOperation(value = "作业反馈报告", httpMethod = "POST", notes = "作业反馈报告")
  219. public ResponseEntity homeworkReport (@RequestParam(name = "accessToken") String accessToken, @RequestBody HomeworkReportReq req){
  220. ResponseEntity responseEntity = new ResponseEntity();
  221. try{
  222. if (StringUtils.isNotBlank(req.getVipId()) && StringUtils.isNotBlank(req.getDate())) {
  223. Map<String, Object> data = parentService.findHomeworkReport(req.getVipId(), req.getDate());
  224. responseEntity.success(data, "成功");
  225. }else {
  226. logger.error("请求参数有误,vipId={}, date={}", req.getVipId(), req.getDate());
  227. responseEntity.failure(ResponseConstant.CODE_000, "请求参数有误");
  228. }
  229. } catch (Exception e){
  230. logger.error("异常", e);
  231. responseEntity.failure(ResponseConstant.CODE_500, "服务器发生异常,请稍后重试");
  232. }
  233. return responseEntity;
  234. }
  235. @RequestMapping(value = "/queryAssessment", method = RequestMethod.POST)
  236. @ApiOperation(value = "查询课堂评价", httpMethod = "POST", notes = "查询课堂评价")
  237. public ResponseEntity queryAssessment (@RequestParam(name = "accessToken") String accessToken, @RequestBody QueryAssessmentReq req){
  238. ResponseEntity responseEntity = new ResponseEntity();
  239. try{
  240. Map<String, Object> data = parentService.queryAssessment(req.getVipId(), req.getDate());
  241. responseEntity.success(data, "成功");
  242. } catch (Exception e){
  243. logger.error("异常", e);
  244. responseEntity.failure(ResponseConstant.CODE_500, "服务器发生异常,请稍后重试");
  245. }
  246. return responseEntity;
  247. }
  248. @RequestMapping(value = "/assessment", method = RequestMethod.POST)
  249. @ApiOperation(value = "作业课堂评价提交", httpMethod = "POST", notes = "课堂评价")
  250. public ResponseEntity assessment (@RequestParam(name = "accessToken") String accessToken, @RequestBody AssessmentReq req){
  251. ResponseEntity responseEntity = new ResponseEntity();
  252. try{
  253. parentService.submitAssessment(req);
  254. responseEntity.success();
  255. } catch (Exception e){
  256. logger.error("异常", e);
  257. responseEntity.failure(ResponseConstant.CODE_500, "服务器发生异常,请稍后重试");
  258. }
  259. return responseEntity;
  260. }
  261. /**
  262. *==============================学情模块==================================
  263. */
  264. @RequestMapping(value = "/learningSituationAbstract", method = RequestMethod.POST)
  265. @ApiOperation(value = "学情整体情况", httpMethod = "POST", notes = "学情整体情况")
  266. public ResponseEntity learningSituationAbstract (@RequestParam(name = "accessToken") String accessToken, @RequestBody CorrectDetailReq req){
  267. ResponseEntity responseEntity = new ResponseEntity();
  268. try{
  269. LearningSituationAbstractDto data = parentService.learningSituationAbstract(req.getVipId());
  270. responseEntity.success(data, "成功");
  271. } catch (Exception e){
  272. responseEntity.failure(ResponseConstant.CODE_500, "服务器发生异常,请稍后重试");
  273. }
  274. return responseEntity;
  275. }
  276. @RequestMapping(value = "/knowledgeAtlas", method = RequestMethod.POST)
  277. @ApiOperation(value = "知识图谱", httpMethod = "POST", notes = "知识图谱")
  278. public ResponseEntity knowledgeAtlas(@RequestParam(name = "accessToken") String accessToken, @RequestBody CourseHowReq req){
  279. ResponseEntity responseEntity = null;
  280. try{
  281. responseEntity = parentService.knowledgeAtlas(req);
  282. } catch (Exception e){
  283. responseEntity = new ResponseEntity();
  284. responseEntity.failure(ResponseConstant.CODE_500, "服务器发生异常,请稍后重试");
  285. }
  286. return responseEntity;
  287. }
  288. @RequestMapping(value = "/recent", method = RequestMethod.POST)
  289. @ApiOperation(value = "学习历史-当日学习任务日历", httpMethod = "POST", notes = "学习历史-当日学习任务日历")
  290. public ResponseEntity recent(@RequestParam(name = "accessToken") String accessToken, @RequestBody VipReq req){
  291. ResponseEntity responseEntity = null;
  292. try{
  293. responseEntity = parentService.recent(req.getVipId());
  294. } catch (Exception e){
  295. logger.error("7天任务异常", e);
  296. responseEntity = new ResponseEntity();
  297. responseEntity.failure(ResponseConstant.CODE_500, "服务器发生异常,请稍后重试");
  298. }
  299. return responseEntity;
  300. }
  301. @RequestMapping(value = "/calendarTrack", method = RequestMethod.POST)
  302. @ApiOperation(value = "学习历史-历史学习任务日历", httpMethod = "POST", notes = "学习历史-历史学习任务日历")
  303. public ResponseEntity calendarTrack(@RequestParam(name = "accessToken") String accessToken, @RequestBody ZuoybDayReq req){
  304. ResponseEntity responseEntity = null;
  305. try{
  306. responseEntity = parentService.calendarTrack(req);
  307. } catch (Exception e){
  308. responseEntity = new ResponseEntity();
  309. responseEntity.failure(ResponseConstant.CODE_500, "服务器发生异常,请稍后重试");
  310. }
  311. return responseEntity;
  312. }
  313. @RequestMapping(value = "/learningSituationDetail", method = RequestMethod.POST)
  314. @ApiOperation(value = "学情学科情况", httpMethod = "POST", notes = "学情学科情况")
  315. public ResponseEntity learningSituationDetail (@RequestParam(name = "accessToken") String accessToken, @RequestBody CorrectDetailReq req){
  316. ResponseEntity responseEntity = new ResponseEntity();
  317. try{
  318. LearningSituationDetailDto data = learningSituationService.learningSituationDetail(req.getVipId(), req.getSubject());
  319. responseEntity.success(data, "成功");
  320. } catch (Exception e){
  321. logger.error("异常", e);
  322. responseEntity.failure(ResponseConstant.CODE_500, "服务器发生异常,请稍后重试");
  323. }
  324. return responseEntity;
  325. }
  326. //------------------------------------------------------------------难题模块-------------------------------------
  327. @RequestMapping(value = "/unAnsweredProblemList", method = RequestMethod.POST)
  328. @ApiOperation(value = "未解答难题列表", httpMethod = "POST", notes = "未解答难题列表")
  329. public ResponseEntity unAnsweredProblemList(@RequestParam(name = "accessToken") String accessToken,@RequestBody UnAnsweredProblemReq req){
  330. ResponseEntity responseEntity;
  331. try{
  332. Pageable pageable = initPage(req.getPageNo(), req.getPageSize());
  333. responseEntity = parentService.unAnsweredProblemList(req,pageable);
  334. } catch (Exception e){
  335. responseEntity = new ResponseEntity();
  336. responseEntity.failure(ResponseConstant.CODE_500, "服务器发生异常,请稍后重试");
  337. }
  338. return responseEntity;
  339. }
  340. @RequestMapping(value = "/answeredProblemKnowHow", method = RequestMethod.POST)
  341. @ApiOperation(value = "已解答难题知识点汇总", httpMethod = "POST", notes = "已解答难题知识点汇总")
  342. public ResponseEntity answeredProblemKnowHow(@RequestParam(name = "accessToken") String accessToken,@RequestBody ProblemKnowHowReq req){
  343. ResponseEntity responseEntity;
  344. try{
  345. responseEntity = parentService.answeredProblemKnowHow(req);
  346. } catch (Exception e){
  347. responseEntity = new ResponseEntity();
  348. responseEntity.failure(ResponseConstant.CODE_500, "服务器发生异常,请稍后重试");
  349. }
  350. return responseEntity;
  351. }
  352. @RequestMapping(value = "/answeredProblemList", method = RequestMethod.POST)
  353. @ApiOperation(value = "已解答难题列表", httpMethod = "POST", notes = "已解答难题列表")
  354. public ResponseEntity answeredProblemList(@RequestParam(name = "accessToken") String accessToken,@RequestBody AnsweredProblemReq req){
  355. ResponseEntity responseEntity;
  356. try{
  357. Pageable pageable = initPage(req.getPageNo(), req.getPageSize());
  358. responseEntity = parentService.answeredProblemList(req,pageable);
  359. } catch (Exception e){
  360. responseEntity = new ResponseEntity();
  361. responseEntity.failure(ResponseConstant.CODE_500, "服务器发生异常,请稍后重试");
  362. }
  363. return responseEntity;
  364. }
  365. @RequestMapping(value = "/answeredProblemDetail", method = RequestMethod.POST)
  366. @ApiOperation(value = "已解答难题详情", httpMethod = "POST", notes = "已解答难题详情")
  367. public ResponseEntity answeredProblemDetail(@RequestParam(name = "accessToken") String accessToken,@RequestBody FindProblemRequest req){
  368. ResponseEntity responseEntity;
  369. try{
  370. responseEntity = parentService.answeredProblemDetail(req);
  371. } catch (Exception e){
  372. responseEntity = new ResponseEntity();
  373. responseEntity.failure(ResponseConstant.CODE_500, "服务器发生异常,请稍后重试");
  374. }
  375. return responseEntity;
  376. }
  377. @RequestMapping(value = "/calendarAnsweredProblem", method = RequestMethod.POST)
  378. @ApiOperation(value = "任务日历查询某天已解答难题列表", httpMethod = "POST", notes = "任务日历查询某天已解答难题列表")
  379. public ResponseEntity calendarAnsweredProblem(@RequestParam(name = "accessToken") String accessToken,@RequestBody AnswdProblemOnedayReq req){
  380. ResponseEntity responseEntity;
  381. try{
  382. responseEntity = parentService.calendarAnsweredProblem(req);
  383. } catch (Exception e){
  384. responseEntity = new ResponseEntity();
  385. responseEntity.failure(ResponseConstant.CODE_500, "服务器发生异常,请稍后重试");
  386. }
  387. return responseEntity;
  388. }
  389. //------------------------------------------------------------------一对一模块-------------------------------------
  390. @RequestMapping(value = "/lessonServiceManager", method = RequestMethod.POST)
  391. @ApiOperation(value = "一对一学习任务", httpMethod = "POST", notes = "一对一学习任务")
  392. public ResponseEntity lessonServiceManager(@RequestParam(name = "accessToken") String accessToken,@RequestBody VipReq req){
  393. ResponseEntity responseEntity = null;
  394. try{
  395. String userId = tokenManager.getUserId(accessToken);
  396. responseEntity = parentService.lessonServiceManager(userId,req.getVipId());
  397. } catch (Exception e){
  398. responseEntity = new ResponseEntity();
  399. responseEntity.failure(ResponseConstant.CODE_500, "服务器发生异常,请稍后重试");
  400. }
  401. return responseEntity;
  402. }
  403. @RequestMapping(value = "/applyCourseTime", method = RequestMethod.POST)
  404. @ModifySecurity
  405. @ApiOperation(value = "申请调课", httpMethod = "POST", notes = "申请调课")
  406. public ResponseEntity applyCourseTime(@RequestParam(name = "accessToken") String accessToken,@RequestBody ApplyCourseTimeReq req){
  407. ResponseEntity responseEntity = null;
  408. try{
  409. responseEntity = parentService.applyCourseTime(req);
  410. } catch (Exception e){
  411. responseEntity = new ResponseEntity();
  412. responseEntity.failure(ResponseConstant.CODE_500, "服务器发生异常,请稍后重试");
  413. }
  414. return responseEntity;
  415. }
  416. @RequestMapping(value = "/applyChangeTeacher", method = RequestMethod.POST)
  417. @ModifySecurity
  418. @ApiOperation(value = "申请换老师", httpMethod = "POST", notes = "申请换老师")
  419. public ResponseEntity applyChangeTeacher(@RequestParam(name = "accessToken") String accessToken,@RequestBody ApplyTeacherReq req){
  420. ResponseEntity responseEntity = null;
  421. try{
  422. responseEntity = parentService.applyChangeTeacher(req);
  423. } catch (Exception e){
  424. responseEntity = new ResponseEntity();
  425. responseEntity.failure(ResponseConstant.CODE_500, "服务器发生异常,请稍后重试");
  426. }
  427. return responseEntity;
  428. }
  429. @RequestMapping(value = "/confirmTeacher", method = RequestMethod.POST)
  430. @ModifySecurity
  431. @ApiOperation(value = "校长换老师后-家长确认", httpMethod = "POST", notes = "校长换老师后-家长确认")
  432. public ResponseEntity confirmTeacher(@RequestParam(name = "accessToken") String accessToken,@RequestBody LessonReq req){
  433. ResponseEntity responseEntity = new ResponseEntity();
  434. try{
  435. responseEntity = parentService.confirmTeacher(req.getLessonServiceId());
  436. } catch (Exception e){
  437. responseEntity.failure(ResponseConstant.CODE_500, "服务器发生异常,请稍后重试");
  438. }
  439. return responseEntity;
  440. }
  441. @RequestMapping(value = "/teacherCoursePlanDetail", method = RequestMethod.POST)
  442. @ApiOperation(value = "获取当前老师排课状况", httpMethod = "POST", notes = "获取当前老师排课状况")
  443. public ResponseEntity teacherCoursePlanDetail(@RequestParam(name = "accessToken") String accessToken,@RequestBody TeacherCoursePlanDetailRequest req){
  444. ResponseEntity responseEntity = new ResponseEntity();
  445. try{
  446. List<Map<String, String>> result = parentService.teacherCoursePlanDetail(req);
  447. Map<String, Object> data = new HashMap<String, Object>();
  448. data.put("list", result);
  449. responseEntity.success(data, "成功");
  450. } catch (Exception e){
  451. logger.error("异常", e);
  452. }
  453. return responseEntity;
  454. }
  455. @RequestMapping(value = "/getStudentCourseData", method = RequestMethod.POST)
  456. @ApiOperation(value = "获取当前课程情况", httpMethod = "POST", notes = "获取当前课程情况")
  457. public ResponseEntity getStudentCourseData(@RequestParam(name = "accessToken") String accessToken,
  458. @RequestBody ConfirmAdjustSchoolHoursRequest request) {
  459. ResponseEntity responseEntity = new ResponseEntity();
  460. try {
  461. List<CourseDateDataDto> list = schoolService.findStudentCourseData(request.getBizId(), request.getTime());
  462. Map<String, Object> data = new HashMap<>();
  463. data.put("list", list);
  464. responseEntity.success(data, "成功");
  465. } catch (Exception e) {
  466. logger.error("异常", e);
  467. responseEntity.failure(ResponseConstant.CODE_500, "服务器发生异常,请稍后重试");
  468. }
  469. return responseEntity;
  470. }
  471. @RequestMapping(value = "/getTeacherCourseTimeDetail", method = RequestMethod.POST)
  472. @ApiOperation(value = "获取当前老师排课状况V1", httpMethod = "POST", notes = "获取当前老师排课状况Vq")
  473. public ResponseEntity getTeacherCourseTimeDetail(@RequestParam(name = "accessToken") String accessToken,
  474. @RequestBody TeacherCoursePlanDetailRequest request) {
  475. ResponseEntity responseEntity = new ResponseEntity();
  476. try {
  477. List<Map<String, String>> result = schoolService.getTeacherCourseTimeDetail(request);
  478. Map<String, Object> data = new HashMap<String, Object>();
  479. data.put("list", result);
  480. responseEntity.success(data, "成功");
  481. } catch (Exception e) {
  482. logger.error("异常信息", e);
  483. responseEntity.failure(ResponseConstant.CODE_500, "服务器发生异常,请稍后重试");
  484. }
  485. return responseEntity;
  486. }
  487. @RequestMapping(value = "/lessonFeedbackList", method = RequestMethod.POST)
  488. @ApiOperation(value = "往期反馈记录", httpMethod = "POST", notes = "往期反馈记录")
  489. public ResponseEntity lessonFeedbackList(@RequestParam(name = "accessToken") String accessToken,@RequestBody LessonReq req){
  490. ResponseEntity responseEntity;
  491. try{
  492. responseEntity = parentService.lessonFeedbackList(req);
  493. } catch (Exception e){
  494. responseEntity = new ResponseEntity();
  495. responseEntity.failure(ResponseConstant.CODE_500, "服务器发生异常,请稍后重试");
  496. }
  497. return responseEntity;
  498. }
  499. @RequestMapping(value = "/calendarLessonFeedback", method = RequestMethod.POST)
  500. @ApiOperation(value = "一对一任务日历反馈记录", httpMethod = "POST", notes = "一对一任务日历反馈记录")
  501. public ResponseEntity calendarLessonFeedback(@RequestParam(name = "accessToken") String accessToken,@RequestBody HomeworkReportReq req){
  502. ResponseEntity responseEntity;
  503. try{
  504. responseEntity = parentService.calendarLessonFeedback(req);
  505. } catch (Exception e){
  506. responseEntity = new ResponseEntity();
  507. responseEntity.failure(ResponseConstant.CODE_500, "服务器发生异常,请稍后重试");
  508. }
  509. return responseEntity;
  510. }
  511. @RequestMapping(value = "/lessonFeedbackDetails", method = RequestMethod.POST)
  512. @ApiOperation(value = "一对一反馈报告", httpMethod = "POST", notes = "一对一反馈报告")
  513. public ResponseEntity lessonFeedbackDetails(@RequestParam(name = "accessToken") String accessToken,@RequestBody CourseReq req){
  514. ResponseEntity responseEntity;
  515. try{
  516. responseEntity = parentService.lessonFeedbackDetails(req,accessToken);
  517. } catch (Exception e){
  518. responseEntity = new ResponseEntity();
  519. responseEntity.failure(ResponseConstant.CODE_500, "服务器发生异常,请稍后重试");
  520. }
  521. return responseEntity;
  522. }
  523. @RequestMapping(value = "/getCourseAssessment", method = RequestMethod.POST)
  524. @ApiOperation(value = "一对一反馈-查看课堂评价", httpMethod = "POST", notes = "一对一反馈-查看课堂评价")
  525. public ResponseEntity getCourseAssessment(@RequestParam(name = "accessToken") String accessToken,@RequestBody CourseReq req){
  526. ResponseEntity responseEntity;
  527. try {
  528. responseEntity = parentService.getCourseAssessment(req);
  529. } catch (Exception e) {
  530. responseEntity = new ResponseEntity();
  531. responseEntity.failure(ResponseConstant.CODE_500, "服务器发生异常,请稍后重试");
  532. }
  533. return responseEntity;
  534. }
  535. @RequestMapping(value = "/superScholarLessonFeedbackDetails", method = RequestMethod.POST)
  536. @ApiOperation(value = "学霸一对一反馈报告", httpMethod = "POST", notes = "学霸一对一反馈报告")
  537. public ResponseEntity superScholarLessonFeedbackDetails(@RequestParam(name = "accessToken") String accessToken,@RequestBody CourseReq req){
  538. ResponseEntity responseEntity = new ResponseEntity();
  539. try {
  540. if (StringUtils.isNotBlank(req.getCourseId())){
  541. SuperScholarFeedbackDto data = parentService.superScholar121Feedback(req.getCourseId());
  542. responseEntity.success(data,"成功");
  543. } else {
  544. responseEntity.failure(ResponseConstant.CODE_000, "请传输正确的课程编号");
  545. }
  546. } catch (Exception e) {
  547. logger.error("学霸一对一反馈报告异常", e);
  548. responseEntity.failure(ResponseConstant.CODE_500, "服务器发生异常,请稍后重试");
  549. }
  550. return responseEntity;
  551. }
  552. @RequestMapping(value = "/upCourseAssessment", method = RequestMethod.POST)
  553. @ModifySecurity
  554. @ApiOperation(value = "一对一反馈-课堂评价", httpMethod = "POST", notes = "一对一反馈-课堂评价")
  555. public ResponseEntity upCourseAssessment(@RequestParam(name = "accessToken") String accessToken,@RequestBody CourseAssessmentReq req){
  556. ResponseEntity responseEntity;
  557. try {
  558. responseEntity = parentService.upCourseAssessment(req);
  559. } catch (Exception e) {
  560. responseEntity = new ResponseEntity();
  561. responseEntity.failure(ResponseConstant.CODE_500, "服务器发生异常,请稍后重试");
  562. }
  563. return responseEntity;
  564. }
  565. //------------------------------------------------------------------我的信息-------------------------------------
  566. @RequestMapping(value = "/getMyInfo", method = RequestMethod.POST)
  567. @ApiOperation(value = "我的信息", httpMethod = "POST", notes = "我的信息")
  568. public ResponseEntity getMyInfo(@RequestParam(name = "accessToken") String accessToken){
  569. ResponseEntity responseEntity = new ResponseEntity();
  570. try{
  571. String parentId = tokenManager.getUserId(accessToken);
  572. ParentsInfoDto result = parentService.getMyInfo(parentId);
  573. responseEntity.success(result,"成功");
  574. } catch (Exception e){
  575. responseEntity.failure(ResponseConstant.CODE_500, "服务器发生异常,请稍后重试");
  576. }
  577. return responseEntity;
  578. }
  579. @RequestMapping(value = "/getMyChildInfo", method = RequestMethod.POST)
  580. @ApiOperation(value = "查询孩子信息", httpMethod = "POST", notes = "查询孩子信息")
  581. public ResponseEntity getMyChildInfo(@RequestParam(name = "accessToken") String accessToken,@RequestBody VipReq req){
  582. ResponseEntity responseEntity = new ResponseEntity();
  583. try{
  584. String userId = tokenManager.getUserId(accessToken);
  585. ChildDto result = parentService.getMyChildInfo(userId,req.getVipId());
  586. responseEntity.success(result,"成功");
  587. } catch (Exception e){
  588. responseEntity.failure(ResponseConstant.CODE_500, "服务器发生异常,请稍后重试");
  589. }
  590. return responseEntity;
  591. }
  592. @RequestMapping(value = "/upMyChildInfo", method = RequestMethod.POST)
  593. @ApiOperation(value = "修改孩子信息", httpMethod = "POST", notes = "修改孩子信息")
  594. public ResponseEntity upMyChildInfo(@RequestParam(name = "accessToken") String accessToken,@RequestBody ChildInfoReq req){
  595. ResponseEntity responseEntity = new ResponseEntity();
  596. try{
  597. parentService.upMyChildInfo(req);
  598. responseEntity.success();
  599. } catch (Exception e){
  600. responseEntity.failure(ResponseConstant.CODE_500, "服务器发生异常,请稍后重试");
  601. }
  602. return responseEntity;
  603. }
  604. @RequestMapping(value = "/getSchoolList", method = RequestMethod.POST)
  605. @ApiOperation(value = "获取学校列表", httpMethod = "POST", notes = "获取学校列表")
  606. public ResponseEntity getSchoolList(@RequestParam(name = "accessToken") String accessToken,@RequestBody QuerySchoolList req){
  607. ResponseEntity responseEntity = new ResponseEntity();
  608. try {
  609. Map<String, Object> params = new HashMap<String, Object>();
  610. List<Map<String, Object>> list = parentService.getSchoolList(req);
  611. params.put("list", list);
  612. responseEntity.success(params,"获取数据成功!");
  613. } catch (Exception e) {
  614. responseEntity.failure(ResponseConstant.CODE_500, "服务器发生异常,请稍后重试");
  615. }
  616. return responseEntity;
  617. }
  618. @RequestMapping(value = "/myOrdersInfo", method = RequestMethod.POST)
  619. @ApiOperation(value = "我的订单", httpMethod = "POST", notes = "我的订单")
  620. public ResponseEntity myOrdersInfo(@RequestParam(name = "accessToken") String accessToken,@RequestBody OrderReq req){
  621. ResponseEntity responseEntity = null;
  622. try{
  623. String userId = tokenManager.getUserId(accessToken);
  624. responseEntity = parentService.myOrdersInfo(userId,req);
  625. } catch (Exception e){
  626. responseEntity = new ResponseEntity();
  627. responseEntity.failure(ResponseConstant.CODE_500, "服务器发生异常,请稍后重试");
  628. }
  629. return responseEntity;
  630. }
  631. @RequestMapping(value = "/payOrder", method = RequestMethod.POST)
  632. @ModifySecurity
  633. @ApiOperation(value = "我的订单-支付", httpMethod = "POST", notes = "我的订单-支付")
  634. public ResponseEntity payOrder(@RequestParam(name = "accessToken") String accessToken,@RequestBody PayOrderReq req){
  635. return parentService.payOrder(req,accessToken);
  636. }
  637. @RequestMapping(value = "/applyOrderRefund", method = RequestMethod.POST)
  638. @ApiOperation(value = "我的订单-发起退款", httpMethod = "POST", notes = "我的订单-发起退款")
  639. public ResponseEntity applyOrderRefund(@RequestParam(name = "accessToken") String accessToken,@RequestBody RefundReq req){
  640. ResponseEntity responseEntity = null;
  641. try{
  642. String userId = tokenManager.getUserId(accessToken);
  643. responseEntity = parentService.applyOrderRefund(userId, req.getOrderNo());
  644. } catch (Exception e){
  645. responseEntity = new ResponseEntity();
  646. responseEntity.failure(ResponseConstant.CODE_500, "服务器发生异常,请稍后重试");
  647. }
  648. return responseEntity;
  649. }
  650. @RequestMapping(value = "/confirmOrderRefund", method = RequestMethod.POST)
  651. @ModifySecurity
  652. @ApiOperation(value = "我的订单-确定退款", httpMethod = "POST", notes = "我的订单-确定退款")
  653. public ResponseEntity confirmOrderRefund(@RequestParam(name = "accessToken") String accessToken,@RequestBody ConfirmRefundReq req){
  654. ResponseEntity responseEntity = null;
  655. try{
  656. String userId = tokenManager.getUserId(accessToken);
  657. responseEntity = parentService.confirmOrderRefund(userId, req);
  658. } catch (Exception e){
  659. responseEntity = new ResponseEntity();
  660. responseEntity.failure(ResponseConstant.CODE_500, "服务器发生异常,请稍后重试");
  661. }
  662. return responseEntity;
  663. }
  664. @RequestMapping(value = "/untieDerver", method = RequestMethod.POST)
  665. @ModifySecurity
  666. @ApiOperation(value = "解绑小塾", httpMethod = "POST", notes = "解绑小塾")
  667. public ResponseEntity untieDerver(@RequestParam(name = "accessToken") String accessToken,@RequestBody UntieDerverReq req){
  668. ResponseEntity responseEntity = null;
  669. try {
  670. responseEntity = conchDerverService.untyingParents(req.getDerver(), tokenManager.getUserId(accessToken));
  671. } catch (Exception e) {
  672. responseEntity = new ResponseEntity();
  673. responseEntity.failure(ResponseConstant.CODE_500, "服务器发生异常,请稍后重试");
  674. }
  675. return responseEntity;
  676. }
  677. @ApiOperation(value = "解绑小塾内部专用",httpMethod = "POST")
  678. @IgnoreSecurity
  679. @ModifySecurity
  680. @RequestMapping(value = "/untieDerverByCeshi", method = RequestMethod.POST)
  681. public ResponseEntity untieDerverByCeshi(@RequestParam(name = "parentId") String parentId,
  682. @RequestParam(name = "derver") String derver) {
  683. ResponseEntity responseEntity = new ResponseEntity();
  684. try {
  685. responseEntity =conchDerverService.untyingParents(derver, parentId);
  686. responseEntity.success();
  687. } catch (Exception e) {
  688. logger.error("解绑小塾异常", e);
  689. responseEntity.failure(ResponseConstant.CODE_500, "解绑小塾异常");
  690. }
  691. return responseEntity;
  692. }
  693. @RequestMapping(value = "/swipeQrCode", method = RequestMethod.POST)
  694. @ModifySecurity
  695. @ApiOperation(value = "app扫描二维码通用接口", httpMethod = "POST", notes = "app扫描二维码通用接口")
  696. public ResponseEntity swipeQrCode(@RequestParam(name = "accessToken") String accessToken,@RequestBody SwipeQrCodeReq req){
  697. ResponseEntity responseEntity = null;
  698. try {
  699. String userId = tokenManager.getUserId(accessToken);
  700. responseEntity = conchCommonService.swipeQrCode(userId,req);
  701. } catch (Exception e) {
  702. responseEntity = new ResponseEntity();
  703. responseEntity.failure(ResponseConstant.CODE_500, "服务器发生异常,请稍后重试");
  704. }
  705. return responseEntity;
  706. }
  707. @RequestMapping(value = "/version", method = RequestMethod.POST)
  708. @IgnoreSecurity
  709. @ApiOperation(value = "获取当前版本", httpMethod = "POST", notes = "获取当前版本")
  710. public ResponseEntity version() {
  711. ResponseEntity responseEntity = new ResponseEntity();
  712. try {
  713. AppInfo appInfo = parentService.getVersion(2);
  714. Map<String,Object> map = new HashMap<>(16);
  715. if(appInfo != null){
  716. map.put("id",appInfo.getId());
  717. map.put("version",appInfo.getVersion());
  718. map.put("fileKey",appInfo.getFileKey());
  719. map.put("versionType",appInfo.getVersionType());
  720. map.put("issueNum",appInfo.getIssueNum());
  721. map.put("createTime",appInfo.getCreateTime());
  722. map.put("isDelete",appInfo.getIsDelete());
  723. map.put("needUpdate",appInfo.getNeedUpdate());
  724. }
  725. responseEntity.success(map, "成功");
  726. } catch (Exception e) {
  727. logger.error("获取当前版本异常", e);
  728. responseEntity.failure(ResponseConstant.CODE_500, e.getMessage());
  729. }
  730. logger.info("version end");
  731. return responseEntity;
  732. }
  733. @RequestMapping(value = "/setPushRemind", method = RequestMethod.POST)
  734. @ApiOperation(value = "设置推送消息提醒接口", httpMethod = "POST", notes = "设置推送消息提醒接口")
  735. public ResponseEntity setPushRemind(@RequestParam(name = "accessToken") String accessToken,@RequestBody PushRemindReq req) {
  736. ResponseEntity responseEntity = new ResponseEntity();
  737. try {
  738. String userId = tokenManager.getUserId(accessToken);
  739. parentService.setPushRemind(userId,req);
  740. responseEntity.success();
  741. } catch (Exception e) {
  742. logger.error("设置推送消息提醒接口异常", e);
  743. responseEntity.failure(ResponseConstant.CODE_500, e.getMessage());
  744. }
  745. return responseEntity;
  746. }
  747. @RequestMapping(value = "/sendSms", method = RequestMethod.POST)
  748. @IgnoreSecurity
  749. @ApiOperation(value = "发送短信验证码", httpMethod = "POST", notes = "发送短信验证码")
  750. public ResponseEntity sendSms(@RequestBody SmsSendReq req) {
  751. ResponseEntity responseEntity = new ResponseEntity();
  752. try {
  753. parentService.sendSms(req.getPhoneNumber(), req.getType());
  754. responseEntity.success();
  755. } catch (Exception e) {
  756. logger.error("发送短信验证码接口异常", e);
  757. responseEntity.failure(ResponseConstant.CODE_500, e.getMessage());
  758. }
  759. return responseEntity;
  760. }
  761. @RequestMapping(value = "/confirmSms", method = RequestMethod.POST)
  762. @IgnoreSecurity
  763. @ApiOperation(value = "验证短信验证码", httpMethod = "POST", notes = "验证短信验证码")
  764. public ResponseEntity confirmSms(@RequestBody SmsConfirmReq req) {
  765. ResponseEntity responseEntity;
  766. try {
  767. responseEntity = parentService.confirmSms(req.getPhoneNumber(), req.getCode());
  768. if (responseEntity.getCode().equals("999")) {
  769. //清除验证码
  770. tokenManager.delString(req.getPhoneNumber());
  771. }
  772. return responseEntity;
  773. } catch (Exception e) {
  774. responseEntity = new ResponseEntity();
  775. logger.error("发送短信验证码接口异常", e);
  776. responseEntity.failure(ResponseConstant.CODE_500, e.getMessage());
  777. }
  778. return responseEntity;
  779. }
  780. @Reference(version = "1.0" ,timeout = 60000)
  781. private ILearningSituationMain learningSituationMain;
  782. @RequestMapping(value = "/learningSituation", method = RequestMethod.POST)
  783. @IgnoreSecurity
  784. @ApiOperation(value = "学情手动计算", httpMethod = "POST", notes = "学情手动计算")
  785. public ResponseEntity learningSituation(@RequestBody SmsConfirmReq req) {
  786. ResponseEntity responseEntity = new ResponseEntity();
  787. try {
  788. learningSituationMain.querySituation();
  789. responseEntity.success();
  790. } catch (Exception e) {
  791. logger.error("学情手动计算", e);
  792. responseEntity.failure(ResponseConstant.CODE_500, e.getMessage());
  793. }
  794. return responseEntity;
  795. }
  796. }