public IActionResult Get(int id) { FalShipStores shipStores = _context.FalShipStores.FirstOrDefault(s => s.FalShipStoresId == id); if (shipStores == null) { return(NotFound()); } return(Json(shipStores)); }
public IActionResult Update([FromBody] FalShipStores shipStores) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } try { _context.FalShipStores.Update(shipStores); _context.SaveChanges(); return(Ok()); } catch (Exception e) { return(BadRequest(e)); } }
public List <SHIP_STORE_ERRORS> ValidateShipStoreSpreadsheetModel(FalShipStores shipStore) { var errors = new List <SHIP_STORE_ERRORS>(); if (string.IsNullOrWhiteSpace(shipStore.ArticleName)) { errors.Add(SHIP_STORE_ERRORS.NAME_OF_ARTICLE); } bool is_integer = unchecked (shipStore.Quantity == (int)shipStore.Quantity); if ((!string.IsNullOrWhiteSpace(shipStore.ArticleName) && shipStore.Quantity == null) || !is_integer) { errors.Add(SHIP_STORE_ERRORS.QUANTITY); } return(errors); }
private List <FalShipStores> ConvertToShipStores(ExcelWorksheet worksheet, ShipStoresSheet sheetDefinition, int portCallId) { var shipStoreList = new List <FalShipStores>(); var sequenceNo = 1; var validator = new ShipStoresSpreadSheetValidator(); var measurementTypes = new Dictionary <string, int>(); _context.MeasurementType.ToList().ForEach(x => { measurementTypes.Add(x.Name.Split('(', ')')[1], x.MeasurementTypeId); }); try { for (var rowNum = sheetDefinition.startRow; rowNum <= worksheet.Dimension.End.Row; rowNum++) { var NameOfArticle = worksheet.Cells[rowNum, sheetDefinition.NameOfArticleAddress].Text; var QuantityTxt = worksheet.Cells[rowNum, sheetDefinition.QuantityAddress].Text; var LocationOnBoard = worksheet.Cells[rowNum, sheetDefinition.LocationOnBoardAddress].Text; var MeasurementType = worksheet.Cells[rowNum, sheetDefinition.MeasurementTypeAddress].Text; if (string.IsNullOrWhiteSpace(NameOfArticle) && string.IsNullOrWhiteSpace(QuantityTxt) && string.IsNullOrWhiteSpace(LocationOnBoard)) { continue; } QuantityTxt = QuantityTxt.Replace(",", "."); float.TryParse(QuantityTxt, NumberStyles.Any, CultureInfo.InvariantCulture, out var Quantity); var shipStore = new FalShipStores { SequenceNumber = sequenceNo, LocationOnBoard = LocationOnBoard, ArticleName = NameOfArticle, Quantity = Quantity, PortCallId = portCallId, }; if (!string.IsNullOrWhiteSpace(MeasurementType)) { if (measurementTypes.TryGetValue(MeasurementType.Split('(', ')')[1], out var measurementTypeId)) { shipStore.MeasurementTypeId = measurementTypeId; } ; } var errors = validator.ValidateShipStoreSpreadsheetModel(shipStore); var errorMsgs = validator.ConvertErrorsToMsg(errors); shipStore.Errors = errors; shipStore.ExcelRowNum = rowNum; shipStore.ErrorMessages = errorMsgs; shipStoreList.Add(shipStore); sequenceNo++; } return(shipStoreList); } catch (Exception ex) { Logger.Error(ex); } return(shipStoreList); }