using System; using AsbCloudApp.Data; using AsbCloudApp.Data.Trajectory; using ClosedXML.Excel; namespace AsbCloudInfrastructure.Services.Trajectory.Parser; public class TrajectoryPlanParserService : TrajectoryParserService<TrajectoryGeoPlanDto> { protected override string SheetName => "Плановая траектория"; protected override string TemplateFileName => "TrajectoryPlanTemplate.xlsx"; public TrajectoryPlanParserService(IServiceProvider serviceProvider) : base(serviceProvider) { } protected override ValidationResultDto<TrajectoryGeoPlanDto> ParseRow(IXLRow row) { var trajectoryRow = new TrajectoryGeoPlanDto { WellboreDepth = row.Cell(1).GetCellValue<double>(), ZenithAngle = row.Cell(2).GetCellValue<double>(), AzimuthGeo = row.Cell(3).GetCellValue<double>(), AzimuthMagnetic = row.Cell(4).GetCellValue<double>(), VerticalDepth = row.Cell(5).GetCellValue<double>(), Radius = row.Cell(6).GetCellValue<double>(), Comment = row.Cell(7).GetCellValue<string?>() }; //TODO: Добавить валидацию модели var validationResult = new ValidationResultDto<TrajectoryGeoPlanDto> { Item = trajectoryRow }; return validationResult; } }