/// <summary> /// 移除汇报上级 /// </summary> /// <param name="position"></param> /// <returns></returns> public Position RemoveReportTo(Position position) { if (!PositionInfoRepo.Exists(position.MappingTo<PositionInfo>()) || !PositionInfoRepo.Exists(this.MappingTo<PositionInfo>())) { throw new Exception("岗位不存在"); } PositionReportToInfo reportToInfo = PositionReportToInfoRepo.Read() .FirstOrDefault( p => p.PositionId == this.Id && p.HigherOrganizationId == position.OrganizationId && p.HigherPositionId == position.Id && p.OrganizationId == this.OrganizationId); //reportToInfo.OrganizationId = this.OrganizationId; //reportToInfo.PositionId = this.Id; //reportToInfo.HigherOrganizationId = position.OrganizationId; //reportToInfo.HigherPositionId = position.Id; PositionReportToInfoRepo.Delete(reportToInfo); return position; }
/// <summary> /// 新增汇报上级 /// </summary> /// <param name="position"></param> /// <returns></returns> public Position AddReportTo(Position position) { if (!PositionInfoRepo.Exists(position.MappingTo<PositionInfo>()) || !PositionInfoRepo.Exists(this.MappingTo<PositionInfo>())) { throw new Exception("岗位不存在"); } PositionReportToInfo reportToInfo = new PositionReportToInfo(); reportToInfo.OrganizationId = this.OrganizationId; reportToInfo.PositionId = this.Id; reportToInfo.HigherOrganizationId = position.OrganizationId; reportToInfo.HigherPositionId = position.Id; PositionReportToInfoRepo.Save(reportToInfo); return position; }
/// <summary> /// 删除岗位 /// </summary> /// <param name="position"></param> public Position RemovePosition(Position position) { position.OrganizationId = this.Id; position.Delete(); return position; }
/// <summary> /// 构造函数 /// </summary> public static Position Create() { Position position = new Position(); return position; }
/// <summary> /// 新增岗位 /// </summary> /// <param name="positionId"></param> public Position AddPosition(Position position) { position.OrganizationId = this.Id; position.Save(); return position; }