function autorizarventa() { if (!$_REQUEST['idOrdenVenta']) { $ordenVenta = new OrdenVenta(); $opciones = new general(); $url = "/" . $_REQUEST['url']; $data['Opcion'] = $opciones->buscaOpcionexurl($url); $data['Modulo'] = $opciones->buscaModulosxurl($url); $data['ordenVenta'] = $ordenVenta->pedidoxaprobar(); $data['FormaPago'] = $this->formaPago(); $this->view->show("ventas/aprobarpedido.phtml", $data); } else { $id = $_REQUEST['idOrdenVenta']; $ordenVenta = new OrdenVenta(); if ($id != '' && $id != 0) { $dataBusqueda = $ordenVenta->buscarOrdenVentaxId($id); } if ($dataBusqueda[0]['vbventas'] != 1) { $estadoOrden = $_REQUEST['estadoOrden']; $dataOrdenVenta = $_REQUEST['Orden']; $dataDetalleOrdenVenta = $_REQUEST['DetalleOrdenVenta']; $detalleOrdenVenta = new DetalleOrdenVenta(); $producto = new Producto(); $dataOrdenVenta['vbventas'] = $estadoOrden == 1 ? 1 : 2; if ($dataOrdenVenta['vbventas'] == 2) { $dataOrdenVenta['desaprobado'] = 1; } $productos = $_REQUEST['Producto']; $exito1 = $ordenVenta->actualizaOrdenVenta($dataOrdenVenta, $id); $cont = 0; if ($exito1) { foreach ($dataDetalleOrdenVenta as $data) { if ($dataOrdenVenta['vbventas'] == 2 || $data['estado'] == 0) { //buscamos producto $idproducto = $productos[$cont]['idproducto']; $dataProducto = $producto->buscaProductoxId($idproducto); $stockdisponibleA = $dataProducto[0]['stockdisponible']; $stockdisponibleN = $stockdisponibleA + $productos[$cont]['cantsolicitada']; $dataNuevo['stockdisponible'] = $stockdisponibleN; //actualizamos es stockdisponible $exitoP = $producto->actualizaProducto($dataNuevo, $idproducto); } elseif ($data['estado'] == 1 && $dataOrdenVenta['vbventas'] == 1) { //buscamos producto $idproducto = $productos[$cont]['idproducto']; $dataProducto = $producto->buscaProductoxId($idproducto); $stockdisponibleA = $dataProducto[0]['stockdisponible']; $stockdisponibleN = $stockdisponibleA + $productos[$cont]['cantsolicitada'] - $data['cantaprobada']; $dataNuevo['stockdisponible'] = $stockdisponibleN; //actualizamos es stockdisponible $exitoP = $producto->actualizaProducto($dataNuevo, $idproducto); } $exito2 = $detalleOrdenVenta->actualizar($data['iddetalleordenventa'], $data); $cont++; } if ($exito2) { $ordenVentaDuracion = new ordenventaduracion(); $DDA = $ordenVentaDuracion->listaOrdenVentaDuracion($id, "creacion"); $dataDuracion['idordenventa'] = $id; $intervalo = $this->date_diff(date('Y-m-d H:i:s', strtotime($DDA[0]['fechacreacion'])), date('Y-m-d H:i:s')); $dataDuracion['tiempo'] = $intervalo; $dataDuracion['referencia'] = 'ventas'; if (empty($DDA[0]['fechacreacion'])) { $dataDuracion['tiempo'] = 'indefinido'; } $exito3 = $ordenVentaDuracion->grabaOrdenVentaDuracion($dataDuracion); $ruta['ruta'] = "/ventas/autorizarventa"; $this->view->show("ruteador.phtml", $ruta); //$date3=date('Y-m-d H:i:s'); //$intervalo=$this->date_diff($date3,'2013-01-23 15:30:00'); } } } else { $ruta['ruta'] = "/ventas/autorizarventa"; $this->view->show("ruteador.phtml", $ruta); } } }
function regOrdenSalida() { if (!$_REQUEST['idOrdenVenta']) { $ordenVenta = new OrdenVenta(); $opciones = new general(); $actorrol = new actorrol(); $url = "/" . $_REQUEST['url']; $data['Despachador'] = $actorrol->actoresxRol(30); $data['Verificador'] = $actorrol->actoresxRol(31); $data['Opcion'] = $opciones->buscaOpcionexurl($url); $data['Modulo'] = $opciones->buscaModulosxurl($url); $data['ordenVenta'] = $ordenVenta->pedidoxaprobar(5); $data['FormaPago'] = $this->formaPago(); $this->view->show("/almacen/regordenpedido.phtml", $data); } else { $id = $_REQUEST['idOrdenVenta']; $dataOrdenVenta = $_REQUEST['Orden']; $ordenVenta = new OrdenVenta(); $exito1 = $ordenVenta->actualizaOrdenVenta($dataOrdenVenta, $id); if ($exito1) { //grabamos las series $detOrden = $this->AutoLoadModel('detalleordenventa'); $detalleOrdenVenta = $_REQUEST['DetalleOrdenVenta']; $cantidad = count($detalleOrdenVenta); for ($i = 0; $i < $cantidad; $i++) { $data['serie'] = $detalleOrdenVenta[$i]['serie']; $exito2 = $detOrden->actualizar($detalleOrdenVenta[$i]['iddetalleordenventa'], $data); } //graba el tiempo que demoro ser confirmado $ordenVentaDuracion = new ordenventaduracion(); $DDA = $ordenVentaDuracion->listaOrdenVentaDuracion($id, "credito"); $dataDuracion['idordenventa'] = $id; $intervalo = $this->date_diff(date('Y-m-d H:i:s', strtotime($DDA[0]['fechacreacion'])), date('Y-m-d H:i:s')); $dataDuracion['tiempo'] = $intervalo; if (empty($DDA[0]['fechacreacion'])) { $dataDuracion['tiempo'] = 'indefinido'; } $dataDuracion['referencia'] = 'despacho'; $exitoN = $ordenVentaDuracion->grabaOrdenVentaDuracion($dataDuracion); //actualiza ordenventa su duracion total $DDAT = $ordenVentaDuracion->listaOrdenVentaDuracion($id, "creacion"); $fechaInicio = $DDAT[0]['fechacreacion']; if (empty($fechaInicio)) { $dt = $ordenVenta->buscaOrdenVenta($id); $fechaInicio = $dt[0]['fechacreacion']; } $intervalo2 = $this->date_diff(date('Y-m-d H:i:s', strtotime($fechaInicio)), date('Y-m-d H:i:s')); $DOV['tiempoduracion'] = $intervalo2; $exitoN2 = $ordenVenta->actualizaOrdenVenta($DOV, $id); $ruta['ruta'] = "/almacen/regOrdenSalida"; $this->view->show("ruteador.phtml", $ruta); } } }
function aprobarPedido() { if (!isset($_REQUEST['idOrden'])) { $orden = new OrdenVenta(); $data['ordenVenta'] = $orden->pedidoxaprobar(2); $data['FormaPago'] = $this->formaPago(); $this->view->show("cobranza/aprobarpedido.phtml", $data); } else { $id = $_REQUEST['idOrden']; $estadoOrden = $_REQUEST['estadoOrden']; $dataOrdenVenta = $_REQUEST['Orden']; $ordenVenta = new OrdenVenta(); $producto = new Producto(); $dataOrdenVenta['vbcobranzas'] = $estadoOrden; if ($estadoOrden == 2) { $dataOrdenVenta['desaprobado'] = 1; } $productos = $_REQUEST['Producto']; $cantidadProducto = count($productos); $exito1 = $ordenVenta->actualizaOrdenVenta($dataOrdenVenta, $id); if ($exito1) { if ($estadoOrden == 2) { for ($i = 0; $i < $cantidadProducto; $i++) { //buscamos producto $idproducto = $productos[$i]['idproducto']; $dataProducto = $producto->buscaProductoxId($idproducto); $stockdisponibleA = $dataProducto[0]['stockdisponible']; $stockdisponibleN = $stockdisponibleA + $productos[$i]['cantaprobada']; $dataNuevo['stockdisponible'] = $stockdisponibleN; //actualizamos es stockdisponible $exitoP = $producto->actualizaProducto($dataNuevo, $idproducto); } } $ordenVentaDuracion = new ordenventaduracion(); $DDA = $ordenVentaDuracion->listaOrdenVentaDuracion($id, "ventas"); $dataDuracion['idordenventa'] = $id; $intervalo = $this->date_diff(date('Y-m-d H:i:s', strtotime($DDA[0]['fechacreacion'])), date('Y-m-d H:i:s')); $dataDuracion['tiempo'] = $intervalo; $dataDuracion['referencia'] = 'cobranza'; if (empty($DDA[0]['fechacreacion'])) { $dataDuracion['tiempo'] = 'indefinido'; } $exito3 = $ordenVentaDuracion->grabaOrdenVentaDuracion($dataDuracion); $ruta['ruta'] = "/cobranza/aprobarpedido"; $this->view->show("ruteador.phtml", $ruta); } } }