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.
 
 
 
 
 
 

133 Zeilen
4.3 KiB

  1. using Learun.Application.Base.SystemModule;
  2. using Learun.Application.TwoDevelopment.LogisticsManagement;
  3. using Learun.Application.TwoDevelopment.PersonnelManagement;
  4. using Learun.Util;
  5. using Nancy;
  6. using System;
  7. using System.Collections.Generic;
  8. using System.IO;
  9. namespace Learun.Application.WebApi.Modules
  10. {
  11. /// <summary>
  12. /// 考勤打卡功能
  13. /// </summary>
  14. public class AttendanceApi : BaseApi
  15. {
  16. public AttendanceApi()
  17. : base("/learun/adms/attendance")
  18. {
  19. //判断当前时间是否可以打卡
  20. Get["/IsAttendance"] = IsAttendance;
  21. //打卡
  22. Post["/clockin"] = ClockIn;
  23. //获取考勤打卡记录
  24. Get["/getrecordpagelist"] = GetRecordPageList;
  25. //判断学生当前打卡状态
  26. Get["IsAttendanceStudent"] = IsAttendanceStudent;
  27. //学生打卡
  28. Post["/clockinStudent"] = ClockInStudent;
  29. //打卡记录
  30. Get["/GetTeacherRecord"] = GetTeacherRecord;
  31. }
  32. private ADR_RestrictionIBLL adr_RestrictionBLL = new ADR_RestrictionBLL();
  33. private ADR_RecordIBLL adr_RecordBLL = new ADR_RecordBLL();
  34. public Response GetTeacherRecord(dynamic _)
  35. {
  36. ReqPageParam parameter = this.GetReqData<ReqPageParam>();
  37. var res=adr_RecordBLL.GetList(parameter.queryJson);
  38. var jsondata =
  39. new
  40. {
  41. data = res
  42. };
  43. return Success(jsondata);
  44. }
  45. /// <summary>
  46. /// 判断当前时间是否可以打卡
  47. /// </summary>
  48. /// <param name="_"></param>
  49. /// <returns></returns>
  50. public Response IsAttendance(dynamic _)
  51. {
  52. var res = adr_RestrictionBLL.IsAttendance();
  53. var jsondata =
  54. new
  55. {
  56. data = res
  57. };
  58. return Success(jsondata);
  59. }
  60. /// <summary>
  61. /// 学生打卡判断
  62. /// </summary>
  63. /// <param name="_"></param>
  64. /// <returns></returns>
  65. public Response IsAttendanceStudent(dynamic _)
  66. {
  67. var res = adr_RestrictionBLL.IsAttendanceStudent();
  68. var jsondata =
  69. new
  70. {
  71. data = res
  72. };
  73. return Success(jsondata);
  74. }
  75. public class Attendance
  76. {
  77. public decimal ALon { get; set; }
  78. public decimal ALat { get; set; }
  79. public bool AIsOut { get; set; }
  80. public string ARemark { get; set; }
  81. public string ADPhoto { get; set; }
  82. public string ClockPlace { get; set; }
  83. public string LessonSortNo { get; set; }
  84. public string ALTId { get; set; }
  85. public string ALTOEId { get; set; }
  86. }
  87. /// <summary>
  88. /// 打卡
  89. /// </summary>
  90. /// <param name="_"></param>
  91. /// <returns></returns>
  92. public Response ClockIn(dynamic _)
  93. {
  94. Attendance parameter = this.GetReqData<Attendance>();
  95. adr_RestrictionBLL.ClockIn(parameter.ALon, parameter.ALat, parameter.AIsOut, parameter.ARemark,parameter.ADPhoto,parameter.ClockPlace);
  96. return Success("打卡成功");
  97. }
  98. public Response ClockInStudent(dynamic _)
  99. {
  100. Attendance parameter = this.GetReqData<Attendance>();
  101. adr_RestrictionBLL.ClockInStudent(parameter.ALon, parameter.ALat, parameter.AIsOut, parameter.ARemark, parameter.ADPhoto, parameter.ClockPlace,parameter.LessonSortNo,parameter.ALTId,parameter.ALTOEId);
  102. return Success("打卡成功");
  103. }
  104. /// <summary>
  105. /// 打卡
  106. /// </summary>
  107. /// <param name="_"></param>
  108. /// <returns></returns>
  109. public Response GetRecordPageList(dynamic _)
  110. {
  111. ReqPageParam parameter = this.GetReqData<ReqPageParam>();
  112. var data = adr_RecordBLL.GetPageList(parameter.pagination, parameter.queryJson);
  113. var jsonData = new
  114. {
  115. rows = data,
  116. total = parameter.pagination.total,
  117. page = parameter.pagination.page,
  118. records = parameter.pagination.records
  119. };
  120. return Success(jsonData);
  121. }
  122. }
  123. }