25'ten fazla konu seçemezsiniz Konular bir harf veya rakamla başlamalı, kısa çizgiler ('-') içerebilir ve en fazla 35 karakter uzunluğunda olabilir.
 
 
 
 
 
 

162 satır
5.7 KiB

  1. using Nancy;
  2. using Learun.Util;
  3. using System.Collections.Generic;
  4. using Learun.Application.TwoDevelopment.EducationalAdministration;
  5. using System.Linq;
  6. using Learun.Application.Organization;
  7. using System;
  8. namespace Learun.Application.WebApi
  9. {
  10. /// <summary>
  11. /// 版 本 Learun-ADMS-Ultimate V7.0.0 数字化智慧校园
  12. /// Copyright (c) 2013-2018 北京泉江科技有限公司
  13. /// 创 建:超级管理员
  14. /// 日 期:2019-06-17 16:28
  15. /// 描 述:日志发送
  16. /// </summary>
  17. public class JournalApi : BaseApi
  18. {
  19. private JournalSendIBLL journalIBLL = new JournalSendBLL();
  20. private JournalReceiveIBLL journalReceiveIBLL = new JournalReceiveBLL();
  21. private UserIBLL userIBLL = new UserBLL();
  22. /// <summary>
  23. /// 注册接口
  24. /// <summary>
  25. public JournalApi()
  26. : base("/Learun/adms/EducationalAdministration/Journal")
  27. {
  28. Get["/pagelist"] = GetPageList;
  29. Get["/list"] = GetList;
  30. Get["/form"] = GetForm;
  31. Post["/delete"] = DeleteForm;
  32. Post["/save"] = SaveForm;
  33. Post["/saveDraft"] = SaveDraft;
  34. }
  35. #region 获取数据
  36. /// <summary>
  37. /// 获取页面显示列表分页数据
  38. /// <summary>
  39. /// <param name="_"></param>
  40. /// <returns></returns>
  41. public Response GetPageList(dynamic _)
  42. {
  43. ReqPageParam parameter = this.GetReqData<ReqPageParam>();
  44. var data = journalIBLL.GetPageList(parameter.pagination, parameter.queryJson).ToList();
  45. var result = data.Where(a => a.JSenderId == userInfo.userId || a.JReceiveId.Contains(userInfo.userId));
  46. var jsonData = new
  47. {
  48. rows = result,
  49. total = result.Count(),
  50. page = parameter.pagination.page,
  51. records = parameter.pagination.records
  52. };
  53. return Success(jsonData);
  54. }
  55. /// <summary>
  56. /// 获取页面显示列表数据
  57. /// <summary>
  58. /// <param name="_"></param>
  59. /// <returns></returns>
  60. public Response GetList(dynamic _)
  61. {
  62. string queryJson = this.GetReqData();
  63. var data = journalIBLL.GetList(queryJson);
  64. var result = data.ToList().Where(a => a.JSenderId == userInfo.userId || a.JReceiveId.Contains(userInfo.userId));
  65. return Success(result);
  66. }
  67. /// <summary>
  68. /// 获取表单数据
  69. /// <summary>
  70. /// <param name="_"></param>
  71. /// <returns></returns>
  72. public Response GetForm(dynamic _)
  73. {
  74. string keyValue = this.GetReqData();
  75. var JournalSendData = journalIBLL.GetJournalSendEntityNoHtml(keyValue);
  76. var jsonData = new
  77. {
  78. JournalSend = JournalSendData,
  79. };
  80. return Success(jsonData);
  81. }
  82. #endregion
  83. #region 提交数据
  84. /// <summary>
  85. /// 删除实体数据
  86. /// <param name="_"></param>
  87. /// <summary>
  88. /// <returns></returns>
  89. public Response DeleteForm(dynamic _)
  90. {
  91. string keyValue = this.GetReqData();
  92. journalIBLL.DeleteEntity(keyValue);
  93. return Success("删除成功!");
  94. }
  95. /// <summary>
  96. /// 保存实体数据(新增、修改)
  97. /// <param name="_"></param>
  98. /// <summary>
  99. /// <returns></returns>
  100. public Response SaveForm(dynamic _)
  101. {
  102. ReqFormEntity parameter = this.GetReqData<ReqFormEntity>();
  103. JournalSendEntity entity = parameter.strEntity.ToObject<JournalSendEntity>();
  104. var userInfo = LoginUserInfo.Get();
  105. entity.JSenderId = userInfo.userId;
  106. entity.JSender = userInfo.realName;
  107. entity.JReceive = userIBLL.GetEntityByUserId(entity.JReceiveId).F_RealName;
  108. entity.JIsSend = true;
  109. entity.JSendTime = DateTime.Now;
  110. journalIBLL.SaveEntity(this.userInfo, parameter.keyValue, entity);
  111. var receiveEntity = new JournalReceiveEntity();
  112. receiveEntity.JContent = entity.JContent;
  113. receiveEntity.JReceive = entity.JReceive;
  114. receiveEntity.JReceiveId = entity.JReceiveId;
  115. receiveEntity.JSender = entity.JSender;
  116. receiveEntity.JSenderId = entity.JSenderId;
  117. receiveEntity.JSendTime = entity.JSendTime;
  118. receiveEntity.JTitle = entity.JTitle;
  119. receiveEntity.JTypeId = entity.JTypeId;
  120. receiveEntity.JIsRead = false;
  121. journalReceiveIBLL.SaveEntity("", receiveEntity);
  122. return Success("保存成功!");
  123. }
  124. public Response SaveDraft(dynamic _)
  125. {
  126. ReqFormEntity parameter = this.GetReqData<ReqFormEntity>();
  127. JournalSendEntity entity = parameter.strEntity.ToObject<JournalSendEntity>();
  128. var userInfo = LoginUserInfo.Get();
  129. entity.JSenderId = userInfo.userId;
  130. entity.JSender = userInfo.realName;
  131. entity.JReceive = userIBLL.GetEntityByUserId(entity.JReceiveId).F_RealName;
  132. entity.JIsSend = false;
  133. entity.JSendTime = DateTime.Now;
  134. journalIBLL.SaveEntity(this.userInfo, parameter.keyValue, entity);
  135. return Success("保存成功!");
  136. }
  137. #endregion
  138. #region 私有类
  139. /// <summary>
  140. /// 表单实体类
  141. /// <summary>
  142. private class ReqFormEntity
  143. {
  144. public string keyValue { get; set; }
  145. public string strEntity { get; set; }
  146. }
  147. #endregion
  148. }
  149. }