public static DBNote ToDBNote(this DTONote dto, DBUser user, bool encrypt = false) { // ServiceStack's .PopulateWith is for some reasons // ORDERS of magnitudes slower than manually copying // TODO evaluate PopulateWith performance / bottleneck // or other mappers like ValueInjecter var db = new DBNote(); db.Guid = dto.Guid; db.Title = dto.Title; db.Text = dto.Text; db.Tags = dto.Tags; // dates db.ChangeDate = dto.ChangeDate; db.MetadataChangeDate = dto.MetadataChangeDate; db.CreateDate = dto.CreateDate; db.OpenOnStartup = dto.OpenOnStartup; db.Pinned = dto.Pinned; db.Username = user.Username; return(db); }
public void StoreAndRetrieveNote() { var db_old = GetDBSampleNote(); db_old.Username = "******"; using (var conn = dbFactory.OpenDbConnection()) { conn.Insert(db_old); } DTONote dto_new = null; DBNote db_new; using (var conn = dbFactory.OpenDbConnection()) { db_new = conn.Single <DBNote> ("Username = {0}", "test"); } dto_new.PopulateWith(db_new); // check for equalness Assert.AreEqual(db_old.Title, db_new.Title); Assert.AreEqual(db_old.Text, db_new.Text); Assert.AreEqual(db_old.Tags, db_new.Tags); Assert.AreEqual(db_old.ChangeDate, db_new.ChangeDate); }
public void RetrieveAnArchivedVersionOfANote() { FirstSyncForBothSides(); Tomboy.Note first_note = clientEngineOne.GetNotes().Values.First(); DTONote first_note_dto = first_note.ToDTONote(); var new_title = "Some other title"; var old_title = first_note_dto.Title; var new_text = "Some new text"; var old_text = first_note_dto.Text; first_note.Title = new_title; first_note.Text = new_text; clientEngineOne.SaveNote(first_note); var sync_manager = new SyncManager(syncClientOne, syncServer); sync_manager.DoSync(); var client = testServer.GetJsonClient(); var url = GetNoteHistoryUrl(first_note.Guid); var resp = client.Get <NoteHistoryResponse> (url); var rev = resp.Versions[0].Revision; url = GetArchivedNoteUrl(first_note.Guid, rev); var note = client.Get <DTONote> (url); Assert.AreEqual(old_text, note.Text); Assert.AreEqual(old_title, note.Title); Assert.AreEqual(first_note_dto.Tags, note.Tags); }
public async Task <IActionResult> Create(NoteView model) { DTONote note = new DTONote { AddedDate = model.AddedDate, NoteText = model.NoteText }; var dtoNote = await db.AddNote(note); await hub.Clients.All.SendAsync("Send", dtoNote); return(RedirectToAction("ClientOne")); }
public void ConvertFromDTOWithTags() { var dto_note = new DTONote(); dto_note.Tags = new string[] { "school", "shopping", "fun" }; var tomboy_note = dto_note.ToTomboyNote(); foreach (string tag in dto_note.Tags) { Assert.Contains(tag, tomboy_note.Tags.Keys); } }
public async Task <DTONote> AddNote(DTONote model) { model.AddedDate = DateTime.Now; Note noteModel = new Note { AddedDate = model.AddedDate, NoteText = model.NoteText }; Note note = await db.Notes.Create(noteModel); return(new DTONote { Id = note.Id, NoteText = note.NoteText, AddedDate = note.AddedDate }); }
public async Task <IActionResult> PostNote([FromBody] DTONote dtoNote) { //return BadRequest(ModelState); Console.WriteLine("DebugHere"); Note note = dtoNote.Note; ProductNoteDetail[] productDetail = dtoNote.ProductNoteDetail; Console.WriteLine(note.Observation); // Console.WriteLine(productDetail[0].ReceivedBy); if (!ModelState.IsValid) { return(BadRequest(ModelState)); } productDetail.ToList().ForEach( e => { Product product = _context.Products.Find(e.ProductId); if (note.NoteType.Equals("entry")) { product.Quantity = product.Quantity + e.Quantity; } else { product.Quantity = product.Quantity - e.Quantity; } } ); _context.Note.Add(note); await _context.SaveChangesAsync(); productDetail.ToList().ForEach(e => { e.NoteId = note.NoteId; _context.ProductNoteDetail.Add(e); }); await _context.SaveChangesAsync(); return(CreatedAtAction("GetNote", new { id = note.NoteId }, note)); }
public static DTONote ToDTONote(this DBNote db) { var dto = new DTONote (); dto.Guid = db.Guid; dto.Title = db.Title; dto.Text = db.Text; dto.Tags = db.Tags; // dates dto.ChangeDate = db.ChangeDate; dto.MetadataChangeDate = db.MetadataChangeDate; dto.CreateDate = db.CreateDate; dto.OpenOnStartup = db.OpenOnStartup; dto.Pinned = db.Pinned; return dto; }
public static bool enoughStock(DTONote dtoNote, SMarketContext _context) { string NOTETYPE_ENTRY = "entry"; string NOTETYPE_REMOVAL = "removal"; Note note = dtoNote.Note; ProductNoteDetail[] productDetail = dtoNote.ProductNoteDetail; if (note.NoteType.Equals(NOTETYPE_ENTRY)) { foreach (ProductNoteDetail e in productDetail) { Product product = _context.Products.Find(e.ProductId); //if (e.Quantity > product.Quantity) product.Quantity = product.Quantity + e.Quantity; } } else { foreach (ProductNoteDetail e in productDetail) { Product product = _context.Products.Find(e.ProductId); //if (e.Quantity > product.Quantity) product.Quantity = product.Quantity - e.Quantity; } } productDetail.ToList().ForEach( e => { Product product = _context.Products.Find(e.ProductId); if (e.Quantity > product.Quantity) { product.Quantity = product.Quantity - e.Quantity; } //else } ); return(true); }
public static DTONote ToDTONote(this DBNote db) { var dto = new DTONote(); dto.Guid = db.Guid; dto.Title = db.Title; dto.Text = db.Text; dto.Tags = db.Tags; // dates dto.ChangeDate = db.ChangeDate; dto.MetadataChangeDate = db.MetadataChangeDate; dto.CreateDate = db.CreateDate; dto.OpenOnStartup = db.OpenOnStartup; dto.Pinned = db.Pinned; return(dto); }
public void ConvertFromDTONoteToTomboyNote() { var dto_note = new DTONote(); dto_note.Title = "This is a sample note"; dto_note.Text = "This is some sample text"; dto_note.ChangeDate = DateTime.Now.ToString(Tomboy.Writer.DATE_TIME_FORMAT); dto_note.MetadataChangeDate = DateTime.Now.ToString(Tomboy.Writer.DATE_TIME_FORMAT); dto_note.CreateDate = DateTime.Now.ToString(Tomboy.Writer.DATE_TIME_FORMAT); var tomboy_note = dto_note.ToTomboyNote(); Assert.AreEqual(tomboy_note.Title, dto_note.Title); Assert.AreEqual(tomboy_note.Text, dto_note.Text); Assert.AreEqual(tomboy_note.ChangeDate, DateTime.Parse(dto_note.ChangeDate).ToUniversalTime()); Assert.AreEqual(tomboy_note.CreateDate, DateTime.Parse(dto_note.CreateDate).ToUniversalTime()); Assert.AreEqual(tomboy_note.MetadataChangeDate, DateTime.Parse(dto_note.MetadataChangeDate).ToUniversalTime()); var tag_intersection = dto_note.Tags.Intersect(tomboy_note.Tags.Keys); Assert.AreEqual(dto_note.Tags.Count(), tag_intersection.Count()); }