Изменен минимальный респонс /jobs/ip/ (согласовано с Пригода Д.В.)

This commit is contained in:
Mikhail Trubnikov
2023-07-26 10:09:25 +10:00
parent 3bb3266d10
commit 7e4466f938
6 changed files with 38 additions and 15 deletions

View File

@@ -6,7 +6,7 @@
public DateTimeOffset StartAt { get; set; }
public int FrequencyMinute { get; set; }
public required JobModeResponse JobMode { get; set; }
public required string ScriptName { get; set; }
public required string Script { get; set; }
}
public class JobGetAllResponse : JobBaseResponse
@@ -19,4 +19,11 @@
{
}
public class JobMinResponse
{
public DateTimeOffset StartAt { get; set; }
public required string Script { get; set; }
}
}

View File

@@ -133,14 +133,16 @@ namespace PARR.API.Controllers.V1
// возврат минимального ответа
try
{
return Ok(jobsToResponse.ToDictionary(t => t.ScriptName, d => d.StartAt));
}
catch (ArgumentException ex)
{
return BadRequest(new Response(false, new List<ErrorModel> { new ErrorModel { Message = $"Не могу создать json объект с одинаковым значением ключа (ScriptName). {ex.Message}" } }));
}
return Ok(mapper.Map<List<JobMinResponse>>(jobsToResponse));
//try
//{
// return Ok(jobsToResponse.ToDictionary(t => t.ScriptName, d => d.StartAt));
//}
//catch (ArgumentException ex)
//{
// return BadRequest(new Response(false, new List<ErrorModel> { new ErrorModel { Message = $"Не могу создать json объект с одинаковым значением ключа (ScriptName). {ex.Message}" } }));
//}
}

View File

@@ -11,9 +11,16 @@ namespace PARR.API.MappingProfiles
// --- Job ---
CreateMap<Job, JobBaseResponse>()
.Include<Job, JobGetAllResponse>()
.ForMember(d => d.FrequencyMinute, o => o.MapFrom(s => s.Frequency));
.ForMember(d => d.FrequencyMinute, o => o.MapFrom(s => s.Frequency))
.ForMember(d => d.Script, o => o.MapFrom(s => s.ScriptName));
CreateMap<Job, JobGetAllResponse>();
CreateMap<Job, JobMinResponse>()
.ForMember(d => d.Script, o => o.MapFrom(s => s.ScriptName));
// === Job ===
CreateMap<JobMode, JobModeResponse>();
}

View File

@@ -0,0 +1,6 @@
namespace PARR.API.MappingProfiles.Resolvers
{
public class _
{
}
}

View File

@@ -33,11 +33,6 @@
<PackageReference Include="Swashbuckle.AspNetCore" Version="6.5.0" />
</ItemGroup>
<ItemGroup>
<Folder Include="MappingProfiles\Resolvers\" />
<Folder Include="Validators\" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\PARR.DAL\PARR.DAL.csproj" />
</ItemGroup>

View File

@@ -0,0 +1,6 @@
namespace PARR.API.Validators
{
public class _
{
}
}