選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。
 
 
 
 
 
 

128 行
4.4 KiB

  1. using Nancy;
  2. using Learun.Util;
  3. using System.Collections.Generic;
  4. using Learun.Application.TwoDevelopment.PersonnelManagement;
  5. using Learun.Application.OA.Schedule;
  6. using System;
  7. namespace Learun.Application.WebApi
  8. {
  9. /// <summary>
  10. /// 版 本 Learun-ADMS-Ultimate V7.0.0 数字化智慧校园
  11. /// Copyright (c) 2013-2018 北京泉江科技有限公司
  12. /// 创 建:超级管理员
  13. /// 日 期:2019-12-25 14:53
  14. /// 描 述:日程安排
  15. /// </summary>
  16. public class ScheduleApi : BaseApi
  17. {
  18. private ScheduleIBLL ScheduleIBLL = new ScheduleBLL();
  19. /// <summary>
  20. /// 注册接口
  21. /// <summary>
  22. public ScheduleApi()
  23. : base("/Learun/adms/PersonnelManagement/Schedule")
  24. {
  25. Get["/pagelist"] = GetPageList;
  26. Get["/list"] = GetList;
  27. Get["/form"] = GetForm;
  28. Post["/delete"] = DeleteForm;
  29. Post["/save"] = SaveForm;
  30. }
  31. #region 获取数据
  32. /// <summary>
  33. /// 获取页面显示列表分页数据
  34. /// <summary>
  35. /// <param name="_"></param>
  36. /// <returns></returns>
  37. public Response GetPageList(dynamic _)
  38. {
  39. ReqPageParam parameter = this.GetReqData<ReqPageParam>();
  40. var data = ScheduleIBLL.GetPageListByUserId(parameter.pagination, parameter.queryJson, this.userInfo.userId);
  41. var jsonData = new
  42. {
  43. rows = data,
  44. total = parameter.pagination.total,
  45. page = parameter.pagination.page,
  46. records = parameter.pagination.records
  47. };
  48. return Success(jsonData);
  49. }
  50. /// <summary>
  51. /// 获取页面显示列表数据
  52. /// <summary>
  53. /// <param name="_"></param>
  54. /// <returns></returns>
  55. public Response GetList(dynamic _)
  56. {
  57. string queryJson = this.GetReqData();
  58. var data = ScheduleIBLL.GetList();
  59. return Success(data);
  60. }
  61. /// <summary>
  62. /// 获取表单数据
  63. /// <summary>
  64. /// <param name="_"></param>
  65. /// <returns></returns>
  66. public Response GetForm(dynamic _)
  67. {
  68. string keyValue = this.GetReqData();
  69. var ScheduleData = ScheduleIBLL.GetEntity(keyValue);
  70. ScheduleData.F_StartDate = Convert.ToDateTime((ScheduleData.F_StartDate.ToDate().ToString("yyyy-MM-dd") + " " + ScheduleData.F_StartTime.Substring(0, 2) + ":" + ScheduleData.F_StartTime.Substring(2, 2)).ToDate().ToString("yyyy-MM-dd HH:mm"));
  71. ScheduleData.F_EndDate = Convert.ToDateTime((ScheduleData.F_EndDate.ToDate().ToString("yyyy-MM-dd") + " " + ScheduleData.F_EndTime.Substring(0, 2) + ":" + ScheduleData.F_EndTime.Substring(2, 2)).ToDate().ToString("yyyy-MM-dd HH:mm"));
  72. var jsonData = new
  73. {
  74. Schedule = ScheduleData,
  75. };
  76. return Success(jsonData);
  77. }
  78. #endregion
  79. #region 提交数据
  80. /// <summary>
  81. /// 删除实体数据
  82. /// <param name="_"></param>
  83. /// <summary>
  84. /// <returns></returns>
  85. public Response DeleteForm(dynamic _)
  86. {
  87. string keyValue = this.GetReqData();
  88. ScheduleIBLL.RemoveForm(keyValue);
  89. return Success("删除成功!");
  90. }
  91. /// <summary>
  92. /// 保存实体数据(新增、修改)
  93. /// <param name="_"></param>
  94. /// <summary>
  95. /// <returns></returns>
  96. public Response SaveForm(dynamic _)
  97. {
  98. ReqFormEntity parameter = this.GetReqData<ReqFormEntity>();
  99. ScheduleEntity entity = parameter.strEntity.ToObject<ScheduleEntity>();
  100. entity.F_StartDate = entity.F_StartDate.ToDate();
  101. entity.F_EndDate = entity.F_EndDate.ToDate();
  102. entity.F_StartTime = entity.F_StartDate.ToTimeString().Replace(":", "").Substring(0, 4);
  103. entity.F_EndTime = entity.F_EndDate.ToTimeString().Replace(":", "").Substring(0, 4);
  104. ScheduleIBLL.SaveForm(parameter.keyValue, entity);
  105. return Success("保存成功!");
  106. }
  107. #endregion
  108. #region 私有类
  109. /// <summary>
  110. /// 表单实体类
  111. /// <summary>
  112. private class ReqFormEntity
  113. {
  114. public string keyValue { get; set; }
  115. public string strEntity { get; set; }
  116. }
  117. #endregion
  118. }
  119. }