Skip to content

Commit

Permalink
v1.52 (#136)
Browse files Browse the repository at this point in the history
  • Loading branch information
NomisNostab authored Apr 5, 2024
2 parents c1723a5 + bad2fde commit 74f5c39
Show file tree
Hide file tree
Showing 8 changed files with 33 additions and 14 deletions.
10 changes: 8 additions & 2 deletions Model/Program/EventListModel.cs
Original file line number Diff line number Diff line change
Expand Up @@ -11,16 +11,22 @@ public class EventListModel

[Display(Name = "Date")]
public DateTime StartDateTime { get; set; }
public string StartDateTimeDisplay { get; set; } = string.Empty;
public DateTime EndDateTime { get; set; }
public string EndDateTimeDisplay { get; set; } = string.Empty;
public string DateDisplay => StartDateTime.Date == EndDateTime.Date
? $"{StartDateTime:ddd d}"
: $"{StartDateTime:ddd d} - {EndDateTime:ddd d}";
public string StartFinishDisplay { get; set; } = string.Empty;

[Display(Name = "Challenge Area")]
public string ChallengeArea { get; set; } = string.Empty;
public string EventDisplay { get; set; } = string.Empty;

[Display(Name = "Date Time")]
public string EventDate => StartDateTime.Date == EndDateTime.Date
? $"{StartDateTime.ToString("dd/MM/yy HH:mm")} - {EndDateTime.ToString("HH:mm")}"
: $"{StartDateTime.ToString("dd/MM/yy HH:mm")} - {EndDateTime.ToString("HH:mm")} +{EndDateTime.DayOfYear - StartDateTime.DayOfYear}";
? $"{StartDateTime:dd/MM/yy HH:mm} - {EndDateTime:HH:mm}"
: $"{StartDateTime:dd/MM/yy HH:mm} - {EndDateTime:HH:mm} +{EndDateTime.DayOfYear - StartDateTime.DayOfYear}";

public List<EventAttendance> attendees = new List<EventAttendance>();

Expand Down
10 changes: 4 additions & 6 deletions Services/ReportService.cs
Original file line number Diff line number Diff line change
Expand Up @@ -2372,21 +2372,19 @@ public IWorkbook GenerateTermProgramWorkbook(List<EventListModel> eventEntries,
}
rowNumber++;
columnNumber = 1;
sheet.Range[rowNumber, columnNumber].DateTime = eventEntry.StartDateTime;
sheet.Range[rowNumber, columnNumber].Text = eventEntry.StartDateTimeDisplay;
sheet.Range[rowNumber, columnNumber].BorderAround();
sheet.Range[rowNumber, columnNumber].NumberFormat = "dd/MM/yy HH:mm";
columnNumber++;
sheet.Range[rowNumber, columnNumber].DateTime = eventEntry.EndDateTime;
sheet.Range[rowNumber, columnNumber].Text = eventEntry.EndDateTimeDisplay;
sheet.Range[rowNumber, columnNumber].BorderAround();
sheet.Range[rowNumber, columnNumber].NumberFormat = "dd/MM/yy HH:mm";
columnNumber++;
sheet.Range[rowNumber, columnNumber].Text = FormatEventDate(eventEntry.StartDateTime, eventEntry.EndDateTime);
sheet.Range[rowNumber, columnNumber].Text = eventEntry.DateDisplay;
sheet.Range[rowNumber, columnNumber].BorderAround();
columnNumber++;
sheet.Range[rowNumber, columnNumber].Text = "";
sheet.Range[rowNumber, columnNumber].BorderAround();
columnNumber++;
sheet.Range[rowNumber, columnNumber].Text = FormatEventTime(eventEntry.StartDateTime, eventEntry.EndDateTime);
sheet.Range[rowNumber, columnNumber].Text = eventEntry.StartFinishDisplay;
sheet.Range[rowNumber, columnNumber].BorderAround();
columnNumber++;
sheet.Range[rowNumber, columnNumber].Text = eventEntry.Location;
Expand Down
7 changes: 6 additions & 1 deletion Topo/Controller/ProgramController.cs
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,11 @@ public class ProgramController : ComponentBase
public ProgramPageViewModel model = new ProgramPageViewModel();
private string groupCalendarId = string.Empty;

private JsonSerializerSettings _settings = new JsonSerializerSettings
{
DateParseHandling = DateParseHandling.None
};

protected override async Task OnInitializedAsync()
{
if (!_storageService.IsAuthenticated)
Expand Down Expand Up @@ -157,7 +162,7 @@ private async Task<byte[]> TermProgramReport(OutputType outputType = OutputType.
var unitName = _storageService.UnitName ?? "Unit Name";
var section = _storageService.Section;

var serialisedTermProgramData = JsonConvert.SerializeObject(model.Events);
var serialisedTermProgramData = JsonConvert.SerializeObject(model.Events, _settings);
var report = await _reportService.GetTermProgramReport(groupName, section, unitName, outputType, serialisedTermProgramData);

return report;
Expand Down
5 changes: 5 additions & 0 deletions Topo/Services/ProgramService.cs
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,12 @@ public async Task<List<EventListModel>> GetEventsForDates(DateTime fromDate, Dat
Id = eventResult.id,
EventName = eventResult.title,
StartDateTime = eventResult.start_datetime,
StartDateTimeDisplay = eventResult.start_datetime.ToString("dd/MM/yy HH:mm"),
EndDateTime = eventResult.end_datetime,
EndDateTimeDisplay = eventResult.end_datetime.ToString("dd/MM/yy HH:mm"),
StartFinishDisplay = eventResult.start_datetime.Date == eventResult.end_datetime.Date
? $"{eventResult.start_datetime:h:mm tt} - {eventResult.end_datetime:h:mm tt}"
: $"{eventResult.start_datetime:ddd h:mm tt} - {eventResult.end_datetime:ddd h:mm tt}",
ChallengeArea = myTI.ToTitleCase(eventResult.challenge_area.Replace("_", " ").Replace("personal ", "")),
EventStatus = myTI.ToTitleCase(eventResult.status),
IsUnitEvent = eventResult.invitee_type == "unit",
Expand Down
2 changes: 1 addition & 1 deletion Topo/Services/ReportService.cs
Original file line number Diff line number Diff line change
Expand Up @@ -294,7 +294,7 @@ private async Task<byte[]> CallReportGeneratorFunction(ReportGenerationRequest r
string functionUrl = "https://qwhcdbhrempok4kpmk6utzavxq0zjzha.lambda-url.ap-southeast-2.on.aws/";
#endif
HttpRequestMessage httpRequest = new HttpRequestMessage(HttpMethod.Put, functionUrl);
var content = JsonConvert.SerializeObject(reportGenerationRequest);
var content = JsonConvert.SerializeObject(reportGenerationRequest, new JsonSerializerSettings { DateParseHandling = DateParseHandling.None});
string message = $"Version: {_storageService.Version}; Date: {DateTime.Now.ToString("dd/MM/yyyy : HH:mm:ss")}; ReportGenerationRequestData: {reportGenerationRequest.ReportData}";
_logger.LogInformation(message);
httpRequest.Content = new StringContent(content, Encoding.UTF8, "application/json");
Expand Down
2 changes: 1 addition & 1 deletion Topo/Services/StorageService.cs
Original file line number Diff line number Diff line change
Expand Up @@ -117,6 +117,6 @@ public bool IsYouthMember
}
}

public string Version = "1.51";
public string Version = "1.52";
}
}
9 changes: 7 additions & 2 deletions TopoReportFunction/Function.cs
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,11 @@ public class Function
{
private ReportService reportService = new ReportService();

private JsonSerializerSettings _settings = new JsonSerializerSettings
{
DateParseHandling = DateParseHandling.None
};

/// <summary>
/// Returns a Member List Report in a base 64 string of the PDF or XLSX
/// </summary>
Expand All @@ -45,7 +50,7 @@ public string FunctionHandler(APIGatewayProxyRequest request, ILambdaContext con

var requestBody = request.Body;
Console.WriteLine(requestBody);
var reportGenerationRequest = JsonConvert.DeserializeObject<ReportGenerationRequest>(requestBody);
var reportGenerationRequest = JsonConvert.DeserializeObject<ReportGenerationRequest>(requestBody, _settings);
if (reportGenerationRequest != null)
{
var workbook = reportService.CreateWorkbookWithSheets(1);
Expand Down Expand Up @@ -313,7 +318,7 @@ private IWorkbook GenerateApprovalsWorkbook(ReportGenerationRequest reportGenera

private IWorkbook GenerateTermProgramWorkbook(ReportGenerationRequest reportGenerationRequest)
{
var reportData = JsonConvert.DeserializeObject<List<EventListModel>>(reportGenerationRequest.ReportData);
var reportData = JsonConvert.DeserializeObject<List<EventListModel>>(reportGenerationRequest.ReportData, _settings);
if (reportData != null)
{
var workbook = reportService.GenerateTermProgramWorkbook(reportData, reportGenerationRequest.GroupName, reportGenerationRequest.Section
Expand Down
2 changes: 1 addition & 1 deletion TopoReportFunctionTest/Events.cs

Large diffs are not rendered by default.

0 comments on commit 74f5c39

Please sign in to comment.