public CommandResult ShiftArrange(int staffID, DateTime dt, List <Shift> shifts) { IShiftArrangeProvider provider = ProviderFactory.Create <IShiftArrangeProvider>(_RepoUri); ShiftArrangeSearchCondition con = new ShiftArrangeSearchCondition(); con.StaffID = staffID; con.ShiftDate = new DatetimeRange(dt, dt); List <ShiftArrange> items = provider.GetItems(con).QueryObjects; IUnitWork unitWork = ProviderFactory.Create <IUnitWork>(_RepoUri); foreach (ShiftArrange item in items) { provider.Delete(item, unitWork); } if (shifts != null && shifts.Count > 0) { foreach (Shift item in shifts) { ShiftArrange sa = new Model.ShiftArrange() { StaffID = staffID, ShiftID = item.ID, ShiftDate = dt }; provider.Insert(sa, unitWork); } } return(unitWork.Commit()); }
public CommandResult ShiftArrange(int staffID, DateTime dt, List<Shift> shifts) { IShiftArrangeProvider provider = ProviderFactory.Create<IShiftArrangeProvider>(_RepoUri); ShiftArrangeSearchCondition con = new ShiftArrangeSearchCondition(); con.StaffID = staffID; con.ShiftDate = new DatetimeRange(dt, dt); List<ShiftArrange> items = provider.GetItems(con).QueryObjects; IUnitWork unitWork = ProviderFactory.Create<IUnitWork>(_RepoUri); foreach (ShiftArrange item in items) { provider.Delete(item, unitWork); } if (shifts != null && shifts.Count > 0) { foreach (Shift item in shifts) { ShiftArrange sa = new Model.ShiftArrange() { StaffID = staffID, ShiftID = item.ID, ShiftDate = dt }; provider.Insert(sa, unitWork); } } return unitWork.Commit(); }