25개 이상의 토픽을 선택하실 수 없습니다. Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

192 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.Text;
  8. namespace Learun.Application.TwoDevelopment.PersonnelManagement
  9. {
  10. /// <summary>
  11. /// 版 本 Learun-ADMS-Ultimate V7.0.0 数字化智慧校园
  12. /// Copyright (c) 2013-2018 北京泉江科技有限公司
  13. /// 创 建:超级管理员
  14. /// 日 期:2019-03-19 14:27
  15. /// 描 述:退休教职工
  16. /// </summary>
  17. public class TeacherRetireService : RepositoryFactory
  18. {
  19. #region 获取数据
  20. /// <summary>
  21. /// 获取页面显示列表数据
  22. /// <summary>
  23. /// <param name="queryJson">查询参数</param>
  24. /// <returns></returns>
  25. public IEnumerable<TeacherRetireEntity> GetPageList(Pagination pagination, string queryJson)
  26. {
  27. try
  28. {
  29. var strSql = new StringBuilder();
  30. strSql.Append("SELECT ");
  31. strSql.Append(@"
  32. t.TRID,
  33. t.EID,
  34. t.TRTime,
  35. t.TRAges,
  36. t.TRComment
  37. ");
  38. strSql.Append(" FROM TeacherRetire t ");
  39. strSql.Append(" WHERE 1=1 ");
  40. var queryParam = queryJson.ToJObject();
  41. // 虚拟参数
  42. var dp = new DynamicParameters(new { });
  43. if (!queryParam["StartTime"].IsEmpty() && !queryParam["EndTime"].IsEmpty())
  44. {
  45. dp.Add("startTime", queryParam["StartTime"].ToDate(), DbType.DateTime);
  46. dp.Add("endTime", queryParam["EndTime"].ToDate(), DbType.DateTime);
  47. strSql.Append(" AND ( t.TRTime >= @startTime AND t.TRTime <= @endTime ) ");
  48. }
  49. if (!queryParam["EID"].IsEmpty())
  50. {
  51. dp.Add("EID", queryParam["EID"].ToString(), DbType.String);
  52. strSql.Append(" AND t.EID = @EID ");
  53. }
  54. return this.BaseRepository().FindList<TeacherRetireEntity>(strSql.ToString(), dp, pagination);
  55. }
  56. catch (Exception ex)
  57. {
  58. if (ex is ExceptionEx)
  59. {
  60. throw;
  61. }
  62. else
  63. {
  64. throw ExceptionEx.ThrowServiceException(ex);
  65. }
  66. }
  67. }
  68. /// <summary>
  69. /// 获取TeacherRetire表实体数据
  70. /// <param name="keyValue">主键</param>
  71. /// <summary>
  72. /// <returns></returns>
  73. public TeacherRetireEntity GetTeacherRetireEntity(string keyValue)
  74. {
  75. try
  76. {
  77. return this.BaseRepository().FindEntity<TeacherRetireEntity>(keyValue);
  78. }
  79. catch (Exception ex)
  80. {
  81. if (ex is ExceptionEx)
  82. {
  83. throw;
  84. }
  85. else
  86. {
  87. throw ExceptionEx.ThrowServiceException(ex);
  88. }
  89. }
  90. }
  91. #endregion
  92. #region 提交数据
  93. /// <summary>
  94. /// 删除实体数据
  95. /// <param name="keyValue">主键</param>
  96. /// <summary>
  97. /// <returns></returns>
  98. public void DeleteEntity(string keyValue)
  99. {
  100. var db = this.BaseRepository();
  101. db.BeginTrans();
  102. try
  103. {
  104. var entity = db.FindEntity<TeacherRetireEntity>(keyValue);
  105. //人事异动
  106. db.Delete<TeacherChangeEntity>(x => x.EmpId == entity.EID && x.ChangeType == "01");
  107. db.Delete<TeacherRetireEntity>(t => t.TRID == keyValue);
  108. db.Commit();
  109. }
  110. catch (Exception ex)
  111. {
  112. if (ex is ExceptionEx)
  113. {
  114. throw;
  115. }
  116. else
  117. {
  118. throw ExceptionEx.ThrowServiceException(ex);
  119. }
  120. }
  121. }
  122. /// <summary>
  123. /// 保存实体数据(新增、修改)
  124. /// <param name="keyValue">主键</param>
  125. /// <summary>
  126. /// <returns></returns>
  127. public void SaveEntity(string keyValue, TeacherRetireEntity entity)
  128. {
  129. var db = this.BaseRepository();
  130. db.BeginTrans();
  131. try
  132. {
  133. if (!string.IsNullOrEmpty(keyValue))
  134. {
  135. entity.Modify(keyValue);
  136. db.Update(entity);
  137. }
  138. else
  139. {
  140. entity.Create();
  141. db.Insert(entity);
  142. }
  143. //人事异动
  144. var tcEntity = db.FindEntity<TeacherChangeEntity>(x => x.EmpId == entity.EID && x.ChangeType == "01");
  145. if (tcEntity == null)
  146. {
  147. var tcModel = new TeacherChangeEntity()
  148. {
  149. EmpId = entity.EID,
  150. ChangeTime = DateTime.Now,
  151. ChangeType = "01"
  152. };
  153. tcModel.Create();
  154. db.Insert(tcModel);
  155. }
  156. else
  157. {
  158. tcEntity.ChangeTime = DateTime.Now;
  159. tcEntity.Modify(tcEntity.Id);
  160. db.Update(tcEntity);
  161. }
  162. db.Commit();
  163. }
  164. catch (Exception ex)
  165. {
  166. if (ex is ExceptionEx)
  167. {
  168. throw;
  169. }
  170. else
  171. {
  172. throw ExceptionEx.ThrowServiceException(ex);
  173. }
  174. }
  175. }
  176. #endregion
  177. }
  178. }