public QuantityConstraint SaveConstraint(QuantityConstraint constraint) { using (IUnitOfWork uow = this.GetUnitOfWork()) { IRepository <QuantityConstraint> repo = uow.GetRepository <QuantityConstraint>(); repo.Put(constraint); uow.Commit(); } return(constraint); }
public bool DeleteConstraint(QuantityConstraint constraint) { Contract.Requires(constraint != null); Contract.Requires(constraint.Id >= 0); using (IUnitOfWork uow = this.GetUnitOfWork()) { IRepository <QuantityConstraint> repo = uow.GetRepository <QuantityConstraint>(); constraint = repo.Reload(constraint); repo.Delete(constraint); uow.Commit(); } return(true); }
public QuantityConstraintModel(QuantityConstraint constraint) { Id = constraint.Id; Index = constraint.Index; Quantity = constraint.Quantity; ComparisonOperator = constraint.ComparisonOperator; Negated = constraint.Negated; SelectedMode = constraint.Mode; Description = constraint.Description; AllUsers = constraint.AllUsers; ForEver = constraint.ForEver; if (constraint.ForPeriodicTimeInterval != null) { ForPeriodicTimeInterval = new PeriodicTimeIntervalModel(constraint.ForPeriodicTimeInterval, (DateTime)constraint.ForTimeInterval.StartTime.Instant, constraint.ForTimeInterval.EndTime.Instant); ForPeriodicTimeInterval.IsSet = true; ForPeriodicTimeInterval.Index = constraint.Index; } else { ForPeriodicTimeInterval = new PeriodicTimeIntervalModel(); } ForTimeInterval = new TimeInterval(); if (constraint.ForPerson != null) { if (constraint.ForPerson.Self is PersonGroup) { PersonGroup pGroup = (PersonGroup)constraint.ForPerson.Self; //pGroup.Users.ToList().ForEach(u => ForPersons.Add(new PersonInConstraint(u, pGroup.Id, constraint.Index))); } else if (constraint.ForPerson.Self is IndividualPerson) { IndividualPerson iPerson = (IndividualPerson)constraint.ForPerson.Self; //ForPersons.Add(new PersonInConstraint(iPerson.Person, iPerson.Id, constraint.Index)); } } if (constraint.ForTimeInterval != null) { TimeInterval timeInterval = new TimeInterval(); timeInterval = constraint.ForTimeInterval.Self; timeInterval.StartTime = constraint.ForTimeInterval.StartTime.Self; timeInterval.EndTime = constraint.ForTimeInterval.EndTime.Self; ForTimeInterval = timeInterval; } }
public QuantityConstraint UpdateConstraint(QuantityConstraint constraint) { Contract.Requires(constraint != null, "provided entity can not be null"); Contract.Requires(constraint.Id >= 0, "provided entity must have a permanent ID"); Contract.Ensures(Contract.Result <QuantityConstraint>() != null && Contract.Result <QuantityConstraint>().Id >= 0, "No entity is persisted!"); using (IUnitOfWork uow = this.GetUnitOfWork()) { IRepository <QuantityConstraint> repo = uow.GetRepository <QuantityConstraint>(); repo.Merge(constraint); var merged = repo.Get(constraint.Id); repo.Put(merged); uow.Commit(); } return(constraint); }