/// <summary> /// Remove a batch lot record from the system /// </summary> /// <param name="BatchLot"></param> /// <returns></returns> public bool Delete(ReagentBatch BatchLot) { try { _unitOfWork.ReagentBatchRepository.Delete(BatchLot); return(true); } catch (Exception ex) { _logger.Error(ex); return(false); } }
private void UploadData(object sender, RoutedEventArgs e) { try { if (BrowseTxt.Text != null && BrowseTxt.Text != string.Empty) { var records = System.IO.File .ReadAllLines(BrowseTxt.Text) .Select(record => record.Split('|')) .Select(record => new { CountyCode = record[0], SourceFactoryCode = record[1], SerialNumber = record[2], BatchLotNumber = record[3], BatchExpiryDate = record[4], Manufacturer = record[5], ManufacturerDate = record[6], ManufacturingSourceCode = record[7], LotName = record[8], ExpiryDate = record[9], Volume = record[10], ReactionTarget = record[11], ReactionRange = record[12], }).ToList(); records = records.Where(c => c.CountyCode != "CountyCode").ToList(); var reagentBatch = records.GroupBy(c => c.BatchLotNumber, (key, c) => c.FirstOrDefault()); foreach (var batch in reagentBatch) { var lotBatch = new ReagentBatch { BatchLotNumber = batch.BatchLotNumber, ExpiryDate = Convert.ToDateTime(batch.BatchExpiryDate), Manufacturer = batch.Manufacturer, ManufacturerDate = Convert.ToDateTime(batch.ManufacturerDate), ManufacturingSourceCode = batch.ManufacturingSourceCode, ReagentLot = records.Where(b => b.BatchLotNumber == batch.BatchLotNumber) .Select(r => new ReagentLot { SerialNumber = r.SerialNumber, Name = r.LotName, ExpiryDate = Convert.ToDateTime(r.ExpiryDate), ReactionRange = Convert.ToDouble(r.ReactionRange), ReactionTarget = Convert.ToDouble(r.ReactionTarget), Volume = Convert.ToDouble(r.Volume) }).ToList() }; _unitOfWork.ReagentBatchRepository.Insert(lotBatch); } _unitOfWork.Save(); } MessageBox.Show("Succefully Uploaded data into the system!"); LoadLotDetails(); } catch (Exception ex) { _logger.Error(ex); MessageBox.Show("Uploaded data wasn't Succefully; please verify app logs to find out more!"); //throw ex; } }