tvpl.api

<back to all web services

DocumentDetailRequest

Requires Authentication
The following routes are available for this service:
GET/document/detail
using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using tvpl.api.ServiceModel;
using tvpl.data.Models;
using tvpl.data.Constant;

namespace tvpl.api.ServiceModel
{
    public partial class DocumentDetailRequest
    {
        public virtual int Id { 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; }
    }

}

namespace tvpl.data.Constant
{
    public enum AccessType
    {
        Public,
        Restricted,
    }

}

namespace tvpl.data.Models
{
    public partial class ApproversProfile
    {
        public ApproversProfile()
        {
            UserProfiles = new List<UserProfile>{};
        }

        public virtual List<UserProfile> 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 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<UploadedFileAttach>{};
            BasisDocument = new List<SimpleDocumentRelation>{};
            BasisForDocument = new List<SimpleDocumentRelation>{};
            ReferenceDocument = new List<SimpleDocumentRelation>{};
            ReferencedByDocument = new List<SimpleDocumentRelation>{};
            ReplacedDocument = new List<SimpleDocumentRelation>{};
            ReplacedByDocument = new List<SimpleDocumentRelation>{};
            ExpiredDocument = new List<SimpleDocumentRelation>{};
            ExpiredByDocument = new List<SimpleDocumentRelation>{};
        }

        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<UploadedFileAttach> AttachFiles { get; set; }
        public virtual bool HasReadPermission { get; set; }
        public virtual bool CanGrantReadPermission { get; set; }
        public virtual List<SimpleDocumentRelation> BasisDocument { get; set; }
        public virtual List<SimpleDocumentRelation> BasisForDocument { get; set; }
        public virtual SimpleDocumentRelation MainDocument { get; set; }
        public virtual List<SimpleDocumentRelation> ReferenceDocument { get; set; }
        public virtual List<SimpleDocumentRelation> ReferencedByDocument { get; set; }
        public virtual List<SimpleDocumentRelation> ReplacedDocument { get; set; }
        public virtual List<SimpleDocumentRelation> ReplacedByDocument { get; set; }
        public virtual List<SimpleDocumentRelation> ExpiredDocument { get; set; }
        public virtual List<SimpleDocumentRelation> 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<int>{};
        }

        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<int> Roles { get; set; }

        public virtual DateTime? LastLoginDate { get; set; }
    }

}

C# DocumentDetailRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv

HTTP + CSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

GET /document/detail HTTP/1.1 
Host: etc-api.vsmlab.vn 
Accept: text/csv
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

{"data":{"partUploadedFile":{"fileType":"String","subDocumentId":0,"stepId":0,"id":0,"accessType":"Public","createdBy":0,"createdDate":"0001-01-01T00:00:00.0000000+07:06","fileName":"String","filekey":"String","fileUrl":"String","checksum":"String","eTag":"String","fileSize":0},"compactUploadedFile":{"fileType":"String","subDocumentId":0,"stepId":0,"id":0,"accessType":"Public","createdBy":0,"createdDate":"0001-01-01T00:00:00.0000000+07:06","fileName":"String","filekey":"String","fileUrl":"String","checksum":"String","eTag":"String","fileSize":0},"analysisUploadedFile":{"fileType":"String","subDocumentId":0,"stepId":0,"id":0,"accessType":"Public","createdBy":0,"createdDate":"0001-01-01T00:00:00.0000000+07:06","fileName":"String","filekey":"String","fileUrl":"String","checksum":"String","eTag":"String","fileSize":0},"fullUploadedFile":{"fileType":"String","subDocumentId":0,"stepId":0,"id":0,"accessType":"Public","createdBy":0,"createdDate":"0001-01-01T00:00:00.0000000+07:06","fileName":"String","filekey":"String","fileUrl":"String","checksum":"String","eTag":"String","fileSize":0},"createdAt":"0001-01-01T00:00:00.0000000+07:06","nextApprover":{"userProfiles":[{"id":0,"fullName":"String","email":"String","departmentId":0,"partyGroupId":0,"avatar":"String","telephone":"String","birthday":"0001-01-01T00:00:00.0000000+07:06","createdAt":"0001-01-01T00:00:00.0000000+07:06","updatedAt":"0001-01-01T00:00:00.0000000+07:06","failedLoginCount":0,"roles":[0],"lastLoginDate":"0001-01-01T00:00:00.0000000+07:06","name":"String"}],"processStatusId":0,"processTitle":"String","actionButtonLabel":"String","processDescription":"String","isApprovalRequired":false,"isFinalStep":false,"stepOrder":0},"currentApprover":{"approverId":0,"status":"String","processStatusId":0,"processTitle":"String","actionButtonLabel":"String","processDescription":"String","isApprovalRequired":false,"isFinalStep":false,"stepOrder":0},"attachFiles":[{"fileType":"String","subDocumentId":0,"stepId":0,"id":0,"accessType":"Public","createdBy":0,"createdDate":"0001-01-01T00:00:00.0000000+07:06","fileName":"String","filekey":"String","fileUrl":"String","checksum":"String","eTag":"String","fileSize":0}],"hasReadPermission":false,"canGrantReadPermission":false,"basisDocument":[{"id":0,"title":"String","documentCode":"String","publicationDate":"0001-01-01T00:00:00.0000000+07:06"}],"basisForDocument":[{"id":0,"title":"String","documentCode":"String","publicationDate":"0001-01-01T00:00:00.0000000+07:06"}],"mainDocument":{"id":0,"title":"String","documentCode":"String","publicationDate":"0001-01-01T00:00:00.0000000+07:06"},"referenceDocument":[{"id":0,"title":"String","documentCode":"String","publicationDate":"0001-01-01T00:00:00.0000000+07:06"}],"referencedByDocument":[{"id":0,"title":"String","documentCode":"String","publicationDate":"0001-01-01T00:00:00.0000000+07:06"}],"replacedDocument":[{"id":0,"title":"String","documentCode":"String","publicationDate":"0001-01-01T00:00:00.0000000+07:06"}],"replacedByDocument":[{"id":0,"title":"String","documentCode":"String","publicationDate":"0001-01-01T00:00:00.0000000+07:06"}],"expiredDocument":[{"id":0,"title":"String","documentCode":"String","publicationDate":"0001-01-01T00:00:00.0000000+07:06"}],"expiredByDocument":[{"id":0,"title":"String","documentCode":"String","publicationDate":"0001-01-01T00:00:00.0000000+07:06"}],"updateForDocument":{"id":0,"title":"String","documentCode":"String","publicationDate":"0001-01-01T00:00:00.0000000+07:06"},"scopeType":0,"stepOrder":0,"title":"String","description":"String","owner":"String","documentPolicyId":0,"updateDocumentId":0,"effectBeginDate":"0001-01-01T00:00:00.0000000+07:06","effectEndDate":"0001-01-01T00:00:00.0000000+07:06","issuingAgencyId":0,"subjectId":0,"signBy":"String","signDate":"0001-01-01T00:00:00.0000000+07:06","updatedAt":"0001-01-01T00:00:00.0000000+07:06","statusId":0,"isInternal":false,"documentNumber":"String","documentCode":"String","isUrgent":false,"id":0,"reasonReturn":"String","accountId":0,"approverId":0,"updatedBy":"String","createdBy":"String","isParty":false,"isRevisionRequested":false,"isPrivate":false,"departmentId":0,"publicationDate":"0001-01-01T00:00:00.0000000+07:06","processStatusId":0,"documentTypeId":0,"documentGroupId":0,"accountName":"String","acceptAccountName":"String","documentGroupText":"String","processStatusText":"String","documentTypeText":"String","departmentText":"String","statusText":"String","issuingAgencyText":"String","subjectText":"String","comment":"String","submitComment":"String","fullFile":"String","parthFile":"String","isActive":false,"stepOrder":0,"stepCount":0},"code":0,"message":"String"}