FBiHBetting.Aggregator.WebApi

<back to all web services

GetReport

The following routes are available for this service:
GET/reports
import 'package:servicestack/servicestack.dart';

abstract class IContentTypeWriter
{
}

abstract class IResponse
{
    dynamic? originalResponse;
    IRequest? request;
    int? statusCode;
    String? statusDescription;
    String? contentType;
    Uint8List? outputStream;
    dynamic? dto;
    bool? useBufferedStream;
    bool? isClosed;
    bool? keepAlive;
    bool? hasStarted;
    Map<String,dynamic?>? items;
}

// @flags()
class RequestAttributes
{
    static const RequestAttributes None = const RequestAttributes._(0);
    static const RequestAttributes Localhost = const RequestAttributes._(1);
    static const RequestAttributes LocalSubnet = const RequestAttributes._(2);
    static const RequestAttributes External = const RequestAttributes._(4);
    static const RequestAttributes Secure = const RequestAttributes._(8);
    static const RequestAttributes InSecure = const RequestAttributes._(16);
    static const RequestAttributes AnySecurityMode = const RequestAttributes._(24);
    static const RequestAttributes HttpHead = const RequestAttributes._(32);
    static const RequestAttributes HttpGet = const RequestAttributes._(64);
    static const RequestAttributes HttpPost = const RequestAttributes._(128);
    static const RequestAttributes HttpPut = const RequestAttributes._(256);
    static const RequestAttributes HttpDelete = const RequestAttributes._(512);
    static const RequestAttributes HttpPatch = const RequestAttributes._(1024);
    static const RequestAttributes HttpOptions = const RequestAttributes._(2048);
    static const RequestAttributes HttpOther = const RequestAttributes._(4096);
    static const RequestAttributes AnyHttpMethod = const RequestAttributes._(8160);
    static const RequestAttributes OneWay = const RequestAttributes._(8192);
    static const RequestAttributes Reply = const RequestAttributes._(16384);
    static const RequestAttributes AnyCallStyle = const RequestAttributes._(24576);
    static const RequestAttributes Soap11 = const RequestAttributes._(32768);
    static const RequestAttributes Soap12 = const RequestAttributes._(65536);
    static const RequestAttributes Xml = const RequestAttributes._(131072);
    static const RequestAttributes Json = const RequestAttributes._(262144);
    static const RequestAttributes Jsv = const RequestAttributes._(524288);
    static const RequestAttributes ProtoBuf = const RequestAttributes._(1048576);
    static const RequestAttributes Csv = const RequestAttributes._(2097152);
    static const RequestAttributes Html = const RequestAttributes._(4194304);
    static const RequestAttributes Jsonl = const RequestAttributes._(8388608);
    static const RequestAttributes MsgPack = const RequestAttributes._(16777216);
    static const RequestAttributes FormatOther = const RequestAttributes._(33554432);
    static const RequestAttributes AnyFormat = const RequestAttributes._(67076096);
    static const RequestAttributes Http = const RequestAttributes._(67108864);
    static const RequestAttributes MessageQueue = const RequestAttributes._(134217728);
    static const RequestAttributes Tcp = const RequestAttributes._(268435456);
    static const RequestAttributes Grpc = const RequestAttributes._(536870912);
    static const RequestAttributes EndpointOther = const RequestAttributes._(1073741824);
    static const RequestAttributes AnyEndpoint = const RequestAttributes._(2080374784);
    static const RequestAttributes InProcess = const RequestAttributes._(-2147483648);
    static const RequestAttributes InternalNetworkAccess = const RequestAttributes._(-2147483645);
    static const RequestAttributes AnyNetworkAccessType = const RequestAttributes._(-2147483641);
    static const RequestAttributes Any = const RequestAttributes._(-1);

    final int _value;
    const RequestAttributes._(this._value);
    int get value => _value;
    static List<RequestAttributes> get values => const [None,Localhost,LocalSubnet,External,Secure,InSecure,AnySecurityMode,HttpHead,HttpGet,HttpPost,HttpPut,HttpDelete,HttpPatch,HttpOptions,HttpOther,AnyHttpMethod,OneWay,Reply,AnyCallStyle,Soap11,Soap12,Xml,Json,Jsv,ProtoBuf,Csv,Html,Jsonl,MsgPack,FormatOther,AnyFormat,Http,MessageQueue,Tcp,Grpc,EndpointOther,AnyEndpoint,InProcess,InternalNetworkAccess,AnyNetworkAccessType,Any];
}

abstract class IRequestPreferences
{
    bool? acceptsBrotli;
    bool? acceptsDeflate;
    bool? acceptsGzip;
}

abstract class IHttpFile
{
    String? name;
    String? fileName;
    int? contentLength;
    String? contentType;
    Uint8List? inputStream;
}

abstract class IRequest
{
    dynamic? originalRequest;
    IResponse? response;
    String? operationName;
    String? verb;
    RequestAttributes? requestAttributes;
    IRequestPreferences? requestPreferences;
    dynamic? dto;
    String? contentType;
    bool? isLocal;
    String? userAgent;
    Map<String,Cookie?>? cookies;
    String? responseContentType;
    bool? hasExplicitResponseContentType;
    Map<String,dynamic?>? items;
    NameValueCollection? headers;
    NameValueCollection? queryString;
    NameValueCollection? formData;
    bool? useBufferedStream;
    String? rawUrl;
    String? absoluteUri;
    String? userHostAddress;
    String? remoteIp;
    String? authorization;
    bool? isSecureConnection;
    List<String>? acceptTypes;
    String? pathInfo;
    String? originalPathInfo;
    Uint8List? inputStream;
    int? contentLength;
    List<IHttpFile>? files;
    Uri? urlReferrer;
}

abstract class IHttpResult
{
    int? status;
    HttpStatusCode? statusCode;
    String? statusDescription;
    String? contentType;
    Map<String,String?>? headers;
    List<Cookie>? cookies;
    dynamic? response;
    IContentTypeWriter? responseFilter;
    IRequest? requestContext;
    int? paddingLength;
    Func<IDisposable>? resultScope;
}

class ReportType
{
    static const ReportType GeneralReport = const ReportType._(0);
    static const ReportType SportsReport = const ReportType._(1);
    static const ReportType RNGReport = const ReportType._(2);

    final int _value;
    const ReportType._(this._value);
    int get value => _value;
    static List<ReportType> get values => const [GeneralReport,SportsReport,RNGReport];
}

class ReportFormat
{
    static const ReportFormat PDF = const ReportFormat._(0);
    static const ReportFormat XLSX = const ReportFormat._(1);
    static const ReportFormat HTML = const ReportFormat._(2);
    static const ReportFormat XML = const ReportFormat._(3);

    final int _value;
    const ReportFormat._(this._value);
    int get value => _value;
    static List<ReportFormat> get values => const [PDF,XLSX,HTML,XML];
}

class ReportOperation
{
    static const ReportOperation Prijava_od_strane_poreznog_obveznika = const ReportOperation._(0);
    static const ReportOperation Prijava_u_ime_poreznog_obveznika = const ReportOperation._(1);
    static const ReportOperation Izmjena = const ReportOperation._(2);
    static const ReportOperation Izmjena_prijava_poreske_uprave = const ReportOperation._(3);

    final int _value;
    const ReportOperation._(this._value);
    int get value => _value;
    static List<ReportOperation> get values => const [Prijava_od_strane_poreznog_obveznika,Prijava_u_ime_poreznog_obveznika,Izmjena,Izmjena_prijava_poreske_uprave];
}

class GetReport implements IConvertible
{
    ReportType? type;
    DateTime? dateFrom;
    DateTime? dateTo;
    ReportFormat? format;
    int? documentOrdinal;
    String? official;
    ReportOperation? operation;
    DateTime? dateOfReceipt;
    String? authorizedPersonJMBG;
    String? authorizedPersonFullName;
    String? authorizedPersonLocation;
    DateTime? authorizedPersonStatementDate;

    GetReport({this.type,this.dateFrom,this.dateTo,this.format,this.documentOrdinal,this.official,this.operation,this.dateOfReceipt,this.authorizedPersonJMBG,this.authorizedPersonFullName,this.authorizedPersonLocation,this.authorizedPersonStatementDate});
    GetReport.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        type = JsonConverters.fromJson(json['type'],'ReportType',context!);
        dateFrom = JsonConverters.fromJson(json['dateFrom'],'DateTime',context!);
        dateTo = JsonConverters.fromJson(json['dateTo'],'DateTime',context!);
        format = JsonConverters.fromJson(json['format'],'ReportFormat',context!);
        documentOrdinal = json['documentOrdinal'];
        official = json['official'];
        operation = JsonConverters.fromJson(json['operation'],'ReportOperation',context!);
        dateOfReceipt = JsonConverters.fromJson(json['dateOfReceipt'],'DateTime',context!);
        authorizedPersonJMBG = json['authorizedPersonJMBG'];
        authorizedPersonFullName = json['authorizedPersonFullName'];
        authorizedPersonLocation = json['authorizedPersonLocation'];
        authorizedPersonStatementDate = JsonConverters.fromJson(json['authorizedPersonStatementDate'],'DateTime',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'type': JsonConverters.toJson(type,'ReportType',context!),
        'dateFrom': JsonConverters.toJson(dateFrom,'DateTime',context!),
        'dateTo': JsonConverters.toJson(dateTo,'DateTime',context!),
        'format': JsonConverters.toJson(format,'ReportFormat',context!),
        'documentOrdinal': documentOrdinal,
        'official': official,
        'operation': JsonConverters.toJson(operation,'ReportOperation',context!),
        'dateOfReceipt': JsonConverters.toJson(dateOfReceipt,'DateTime',context!),
        'authorizedPersonJMBG': authorizedPersonJMBG,
        'authorizedPersonFullName': authorizedPersonFullName,
        'authorizedPersonLocation': authorizedPersonLocation,
        'authorizedPersonStatementDate': JsonConverters.toJson(authorizedPersonStatementDate,'DateTime',context!)
    };

    getTypeName() => "GetReport";
    TypeContext? context = _ctx;
}

TypeContext _ctx = TypeContext(library: 'fbihtaapi.bettor.webhop.biz', types: <String, TypeInfo> {
    'IContentTypeWriter': TypeInfo(TypeOf.Interface),
    'IResponse': TypeInfo(TypeOf.Interface),
    'RequestAttributes': TypeInfo(TypeOf.Enum, enumValues:RequestAttributes.values),
    'IRequestPreferences': TypeInfo(TypeOf.Interface),
    'IHttpFile': TypeInfo(TypeOf.Interface),
    'IRequest': TypeInfo(TypeOf.Interface),
    'IHttpResult': TypeInfo(TypeOf.Interface),
    'ReportType': TypeInfo(TypeOf.Enum, enumValues:ReportType.values),
    'ReportFormat': TypeInfo(TypeOf.Enum, enumValues:ReportFormat.values),
    'ReportOperation': TypeInfo(TypeOf.Enum, enumValues:ReportOperation.values),
    'GetReport': TypeInfo(TypeOf.Class, create:() => GetReport()),
});

Dart GetReport 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 /reports HTTP/1.1 
Host: fbihtaapi.bettor.webhop.biz 
Accept: text/csv
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

{Unable to show example output for type 'IHttpResult' using the custom 'csv' filter}Cannot dynamically create an instance of type 'ServiceStack.Web.IHttpResult'. Reason: Cannot create an instance of an interface.