Du kannst nicht mehr als 25 Themen auswählen Themen müssen entweder mit einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.
 
 
 
 
 
 

85 Zeilen
3.0 KiB

  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Web;
  5. using Learun.Application.TwoDevelopment.EducationalAdministration;
  6. using Learun.Util;
  7. using Nancy;
  8. namespace Learun.Application.WebApi.Modules
  9. {
  10. public class ArrangeExam : BaseApi
  11. {
  12. public ArrangeExam()
  13. : base("/arrangeExam")
  14. {
  15. Get["/list"] = GetExamInfo;
  16. Get["/stuList"] = GetStuExamInfo;
  17. }
  18. private readonly ArrangeExamTermIBLL arrangeExamTermIBLL = new ArrangeExamTermBLL();
  19. private readonly StuInfoBasicIBLL stuInfoBasicIBLL = new StuInfoBasicBLL();
  20. /// <summary>
  21. /// 教师查看自己的监考安排
  22. /// </summary>
  23. /// <param name="_"></param>
  24. /// <returns></returns>
  25. private Response GetExamInfo(dynamic _)
  26. {
  27. var param = this.GetReqData<Times>();
  28. //开始时间
  29. var startdate = string.IsNullOrEmpty(param.startTime) ? DateTime.Today : Convert.ToDateTime(param.startTime);
  30. var startDate = Common.CalculateFirstDateOfWeek(startdate).ToString("yyyy-MM-dd");
  31. var endDate = Common.CalculateLastDateOfWeek(startdate).ToString("yyyy-MM-dd");
  32. //获取考试数据
  33. var timeTables = arrangeExamTermIBLL.GetExamTable(startDate, endDate, "", userInfo.account);
  34. return Success(timeTables);
  35. }
  36. /// <summary>
  37. /// 考试安排【学生功能】
  38. /// </summary>
  39. /// <param name="_"></param>
  40. /// <returns></returns>
  41. private Response GetStuExamInfo(dynamic _)
  42. {
  43. var param = this.GetReqData<Times>();
  44. //获取学生所在班级
  45. var stuInfoBasicEntity = stuInfoBasicIBLL.GetStuInfoBasicEntityByStuNo(userInfo.account);
  46. if (stuInfoBasicEntity == null)
  47. {
  48. return Fail("学生不存在!");
  49. }
  50. //开始时间
  51. var startdate = string.IsNullOrEmpty(param.startTime) ? DateTime.Today : Convert.ToDateTime(param.startTime);
  52. var startDate = Common.CalculateFirstDateOfWeek(startdate).ToString("yyyy-MM-dd");
  53. var endDate = Common.CalculateLastDateOfWeek(startdate).ToString("yyyy-MM-dd");
  54. var timeTables = new List<TwoDevelopment.EducationalAdministration.TimeTable>();
  55. //获取考试数据
  56. var timeTablesOfBixiu = arrangeExamTermIBLL.GetExamTable(startDate, endDate, stuInfoBasicEntity.ClassNo, "");
  57. timeTables.AddRange(timeTablesOfBixiu);
  58. //获取选修考试数据
  59. var timeTablesOfElective = arrangeExamTermIBLL.GetExamTableOfElectiveInStudent(startDate, endDate, userInfo.account);
  60. timeTables.AddRange(timeTablesOfElective);
  61. return Success(timeTables);
  62. }
  63. public class Times
  64. {
  65. public string startTime { get; set; }
  66. public string endTime { get; set; }
  67. }
  68. }
  69. }