UserController.java 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181
  1. package com.ym.mec.collectfee.controller;
  2. import com.ym.mec.collectfee.common.page.PageInfo;
  3. import com.ym.mec.collectfee.common.page.QueryInfo;
  4. import com.ym.mec.collectfee.common.web.BaseController;
  5. import com.ym.mec.collectfee.entity.ApplyInfo;
  6. import com.ym.mec.collectfee.entity.MusicTeamsPageInfo;
  7. import com.ym.mec.collectfee.entity.School;
  8. import com.ym.mec.collectfee.entity.StudentsQueryInfo;
  9. import com.ym.mec.collectfee.service.ApplyInfoService;
  10. import com.ym.mec.collectfee.service.CourseGroupInfoService;
  11. import com.ym.mec.collectfee.service.OrderService;
  12. import com.ym.mec.collectfee.service.SchoolService;
  13. import io.swagger.annotations.Api;
  14. import io.swagger.annotations.ApiImplicitParam;
  15. import io.swagger.annotations.ApiImplicitParams;
  16. import io.swagger.annotations.ApiOperation;
  17. import org.apache.commons.lang3.StringUtils;
  18. import org.springframework.beans.factory.annotation.Autowired;
  19. import org.springframework.web.bind.annotation.GetMapping;
  20. import org.springframework.web.bind.annotation.PostMapping;
  21. import org.springframework.web.bind.annotation.RequestMapping;
  22. import org.springframework.web.bind.annotation.RestController;
  23. import java.util.Date;
  24. @RestController()
  25. @RequestMapping("user")
  26. @Api("用户服务")
  27. public class UserController extends BaseController {
  28. @Autowired
  29. private ApplyInfoService applyInfoService;
  30. @Autowired
  31. private SchoolService schoolService;
  32. @Autowired
  33. private OrderService orderService;
  34. @Autowired
  35. private CourseGroupInfoService courseGroupInfoService;
  36. /**
  37. * 查询用户详情
  38. * @param phone
  39. * @param clazzId
  40. * @return
  41. */
  42. @GetMapping("/getUserDetailByPhone")
  43. @ApiOperation(value = "根据乐团编号、用户手机,查询用户详情")
  44. @ApiImplicitParams({ @ApiImplicitParam(name = "phone", value = "用户手机", required = true, dataType = "String"),
  45. @ApiImplicitParam(name = "clazzId", value = "乐团编号", required = true, dataType = "Integer")})
  46. public Object getUserDetailByPhone(String phone,Integer clazzId){
  47. if(StringUtils.isEmpty(phone) || clazzId == null){
  48. return failed("参数校验异常");
  49. }
  50. ApplyInfo userByPhone = applyInfoService.findUserByPhone(phone, clazzId);
  51. return succeed(userByPhone);
  52. }
  53. /**
  54. * 用户报名
  55. * @param applyInfo
  56. * @return
  57. */
  58. @ApiOperation(value = "学生报名乐团")
  59. @PostMapping("/userApply")
  60. public Object userApply(ApplyInfo applyInfo){
  61. if(applyInfo != null){
  62. Date date = new Date();
  63. applyInfo.setCreateTime(date);
  64. applyInfo.setUpdateTime(date);
  65. applyInfoService.insert(applyInfo);
  66. return succeed(applyInfo.getId());
  67. }
  68. return failed();
  69. }
  70. /**
  71. * 根据乐团id获取乐团详情,查询乐团状态也通过该接口
  72. * @param clazzId
  73. * @return
  74. */
  75. @ApiOperation(value = "根据乐团编号获取乐团详情,查询乐团状态也通过该接口")
  76. @PostMapping("/getClassDetail")
  77. @ApiImplicitParams({ @ApiImplicitParam(name = "clazzId", value = "乐团编号", required = true, dataType = "Integer"),
  78. @ApiImplicitParam(name = "schoolId", value = "学校编号", required = true, dataType = "Integer")})
  79. public Object getSchoolDetail(Integer schoolId,Integer clazzId){
  80. return succeed(orderService.getSchoolDetail(schoolId,clazzId));
  81. }
  82. /**
  83. * 根据学生编号获取乐团注册页面数据
  84. * @param stuId
  85. * @return
  86. */
  87. @ApiOperation(value = "根据学生编号获取乐团注册页面数据")
  88. @PostMapping("/getUserRegisterViewDetail")
  89. public Object getUserRegisterViewDetail(Integer stuId){
  90. return succeed(applyInfoService.getUserRegisterViewDetail(stuId));
  91. }
  92. /**
  93. * 推送用户到mec注册
  94. * @return
  95. */
  96. @PostMapping("/userRegister")
  97. public Object userRegister(String phone){
  98. return succeed(applyInfoService.userRegister(phone));
  99. }
  100. /**
  101. * 获取乐团课程组列表
  102. * @return
  103. */
  104. @PostMapping("/getCourses")
  105. @ApiOperation(value = "根据乐团编号,获取乐团课程组列表")
  106. @ApiImplicitParams({ @ApiImplicitParam(name = "clazzId", value = "乐团编号", required = true, dataType = "Integer")})
  107. public Object getCourses(Integer clazzId){
  108. return succeed(courseGroupInfoService.getCourses(clazzId));
  109. }
  110. @ApiOperation(value = "获取所有乐团列表")
  111. @PostMapping("/getMusicTeams")
  112. public Object getMusicTeams(MusicTeamsPageInfo pageInfo){
  113. return succeed(schoolService.queryPage(pageInfo));
  114. }
  115. @ApiOperation(value = "根据乐团编号,获取学员列表")
  116. @PostMapping("/getMusicTeamStu")
  117. public Object getMusicTeamStu(StudentsQueryInfo queryInfo){
  118. return succeed(applyInfoService.queryUserPage(queryInfo));
  119. }
  120. @ApiOperation(value = "获取所有分部列表")
  121. @GetMapping("/getBranches")
  122. public Object getBranches(){
  123. return succeed(applyInfoService.getBranches());
  124. }
  125. @ApiOperation(value = "获取学校详情")
  126. @GetMapping("/getSchool")
  127. public Object getSchool(Integer schoolId){
  128. return succeed(applyInfoService.get(schoolId));
  129. }
  130. /**
  131. * 保存学校列表
  132. * @return
  133. */
  134. @GetMapping("/saveSeminary")
  135. public Object saveSeminary(){
  136. applyInfoService.saveSeminary();
  137. return succeed();
  138. }
  139. /**
  140. * 修改乐团信息
  141. * @return
  142. */
  143. @ApiOperation(value = "修改乐团信息")
  144. @PostMapping("/updateClass")
  145. public Object updateClass(School school){
  146. school.setUpdateTime(new Date());
  147. schoolService.update(school);
  148. return succeed();
  149. }
  150. /**
  151. * 修改学生信息
  152. * @return
  153. */
  154. @ApiOperation(value = "修改学生信息")
  155. @PostMapping("/updateUser")
  156. public Object updateUser(ApplyInfo applyInfo){
  157. applyInfo.setUpdateTime(new Date());
  158. applyInfoService.update(applyInfo);
  159. return succeed();
  160. }
  161. }