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.
 
 
 
 
 
 

183 lines
5.8 KiB

  1. using Dapper;
  2. using Learun.DataBase.Repository;
  3. using Learun.Util;
  4. using System;
  5. using System.Collections.Generic;
  6. using System.Data;
  7. using System.Linq;
  8. using System.Text;
  9. namespace Learun.Application.TwoDevelopment.EducationalAdministration
  10. {
  11. /// <summary>
  12. /// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架
  13. /// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
  14. /// 创 建:超级管理员
  15. /// 日 期:2021-05-21 11:05
  16. /// 描 述:校园新闻
  17. /// </summary>
  18. public class SchoolNewsService : RepositoryFactory
  19. {
  20. #region 获取数据
  21. /// <summary>
  22. /// 获取页面显示列表数据
  23. /// </summary>
  24. /// <param name="pagination">查询参数</param>
  25. /// <param name="queryJson">查询参数</param>
  26. /// <returns></returns>
  27. public IEnumerable<LR_OA_SchoolNewsEntity> GetPageList(Pagination pagination, string queryJson)
  28. {
  29. try
  30. {
  31. var strSql = new StringBuilder();
  32. strSql.Append("SELECT ");
  33. strSql.Append(@"
  34. t.*
  35. ");
  36. strSql.Append(" FROM LR_OA_SchoolNews t ");
  37. strSql.Append(" WHERE 1=1 ");
  38. var queryParam = queryJson.ToJObject();
  39. // 虚拟参数
  40. var dp = new DynamicParameters(new { });
  41. if (!queryParam["F_FullHead"].IsEmpty())
  42. {
  43. dp.Add("F_FullHead", "%" + queryParam["F_FullHead"].ToString() + "%", DbType.String);
  44. strSql.Append(" AND t.F_FullHead Like @F_FullHead ");
  45. }
  46. if (!queryParam["F_CategoryId"].IsEmpty())
  47. {
  48. dp.Add("F_CategoryId", queryParam["F_CategoryId"].ToInt(), DbType.Int32);
  49. strSql.Append(" AND t.F_CategoryId = @F_CategoryId ");
  50. }
  51. return this.BaseRepository().FindList<LR_OA_SchoolNewsEntity>(strSql.ToString(), dp, pagination);
  52. }
  53. catch (Exception ex)
  54. {
  55. if (ex is ExceptionEx)
  56. {
  57. throw;
  58. }
  59. else
  60. {
  61. throw ExceptionEx.ThrowServiceException(ex);
  62. }
  63. }
  64. }
  65. public IEnumerable<LR_OA_SchoolNewsEntity> GetListByCategoryId(string categoryId)
  66. {
  67. var strSql = new StringBuilder();
  68. strSql.Append("SELECT ");
  69. strSql.Append(@"
  70. t.F_NewsId,
  71. t.F_CategoryId,
  72. t.F_FullHead,
  73. t.F_ReleaseTime,
  74. t.F_NewsImage
  75. ");
  76. strSql.Append(" FROM LR_OA_SchoolNews t ");
  77. strSql.Append(" WHERE F_EnabledMark=1 ");
  78. strSql.Append($" and F_CategoryId='{categoryId}' ");
  79. IEnumerable<LR_OA_SchoolNewsEntity> list = this.BaseRepository("BaseDb").FindList<LR_OA_SchoolNewsEntity>(strSql.ToString());
  80. foreach (var entity in list.Where(x => !string.IsNullOrEmpty(x.F_NewsImage)))
  81. {
  82. var LR_Base_AnnexesFile = BaseRepository("BaseDb").FindEntity<dynamic>("select * from LR_Base_AnnexesFile where F_FolderId='" + entity.F_NewsImage + "'", null);
  83. if (LR_Base_AnnexesFile != null)
  84. {
  85. entity.F_NewsImage = LR_Base_AnnexesFile.F_FilePath;
  86. }
  87. }
  88. return list;
  89. }
  90. /// <summary>
  91. /// 获取LR_OA_SchoolNews表实体数据
  92. /// </summary>
  93. /// <param name="keyValue">主键</param>
  94. /// <returns></returns>
  95. public LR_OA_SchoolNewsEntity GetLR_OA_SchoolNewsEntity(string keyValue)
  96. {
  97. try
  98. {
  99. return this.BaseRepository().FindEntity<LR_OA_SchoolNewsEntity>(keyValue);
  100. }
  101. catch (Exception ex)
  102. {
  103. if (ex is ExceptionEx)
  104. {
  105. throw;
  106. }
  107. else
  108. {
  109. throw ExceptionEx.ThrowServiceException(ex);
  110. }
  111. }
  112. }
  113. #endregion
  114. #region 提交数据
  115. /// <summary>
  116. /// 删除实体数据
  117. /// </summary>
  118. /// <param name="keyValue">主键</param>
  119. public void DeleteEntity(string keyValue)
  120. {
  121. try
  122. {
  123. this.BaseRepository().Delete<LR_OA_SchoolNewsEntity>(t => t.F_NewsId == keyValue);
  124. }
  125. catch (Exception ex)
  126. {
  127. if (ex is ExceptionEx)
  128. {
  129. throw;
  130. }
  131. else
  132. {
  133. throw ExceptionEx.ThrowServiceException(ex);
  134. }
  135. }
  136. }
  137. /// <summary>
  138. /// 保存实体数据(新增、修改)
  139. /// </summary>
  140. /// <param name="keyValue">主键</param>
  141. /// <param name="entity">实体</param>
  142. public void SaveEntity(string keyValue, LR_OA_SchoolNewsEntity entity)
  143. {
  144. try
  145. {
  146. if (!string.IsNullOrEmpty(keyValue))
  147. {
  148. entity.Modify(keyValue);
  149. this.BaseRepository().Update(entity);
  150. }
  151. else
  152. {
  153. entity.Create();
  154. this.BaseRepository().Insert(entity);
  155. }
  156. }
  157. catch (Exception ex)
  158. {
  159. if (ex is ExceptionEx)
  160. {
  161. throw;
  162. }
  163. else
  164. {
  165. throw ExceptionEx.ThrowServiceException(ex);
  166. }
  167. }
  168. }
  169. #endregion
  170. }
  171. }