/** * * @param ArrTipoCajaMatrizData[] $ArrTipoCajaMatrizData * @throws Exception * @return string */ function registrarCajaMatriz($ArrTipoCajaMatrizData) { $this->getEntityManager()->getConnection()->beginTransaction(); try { $TipoCajaMatrizData = new TipoCajaMatrizData(); $TipoCajaMatrizDAO = new TipoCajaMatrizDAO(); $TipoCajaMatrizDAO->setEntityManager($this->getEntityManager()); //$TipoCajaMatrizData = new TipoCajaMatrizData(); foreach ($ArrTipoCajaMatrizData as $TipoCajaMatrizData) { $TipoCajaMatrizData2 = $TipoCajaMatrizDAO->consultarPorClaveAlterna($TipoCajaMatrizData->getInventarioId(), $TipoCajaMatrizData->getTipoCajaId(), $TipoCajaMatrizData->getTallosxBunch(), $TipoCajaMatrizData->getTamanoBunchId(), $TipoCajaMatrizData->getGradoId()); if (!empty($TipoCajaMatrizData2)) { //SI EXISTE EL REGISTRO LO ACTUALIZA $clave_alterna = $TipoCajaMatrizData2->getId(); $TipoCajaMatrizData->setId($clave_alterna); $id = $TipoCajaMatrizDAO->modificar($TipoCajaMatrizData); } else { //SI NO EXISTE EL REGISTRO LO INSERTA $id = $TipoCajaMatrizDAO->ingresar($TipoCajaMatrizData); } //end if } //end foreach $this->getEntityManager()->getConnection()->commit(); $result['validacion_code'] = 'OK'; $result['respuesta_mensaje'] = 'Registros procesados correctamente'; return $result; } catch (Exception $e) { $this->getEntityManager()->getConnection()->rollback(); $this->getEntityManager()->close(); throw $e; } //end try }
/** * Modificar * * @param TipoCajaMatrizData $TipoCajaMatrizData * @return array Retorna un Array $key el cual contiene el id */ public function modificar(TipoCajaMatrizData $TipoCajaMatrizData) { $key = array('id' => $TipoCajaMatrizData->getId()); $record = array('inventario_id' => $TipoCajaMatrizData->getInventarioId(), 'tipo_caja_id' => $TipoCajaMatrizData->getTipoCajaId(), 'tallos_x_bunch' => $TipoCajaMatrizData->getTallosxBunch(), 'tamano_bunch_id' => $TipoCajaMatrizData->getTamanoBunchId(), 'grado_id' => $TipoCajaMatrizData->getGradoId(), 'unds_bunch' => $TipoCajaMatrizData->getUndsBunch(), 'fec_ingreso' => \Application\Classes\Fecha::getFechaHoraActualServidor(), 'fec_modifica' => \Application\Classes\Fecha::getFechaHoraActualServidor(), 'usuario_ing_id' => $TipoCajaMatrizData->getUsuarioIngId(), 'usuario_mod_id' => $TipoCajaMatrizData->getUsuarioModId()); $this->getEntityManager()->getConnection()->update($this->table_name, $record, $key); return $TipoCajaMatrizData->getId(); }