/// <summary> /// Updates the time. /// </summary> /// <param name="td">The td.</param> /// <returns>System.Int32.</returns> /// <exception cref="MyTimeDatabaseLib.TimeDataItemNotFoundException">Couldn't find the time data with that id.</exception> public static bool UpdateTime(ref TimeData td) { if (td.ItemId < 0) { return(AddTime(ref td)); } int itemId = td.ItemId; using (var db = new TimeDataContext(TimeDataContext.DBConnectionString)) { try { TimeDataItem tdi = db.TimeDataItems.Single(s => s.ItemId == itemId); tdi.BibleStudies = td.BibleStudies; tdi.Books = td.Books; tdi.Brochures = td.Brochures; tdi.Date = td.Date; tdi.Magazines = td.Magazines; tdi.Minutes = td.Minutes; tdi.Notes = td.Notes; tdi.ReturnVisits = td.ReturnVisits; tdi.Tracts = td.Tracts; db.SubmitChanges(); return(true); } catch (InvalidOperationException) { return(AddTime(ref td)); } catch { throw new TimeDataItemNotFoundException("Couldn't find the time data with that id."); } } }
/// <summary> /// Validate time visit. /// </summary> /// <param name="item"></param> public void Visit(TimeDataItem item) { if (item == null) { throw new ArgumentNullException("item"); } AB_RootDataTag tag = RetrieveTag(item); DateTime value = DateTime.Parse(tag.Value, CultureInfo.InvariantCulture); Assert.IsTrue(value.Equals(item.Value)); }
/// <summary> /// Gets the time data item. /// </summary> /// <param name="id">The id.</param> /// <returns>TimeData.</returns> public static TimeData GetTimeDataItem(int id) { using (var db = new TimeDataContext(TimeDataContext.DBConnectionString)) { try { TimeDataItem tdi = db.TimeDataItems.Single(s => s.ItemId == id); var td = TimeData.Copy(tdi); return(td); } catch (InvalidOperationException) { return(null); } } }
/// <summary> /// Deletes the time. /// </summary> /// <param name="itemId">The item id.</param> public static bool DeleteTime(int itemId) { using (var db = new TimeDataContext(TimeDataContext.DBConnectionString)) { try { TimeDataItem t = db.TimeDataItems.Single(s => s.ItemId == itemId); db.TimeDataItems.DeleteOnSubmit(t); db.SubmitChanges(); return(true); } catch (InvalidOperationException) { return(false); } } }
internal static TimeData Copy(TimeDataItem tdi) { return(new TimeData { BibleStudies = tdi.BibleStudies, Books = tdi.Books, Brochures = tdi.Brochures, Date = tdi.Date, ItemId = tdi.ItemId, Magazines = tdi.Magazines, Minutes = tdi.Minutes, Notes = tdi.Notes, ReturnVisits = tdi.ReturnVisits, Tracts = tdi.Tracts ?? 0 }); }
/// <summary> /// Visit time item. /// </summary> /// <param name="item"></param> public void Visit(TimeDataItem item) { if (item == null) { throw new ArgumentNullException("item"); } byte[] values = GetItemValue(item); Int16 hour = BitConverter.ToInt16(new byte[] { values[0], 0 }, 0); Int16 minute = BitConverter.ToInt16(new byte[] { values[1], 0 }, 0); Int16 second = BitConverter.ToInt16(new byte[] { values[2], 0 }, 0); Int16 hsecond = BitConverter.ToInt16(new byte[] { values[3], 0 }, 0); item.Value = new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day, hour, minute, second, hsecond * 10); Context.DataItems.Add(item); }