/* Options: Date: 2025-12-06 13:04:26 Version: 6.110 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://etc-api.vsmlab.vn //GlobalNamespace: //MakePartial: True //MakeVirtual: True //MakeInternal: False //MakeDataContractsExtensible: False //AddNullableAnnotations: False //AddReturnMarker: True //AddDescriptionAsComments: True //AddDataContractAttributes: False //AddIndexesToDataMembers: False //AddGeneratedCodeAttributes: False //AddResponseStatus: False //AddImplicitVersion: //InitializeCollections: True //ExportValueTypes: False IncludeTypes: AdvanceCreateDocument.* //ExcludeTypes: //AddNamespaces: //AddDefaultXmlNamespace: http://schemas.servicestack.net/types */ using System; using System.Collections; using System.Collections.Generic; using System.Runtime.Serialization; using ServiceStack; using ServiceStack.DataAnnotations; using ServiceStack.Web; using System.IO; using tvpl.api.ServiceModel; using tvpl.data.Models; using tvpl.data.Constant; namespace tvpl.api.ServiceModel { [Route("/document/advance-create", "POST")] public partial class AdvanceCreateDocument : BasicDocument, IReturn { public AdvanceCreateDocument() { AttachFiles = new List{}; BasisDocumentId = new List{}; ReferenceDocumentId = new List{}; ReplacedDocumentId = new List{}; ExpiredDocumentId = new List{}; } public virtual UploadedFiles PartUploadedFile { get; set; } public virtual UploadedFiles CompactUploadedFile { get; set; } public virtual UploadedFiles AnalysisUploadedFile { get; set; } public virtual UploadedFiles FullUploadedFile { get; set; } public virtual List AttachFiles { get; set; } public virtual List BasisDocumentId { get; set; } public virtual List ReferenceDocumentId { get; set; } public virtual List ReplacedDocumentId { get; set; } public virtual List ExpiredDocumentId { get; set; } } public partial class DocumentDetailResponse : IResponseRequest { public virtual DocumentDetail Data { get; set; } public virtual int Code { get; set; } public virtual string Message { get; set; } } public partial interface IResponseRequest { int Code { get; set; } string Message { get; set; } } public partial class UploadedFiles : BasicUploadedFile { public virtual long? Id { get; set; } public virtual string UploadedFile { get; set; } public virtual int? SubDocumentId { get; set; } public virtual int? StepId { get; set; } public virtual int Code { get; set; } } } namespace tvpl.data.Constant { public enum AccessType { Public, Restricted, } } namespace tvpl.data.Models { public partial class ApproversProfile { public ApproversProfile() { UserProfiles = new List{}; } public virtual List UserProfiles { get; set; } public virtual int ProcessStatusId { get; set; } public virtual string ProcessTitle { get; set; } public virtual string ActionButtonLabel { get; set; } public virtual string ProcessDescription { get; set; } public virtual bool IsApprovalRequired { get; set; } public virtual bool IsFinalStep { get; set; } public virtual int StepOrder { get; set; } } public partial class BasicDocument { [Required] public virtual string Title { get; set; } [StringLength(4000)] public virtual string Description { get; set; } [StringLength(500)] public virtual string Owner { get; set; } public virtual int? DocumentPolicyId { get; set; } public virtual int? UpdateDocumentId { get; set; } public virtual DateTime? EffectBeginDate { get; set; } public virtual DateTime? EffectEndDate { get; set; } public virtual int? IssuingAgencyId { get; set; } public virtual int? DocumentTypeId { get; set; } public virtual int? DocumentGroupId { get; set; } public virtual int? SubjectId { get; set; } [StringLength(500)] public virtual string SignBy { get; set; } public virtual DateTime? SignDate { get; set; } public virtual int? StatusId { get; set; } public virtual bool IsInternal { get; set; } public virtual string DocumentNumber { get; set; } public virtual string DocumentCode { get; set; } public virtual bool? IsUrgent { get; set; } public virtual int? ScopeType { get; set; } public virtual bool? IsActive { get; set; } } public partial class BasicUploadedFile { public virtual string FileName { get; set; } public virtual string Filekey { get; set; } public virtual string FileUrl { get; set; } public virtual string Checksum { get; set; } public virtual string ETag { get; set; } public virtual long FileSize { get; set; } } public partial class CurrentApprover { public virtual int? ApproverId { get; set; } public virtual string Status { get; set; } public virtual int ProcessStatusId { get; set; } public virtual string ProcessTitle { get; set; } public virtual string ActionButtonLabel { get; set; } public virtual string ProcessDescription { get; set; } public virtual bool IsApprovalRequired { get; set; } public virtual bool IsFinalStep { get; set; } public virtual int StepOrder { get; set; } } public partial class DocumentDetail : DocumentSearchResultItem { public DocumentDetail() { AttachFiles = new List{}; BasisDocument = new List{}; BasisForDocument = new List{}; ReferenceDocument = new List{}; ReferencedByDocument = new List{}; ReplacedDocument = new List{}; ReplacedByDocument = new List{}; ExpiredDocument = new List{}; ExpiredByDocument = new List{}; } public virtual UploadedFileAttach PartUploadedFile { get; set; } public virtual UploadedFileAttach CompactUploadedFile { get; set; } public virtual UploadedFileAttach AnalysisUploadedFile { get; set; } public virtual UploadedFileAttach FullUploadedFile { get; set; } public virtual DateTime CreatedAt { get; set; } public virtual ApproversProfile NextApprover { get; set; } public virtual CurrentApprover CurrentApprover { get; set; } public virtual List AttachFiles { get; set; } public virtual bool HasReadPermission { get; set; } public virtual bool CanGrantReadPermission { get; set; } public virtual List BasisDocument { get; set; } public virtual List BasisForDocument { get; set; } public virtual SimpleDocumentRelation MainDocument { get; set; } public virtual List ReferenceDocument { get; set; } public virtual List ReferencedByDocument { get; set; } public virtual List ReplacedDocument { get; set; } public virtual List ReplacedByDocument { get; set; } public virtual List ExpiredDocument { get; set; } public virtual List ExpiredByDocument { get; set; } public virtual SimpleDocumentRelation UpdateForDocument { get; set; } public virtual int? ScopeType { get; set; } public virtual int StepOrder { get; set; } } public partial class DocumentSearchResultItem { public virtual string Title { get; set; } public virtual string Description { get; set; } public virtual string Owner { get; set; } public virtual int? DocumentPolicyId { get; set; } public virtual int? UpdateDocumentId { get; set; } public virtual DateTime? EffectBeginDate { get; set; } public virtual DateTime? EffectEndDate { get; set; } public virtual int? IssuingAgencyId { get; set; } public virtual int? SubjectId { get; set; } public virtual string SignBy { get; set; } public virtual DateTime? SignDate { get; set; } public virtual DateTime? UpdatedAt { get; set; } public virtual int? StatusId { get; set; } public virtual bool IsInternal { get; set; } public virtual string DocumentNumber { get; set; } public virtual string DocumentCode { get; set; } public virtual bool? IsUrgent { get; set; } public virtual int Id { get; set; } public virtual string ReasonReturn { get; set; } public virtual int? AccountId { get; set; } public virtual int? ApproverId { get; set; } [StringLength(500)] public virtual string UpdatedBy { get; set; } [StringLength(500)] public virtual string CreatedBy { get; set; } public virtual bool? IsParty { get; set; } public virtual bool? IsRevisionRequested { get; set; } public virtual bool? IsPrivate { get; set; } public virtual int? DepartmentId { get; set; } public virtual DateTime? PublicationDate { get; set; } public virtual int ProcessStatusId { get; set; } public virtual int? DocumentTypeId { get; set; } public virtual int? DocumentGroupId { get; set; } public virtual string AccountName { get; set; } public virtual string AcceptAccountName { get; set; } public virtual string DocumentGroupText { get; set; } public virtual string ProcessStatusText { get; set; } public virtual string DocumentTypeText { get; set; } public virtual string DepartmentText { get; set; } public virtual string StatusText { get; set; } public virtual string IssuingAgencyText { get; set; } public virtual string SubjectText { get; set; } public virtual string Comment { get; set; } public virtual string SubmitComment { get; set; } public virtual string FullFile { get; set; } public virtual string ParthFile { get; set; } public virtual bool? IsActive { get; set; } public virtual int? StepOrder { get; set; } public virtual int? StepCount { get; set; } } public partial class SimpleDocumentRelation { public virtual int Id { get; set; } public virtual string Title { get; set; } public virtual string DocumentCode { get; set; } public virtual DateTime? PublicationDate { get; set; } } public partial class UploadedFileAttach : UploadedFileModel { public virtual string FileType { get; set; } public virtual int? SubDocumentId { get; set; } public virtual int? StepId { get; set; } } public partial class UploadedFileModel : BasicUploadedFile { public virtual long Id { get; set; } public virtual AccessType AccessType { get; set; } public virtual int CreatedBy { get; set; } public virtual DateTime CreatedDate { get; set; } } public partial class UserLogin { [Required] public virtual string Name { get; set; } } public partial class UserProfile : UserLogin { public UserProfile() { Roles = new List{}; } public virtual int Id { get; set; } public virtual string FullName { get; set; } public virtual string Email { get; set; } public virtual int? DepartmentId { get; set; } public virtual int? PartyGroupId { get; set; } public virtual string Avatar { get; set; } public virtual string Telephone { get; set; } public virtual DateTime? Birthday { get; set; } public virtual DateTime? CreatedAt { get; set; } public virtual DateTime? UpdatedAt { get; set; } public virtual int FailedLoginCount { get; set; } [Ignore] public virtual List Roles { get; set; } public virtual DateTime? LastLoginDate { get; set; } } }