forked from MDCPS/DamageAssessment_Backend
		
	added active and historical end points in response service
This commit is contained in:
		| @ -125,25 +125,18 @@ namespace DamageAssesment.Api.Responses.Providers | ||||
|                 return (false, null, ex.Message); | ||||
|             } | ||||
|         } | ||||
|          | ||||
|         public async Task<(bool IsSuccess, dynamic Surveys, string ErrorMessage)> GetActiveSurveysAsync(int employeeid, string language) | ||||
|         public async Task<(bool IsSuccess, dynamic Surveys, string ErrorMessage)> GetActiveSurveysAsync(int? employeeid, string language) | ||||
|         { | ||||
|             try | ||||
|             { | ||||
|                 logger?.LogInformation("Querying to get SurveyResponse object from DB"); | ||||
|                 //get all the survey that already taken by the employee | ||||
|                 var listOfsurveysId = await surveyResponseDbContext.SurveyResponses.Where(x => x.EmployeeId == employeeid).Select(y => y.SurveyId).ToListAsync(); | ||||
|                 var surveys = await surveyServiceProvider.getSurveysAsync(language); | ||||
|  | ||||
|                 if (surveys != null) | ||||
|                 { | ||||
|                     surveys = surveys.Where(s => s.IsEnabled == true && s.StartDate <= DateTime.Now && s.EndDate >= DateTime.Now).ToList(); | ||||
|                 } | ||||
|  | ||||
|                 if (listOfsurveysId==null || listOfsurveysId.Count == 0) | ||||
|                 var surveys = await surveyServiceProvider.getSurveysAsync(language, token); | ||||
|                 surveys = surveys.Where(s => s.IsEnabled == true && s.StartDate <= DateTime.Now && s.EndDate >= DateTime.Now).ToList(); | ||||
|                 if (employeeid == null || employeeid == 0) | ||||
|                     return (true, surveys, null); | ||||
|  | ||||
|                 var activeSurveys = surveys.Where(s => s.IsEnabled == true && s.StartDate <= DateTime.Now && s.EndDate >= DateTime.Now && !listOfsurveysId.Contains(s.Id)); | ||||
|                 List<int> listOfsurveysId = await surveyResponseDbContext.SurveyResponses.Where(x => x.EmployeeId == employeeid.Value).Select(y => y.SurveyId).ToListAsync(); | ||||
|                 var activeSurveys = surveys.Where(s => !listOfsurveysId.Contains(s.Id)); | ||||
|                 return (true, activeSurveys, null); | ||||
|             } | ||||
|             catch (Exception ex) | ||||
| @ -153,21 +146,24 @@ namespace DamageAssesment.Api.Responses.Providers | ||||
|             } | ||||
|         } | ||||
|  | ||||
|         public async Task<(bool IsSuccess, dynamic Surveys, string ErrorMessage)> GetHistoricSurveysAsync(int employeeid, string language) | ||||
|         public async Task<(bool IsSuccess, dynamic Surveys, string ErrorMessage)> GetHistoricSurveysAsync(int? employeeid, string language) | ||||
|         { | ||||
|             try | ||||
|             { | ||||
|                 logger?.LogInformation("Querying to get SurveyResponse object from DB"); | ||||
|                 //get all the survey that already taken by the employee | ||||
|                 var surveyResponses = await surveyResponseDbContext.SurveyResponses.Where(x => x.EmployeeId == employeeid).ToListAsync(); | ||||
|                 var surveys = await surveyServiceProvider.getSurveysAsync(language); | ||||
|  | ||||
|                 var surveys = await surveyServiceProvider.getSurveysAsync(language,token); | ||||
|                 // returning only historic data: end date is less than current date. | ||||
|                 surveys = surveys.Where(s => s.EndDate < DateTime.Now).ToList(); | ||||
|                 if (employeeid == null || employeeid == 0) | ||||
|                     return (true, surveys, null); | ||||
|                 var surveyResponses = await surveyResponseDbContext.SurveyResponses.Where(x => x.EmployeeId == employeeid).ToListAsync(); | ||||
|                 var historicSurveys = from s in surveys | ||||
|                                       from r in surveyResponses | ||||
|                                       where s.Id == r.SurveyId | ||||
|                                       select s; | ||||
|  | ||||
|                 return (true, historicSurveys, null); | ||||
|  | ||||
|             } | ||||
|             catch (Exception ex) | ||||
|             { | ||||
|  | ||||
		Reference in New Issue
	
	Block a user