����JFIF��H�H����Exif��MM�*���� ��3����V�����3������3�(��������������������3�����
Server IP : 74.208.127.88 / Your IP : 3.137.163.99 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/salesFactura/ |
Upload File : |
<?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_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->saveSaleFac($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; //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]; //verificamos existencias $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 en existencia negativas"; } } else { $insert = $pos->saveTempSaleS($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['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']; $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; //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]; //verificamos existencias $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) { //verificamos existencias despues de ingresar mas de 1 pieza 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, en facturacion"; } } else { $insert = $pos->saveTempSaleS($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"; } }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_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 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); $total = ($key['price'] - ($key['price'] * $key['discprc'] /100) ) * $key['qty'] ; 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>'; $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); } 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.'); } ?>