JobService.cs 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153
  1. using LeaRun.Application.Entity.BaseManage;
  2. using LeaRun.Application.IService.AuthorizeManage;
  3. using LeaRun.Application.IService.BaseManage;
  4. using LeaRun.Application.Service.AuthorizeManage;
  5. using LeaRun.Data;
  6. using LeaRun.Data.Repository;
  7. using LeaRun.Util;
  8. using LeaRun.Util.Extension;
  9. using LeaRun.Util.WebControl;
  10. using System.Collections.Generic;
  11. using System.Data.Common;
  12. using System.Linq;
  13. using System.Text;
  14. namespace LeaRun.Application.Service.BaseManage
  15. {
  16. /// <summary>
  17. /// 版 本
  18. /// Copyright (c) 2013-2016 上海力软信息技术有限公司
  19. /// 创建人:佘赐雄
  20. /// 日 期:2015.11.4 14:31
  21. /// 描 述:职位管理
  22. /// </summary>
  23. public class JobService : RepositoryFactory<RoleEntity>, IJobService
  24. {
  25. private IAuthorizeService<RoleEntity> iauthorizeservice = new AuthorizeService<RoleEntity>();
  26. #region 获取数据
  27. /// <summary>
  28. /// 职位列表
  29. /// </summary>
  30. /// <returns></returns>
  31. public IEnumerable<RoleEntity> GetList()
  32. {
  33. var expression = LinqExtensions.True<RoleEntity>();
  34. expression = expression.And(t => t.Category == 3).And(t => t.EnabledMark == 1).And(t => t.DeleteMark == 0);
  35. return this.BaseRepository().IQueryable(expression).OrderByDescending(t => t.CreateDate).ToList();
  36. }
  37. /// <summary>
  38. /// 职位列表
  39. /// </summary>
  40. /// <param name="pagination">分页</param>
  41. /// <param name="queryJson">查询参数</param>
  42. /// <returns></returns>
  43. public IEnumerable<RoleEntity> GetPageList(Pagination pagination, string queryJson)
  44. {
  45. var expression = LinqExtensions.True<RoleEntity>();
  46. var queryParam = queryJson.ToJObject();
  47. //机构主键
  48. if (!queryParam["organizeId"].IsEmpty())
  49. {
  50. string organizeId = queryParam["organizeId"].ToString();
  51. expression = expression.And(t => t.OrganizeId.Equals(organizeId));
  52. }
  53. //查询条件
  54. if (!queryParam["condition"].IsEmpty() && !queryParam["keyword"].IsEmpty())
  55. {
  56. string condition = queryParam["condition"].ToString();
  57. string keyword = queryParam["keyword"].ToString();
  58. switch (condition)
  59. {
  60. case "EnCode": //职位编号
  61. expression = expression.And(t => t.EnCode.Contains(keyword));
  62. break;
  63. case "FullName": //职位名称
  64. expression = expression.And(t => t.FullName.Contains(keyword));
  65. break;
  66. default:
  67. break;
  68. }
  69. }
  70. expression = expression.And(t => t.Category == 3);
  71. return this.BaseRepository().FindList(expression, pagination);
  72. }
  73. /// <summary>
  74. /// 职位实体
  75. /// </summary>
  76. /// <param name="keyValue">主键值</param>
  77. /// <returns></returns>
  78. public RoleEntity GetEntity(string keyValue)
  79. {
  80. return this.BaseRepository().FindEntity(keyValue);
  81. }
  82. #endregion
  83. #region 验证数据
  84. /// <summary>
  85. /// 职位编号不能重复
  86. /// </summary>
  87. /// <param name="enCode">编号</param>
  88. /// <param name="keyValue">主键</param>
  89. /// <returns></returns>
  90. public bool ExistEnCode(string enCode, string keyValue)
  91. {
  92. var expression = LinqExtensions.True<RoleEntity>();
  93. expression = expression.And(t => t.EnCode == enCode).And(t => t.Category == 3);
  94. if (!string.IsNullOrEmpty(keyValue))
  95. {
  96. expression = expression.And(t => t.RoleId != keyValue);
  97. }
  98. return this.BaseRepository().IQueryable(expression).Count() == 0 ? true : false;
  99. }
  100. /// <summary>
  101. /// 职位名称不能重复
  102. /// </summary>
  103. /// <param name="fullName">名称</param>
  104. /// <param name="keyValue">主键</param>
  105. /// <returns></returns>
  106. public bool ExistFullName(string fullName, string keyValue)
  107. {
  108. var expression = LinqExtensions.True<RoleEntity>();
  109. expression = expression.And(t => t.FullName == fullName).And(t => t.Category == 3);
  110. if (!string.IsNullOrEmpty(keyValue))
  111. {
  112. expression = expression.And(t => t.RoleId != keyValue);
  113. }
  114. return this.BaseRepository().IQueryable(expression).Count() == 0 ? true : false;
  115. }
  116. #endregion
  117. #region 提交数据
  118. /// <summary>
  119. /// 删除职位
  120. /// </summary>
  121. /// <param name="keyValue">主键</param>
  122. public void RemoveForm(string keyValue)
  123. {
  124. this.BaseRepository().Delete(keyValue);
  125. }
  126. /// <summary>
  127. /// 保存职位表单(新增、修改)
  128. /// </summary>
  129. /// <param name="keyValue">主键值</param>
  130. /// <param name="jobEntity">职位实体</param>
  131. /// <returns></returns>
  132. public void SaveForm(string keyValue, RoleEntity jobEntity)
  133. {
  134. if (!string.IsNullOrEmpty(keyValue))
  135. {
  136. jobEntity.Modify(keyValue);
  137. this.BaseRepository().Update(jobEntity);
  138. }
  139. else
  140. {
  141. jobEntity.Create();
  142. jobEntity.Category = 3;
  143. this.BaseRepository().Insert(jobEntity);
  144. }
  145. }
  146. #endregion
  147. }
  148. }