public async Task <IActionResult> Run( [HttpTrigger(AuthorizationLevel.Function, "get", "post", Route = null)] HttpRequest req, ILogger log) { log.LogInformation("C# HTTP trigger function processed a request."); string tenantUrl = req.Query["tenantUrl"]; string empID = req.Query["empID"]; string token = req.Query["token"]; var validationModel = Validate(tenantUrl, empID, token); if (!validationModel.IsValid) { return(new BadRequestObjectResult(validationModel)); } var request = new GetRecentProjects(tenantUrl, empID, token); var result = await _getRecentProjectsQuery.Execute(request); return(new JsonResult(result)); }
public async Task <CollectDataModel> Execute(CollectDataRequest request) { var data = new CollectDataModel { EmpID = request.EmpID, Date = request.Date }; var crmAppointmentsTask = _getCrmAppointmentsQuery.Execute(new GetCrmAppointments( request.TenantUrl, request.EmpID, request.Date, request.Date, request.Token)); var recentProjectsTask = _getRecentProjectsQuery.Execute(new GetRecentProjects( request.TenantUrl, request.EmpID, request.Token)); var timesheetsTask = _getTimesheetsQuery.Execute(new GetTimesheets.GetTimesheets( request.TenantUrl, request.EmpID, request.Date, request.Date, request.Token)); IEnumerable <GitCommitModel> commits = await GetCommits(request); data.Commits = commits; data.CrmAppointments = await crmAppointmentsTask; data.RecentProjects = await recentProjectsTask; data.Timesheets = await timesheetsTask; return(data); }