public function grabardataAction()
 {
     try {
         $SesionUsuarioPlugin = $this->SesionUsuarioPlugin();
         $usuario_id = $SesionUsuarioPlugin->getUsuarioId();
         $EntityManagerPlugin = $this->EntityManagerPlugin();
         $ClienteData = new ClienteData();
         $ClienteBO = new ClienteBO();
         $ClienteBO->setEntityManager($EntityManagerPlugin->getEntityManager());
         $respuesta = $SesionUsuarioPlugin->isLoginAdmin();
         if ($respuesta == false) {
             return false;
         }
         $body = $this->getRequest()->getContent();
         $json = json_decode($body, true);
         $accion = $json['accion'];
         //I, M
         $ClienteData->setId($json['cliente_id']);
         $ClienteData->setNombre($json['nombre']);
         $ClienteData->setAbreviatura($json['abreviatura']);
         //$ClienteData->setGrupoPrecioCabId	($json['grupo_precio_cab_id']);
         $ClienteData->setDireccion($json['direccion']);
         $ClienteData->setCiudad($json['ciudad']);
         $ClienteData->setEstadosId($json['estados_id']);
         $ClienteData->setEstadoNombre($json['estado_nombre']);
         $ClienteData->setPaisId($json['pais_id']);
         $ClienteData->setCodigoPostal($json['codigo_postal']);
         $ClienteData->setComprador($json['comprador']);
         $ClienteData->setTelefono1($json['telefono1']);
         $ClienteData->setTelefono1Ext($json['telefono1_ext']);
         $ClienteData->setTelefono2($json['telefono2']);
         $ClienteData->setTelefono2Ext($json['telefono2_ext']);
         $ClienteData->setFax1($json['fax1']);
         $ClienteData->setFax1Ext($json['fax1_ext']);
         $ClienteData->setFax2($json['fax2']);
         $ClienteData->setFax2Ext($json['fax2_ext']);
         $ClienteData->setUsuarioVendedorId($json['usuario_vendedor_id']);
         $ClienteData->setTcLimiteCredito($json['tc_limite_credito']);
         $ClienteData->setTcInteres($json['tc_interes']);
         $ClienteData->setEstCreditoSuspendido($json['est_credito_suspendido']);
         $ClienteData->setCreditoSuspendidoRazon($json['credito_suspendido_razon']);
         //$ClienteData->setEmail				($json['email']);
         $ClienteData->setContacto($json['contacto']);
         $ClienteData->setClienteFacturaId($json['cliente_factura_id']);
         $ClienteData->setTelefonoFact1($json['telefono_fact1']);
         $ClienteData->setTelefonoFact1Ext($json['telefono_fact1_ext']);
         $ClienteData->setTelefonoFact2($json['telefono_fact2']);
         $ClienteData->setTelefonoFact2Ext($json['telefono_fact2_ext']);
         $ClienteData->setFaxFact1($json['fax_fact1']);
         $ClienteData->setFaxFact1Ext($json['fax_fact1_ext']);
         $ClienteData->setFaxFact2($json['fax_fact2']);
         $ClienteData->setFaxFact2Ext($json['fax_fact2_ext']);
         $ClienteData->setEmailFactura($json['email_factura']);
         $ClienteData->setPaisFUE($json['pais_fue']);
         $ClienteData->setFacturacionSRI($json['facturacion_sri']);
         $ClienteData->setPorcIva($json['porc_iva']);
         $ClienteData->setEstado($json['estado']);
         $ClienteData->setIncobrable($json['incobrable']);
         $ClienteData->setClienteEspecial($json['cliente_especial']);
         $ClienteData->setEnviaEstadoCta($json['envia_estadocta']);
         $ClienteData->setFormatoEstadoCta($json['formato_estado_cta']);
         $ClienteData->setTipoEnvioEstCta($json['tipo_envio_estcta']);
         $ClienteData->setDiaSemana($json['dia_semana']);
         $ClienteData->setDiaCalFecha1($json['diacal_fecha1']);
         $ClienteData->setDiaCalFecha2($json['diacal_fecha2']);
         $ClienteData->setInmediato($json['inmediato']);
         $response = new \stdClass();
         switch ($accion) {
             case 'I':
                 $ClienteData->setUsuarioIngId($usuario_id);
                 $result = $ClienteBO->ingresar($ClienteData);
                 break;
             case 'M':
                 $ClienteData->setUsuarioModId($usuario_id);
                 $result = $ClienteBO->modificar($ClienteData);
                 break;
             default:
                 $result['validacion_code'] = 'ERROR';
                 $result['respuesta_mensaje'] = 'ACCESO NO VALIDO';
                 break;
         }
         //end switch
         //Se consulta el registro siempre y cuando el validacion_code sea OK
         if ($result['validacion_code'] == 'OK') {
             $row = $ClienteBO->consultar($json['cliente_id'], \Application\Constants\ResultType::MATRIZ);
         } else {
             $row = null;
         }
         //end if
         //Retorna la informacion resultante por JSON
         $response = new \stdClass();
         $response->respuesta_code = 'OK';
         $response->validacion_code = $result['validacion_code'];
         $response->respuesta_mensaje = $result['respuesta_mensaje'];
         if ($row) {
             $response->row = $row;
             $response->cbo_estado = \Application\Classes\ComboGeneral::getComboEstado($row['estado'], "");
         } else {
             $response->row = null;
             $response->cbo_estado = '';
         }
         //end if
         $json = new JsonModel(get_object_vars($response));
         return $json;
         //false
     } catch (\Exception $e) {
         $excepcion_msg = utf8_encode($this->ExcepcionPlugin()->getMessageFormat($e));
         $response = $this->getResponse();
         $response->setStatusCode(500);
         $response->setContent($excepcion_msg);
         return $response;
     }
 }
Ejemplo n.º 2
0
 /**
  * Consultar
  * 
  * @param string $id
  * @param int $resultType
  * @return \Dispo\Data\ClienteData|NULL|array
  */
 public function consultar($id, $resultType = \Application\Constants\ResultType::OBJETO)
 {
     switch ($resultType) {
         case \Application\Constants\ResultType::OBJETO:
             $ClienteData = new ClienteData();
             $sql = ' SELECT cliente.* ' . ' FROM cliente ' . ' WHERE cliente.id = :id ';
             $stmt = $this->getEntityManager()->getConnection()->prepare($sql);
             $stmt->bindValue(':id', $id);
             $stmt->execute();
             $row = $stmt->fetch();
             //Se utiliza el fecth por que es un registro
             if ($row) {
                 $ClienteData->setId($row['id']);
                 $ClienteData->setNombre($row['nombre']);
                 $ClienteData->setAbreviatura($row['abreviatura']);
                 //$ClienteData->setGrupoPrecioCabId		($row['grupo_precio_cab_id']);
                 $ClienteData->setDireccion($row['direccion']);
                 $ClienteData->setCiudad($row['ciudad']);
                 $ClienteData->setEstadosId($row['estados_id']);
                 $ClienteData->setEstadoNombre($row['estado_nombre']);
                 $ClienteData->setPaisId($row['pais_id']);
                 $ClienteData->setCodigoPostal($row['codigo_postal']);
                 $ClienteData->setComprador($row['comprador']);
                 $ClienteData->setTelefono1($row['telefono1']);
                 $ClienteData->setTelefono1Ext($row['telefono1_ext']);
                 $ClienteData->setTelefono2($row['telefono2']);
                 $ClienteData->setTelefono2Ext($row['telefono2_ext']);
                 $ClienteData->setFax1($row['fax1']);
                 $ClienteData->setFax1Ext($row['fax1_ext']);
                 $ClienteData->setFax2($row['fax2']);
                 $ClienteData->setFax2Ext($row['fax2_ext']);
                 //$ClienteData->setEmail                  ($row['email']);
                 $ClienteData->setUsuarioVendedorId($row['usuario_vendedor_id']);
                 $ClienteData->setTcLimiteCredito($row['tc_limite_credito']);
                 $ClienteData->setTcInteres($row['tc_interes']);
                 $ClienteData->setEstCreditoSuspendido($row['est_credito_suspendido']);
                 $ClienteData->setCreditoSuspendidoRazon($row['credito_suspendido_razon']);
                 $ClienteData->setContacto($row['contacto']);
                 $ClienteData->setClienteFacturaId($row['cliente_factura_id']);
                 $ClienteData->setTelefonoFact1($row['telefono_fact1']);
                 $ClienteData->setTelefonoFact1Ext($row['telefono_fact1_ext']);
                 $ClienteData->setTelefonoFact2($row['telefono_fact2']);
                 $ClienteData->setTelefonoFact2Ext($row['telefono_fact2_ext']);
                 $ClienteData->setFaxFact1($row['fax_fact1']);
                 $ClienteData->setFaxFact1Ext($row['fax_fact1_ext']);
                 $ClienteData->setFaxFact2($row['fax_fact2']);
                 $ClienteData->setFaxFact2Ext($row['fax_fact2_ext']);
                 $ClienteData->setEmailFactura($row['email_factura']);
                 $ClienteData->setPaisFUE($row['pais_fue']);
                 $ClienteData->setFacturacionSRI($row['facturacion_sri']);
                 $ClienteData->setPorcIva($row['porc_iva']);
                 $ClienteData->setEstado($row['estado']);
                 $ClienteData->setIncobrable($row['incobrable']);
                 $ClienteData->setClienteEspecial($row['cliente_especial']);
                 $ClienteData->setEnviaEstadoCta($row['envia_estadocta']);
                 $ClienteData->setFormatoEstadoCta($row['formato_estado_cta']);
                 $ClienteData->setTipoEnvioEstCta($row['tipo_envio_estcta']);
                 $ClienteData->setDiaSemana($row['dia_semana']);
                 $ClienteData->setDiaCalFecha1($row['diacal_fecha1']);
                 $ClienteData->setDiaCalFecha2($row['diacal_fecha2']);
                 $ClienteData->setInmediato($row['inmediato']);
                 $ClienteData->setTipoCartera($row['tipo_cartera']);
                 //$ClienteData->setEstIncobrable      	($row['est_incobrable']);
                 $ClienteData->setTipoPersona($row['tipo_persona']);
                 $ClienteData->setRuc($row['ruc']);
                 $ClienteData->setCiaf($row['ciaf']);
                 $ClienteData->setMoneda($row['moneda']);
                 $ClienteData->setTcFormaPago($row['tc_forma_pago']);
                 $ClienteData->setTcNroCuotas($row['tc_nro_cuotas']);
                 $ClienteData->setTcPlazo($row['tc_plazo']);
                 $ClienteData->setTc1erCierre($row['tc_1er_cierre']);
                 $ClienteData->setTc1erCierrePago($row['tc_1er_cierre_pago']);
                 $ClienteData->setTc2doCierre($row['tc_2do_cierre']);
                 $ClienteData->setTc2doCierrePago($row['tc_2do_cierre_pago']);
                 $ClienteData->setFecIngreso($row['fec_ingreso']);
                 $ClienteData->setFecModifica($row['fec_modifica']);
                 $ClienteData->setUsuarioIngId($row['usuario_ing_id']);
                 $ClienteData->setUsuarioModId($row['usuario_mod_id']);
                 $ClienteData->setSincronizado($row['sincronizado']);
                 $ClienteData->setFecSincronizado($row['fec_sincronizado']);
                 return $ClienteData;
             } else {
                 return null;
             }
             //end if
             break;
         case \Application\Constants\ResultType::MATRIZ:
             $sql = ' SELECT cliente.*, usuario_ing.username as usuario_ing_user_name, usuario_mod.username as usuario_mod_user_name,  ' . '		 usuario_vendedor.username as usuario_vendededor_name, usuario_vendedor.email as usuario_vendedor_email ' . ' FROM cliente LEFT JOIN usuario as usuario_ing ' . '                           ON usuario_ing.id = cliente.usuario_ing_id ' . '					 LEFT JOIN usuario as usuario_mod ' . '                           ON usuario_mod.id = cliente.usuario_mod_id ' . '					 LEFT JOIN usuario as usuario_vendedor' . '							ON usuario_vendedor.id = cliente.usuario_vendedor_id ' . ' WHERE cliente.id = :id ';
             $stmt = $this->getEntityManager()->getConnection()->prepare($sql);
             $stmt->bindValue(':id', $id);
             $stmt->execute();
             $row = $stmt->fetch();
             //Se utiliza el fecth por que es un registro
             return $row;
             break;
     }
     //end switch
 }