public function grabarusuarionormaldataAction() { try { $SesionUsuarioPlugin = $this->SesionUsuarioPlugin(); $usuario_id = $SesionUsuarioPlugin->getUsuarioId(); $EntityManagerPlugin = $this->EntityManagerPlugin(); $UsuarioData = new UsuarioData(); $UsuarioBO = new UsuarioBO(); //$PerfilBO = new PerfilBO(); $GrupoDispoCabBO = new GrupoDispoCabBO(); $GrupoPrecioCabBO = new GrupoPrecioCabBO(); $InventarioBO = new InventarioBO(); $CalidadBO = new CalidadBO(); $UsuarioBO->setEntityManager($EntityManagerPlugin->getEntityManager()); $GrupoDispoCabBO->setEntityManager($EntityManagerPlugin->getEntityManager()); $GrupoPrecioCabBO->setEntityManager($EntityManagerPlugin->getEntityManager()); $InventarioBO->setEntityManager($EntityManagerPlugin->getEntityManager()); $CalidadBO->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 $UsuarioData->setId($json['id']); $UsuarioData->setClienteId($json['cliente_id']); $UsuarioData->setNombre($json['nombre']); $UsuarioData->setUsername($json['username']); $UsuarioData->setPassword($json['password']); $UsuarioData->setEmail($json['email']); $UsuarioData->setPerfilId(\Application\Constants\Perfil::ID_CLIENTE); $UsuarioData->setEstado($json['estado']); $UsuarioData->setGrupoDispoCabId($json['grupo_dispo_cab_id']); $UsuarioData->setGrupoPrecioCabId($json['grupo_precio_cab_id']); $UsuarioData->setInventarioId($json['inventario_id']); $UsuarioData->setCalidadId($json['calidad_id']); $response = new \stdClass(); switch ($accion) { case 'I': $UsuarioData->setUsuarioIngId($usuario_id); $result = $UsuarioBO->ingresar($UsuarioData); break; case 'M': $UsuarioData->setUsuarioModId($usuario_id); $result = $UsuarioBO->modificar($UsuarioData); 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 = $UsuarioBO->consultar($json['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_perfil_id = $PerfilBO->getComboPerfilRestringido($row['perfil_id'], " "); $response->cbo_cbo_grupo_dispo = $GrupoDispoCabBO->getComboGrupoDispo($row['grupo_dispo_cab_id'], " "); $response->cbo_estado = \Application\Classes\ComboGeneral::getComboEstado($row['estado'], ""); } else { $response->row = null; $response->cbo_tipo = ''; $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; } }
/** * Consultar * * @param string $id * @param int $resultType * @return \Dispo\Data\UsuarioData|NULL|array */ public function consultar($id, $resultType = \Application\Constants\ResultType::OBJETO) { switch ($resultType) { case \Application\Constants\ResultType::OBJETO: $UsuarioData = new UsuarioData(); $sql = ' SELECT usuario.* ' . ' FROM usuario ' . ' WHERE usuario.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) { $UsuarioData->setId($row['id']); $UsuarioData->setNombre($row['nombre']); $UsuarioData->setUsername($row['username']); $UsuarioData->setPassword($row['password']); $UsuarioData->setEmail($row['email']); $UsuarioData->setPerfilId($row['perfil_id']); $UsuarioData->setClienteId($row['cliente_id']); $UsuarioData->setLoginFox($row['login_fox']); $UsuarioData->setEstado($row['estado']); $UsuarioData->setGrupoDispoCabId($row['grupo_dispo_cab_id']); $UsuarioData->setGrupoPrecioCabId($row['grupo_precio_cab_id']); $UsuarioData->setInventarioId($row['inventario_id']); $UsuarioData->setCalidadId($row['calidad_id']); $UsuarioData->setFecIngreso($row['fec_ingreso']); $UsuarioData->setFecModifica($row['fec_modifica']); $UsuarioData->setUsuarioIngId($row['usuario_ing_id']); $UsuarioData->SetUsuarioModId($row['usuario_mod_id']); return $UsuarioData; } else { return null; } //end if break; case \Application\Constants\ResultType::MATRIZ: $sql = ' SELECT usuario.*, usuario_ing.username as usuario_ing_user_name, usuario_mod.username as usuario_mod_user_name, ' . ' cliente.nombre cliente_nombre, ' . ' calidad.clasifica_fox, ' . ' inventario.punto_corte, ' . ' grupo_precio_cab.inventario_id as grupo_precio_cab_inventario_id, ' . ' grupo_precio_cab.calidad_id as grupo_precio_cab_calidad_id, ' . ' grupo_dispo_cab.inventario_id as grupo_dispo_cab_inventario_id, ' . ' grupo_dispo_cab.calidad_id as grupo_dispo_cab_calidad_id ' . ' FROM usuario LEFT JOIN usuario as usuario_ing ' . ' ON usuario_ing.id = usuario.usuario_ing_id ' . ' LEFT JOIN usuario as usuario_mod ' . ' ON usuario_mod.id = usuario.usuario_mod_id ' . ' LEFT JOIN cliente ' . ' ON cliente.id = usuario.cliente_id' . ' LEFT JOIN grupo_precio_cab ' . ' ON grupo_precio_cab.id = usuario.grupo_precio_cab_id ' . ' LEFT JOIN grupo_dispo_cab ' . ' ON grupo_dispo_cab.id = usuario.grupo_dispo_cab_id ' . ' LEFT JOIN inventario ' . ' ON inventario.id = usuario.inventario_id' . ' LEFT JOIN calidad ' . ' ON calidad.id = usuario.calidad_id ' . ' WHERE usuario.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 }