Ejemplo n.º 1
0
 /**
  * 
  * @param string $id
  * @param int $resultType
  * @return \Dispo\Data\VariedadData|NULL|array
  */
 public function consultar($id, $resultType = \Application\Constants\ResultType::OBJETO)
 {
     switch ($resultType) {
         case \Application\Constants\ResultType::OBJETO:
             $VariedadData = new VariedadData();
             $sql = ' SELECT variedad.* ' . ' FROM variedad ' . ' WHERE variedad.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) {
                 $VariedadData->setId($row['id']);
                 $VariedadData->setNombre($row['nombre']);
                 $VariedadData->setNombreTecnico($row['nombre_tecnico']);
                 $VariedadData->setCalidadVariedadId($row['calidad_variedad_id']);
                 $VariedadData->setColor($row['color']);
                 $VariedadData->setColor2($row['color2']);
                 $VariedadData->setGrupoColorId($row['grupo_color_id']);
                 $VariedadData->setColorBase($row['colorbase']);
                 $VariedadData->setSolido($row['solido']);
                 $VariedadData->setEsReal($row['es_real']);
                 $VariedadData->setEstProductoEspecial($row['est_producto_especial']);
                 $VariedadData->setMensaje($row['mensaje']);
                 $VariedadData->setCultivada($row['cultivada']);
                 $VariedadData->setCicloProd($row['ciclo_prod']);
                 $VariedadData->setObtentorId($row['obtentor_id']);
                 $VariedadData->setTamanoBunchId($row['tamano_bunch_id']);
                 $VariedadData->setColorVentasId($row['color_ventas_id']);
                 $VariedadData->setUrlFicha($row['url_ficha']);
                 $VariedadData->setEstado($row['estado']);
                 $VariedadData->setFecIngreso($row['fec_ingreso']);
                 $VariedadData->setFecModifica($row['fec_modifica']);
                 $VariedadData->setUsuarioIngId($row['usuario_ing_id']);
                 $VariedadData->setUsuarioModId($row['usuario_mod_id']);
                 $VariedadData->setSincronizado($row['sincronizado']);
                 $VariedadData->setFecSincronizado($row['fec_sincronizado']);
                 return $VariedadData;
             } else {
                 return null;
             }
             //end if
             break;
         case \Application\Constants\ResultType::MATRIZ:
             $sql = ' SELECT variedad.*, usuario_ing.username as usuario_ing_user_name, usuario_mod.username as usuario_mod_user_name  ' . ' FROM variedad LEFT JOIN usuario as usuario_ing ' . '                           ON usuario_ing.id = variedad.usuario_ing_id ' . '					 LEFT JOIN usuario as usuario_mod ' . '                           ON usuario_mod.id = variedad.usuario_mod_id ' . ' WHERE variedad.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();
         $VariedadData = new VariedadData();
         $VariedadBO = new VariedadBO();
         $ObtentorBO = new ObtentorBO();
         $ColoresBO = new ColoresBO();
         $CalidadVariedadBO = new CalidadVariedadBO();
         $TamanoBunchBO = new TamanoBunchBO();
         $ColorVentasBO = new ColorVentasBO();
         $VariedadBO->setEntityManager($EntityManagerPlugin->getEntityManager());
         $ColoresBO->setEntityManager($EntityManagerPlugin->getEntityManager());
         $CalidadVariedadBO->setEntityManager($EntityManagerPlugin->getEntityManager());
         $ObtentorBO->setEntityManager($EntityManagerPlugin->getEntityManager());
         $TamanoBunchBO->setEntityManager($EntityManagerPlugin->getEntityManager());
         $ColorVentasBO->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
         $VariedadData->setId($json['id']);
         $VariedadData->setNombre($json['nombre']);
         $VariedadData->setNombreTecnico($json['nombre_tecnico']);
         $VariedadData->setCalidadVariedadId($json['calidad_variedad_id']);
         $VariedadData->setColor($json['color']);
         $VariedadData->setColor2($json['color2']);
         $VariedadData->setGrupoColorId($json['grupo_color_id']);
         $VariedadData->setColorBase($json['colorbase']);
         $VariedadData->setSolido($json['solido']);
         $VariedadData->setEsReal($json['es_real']);
         $VariedadData->setEstProductoEspecial($json['est_producto_especial']);
         $VariedadData->setMensaje($json['mensaje']);
         $VariedadData->setCultivada($json['cultivada']);
         $VariedadData->setCicloProd($json['ciclo_prod']);
         $VariedadData->setObtentorId($json['obtentor_id']);
         $VariedadData->setColorVentasId($json['color_ventas_id']);
         $VariedadData->setUrlFicha($json['url_ficha']);
         $VariedadData->setTamanoBunchId($json['tamano_bunch_id']);
         $VariedadData->setEstado($json['estado']);
         switch ($accion) {
             case 'I':
                 $VariedadData->setUsuarioIngId($usuario_id);
                 $VariedadData->setProductoId('ROS');
                 $result = $VariedadBO->ingresar($VariedadData);
                 break;
             case 'M':
                 $VariedadData->setUsuarioModId($usuario_id);
                 $result = $VariedadBO->modificar($VariedadData);
                 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') {
         } else {
             $row = null;
         }
         //end if
         //Retorna la informacion resultante por JSON
         $row = null;
         $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'], "");
             $response->cbo_color_base = $ColoresBO->getCombo($row['colorbase'], "<Seleccione>");
         } else {
             $response->row = null;
             $response->cbo_estado = '';
             $response->cbo_color_base = '';
         }
         //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;
     }
 }