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 .xml suffix or ?format=xml

HTTP + XML

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: application/xml
Content-Type: application/xml
Content-Length: length

<ArbolPermisosFormasRQ xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Administrador.Modelo.Tipos">
  <CodEmpresa>0</CodEmpresa>
  <CodForma>0</CodForma>
  <CodModulo>0</CodModulo>
  <CodSistema>0</CodSistema>
  <Lenguaje>ES</Lenguaje>
  <Usuario>String</Usuario>
</ArbolPermisosFormasRQ>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<PermisosFormas xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Administrador.Modelo.Tipos">
  <CodForma>0</CodForma>
  <Descripcion>String</Descripcion>
  <Items>
    <PermisosItems>
      <CodigoMenu>0</CodigoMenu>
      <CodigoPadre>0</CodigoPadre>
      <Descripcion>String</Descripcion>
      <IDEjecucion>String</IDEjecucion>
      <Icono>String</Icono>
      <InfoAdicional>String</InfoAdicional>
      <Items>
        <PermisosItems>
          <CodigoMenu>0</CodigoMenu>
          <CodigoPadre>0</CodigoPadre>
          <Descripcion>String</Descripcion>
          <IDEjecucion>String</IDEjecucion>
          <Icono>String</Icono>
          <InfoAdicional>String</InfoAdicional>
          <Items>
            <PermisosItems>
              <CodigoMenu>0</CodigoMenu>
              <CodigoPadre>0</CodigoPadre>
              <Descripcion>String</Descripcion>
              <IDEjecucion>String</IDEjecucion>
              <Icono>String</Icono>
              <InfoAdicional>String</InfoAdicional>
              <Items i:nil="true" />
              <Nombre>String</Nombre>
              <Orden>0</Orden>
              <TienePermiso>false</TienePermiso>
              <TipoEjecucion>String</TipoEjecucion>
            </PermisosItems>
          </Items>
          <Nombre>String</Nombre>
          <Orden>0</Orden>
          <TienePermiso>false</TienePermiso>
          <TipoEjecucion>String</TipoEjecucion>
        </PermisosItems>
      </Items>
      <Nombre>String</Nombre>
      <Orden>0</Orden>
      <TienePermiso>false</TienePermiso>
      <TipoEjecucion>String</TipoEjecucion>
    </PermisosItems>
  </Items>
  <Nombre>String</Nombre>
</PermisosFormas>