package es.uv.saic.service;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import es.uv.saic.domain.Acreditacio;
import es.uv.saic.domain.AcreditacioPK;
import es.uv.saic.domain.AcreditacioRepository;
import es.uv.saic.domain.Organ;

@Service
public class AcreditacioService {

	@Autowired
	private AcreditacioRepository ar;
	
	public Acreditacio getById(String tlugar, Integer lugar) {
		return this.ar.getReferenceById(new AcreditacioPK(tlugar, lugar));
	}
	
	public List<Acreditacio> getAll(){
		return this.ar.getAll();
	}
	
	public List<Acreditacio> getNextsCurrentYear(){
		return this.ar.getNextsCurrentYear();
	}
	
	public List<Acreditacio> getByCursGrup(Integer curs, Integer grup){
		return this.ar.getByCursGrup(curs, grup);
	}
	
	public List<Acreditacio> getByCursGrupTambit(Integer curs, Integer grup, String tambit){
		return this.ar.getByCursGrupTambit(curs, grup, tambit);
	}
	
	public List<Acreditacio> getByCurs(Integer curs){
		return this.ar.getByCurs(curs);
	}
	
	public Acreditacio getByOrgan(Organ o) {
		return this.ar.getByOrgan(o.getId().getTlugar(), o.getId().getLugar());
	}
	
	public List<Acreditacio> getByCentre(Organ o){
		return this.ar.getByCentre(o.getId().getTlugar(), o.getId().getLugar());
	}
	
	public Acreditacio save(Acreditacio a) {
		return this.ar.saveAndFlush(a);
	}
}
