tvpl.api

<back to all web services

SearchCategoryRequest

Requires Authentication
The following routes are available for this service:
POST/category
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 BaseResponse<List>
        : IResponseRequest
    {
        public BaseResponse()
        {
            Data = new List<Category>{};
        }

        public virtual int Code { get; set; }
        public virtual string Message { get; set; }
        public virtual List<Category> Data { get; set; }
    }

    public partial class SearchCategoryRequest
        : CategoryRequest
    {
    }

}

namespace tvpl.data.Constant
{
    public enum CategoryTypes
    {
        Department,
        PartyGroup,
        DocGroup,
        DocType,
        IssuingAgency,
        Status,
        Subjects,
        Workflow,
    }

}

namespace tvpl.data.Models
{
    public partial class Category
        : CreateCategoryModel
    {
        public Category()
        {
            Children = new List<Category>{};
        }

        public virtual int Id { get; set; }
        public virtual int Level { get; set; }
        public virtual int SortOrder { get; set; }
        public virtual DateTime? LastUpdate { get; set; }
        [Ignore]
        public virtual List<Category> Children { get; set; }
    }

    public partial class CategoryRequest
    {
        public virtual int? Id { get; set; }
        public virtual CategoryTypes? Type { get; set; }
        public virtual string Name { get; set; }
        public virtual int? ParentId { get; set; }
    }

    public partial class CreateCategoryModel
    {
        public CreateCategoryModel()
        {
            ChildList = new List<int>{};
        }

        public virtual string Name { get; set; }
        public virtual string Description { get; set; }
        public virtual CategoryTypes Type { get; set; }
        public virtual bool IsParty { get; set; }
        [Ignore]
        public virtual List<int> ChildList { get; set; }
    }

}

C# SearchCategoryRequest DTOs

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

HTTP + JSV

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

POST /category HTTP/1.1 
Host: etc-api.vsmlab.vn 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	id: 0,
	type: Department,
	name: String,
	parentId: 0
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	code: 0,
	message: String,
	data: 
	[
		{
			id: 0,
			level: 0,
			sortOrder: 0,
			lastUpdate: "0001-01-01T00:00:00.0000000+07:06",
			children: 
			[
				{
					id: 0,
					level: 0,
					sortOrder: 0,
					lastUpdate: "0001-01-01T00:00:00.0000000+07:06",
					children: 
					[
						{
							id: 0,
							level: 0,
							sortOrder: 0,
							lastUpdate: "0001-01-01T00:00:00.0000000+07:06",
							name: String,
							description: String,
							type: Department,
							isParty: False,
							childList: 
							[
								0
							]
						}
					],
					name: String,
					description: String,
					type: Department,
					isParty: False,
					childList: 
					[
						0
					]
				}
			],
			name: String,
			description: String,
			type: Department,
			isParty: False,
			childList: 
			[
				0
			]
		}
	]
}