POST | /tender/announcement |
---|
namespace Portal.Common
open System
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations
type GridSortDirection =
| None = 0
| Asc = 1
| Desc = 2
[<AllowNullLiteral>]
type GridViewColumnState() =
member val FieldName:String = null with get,set
member val SortDirection:GridSortDirection = new GridSortDirection() with get,set
type FilterOperator =
| NotSet = 0
| Equal = 1
| Greater = 2
| Less = 3
| GreaterOrEqual = 4
| LessOrEqual = 5
| NotEqual = 6
| IsNull = 7
| IsNotNull = 8
| Like = 9
| NotLike = 10
| Begins = 11
| Ends = 12
| In = 13
| Between = 14
[<AllowNullLiteral>]
type GridViewColumnFilter() =
member val FieldName:String = null with get,set
member val FilterValue:String = null with get,set
member val Operator:FilterOperator = new FilterOperator() with get,set
[<AllowNullLiteral>]
type GridViewPagerState() =
member val SkipRowCount:Int32 = new Int32() with get,set
member val PageRowCount:Int32 = new Int32() with get,set
[<AllowNullLiteral>]
type GridViewState() =
member val ColumnState:GridViewColumnState = null with get,set
member val ColumnFilters:ResizeArray<GridViewColumnFilter> = new ResizeArray<GridViewColumnFilter>() with get,set
member val PagerState:GridViewPagerState = null with get,set
member val IsReturnCount:Boolean = new Boolean() with get,set
[<AllowNullLiteral>]
type PaginationRequestBase() =
member val GridViewState:GridViewState = null with get,set
[<AllowNullLiteral>]
type BrowseAllTenderAnnouncement() =
inherit PaginationRequestBase()
interface IPost
[<AllowNullLiteral>]
type ResponseBase() =
member val ResponseStatus:ResponseStatus = null with get,set
type ProcedureType =
| Competition = 0
| Simplified = 1
type TenderType =
| Private = 0
| Public = 1
type TenderStatus =
| FirstRound = 0
| SecondRound = 1
| ThirdRound = 2
| Successful = 3
| UnSuccessful = 4
| Revoked = 5
[<AllowNullLiteral>]
type TenderSimple() =
member val TenderId:Int32 = new Int32() with get,set
member val TenderIdentifier:String = null with get,set
member val ProcedureType:ProcedureType = new ProcedureType() with get,set
member val Subject:String = null with get,set
member val TenderRoundName:String = null with get,set
member val SectionName:String = null with get,set
member val Deadline:Nullable<DateTime> = new Nullable<DateTime>() with get,set
member val TenderType:TenderType = new TenderType() with get,set
member val TenderStatus:TenderStatus = new TenderStatus() with get,set
member val IsUnderPublish:Boolean = new Boolean() with get,set
member val PublishStartDateTime:Nullable<DateTime> = new Nullable<DateTime>() with get,set
member val PublishEndDateTime:Nullable<DateTime> = new Nullable<DateTime>() with get,set
member val PublishedById:Nullable<Int32> = new Nullable<Int32>() with get,set
member val IsProcurementEnabled:Boolean = new Boolean() with get,set
member val IsComplianceEnabled:Boolean = new Boolean() with get,set
[<AllowNullLiteral>]
type PaginationResponse<TenderSimple>() =
inherit ResponseBase()
member val Result:PaginationResult<TenderSimple> = null with get,set
[<AllowNullLiteral>]
type PaginationResult<TModel>() =
member val TotalRowCount:Int32 = new Int32() with get,set
member val Items:ResizeArray<TModel> = new ResizeArray<TModel>() with get,set
F# BrowseAllTenderAnnouncement DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /tender/announcement HTTP/1.1
Host: szallitoiportal-be.veolia.hu
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
GridViewState:
{
ColumnState:
{
FieldName: String,
SortDirection: 0
},
ColumnFilters:
[
{
FieldName: String,
FilterValue: String,
Operator: 0
}
],
PagerState:
{
SkipRowCount: 0,
PageRowCount: 0
},
IsReturnCount: False
}
}
HTTP/1.1 200 OK Content-Type: text/jsv Content-Length: length { Result: { TotalRowCount: 0, Items: [ { TenderId: 0, TenderIdentifier: String, ProcedureType: 0, Subject: String, SubmissionDeadline: 0001-01-01, TenderType: 0, TenderStatus: 0, IsUnderPublish: False, PublishStartDateTime: 0001-01-01, PublishEndDateTime: 0001-01-01, PublishedById: 0, IsProcurementEnabled: False, IsComplianceEnabled: False } ] }, ResponseStatus: { ErrorCode: String, Message: String, StackTrace: String, Errors: [ { ErrorCode: String, FieldName: String, Message: String, Meta: { String: String } } ], Meta: { String: String } } }