12 private static $NAMESPACE_SCSP_ESPECIFICO =
'http://intermediacion.redsara.es/scsp/esquemas/datosespecificos';
13 private static $NAMESPACE_CAT_PET =
'http://intermediacion.redsara.es/scsp/esquemas/V3/peticion';
14 private static $NAMESPACE_CAT_SR =
'http://intermediacion.redsara.es/scsp/esquemas/V3/solicitudRespuesta';
16 private $nifEmisor = null;
17 private $nombreEmisor = null;
18 public function setEmisor($nif, $nombre) {
19 $this->nifEmisor = $nif;
20 $this->nombreEmisor = $nombre;
23 private $codProcedimiento = null;
24 private $nombreProcedimiento = null;
25 public function setProcedimiento($codigo, $nombre) {
26 $this->codProcedimiento = $codigo;
27 $this->nombreProcedimiento = $nombre;
30 private $nombreCompletoFuncionario = null;
31 private $nifFuncionario = null;
32 public function setFuncionario($nombreCompleto, $nif) {
33 $this->nombreCompletoFuncionario = $nombreCompleto;
34 $this->nifFuncionario = $nif;
37 private $tipoDocumentacion = null;
38 private $documentacion = null;
39 private $nombreCompleto = null;
40 private $nombre = null;
41 private $apellido1 = null;
42 private $apellido2 = null;
43 public function setTitular($tipoDocumentacion, $documentacion, $nombreCompleto = null, $nombre = null, $apellido1 = null, $apellido2 = null) {
44 $this->tipoDocumentacion = $tipoDocumentacion;
45 $this->documentacion = $documentacion;
46 $this->nombreCompleto = $nombreCompleto;
47 $this->nombre = $nombre;
48 $this->apellido1 = $apellido1;
49 $this->apellido2 = $apellido2;
52 private $identificadorSolicitante = null;
53 private $nombreSolicitante = null;
54 private $unidadTramitadora = null;
55 private $finalidad = null;
56 private $consentimiento = null;
57 private $idExpediente = null;
58 public function setSolicitante($identificadorSolicitante, $nombreSolicitante, $consentimiento, $finalidad, $unidadTramitadora = null, $idExpediente = null) {
59 $this->identificadorSolicitante = $identificadorSolicitante;
60 $this->nombreSolicitante = $nombreSolicitante;
61 $this->consentimiento = $consentimiento;
62 $this->finalidad = $finalidad;
63 $this->unidadTramitadora = $unidadTramitadora;
64 $this->idExpediente = $idExpediente;
67 private $oEspecifico = null;
68 public function setEspecifico($oEspecifico) {
69 $this->oEspecifico = $oEspecifico;
72 public function duplicarCabecera() {
74 $oClon->setEmisor($this->nifEmisor, $this->nombreEmisor);
75 $oClon->setProcedimiento($this->codProcedimiento, $this->nombreProcedimiento);
76 $oClon->setFuncionario($this->nombreCompletoFuncionario, $this->nifFuncionario);
77 $oClon->setTitular($this->tipoDocumentacion, $this->documentacion, $this->nombreCompleto, $this->nombre, $this->apellido1, $this->apellido2);
78 $oClon->setSolicitante($this->identificadorSolicitante, $this->nombreSolicitante, $this->consentimiento, $this->finalidad, $this->unidadTramitadora, $this->idExpediente);
83 public function toSoap($IdPeticion, $CodigoCertificado, $numParcial = null)
86 $IdSolicitud = $IdPeticion;
87 if (!is_null($numParcial)) {
88 $IdSolicitud = $IdPeticion .
'_' . $numParcial;
98 $EmisorWSRequest->append(
new SoapVar($this->nifEmisor, XSD_STRING, null, null,
'NifEmisor', self::$NAMESPACE_CAT_PET));
99 $EmisorWSRequest->append(
new SoapVar($this->nombreEmisor, XSD_STRING, null, null,
'NombreEmisor', self::$NAMESPACE_CAT_PET));
103 $ProcedimientoWSRequest->append(
new SoapVar($this->codProcedimiento, XSD_STRING, null, null,
'CodProcedimiento', self::$NAMESPACE_CAT_PET));
104 $ProcedimientoWSRequest->append(
new SoapVar($this->nombreProcedimiento, XSD_STRING, null, null,
'NombreProcedimiento', self::$NAMESPACE_CAT_PET));
108 $FuncionarioWSRequest->append(
new SoapVar($this->nombreCompletoFuncionario, XSD_STRING, null, null,
'NombreCompletoFuncionario', self::$NAMESPACE_CAT_PET));
109 $FuncionarioWSRequest->append(
new SoapVar($this->nifFuncionario, XSD_STRING, null, null,
'NifFuncionario', self::$NAMESPACE_CAT_PET));
113 $SolicitanteWSRequest->append(
new SoapVar($this->identificadorSolicitante, XSD_STRING, null, null,
'IdentificadorSolicitante', self::$NAMESPACE_CAT_PET));
114 $SolicitanteWSRequest->append(
new SoapVar($this->nombreSolicitante, XSD_STRING, null, null,
'NombreSolicitante', self::$NAMESPACE_CAT_PET));
115 if (!is_null($this->unidadTramitadora)) {
116 $SolicitanteWSRequest->append(
new SoapVar($this->unidadTramitadora, XSD_STRING, null, null,
'UnidadTramitadora', self::$NAMESPACE_CAT_PET));
118 $SolicitanteWSRequest->append(
new SoapVar($ProcedimientoWSRequest, SOAP_ENC_OBJECT,null,null,
'Procedimiento', self::$NAMESPACE_CAT_PET));
119 $SolicitanteWSRequest->append(
new SoapVar($this->finalidad, XSD_STRING, null, null,
'Finalidad', self::$NAMESPACE_CAT_PET));
120 $SolicitanteWSRequest->append(
new SoapVar($this->consentimiento, XSD_STRING, null, null,
'Consentimiento', self::$NAMESPACE_CAT_PET));
121 $SolicitanteWSRequest->append(
new SoapVar($FuncionarioWSRequest, SOAP_ENC_OBJECT,null,null,
'Funcionario', self::$NAMESPACE_CAT_PET));
122 if (!is_null($this->idExpediente)) {
123 $SolicitanteWSRequest->append(
new SoapVar($this->idExpediente, XSD_STRING, null, null,
'IdExpediente', self::$NAMESPACE_CAT_PET));
128 $TitularWSRequest->append(
new SoapVar($this->tipoDocumentacion, XSD_STRING, null, null,
'TipoDocumentacion', self::$NAMESPACE_CAT_PET));
129 $TitularWSRequest->append(
new SoapVar($this->documentacion, XSD_STRING, null, null,
'Documentacion', self::$NAMESPACE_CAT_PET));
130 if (!is_null($this->nombreCompleto)) {
131 $TitularWSRequest->append(
new SoapVar($this->nombreCompleto, XSD_STRING, null, null,
'NombreCompleto', self::$NAMESPACE_CAT_PET));
133 if (!is_null($this->nombre)) {
134 $TitularWSRequest->append(
new SoapVar($this->nombre, XSD_STRING, null, null,
'Nombre', self::$NAMESPACE_CAT_PET));
136 if (!is_null($this->apellido1)) {
137 $TitularWSRequest->append(
new SoapVar($this->apellido1, XSD_STRING, null, null,
'Apellido1', self::$NAMESPACE_CAT_PET));
139 if (!is_null($this->apellido2)) {
140 $TitularWSRequest->append(
new SoapVar($this->apellido2, XSD_STRING, null, null,
'Apellido2', self::$NAMESPACE_CAT_PET));
145 $TransmisionWSRequest->append(
new SoapVar($CodigoCertificado, XSD_STRING, null, null,
'CodigoCertificado', self::$NAMESPACE_CAT_PET));
146 $TransmisionWSRequest->append(
new SoapVar($IdSolicitud, XSD_STRING, null, null,
'IdSolicitud', self::$NAMESPACE_CAT_PET));
150 $DatosGenericosWSRequest->append(
new SoapVar($EmisorWSRequest, SOAP_ENC_OBJECT,null,null,
'Emisor', self::$NAMESPACE_CAT_PET));
151 $DatosGenericosWSRequest->append(
new SoapVar($SolicitanteWSRequest, SOAP_ENC_OBJECT,null,null,
'Solicitante', self::$NAMESPACE_CAT_PET));
152 $DatosGenericosWSRequest->append(
new SoapVar($TitularWSRequest, SOAP_ENC_OBJECT,null,null,
'Titular', self::$NAMESPACE_CAT_PET));
153 $DatosGenericosWSRequest->append(
new SoapVar($TransmisionWSRequest, SOAP_ENC_OBJECT,null,null,
'Transmision', self::$NAMESPACE_CAT_PET));
156 $SolicitudTransmisionWSRequest =
new ArrayObject();
157 $SolicitudTransmisionWSRequest->append(
new SoapVar($DatosGenericosWSRequest, SOAP_ENC_OBJECT,null,null,
'DatosGenericos', self::$NAMESPACE_CAT_PET));
160 if (!is_null($this->oEspecifico)) {
161 $datosEspecificosSoapVar = $this->oEspecifico->toSoap();
162 $SolicitudTransmisionWSRequest->append($datosEspecificosSoapVar);
167 return new SoapVar($SolicitudTransmisionWSRequest, SOAP_ENC_OBJECT,null,null,
'SolicitudTransmision', self::$NAMESPACE_CAT_PET);
178 private static $NAMESPACE_SCSP_ESPECIFICO =
'http://intermediacion.redsara.es/scsp/esquemas/datosespecificos';
179 private static $NAMESPACE_CAT_PET =
'http://intermediacion.redsara.es/scsp/esquemas/V3/peticion';
180 private static $NAMESPACE_CAT_SR =
'http://intermediacion.redsara.es/scsp/esquemas/V3/solicitudRespuesta';
183 private function _doPeticion($idPeticion, $numElementos, $timestamp, $codigoCertificado, $ns = null) {
185 $ns = self::$NAMESPACE_CAT_PET;
190 $AtrWSLvl->append(
new SoapVar($idPeticion, XSD_STRING, null, null,
'IdPeticion', $ns));
191 $AtrWSLvl->append(
new SoapVar($numElementos, XSD_INTEGER , null, null,
'NumElementos', $ns));
192 $AtrWSLvl->append(
new SoapVar($timestamp->format(DateTime::ATOM), XSD_STRING, null, null,
'TimeStamp', $ns));
193 $AtrWSLvl->append(
new SoapVar($codigoCertificado, XSD_STRING, null, null,
'CodigoCertificado', $ns));
195 return new SoapVar($AtrWSLvl, SOAP_ENC_OBJECT, null, null,
'Atributos', $ns);
199 public function doGeneral($IdPeticion, $TimeStamp, $CodigoCertificado, $oSolicitud)
207 $AtrSoapVar = $this->_doPeticion($IdPeticion, 1, $TimeStamp, $CodigoCertificado);
210 $SolicitudTransmisionSoapVar = $oSolicitud->toSoap($IdPeticion, $CodigoCertificado, null);
214 $SolicitudesWSRequest->append($SolicitudTransmisionSoapVar);
218 $bodyWSRequest->append($AtrSoapVar);
219 $bodyWSRequest->append(
new SoapVar($SolicitudesWSRequest, SOAP_ENC_OBJECT, null, null,
'Solicitudes', self::$NAMESPACE_CAT_PET));
221 return $bodyWSRequest;
226 public function catastroBienesPeticion($IdPeticion, $TimeStamp, $CodigoCertificado, $vSolicitudes)
234 $NumElementos = count($vSolicitudes);
239 for ($iPet=0; $iPet < $NumElementos; $iPet++) {
240 $oSolicitud = $vSolicitudes[$iPet];
243 $SolicitudTransmisionSoapVar = $oSolicitud->toSoap($IdPeticion, $CodigoCertificado, $iPet);
246 $SolicitudesWSRequest->append($SolicitudTransmisionSoapVar);
250 $AtrSoapVar = $this->_doPeticion($IdPeticion, $NumElementos, $TimeStamp, $CodigoCertificado);
254 $bodyWSRequest->append($AtrSoapVar);
255 $bodyWSRequest->append(
new SoapVar($SolicitudesWSRequest, SOAP_ENC_OBJECT,null,null,
'Solicitudes', self::$NAMESPACE_CAT_PET));
257 return $bodyWSRequest;
260 public function catastroBienesRespuesta($IdPeticion, $TimeStamp, $CodigoCertificado, $NumElementos)
263 $AtrSoapVar = $this->_doPeticion($IdPeticion, $NumElementos, $TimeStamp, $CodigoCertificado, self::$NAMESPACE_CAT_SR);
267 $bodyWSRequest->append($AtrSoapVar);
269 return $bodyWSRequest;
278 private static $NAMESPACE_CAT_ESP =
'http://intermediacion.redsara.es/scsp/esquemas/datosespecificos';
280 private $esRefCatastral =
true;
293 private function __construct($esRefCatastral) {
294 $this->esRefCatastral = $esRefCatastral;
297 static public function referenciaCatastral($pc1, $pc2, $car = null, $cc1 = null, $cc2 = null) {
309 static public function referenciaRustica($cp, $cm, $cpo, $cpa = null) {
320 public function toSoap() {
321 $datosEntradaLvl = null;
322 if ($this->esRefCatastral) {
323 $datosEntradaLvl = $this->_toSoap_RefCatastral();
325 $datosEntradaLvl = $this->_toSoap_RefRustica();
329 $datosEspLvl->append(
new SoapVar($datosEntradaLvl, SOAP_ENC_OBJECT, null, null,
'DatosEntrada', self::$NAMESPACE_CAT_ESP));
331 $mainSoapVar =
new SoapVar($datosEspLvl, SOAP_ENC_OBJECT, null, null,
'DatosEspecificos', self::$NAMESPACE_CAT_ESP);
340 private function _toSoap_RefCatastral() {
342 $refCatLvl->append(
new SoapVar($this->pc1, XSD_STRING, null, null,
'pc1', self::$NAMESPACE_CAT_ESP));
343 $refCatLvl->append(
new SoapVar($this->pc2, XSD_STRING, null, null,
'pc2', self::$NAMESPACE_CAT_ESP));
344 if (!is_null($this->car)) {
345 $refCatLvl->append(
new SoapVar($this->car, XSD_STRING, null, null,
'car', self::$NAMESPACE_CAT_ESP));
347 if (!is_null($this->cc1)) {
348 $refCatLvl->append(
new SoapVar($this->cc1, XSD_STRING, null, null,
'cc1', self::$NAMESPACE_CAT_ESP));
350 if (!is_null($this->cc2)) {
351 $refCatLvl->append(
new SoapVar($this->cc2, XSD_STRING, null, null,
'cc2', self::$NAMESPACE_CAT_ESP));
355 $datosEntradaLvl->append(
new SoapVar($refCatLvl, SOAP_ENC_OBJECT,null,null,
'referenciaCatastral', self::$NAMESPACE_CAT_ESP));
357 return $datosEntradaLvl;
360 private function _toSoap_RefRustica() {
362 $loINELvl->append(
new SoapVar($this->cp, XSD_STRING, null, null,
'cp', self::$NAMESPACE_CAT_ESP));
363 $loINELvl->append(
new SoapVar($this->cm, XSD_STRING, null, null,
'cm', self::$NAMESPACE_CAT_ESP));
366 $cppLvl->append(
new SoapVar($this->cpo, XSD_STRING, null, null,
'cpo', self::$NAMESPACE_CAT_ESP));
367 if (!is_null($this->cpa)) {
368 $cppLvl->append(
new SoapVar($this->cpa, XSD_STRING, null, null,
'cpa', self::$NAMESPACE_CAT_ESP));
372 $refRustLvl->append(
new SoapVar($loINELvl, SOAP_ENC_OBJECT, null, null,
'localizacionINE', self::$NAMESPACE_CAT_ESP));
373 $refRustLvl->append(
new SoapVar($cppLvl, SOAP_ENC_OBJECT, null, null,
'cpp', self::$NAMESPACE_CAT_ESP));
376 $datosEntradaLvl->append(
new SoapVar($refRustLvl, SOAP_ENC_OBJECT,null,null,
'referenciaRustica', self::$NAMESPACE_CAT_ESP));
378 return $datosEntradaLvl;