<?php
	$dir = $_SERVER['DOCUMENT_ROOT']."/".substr(substr($_SERVER['REQUEST_URI'], 1), 0, strpos(substr($_SERVER['REQUEST_URI'], 1), '/'))."/phone_gap";
	require_once($dir."/classes/Vendedor.class.php");
	require_once($dir."/classes/Dados.class.php");
	require_once($dir."/dao/VisitaDAO.class.php");
	
	class VendedorDAO {
		
		public function lkpVendedor($vendedor, $tipo = null){
			$dados = new Dados();
			
			$sql = "select CODVENDEDOR, NOME from VENDEDORES 
					where CODVENDEDOR is not null and SITUACAO = 'A' ";
			if($tipo){
				$sql .= " and TIPO = '".$tipo."' ";
			}
			if ($vendedor->getTipo() && $vendedor->getTipo() != 'E'){
				if($tipo == 'S'){
					$sql .= " and CODVENDEDOR = ".$vendedor->getCodvendedor();
				}elseif($vendedor->getTipo() == 'S'){
					$sql .= " and CODSUPERVISOR = ".$vendedor->getCodvendedor();
				}else{
					$sql .= " and CODVENDEDOR = ".$vendedor->getCodvendedor();
				}
			}
			$sql .= " order by 2";
			$array = $dados->SelectSQL($sql);
			foreach ($array as $row){
				$novoVendedor = new Vendedor();
				$novoVendedor->setCodvendedor($row["CODVENDEDOR"]);
				$novoVendedor->setNome($row["NOME"]);
				$vendedores[] = $novoVendedor;
			}
			return $vendedores;
		}
		
		public function infoVisitas(&$vendedor, $dataini, $datafin){
			$dados = new Dados();
			$visitaDAO = new VisitaDAO();
			
			$qtd_dias = date_diff(new DateTime($dataini), new DateTime($datafin))->format('%d');
			$nrovisitas = $vendedor->getNroVisitas();
			if($qtd_dias <= 0){
				$media = 1;
			}else{
				$media = $nrovisitas / $qtd_dias;
			}
			$vendedor->setMediaVisitas(number_format($media, 2));
			
			$vendedorTemp = new Vendedor();
			$vendedorTemp->setCodvendedor($vendedor->getCodvendedor());
			$visitaDAO->todasVisitas($vendedorTemp, $dataini, $datafin);
			$nrovisitasTemp = $vendedorTemp->getNroVisitas();
			
			if ($nrovisitasTemp > 0) {
				$crescvisitas = ($nrovisitas - $nrovisitasTemp) / $nrovisitasTemp * 100;
			} else {
				$crescvisitas = 0;
			}
			
			$vendedor->setCrescVisitas(number_format($crescvisitas, 2).'%');
			
		}
		
		public function removeVisitasDuplicadas(&$vendedor){
			$visitas = $vendedor->getVisitas();
			$codAnt = '';
			foreach($visitas as $id => $visita){
				if($visita->getCliente()->getCodcliente() == $codAnt){
					if ($visita->getData() > $visitas[$id - 1]->getData()){
						$visita->setQtde($visita->getQtde() + $visitas[$id - 1]->getQtde());
						unset($visitas[$id - 1]);
					} else {
						$visitas[$id - 1]->setQtde($visita->getQtde() + $visitas[$id - 1]->getQtde());
						unset($visitas[$id]);
					}
				}
				$codAnt = $visita->getCliente()->getCodcliente();
			}
			$vendedor->setVisitas($visitas);
		}
		
	}
	
?>