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.
 
 
 
 
 
 

219 lines
7.1 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. /// 日 期:2020-01-04 10:19
  15. /// 描 述:共青团团员
  16. /// </summary>
  17. public class LeagueMemberService : RepositoryFactory
  18. {
  19. #region 获取数据
  20. /// <summary>
  21. /// 获取页面显示列表数据
  22. /// <summary>
  23. /// <param name="queryJson">查询参数</param>
  24. /// <returns></returns>
  25. public IEnumerable<LeagueMemberEntity> GetPageList(Pagination pagination, string queryJson)
  26. {
  27. try
  28. {
  29. var strSql = new StringBuilder();
  30. strSql.Append("SELECT t.*,s.ClassNo,s.GenderNo ");
  31. strSql.Append(" FROM LeagueMember t ");
  32. strSql.Append(" left join StuInfoBasic s on t.StuNo=s.StuNo ");
  33. strSql.Append(" WHERE 1=1 ");
  34. var queryParam = queryJson.ToJObject();
  35. // 虚拟参数
  36. var dp = new DynamicParameters(new { });
  37. if (!queryParam["StuNo"].IsEmpty())
  38. {
  39. dp.Add("StuNo", "%" + queryParam["StuNo"].ToString() + "%", DbType.String);
  40. strSql.Append(" AND t.StuNo like @StuNo ");
  41. }
  42. if (!queryParam["StuName"].IsEmpty())
  43. {
  44. dp.Add("StuName", "%" + queryParam["StuName"].ToString() + "%", DbType.String);
  45. strSql.Append(" AND t.StuName like @StuName ");
  46. }
  47. return this.BaseRepository("CollegeMIS").FindList<LeagueMemberEntity>(strSql.ToString(), dp, pagination);
  48. }
  49. catch (Exception ex)
  50. {
  51. if (ex is ExceptionEx)
  52. {
  53. throw;
  54. }
  55. else
  56. {
  57. throw ExceptionEx.ThrowServiceException(ex);
  58. }
  59. }
  60. }
  61. /// <summary>
  62. /// 获取LeagueMember表实体数据
  63. /// <param name="keyValue">主键</param>
  64. /// <summary>
  65. /// <returns></returns>
  66. public LeagueMemberEntity GetLeagueMemberEntity(string keyValue)
  67. {
  68. try
  69. {
  70. return this.BaseRepository("CollegeMIS").FindEntity<LeagueMemberEntity>(keyValue);
  71. }
  72. catch (Exception ex)
  73. {
  74. if (ex is ExceptionEx)
  75. {
  76. throw;
  77. }
  78. else
  79. {
  80. throw ExceptionEx.ThrowServiceException(ex);
  81. }
  82. }
  83. }
  84. /// <summary>
  85. /// 获取LeagueMember表实体数据
  86. /// <param name="keyValue">主键</param>
  87. /// <summary>
  88. /// <returns></returns>
  89. public LeagueMemberEntity GetLeagueMemberEntityByStuNo(string stuNo)
  90. {
  91. try
  92. {
  93. return this.BaseRepository("CollegeMIS").FindEntity<LeagueMemberEntity>(x => x.StuNo == stuNo);
  94. }
  95. catch (Exception ex)
  96. {
  97. if (ex is ExceptionEx)
  98. {
  99. throw;
  100. }
  101. else
  102. {
  103. throw ExceptionEx.ThrowServiceException(ex);
  104. }
  105. }
  106. }
  107. #endregion
  108. #region 提交数据
  109. /// <summary>
  110. /// 删除实体数据
  111. /// <param name="keyValue">主键</param>
  112. /// <summary>
  113. /// <returns></returns>
  114. public void DeleteEntity(string keyValue)
  115. {
  116. var db = this.BaseRepository("CollegeMIS").BeginTrans();
  117. try
  118. {
  119. var loginInfo = LoginUserInfo.Get();
  120. var entity = db.FindEntity<LeagueMemberEntity>(keyValue);
  121. if (entity != null)
  122. {
  123. //增加异动数据
  124. var leagueMemberChangeModel = new LeagueMemberChangeEntity()
  125. {
  126. StuNo = entity.StuNo,
  127. StuName = entity.StuName,
  128. ChangeType = "转出",
  129. ChangeTime = DateTime.Now,
  130. OperateUserId = loginInfo.userId,
  131. OpereateUserName = loginInfo.realName
  132. };
  133. leagueMemberChangeModel.Create();
  134. db.Insert(leagueMemberChangeModel);
  135. }
  136. //删除
  137. db.Delete<LeagueMemberEntity>(t => t.Id == keyValue);
  138. db.Commit();
  139. }
  140. catch (Exception ex)
  141. {
  142. db.Rollback();
  143. if (ex is ExceptionEx)
  144. {
  145. throw;
  146. }
  147. else
  148. {
  149. throw ExceptionEx.ThrowServiceException(ex);
  150. }
  151. }
  152. }
  153. /// <summary>
  154. /// 保存实体数据(新增、修改)
  155. /// <param name="keyValue">主键</param>
  156. /// <summary>
  157. /// <returns></returns>
  158. public void SaveEntity(string keyValue, LeagueMemberEntity entity)
  159. {
  160. var db = this.BaseRepository("CollegeMIS").BeginTrans();
  161. try
  162. {
  163. if (!string.IsNullOrEmpty(keyValue))
  164. {
  165. entity.Modify(keyValue);
  166. db.Update(entity);
  167. }
  168. else
  169. {
  170. var model = db.FindEntity<LeagueMemberEntity>(x => x.StuNo == entity.StuNo);
  171. if (model == null)
  172. {
  173. entity.Create();
  174. db.Insert(entity);
  175. //增加异动数据
  176. var leagueMemberChangeModel = new LeagueMemberChangeEntity()
  177. {
  178. StuNo = entity.StuNo,
  179. StuName = entity.StuName,
  180. ChangeType = "转入",
  181. ChangeTime = DateTime.Now,
  182. OperateUserId = entity.CreateUserId,
  183. OpereateUserName = entity.CreateUserName
  184. };
  185. leagueMemberChangeModel.Create();
  186. db.Insert(leagueMemberChangeModel);
  187. }
  188. }
  189. db.Commit();
  190. }
  191. catch (Exception ex)
  192. {
  193. db.Rollback();
  194. if (ex is ExceptionEx)
  195. {
  196. throw;
  197. }
  198. else
  199. {
  200. throw ExceptionEx.ThrowServiceException(ex);
  201. }
  202. }
  203. }
  204. #endregion
  205. }
  206. }