public bool AddScore(KraInputScores score) { using (KraContext Context = new KraContext()) { KraInputScores Scores = (from Score in Context.Score where Score.AccountParamID == score.AccountParamID select Score).SingleOrDefault(); if (Scores != null) { Scores.Score = score.Score; Context.SaveChanges(); } else { Context.Score.Add(score); } Context.SaveChanges(); } return(true); }
public DataTable GetScoresDataTable(int AccountId, int Year) { DataTable scorestable = new DataTable(); scorestable.Columns.Add("Parameter Name"); scorestable.Columns.Add("Weightage"); scorestable.Columns.Add("Q1"); scorestable.Columns.Add("Q2"); scorestable.Columns.Add("Q3"); scorestable.Columns.Add("Q4"); try { string[] Quarters = AccountParams.GetQuarters(AccountId, Year); List <AccountParametersModel> Parameters = AccountParams.GetParameters(AccountId, Year); List <CalculatedScoreYear> list = new List <CalculatedScoreYear>(); foreach (var items in Parameters) { CalculatedScoreYear ob = new CalculatedScoreYear(); ob.ParameterName = items.ParameterName; ob.Weightage = Convert.ToInt32(items.Weightage); ob.Score = new float[Quarters.Length]; for (int i = 0; i < Quarters.Length; i++) { AccountParametersModel parameter = AccountParams.GetParameter(AccountId, items.ParamID, Quarters[i], Year); if (parameter != null) { KraInputScores score = InputScores.GetScores(parameter.AccountParamID); if (score != null) { ob.Score[i] = score.Score; } else { ob.Score[i] = 0; } } else { ob.Score[i] = 0; } } list.Add(ob); } foreach (var items in list) { int size = items.Score.Length; if (size == 1) { scorestable.Rows.Add(items.ParameterName, items.Weightage, items.Score[0]); } else if (size == 2) { scorestable.Rows.Add(items.ParameterName, items.Weightage, items.Score[0], items.Score[1]); } else if (size == 3) { scorestable.Rows.Add(items.ParameterName, items.Weightage, items.Score[0], items.Score[1], items.Score[2]); } else if (size == 4) { scorestable.Rows.Add(items.ParameterName, items.Weightage, items.Score[0], items.Score[1], items.Score[2], items.Score[3]); } } } catch (Exception ex) { logger.Error(ex.ToString()); logger.Error(ex.Message); logger.Error(ex.Source); scorestable = null; } return(scorestable); }