package com.ejie.m62fb.service.registroVPP;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import com.ejie.m62fb.dao.registroVPP.DocumentoAcuerdoReservaDao;
import com.ejie.m62fb.model.AcuerdoVivienda;
import com.ejie.m62fb.model.documento.DocumentoAcuerdoReserva;

/**
 * DocumentosServiceImpl generated by UDA, 04-sep-2015 12:03:48.
 * 
XXXX
 */
@Service(value = "documentoAcuerdoReservaService")
public class DocumentoAcuerdoReservaServiceImpl implements
		DocumentoAcuerdoReservaService {

	@Autowired
	private DocumentoAcuerdoReservaDao documentoAcuerdoReservaDao;

	@Override
	@Transactional(rollbackFor = Throwable.class)
	public DocumentoAcuerdoReserva add(DocumentoAcuerdoReserva documento) {
		this.documentoAcuerdoReservaDao.add(documento);
		return documento;
	}

	@Override
	@PreAuthorize("hasPermission('DOCUMENTOS_SERVICE','SecureService','read')")
	public DocumentoAcuerdoReserva find(DocumentoAcuerdoReserva documento) {
		return this.documentoAcuerdoReservaDao.find(documento);
	}

	/**
	 * Recupera el documento por el acuerdo
	 * 
	 * @param acuerdoVivienda
	 *            AcuerdoVivienda
	 * @return DocumentoAcuerdoReserva
	 */
	@Override
	@PreAuthorize("hasPermission('DOCUMENTOS_SERVICE','SecureService','read')")
	public DocumentoAcuerdoReserva findByAcuerdo(AcuerdoVivienda acuerdoVivienda) {
		return this.documentoAcuerdoReservaDao.findByAcuerdo(acuerdoVivienda);
	}
}