<?php
$LIMPIAR=0;
$SYS_FOC="TxtCod";
$StrTC=gs("valor","valores","dato='T_CAMBIO'");
//+++++++++++++++++++++++++++
//+++++++++++++++++++++++++++
$StrId=V($_POST['TxtId']);
$StrCmd=V($_POST['TxtAc']);
$StrRojo=vbval(V($_POST['TxtRojo']));
$StrAmbar=vbval(V($_POST['TxtAmbar']));
$StrCod=V($_POST['TxtCod']);
$StrLin=V($_POST['CboLin']);
$StrDes=V($_POST['TxtDes']);
$StrMar="";	
$StrUni=V($_POST['Und']);
$StrPcS=V($_POST['TxtPcS']);	
$StrPcD=V($_POST['TxtPcD']);		
$StrPvMin=V($_POST['TxtPvMin']);		
$StrPvMax=V($_POST['TxtPvMax']);			
$StrPro=V($_POST['CboPro']);
$CboPUso=V($_POST['CboPUso']);
if(strlen($CboPUso)==0)$CboPUso="SI";
$Und=V($_POST['Und']);
//--------------------------------------------------------------------------
PID($StrId,V($_GET['Id']),$StrCmd,$LStrPag,V($_GET['Pag']));
//--------------------------------------------------------------------------
if(strlen($StrId)>0 && $StrCmd=="AR"){
	$Id=$StrId;
	$StrCod=gs("COD","vproductos","ID=$Id");		
	$StrLin=gs("LINEA","vproductos","ID=$Id");		
	$StrDes=gs("DESCRIPCION","vproductos","ID=$Id");		
	$StrMar=gs("MARCA","vproductos","ID=$Id");		
	$StrUni=gs("UNIDAD","vproductos","ID=$Id");		
	$StrPcS=gs("PC_SOL","vproductos","ID=$Id");	
	$StrPcD=round( $StrPcS * $StrTC	,3);
	$StrPvMin=gs("PV_MIN","vproductos","ID=$Id");		
	$StrPvMax=gs("PV_MAX","vproductos","ID=$Id");				
	$StrPro=gs("PROVEEDOR","vproductos","ID=$Id");
	$CboPUso=gs("USO","vproductos","ID=$Id");
	$StrRojo=gn("pro_rojo","productos","id_producto=$Id");
	$StrAmbar=gn("pro_ama","productos","id_producto=$Id");
	//
	$Und=PRO_UND_GET($Id);
	//
	$LStrFoc="document.getElementById('TxtCod').focus();";		
	$LStrPag="1";
}	
//-------------------------------------------------------------------------
if($StrCmd=="UP"){
	XLS_STOCK();
}
//-------------------------------------------------------------------------
if($StrCmd=="G" || $StrCmd=="M"){
	if(strlen($StrPcS)==0) $StrPcS=0;
	if(strlen($StrPvMin)==0) $StrPvMin=0;
	if(strlen($StrPvMax)==0) $StrPvMax=0;
	$StrLin_=gn("id_linea","lineas","lin_nombre='$StrLin'");
	$StrMar_=gn("id_marca","marcas","mar_nombre='$StrMar'");
	$StrUni_=gn("id_unidad","unidades","uni_nombre='$StrUni'");
	$StrPro_=gn("id_proveedor","proveedores","pro_nombre='$StrPro'");
	$Und_=gn("id_und","unidadez","und_abre='$Und'");
}
//-------------------------------------------------------------------------
if($StrCmd=="G"){
	if(strlen($StrDes)==0){
		$SYS_MSG="Ingrese una descripcion o nombre del producto";
		$SYS_FOC="TxtDes";
		$OK=0;
	}
	//
	if($OK==1){
		if(strlen($StrCod)>0){
			if(GetC("productos","pro_codigo='$StrCod' AND pro_uso='S'")>0){
				$SYS_MSG="Codigo de producto ya registrado";
				$SYS_FOC="TxtCod";
				$OK=0;					
			}
		}
	}
	//
	if($OK==1){
		$Id=GenId("id_producto","productos");
		$s="INSERT INTO productos VALUES (
			$Id,'$StrCod',$StrLin_,'$StrDes',
			$StrMar_,$StrUni_,
			$StrPcS,$StrPvMin,$StrPvMax,'',$StrPro_,0,0,
			'$CboPUso',$StrRojo,$StrAmbar)";
		ejt($s);
		//echo $s."<br>";
		//BIT
		$_BIT_MOD_ID=$Id;
		$_BIT_SQL_CAB=$s;
		$_BIT_SQL_DET="";
		$_BIT_PHP="sis_productos.php";
		$_BIT_ID=BIT_ADD("MANTENIMIENTO","PRODUCTOS","GUARDAR",$_BIT_MOD_ID,$_BIT_SQL_CAB,$_BIT_SQL_DET,$_BIT_PHP);
		BIT_DET_ADD($_BIT_ID,$s);
		//BIT	
		$qqq=ejt("DELETE FROM stocks WHERE id_producto=$Id");
		BIT_DET_ADD($_BIT_ID,$qqq);
		//
		$s="SELECT id_almacen FROM almacenes ORDER by id_almacen";
		$result = grs($s);
		while ($row = $result->fetch_row()){
			STOCK_ADD($row[0],$Id,0);
		}
		//
		PRO_UND_ADD($Id,$StrUni_,$USU_KOD);
		//
		$SYS_MSG="Datos registrados";
		$SYS_FOC="TxtCod";
		$LIMPIAR=1;	
	}
}
//-------------------------------------------------------------------------
if($StrCmd=="M"){
	if(strlen($StrDes)==0){
		$SYS_MSG="Ingrese una descripcion o nombre del producto";
		$SYS_FOC="TxtDes";
		$OK=0;	
	}
	if($OK==1){
		if(strlen($StrCod)>0){
			if(GetC("productos","pro_codigo='$StrCod' AND pro_uso='S' AND id_producto<>$StrId")>0){
				$SYS_MSG="Codigo de producto ya registrado";
				$SYS_FOC="TxtCod";
				$OK=0;				
			}
		}
	}		
	//++++
	if($OK==1){
		$s="UPDATE productos SET pro_codigo='$StrCod',
			pro_id_linea=$StrLin_,pro_des='$StrDes',
			pro_id_marca=$StrMar_,pro_id_unidad=$StrUni_,
			pro_pc_sol=$StrPcS,pro_pv_min=$StrPvMin,
			pro_pv_max=$StrPvMax,pro_id_proveedor=$StrPro_,pro_uso='$CboPUso',
			pro_rojo=$StrRojo,pro_ama=$StrAmbar WHERE id_producto=$StrId";
		ejt($s);
		//echo $s."<br>";
		//BIT
		$_BIT_MOD_ID=$StrId;
		$_BIT_SQL_CAB=$s;
		$_BIT_SQL_DET="";
		$_BIT_PHP="sis_productos.php";
		$_BIT_ID=BIT_ADD("MANTENIMIENTO","PRODUCTOS","MODIFICAR",$_BIT_MOD_ID,$_BIT_SQL_CAB,$_BIT_SQL_DET,$_BIT_PHP);
		BIT_DET_ADD($_BIT_ID,$s);
		//BIT	
		$s="UPDATE t_productos 
			SET pro_pmi=$StrPvMin,
				pro_pma=$StrPvMax,
				pro_uso='$CboPUso',
				pro_ama=$StrAmbar,
				pro_roj=$StrRojo,
				pro_cod='$StrCod',
				pro_des='$StrDes',
				pro_lin='$StrLin' WHERE pro_id=$StrId";
		ejt($s);
		BIT_DET_ADD($_BIT_ID,$s);
		//
		PRO_UND_ADD($StrId,$StrUni_,$USU_KOD);
		//		
		$SYS_MSG="Datos actualizados";
		$SYS_FOC="TxtCod";
		$LIMPIAR=1;	
	}
}
//-------------------------------------------------------------------------
if($StrCmd=="E"){
	if(YERIFICAR($StrId)==1){		
		$SYS_MSG="El producto esta relacionado a uno o mas procesos, por lo tanto no se puede eliminar. Intente eliminarlo desde el modulo INVENTARIO - CONTROL DE STOCK";
		$SYS_FOC="TxtCod";
		$OK=0;	
	}else{
		$s="DELETE FROM productos WHERE id_producto=$StrId";	
		ejt($s);
		//BIT
		$_BIT_MOD_ID=$StrId;
		$_BIT_SQL_CAB=$s;
		$_BIT_SQL_DET="";
		$_BIT_PHP="sis_productos.php";
		$_BIT_ID=BIT_ADD("MANTENIMIENTO","PRODUCTOS","ELIMINAR",$_BIT_MOD_ID,$_BIT_SQL_CAB,$_BIT_SQL_DET,$_BIT_PHP);
		BIT_DET_ADD($_BIT_ID,$s);
		//BIT	
		$SYS_MSG="Datos Eliminados";
		$SYS_FOC="TxtCod";
		$LIMPIAR=1;	
	}
}
//-------------------------------------------------------------------------
if($StrCmd=="L"){
	$LIMPIAR=1;
}
//-------------------------------------------------------------------------
if($LIMPIAR==1){
	$StrId="";
	$StrCod="";		
	$StrLin="";
	$StrDes="";
	$StrMar="";
	$StrUni="";
	$StrPcS="";
	$StrPcD="";
	$StrPvMin="";
	$StrPvMax="";
	$StrPro="";
	$CboPUso="SI";
	$StrGT="S";		
	$StrRojo="";
	$StrAmbar="";
	$StrPro="";
	$Und="";
	$OK=0;
}
//-------------------------------------------------------------------------
/*function ClsFrm(){
	$StrCod="";		
	$StrLin="";
	$StrDes="";
	$StrMar="";
	$StrUni="";
	$StrPcS="";
	$StrPcD="";
	$StrPvMin="";
	$StrPvMax="";
	$StrPro="";
	$CboPUso="";
}*/
?>
