/** * Modificar * * @param TransportadoraData $TransportadoraData * @return array */ function modificar(TransportadoraData $TransportadoraData) { $this->getEntityManager()->getConnection()->beginTransaction(); try { $TransportadoraDAO = new TransportadoraDAO(); $TransportadoraDAO->setEntityManager($this->getEntityManager()); //$TransportadoraData2 = $TransportadoraDAO->consultar($TransportadoraData->getId()); $result = $TransportadoraDAO->consultarDuplicado('M', $TransportadoraData->getId(), $TransportadoraData->getNombre()); $id = $TransportadoraData->getId(); $nombre = $TransportadoraData->getNombre(); if (!empty($result)) { $result['validacion_code'] = 'NO-EXISTS'; $result['respuesta_mensaje'] = 'El registro existe, no puede ser moficado!!'; } else { $id = $TransportadoraDAO->modificar($TransportadoraData); $result['validacion_code'] = 'OK'; $result['respuesta_mensaje'] = ''; } //end if $this->getEntityManager()->getConnection()->commit(); return $result; } catch (Exception $e) { $this->getEntityManager()->getConnection()->rollback(); $this->getEntityManager()->close(); throw $e; } }
/** * Consultar * * @param string $id * @param int $resultType * @return \Dispo\Data\TransportadoraData|NULL|array */ public function consultar($id, $resultType = \Application\Constants\ResultType::OBJETO) { switch ($resultType) { case \Application\Constants\ResultType::OBJETO: $TransportadoraData = new TransportadoraData(); $sql = ' SELECT transportadora.* ' . ' FROM transportadora ' . ' WHERE transportadora.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) { $TransportadoraData->setId($row['id']); $TransportadoraData->setNombre($row['nombre']); $TransportadoraData->setTipo($row['tipo']); $TransportadoraData->setEstado($row['estado']); $TransportadoraData->setFecIngreso($row['fec_ingreso']); $TransportadoraData->setFecModifica($row['fec_modifica']); $TransportadoraData->setUsuarioIngId($row['usuario_ing_id']); $TransportadoraData->setUsuarioModId($row['usuario_mod_id']); $TransportadoraData->setSinronizado($row['sincronizado']); $TransportadoraData->setFecSincronizado($row['fec_sincronizado']); return $TransportadoraData; } else { return null; } //end if break; case \Application\Constants\ResultType::MATRIZ: $sql = ' SELECT transportadora.*, usuario_ing.username as usuario_ing_user_name, usuario_mod.username as usuario_mod_user_name ' . ' FROM transportadora LEFT JOIN usuario as usuario_ing ' . ' ON usuario_ing.id = transportadora.usuario_ing_id ' . ' LEFT JOIN usuario as usuario_mod ' . ' ON usuario_mod.id = transportadora.usuario_mod_id ' . ' WHERE transportadora.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 }
public function grabardataAction() { try { $SesionUsuarioPlugin = $this->SesionUsuarioPlugin(); $usuario_id = $SesionUsuarioPlugin->getUsuarioId(); $EntityManagerPlugin = $this->EntityManagerPlugin(); $TransportadoraData = new TransportadoraData(); $TransportadoraBO = new TransportadoraBO(); $TransportadoraBO->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 $TransportadoraData->setId($json['id']); $TransportadoraData->setNombre($json['nombre']); $TransportadoraData->setTipo($json['tipo']); $TransportadoraData->setEstado($json['estado']); $response = new \stdClass(); switch ($accion) { case 'I': $TransportadoraData->setUsuarioIngId($usuario_id); $result = $TransportadoraBO->ingresar($TransportadoraData); break; case 'M': $TransportadoraData->setUsuarioModId($usuario_id); $result = $TransportadoraBO->modificar($TransportadoraData); 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 = $TransportadoraBO->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_tipo = $TransportadoraBO->getComboTipo($row['tipo'], " "); $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; } }