public IActionResult DeleteKPA(int kpaId) { if (kpaId == 0) { return(BadRequest("Something bad happened. Make sure KPA is selected")); } try { KeyProcessArea keyProcessArea = _context.KeyProcessAreas.FirstOrDefault(id => id.KeyProcessAreaId == kpaId); if (keyProcessArea == null) { return(BadRequest("KPA does not exists!")); } _context.Targets.RemoveRange(_context.Targets.Where(id => id.KeyProcessAreaId == kpaId).ToList()); _context.Productions.RemoveRange(_context.Productions.Where(id => id.KeyProcessAreaId == kpaId).ToList()); _context.KeyProcessAreas.Remove(keyProcessArea); _context.SaveChanges(); return(Ok()); } catch (Exception Ex) { return(BadRequest("Something bad happened!" + Ex.Message)); } }
public IActionResult UpdateKPA([FromBody] KPAUpdate kpa) { if (kpa == null) { return(BadRequest("Error, make sure KPA update form is filled correctly.")); } KeyProcessArea k = _context.KeyProcessAreas.FirstOrDefault(id => id.KeyProcessAreaId == kpa.KeyProcessAreaId); try { k.KeyProcessAreaName = kpa.KeyProcessAreaName; k.Color = kpa.Color; k.BackgroundColor = kpa.BackgroundColor; k.KeyProcessAreaTypeId = kpa.KeyProcessAreaTypeId; _context.Frequencies.Remove(_context.Frequencies.FirstOrDefault(id => id.KeyProcessAreaId == kpa.KeyProcessAreaId)); _context.SaveChanges(); _context.KeyProcessAreas.Update(k); Frequency frequency = new Frequency(); frequency.FrequencyName = kpa.Frequency; frequency.KeyProcessAreaId = kpa.KeyProcessAreaId; _context.Frequencies.Add(frequency); _context.SaveChanges(); return(Ok()); } catch (Exception Ex) { return(BadRequest("Something bad happened. " + Ex.Message)); } }
public IActionResult SaveKpa([FromBody] Target model) { if (model == null) { return(BadRequest("Error, make sure KPA target form is filled correctly.")); } try { if (model.TargetId == 0) { Process process = _context.Processes.FirstOrDefault(id => id.ProcessId == _context.KeyProcessAreas.FirstOrDefault(id => id.KeyProcessAreaId == model.KeyProcessAreaId).ProcessId); model.DateStamp = DateTime.Now; model.Month = process.ProcessDate.Month; model.Year = process.ProcessDate.Year; _context.Targets.Add(model); _context.SaveChanges(); KeyProcessArea keyProcessArea = _context.KeyProcessAreas.FirstOrDefault(id => id.KeyProcessAreaId == model.KeyProcessAreaId); keyProcessArea.IsTargetSet = true; _context.KeyProcessAreas.Update(keyProcessArea); _context.SaveChanges(); } else { Target target = _context.Targets.FirstOrDefault(id => id.TargetId == model.TargetId); target.TargetValue = model.TargetValue; target.Budget = model.Budget; target.Threshold = model.Threshold; _context.Targets.Update(target); _context.SaveChanges(); } return(Ok()); } catch (Exception Ex) { return(BadRequest("Something bad happened. " + Ex.Message)); } }
public IActionResult GetKPATarget([FromBody] KPATargetVM kPATargetVM) { if (kPATargetVM == null) { return(BadRequest("Error, make sure KPA is selected correctly.")); } try { KeyProcessArea keyProcessArea = _context.KeyProcessAreas.FirstOrDefault(id => id.KeyProcessAreaId == kPATargetVM.KeyProcessAreaId); DateTime processDate = _context.Processes.FirstOrDefault(id => id.ProcessId == keyProcessArea.ProcessId).ProcessDate; Target target = _context.Targets.FirstOrDefault(id => (id.KeyProcessAreaId == kPATargetVM.KeyProcessAreaId) && (id.Year == processDate.Year) && (id.Month == processDate.Month)); return(Ok(target)); } catch (Exception Ex) { return(BadRequest("Something bad happened. " + Ex.Message)); } }
public IActionResult SaveKpa([FromBody] KeyProcessAreaVM model) { if (model == null) { return(BadRequest("Error, make sure KPA form is filled correctly.")); } Process process = _context.Processes.FirstOrDefault(id => id.ProcessId == model.ProcessId); model.ProcessDate = process.ProcessDate; KeyProcessArea kpaChecker = _context.KeyProcessAreas.FirstOrDefault(id => (id.AssetNodeId == model.AssetNodeId) && (id.KeyProcessAreaName == model.KeyProcessAreaName) && (id.ProcessId == model.ProcessId) && (id.KPADate.Year == model.ProcessDate.Year) && (id.KPADate.Month == model.ProcessDate.Month)); if (kpaChecker != null) { return(BadRequest("Error, There is already an existing KPA for the month" + model.ProcessDate.Year + "-" + model.ProcessDate.Year + ". Choose a different name or edit the existing one.")); } try { KeyProcessArea keyProcessArea = new KeyProcessArea(); keyProcessArea.KeyProcessAreaName = model.KeyProcessAreaName; keyProcessArea.KeyProcessAreaTypeId = model.KeyProcessAreaTypeId; keyProcessArea.AssetNodeId = model.AssetNodeId; keyProcessArea.ProcessId = model.ProcessId; keyProcessArea.Color = model.Color; keyProcessArea.BackgroundColor = model.BackgroundColor; keyProcessArea.KPADate = model.ProcessDate; keyProcessArea.Reference = model.Reference; _context.KeyProcessAreas.Add(keyProcessArea); _context.SaveChanges(); Frequency frequency = new Frequency(); frequency.FrequencyName = model.Frequency; frequency.KeyProcessAreaId = keyProcessArea.KeyProcessAreaId; _context.Add(frequency); _context.SaveChanges(); List <DateTime> dateTimes = getAllDates(model.ProcessDate.Year, model.ProcessDate.Month); List <Production> productions = new List <Production>(); foreach (var date in dateTimes) { Production production = new Production(); production.AssetNodeId = model.AssetNodeId; production.KeyProcessAreaId = keyProcessArea.KeyProcessAreaId; production.KeyProcessArea = _context.KeyProcessAreas.FirstOrDefault(id => id.KeyProcessAreaId == keyProcessArea.KeyProcessAreaId); production.Month = date.Month; production.Year = date.Year; production.Day = date.Day; production.Reference = model.Reference; production.Value = 0; production.DateStamp = DateTime.Now; productions.Add(production); } _context.Productions.AddRange(productions); _context.SaveChanges(); return(Ok()); } catch (Exception Ex) { return(BadRequest("Something bad happened. " + Ex.Message)); } }