Conversation
danlla
left a comment
There was a problem hiding this comment.
- Нет структурированных логов, нужно настроит serilog, для отправки логов в
OpenTelemetry
| public int Id { get; set; } | ||
| public string FullName { get; set; } | ||
| public DateOnly Birthday { get; set; } | ||
| public string Address { get; set; } | ||
|
|
||
| public double Height { get; set; } | ||
| public double Weight { get; set; } | ||
|
|
||
| public int BloodType { get; set; } | ||
|
|
||
| public bool Resus { get; set; } | ||
|
|
||
| public DateOnly LastVisit { get; set; } | ||
|
|
||
| public bool Vactination { get; set; } |
There was a problem hiding this comment.
Нужно добавить summary
А также сделать свойства либо nullable, либо required, а то сейчас все свойства строки подсвечиваются с:
Non-nullable property '...' must contain a non-null value when exiting constructor. Consider adding the 'required' modifier or declaring the property as nullable.
| { | ||
| private readonly Faker<Patient> _faker = new Faker<Patient>("ru") | ||
| .RuleFor(x => x.FullName, GeneratePatientFullName) | ||
| .RuleFor(x => x.Birthday, f => f.Date.PastDateOnly()) |
There was a problem hiding this comment.
По дефолту первый параметр у этого метода равен 1, то есть день рождения будет браться за последний год
| .RuleFor(x => x.Weight, f => Round(f.Random.Double(5, 120), 2)) | ||
| .RuleFor(x => x.Height, f => Round(f.Random.Double(50, 200), 2)) |
There was a problem hiding this comment.
Что вероятно неправильно, потому что в 1 год быть 120кг 200см тяжело
Но и 5кг и 50см тоже кстати тяжело, если там 1 месяц например
Нужно либо еще ограничить минимальную дату рождения, либо сделать вес и рост зависимыми от возраста
|
|
||
| public Patient Generate(int id) | ||
| { | ||
| logger.LogInformation($"Generating Patient with ID: {id}"); |
There was a problem hiding this comment.
Во всех операциях логирования убрать интерполяцию строк, нужно вот так:
logger.LogInformation("Generating Patient with ID: {id}", id);| builder.Services.AddCors(options => | ||
| { | ||
| options.AddDefaultPolicy(policy => | ||
| { | ||
| policy.AllowAnyOrigin() | ||
| .AllowAnyMethod() | ||
| .AllowAnyHeader(); | ||
| }); | ||
| }); |
There was a problem hiding this comment.
Нужно настроить cors так, чтобы делать запрос мог только клиент
Для этого лучше задать явный список origins в appsettings.json
| var redis = builder.AddRedis("redis") | ||
| .WithRedisCommander(); | ||
|
|
||
| var generator = builder.AddProject<Projects.PatientApp_Generator>("generator") |
| builder.AddProject<Projects.Client_Wasm>("client") | ||
| .WithReference(generator); |
ФИО: Степанов Дмитрий
Номер группы: 6511
Номер лабораторной: 1
Номер варианта: 14
Краткое описание предметной области: Медицинский пациент
Краткое описание добавленных фич:
Реализованы сервис генерации сотрудников с кешированием, оркестрация Aspire и логирование основных событий