Fixes Bug #0009192
git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Model/trunk/modelWeb@71393 d1611594-4594-4d17-8e1d-87c2c4800839master
parent
170ad57c52
commit
706fd8407e
|
@ -9,6 +9,7 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import com.rjconsultores.ventaboletos.constantes.TipoSeguro;
|
||||
import com.rjconsultores.ventaboletos.dao.OrgaoConcedenteDAO;
|
||||
import com.rjconsultores.ventaboletos.dao.SeguroKmDAO;
|
||||
import com.rjconsultores.ventaboletos.dao.SeguroTarifaDAO;
|
||||
|
@ -50,9 +51,9 @@ public class TarifaOficialServiceImpl implements TarifaOficialService {
|
|||
|
||||
@Override
|
||||
@Transactional
|
||||
public void copiarParaTarifa(VigenciaTarifa vigenciaTarifa, Boolean calculaPegagio, Boolean calculaTarifa, Boolean calculaTaxaEmbarque, Boolean calculaSeguro,Empresa empresa, OrgaoConcedente orgaoConcedente) {
|
||||
public void copiarParaTarifa(VigenciaTarifa vigenciaTarifa, Boolean calculaPegagio, Boolean calculaTarifa, Boolean calculaTaxaEmbarque, Boolean calculaSeguro, Boolean calculaTPP,Empresa empresa, OrgaoConcedente orgaoConcedente) {
|
||||
tarifaOficialDAO.copiarParaTarifa(vigenciaTarifa, UsuarioLogado.getUsuarioLogado().getUsuarioId(),
|
||||
calculaPegagio, calculaTarifa, calculaTaxaEmbarque, calculaSeguro, empresa, orgaoConcedente);
|
||||
calculaPegagio, calculaTarifa, calculaTaxaEmbarque, calculaSeguro, calculaTPP, empresa, orgaoConcedente);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -143,10 +144,14 @@ public class TarifaOficialServiceImpl implements TarifaOficialService {
|
|||
|
||||
@Override
|
||||
@Transactional(rollbackFor = BusinessException.class)
|
||||
public void atualizarSeguroPorKm(Integer rutaId, Integer orgaoId) throws BusinessException {
|
||||
|
||||
tarifaOficialDAO.atualizarSeguroPorKm(rutaId, orgaoId, UsuarioLogado.getUsuarioLogado().getUsuarioId());
|
||||
public void atualizarSeguroPorKm(Integer rutaId, Integer orgaoId, TipoSeguro tipoSeguro) throws BusinessException {
|
||||
tarifaOficialDAO.atualizarSeguroPorKm(rutaId, orgaoId, UsuarioLogado.getUsuarioLogado().getUsuarioId(), tipoSeguro);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = BusinessException.class)
|
||||
public void atualizarSeguroPorKmTPP(Integer rutaId, Integer orgaoId, TipoSeguro tipoSeguro) throws BusinessException {
|
||||
tarifaOficialDAO.atualizarPrecioPorTPP(rutaId, orgaoId, UsuarioLogado.getUsuarioLogado().getUsuarioId(), tipoSeguro);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -157,7 +162,7 @@ public class TarifaOficialServiceImpl implements TarifaOficialService {
|
|||
|
||||
@Override
|
||||
@Transactional(rollbackFor = BusinessException.class)
|
||||
public void atualizarSeguro(List<Ruta> lsRuta, Integer orgaoId) throws BusinessException {
|
||||
public void atualizarSeguro(List<Ruta> lsRuta, Integer orgaoId, TipoSeguro tipoSeguro) throws BusinessException {
|
||||
|
||||
List<Integer> lsOrgaoId = new ArrayList<Integer>();
|
||||
|
||||
|
@ -180,7 +185,7 @@ public class TarifaOficialServiceImpl implements TarifaOficialService {
|
|||
//O seguro por km é preferencial em relação ao por tarifa.
|
||||
for (Integer orgaoConcedenteId : lsOrgaoId) {
|
||||
if (seguroKmDAO.existe(orgaoConcedenteId)) {
|
||||
atualizarSeguroPorKm(rutaId, orgaoConcedenteId);
|
||||
atualizarSeguroPorKm(rutaId, orgaoConcedenteId, tipoSeguro);
|
||||
} else if (seguroTarifaDAO.existe(orgaoConcedenteId)) {
|
||||
atualizarSeguroPorTarifa(rutaId, orgaoConcedenteId);
|
||||
}
|
||||
|
@ -188,6 +193,38 @@ public class TarifaOficialServiceImpl implements TarifaOficialService {
|
|||
x--;
|
||||
}while(x > 0);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = BusinessException.class)
|
||||
public void atualizarSeguroTPP(List<Ruta> lsRuta, Integer orgaoId, TipoSeguro tipoSeguro) throws BusinessException {
|
||||
|
||||
List<Integer> lsOrgaoId = new ArrayList<Integer>();
|
||||
|
||||
if (orgaoId == null) {
|
||||
lsOrgaoId.addAll(orgaoConcedenteDAO.obtenerTodosIds());
|
||||
} else {
|
||||
lsOrgaoId.add(orgaoId);
|
||||
}
|
||||
|
||||
int x = 0;
|
||||
if(lsRuta != null && !lsRuta.isEmpty()){
|
||||
x = lsRuta.size();
|
||||
}
|
||||
|
||||
do{
|
||||
Integer rutaId = null;
|
||||
if(lsRuta != null && !lsRuta.isEmpty()){
|
||||
rutaId = lsRuta.get(x-1).getRutaId();
|
||||
}
|
||||
//O seguro por km é preferencial em relação ao por tarifa.
|
||||
for (Integer orgaoConcedenteId : lsOrgaoId) {
|
||||
if (seguroKmDAO.existe(orgaoConcedenteId)) {
|
||||
atualizarSeguroPorKmTPP(rutaId, orgaoConcedenteId, tipoSeguro);
|
||||
}
|
||||
}
|
||||
x--;
|
||||
}while(x > 0);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
|
|
Loading…
Reference in New Issue