package com.fp.armas.rules.query.webservices; import com.fp.armas.rules.query.webservices.util.ArmaUtil; import com.fp.dto.query.QueryRequest; import com.fp.dto.rules.QueryRule; import com.fp.persistence.parmas.dto.ws.ArmaDto; /** * Clase que realiza el m&ecaute;todo para obtener el arma a través de su id * @author dcruz * */ public class ArmasId extends QueryRule { private static final long serialVersionUID = 1L; @Override public QueryRequest process(QueryRequest pRequest) throws Exception { ArmaDto armaDto = null; try { String carma = (String) pRequest.get("codigoarma"); if(carma!=null && !carma.isEmpty()){ armaDto = ArmaUtil.getInstancia().obtenerArmaId(carma); } String ctag = (String) pRequest.get("codigotag"); if(ctag!=null && !ctag.isEmpty()){ armaDto = ArmaUtil.getInstancia().obtenerArmaIdPorTag(ctag); } pRequest.getResponse().put("ARMASWS", armaDto!=null?armaDto:null); return pRequest; } catch (Throwable e) { throw new Exception(e); } } // /** // * Completa los datos del arma encontrada // * @param armaDto dto de arma // * @param tarmArmas objeto tipo {@link TarmArmas} // * @throws CommondbException // * @throws Exception // */ // private ArmaDto completaArma(ArmaDto armaDto, TarmArmas tarmArmas) throws CommondbException, Exception{ // armaDto = new ArmaDto(); // armaDto.setIdArma(tarmArmas.getPk()); // armaDto.setCantidad(tarmArmas.getCantidad()); // armaDto.setSerie(tarmArmas.getLote()); // TgeneCatalogDetail estado = TgeneCatalogDetail.find(PersistenceHelper.getEntityManager(), new TgeneCatalogDetailKey(tarmArmas.getEstado() != null ? tarmArmas.getEstado() : "", tarmArmas.getEstadocodigo() != null ? tarmArmas.getEstadocodigo() : "")); // armaDto.setEstado(estado != null ? estado.getDescription() : ""); // TarmTipoArmaExplosivo tipoArmaExplosivo = TarmTipoArmaExplosivo.find(PersistenceHelper.getEntityManager(), tarmArmas.getCtipoarmaexplosivo()); // if(tipoArmaExplosivo != null){ // TgeneCatalogDetail clase= TgeneCatalogDetail.find(PersistenceHelper.getEntityManager(), new TgeneCatalogDetailKey(tipoArmaExplosivo.getClase() != null ? tipoArmaExplosivo.getClase() : "", tipoArmaExplosivo.getClasecodigo() != null ? tipoArmaExplosivo.getClasecodigo() : "")); // armaDto.setClase(clase != null ? clase.getDescription():null); // TgeneCatalogDetail tipoArma= TgeneCatalogDetail.find(PersistenceHelper.getEntityManager(), new TgeneCatalogDetailKey(tipoArmaExplosivo.getTipoarmaexplosivo() != null ? tipoArmaExplosivo.getTipoarmaexplosivo() : "", tipoArmaExplosivo.getTipoarmaexplosivocodigo() != null ? tipoArmaExplosivo.getTipoarmaexplosivocodigo() : "")); // armaDto.setTipo(tipoArma != null ? tipoArma.getDescription():null); // TgeneCatalogDetail unidadMedida= TgeneCatalogDetail.find(PersistenceHelper.getEntityManager(), new TgeneCatalogDetailKey(tipoArmaExplosivo.getUnidadmedidapeso() != null ? tipoArmaExplosivo.getUnidadmedidapeso():"", tipoArmaExplosivo.getUnidadmedidapesocodigo() != null ? tipoArmaExplosivo.getUnidadmedidapesocodigo() : "")); // armaDto.setUnidadMedidaPeso(unidadMedida != null ? unidadMedida.getDescription():null); // TgeneCatalogDetail calibre= TgeneCatalogDetail.find(PersistenceHelper.getEntityManager(), new TgeneCatalogDetailKey(tipoArmaExplosivo.getCalibre() != null ? tipoArmaExplosivo.getCalibre() : "", tipoArmaExplosivo.getCalibrecodigo() != null ? tipoArmaExplosivo.getCalibrecodigo() : "")); // armaDto.setCalibre(calibre != null ? calibre.getDescription() : null); // TgeneCatalogDetail longitud= TgeneCatalogDetail.find(PersistenceHelper.getEntityManager(), new TgeneCatalogDetailKey(tipoArmaExplosivo.getLongitud() != null ? tipoArmaExplosivo.getLongitud() : "", tipoArmaExplosivo.getLongitudcodigo() != null ? tipoArmaExplosivo.getLongitudcodigo() : "")); // armaDto.setLongitud(longitud != null ? longitud.getDescription() : null); // } // return armaDto; // } }