var reporteAcumulateBuysController = function($scope, $filter,$http, reporteAcumulateBuysService){
	
	$scope.estudios='';
	$scope.reporte='';
	$scope.header = '';
	$scope.user='';
	$scope.type = '';
	$scope.fechaInicio = '';
	$scope.fechaFin='';
	//$scope.origenReporte = "AcumulateBuys";
	var fecha = new Date();
	var anioActual = fecha.getFullYear();
	var mes = fecha.getMonth(); // numera los meses de 0 al 11
	var fechaPicker = mes + "/" + anioActual;


	$('#fechaInicio').datepicker({ dateFormat: 'mm/yy' }).datepicker("setDate", "-12m");
	$('#fechaFin').datepicker({ dateFormat: 'mm/yy' }).datepicker("setDate", "-1m");
	
	$scope.listarEstudios = function(){
		reporteAcumulateBuysService.obtenerEstudios().then(function(data) {
			
			$scope.estudios = data.estudios;
			
			console.log("lista estudios");	
			console.log($scope.estudios);
		});
	
	}
	
	$scope.listarEstudiosConfigurados = function(){
		reporteAcumulateBuysService.obtenerEstudiosConfig().then(function(data) {
			console.log(data);
			if(data.estudios != null && data.estudios.length != 0){
				$scope.estudios = data.estudios;
				
				console.log("estudios config:");	
				console.log($scope.estudios);
			}else{
				$scope.listarEstudios();
			}
			
		});
	
	}
	
	$scope.origen = "AcumulateBuys";
	$scope.reporteAcumulateBuys = function(){	
		
		if($scope.origenReporte == undefined){
			console.log("el origen es reporte");
		}else{
			console.log($scope.origenReporte);//variable llega de modulo transacciones...
			$scope.origen = $scope.origenReporte;
		}
		
		$scope.type = $("#type").val();
		$scope.fechaInicio = $("#fechaInicio").val();
		$scope.fechaFin = $("#fechaFin").val();
			  
	   if($scope.estudioSeleccionado != null ){
		  
		  console.log("type:"+ $scope.type+"estudio: "+$scope.estudioSeleccionado.id_estudio+"fecha inicio:"+$scope.fechaInicio+"fechaFin"+$scope.fechaFin);
		  
		  reporteAcumulateBuysService.reporteAcumulateBuys($scope.origen,$scope.estudioSeleccionado.id_estudio,$scope.type,$scope.fechaInicio,$scope.fechaFin).then(function(data) {
			  console.log(data);
			    $scope.header = data.header;
				$scope.reporte = data.repporteacumulatebuys;
				//console.log($scope.reporte);
			});  
	  }else{
		  swal("Selecciona un Estudio.");
	  }	
	
	}
	
	$scope.descargaExcel = function() {
		var url = contextPath +'/reporte/acumulatebuys/generaExcelAcumulateBuys.action?origen='+ $scope.origen +"&id_estudio="+$scope.estudioSeleccionado.id_estudio +"&typeAbono="+ $scope.type +"&fechaInicio="+$scope.fechaInicio +"&fechaFin="+$scope.fechaFin;
		try { window.open(url); }
	    catch(e)   { showError("Ha ocurrido un error en la descarga: " + e.description); }
	}

	//se recuperan estudios al cargar controller
	$scope.listarEstudiosConfigurados();
	
	
	$scope.setFormat = function (row, column, x, y, tlength) {

		var styles = {};

		if ((x+1) == tlength)
		{
		    styles['font-weight'] = "bold";
		    styles['text-align'] = "right";
		    //console.log("si entra"+tlength +" "+x);
		}			
		else if (y == 0)
		{
			styles['width'] = "128px";
			//styles['font-weight'] = "bold";
		}	
		else
			styles['text-align'] = "right";

		//console.log(styles);
		
		return styles;
	}
	
	$scope.fmaFront =  function (fecha){
		
		return fecha != null ? fechaMesAnnio(fecha) : "";
	}
	
	$scope.printReport = function(){
		
		if($scope.origenReporte == undefined){
			console.log("el origen es reporte");
			$('#TableDiv').printThis({
		    	importCSS: true,          
		        importStyle: true,   
			    header:"<h3 style='width: 950px; font-weight:bold;'><img style='padding-right: 50px;' src='"+contextPath+"/design/img/common/Clarovideo.png'/>REPORTE ACUMULATE BUYS  "+ $scope.fechaInicio +" - "+ $scope.fechaFin +"</h3>"

		  });   

		}else{
			 console.log($scope.origenReporte);//variable llega de modulo transacciones...
			 $('#TableDiv').printThis({
			    	importCSS: true,          
			        importStyle: true,   
			        header:"<h3 style='width: 1200px; font-weight:bold;'><img style='padding-right: 10px;' src='"+contextPath+"/design/img/common/Clarovideo.png'/>VISTA PREVIA REPORTE ACUMULATE BUYS  "+ $scope.fechaInicio +" - "+ $scope.fechaFin +"</h3>"

			  });   

		}
		
	}

	
	function fechaMesAnnio(fecha){
		var fsplited = fecha.split("/");
		if(fsplited.length == 3)
			return getMesStr(fsplited[0]) + " " + fsplited[2];
		else
			return fecha;
	}
	
	function getMesStr(mes){	
		var meses = ["Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio", "Julio", "Agosto", "Septiembre", "Octubre", "Noviembre", "Diciembre"];
		return meses[parseInt(mes) - 1];
	}

	
};

registraController("reporteAcumulateBuysController", reporteAcumulateBuysController);