45 lines
1.5 KiB
C#
45 lines
1.5 KiB
C#
using BeWo.Data.Entities;
|
|
using NHibernate.Criterion;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
|
|
namespace BeWo.Data.Access
|
|
{
|
|
public class OrganisationDAO : AbstractBaseDAO
|
|
{
|
|
public IList<Organisation> GetAllOrganisation2PersonRelations(long personOid)
|
|
{
|
|
var c = CreateCriteriaIsActive<Person>()
|
|
.Add(Restrictions.Eq(BeWoEntityBase.PropertyName_Oid, personOid)).UniqueResult<Person>().Organisation2Persons.Select(s => s.Organisation).ToList();
|
|
return c;
|
|
}
|
|
|
|
public List<Organisation> GetAllOrganisationByIKKrankenkasse(string ikkrankenkasse)
|
|
{
|
|
var criteria = CreateCriteria<Organisation>()
|
|
.Add(Restrictions.Where<Organisation>(x => x.IKKrankenkasse == ikkrankenkasse));
|
|
|
|
return criteria.List<Organisation>().ToList();
|
|
}
|
|
|
|
public List<Organisation> GetAllActiveOrganisationByIKKrankenkasse(string ikkrankenkasse)
|
|
{
|
|
var criteria = CreateCriteria<Organisation>()
|
|
.Add(Restrictions.Where<Organisation>(x => x.IsActive == BS.Shared.ActivationTypeId.Active && x.IKKrankenkasse == ikkrankenkasse));
|
|
|
|
return criteria.List<Organisation>().ToList();
|
|
}
|
|
|
|
public virtual IEnumerable<Organisation> FindOrganisation(string pName, bool pOnlyCostBearer)
|
|
{
|
|
var lCriteria = CreateCriteria<Organisation>()
|
|
.Add(Restrictions.Like(Organisation.PropertyName_Name, pName, MatchMode.Anywhere));
|
|
|
|
if (pOnlyCostBearer)
|
|
lCriteria.Add(Restrictions.IsNotNull(Organisation.PropertyName_CostBearer));
|
|
|
|
return lCriteria.List<Organisation>();
|
|
}
|
|
}
|
|
}
|