feat(api,espp, generator): Добавлены настройки для расписания рег работ. Добавлена сеть для всех контейнеров.
This commit is contained in:
@@ -74,7 +74,7 @@ namespace PARR.API.Controllers.V1
|
|||||||
if (task == null)
|
if (task == null)
|
||||||
{
|
{
|
||||||
//ищем задания в работе, которые можно перезапустить
|
//ищем задания в работе, которые можно перезапустить
|
||||||
//Поиск пои `RobotStatusCode` = 22.
|
//Поиск по `RobotStatusCode` = 22.
|
||||||
//Далее проверяется `LastStatusUpdated`, что время последнего смены статуса не превышает допустимого(берется из настроек, поле `RobotWaitTime`)
|
//Далее проверяется `LastStatusUpdated`, что время последнего смены статуса не превышает допустимого(берется из настроек, поле `RobotWaitTime`)
|
||||||
//и что текущая попытка не больше разрешенной(берется из настроек, поле `RobotAttemptsNumber`) - если это так, берется эта запись.
|
//и что текущая попытка не больше разрешенной(берется из настроек, поле `RobotAttemptsNumber`) - если это так, берется эта запись.
|
||||||
|
|
||||||
|
|||||||
@@ -39,7 +39,7 @@
|
|||||||
},
|
},
|
||||||
"MqSettings": {
|
"MqSettings": {
|
||||||
"GenerateTemplates": {
|
"GenerateTemplates": {
|
||||||
"HostName": "10.99.253.216",
|
"HostName": "parr_rabbit",
|
||||||
"QueueName": "parr-generate-templates",
|
"QueueName": "parr-generate-templates",
|
||||||
"User": "generate_templates_api",
|
"User": "generate_templates_api",
|
||||||
"Password": "DHhjgdsf*&%95"
|
"Password": "DHhjgdsf*&%95"
|
||||||
|
|||||||
@@ -129,7 +129,10 @@ namespace PARR.DAL.Context
|
|||||||
new { Name = nameof(SettingsFromDb.Category), Description = "Категория создаваемого объекта в ЕСПП", Value = "регламентная работа" },
|
new { Name = nameof(SettingsFromDb.Category), Description = "Категория создаваемого объекта в ЕСПП", Value = "регламентная работа" },
|
||||||
new { Name = nameof(SettingsFromDb.TemplatePrefixName), Description = "Префикс имени шаблона в ЕСПП", Value = "ПАРР-ДВС-ПТК" },
|
new { Name = nameof(SettingsFromDb.TemplatePrefixName), Description = "Префикс имени шаблона в ЕСПП", Value = "ПАРР-ДВС-ПТК" },
|
||||||
new { Name = nameof(SettingsFromDb.RobotAttemptsNumber), Description = "Количество попыток выполнения задания роботом", Value = "3" },
|
new { Name = nameof(SettingsFromDb.RobotAttemptsNumber), Description = "Количество попыток выполнения задания роботом", Value = "3" },
|
||||||
new { Name = nameof(SettingsFromDb.RobotWaitTime), Description = "Время ожидания выполнения роботом задания", Value = "00:15:00" }
|
new { Name = nameof(SettingsFromDb.RobotWaitTime), Description = "Время ожидания выполнения роботом задания", Value = "00:15:00" },
|
||||||
|
new { Name = nameof(SettingsFromDb.ScheduleTimezone), Description = "Расписание регламентной работы - В каком часовом поясе", Value = "MSK" },
|
||||||
|
new { Name = nameof(SettingsFromDb.ScheduleExclude), Description = "Расписание регламентной работы - Тип исключения", Value = "Нет исключений" },
|
||||||
|
new { Name = nameof(SettingsFromDb.ScheduleRepeatRange), Description = "Расписание регламентной работы - Диапазн повторов", Value = "Отсутствует дата завершения" }
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
@@ -37,5 +37,21 @@
|
|||||||
/// Время ожидания выполнения роботом задания
|
/// Время ожидания выполнения роботом задания
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public TimeSpan RobotWaitTime { get; set; }
|
public TimeSpan RobotWaitTime { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Расписание регламентной работы - В каком часовом поясе
|
||||||
|
/// </summary>
|
||||||
|
public string ScheduleTimezone { get; set; } = string.Empty;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Расписание регламентной работы - Тип исключения
|
||||||
|
/// </summary>
|
||||||
|
public string ScheduleExclude { get; set; } = string.Empty;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Расписание регламентной работы - Диапазн повторов
|
||||||
|
/// </summary>
|
||||||
|
public string ScheduleRepeatRange { get; set; } = string.Empty;
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
1943
PARR.DAL/Migrations/20231009015400_TblTemplateAndSettingsSchedule.Designer.cs
generated
Normal file
1943
PARR.DAL/Migrations/20231009015400_TblTemplateAndSettingsSchedule.Designer.cs
generated
Normal file
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,38 @@
|
|||||||
|
using Microsoft.EntityFrameworkCore.Migrations;
|
||||||
|
|
||||||
|
#nullable disable
|
||||||
|
|
||||||
|
namespace PARR.DAL.Migrations
|
||||||
|
{
|
||||||
|
/// <inheritdoc />
|
||||||
|
public partial class TblTemplateAndSettingsSchedule : Migration
|
||||||
|
{
|
||||||
|
/// <inheritdoc />
|
||||||
|
protected override void Up(MigrationBuilder migrationBuilder)
|
||||||
|
{
|
||||||
|
migrationBuilder.AddColumn<string>(
|
||||||
|
name: "ScheduleEsppId",
|
||||||
|
table: "Templates",
|
||||||
|
type: "text",
|
||||||
|
nullable: true);
|
||||||
|
|
||||||
|
migrationBuilder.InsertData(
|
||||||
|
table: "Settings",
|
||||||
|
columns: new[] { "Name", "Description", "Value" },
|
||||||
|
values: new object[] { "ScheduleTimezone", "Расписание регламентной работы - В каком часовом поясе", "MSK" });
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <inheritdoc />
|
||||||
|
protected override void Down(MigrationBuilder migrationBuilder)
|
||||||
|
{
|
||||||
|
migrationBuilder.DeleteData(
|
||||||
|
table: "Settings",
|
||||||
|
keyColumn: "Name",
|
||||||
|
keyValue: "ScheduleTimezone");
|
||||||
|
|
||||||
|
migrationBuilder.DropColumn(
|
||||||
|
name: "ScheduleEsppId",
|
||||||
|
table: "Templates");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
1955
PARR.DAL/Migrations/20231009054852_TblSettingsUpd.Designer.cs
generated
Normal file
1955
PARR.DAL/Migrations/20231009054852_TblSettingsUpd.Designer.cs
generated
Normal file
File diff suppressed because it is too large
Load Diff
39
PARR.DAL/Migrations/20231009054852_TblSettingsUpd.cs
Normal file
39
PARR.DAL/Migrations/20231009054852_TblSettingsUpd.cs
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
using Microsoft.EntityFrameworkCore.Migrations;
|
||||||
|
|
||||||
|
#nullable disable
|
||||||
|
|
||||||
|
#pragma warning disable CA1814 // Prefer jagged arrays over multidimensional
|
||||||
|
|
||||||
|
namespace PARR.DAL.Migrations
|
||||||
|
{
|
||||||
|
/// <inheritdoc />
|
||||||
|
public partial class TblSettingsUpd : Migration
|
||||||
|
{
|
||||||
|
/// <inheritdoc />
|
||||||
|
protected override void Up(MigrationBuilder migrationBuilder)
|
||||||
|
{
|
||||||
|
migrationBuilder.InsertData(
|
||||||
|
table: "Settings",
|
||||||
|
columns: new[] { "Name", "Description", "Value" },
|
||||||
|
values: new object[,]
|
||||||
|
{
|
||||||
|
{ "ScheduleExclude", "Расписание регламентной работы - Тип исключения", "Нет исключений" },
|
||||||
|
{ "ScheduleRepeatRange", "Расписание регламентной работы - Диапазн повторов", "Отсутствует дата завершения" }
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <inheritdoc />
|
||||||
|
protected override void Down(MigrationBuilder migrationBuilder)
|
||||||
|
{
|
||||||
|
migrationBuilder.DeleteData(
|
||||||
|
table: "Settings",
|
||||||
|
keyColumn: "Name",
|
||||||
|
keyValue: "ScheduleExclude");
|
||||||
|
|
||||||
|
migrationBuilder.DeleteData(
|
||||||
|
table: "Settings",
|
||||||
|
keyColumn: "Name",
|
||||||
|
keyValue: "ScheduleRepeatRange");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -999,6 +999,24 @@ namespace PARR.DAL.Migrations
|
|||||||
Name = "RobotWaitTime",
|
Name = "RobotWaitTime",
|
||||||
Description = "Время ожидания выполнения роботом задания",
|
Description = "Время ожидания выполнения роботом задания",
|
||||||
Value = "00:15:00"
|
Value = "00:15:00"
|
||||||
|
},
|
||||||
|
new
|
||||||
|
{
|
||||||
|
Name = "ScheduleTimezone",
|
||||||
|
Description = "Расписание регламентной работы - В каком часовом поясе",
|
||||||
|
Value = "MSK"
|
||||||
|
},
|
||||||
|
new
|
||||||
|
{
|
||||||
|
Name = "ScheduleExclude",
|
||||||
|
Description = "Расписание регламентной работы - Тип исключения",
|
||||||
|
Value = "Нет исключений"
|
||||||
|
},
|
||||||
|
new
|
||||||
|
{
|
||||||
|
Name = "ScheduleRepeatRange",
|
||||||
|
Description = "Расписание регламентной работы - Диапазн повторов",
|
||||||
|
Value = "Отсутствует дата завершения"
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -1100,6 +1118,9 @@ namespace PARR.DAL.Migrations
|
|||||||
.IsRequired()
|
.IsRequired()
|
||||||
.HasColumnType("text");
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.Property<string>("ScheduleEsppId")
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
b.HasKey("Id");
|
b.HasKey("Id");
|
||||||
|
|
||||||
b.HasIndex("ApplicationInWorkId");
|
b.HasIndex("ApplicationInWorkId");
|
||||||
|
|||||||
@@ -22,39 +22,10 @@ namespace PARR.DAL.Models
|
|||||||
|
|
||||||
public bool IsActiveSchedule { get; set; }
|
public bool IsActiveSchedule { get; set; }
|
||||||
|
|
||||||
#region удалить эти поля
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Статус шаблона. Что нужно сделать роботу в ЕСПП
|
/// Номер расписания еспп
|
||||||
/// </summary>
|
/// </summary>
|
||||||
//public int? StatusCode { get; set; }
|
public string? ScheduleEsppId { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Статус работы робота
|
|
||||||
/// </summary>
|
|
||||||
//public int? RobotStatusCode { get; set; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Количество попыток выполнения задания роботом
|
|
||||||
/// </summary>
|
|
||||||
//public int? RobotAttemptsNumber { get; set; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Последняя дата обновления статуса RobotStatusCode роботом
|
|
||||||
/// </summary>
|
|
||||||
//public DateTimeOffset? RobotLastStatusUpdated { get; set; }
|
|
||||||
|
|
||||||
|
|
||||||
//[ForeignKey(nameof(StatusCode))]
|
|
||||||
//public TaskStatus? StatusTask { get; set; }
|
|
||||||
|
|
||||||
//[ForeignKey(nameof(RobotStatusCode))]
|
|
||||||
//public RobotStatus? RobotStatus { get; set; }
|
|
||||||
|
|
||||||
//public ICollection<RobotTemplateHistory> RobotTemplateHistories { get; set; } = new HashSet<RobotTemplateHistory>();
|
|
||||||
|
|
||||||
#endregion
|
|
||||||
|
|
||||||
|
|
||||||
public Guid ApplicationInWorkId { get; set; }
|
public Guid ApplicationInWorkId { get; set; }
|
||||||
|
|
||||||
|
|||||||
@@ -22,5 +22,10 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
},
|
||||||
|
"GlobalSettings": {
|
||||||
|
"MqSettings": {
|
||||||
|
"HostName": "10.99.253.216"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -35,11 +35,10 @@
|
|||||||
},
|
},
|
||||||
"GlobalSettings": {
|
"GlobalSettings": {
|
||||||
"MqSettings": {
|
"MqSettings": {
|
||||||
"HostName": "10.99.253.216",
|
"HostName": "parr_rabbit",
|
||||||
"QueueName": "parr-espp-templates",
|
"QueueName": "parr-espp-templates",
|
||||||
"User": "espp_templates_reader",
|
"User": "espp_templates_reader",
|
||||||
"Password": "P@ssReaderPtk202!"
|
"Password": "P@ssReaderPtk202!"
|
||||||
|
|
||||||
},
|
},
|
||||||
"StorageSettings": {
|
"StorageSettings": {
|
||||||
"CheckIntervalSeconds": 30
|
"CheckIntervalSeconds": 30
|
||||||
|
|||||||
@@ -27,7 +27,7 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"MqSettings": {
|
"MqSettings": {
|
||||||
"HostName": "10.99.253.216",
|
"HostName": "parr_rabbit",
|
||||||
"QueueName": "parr-generate-templates",
|
"QueueName": "parr-generate-templates",
|
||||||
"User": "generate_templates_worker",
|
"User": "generate_templates_worker",
|
||||||
"Password": "Dhgdf%d&609sssa"
|
"Password": "Dhgdf%d&609sssa"
|
||||||
|
|||||||
@@ -20,6 +20,8 @@ services:
|
|||||||
tag: parr.espp-template-sync.serilog
|
tag: parr.espp-template-sync.serilog
|
||||||
deploy:
|
deploy:
|
||||||
replicas: 4
|
replicas: 4
|
||||||
|
network:
|
||||||
|
- parr-network
|
||||||
|
|
||||||
parr-rabbitmq:
|
parr-rabbitmq:
|
||||||
image: rabbitmq:3.12.4-management
|
image: rabbitmq:3.12.4-management
|
||||||
@@ -36,6 +38,8 @@ services:
|
|||||||
- 5672:5672
|
- 5672:5672
|
||||||
deploy:
|
deploy:
|
||||||
replicas: 1
|
replicas: 1
|
||||||
|
network:
|
||||||
|
- parr-network
|
||||||
|
|
||||||
volumes:
|
volumes:
|
||||||
#parr_storage_dev:
|
#parr_storage_dev:
|
||||||
@@ -52,6 +56,10 @@ volumes:
|
|||||||
o: "addr=dvgd-appfs-01.dvgd.oao.rzd,soft,rw,nfsvers=4"
|
o: "addr=dvgd-appfs-01.dvgd.oao.rzd,soft,rw,nfsvers=4"
|
||||||
device: ":/nfs/dvgd-swarm-01/parr_rabbit/data"
|
device: ":/nfs/dvgd-swarm-01/parr_rabbit/data"
|
||||||
|
|
||||||
|
|
||||||
|
networks:
|
||||||
|
parr-network:
|
||||||
|
|
||||||
# последняя версия
|
# последняя версия
|
||||||
#docker compose -f docker-compose.espp-template-sync.yml up -d
|
#docker compose -f docker-compose.espp-template-sync.yml up -d
|
||||||
# указанная версия
|
# указанная версия
|
||||||
|
|||||||
@@ -13,4 +13,9 @@ services:
|
|||||||
fluentd-address: dvgd-mng-02.dvgd.oao.rzd:24224
|
fluentd-address: dvgd-mng-02.dvgd.oao.rzd:24224
|
||||||
tag: parr.generator-templates.serilog
|
tag: parr.generator-templates.serilog
|
||||||
deploy:
|
deploy:
|
||||||
replicas: 1
|
replicas: 1
|
||||||
|
networks:
|
||||||
|
parr-network:
|
||||||
|
|
||||||
|
networks:
|
||||||
|
parr-network:
|
||||||
@@ -21,6 +21,11 @@ services:
|
|||||||
tag: parr.api.serilog
|
tag: parr.api.serilog
|
||||||
deploy:
|
deploy:
|
||||||
replicas: 2
|
replicas: 2
|
||||||
|
networks:
|
||||||
|
parr-network:
|
||||||
|
|
||||||
|
networks:
|
||||||
|
parr-network:
|
||||||
|
|
||||||
#volumes:
|
#volumes:
|
||||||
#parr_storage_dev:
|
#parr_storage_dev:
|
||||||
|
|||||||
Reference in New Issue
Block a user