feat(api): RobotTaskScheduleResponse

This commit is contained in:
Mikhail Trubnikov
2023-10-10 16:58:05 +10:00
parent e60e0ec9c7
commit a4dde4c59a
4 changed files with 42 additions and 15 deletions

View File

@@ -1,13 +1,26 @@
namespace PARR.API.Contracts.V1.Responses namespace PARR.API.Contracts.V1.Responses
{ {
public class RobotTaskScheduleResponse public class RobotTaskScheduleResponse : RobotTaskBaseResponse
{ {
/// <summary> /// <summary>
/// RobotConfigurationId /// ИД расписания из ЕСПП. При создании, его не будет
/// </summary> /// </summary>
public Guid TaskId { get; set; } public string? EsppId { get; set; }
public required string ScheduleName { get; set; }
//TODO: public bool IsActive { get; set; }
public required string ResponseArea { get; set; }
public required string TemplateName { get; set; }
public Guid TemplateId { get; set; }
public required string WorkGroup { get; set; }
public string? Description { get; set; }
// TODO:
} }
} }

View File

@@ -1,12 +1,7 @@
namespace PARR.API.Contracts.V1.Responses namespace PARR.API.Contracts.V1.Responses
{ {
public class RobotTaskTemplateResponse public class RobotTaskTemplateResponse : RobotTaskBaseResponse
{ {
/// <summary>
/// RobotConfigurationId
/// </summary>
public Guid TaskId { get; set; }
public bool IsActive { get; set; } public bool IsActive { get; set; }
public required string ClosingCode { get; set; } public required string ClosingCode { get; set; }
public required string FullDescription { get; set; } public required string FullDescription { get; set; }
@@ -35,4 +30,12 @@
} }
public class RobotTaskBaseResponse
{
/// <summary>
/// RobotConfigurationId
/// </summary>
public Guid TaskId { get; set; }
}
} }

View File

@@ -50,8 +50,6 @@ namespace PARR.API.Controllers.V1
case RobotsEnum.TemplateOrder: case RobotsEnum.TemplateOrder:
query = query.Include(t => t.Template) query = query.Include(t => t.Template)
.ThenInclude(t => t!.Host).ThenInclude(t => t!.ResponseArea) .ThenInclude(t => t!.Host).ThenInclude(t => t!.ResponseArea)
.Include(t => t.Template)
.ThenInclude(t => t!.Host)
.Include(t => t.Template) .Include(t => t.Template)
.ThenInclude(a => a!.ApplicationsInWork) .ThenInclude(a => a!.ApplicationsInWork)
.ThenInclude(w => w!.Work) .ThenInclude(w => w!.Work)
@@ -60,6 +58,8 @@ namespace PARR.API.Controllers.V1
.ThenInclude(p => p!.Process); .ThenInclude(p => p!.Process);
break; break;
case RobotsEnum.ScheduleOrder: case RobotsEnum.ScheduleOrder:
query = query.Include(t => t.Template)
.ThenInclude(t => t!.Host).ThenInclude(t => t!.ResponseArea);
//todo: include //todo: include
break; break;
default: default:

View File

@@ -70,6 +70,11 @@ namespace PARR.API.MappingProfiles
// --- RobotConfiguration --- // --- RobotConfiguration ---
CreateMap<RobotConfiguration, RobotTaskBaseResponse>()
.Include<RobotConfiguration, RobotTaskTemplateResponse>()
.Include<RobotConfiguration, RobotTaskScheduleResponse>()
.ForMember(d => d.TaskId, o => o.MapFrom(s => s.Id));
CreateMap<RobotConfiguration, RobotTaskTemplateResponse>() CreateMap<RobotConfiguration, RobotTaskTemplateResponse>()
.ForMember(d => d.IsActive, o => o.MapFrom(s => s.Template!.IsActiveTemplate)) .ForMember(d => d.IsActive, o => o.MapFrom(s => s.Template!.IsActiveTemplate))
.ForMember(d => d.ClosingCode, o => o.MapFrom<RobotTaskTemplateClosingCodeResolver>()) .ForMember(d => d.ClosingCode, o => o.MapFrom<RobotTaskTemplateClosingCodeResolver>())
@@ -90,12 +95,18 @@ namespace PARR.API.MappingProfiles
.ForMember(d => d.TnkName, o => o.MapFrom(s => s.Template!.ApplicationsInWork!.Work!.Tnk!.Name)) .ForMember(d => d.TnkName, o => o.MapFrom(s => s.Template!.ApplicationsInWork!.Work!.Tnk!.Name))
.ForMember(d => d.TnkEsppId, o => o.MapFrom(s => s.Template!.ApplicationsInWork!.Work!.Tnk!.EsppId)) .ForMember(d => d.TnkEsppId, o => o.MapFrom(s => s.Template!.ApplicationsInWork!.Work!.Tnk!.EsppId))
.ForMember(d => d.WorkName, o => o.MapFrom(s => s.Template!.ApplicationsInWork!.Work!.Name)) .ForMember(d => d.WorkName, o => o.MapFrom(s => s.Template!.ApplicationsInWork!.Work!.Name))
.ForMember(d => d.WorkEsppId, o => o.MapFrom(s => s.Template!.ApplicationsInWork!.Work!.EsppId)) .ForMember(d => d.WorkEsppId, o => o.MapFrom(s => s.Template!.ApplicationsInWork!.Work!.EsppId));
.ForMember(d => d.TaskId, o => o.MapFrom(s => s.Id));
//TODO: сделать маппинг!!! //TODO: сделать маппинг!!!
CreateMap<RobotConfiguration, RobotTaskScheduleResponse>() CreateMap<RobotConfiguration, RobotTaskScheduleResponse>()
.ForMember(d => d.TaskId, o => o.MapFrom(s => s.Id)); .ForMember(d => d.EsppId, o => o.MapFrom(s => s.Template!.ScheduleEsppId))
.ForMember(d => d.ScheduleName, o => o.MapFrom(s => s.Template!.Name))
.ForMember(d => d.IsActive, o => o.MapFrom(s => s.Template!.IsActiveSchedule))
.ForMember(d => d.ResponseArea, o => o.MapFrom(s => s.Template!.Host!.ResponseArea!.Name))
.ForMember(d => d.TemplateName, o => o.MapFrom(s => s.Template!.Name))
.ForMember(d => d.TemplateId, o => o.MapFrom(s => s.Template!.Id))
.ForMember(d => d.WorkGroup, o => o.MapFrom(s => s.Template!.Host!.WorkGroup))
;
// === RobotConfiguration === // === RobotConfiguration ===
CreateMap<Robot, RobotResponse>(); CreateMap<Robot, RobotResponse>();