You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

63 lines
2.3 KiB

  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Web;
  5. using Learun.Application.Base.SystemModule;
  6. using Learun.Application.TwoDevelopment.EducationalAdministration;
  7. using Learun.Util;
  8. using Nancy;
  9. namespace Learun.Application.WebApi.Modules
  10. {
  11. public class TeachAttendance : BaseApi
  12. {
  13. public TeachAttendance()
  14. : base("/teachattendance/")
  15. {
  16. Get["/major"] = GetList;
  17. Get["/students"] = AttendanceStudents;
  18. }
  19. private ArrangeLessonTermIBLL arrangeLessonTermIBLL = new ArrangeLessonTermBLL();
  20. private StuAttendanceIBLL stuAttendanceIBLL = new StuAttendanceBLL();
  21. private ArrangeLessonTermOfElectiveIBLL arrangeLessonTermOfElectiveIBLL = new ArrangeLessonTermOfElectiveBLL();
  22. private readonly TeachAttendanceIBLL teachAttendanceIBLL = new TeachAttendanceBLL();
  23. private DataItemIBLL dataItemIBLL = new DataItemBLL();
  24. public Response GetList(dynamic _)
  25. {
  26. var result = teachAttendanceIBLL.GetAttendanceByEmpNo(userInfo.account);
  27. return Success(result);
  28. }
  29. public Response AttendanceStudents(dynamic _)
  30. {
  31. ReqPageParam parameter = this.GetReqData<ReqPageParam>();
  32. var queryParam = parameter.queryJson.ToJObject();
  33. var data = new List<StuSelectLessonListEntity>();
  34. if (queryParam["LessonSortNo"].ToString() == "1")//必修课
  35. {
  36. data = arrangeLessonTermIBLL.AttendanceStudents(parameter.pagination, parameter.queryJson).ToList();
  37. foreach (var item in data)
  38. {
  39. item.kqType = dataItemIBLL.GetDetailListByParentId("ktkqlx", "0").Find(a => a.F_ItemName == item.Sort).F_ItemValue;
  40. }
  41. }
  42. else if (queryParam["LessonSortNo"].ToString() == "2")//选修课
  43. {
  44. data = arrangeLessonTermOfElectiveIBLL.AttendanceStudents(parameter.pagination, parameter.queryJson).ToList();
  45. }
  46. var jsonData = new
  47. {
  48. rows = data,
  49. total = parameter.pagination.total,
  50. page = parameter.pagination.page,
  51. records = parameter.pagination.records
  52. };
  53. return Success(jsonData);
  54. }
  55. }
  56. }