package com.rjconsultores.ventaboletos.vo.busquedapacotes.transformer;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import org.hibernate.transform.ResultTransformer;

import com.rjconsultores.ventaboletos.vo.busquedapacotes.DadosBancarioVO;

public class DatosDadosBancarioResultTransformer implements ResultTransformer {

	private static final long serialVersionUID = 1L;

	@Override
	@SuppressWarnings({ "rawtypes", "unchecked" })
	public List<DadosBancarioVO> transformList(List mapList) {
		List<DadosBancarioVO> dadosBancarios = new ArrayList<DadosBancarioVO>();
		for(Object objmap : mapList ) {
			Map<String, Object> tupleMap = (Map<String, Object>) objmap;
			DadosBancarioVO dadosBancario = new DadosBancarioVO();
			dadosBancario.setIdentificadorDeposito((String) tupleMap.get("IDENTIFICACAO_DEPOSITO"));
			dadosBancario.setData((Date) tupleMap.get("FECDEPOSITO"));
			dadosBancario.setValor((BigDecimal) tupleMap.get("IMPORTE"));
			
			dadosBancarios.add(dadosBancario);
		}
		
		return dadosBancarios;
	}

	@Override
	public Object transformTuple(Object[] data, String[] aliases) {
		Map<String,Object> row = new HashMap<String,Object>();
		
		for(int index = 0; index < aliases.length; index++){
			row.put(aliases[index], data[index]);
		}
		
		return row;
	}
	
}
