Files
monorepo/LCU.API.Internal.FileOperations/LCU.Library.Internal.FileOperationsModels/Models/RenameDirectoryRequest.cs
T
2026-04-27 10:50:07 -05:00

63 lines
1.7 KiB
C#

using LCU.Library.Internal.ApiResponse.Models;
using LCU.Library.Internal.FileOperationsModels.Models.NameSettings;
using LCU.Library.Internal.FileOperationsModels.Shared;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace LCU.Library.Internal.FileOperationsModels.Models
{
public class RenameDirectoryRequest : ReturnResponse
{
[Required(ErrorMessage = "Source directory path is required.")]
public string SourceDirectoryPath { get; set; }
[Required(ErrorMessage = "Source directory name is required.")]
public string SourceDirectoryName { get; set; }
[Required(ErrorMessage = "Directory name is required.")]
public string NewDirectoryName { get; set; }
public DynamicNameSetting SourceDirectoryNameSetting { get; set; }
public DynamicNameSetting NewDirectoryNameSetting { get; set; }
[NotMapped]
public string FinalSourceDirectoryName
{
get
{
return DynamicNameBuilder.BuildDynamicName(SourceDirectoryName, SourceDirectoryNameSetting);
}
}
[NotMapped]
public string FinalSourceDirectoryPath
{
get
{
var finalDestinationPath = SourceDirectoryPath.EndsWith("\\") ? SourceDirectoryPath : $"{SourceDirectoryPath}\\";
return $"{finalDestinationPath}{FinalSourceDirectoryName}";
}
}
[NotMapped]
public string FinalNewDirectoryName
{
get
{
return DynamicNameBuilder.BuildDynamicName(NewDirectoryName, NewDirectoryNameSetting);
}
}
[NotMapped]
public string NewDirectoryDestination
{
get
{
var finalDestinationPath = SourceDirectoryPath.EndsWith("\\") ? SourceDirectoryPath : $"{SourceDirectoryPath}\\";
return $"{finalDestinationPath}{FinalNewDirectoryName}";
}
}
}
}