forked from ddrilling/AsbCloudServer
1b3c06c927
1. Добавлен шаблон для сообщений 2. Поправлен naming у сервисов парсинга траекторий 3. Удалена регистрация зависимостей парсеров траекторий 4. Внутри фабрики добавлено создание отдельного scope. Фикс нейминга констант
40 lines
1.2 KiB
C#
40 lines
1.2 KiB
C#
using System;
|
|
using AsbCloudApp.Data;
|
|
using AsbCloudApp.Data.Trajectory;
|
|
using ClosedXML.Excel;
|
|
|
|
namespace AsbCloudInfrastructure.Services.Trajectory.Parser;
|
|
|
|
public class TrajectoryPlanParser : TrajectoryParser<TrajectoryGeoPlanDto>
|
|
{
|
|
protected override string SheetName => "Плановая траектория";
|
|
protected override string TemplateFileName => "TrajectoryPlanTemplate.xlsx";
|
|
|
|
public TrajectoryPlanParser(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;
|
|
}
|
|
} |