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 Delete(List <ShiftArrange> items) { IShiftArrangeProvider provider = ProviderFactory.Create <IShiftArrangeProvider>(_RepoUri); IUnitWork unitWork = ProviderFactory.Create <IUnitWork>(_RepoUri); if (items != null && items.Count > 0) { foreach (ShiftArrange item in items) { provider.Delete(item, unitWork); } return(unitWork.Commit()); } return(new CommandResult(ResultCode.NoRecord, "没有记录")); }
public CommandResult ClearShiftArrange(int staffID, DateTime dt) { 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); } return(unitWork.Commit()); }
public CommandResult Add(ShiftArrange info) { IShiftArrangeProvider provider = ProviderFactory.Create <IShiftArrangeProvider>(_RepoUri); ShiftArrangeID id = new ShiftArrangeID(info.StaffID, info.ShiftID, info.ShiftDate); ShiftArrange item = provider.GetByID(id).QueryObject; if (item == null) { IUnitWork unitWork = ProviderFactory.Create <IUnitWork>(_RepoUri); provider.Insert(info, unitWork); return(unitWork.Commit()); } else //如果已经存在则直接返回 { return(new CommandResult(ResultCode.Successful, ResultCodeDecription.GetDescription(ResultCode.Successful))); } }
public CommandResult ShiftArrange(int staffID, DatetimeRange range, List <ShiftArrange> arranges) { IShiftArrangeProvider provider = ProviderFactory.Create <IShiftArrangeProvider>(_RepoUri); ShiftArrangeSearchCondition con = new ShiftArrangeSearchCondition(); con.StaffID = staffID; con.ShiftDate = range; List <ShiftArrange> items = provider.GetItems(con).QueryObjects; IUnitWork unitWork = ProviderFactory.Create <IUnitWork>(_RepoUri); foreach (ShiftArrange item in items) { provider.Delete(item, unitWork); } if (arranges != null && arranges.Count > 0) { foreach (ShiftArrange item in arranges) { provider.Insert(item, unitWork); } } return(unitWork.Commit()); }