FrameAppWS

<back to all web services

ArbolPermisosFormasRQ

Requires Authentication
The following routes are available for this service:
All Verbs/Usuarios/Permisos/Forma
<?php namespace dtos;

use DateTime;
use Exception;
use DateInterval;
use JsonSerializable;
use ServiceStack\{IReturn,IReturnVoid,IGet,IPost,IPut,IDelete,IPatch,IMeta,IHasSessionId,IHasBearerToken,IHasVersion};
use ServiceStack\{ICrud,ICreateDb,IUpdateDb,IPatchDb,IDeleteDb,ISaveDb,AuditBase,QueryDb,QueryDb2,QueryData,QueryData2,QueryResponse};
use ServiceStack\{ResponseStatus,ResponseError,EmptyResponse,IdResponse,ArrayList,KeyValuePair2,StringResponse,StringsResponse,Tuple2,Tuple3,ByteArray};
use ServiceStack\{JsonConverters,Returns,TypeContext};


class PermisosItems implements JsonSerializable
{
    public function __construct(
        /** @var float */
        public float $CodigoMenu=0.0,
        /** @var float */
        public float $CodigoPadre=0.0,
        /** @var string|null */
        public ?string $Nombre=null,
        /** @var string|null */
        public ?string $Descripcion=null,
        /** @var bool|null */
        public ?bool $TienePermiso=null,
        /** @var string|null */
        public ?string $TipoEjecucion=null,
        /** @var string|null */
        public ?string $IDEjecucion=null,
        /** @var string|null */
        public ?string $InfoAdicional=null,
        /** @var int */
        public int $Orden=0,
        /** @var array<PermisosItems>|null */
        public ?array $Items=null,
        /** @var string|null */
        public ?string $Icono=null
    ) {
    }

    /** @throws Exception */
    public function fromMap($o): void {
        if (isset($o['CodigoMenu'])) $this->CodigoMenu = $o['CodigoMenu'];
        if (isset($o['CodigoPadre'])) $this->CodigoPadre = $o['CodigoPadre'];
        if (isset($o['Nombre'])) $this->Nombre = $o['Nombre'];
        if (isset($o['Descripcion'])) $this->Descripcion = $o['Descripcion'];
        if (isset($o['TienePermiso'])) $this->TienePermiso = $o['TienePermiso'];
        if (isset($o['TipoEjecucion'])) $this->TipoEjecucion = $o['TipoEjecucion'];
        if (isset($o['IDEjecucion'])) $this->IDEjecucion = $o['IDEjecucion'];
        if (isset($o['InfoAdicional'])) $this->InfoAdicional = $o['InfoAdicional'];
        if (isset($o['Orden'])) $this->Orden = $o['Orden'];
        if (isset($o['Items'])) $this->Items = JsonConverters::fromArray('PermisosItems', $o['Items']);
        if (isset($o['Icono'])) $this->Icono = $o['Icono'];
    }
    
    /** @throws Exception */
    public function jsonSerialize(): mixed
    {
        $o = [];
        if (isset($this->CodigoMenu)) $o['CodigoMenu'] = $this->CodigoMenu;
        if (isset($this->CodigoPadre)) $o['CodigoPadre'] = $this->CodigoPadre;
        if (isset($this->Nombre)) $o['Nombre'] = $this->Nombre;
        if (isset($this->Descripcion)) $o['Descripcion'] = $this->Descripcion;
        if (isset($this->TienePermiso)) $o['TienePermiso'] = $this->TienePermiso;
        if (isset($this->TipoEjecucion)) $o['TipoEjecucion'] = $this->TipoEjecucion;
        if (isset($this->IDEjecucion)) $o['IDEjecucion'] = $this->IDEjecucion;
        if (isset($this->InfoAdicional)) $o['InfoAdicional'] = $this->InfoAdicional;
        if (isset($this->Orden)) $o['Orden'] = $this->Orden;
        if (isset($this->Items)) $o['Items'] = JsonConverters::toArray('PermisosItems', $this->Items);
        if (isset($this->Icono)) $o['Icono'] = $this->Icono;
        return empty($o) ? new class(){} : $o;
    }
}

class PermisosFormas implements JsonSerializable
{
    public function __construct(
        /** @var int */
        public int $CodForma=0,
        /** @var string|null */
        public ?string $Nombre=null,
        /** @var string|null */
        public ?string $Descripcion=null,
        /** @var array<PermisosItems>|null */
        public ?array $Items=null
    ) {
    }

    /** @throws Exception */
    public function fromMap($o): void {
        if (isset($o['CodForma'])) $this->CodForma = $o['CodForma'];
        if (isset($o['Nombre'])) $this->Nombre = $o['Nombre'];
        if (isset($o['Descripcion'])) $this->Descripcion = $o['Descripcion'];
        if (isset($o['Items'])) $this->Items = JsonConverters::fromArray('PermisosItems', $o['Items']);
    }
    
    /** @throws Exception */
    public function jsonSerialize(): mixed
    {
        $o = [];
        if (isset($this->CodForma)) $o['CodForma'] = $this->CodForma;
        if (isset($this->Nombre)) $o['Nombre'] = $this->Nombre;
        if (isset($this->Descripcion)) $o['Descripcion'] = $this->Descripcion;
        if (isset($this->Items)) $o['Items'] = JsonConverters::toArray('PermisosItems', $this->Items);
        return empty($o) ? new class(){} : $o;
    }
}

enum Lenguajes : string
{
    case ES = 'ES';
    case PT = 'PT';
    case EN = 'EN';
}

class ArbolPermisosFormasRQ implements JsonSerializable
{
    public function __construct(
        /** @var string|null */
        public ?string $Usuario=null,
        /** @var int */
        public int $CodSistema=0,
        /** @var int */
        public int $CodEmpresa=0,
        /** @var int */
        public int $CodModulo=0,
        /** @var int */
        public int $CodForma=0,
        /** @var Lenguajes|null */
        public ?Lenguajes $Lenguaje=null
    ) {
    }

    /** @throws Exception */
    public function fromMap($o): void {
        if (isset($o['Usuario'])) $this->Usuario = $o['Usuario'];
        if (isset($o['CodSistema'])) $this->CodSistema = $o['CodSistema'];
        if (isset($o['CodEmpresa'])) $this->CodEmpresa = $o['CodEmpresa'];
        if (isset($o['CodModulo'])) $this->CodModulo = $o['CodModulo'];
        if (isset($o['CodForma'])) $this->CodForma = $o['CodForma'];
        if (isset($o['Lenguaje'])) $this->Lenguaje = JsonConverters::from('Lenguajes', $o['Lenguaje']);
    }
    
    /** @throws Exception */
    public function jsonSerialize(): mixed
    {
        $o = [];
        if (isset($this->Usuario)) $o['Usuario'] = $this->Usuario;
        if (isset($this->CodSistema)) $o['CodSistema'] = $this->CodSistema;
        if (isset($this->CodEmpresa)) $o['CodEmpresa'] = $this->CodEmpresa;
        if (isset($this->CodModulo)) $o['CodModulo'] = $this->CodModulo;
        if (isset($this->CodForma)) $o['CodForma'] = $this->CodForma;
        if (isset($this->Lenguaje)) $o['Lenguaje'] = JsonConverters::to('Lenguajes', $this->Lenguaje);
        return empty($o) ? new class(){} : $o;
    }
}

PHP ArbolPermisosFormasRQ DTOs

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

HTTP + OTHER

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

POST /Usuarios/Permisos/Forma HTTP/1.1 
Host: soluser-recaudo.sgsas.co 
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length

{"Usuario":"String","CodSistema":0,"CodEmpresa":0,"CodModulo":0,"CodForma":0,"Lenguaje":"ES"}
HTTP/1.1 200 OK
Content-Type: text/jsonl
Content-Length: length

{"CodForma":0,"Nombre":"String","Descripcion":"String","Items":[{"CodigoMenu":0,"CodigoPadre":0,"Nombre":"String","Descripcion":"String","TienePermiso":false,"TipoEjecucion":"String","IDEjecucion":"String","InfoAdicional":"String","Orden":0,"Items":[{"CodigoMenu":0,"CodigoPadre":0,"Nombre":"String","Descripcion":"String","TienePermiso":false,"TipoEjecucion":"String","IDEjecucion":"String","InfoAdicional":"String","Orden":0,"Items":[{"CodigoMenu":0,"CodigoPadre":0,"Nombre":"String","Descripcion":"String","TienePermiso":false,"TipoEjecucion":"String","IDEjecucion":"String","InfoAdicional":"String","Orden":0,"Items":null,"Icono":"String"}],"Icono":"String"}],"Icono":"String"}]}