using System.ComponentModel.DataAnnotations;
using RobotNet10.FleetManager.Shared.Enums;
namespace RobotNet10.FleetManager.Shared.DTOs.RobotModel;
///
/// Request to update an existing robot model
///
public class UpdateRobotModelRequest
{
[StringLength(256, ErrorMessage = "ModelName must not exceed 256 characters")]
public string? ModelName { get; set; }
[Range(0.01, 1000, ErrorMessage = "Length must be between 0.01 and 1000 meters")]
public double? Length { get; set; }
[Range(0.01, 1000, ErrorMessage = "Width must be between 0.01 and 1000 meters")]
public double? Width { get; set; }
[Range(1, 10000, ErrorMessage = "ImageWidth must be between 1 and 10000 pixels")]
public int? ImageWidth { get; set; }
[Range(1, 10000, ErrorMessage = "ImageHeight must be between 1 and 10000 pixels")]
public int? ImageHeight { get; set; }
public double? NavigationPointX { get; set; }
public double? NavigationPointY { get; set; }
public NavigationType? NavigationType { get; set; }
///
/// Foreign key to VehicleType (in MapManager database)
/// Optional - can be set or cleared
///
public Guid? VehicleTypeId { get; set; }
}