teacher.js 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. const teacherModel = require('../model/teacher');
  2. const Response = require('../util/response');
  3. const getTokenUser = require('../util/tokenProcessor');
  4. class TeacherController {
  5. static async getInfo(ctx){
  6. let theUser = await getTokenUser(ctx);
  7. let teacher = await teacherModel.findByUid(theUser.id);
  8. if(teacher){
  9. ctx.body = Response.success({realName: teacher.realName, certificate: teacher.certificate, organization: teacher.organization, jobNumber: teacher.jobNumber, state: teacher.state});
  10. }else{
  11. ctx.body = Response.failed("此教师不存在");
  12. }
  13. }
  14. static async apply(ctx){
  15. let theUser = await getTokenUser(ctx);
  16. let data = ctx.request.body;
  17. let result = await teacherModel.create({...data, ...theUser});
  18. if(result){
  19. ctx.body = Response.success({});
  20. }else{
  21. ctx.body = Response.failed("参数错误");
  22. }
  23. }
  24. static async reapply(ctx){
  25. let theUser = await getTokenUser(ctx);
  26. let data = ctx.request.body;
  27. let result = await teacherModel.updateInfo({...data, uid: theUser.id});
  28. if(result){
  29. ctx.body = Response.success({});
  30. }else{
  31. ctx.body = Response.failed("参数错误");
  32. }
  33. }
  34. static async getApplications(ctx){
  35. let theUser = await getTokenUser(ctx);
  36. if(theUser.role !== "ADMIN"){
  37. ctx.status = 401;
  38. }else{
  39. let result = await teacherModel.getApplications();
  40. if(result){
  41. ctx.body = Response.success(result);
  42. }else{
  43. ctx.body = Response.failed("获取失败");
  44. }
  45. }
  46. }
  47. }
  48. module.exports = TeacherController;