public Rank GetRank(int RankID) { var result = new Rank(); using (var reader = GetContext().GetReader(@" SELECT * FROM Ranks WHERE RankID = {0} ", RankID)) { if(!reader.Read()) return null; result.RankID = reader.GetInt32("RankID"); result.RankDescription = reader.GetString("RankDescription"); } return result; }
public Rank GetHighestRankAchievedInCurrentPeriod(int CustomerID, int PeriodTypeID) { var result = new Rank(); using (var reader = GetContext().GetReader(@" SELECT RankID = COALESCE(pv.RankID, 1), RankDescription = COALESCE(r.RankDescription, 'Unknown') FROM PeriodVolumes pv LEFT JOIN Ranks r ON r.RankID = pv.RankID LEFT JOIN Periods p ON p.PeriodID = pv.PeriodID AND p.PeriodTypeID = pv.PeriodTypeID WHERE pv.CustomerID = {0} AND pv.PeriodTypeID = {1} AND p.StartDate < {2} AND p.EndDate >= {2} ", CustomerID, PeriodTypeID, DateTime.Now)) { if(!reader.Read()) return null; result.RankID = reader.GetInt32("RankID"); result.RankDescription = reader.GetString("RankDescription"); } return result; }
public Rank GetRank(int RankID) { var result = new Rank(); var response = GetContext().Ranks .Where(c => c.RankID == RankID) .FirstOrDefault(); if(response == null) return null; result.RankID = response.RankID; result.RankDescription = response.RankDescription; return result; }
public Rank GetHighestRankAchieved(int CustomerID) { var result = new Rank(); using (var reader = GetContext().GetReader(@" SELECT RankID = COALESCE(c.RankID, 1), RankDescription = COALESCE(r.RankDescription, 'Unknown') FROM Customers c LEFT JOIN Ranks r ON r.RankID = c.RankID WHERE c.CustomerID = {0} ", CustomerID)) { if(!reader.Read()) return null; result.RankID = reader.GetInt32("RankID"); result.RankDescription = reader.GetString("RankDescription"); } return result; }
public Rank GetHighestRankAchievedInCurrentPeriod(int CustomerID, int PeriodTypeID) { var result = new Rank(); var response = GetContext().PeriodVolumes .Where(c => c.CustomerID == CustomerID) .Where(c => c.PeriodTypeID == PeriodTypeID) .Where(c => c.Period.IsCurrentPeriod) .Select(c => new { RankID = c.RankID, RankDescription = c.Rank.RankDescription }) .FirstOrDefault(); if(response == null) return null; result.RankID = response.RankID; result.RankDescription = GlobalUtilities.Coalesce(response.RankDescription, "Unknown"); return result; }