//************** REPORTING ************************ public async Task <IActionResult> OnPostGetUserResourceUsageReportAsync() { try { string username = "******"; string password = "******"; //AuthenticateUserPassword sb.AppendLine(String.Format("username: {0}, password: {1}", username, password)); string sessionCode = await AuthenticateUserPasswordAsync(username, password); sb.AppendLine(String.Format("sessionCode: {0}", sessionCode)); //GetUserResourceUsageReport //TODO GET USER ID and DATE TIME sb.AppendLine(String.Format("Getting report for User: {0}", 1)); UserResourceUsageReportExt userUsageReport = await GetUserResourceUsageReportAsync(1, new DateTime(2019, 6, 1), DateTime.UtcNow, sessionCode); //sb.AppendLine(String.Format(userUsageReport.ToString())); ResponseContent = sb.ToString(); } catch (Exception e) { ResponseContent = e.Message; } return(Page()); }
private static async Task <UserResourceUsageReportExt> GetUserResourceUsageReportAsync(long userId, DateTime startTime, DateTime endTime, string sessionCode) { var client = new RestClient(baseUrl); var request = new RestRequest("JobReporting/GetUserResourceUsageReport", Method.Post) { RequestFormat = DataFormat.Json }.AddJsonBody( new GetUserResourceUsageReportModel { UserId = userId, StartTime = startTime, EndTime = endTime, SessionCode = sessionCode }); var response = await client.ExecuteAsync(request); if (response.StatusCode != System.Net.HttpStatusCode.OK) { throw new Exception(response.Content.ToString()); } else { sb.AppendLine(JToken.Parse(response.Content).ToString(Newtonsoft.Json.Formatting.Indented)); } UserResourceUsageReportExt userUsageReport = JsonConvert.DeserializeObject <UserResourceUsageReportExt>(response.Content.ToString()); return(userUsageReport); }
public static UserResourceUsageReportExt ConvertIntToExt(this UserResourceUsageReport report) { UserResourceUsageReportExt convert = new UserResourceUsageReportExt() { User = report.User.ConvertIntToExt(), NodeTypeReports = report.NodeTypeReport.Select(s => s.ConvertIntToExt()) .ToArray(), StartTime = report.StartTime, EndTime = report.EndTime, TotalCorehoursUsage = report.TotalUsage }; return(convert); }