public ActionResult EditData(EmergencyLightViewModel[] item) { string status = "success"; string message = ""; try { int headerId = item[0].ID; foreach (var detail in item) { var d = _context.EmergencyLightDetails .Where(a => a.EmergencyLightHeaderId == headerId) .Where(a => a.ItemId == detail.ItemId) .FirstOrDefault(); if (d == null) { var _detail = new EmergencyLightDetail { ItemId = detail.ItemId, Battery = Convert.ToInt32(detail.Battery), Bulb = Convert.ToInt32(detail.Bulb), Usable = Convert.ToInt32(detail.Usable), CreatedAt = DateTime.Now.Date, UpdatedAt = DateTime.Now, EmergencyLightHeaderId = headerId, Remarks = detail.Remarks, //InspectedBy = detail.InspectedBy, //ReviewedBy = detail.ReviewedBy, //NotedBy = detail.NotedBy }; _context.Add(_detail); } else { d.Battery = Convert.ToInt32(detail.Battery); d.Bulb = Convert.ToInt32(detail.Bulb); d.Usable = Convert.ToInt32(detail.Usable); d.UpdatedAt = DateTime.Now; d.UpdatedBy = User.Identity.GetUserName(); d.EmergencyLightHeaderId = headerId; d.Remarks = detail.Remarks; //d.InspectedBy = detail.InspectedBy; //d.ReviewedBy = detail.ReviewedBy; //d.NotedBy = detail.NotedBy; _context.Update(d); } _context.SaveChanges(); } status = "success"; } catch (Exception e) { status = "fail"; message = e.InnerException.Message; } var model = new { status , message }; return(Json(model)); }
public IActionResult SaveData(EmergencyLightViewModel[] item) { int headerId = 0; string status = ""; string message = ""; string series = ""; string refno = ""; //string series_code = "EMERGENCYLIGHT"; //series = new NoSeriesController(_context).GetNoSeries(series_code); //refno = "EL" + series; try { //var _header = _context.EmergencyLightHeaders // .Where(a => a.Status == "Active") // .Where(a => a.LocationEmergencyLightId == item[0].LocationEmergencyLightId) // .Where(a => a.CreatedAt == DateTime.Now.Date); var _header = _context.EmergencyLightHeaders .Where(a => a.AreaId == item[0].AreaId) .Where(a => a.Status == "Active") .Where(a => a.DocumentStatus != "Approved"); if (_header.Count() == 0) { var comp = _context.LocationEmergencyLights.Include(a => a.Areas.Companies).Where(a => a.Id == item[0].LocationEmergencyLightId).FirstOrDefault() .Areas.Companies.Code; if (comp == "SCPC") { comp = "SC"; } else { comp = "SL"; } string series_code = comp + "EMERGENCYLIGHT"; series = new NoSeriesController(_context).GetNoSeries(series_code); refno = comp + "EL" + series; EmergencyLightHeader header = new EmergencyLightHeader { //header.AreaId = item[0].AreaId; 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 EmergencyLightDetail { ItemId = detail.ItemId, Battery = Convert.ToInt32(detail.Battery), Bulb = Convert.ToInt32(detail.Bulb), Usable = Convert.ToInt32(detail.Usable), CreatedAt = DateTime.Now.Date, UpdatedAt = DateTime.Now.Date, EmergencyLightHeaderId = headerId, Remarks = detail.Remarks, InspectedBy = detail.InspectedBy, ReviewedBy = detail.ReviewedBy, NotedBy = detail.NotedBy, LocationEmergencyLightId = detail.LocationEmergencyLightId }; _context.Add(_detail); } } else { headerId = _header.FirstOrDefault().Id; foreach (var detail in item) { var d = _context.EmergencyLightDetails .Where(a => a.EmergencyLightHeaderId == headerId) .Where(a => a.LocationEmergencyLightId == detail.LocationEmergencyLightId) .Where(a => a.ItemId == detail.ItemId) .FirstOrDefault(); if (d == null) { var _detail = new EmergencyLightDetail { ItemId = Convert.ToInt32(detail.ItemId), Battery = Convert.ToInt32(detail.Battery), Bulb = Convert.ToInt32(detail.Bulb), Usable = Convert.ToInt32(detail.Usable), CreatedAt = DateTime.Now.Date, UpdatedAt = DateTime.Now, EmergencyLightHeaderId = headerId, Remarks = detail.Remarks, InspectedBy = detail.InspectedBy, ReviewedBy = detail.ReviewedBy, NotedBy = detail.NotedBy, LocationEmergencyLightId = detail.LocationEmergencyLightId, }; _context.Add(_detail); } else { d.Battery = Convert.ToInt32(detail.Battery); d.Bulb = Convert.ToInt32(detail.Bulb); d.Usable = Convert.ToInt32(detail.Usable); d.UpdatedAt = DateTime.Now; d.UpdatedBy = User.Identity.GetUserName(); d.EmergencyLightHeaderId = headerId; d.Remarks = detail.Remarks; d.InspectedBy = detail.InspectedBy; d.ReviewedBy = detail.ReviewedBy; d.NotedBy = detail.NotedBy; d.LocationEmergencyLightId = detail.LocationEmergencyLightId; _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)); }