package com.ejie.m62fb.service;
import com.ejie.m62fb.dao.M62fbSituacionVivDao;
import com.ejie.x38.dto.Pagination;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import com.ejie.m62fb.model.M62fbSituacionViv;

/**
 * M62fbSituacionVivServiceImpl generated by UDA, 24-oct-2012 16:48:53.
XXXX
 */

@Service(value = "m62fbSituacionVivService")
public class M62fbSituacionVivServiceImpl implements M62fbSituacionVivService {

	@Autowired
	private M62fbSituacionVivDao m62fbSituacionVivDao;

	/**
	 * Inserts a single row in the M62fbSituacionViv table.
	 *
	 * @param m62fbSituacionViv M62fbSituacionViv
	 * @return M62fbSituacionViv
	 */
	@Transactional(rollbackFor = Throwable.class)
	public M62fbSituacionViv add(M62fbSituacionViv m62fbSituacionViv) {
		return this.m62fbSituacionVivDao.add(m62fbSituacionViv);
	}

	/**
	 * Updates a single row in the M62fbSituacionViv table.
	 *
	 * @param m62fbSituacionViv M62fbSituacionViv
	 * @return M62fbSituacionViv
	 */
	@Transactional(rollbackFor = Throwable.class)
	public M62fbSituacionViv update(M62fbSituacionViv m62fbSituacionViv) {
		return this.m62fbSituacionVivDao.update(m62fbSituacionViv);
	 }

	/**
	 * Finds a single row in the M62fbSituacionViv table.
	 *
	 * @param m62fbSituacionViv M62fbSituacionViv
	 * @return M62fbSituacionViv
	 */
	public M62fbSituacionViv find(M62fbSituacionViv m62fbSituacionViv) {
		return (M62fbSituacionViv) this.m62fbSituacionVivDao.find(m62fbSituacionViv);
	}

	/**
	 * Finds a List of rows in the M62fbSituacionViv table.
	 *
	 * @param m62fbSituacionViv M62fbSituacionViv
	 * @param pagination Pagination
	 * @return List
	 */
	public List<M62fbSituacionViv> findAll(M62fbSituacionViv m62fbSituacionViv, Pagination pagination) {
		return (List<M62fbSituacionViv>) this.m62fbSituacionVivDao.findAll(m62fbSituacionViv, pagination);
	}
    
	/**
	 * Counts rows in the M62fbSituacionViv table.
	 *
	 * @param m62fbSituacionViv M62fbSituacionViv
	 * @return Long
	 */
	public Long findAllCount(M62fbSituacionViv m62fbSituacionViv) {        
		return  this.m62fbSituacionVivDao.findAllCount(m62fbSituacionViv);
	}

	/**
	 * Finds rows in the M62fbSituacionViv table using like.
	 *
	 * @param m62fbSituacionViv M62fbSituacionViv
	 * @param pagination Pagination
	 * @param startsWith Boolean
	 * @return List
	 */
	public List<M62fbSituacionViv> findAllLike(M62fbSituacionViv m62fbSituacionViv, Pagination pagination, Boolean startsWith) {
		return (List<M62fbSituacionViv>) this.m62fbSituacionVivDao.findAllLike(m62fbSituacionViv, pagination, startsWith);
	}

	/**
	 * Counts rows in the M62fbSituacionViv table using like.
	 *
	 * @param m62fbSituacionViv M62fbSituacionViv
	 * @param startsWith Boolean
	 * @return Long
	 */
	public Long findAllLikeCount(M62fbSituacionViv m62fbSituacionViv, Boolean startsWith) {
		return this.m62fbSituacionVivDao.findAllLikeCount(m62fbSituacionViv, startsWith);
	}
	    
	/**
	 * Deletes a single row in the M62fbSituacionViv table.
	 *
	 * @param m62fbSituacionViv M62fbSituacionViv
	 * @return
	 */
	@Transactional(rollbackFor = Throwable.class)
	public void remove(M62fbSituacionViv m62fbSituacionViv) {
		this.m62fbSituacionVivDao.remove(m62fbSituacionViv);
	}
	
	/**
	 * Deletes multiple rows in the M62fbSituacionViv table.
	 *
	 * @param m62fbSituacionVivList List
	 * @return
	 */
	@Transactional(rollbackFor = Throwable.class)
	public void removeMultiple(List<M62fbSituacionViv> m62fbSituacionVivList) {
		for (M62fbSituacionViv  m62fbSituacionVivAux:m62fbSituacionVivList) {
			this.m62fbSituacionVivDao.remove(m62fbSituacionVivAux);
		}
	}
	
}

