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.
 
 
 
 
 
 

242 lines
7.9 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.EducationalAdministration
  9. {
  10. /// <summary>
  11. /// 版 本 Learun-ADMS-Ultimate V7.0.0 数字化智慧校园
  12. /// Copyright (c) 2013-2018 北京泉江科技有限公司
  13. /// 创 建:超级管理员
  14. /// 日 期:2019-07-03 11:29
  15. /// 描 述:教学计划管理
  16. /// </summary>
  17. public class TeachPlanService : RepositoryFactory
  18. {
  19. #region 获取数据
  20. /// <summary>
  21. /// 获取页面显示列表分页数据
  22. /// <summary>
  23. /// <param name="pagination">分页参数</param>
  24. /// <param name="queryJson">查询参数</param>
  25. /// <returns></returns>
  26. public IEnumerable<TeachPlanEntity> GetPageList(Pagination pagination, string queryJson)
  27. {
  28. try
  29. {
  30. var strSql = new StringBuilder();
  31. strSql.Append("SELECT ");
  32. strSql.Append(@"
  33. t.ID,
  34. t.PlanNo,
  35. t.VersionNo,
  36. t.DeptNo,
  37. t.MajorNo,
  38. t.Grade,
  39. t.Credits
  40. ");
  41. strSql.Append(" FROM TeachPlan t ");
  42. strSql.Append(" WHERE 1=1 ");
  43. var queryParam = queryJson.ToJObject();
  44. // 虚拟参数
  45. var dp = new DynamicParameters(new { });
  46. if (!queryParam["PlanNo"].IsEmpty())
  47. {
  48. dp.Add("PlanNo", "%" + queryParam["PlanNo"].ToString() + "%", DbType.String);
  49. strSql.Append(" AND t.PlanNo Like @PlanNo ");
  50. }
  51. if (!queryParam["VersionNo"].IsEmpty())
  52. {
  53. dp.Add("VersionNo", "%" + queryParam["VersionNo"].ToString() + "%", DbType.String);
  54. strSql.Append(" AND t.VersionNo Like @VersionNo ");
  55. }
  56. if (!queryParam["DeptNo"].IsEmpty())
  57. {
  58. dp.Add("DeptNo",queryParam["DeptNo"].ToString(), DbType.String);
  59. strSql.Append(" AND t.DeptNo = @DeptNo ");
  60. }
  61. if (!queryParam["MajorNo"].IsEmpty())
  62. {
  63. dp.Add("MajorNo",queryParam["MajorNo"].ToString(), DbType.String);
  64. strSql.Append(" AND t.MajorNo = @MajorNo ");
  65. }
  66. if (!queryParam["Grade"].IsEmpty())
  67. {
  68. dp.Add("Grade", "%" + queryParam["Grade"].ToString() + "%", DbType.String);
  69. strSql.Append(" AND t.Grade Like @Grade ");
  70. }
  71. return this.BaseRepository().FindList<TeachPlanEntity>(strSql.ToString(),dp, pagination);
  72. }
  73. catch (Exception ex)
  74. {
  75. if (ex is ExceptionEx)
  76. {
  77. throw;
  78. }
  79. else
  80. {
  81. throw ExceptionEx.ThrowServiceException(ex);
  82. }
  83. }
  84. }
  85. /// <summary>
  86. /// 获取页面显示列表数据
  87. /// <summary>
  88. /// <param name="queryJson">查询参数</param>
  89. /// <returns></returns>
  90. public IEnumerable<TeachPlanEntity> GetList(string queryJson)
  91. {
  92. try
  93. {
  94. var strSql = new StringBuilder();
  95. strSql.Append("SELECT ");
  96. strSql.Append(@"
  97. t.ID,
  98. t.PlanNo,
  99. t.VersionNo,
  100. t.DeptNo,
  101. t.MajorNo,
  102. t.Grade,
  103. t.Credits
  104. ");
  105. strSql.Append(" FROM TeachPlan t ");
  106. strSql.Append(" WHERE 1=1 ");
  107. var queryParam = queryJson.ToJObject();
  108. // 虚拟参数
  109. var dp = new DynamicParameters(new { });
  110. if (!queryParam["PlanNo"].IsEmpty())
  111. {
  112. dp.Add("PlanNo", "%" + queryParam["PlanNo"].ToString() + "%", DbType.String);
  113. strSql.Append(" AND t.PlanNo Like @PlanNo ");
  114. }
  115. if (!queryParam["VersionNo"].IsEmpty())
  116. {
  117. dp.Add("VersionNo", "%" + queryParam["VersionNo"].ToString() + "%", DbType.String);
  118. strSql.Append(" AND t.VersionNo Like @VersionNo ");
  119. }
  120. if (!queryParam["DeptNo"].IsEmpty())
  121. {
  122. dp.Add("DeptNo",queryParam["DeptNo"].ToString(), DbType.String);
  123. strSql.Append(" AND t.DeptNo = @DeptNo ");
  124. }
  125. if (!queryParam["MajorNo"].IsEmpty())
  126. {
  127. dp.Add("MajorNo",queryParam["MajorNo"].ToString(), DbType.String);
  128. strSql.Append(" AND t.MajorNo = @MajorNo ");
  129. }
  130. if (!queryParam["Grade"].IsEmpty())
  131. {
  132. dp.Add("Grade", "%" + queryParam["Grade"].ToString() + "%", DbType.String);
  133. strSql.Append(" AND t.Grade Like @Grade ");
  134. }
  135. return this.BaseRepository().FindList<TeachPlanEntity>(strSql.ToString(),dp);
  136. }
  137. catch (Exception ex)
  138. {
  139. if (ex is ExceptionEx)
  140. {
  141. throw;
  142. }
  143. else
  144. {
  145. throw ExceptionEx.ThrowServiceException(ex);
  146. }
  147. }
  148. }
  149. /// <summary>
  150. /// 获取TeachPlan表实体数据
  151. /// <param name="keyValue">主键</param>
  152. /// <summary>
  153. /// <returns></returns>
  154. public TeachPlanEntity GetTeachPlanEntity(string keyValue)
  155. {
  156. try
  157. {
  158. return this.BaseRepository().FindEntity<TeachPlanEntity>(keyValue);
  159. }
  160. catch (Exception ex)
  161. {
  162. if (ex is ExceptionEx)
  163. {
  164. throw;
  165. }
  166. else
  167. {
  168. throw ExceptionEx.ThrowServiceException(ex);
  169. }
  170. }
  171. }
  172. #endregion
  173. #region 提交数据
  174. /// <summary>
  175. /// 删除实体数据
  176. /// <param name="keyValue">主键</param>
  177. /// <summary>
  178. /// <returns></returns>
  179. public void DeleteEntity(string keyValue)
  180. {
  181. try
  182. {
  183. this.BaseRepository().Delete<TeachPlanEntity>(t=>t.ID == keyValue);
  184. }
  185. catch (Exception ex)
  186. {
  187. if (ex is ExceptionEx)
  188. {
  189. throw;
  190. }
  191. else
  192. {
  193. throw ExceptionEx.ThrowServiceException(ex);
  194. }
  195. }
  196. }
  197. /// <summary>
  198. /// 保存实体数据(新增、修改)
  199. /// <param name="keyValue">主键</param>
  200. /// <summary>
  201. /// <returns></returns>
  202. public void SaveEntity( UserInfo userInfo, string keyValue, TeachPlanEntity entity)
  203. {
  204. try
  205. {
  206. if (!string.IsNullOrEmpty(keyValue))
  207. {
  208. entity.Modify(keyValue,userInfo);
  209. this.BaseRepository().Update(entity);
  210. }
  211. else
  212. {
  213. entity.Create(userInfo);
  214. this.BaseRepository().Insert(entity);
  215. }
  216. }
  217. catch (Exception ex)
  218. {
  219. if (ex is ExceptionEx)
  220. {
  221. throw;
  222. }
  223. else
  224. {
  225. throw ExceptionEx.ThrowServiceException(ex);
  226. }
  227. }
  228. }
  229. #endregion
  230. }
  231. }