diff --git a/AsbCloudApp/Data/AuthDto.cs b/AsbCloudApp/Data/AuthDto.cs
index 6b3d42ad..c6a95e23 100644
--- a/AsbCloudApp/Data/AuthDto.cs
+++ b/AsbCloudApp/Data/AuthDto.cs
@@ -1,18 +1,24 @@
-namespace AsbCloudApp.Data
+using System.ComponentModel.DataAnnotations;
+
+namespace AsbCloudApp.Data
{
///
/// DTO для авторизации
///
public class AuthDto
- {
+ {
///
/// Имя пользователя для входа
///
+ [Required]
+ [StringLength(50, MinimumLength = 1)]
public string Login { get; set; } = null!;
///
/// Пароль пользователя для входа
///
+ [Required]
+ [StringLength(50, MinimumLength = 1)]
public string Password { get; set; } = null!;
}
}
diff --git a/AsbCloudApp/Data/CompanyDto.cs b/AsbCloudApp/Data/CompanyDto.cs
index 0349013c..6f4012c4 100644
--- a/AsbCloudApp/Data/CompanyDto.cs
+++ b/AsbCloudApp/Data/CompanyDto.cs
@@ -14,16 +14,18 @@ namespace AsbCloudApp.Data
/// Название
///
[Required]
+ [StringLength(50, MinimumLength = 1)]
public string Caption { get; set; } = null!;
///
/// ИД типа компании
- ///
+ ///
public int IdCompanyType { get; set; }
///
/// Название типа компании
///
+ [StringLength(30, MinimumLength = 1)]
public string CompanyTypeCaption { get; set; } = null!;
}
}
diff --git a/AsbCloudApp/Data/MeasureDto.cs b/AsbCloudApp/Data/MeasureDto.cs
index b19abdcc..bdfafbbf 100644
--- a/AsbCloudApp/Data/MeasureDto.cs
+++ b/AsbCloudApp/Data/MeasureDto.cs
@@ -1,5 +1,6 @@
using System;
using System.Collections.Generic;
+using System.ComponentModel.DataAnnotations;
namespace AsbCloudApp.Data
{
@@ -12,16 +13,19 @@ namespace AsbCloudApp.Data
public int Id { get; set; }
///
+ [Range(1, int.MaxValue)]
public int IdWell { get; set; }
///
/// Id категории замера
///
+ [Range(1, int.MaxValue)]
public int IdCategory { get; set; }
///
/// название категории замера
///
+ [StringLength(120, MinimumLength = 1)]
public string CategoryName { get; set; } = string.Empty;
///
diff --git a/AsbCloudApp/Data/MessageDto.cs b/AsbCloudApp/Data/MessageDto.cs
index b8d930c5..c7819ddd 100644
--- a/AsbCloudApp/Data/MessageDto.cs
+++ b/AsbCloudApp/Data/MessageDto.cs
@@ -1,4 +1,5 @@
using System;
+using System.ComponentModel.DataAnnotations;
namespace AsbCloudApp.Data
{
@@ -18,6 +19,7 @@ namespace AsbCloudApp.Data
///
/// категория события
///
+ [Range(1, int.MaxValue)]
public int CategoryId { get; set; }
///
@@ -33,6 +35,7 @@ namespace AsbCloudApp.Data
///
/// текст сообщения
///
+ [StringLength(400, MinimumLength = 1)]
public string Message { get; set; } = string.Empty;
}
}
diff --git a/AsbCloudApp/Data/SAUB/EventDto.cs b/AsbCloudApp/Data/SAUB/EventDto.cs
index 94b16aa7..ce02c061 100644
--- a/AsbCloudApp/Data/SAUB/EventDto.cs
+++ b/AsbCloudApp/Data/SAUB/EventDto.cs
@@ -1,4 +1,6 @@
-namespace AsbCloudApp.Data.SAUB
+using System.ComponentModel.DataAnnotations;
+
+namespace AsbCloudApp.Data.SAUB
{
///
/// Описание шаблона события панели оператора
@@ -8,6 +10,7 @@
///
/// id события
///
+
public int Id { get; set; }
///
@@ -18,6 +21,7 @@
///
/// id категории события
///
+ [Range(1, int.MaxValue)]
public int IdCategory { get; set; }
///
@@ -28,6 +32,7 @@
///
/// тип определения наступления события
///
+ [Range(1, int.MaxValue)]
public int EventType { get; set; }
///
diff --git a/AsbCloudApp/Data/UserRoleDto.cs b/AsbCloudApp/Data/UserRoleDto.cs
index 069db593..9140b577 100644
--- a/AsbCloudApp/Data/UserRoleDto.cs
+++ b/AsbCloudApp/Data/UserRoleDto.cs
@@ -16,6 +16,7 @@ namespace AsbCloudApp.Data
/// название
///
[Required]
+ [StringLength(50, MinimumLength = 1)]
public string Caption { get; set; } = null!;
///
diff --git a/AsbCloudApp/Data/WellDto.cs b/AsbCloudApp/Data/WellDto.cs
index ec1d4540..4670bd83 100644
--- a/AsbCloudApp/Data/WellDto.cs
+++ b/AsbCloudApp/Data/WellDto.cs
@@ -10,10 +10,12 @@ namespace AsbCloudApp.Data
///
public class WellDto : WellInfoDto, IMapPoint, IId
{
- ///
+ ///
+ [Range(-90, 90)]
public double? Latitude { get; set; }
///
+ [Range(-180, 180)]
public double? Longitude { get; set; }
///
diff --git a/AsbCloudApp/Data/WellOperationDto.cs b/AsbCloudApp/Data/WellOperationDto.cs
index 5e7a917f..c2de3b64 100644
--- a/AsbCloudApp/Data/WellOperationDto.cs
+++ b/AsbCloudApp/Data/WellOperationDto.cs
@@ -7,12 +7,13 @@ namespace AsbCloudApp.Data
/// Операции на скважине (заведенные пользователем)
///
public class WellOperationDto : IId, IWellRelated
- {
+ {
///
public int Id { get; set; }
///
[Required]
+ [Range(1, int.MaxValue)]
public int IdWell { get; set; }
///
@@ -90,7 +91,7 @@ namespace AsbCloudApp.Data
///
/// Полезный комментарий
///
- [StringLength(8192)]
+ [StringLength(4096)]
public string? Comment { get; set; }
}
}
diff --git a/AsbCloudInfrastructure/Validators/AuthDtoValidator.cs b/AsbCloudInfrastructure/Validators/AuthDtoValidator.cs
deleted file mode 100644
index febbc992..00000000
--- a/AsbCloudInfrastructure/Validators/AuthDtoValidator.cs
+++ /dev/null
@@ -1,18 +0,0 @@
-using AsbCloudApp.Data;
-using FluentValidation;
-
-namespace AsbCloudInfrastructure.Validators
-{
- public class AuthDtoValidator : AbstractValidator
- {
- public AuthDtoValidator()
- {
- RuleFor(x => x.Login).NotNull().WithMessage("Логин не должен быть пустым");
- RuleFor(x => x.Login).NotEmpty().WithMessage("Логин не должен быть пустым");
- RuleFor(x => x.Login).Length(0, 50).WithMessage("Допустимая длина логина от 1 до 50 символов");
- RuleFor(x => x.Password).NotNull().WithMessage("Пароль не должен быть пустым");
- RuleFor(x => x.Password).NotEmpty().WithMessage("Пароль не должен быть пустым");
- RuleFor(x => x.Password).Length(0, 50).WithMessage("Допустимая длина пароля от 1 до 50 символов");
- }
- }
-}
\ No newline at end of file
diff --git a/AsbCloudInfrastructure/Validators/EventDtoValidator.cs b/AsbCloudInfrastructure/Validators/EventDtoValidator.cs
deleted file mode 100644
index 7c532d76..00000000
--- a/AsbCloudInfrastructure/Validators/EventDtoValidator.cs
+++ /dev/null
@@ -1,16 +0,0 @@
-using AsbCloudApp.Data.SAUB;
-using FluentValidation;
-
-namespace AsbCloudInfrastructure.Validators
-{
- public class EventDtoValidator : AbstractValidator
- {
- public EventDtoValidator()
- {
- RuleFor(x => x.IdCategory).GreaterThan(0)
- .WithMessage("Id категории события не может быть отрицательным");
- RuleFor(x => x.EventType).GreaterThan(0)
- .WithMessage("Id типа события не может быть отрицательным");
- }
- }
-}
\ No newline at end of file
diff --git a/AsbCloudInfrastructure/Validators/MeasureDtoValidator.cs b/AsbCloudInfrastructure/Validators/MeasureDtoValidator.cs
deleted file mode 100644
index 3998d515..00000000
--- a/AsbCloudInfrastructure/Validators/MeasureDtoValidator.cs
+++ /dev/null
@@ -1,18 +0,0 @@
-using AsbCloudApp.Data;
-using FluentValidation;
-
-namespace AsbCloudInfrastructure.Validators
-{
- public class MeasureDtoValidator : AbstractValidator
- {
- public MeasureDtoValidator()
- {
- RuleFor(x => x.IdWell).GreaterThan(0)
- .WithMessage("Id скважины не может быть меньше 1");
- RuleFor(x => x.IdCategory).GreaterThan(0)
- .WithMessage("Id категории не может быть меньше 1");
- RuleFor(x => x.CategoryName).MaximumLength(120)
- .WithMessage("Название категории не может быть больше 120 символов");
- }
- }
-}
\ No newline at end of file
diff --git a/AsbCloudInfrastructure/Validators/MessageDtoValidator.cs b/AsbCloudInfrastructure/Validators/MessageDtoValidator.cs
index dff52f4a..31c84b34 100644
--- a/AsbCloudInfrastructure/Validators/MessageDtoValidator.cs
+++ b/AsbCloudInfrastructure/Validators/MessageDtoValidator.cs
@@ -5,14 +5,17 @@ namespace AsbCloudInfrastructure.Validators
{
public class MessageDtoValidator : AbstractValidator
{
+
+ //TODO: в модели дто сообщения отсутствует поле Id скважины
+ // скорее всего опечатка т.к. используется глубина в правиле валидатора
+ //в других валидаторах парамтр глубины идет рэнжированный от...до
+
public MessageDtoValidator()
{
- RuleFor(x => x.CategoryId).GreaterThan(0)
- .WithMessage("Id категории не может быть ниже 1");
+
RuleFor(x => x.WellDepth).GreaterThan(-1)
.WithMessage("Id скважины не может быть ниже 1");
- RuleFor(x => x.Message).Length(1, 400)
- .WithMessage("Допустимая длина текста сообщения от 1 до 400 символов");
+
}
}
}
\ No newline at end of file
diff --git a/AsbCloudInfrastructure/Validators/UserRegistrationDtoValidator.cs b/AsbCloudInfrastructure/Validators/UserRegistrationDtoValidator.cs
index e80e59c7..6e1ea0f7 100644
--- a/AsbCloudInfrastructure/Validators/UserRegistrationDtoValidator.cs
+++ b/AsbCloudInfrastructure/Validators/UserRegistrationDtoValidator.cs
@@ -7,18 +7,18 @@ namespace AsbCloudInfrastructure.Validators
{
public UserRegistrationDtoValidator()
{
- RuleFor(x => x.Login).NotNull().WithMessage("Логин не должен быть пустым");
- RuleFor(x => x.Login).NotEmpty().WithMessage("Логин не должен быть пустым");
- RuleFor(x => x.Login).Length(0, 50).WithMessage("Допустимая длина логина от 1 до 50 символов");
- RuleFor(x => x.Password).NotNull().WithMessage("Пароль не должен быть пустым");
- RuleFor(x => x.Password).NotEmpty().WithMessage("Пароль не должен быть пустым");
- RuleFor(x => x.Password).Length(0, 50).WithMessage("Допустимая длина Пароль от 1 до 50 символов");
- RuleFor(x => x.Name).Length(0, 50).WithMessage("Допустимая длина имени от 1 до 50 символов");
- RuleFor(x => x.Surname).Length(0, 50).WithMessage("Допустимая длина фамилии от 1 до 50 символов");
- RuleFor(x => x.Patronymic).Length(0, 50).WithMessage("Допустимая длина отчества от 1 до 50 символов");
- RuleFor(x => x.Email).Length(0, 260).WithMessage("Допустимая длина email от 1 до 260 символов");
- RuleFor(x => x.Phone).Length(0, 50).WithMessage("Допустимая длина телефона от 1 до 50 символов");
- RuleFor(x => x.Position).Length(0, 100).WithMessage("Допустимая длина должности от 1 до 100 символов");
+ //RuleFor(x => x.Login).NotNull().WithMessage("Логин не должен быть пустым");
+ //RuleFor(x => x.Login).NotEmpty().WithMessage("Логин не должен быть пустым");
+ //RuleFor(x => x.Login).Length(0, 50).WithMessage("Допустимая длина логина от 1 до 50 символов");
+ //RuleFor(x => x.Password).NotNull().WithMessage("Пароль не должен быть пустым");
+ //RuleFor(x => x.Password).NotEmpty().WithMessage("Пароль не должен быть пустым");
+ //RuleFor(x => x.Password).Length(0, 50).WithMessage("Допустимая длина Пароль от 1 до 50 символов");
+ //RuleFor(x => x.Name).Length(0, 50).WithMessage("Допустимая длина имени от 1 до 50 символов");
+ //RuleFor(x => x.Surname).Length(0, 50).WithMessage("Допустимая длина фамилии от 1 до 50 символов");
+ //RuleFor(x => x.Patronymic).Length(0, 50).WithMessage("Допустимая длина отчества от 1 до 50 символов");
+ //RuleFor(x => x.Email).Length(0, 260).WithMessage("Допустимая длина email от 1 до 260 символов");
+ //RuleFor(x => x.Phone).Length(0, 50).WithMessage("Допустимая длина телефона от 1 до 50 символов");
+ //RuleFor(x => x.Position).Length(0, 100).WithMessage("Допустимая длина должности от 1 до 100 символов");
}
}
}
\ No newline at end of file
diff --git a/AsbCloudInfrastructure/Validators/UserRoleDtoValidator.cs b/AsbCloudInfrastructure/Validators/UserRoleDtoValidator.cs
deleted file mode 100644
index 3f5032f1..00000000
--- a/AsbCloudInfrastructure/Validators/UserRoleDtoValidator.cs
+++ /dev/null
@@ -1,14 +0,0 @@
-using AsbCloudApp.Data;
-using FluentValidation;
-
-namespace AsbCloudInfrastructure.Validators
-{
- public class UserRoleDtoValidator : AbstractValidator
- {
- public UserRoleDtoValidator()
- {
- RuleFor(x => x.Caption).Length(0, 50)
- .WithMessage("Допустимая длина названия роли от 1 до 50 символов");
- }
- }
-}
\ No newline at end of file
diff --git a/AsbCloudInfrastructure/Validators/WellDtoValidator.cs b/AsbCloudInfrastructure/Validators/WellDtoValidator.cs
deleted file mode 100644
index bc10ee05..00000000
--- a/AsbCloudInfrastructure/Validators/WellDtoValidator.cs
+++ /dev/null
@@ -1,16 +0,0 @@
-using AsbCloudApp.Data;
-using FluentValidation;
-
-namespace AsbCloudInfrastructure.Validators
-{
- public class WellDtoValidator : AbstractValidator
- {
- public WellDtoValidator()
- {
- RuleFor(x => x.Latitude).Must(l => l is null or <= 90 and >= -90)
- .WithMessage("Допустимые значения широты от -90 до 90");
- RuleFor(x => x.Longitude).Must(l => l is null or <= 180 and >= -180)
- .WithMessage("Допустимые значения долготы от -180 до 180");
- }
- }
-}
\ No newline at end of file
diff --git a/AsbCloudInfrastructure/Validators/WellOperationDtoValidator.cs b/AsbCloudInfrastructure/Validators/WellOperationDtoValidator.cs
deleted file mode 100644
index 12253c9e..00000000
--- a/AsbCloudInfrastructure/Validators/WellOperationDtoValidator.cs
+++ /dev/null
@@ -1,16 +0,0 @@
-using AsbCloudApp.Data;
-using FluentValidation;
-
-namespace AsbCloudInfrastructure.Validators
-{
- public class WellOperationDtoValidator : AbstractValidator
- {
- public WellOperationDtoValidator()
- {
- RuleFor(x => x.IdWell).GreaterThan(0)
- .WithMessage("Id скважины не может быть меньше 1");
- RuleFor(x => x.Comment).MaximumLength(4096)
- .WithMessage("Комментарий не может быть длиннее 4096 символов");
- }
- }
-}
\ No newline at end of file