feat(api): Контроллер RobotTaskRobotStatusController управления статусами работы робота
This commit is contained in:
2037
PARR.DAL/Migrations/20231006001337_TblRobotHistoryRmIdSeries.Designer.cs
generated
Normal file
2037
PARR.DAL/Migrations/20231006001337_TblRobotHistoryRmIdSeries.Designer.cs
generated
Normal file
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,30 @@
|
||||
using System;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace PARR.DAL.Migrations
|
||||
{
|
||||
/// <inheritdoc />
|
||||
public partial class TblRobotHistoryRmIdSeries : Migration
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void Up(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.DropColumn(
|
||||
name: "IdSeries",
|
||||
table: "RobotHistories");
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
protected override void Down(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.AddColumn<Guid>(
|
||||
name: "IdSeries",
|
||||
table: "RobotHistories",
|
||||
type: "uuid",
|
||||
nullable: false,
|
||||
defaultValue: new Guid("00000000-0000-0000-0000-000000000000"));
|
||||
}
|
||||
}
|
||||
}
|
||||
2037
PARR.DAL/Migrations/20231006010333_TblRobotConfiguratinosUpd.Designer.cs
generated
Normal file
2037
PARR.DAL/Migrations/20231006010333_TblRobotConfiguratinosUpd.Designer.cs
generated
Normal file
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,28 @@
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace PARR.DAL.Migrations
|
||||
{
|
||||
/// <inheritdoc />
|
||||
public partial class TblRobotConfiguratinosUpd : Migration
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void Up(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.RenameColumn(
|
||||
name: "LastStatusUpdated",
|
||||
table: "RobotConfigurations",
|
||||
newName: "LastRobotStatusUpdated");
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
protected override void Down(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.RenameColumn(
|
||||
name: "LastRobotStatusUpdated",
|
||||
table: "RobotConfigurations",
|
||||
newName: "LastStatusUpdated");
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -788,7 +788,7 @@ namespace PARR.DAL.Migrations
|
||||
b.Property<DateTimeOffset>("DateCreated")
|
||||
.HasColumnType("timestamp with time zone");
|
||||
|
||||
b.Property<DateTimeOffset?>("LastStatusUpdated")
|
||||
b.Property<DateTimeOffset?>("LastRobotStatusUpdated")
|
||||
.HasColumnType("timestamp with time zone");
|
||||
|
||||
b.Property<int>("RobotCode")
|
||||
@@ -832,9 +832,6 @@ namespace PARR.DAL.Migrations
|
||||
b.Property<int>("HistoryLevel")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<Guid>("IdSeries")
|
||||
.HasColumnType("uuid");
|
||||
|
||||
b.Property<Guid>("RobotConfigurationId")
|
||||
.HasColumnType("uuid");
|
||||
|
||||
|
||||
@@ -42,7 +42,7 @@ namespace PARR.DAL.Models
|
||||
/// <summary>
|
||||
/// Последняя дата обновления статуса RobotStatusCode роботом
|
||||
/// </summary>
|
||||
public DateTimeOffset? LastStatusUpdated { get; set; }
|
||||
public DateTimeOffset? LastRobotStatusUpdated { get; set; }
|
||||
|
||||
[ForeignKey(nameof(TemplateId))]
|
||||
public Template? Template { get; set; }
|
||||
|
||||
@@ -26,10 +26,10 @@ namespace PARR.DAL.Models
|
||||
|
||||
public Guid RobotConfigurationId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Уникальный идентификатор серии выполнения, нужен для сопоставления истории
|
||||
/// </summary>
|
||||
public Guid IdSeries { get; set; }
|
||||
///// <summary>
|
||||
///// Уникальный идентификатор серии выполнения, нужен для сопоставления истории
|
||||
///// </summary>
|
||||
//public Guid IdSeries { get; set; }
|
||||
|
||||
|
||||
[ForeignKey(nameof(HistoryLevel))]
|
||||
|
||||
@@ -52,15 +52,15 @@ namespace PARR.DAL.Services.Implementations
|
||||
{
|
||||
case RobotStatusEnum.InProgress:
|
||||
configuration.AttemptsNumber++;
|
||||
configuration.LastStatusUpdated = DateTimeOffset.UtcNow;
|
||||
configuration.LastRobotStatusUpdated = DateTimeOffset.UtcNow;
|
||||
break;
|
||||
//case RobotStatusEnum.Error:
|
||||
// break;
|
||||
case RobotStatusEnum.Complete:
|
||||
configuration.LastStatusUpdated = DateTimeOffset.UtcNow;
|
||||
configuration.LastRobotStatusUpdated = DateTimeOffset.UtcNow;
|
||||
break;
|
||||
case RobotStatusEnum.Wait:
|
||||
configuration.LastStatusUpdated = null;
|
||||
configuration.LastRobotStatusUpdated = null;
|
||||
configuration.AttemptsNumber = 0;
|
||||
break;
|
||||
default:
|
||||
@@ -93,7 +93,7 @@ namespace PARR.DAL.Services.Implementations
|
||||
var configObjs = await EntitySet.Where(t =>
|
||||
t.RobotStatusCode == (int)RobotStatusEnum.InProgress
|
||||
&& t.AttemptsNumber >= robotAttemptsNumber
|
||||
&& t.LastStatusUpdated <= endDate
|
||||
&& t.LastRobotStatusUpdated <= endDate
|
||||
).ToListAsync();
|
||||
|
||||
if (!configObjs.Any())
|
||||
|
||||
@@ -117,7 +117,7 @@ namespace PARR.DAL.Services.Implementations
|
||||
TaskStatusCode = (int)TaskStatusEnum.Creating,
|
||||
RobotStatusCode = (int)RobotStatusEnum.Wait,
|
||||
AttemptsNumber = 0,
|
||||
LastStatusUpdated = null
|
||||
LastRobotStatusUpdated = null
|
||||
},
|
||||
// робот по управлениею расписанием
|
||||
new RobotConfiguration
|
||||
@@ -129,7 +129,7 @@ namespace PARR.DAL.Services.Implementations
|
||||
TaskStatusCode = (int)TaskStatusEnum.Creating,
|
||||
RobotStatusCode = (int)RobotStatusEnum.Wait,
|
||||
AttemptsNumber = 0,
|
||||
LastStatusUpdated = null
|
||||
LastRobotStatusUpdated = null
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -14,7 +14,7 @@ namespace PARR.DAL.Services.Interfaces
|
||||
void ChangeRobotStatus(RobotStatusEnum robotStatus, ref RobotConfiguration configuration);
|
||||
|
||||
/// <summary>
|
||||
/// Обновить статус задания (автоматически обновляется статус робота)
|
||||
/// Обновить статус задания (автоматически обновляется статус робота при необходимости)
|
||||
/// </summary>
|
||||
/// <param name="taskStatus"></param>
|
||||
/// <param name="configuration"></param>
|
||||
|
||||
Reference in New Issue
Block a user