public IActionResult Update(CreatePeerEvaluationViewModel model) { var userId = int.Parse(HttpContext.Session.GetString("UserId")); var header = new CriteriaEvaluationHeader { Id = model.Header.RecordId, Criteria = _Services.CriteriaHeaderById(model.Header.Id), Rater = _Services.GetAccountById(userId), Ratee = _Services.GetAccountById(model.EmployeeId), }; List <CriteriaEvaluationLine> items = new List <CriteriaEvaluationLine>(); foreach (var item in model.LineItems) { var i = new CriteriaEvaluationLine { Id = item.RecordId, CriteriaLine = _Services.CriteriaLineById(item.Id), Comment = item.Comment, Score = item.Score }; items.Add(i); } _Services.Update(header, items, userId); return(RedirectToAction("Overview", new { employee = model.EmployeeId })); }
public void Update(CriteriaEvaluationHeader header, IEnumerable <CriteriaEvaluationLine> items, int userid) { var status = _dbContext.Statuses.FirstOrDefault(a => a.Id == TransactionStatus.Save.ToInt()); header.Status = status; header.DateCreated = DateTime.Now; header.Period = ActivePeriod(); _dbContext.Entry(header).State = EntityState.Modified; foreach (var item in items) { item.Header = header; _dbContext.Entry(item).State = EntityState.Modified; } _dbContext.SaveChanges(); }