Fixes bug#18897

dev: 
qua:

git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Web/trunk/ventaboletos@101126 d1611594-4594-4d17-8e1d-87c2c4800839
master
fabio 2020-04-06 22:56:16 +00:00
parent feb61bfb9b
commit 75d6359852
4 changed files with 120 additions and 1 deletions

View File

@ -0,0 +1,32 @@
package com.rjconsultores.ventaboletos.rest;
import javax.annotation.security.RolesAllowed;
import javax.ws.rs.Consumes;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Response;
import com.rjconsultores.ventaboletos.rest.bean.ParamsUltimaSincDispositivo;
import com.rjconsultores.ventaboletos.rest.service.UltimaSincronizacaoService;
import com.rjconsultores.ventaboletos.rest.service.exception.ServiceEmbarcadaException;
import com.rjconsultores.ventaboletos.web.utilerias.spring.AppContext;
@Path("/ultimaSincronizacao")
public class UltimaSincronizacao {
@POST
@Consumes({ MediaType.APPLICATION_JSON })
@RolesAllowed("EMBARCADA")
@Produces({ MediaType.APPLICATION_JSON })
public Response UltimaSincronizacaoDispositivo(ParamsUltimaSincDispositivo params) throws Exception {
UltimaSincronizacaoService service = (UltimaSincronizacaoService) AppContext.getApplicationContext().getBean("ultimaSincronizacaoService");
try {
return Response.ok(service.registrarUltimaSincronizaco(params), MediaType.APPLICATION_JSON).build();
} catch (ServiceEmbarcadaException e) {
return Response.status(Response.Status.NOT_FOUND).entity(e.getMessage()).build();
}
}
}

View File

@ -0,0 +1,36 @@
package com.rjconsultores.ventaboletos.rest.bean;
import java.util.Date;
import org.codehaus.jackson.annotate.JsonIgnoreProperties;
@JsonIgnoreProperties(ignoreUnknown = true)
public class ParamsUltimaSincDispositivo {
String imei;
String versao;
Date dataUltimaSinc;
public String getVersao() {
return versao;
}
public void setVersao(String versao) {
this.versao = versao;
}
public String getImei() {
return imei;
}
public void setImei(String imei) {
this.imei = imei;
}
public Date getDataUltimaSinc() {
return dataUltimaSinc;
}
public void setDataUltimaSinc(Date dataUltimaSinc) {
this.dataUltimaSinc = dataUltimaSinc;
}
}

View File

@ -5,7 +5,6 @@ import java.util.Map;
import org.springframework.stereotype.Service;
import com.rjconsultores.routing.ReadOnlyConnection;
import com.rjconsultores.ventaboletos.constantes.Constantes;
import com.rjconsultores.ventaboletos.dao.ConstanteDAO;
import com.rjconsultores.ventaboletos.dao.DispositivoEmbarcadaDAO;
@ -64,6 +63,8 @@ public class SincronizarService {
vo.setEnderecoAgencia(puntoVenta.getDireccioncalle()+", nº: "+puntoVenta.getDireccionnumero()+". Cidade: "+puntoVenta.getCidade());
vo.setCnpjEmpresa(empresa.getCnpj());
vo.setIndVendeNaoBpe(dispositivo.getIndVendeNaoBpe());
vo.setVersaoUltimaSinc(dispositivo.getVersaoUltimaSinc());
vo.setDataUltimaSinc(dispositivo.getDataUltimaSinc());
Map<Estado, EmpresaImposto> impostos = getImpostos(empresa);

View File

@ -0,0 +1,50 @@
package com.rjconsultores.ventaboletos.rest.service;
import org.apache.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import com.rjconsultores.ventaboletos.dao.DispositivoEmbarcadaDAO;
import com.rjconsultores.ventaboletos.entidad.DispositivoEmbarcada;
import com.rjconsultores.ventaboletos.rest.bean.ParamsSincronizarDispositivo;
import com.rjconsultores.ventaboletos.rest.bean.ParamsUltimaSincDispositivo;
import com.rjconsultores.ventaboletos.rest.service.exception.ServiceEmbarcadaException;
import com.rjconsultores.ventaboletos.vo.embarcada.DispositivoEmbarcadaVO;
import com.rjconsultores.ventaboletos.web.utilerias.spring.AppContext;
@Service("ultimaSincronizacaoService")
public class UltimaSincronizacaoService {
private static Logger log = Logger.getLogger(UltimaSincronizacaoService.class);
@Autowired
private SincronizarService sincronizarService;
@Transactional
public DispositivoEmbarcadaVO registrarUltimaSincronizaco(ParamsUltimaSincDispositivo params) throws ServiceEmbarcadaException {
DispositivoEmbarcadaDAO dispositivoEmbarcadaDAO = (DispositivoEmbarcadaDAO)AppContext.getApplicationContext().getBean("dispositivoEmbarcadaDAO");
DispositivoEmbarcada dispositivo = dispositivoEmbarcadaDAO.buscarImei(params.getImei());
if (dispositivo == null){
DispositivoEmbarcadaVO dispositivoVo = new DispositivoEmbarcadaVO();
dispositivoVo.setMsg("Dispositivo não encontrado");
return dispositivoVo;
}
dispositivo.setVersaoUltimaSinc(params.getVersao());
dispositivo.setDataUltimaSinc(params.getDataUltimaSinc());
dispositivoEmbarcadaDAO.actualizacion(dispositivo);
log.info( "Dispositivo Sincronizado: "+dispositivo.toString() );
ParamsSincronizarDispositivo parametro = new ParamsSincronizarDispositivo();
parametro.setImei(params.getImei());
DispositivoEmbarcadaVO vo = sincronizarService.getDispositivoEmbarcada(parametro);
return vo;
}
}