Package fing.satode.bl.deposito

Source Code of fing.satode.bl.deposito.DepositoService

package fing.satode.bl.deposito;

import java.util.ArrayList;

import org.springframework.transaction.annotation.Transactional;

import fing.satode.bl.base.ServiceBase;
import fing.satode.constantes.EstadoSolicitudEnvio;
import fing.satode.data.CuentaCorrienteSuministroDTO;
import fing.satode.data.DepositoDTO;
import fing.satode.data.DonacionDTO;
import fing.satode.data.SolicitudEnvioDTO;
import fing.satode.data.SolicitudEnvioSuministroDTO;
import fing.satode.data.SuministroDTO;
import fing.satode.data.TipoSuministroDTO;
import fing.satode.dominio.CuentaCorrienteSuministro;
import fing.satode.dominio.Deposito;
import fing.satode.dominio.Donacion;
import fing.satode.dominio.SolicitudEnvio;
import fing.satode.dominio.Suministro;
import fing.satode.dominio.TipoSuministro;
import fing.satode.pl.deposito.CuentaCorrienteSuministroDAO;
import fing.satode.pl.deposito.DepositoDAO;
import fing.satode.pl.deposito.DonacionDAO;
import fing.satode.pl.deposito.SolicitudEnvioDAO;
import fing.satode.pl.deposito.SuministroDAO;
import fing.satode.pl.deposito.TipoSuministroDAO;


@Transactional
public class DepositoService extends ServiceBase {
 
  public ArrayList<DepositoDTO> listaDepositos() {
    ArrayList<DepositoDTO> listaDTOS= new ArrayList<DepositoDTO>();
    ArrayList<Deposito> listaDes= DepositoDAO.getInstance().listaDepositos();
    for(Deposito d: listaDes){
      listaDTOS.add(d.getDTO());
    }
    return listaDTOS;
  }

  public void nuevoDeposito(DepositoDTO dto) {
    Deposito deposito= new Deposito(dto);
    DepositoDAO.getInstance().nuevoDeposito(deposito);
  }

  public void modificarDeposito(DepositoDTO dto) {
    Deposito deposito= new Deposito(dto);
    DepositoDAO.getInstance().modificarDeposito(deposito);
  }

  public void eliminarDeposito(DepositoDTO dto) {
    Deposito deposito= new Deposito(dto);
    DepositoDAO.getInstance().eliminarDeposito(deposito);
  }

  public ArrayList<TipoSuministroDTO> listaTipoSuministros() {
    ArrayList<TipoSuministroDTO> listaDTOS= new ArrayList<TipoSuministroDTO>();
    ArrayList<TipoSuministro> listaDes= TipoSuministroDAO.getInstance().listaTipoSuministros();
    for(TipoSuministro d: listaDes){
      listaDTOS.add(d.getDTO());
    }
    return listaDTOS;
  }

  public void nuevoTipoSuministro(TipoSuministroDTO dto) {
    TipoSuministro tiposuministro= new TipoSuministro(dto);
    TipoSuministroDAO.getInstance().nuevoTipoSuministro(tiposuministro);
  }

  public void modificarTipoSuministro(TipoSuministroDTO dto) {
    TipoSuministro tiposuministro= new TipoSuministro(dto);
    TipoSuministroDAO.getInstance().modificarTipoSuministro(tiposuministro);
  }

  public void eliminarTipoSuministro(TipoSuministroDTO dto) {
    TipoSuministro tiposuministro= new TipoSuministro(dto);
    TipoSuministroDAO.getInstance().eliminarTipoSuministro(tiposuministro);
  }
 
 
 
  public ArrayList<SuministroDTO> listaSuministros() {
    ArrayList<SuministroDTO> listaDTOS= new ArrayList<SuministroDTO>();
    ArrayList<Suministro> lista= SuministroDAO.getInstance().listaSuministros();
    for(Suministro d: lista){
      listaDTOS.add(d.getDTO());
    }
    return listaDTOS;
  }
 
  public void nuevoSuministro(SuministroDTO dto) {
    Suministro suministro= new Suministro(dto);
    SuministroDAO.getInstance().nuevoSuministro(suministro);
  }

  public void modificarSuministro(SuministroDTO dto) {
    Suministro suministro= new Suministro(dto);
    SuministroDAO.getInstance().modificarSuministro(suministro);
  }

  public void eliminarSuministro(SuministroDTO dto) {
    Suministro suministro= new Suministro(dto);
    SuministroDAO.getInstance().eliminarSuministro(suministro);
  }
 

  public ArrayList<DonacionDTO> listaDonacion() {
    ArrayList<DonacionDTO> listaDTOS= new ArrayList<DonacionDTO>();
    ArrayList<Donacion> lista= DonacionDAO.getInstance().listaDonaciones();
    for(Donacion d: lista){
      listaDTOS.add(d.getDTO());
    }
    return listaDTOS;
  }
 
  public void nuevoDonacion(DonacionDTO dto) {
    Donacion donacion= new Donacion(dto);
    //Collection<Suministro> sum=donacion.getSuministros();
    //donacion.setSuministros(null);
    DonacionDAO.getInstance().nuevoDonacion(donacion);
    //donacion.setSuministros(sum);
    //DonacionDAO.getInstance().modificarDonacion(donacion);
   
  }

  public void modificarDonacion(DonacionDTO dto) {
    Donacion suministro= new Donacion(dto);
    DonacionDAO.getInstance().modificarDonacion(suministro);
  }

  public void eliminarDonacion(DonacionDTO dto) {
    Donacion deposito= new Donacion(dto);
    DonacionDAO.getInstance().eliminarDonacion(deposito);
  }

  public void confirmar(DonacionDTO dto) {
    // TODO Auto-generated method stub
    Donacion donacion= new Donacion(dto);
    donacion.setImpactarCuentas(true);
    for(Suministro s: donacion.getSuministros()){
      CuentaCorrienteSuministro cuenta= CuentaCorrienteSuministroDAO.getInstance().getCuentaCorriente(s,donacion.getDeposito());
      cuenta.setCantidad(cuenta.getCantidad()+s.getCantidad());
      CuentaCorrienteSuministroDAO.getInstance().modificarCuentaCorriente(cuenta);
    }
    DonacionDAO.getInstance().modificarDonacion(donacion);
  }

  public ArrayList<CuentaCorrienteSuministroDTO> buscarCuentaCorrienteSuministro(
      Long idDeposito, Long idTipoSuministro) {
    ArrayList<CuentaCorrienteSuministroDTO> listaDTOS= new ArrayList<CuentaCorrienteSuministroDTO>();
    ArrayList<CuentaCorrienteSuministro> lista= CuentaCorrienteSuministroDAO.getInstance().buscarCuentaCorrienteSuministro(idDeposito,idTipoSuministro);
    for(CuentaCorrienteSuministro d: lista){
      listaDTOS.add(d.getDTO());
    }
    return listaDTOS;
  }

  public void modificarCuentaCorrienteSuministro(CuentaCorrienteSuministroDTO dto) {
    CuentaCorrienteSuministroDAO.getInstance().modificarCuentaCorriente(new CuentaCorrienteSuministro(dto));
   
  }

  public ArrayList<SolicitudEnvioDTO> buscarSolicitudesEnvioLong idPuntoEntrega, Long idDeposito, int estado) {
    ArrayList<SolicitudEnvioDTO> listaDTOS= new ArrayList<SolicitudEnvioDTO>();
    ArrayList<SolicitudEnvio> lista= SolicitudEnvioDAO.getInstance().buscarSolicitudesEnvio(idPuntoEntrega, idDeposito,  estado);
    for(SolicitudEnvio d: lista){
      listaDTOS.add(d.getDTO());
    }
    return listaDTOS;
  }

  public void enviarSolicitudEnvio(SolicitudEnvioDTO dto) {
    // TODO Auto-generated method stub
    dto.setEstado(EstadoSolicitudEnvio.ENVIADA);
    SolicitudEnvioDAO.getInstance().modificarSolicitudEnvio(new SolicitudEnvio(dto));
   
    for(SolicitudEnvioSuministroDTO s :dto.getSolicitudesEnvioSuministros()){
      CuentaCorrienteSuministro cuenta=CuentaCorrienteSuministroDAO.getInstance().getCuentaCorriente(dto.getDeposito().getId(),s.getTipoSuministro().getId());     
      cuenta.setCantidad(cuenta.getCantidad()-s.getCantidad());
      if(cuenta.getCantidad()==0){
        CuentaCorrienteSuministroDAO.getInstance().eliminarCuentaCorriente(cuenta);
      }else{
        CuentaCorrienteSuministroDAO.getInstance().modificarCuentaCorriente(cuenta);
      }
    }
  }

  public void recibirSolicitudEnvio(SolicitudEnvioDTO dto) {
    dto.setEstado(EstadoSolicitudEnvio.RECIBIDA_OK);
    if(dto.getObservacionesEntrega()!=null && dto.getObservacionesEntrega().trim().length()!=0){
      dto.setEstado(EstadoSolicitudEnvio.RECIBIDA_OBS);
    }
    SolicitudEnvioDAO.getInstance().modificarSolicitudEnvio(new SolicitudEnvio(dto));
   
  }
 
}
TOP

Related Classes of fing.satode.bl.deposito.DepositoService

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.