using Quadarax.Foundation.Core.Data.Interface.Entity;

namespace BO.AppServer.Metadata.Dto
{
    #region *** Structure - Base ***

    public class StructureBaseDto : BoDto
    {
        public string Name { get; set; }
        public long? ParentId { get; set; }
    }

    #endregion

    #region *** Structure - Create ***

    internal class StructureCDto : StructureBaseDto, ICreateDto
    {
    }

    #endregion

    #region *** Structure - Update ***

    internal class StructureUDto : StructureBaseDto, IUpdateDto
    {
    }

    #endregion

    #region *** Structure - Read ***

    public class StructureRDto : StructureBaseDto, IReadDto
    {
        public BoAuditDto Audit { get; set; }        
        public int DocumentAllCount { get; set; }
        public int DocumentPendingCount { get; set; }
        public int DocumentWorkingCount { get; set; }
        public int DocumentDoneCount { get; set; }
        public int DocumentFailCount { get; set; }
    }

    #endregion

    #region *** Structure - Delete ***

    internal class StructureDDto : BoDto, IDeleteDto
    {
    }

    #endregion
}
