125 lines
7.1 KiB
C#
125 lines
7.1 KiB
C#
using AutoMapper;
|
|
using PARR.API.Contracts.V1.Responses;
|
|
using PARR.API.MappingProfiles.Resolvers;
|
|
using PARR.DAL.Models;
|
|
using PARR.DAL.Models.V1;
|
|
|
|
namespace PARR.API.MappingProfiles
|
|
{
|
|
public class DomainToResponseProfile : Profile
|
|
{
|
|
public DomainToResponseProfile()
|
|
{
|
|
// --- Job ---
|
|
CreateMap<V1_Job, JobBaseResponse>()
|
|
.Include<V1_Job, JobGetAllResponse>()
|
|
.ForMember(d => d.FrequencyMinute, o => o.MapFrom(s => s.Frequency))
|
|
.ForMember(d => d.Script, o => o.MapFrom(s => s.ScriptName));
|
|
|
|
CreateMap<V1_Job, JobGetAllResponse>();
|
|
|
|
CreateMap<List<V1_Job>, JobMinResponse>()
|
|
.ForMember(d => d.Scheduled, o => o.MapFrom(s => s));
|
|
|
|
CreateMap<V1_Job, JobMinScheduleResponse>()
|
|
.ForMember(d => d.Script, o => o.MapFrom(s => s.ScriptName));
|
|
// === Job ===
|
|
|
|
CreateMap<V1_JobMode, JobModeResponse>();
|
|
|
|
// --- Template ---
|
|
CreateMap<Template, TemplateResponse>()
|
|
.ForMember(d => d.Work, o => o.MapFrom(s => s.ApplicationsInWork!.Work))
|
|
.ForMember(d => d.Host, o => o.MapFrom(s => s.Host))
|
|
.ForMember(d => d.Process, o => o.MapFrom(s => s.ApplicationsInWork!.Work!.Tnk!.Subprocess!.Process))
|
|
.ForMember(d => d.Subprocess, o => o.MapFrom(s => s.ApplicationsInWork!.Work!.Tnk!.Subprocess))
|
|
.ForMember(d => d.Tnk, o => o.MapFrom(s => s.ApplicationsInWork!.Work!.Tnk))
|
|
.ForMember(d => d.ShortDescription, o => o.MapFrom(s => s.ApplicationsInWork!.ShortDescription))
|
|
.ForMember(d => d.FullDescription, o => o.MapFrom(s => s.ApplicationsInWork!.FullDescription))
|
|
.ForMember(d => d.Solution, o => o.MapFrom(s => s.ApplicationsInWork!.Solution))
|
|
.ForMember(d => d.TemplateDuration, o => o.MapFrom(s => s.ApplicationsInWork!.TemplateDuration))
|
|
.ForMember(d => d.Initiator, o => o.MapFrom<TemplateInitiatorResolver>())
|
|
.ForMember(d => d.ClosingCode, o => o.MapFrom<TemplateClosingCodeResolver>())
|
|
.ForMember(d => d.Category, o => o.MapFrom<TemplateCategoryResolver>())
|
|
.ForMember(d => d.SyncStatus, o => o.MapFrom(s => s.RobotConfigurations));
|
|
// === Template ===
|
|
|
|
CreateMap<DAL.Models.TaskStatus, TaskStatusResponse>();
|
|
|
|
|
|
CreateMap<Process, ProcessResponse>();
|
|
CreateMap<Subprocess, SubprocessResponse>();
|
|
CreateMap<Tnk, TnkResponse>();
|
|
CreateMap<Work, WorkResponse>();
|
|
|
|
|
|
CreateMap<Application, ApplicationResponse>();
|
|
|
|
CreateMap<DAL.Models.Host, HostResponse>()
|
|
.ForMember(d => d.Status, o => o.MapFrom(s => s.EkStatus!.Name))
|
|
.ForMember(d => d.ResponseArea, o => o.MapFrom(s => s.ResponseArea!.Name));
|
|
|
|
CreateMap<RobotStatus, RobotStatusResponse>();
|
|
|
|
CreateMap<RobotHistoryLevel, RobotHistoryLevelResponse>();
|
|
|
|
CreateMap<RobotHistory, RobotHistoryResponse>()
|
|
.ForMember(d => d.Level, o => o.MapFrom(s => s.RobotHistoryLevel))
|
|
.ForMember(d => d.Date, o => o.MapFrom(s => s.DateCreated))
|
|
.ForMember(d => d.TaskId, o => o.MapFrom(s => s.RobotConfigurationId));
|
|
|
|
|
|
// --- RobotConfiguration ---
|
|
CreateMap<RobotConfiguration, RobotTaskBaseResponse>()
|
|
.Include<RobotConfiguration, RobotTaskTemplateResponse>()
|
|
.Include<RobotConfiguration, RobotTaskScheduleResponse>()
|
|
.ForMember(d => d.TaskId, o => o.MapFrom(s => s.Id));
|
|
|
|
CreateMap<RobotConfiguration, RobotTaskTemplateResponse>()
|
|
.ForMember(d => d.IsActive, o => o.MapFrom(s => s.Template!.IsActiveTemplate))
|
|
.ForMember(d => d.ClosingCode, o => o.MapFrom<RobotTaskTemplateClosingCodeResolver>())
|
|
.ForMember(d => d.FullDescription, o => o.MapFrom(s => s.Template!.ApplicationsInWork!.FullDescription))
|
|
.ForMember(d => d.ShortDescription, o => o.MapFrom(s => s.Template!.ApplicationsInWork!.ShortDescription))
|
|
.ForMember(d => d.Solution, o => o.MapFrom(s => s.Template!.ApplicationsInWork!.Solution))
|
|
.ForMember(d => d.ResponseArea, o => o.MapFrom(s => s.Template!.Host!.ResponseArea!.Name))
|
|
.ForMember(d => d.TemplateDuration, o => o.MapFrom(s => s.Template!.ApplicationsInWork!.TemplateDuration))
|
|
.ForMember(d => d.Initiator, o => o.MapFrom<RobotTaskTemplateInitiatorResolver>())
|
|
.ForMember(d => d.Category, o => o.MapFrom<RobotTaskTemplateCategoryResolver>())
|
|
.ForMember(d => d.WorkGroup, o => o.MapFrom(s => s.Template!.Host!.WorkGroup))
|
|
.ForMember(d => d.Ek, o => o.MapFrom(s => s.Template!.Host!.Ek))
|
|
.ForMember(d => d.Name, o => o.MapFrom(s => s.Template!.Name))
|
|
.ForMember(d => d.ProcessName, o => o.MapFrom(s => s.Template!.ApplicationsInWork!.Work!.Tnk!.Subprocess!.Process!.Name))
|
|
.ForMember(d => d.ProcessEsppId, o => o.MapFrom(s => s.Template!.ApplicationsInWork!.Work!.Tnk!.Subprocess!.Process!.EsppId))
|
|
.ForMember(d => d.SubprocessName, o => o.MapFrom(s => s.Template!.ApplicationsInWork!.Work!.Tnk!.Subprocess!.Name))
|
|
.ForMember(d => d.SubprocessEsppId, o => o.MapFrom(s => s.Template!.ApplicationsInWork!.Work!.Tnk!.Subprocess!.EsppId))
|
|
.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.WorkName, o => o.MapFrom(s => s.Template!.ApplicationsInWork!.Work!.Name))
|
|
.ForMember(d => d.WorkEsppId, o => o.MapFrom(s => s.Template!.ApplicationsInWork!.Work!.EsppId));
|
|
|
|
//TODO: сделать маппинг!!!
|
|
CreateMap<RobotConfiguration, RobotTaskScheduleResponse>()
|
|
.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 ===
|
|
|
|
CreateMap<Robot, RobotResponse>();
|
|
|
|
CreateMap<DAL.Models.TaskStatus, TaskStatusResponse>();
|
|
|
|
CreateMap<RobotConfiguration, RobotConfigurationResponse>()
|
|
.ForMember(d => d.Robot, o => o.MapFrom(s => s.Robot))
|
|
.ForMember(d => d.TaskStatus, o => o.MapFrom(s => s.TaskStatus))
|
|
.ForMember(d => d.RobotStatus, o => o.MapFrom(s => s.RobotStatus));
|
|
|
|
|
|
}
|
|
}
|
|
}
|