function confirmar() { $id = $_REQUEST['idOrdenCompra']; $dataOrdenCompra = $_REQUEST['OrdenCompra']; $dataOrdenCompraDetalle = $_REQUEST['Detalleordencompra']; //echo '<pre>'; //print_r($dataOrdenCompraDetalle); //exit; $dataOrdenCompra['valorizado'] = 1; if ($_REQUEST['conformidad'] != 'on') { $dataOrdenCompra['vbimportaciones'] = 0; } if ($_REQUEST['registrado'] == 1) { $detalleMovimiento = $this->AutoLoadModel('detallemovimiento'); $dataproducto = $_REQUEST['Producto']; } $totalDOC = count($dataOrdenCompraDetalle); $ordenCompra = new Ordencompra(); $detalleOrdenCompra = new Detalleordencompra(); $producto = new Producto(); $historialProducto = new Historialproducto(); $exito1 = $ordenCompra->actualizaOrdenCompra($dataOrdenCompra, $id); for ($i = 1; $i <= $totalDOC; $i++) { //Actualizando el DetalleOrdenCompra $idDOC = $dataOrdenCompraDetalle[$i]['iddetalleordencompra']; $ddoci = $dataOrdenCompraDetalle[$i]; $exito_doc = $detalleOrdenCompra->actualizaDetalleOrdenCompra($ddoci, $idDOC); $idProducto = $dataOrdenCompraDetalle[$i]['idproducto']; if ($_REQUEST['registrado'] == 1) { $tcv = $ordenCompra->TipoCambioxIdOrdenCompra($id); $tipocambio = $tcv[0]['tipocambiovigente']; $filtro = "m.idordencompra='{$id}' and dm.idproducto='{$idProducto}' "; $dataMovimiento = $detalleMovimiento->buscaDetalleMovimientoxFiltro($filtro); $iddetallemovimiento = $dataMovimiento[0]['iddetallemovimiento']; $precioCosto = $dataOrdenCompraDetalle[$i]['cifunitario'] * $tipocambio; $cantidadRecibida = $dataOrdenCompraDetalle[$i]['cantidadrecibidaoc']; $stockactual = $dataMovimiento[0]['stockactual'] - $dataMovimiento[0]['cantidad']; $precioactual = $dataproducto[$i]['preciocosto']; $stockproducto = $stockactual + $cantidadRecibida; $preciovalorizado = ($precioCosto * $cantidadRecibida + $stockactual * $precioactual) / $stockproducto; $preciovalorizado = round($preciovalorizado, 2); $ddm['preciovalorizado'] = $preciovalorizado; $ddm['pu'] = $precioCosto; $datop['preciocosto'] = $preciovalorizado; $exitoM = $detalleMovimiento->actualizaDetalleMovimientoxid($iddetallemovimiento, $ddm); } $datop['fob'] = $dataOrdenCompraDetalle[$i]['fobdoc']; $exitoP = $producto->actualizaProducto($datop, $idProducto); // $preciocosto=$dataOrdenCompraDetalle[$i]['totalunitario']; // $idproducto=$dataOrdenCompraDetalle[$i]['idproducto']; // $cantidad=$dataOrdenCompraDetalle[$i]['cantidadsolicitadaoc']; // $dp=$producto->buscaProducto($idproducto);//Data producto // $psv=(($dp[0]['stockactual']*$dp[0]['preciocosto'])+($cantidad*$precioCosto))/($dp[0]['stockactual']+$cantidad);//Precio de stock valorizado // /*Datos de la tabla producto*/ // $dp1['preciocosto']=$precioCosto; // $dp1['fob']=$dataOrdenCompraDetalle[$i]['fobdoc']; // $dp1['cif']=$dataOrdenCompraDetalle[$i]['cifunitario']; // $dp1['precioreferencia01']=($psv*1.10); // //Datos para Historial producto // $dhp['idproducto']=$idproducto; // $dhp['preciofob']=$dataOrdenCompraDetalle[$i]['fobdoc']; // $dhp['hpreciocosto']=$precioCosto; // $dhp['preciostockvalorizado']=$psv; // $exito2=$producto->actualizaProducto($dp1,$idproducto); // $exito3=$historialProducto->grabaHistorialProducto($dhp); } if ($exito_doc and $exito1) { $ruta['ruta'] = "/importaciones/ordencompra"; $this->view->show('ruteador.phtml', $ruta); } }