Return a mission launch along with a mission
This commit is contained in:
@@ -1,4 +1,5 @@
|
|||||||
using MissionControl.Domain.Entities;
|
using MissionControl.Domain.Entities;
|
||||||
|
using MissionControl.Server.Endpoints.Missions.MissionLaunches;
|
||||||
|
|
||||||
namespace MissionControl.Server.Endpoints.Missions;
|
namespace MissionControl.Server.Endpoints.Missions;
|
||||||
|
|
||||||
@@ -14,6 +15,8 @@ public record MissionResponse
|
|||||||
|
|
||||||
public required DateTimeOffset CreatedAt { get; init; }
|
public required DateTimeOffset CreatedAt { get; init; }
|
||||||
|
|
||||||
|
public MissionLaunchResponse? MissionLaunch { get; set; }
|
||||||
|
|
||||||
public static MissionResponse FromDomain(Mission mission) =>
|
public static MissionResponse FromDomain(Mission mission) =>
|
||||||
new()
|
new()
|
||||||
{
|
{
|
||||||
@@ -22,5 +25,6 @@ public record MissionResponse
|
|||||||
Description = mission.Description,
|
Description = mission.Description,
|
||||||
Status = mission.Status,
|
Status = mission.Status,
|
||||||
CreatedAt = mission.CreatedAt,
|
CreatedAt = mission.CreatedAt,
|
||||||
|
MissionLaunch = mission.MissionLaunch != null ? MissionLaunchResponse.FromDomain(mission.MissionLaunch) : null,
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -14,8 +14,9 @@ public class ListMissions(MissionControlContext dbContext)
|
|||||||
|
|
||||||
public override async Task HandleAsync(CancellationToken ct)
|
public override async Task HandleAsync(CancellationToken ct)
|
||||||
{
|
{
|
||||||
var missions = await dbContext
|
var missions = await dbContext.Missions
|
||||||
.Missions.AsNoTracking()
|
.AsNoTracking()
|
||||||
|
.Include(m => m.MissionLaunch)
|
||||||
.OrderByDescending(m => m.CreatedAt)
|
.OrderByDescending(m => m.CreatedAt)
|
||||||
.ToListAsync(ct);
|
.ToListAsync(ct);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user