using LeaRun.Application.Entity.BaseManage; using LeaRun.Application.IService.AuthorizeManage; using LeaRun.Application.IService.BaseManage; using LeaRun.Application.Service.AuthorizeManage; using LeaRun.Data; using LeaRun.Data.Repository; using LeaRun.Util; using LeaRun.Util.Extension; using LeaRun.Util.WebControl; using System.Collections.Generic; using System.Data.Common; using System.Linq; using System.Text; namespace LeaRun.Application.Service.BaseManage { /// /// 版 本 /// Copyright (c) 2013-2016 上海力软信息技术有限公司 /// 创建人:佘赐雄 /// 日 期:2015.11.4 14:31 /// 描 述:职位管理 /// public class JobService : RepositoryFactory, IJobService { private IAuthorizeService iauthorizeservice = new AuthorizeService(); #region 获取数据 /// /// 职位列表 /// /// public IEnumerable GetList() { var expression = LinqExtensions.True(); expression = expression.And(t => t.Category == 3).And(t => t.EnabledMark == 1).And(t => t.DeleteMark == 0); return this.BaseRepository().IQueryable(expression).OrderByDescending(t => t.CreateDate).ToList(); } /// /// 职位列表 /// /// 分页 /// 查询参数 /// public IEnumerable GetPageList(Pagination pagination, string queryJson) { var expression = LinqExtensions.True(); var queryParam = queryJson.ToJObject(); //机构主键 if (!queryParam["organizeId"].IsEmpty()) { string organizeId = queryParam["organizeId"].ToString(); expression = expression.And(t => t.OrganizeId.Equals(organizeId)); } //查询条件 if (!queryParam["condition"].IsEmpty() && !queryParam["keyword"].IsEmpty()) { string condition = queryParam["condition"].ToString(); string keyword = queryParam["keyword"].ToString(); switch (condition) { case "EnCode": //职位编号 expression = expression.And(t => t.EnCode.Contains(keyword)); break; case "FullName": //职位名称 expression = expression.And(t => t.FullName.Contains(keyword)); break; default: break; } } expression = expression.And(t => t.Category == 3); return this.BaseRepository().FindList(expression, pagination); } /// /// 职位实体 /// /// 主键值 /// public RoleEntity GetEntity(string keyValue) { return this.BaseRepository().FindEntity(keyValue); } #endregion #region 验证数据 /// /// 职位编号不能重复 /// /// 编号 /// 主键 /// public bool ExistEnCode(string enCode, string keyValue) { var expression = LinqExtensions.True(); expression = expression.And(t => t.EnCode == enCode).And(t => t.Category == 3); if (!string.IsNullOrEmpty(keyValue)) { expression = expression.And(t => t.RoleId != keyValue); } return this.BaseRepository().IQueryable(expression).Count() == 0 ? true : false; } /// /// 职位名称不能重复 /// /// 名称 /// 主键 /// public bool ExistFullName(string fullName, string keyValue) { var expression = LinqExtensions.True(); expression = expression.And(t => t.FullName == fullName).And(t => t.Category == 3); if (!string.IsNullOrEmpty(keyValue)) { expression = expression.And(t => t.RoleId != keyValue); } return this.BaseRepository().IQueryable(expression).Count() == 0 ? true : false; } #endregion #region 提交数据 /// /// 删除职位 /// /// 主键 public void RemoveForm(string keyValue) { this.BaseRepository().Delete(keyValue); } /// /// 保存职位表单(新增、修改) /// /// 主键值 /// 职位实体 /// public void SaveForm(string keyValue, RoleEntity jobEntity) { if (!string.IsNullOrEmpty(keyValue)) { jobEntity.Modify(keyValue); this.BaseRepository().Update(jobEntity); } else { jobEntity.Create(); jobEntity.Category = 3; this.BaseRepository().Insert(jobEntity); } } #endregion } }