diff --git a/AsbCloudApp/Data/WellOperationDto.cs b/AsbCloudApp/Data/WellOperationDto.cs
index 35b7cae9..310b25d5 100644
--- a/AsbCloudApp/Data/WellOperationDto.cs
+++ b/AsbCloudApp/Data/WellOperationDto.cs
@@ -1,4 +1,5 @@
-using System;
+using AsbCloudApp.ValidationAttributes;
+using System;
using System.ComponentModel.DataAnnotations;
namespace AsbCloudApp.Data
@@ -87,6 +88,7 @@ namespace AsbCloudApp.Data
///
/// Дата начала операции
///
+ [DateValidation(GtDate = "2010-01-01T00:00:00")]
public DateTime DateStart { get; set; }
///
diff --git a/AsbCloudApp/Services/IWellOperationImportService.cs b/AsbCloudApp/Services/IWellOperationImportService.cs
index 5199d0a7..f8c5fac9 100644
--- a/AsbCloudApp/Services/IWellOperationImportService.cs
+++ b/AsbCloudApp/Services/IWellOperationImportService.cs
@@ -25,7 +25,8 @@ namespace AsbCloudApp.Services
///
///
///
+ ///
/// Очистить старые перед импортом (если файл проходит валидацию)
- void Import(int idWell, Stream stream, bool deleteWellOperationsBeforeImport = false);
+ void Import(int idWell, Stream stream, int idUser, bool deleteWellOperationsBeforeImport = false);
}
}
\ No newline at end of file
diff --git a/AsbCloudInfrastructure/Services/WellOperationService/WellOperationImportService.cs b/AsbCloudInfrastructure/Services/WellOperationService/WellOperationImportService.cs
index 2e727acd..152f329c 100644
--- a/AsbCloudInfrastructure/Services/WellOperationService/WellOperationImportService.cs
+++ b/AsbCloudInfrastructure/Services/WellOperationService/WellOperationImportService.cs
@@ -73,12 +73,15 @@ namespace AsbCloudInfrastructure.Services.WellOperationService
this.wellService = wellService;
}
- public void Import(int idWell, Stream stream, bool deleteWellOperationsBeforeImport = false)
+ public void Import(int idWell, Stream stream, int idUser, bool deleteWellOperationsBeforeImport = false)
{
using var workbook = new XLWorkbook(stream, XLEventTracking.Disabled);
var operations = ParseFileStream(stream);
foreach (var operation in operations)
+ {
operation.IdWell = idWell;
+ operation.IdUser = idUser;
+ }
SaveOperations(idWell, operations, deleteWellOperationsBeforeImport);
}
@@ -177,6 +180,7 @@ namespace AsbCloudInfrastructure.Services.WellOperationService
var entity = o.Adapt();
entity.IdWell = idWell;
entity.DateStart = o.DateStart.ToUtcDateTimeOffset(timezone.Hours);
+ entity.LastUpdateDate = DateTimeOffset.UtcNow;
return entity;
});
db.WellOperations.AddRange(entities);
diff --git a/AsbCloudWebApi/Controllers/WellOperationController.cs b/AsbCloudWebApi/Controllers/WellOperationController.cs
index 0a6183df..9d8f8a2a 100644
--- a/AsbCloudWebApi/Controllers/WellOperationController.cs
+++ b/AsbCloudWebApi/Controllers/WellOperationController.cs
@@ -308,7 +308,7 @@ namespace AsbCloudWebApi.Controllers
try
{
- wellOperationImportService.Import(idWell, stream, (options & 1) > 0);
+ wellOperationImportService.Import(idWell, stream, idUser.Value, (options & 1) > 0);
}
catch (FileFormatException ex)
{