public ActionResult EditData(FireExtinguisherViewModel[] item) { string status = "success"; string message = ""; try { int headerId = item[0].ID; foreach (var detail in item) { var d = _context.InergenTankDetails .Where(a => a.InergenTankHeaderId == headerId) .Where(a => a.ItemId == detail.ItemId) .FirstOrDefault(); if (d == null) { var _detail = new InergenTankDetail { ItemId = detail.ItemId, Cylinder = Convert.ToInt32(detail.Cylinder), Gauge = Convert.ToInt32(detail.Gauge), Hose = Convert.ToInt32(detail.Hose), Pressure = Convert.ToInt32(detail.Pressure), CreatedAt = DateTime.Now.Date, UpdatedAt = DateTime.Now, InergenTankHeaderId = headerId, Remarks = detail.Remarks, //InspectedBy = detail.InspectedBy, //ReviewedBy = detail.ReviewedBy, //NotedBy = detail.NotedBy }; _context.Add(_detail); } else { d.Cylinder = Convert.ToInt32(detail.Cylinder); d.Gauge = Convert.ToInt32(detail.Gauge); d.Hose = Convert.ToInt32(detail.Hose); d.Pressure = Convert.ToInt32(detail.Pressure); d.UpdatedAt = DateTime.Now; d.UpdatedBy = User.Identity.GetUserName(); d.InergenTankHeaderId = headerId; d.Remarks = detail.Remarks; //d.InspectedBy = detail.InspectedBy; //d.ReviewedBy = detail.ReviewedBy; //d.NotedBy = detail.NotedBy; _context.Update(d); } _context.SaveChanges(); } } catch (Exception e) { status = "fail"; message = e.InnerException.Message; } var model = new { status , message }; return(Json(model)); }
public IActionResult SaveData(FireExtinguisherViewModel[] item) { int headerId = 0; string status = ""; string message = ""; string series = ""; string refno = ""; //string series_code = "INERGENTANK"; //series = new NoSeriesController(_context).GetNoSeries(series_code); //refno = "IT" + series; try { //var _header = _context.InergenTankHeaders.Where(a => a.Status == "Active") // //.Where(a => a.AreaId == item[0].AreaId) // .Where(a => a.LocationInergenTankId == item[0].LocationInergenTankId) // .Where(a => a.CreatedAt == DateTime.Now.Date); var _header = _context.InergenTankHeaders .Where(a => a.AreaId == item[0].AreaId) .Where(a => a.Status == "Active") .Where(a => a.DocumentStatus != "Approved"); if (_header.Count() == 0) { var comp = _context.LocationInergenTanks.Include(a => a.Areas.Companies).Where(a => a.Id == item[0].LocationInergenTankId) .FirstOrDefault().Areas.Companies.Code; if (comp == "SCPC") { comp = "SC"; } else { comp = "SL"; } string series_code = comp + "INERGENTANK"; series = new NoSeriesController(_context).GetNoSeries(series_code); refno = comp + "IT" + series; InergenTankHeader header = new InergenTankHeader { ReferenceNo = refno, AreaId = item[0].AreaId, CreatedAt = DateTime.Now.Date, CreatedBy = User.Identity.GetFullName() }; _context.Add(header); _context.SaveChanges(); headerId = header.Id; string x = new NoSeriesController(_context).UpdateNoSeries(series, series_code); foreach (var detail in item) { var _detail = new InergenTankDetail { ItemId = detail.ItemId, Cylinder = Convert.ToInt32(detail.Cylinder), Gauge = Convert.ToInt32(detail.Gauge), Hose = Convert.ToInt32(detail.Hose), Pressure = Convert.ToInt32(detail.Pressure), CreatedAt = DateTime.Now.Date, UpdatedAt = DateTime.Now.Date, InergenTankHeaderId = headerId, Remarks = detail.Remarks, InspectedBy = detail.InspectedBy, ReviewedBy = detail.ReviewedBy, NotedBy = detail.NotedBy, LocationInergenTankId = detail.LocationInergenTankId, }; _context.Add(_detail); } } else { //headerId = item[0].ID; headerId = _header.FirstOrDefault().Id; foreach (var detail in item) { var d = _context.InergenTankDetails .Where(a => a.InergenTankHeaderId == headerId) .Where(a => a.LocationInergenTankId == detail.LocationInergenTankId) .Where(a => a.ItemId == detail.ItemId) .FirstOrDefault(); if (d == null) { var _detail = new InergenTankDetail { ItemId = detail.ItemId, Cylinder = Convert.ToInt32(detail.Cylinder), Gauge = Convert.ToInt32(detail.Gauge), Hose = Convert.ToInt32(detail.Hose), Pressure = Convert.ToInt32(detail.Pressure), CreatedAt = DateTime.Now.Date, UpdatedAt = DateTime.Now, InergenTankHeaderId = headerId, Remarks = detail.Remarks, InspectedBy = detail.InspectedBy, ReviewedBy = detail.ReviewedBy, NotedBy = detail.NotedBy, LocationInergenTankId = detail.LocationInergenTankId, }; _context.Add(_detail); } else { d.Cylinder = Convert.ToInt32(detail.Cylinder); d.Gauge = Convert.ToInt32(detail.Gauge); d.Hose = Convert.ToInt32(detail.Hose); d.Pressure = Convert.ToInt32(detail.Pressure); d.UpdatedAt = DateTime.Now; d.UpdatedBy = User.Identity.GetUserName(); d.InergenTankHeaderId = headerId; d.Remarks = detail.Remarks; d.InspectedBy = detail.InspectedBy; d.ReviewedBy = detail.ReviewedBy; d.NotedBy = detail.NotedBy; d.LocationInergenTankId = detail.LocationInergenTankId; _context.Update(d); } _context.SaveChanges(); } } _context.SaveChanges(); status = "success"; } catch (Exception ex) { status = "failed"; message = ex.InnerException.Message; } var model = new { status , message, ReferenceId = headerId }; return(Json(model)); }