public CustomBarcodeViewModel(CustomBarcodeDTO barcode) { Id = barcode.Id; SKU = barcode.SKU; Barcode = barcode.Barcode; AttachSKUDate = barcode.AttachSKUDate; IsNewAssociation = barcode.IsNewAssociation; }
public CustomBarcodeDTO AssociateBarcodes(string sku, DateTime when, long?by) { using (var db = _dbFactory.GetRWDb()) { var formattedSku = sku.Trim(); if (String.IsNullOrEmpty(formattedSku)) { return(null); } var barcode = new CustomBarcodeDTO() { SKU = formattedSku }; var existSku = db.CustomBarcodes.GetAllAsDto().FirstOrDefault(b => b.SKU == formattedSku); if (existSku != null) { barcode.Barcode = existSku.Barcode; barcode.AttachSKUDate = existSku.AttachSKUDate; } else { var emptyBarcode = db.CustomBarcodes.GetAll() .OrderBy(b => b.Id) .FirstOrDefault(b => String.IsNullOrEmpty(b.SKU)); if (emptyBarcode != null) { emptyBarcode.SKU = formattedSku; emptyBarcode.AttachSKUDate = when; emptyBarcode.AttachSKUBy = by; db.Commit(); barcode.Barcode = emptyBarcode.Barcode; barcode.AttachSKUDate = when; barcode.IsNewAssociation = true; } } return(barcode); } }