Изменен минимальный респонс /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 DateTimeOffset StartAt { get; set; }
public int FrequencyMinute { get; set; } public int FrequencyMinute { get; set; }
public required JobModeResponse JobMode { get; set; } public required JobModeResponse JobMode { get; set; }
public required string ScriptName { get; set; } public required string Script { get; set; }
} }
public class JobGetAllResponse : JobBaseResponse 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(mapper.Map<List<JobMinResponse>>(jobsToResponse));
{
return Ok(jobsToResponse.ToDictionary(t => t.ScriptName, d => d.StartAt)); //try
} //{
catch (ArgumentException ex) // return Ok(jobsToResponse.ToDictionary(t => t.ScriptName, d => d.StartAt));
{ //}
return BadRequest(new Response(false, new List<ErrorModel> { new ErrorModel { Message = $"Не могу создать json объект с одинаковым значением ключа (ScriptName). {ex.Message}" } })); //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 --- // --- Job ---
CreateMap<Job, JobBaseResponse>() CreateMap<Job, JobBaseResponse>()
.Include<Job, JobGetAllResponse>() .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, JobGetAllResponse>();
CreateMap<Job, JobMinResponse>()
.ForMember(d => d.Script, o => o.MapFrom(s => s.ScriptName));
// === Job ===
CreateMap<JobMode, JobModeResponse>(); 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" /> <PackageReference Include="Swashbuckle.AspNetCore" Version="6.5.0" />
</ItemGroup> </ItemGroup>
<ItemGroup>
<Folder Include="MappingProfiles\Resolvers\" />
<Folder Include="Validators\" />
</ItemGroup>
<ItemGroup> <ItemGroup>
<ProjectReference Include="..\PARR.DAL\PARR.DAL.csproj" /> <ProjectReference Include="..\PARR.DAL\PARR.DAL.csproj" />
</ItemGroup> </ItemGroup>

View File

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