diff --git a/ci4/app/Controllers/Presupuestos/Cosidotapablanda.php b/ci4/app/Controllers/Presupuestos/Cosidotapablanda.php index 33dfeaaf..f5a26275 100755 --- a/ci4/app/Controllers/Presupuestos/Cosidotapablanda.php +++ b/ci4/app/Controllers/Presupuestos/Cosidotapablanda.php @@ -295,6 +295,12 @@ class Cosidotapablanda extends \App\Controllers\BaseResourceController endif; else : if ($this->request->isAJAX()) { + + if($presupuestoEntity->estado_id==1 && $presupuestoEntity->confirmar==1){ + $this->model->confirmarPresupuesto($id); + PresupuestoService::crearPedido($id); + } + $newTokenHash = csrf_hash(); $csrfTokenName = csrf_token(); $data = [ diff --git a/ci4/app/Controllers/Presupuestos/Presupuestocliente.php b/ci4/app/Controllers/Presupuestos/Presupuestocliente.php index 67784cd8..6218c09d 100755 --- a/ci4/app/Controllers/Presupuestos/Presupuestocliente.php +++ b/ci4/app/Controllers/Presupuestos/Presupuestocliente.php @@ -788,7 +788,7 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController if ($confirmar) { $model_presupuesto->confirmarPresupuesto($id); - $this->crearPedido($id); + PresupuestoService::crearPedido($id); } return $this->respond([ @@ -891,44 +891,6 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController * Funciones auxiliares * **********************/ - public function crearPedido($presupuesto_id) - { - $model_pedido = model('App\Models\Pedidos\PedidoModel'); - $model_pedido_linea = model('App\Models\Pedidos\PedidoLineaModel'); - $model_cliente = model('App\Models\Clientes\ClienteModel'); - - $model_presupuesto = new PresupuestoModel(); - $datos_presupuesto = $model_presupuesto->find($presupuesto_id); - - $id_linea = 0; - - $data_pedido = [ - 'total_precio' => $datos_presupuesto->total_aceptado, - 'total_tirada' => $datos_presupuesto->tirada, - 'estado' => $model_cliente->creditoDisponible($datos_presupuesto->cliente_id) ? "produccion" : "validacion", - 'user_created_id' => auth()->user()->id, - 'user_updated_id' => auth()->user()->id, - ]; - - $pedido_id = $model_pedido->insert($data_pedido); - if($pedido_id){ - $data_pedido_linea = [ - "pedido_id" => $pedido_id, - "presupuesto_id" => $presupuesto_id, - "ubicacion_id" => 1, // safetak por defecto - "user_created_id" => auth()->user()->id, - "user_updated_id" => auth()->user()->id, - ]; - $id_linea = $model_pedido_linea->insert($data_pedido_linea); - } - - if($id_linea != 0 && $pedido_id != 0){ - return true; - } - return false; - } - - protected function borrarRelacionesPresupuesto($id) { // Se borran las lineas de presupuesto diff --git a/ci4/app/Language/en/Basic.php b/ci4/app/Language/en/Basic.php index 5e06aaf9..4b55be18 100755 --- a/ci4/app/Language/en/Basic.php +++ b/ci4/app/Language/en/Basic.php @@ -12,6 +12,7 @@ return [ 'Close' => 'Close', 'Dashboard' => 'Dashboard', 'Delete' => 'Delete', + 'Acept' => 'Acept', 'Clone' => 'Clone', 'Print' => 'Print', 'Error' => 'Error', diff --git a/ci4/app/Language/es/Basic.php b/ci4/app/Language/es/Basic.php index 2d385ad2..01e547a1 100755 --- a/ci4/app/Language/es/Basic.php +++ b/ci4/app/Language/es/Basic.php @@ -14,8 +14,7 @@ return [ 'Clone' => 'Duplicar', 'Dashboard' => 'Panel de control', 'Delete' => 'Borrar', - 'Clone' => 'Duplicar', - 'Print' => 'Imprimir', + 'Acept' => 'Aceptar', 'Error' => 'Error', 'Groups' => 'Grupos', 'Home' => 'Inicio', diff --git a/ci4/app/Language/es/Presupuestos.php b/ci4/app/Language/es/Presupuestos.php index efd583a9..9e8b5c4e 100755 --- a/ci4/app/Language/es/Presupuestos.php +++ b/ci4/app/Language/es/Presupuestos.php @@ -207,6 +207,7 @@ return [ 'resumen' => 'Resumen del presupuesto', 'confirmar' => 'Confirmar presupuesto', + 'confirmado' => 'Presupuesto confirmado', // Preview 'preview' => 'Previsualización de configuraciones', diff --git a/ci4/app/Services/PresupuestoService.php b/ci4/app/Services/PresupuestoService.php index ced9f6a7..e7d4899e 100755 --- a/ci4/app/Services/PresupuestoService.php +++ b/ci4/app/Services/PresupuestoService.php @@ -1788,6 +1788,48 @@ class PresupuestoService extends BaseService } + + public static function crearPedido($presupuesto_id) + { + $model_pedido = model('App\Models\Pedidos\PedidoModel'); + $model_pedido_linea = model('App\Models\Pedidos\PedidoLineaModel'); + $model_cliente = model('App\Models\Clientes\ClienteModel'); + + $model_presupuesto = model('App\Models\Presupuestos\PresupuestoModel'); + $datos_presupuesto = $model_presupuesto->find($presupuesto_id); + + $id_linea = 0; + + $data_pedido = [ + 'total_precio' => $datos_presupuesto->total_aceptado, + 'total_tirada' => $datos_presupuesto->tirada, + 'estado' => $model_cliente->creditoDisponible($datos_presupuesto->cliente_id) ? "produccion" : "validacion", + 'user_created_id' => auth()->user()->id, + 'user_updated_id' => auth()->user()->id, + ]; + + $pedido_id = $model_pedido->insert($data_pedido); + if($pedido_id){ + $data_pedido_linea = [ + "pedido_id" => $pedido_id, + "presupuesto_id" => $presupuesto_id, + "ubicacion_id" => 1, // safetak por defecto + "user_created_id" => auth()->user()->id, + "user_updated_id" => auth()->user()->id, + ]; + $id_linea = $model_pedido_linea->insert($data_pedido_linea); + } + + if($id_linea != 0 && $pedido_id != 0){ + return true; + } + return false; + } + + /********************************+ + * FUNCIONES AUXILIARES * + *******************************/ + // Funcion que comprueba si existe una maquina private static function checkMaquina($maquina_id){ diff --git a/ci4/app/Views/themes/vuexy/form/presupuestos/cosidotapablanda/_datosPresupuestoItems.php b/ci4/app/Views/themes/vuexy/form/presupuestos/cosidotapablanda/_datosPresupuestoItems.php index 9aa9fefe..ec087bb1 100644 --- a/ci4/app/Views/themes/vuexy/form/presupuestos/cosidotapablanda/_datosPresupuestoItems.php +++ b/ci4/app/Views/themes/vuexy/form/presupuestos/cosidotapablanda/_datosPresupuestoItems.php @@ -35,12 +35,16 @@
-
diff --git a/ci4/app/Views/themes/vuexy/form/presupuestos/cosidotapablanda/_resumenPresupuestoItems.php b/ci4/app/Views/themes/vuexy/form/presupuestos/cosidotapablanda/_resumenPresupuestoItems.php index 0266d38c..a5040cb1 100644 --- a/ci4/app/Views/themes/vuexy/form/presupuestos/cosidotapablanda/_resumenPresupuestoItems.php +++ b/ci4/app/Views/themes/vuexy/form/presupuestos/cosidotapablanda/_resumenPresupuestoItems.php @@ -70,8 +70,8 @@
- confirmarPresupuesto == true ? 'checked' : ''; ?>> - + estado_id == 2 ? 'onclick="return false;"' : ''; ?> type="checkbox" id="confirmar_presupuesto" name="confirmar_presupuesto" value="1" estado_id == 2 ? 'checked' : ''; ?>> +
diff --git a/ci4/app/Views/themes/vuexy/form/presupuestos/cosidotapablanda/_resumenPresupuestos.js b/ci4/app/Views/themes/vuexy/form/presupuestos/cosidotapablanda/_resumenPresupuestos.js index 0f6837b5..6cfb891e 100644 --- a/ci4/app/Views/themes/vuexy/form/presupuestos/cosidotapablanda/_resumenPresupuestos.js +++ b/ci4/app/Views/themes/vuexy/form/presupuestos/cosidotapablanda/_resumenPresupuestos.js @@ -226,33 +226,37 @@ function addSeparatorsNF(nStr, inD, outD, sep) } function getValuesResumenForm(){ - var formResumen = "" - formResumen += '&total_coste_papel=' + $('#totalCostePapel').attr('val') - formResumen += '&total_margen_papel=' + $('#margenPapel').attr('val') - formResumen += '&total_margenPercent_papel=' + $('#porcentajeMargenPapel').text().replace('%', '') + var formResumen = ""; + formResumen += '&total_coste_papel=' + $('#totalCostePapel').attr('val'); + formResumen += '&total_margen_papel=' + $('#margenPapel').attr('val'); + formResumen += '&total_margenPercent_papel=' + $('#porcentajeMargenPapel').text().replace('%', ''); - formResumen += '&total_coste_impresion=' + $('#totalCosteImpresion').attr('val') - formResumen += '&total_margen_impresion=' + $('#margenImpresion').attr('val') - formResumen += '&total_margenPercent_impresion=' + $('#porcentajeMargenImpresion').text().replace('%', '') + formResumen += '&total_coste_impresion=' + $('#totalCosteImpresion').attr('val'); + formResumen += '&total_margen_impresion=' + $('#margenImpresion').attr('val'); + formResumen += '&total_margenPercent_impresion=' + $('#porcentajeMargenImpresion').text().replace('%', ''); - formResumen += '&total_coste_servicios=' + $('#totalServicios').attr('val') - formResumen += '&total_margen_servicios=' + $('#margenServicios').attr('val') - formResumen += '&total_margenPercent_servicios=' + $('#porcentajeMargenServicios').text().replace('%', '') + formResumen += '&total_coste_servicios=' + $('#totalServicios').attr('val'); + formResumen += '&total_margen_servicios=' + $('#margenServicios').attr('val'); + formResumen += '&total_margenPercent_servicios=' + $('#porcentajeMargenServicios').text().replace('%', ''); - formResumen += '&total_coste_envios=' + $('#totalEnvios').attr('val') - formResumen += '&total_margen_envios=' + $('#margenEnvios').attr('val') + formResumen += '&total_coste_envios=' + $('#totalEnvios').attr('val'); + formResumen += '&total_margen_envios=' + $('#margenEnvios').attr('val'); - formResumen += '&total_costes=' + $('#totalCostes').attr('val') - formResumen += '&total_margenes=' + $('#totalMargenes').attr('val') + formResumen += '&total_costes=' + $('#totalCostes').attr('val'); + formResumen += '&total_margenes=' + $('#totalMargenes').attr('val'); - formResumen += '&total_antes_descuento=' + $('#totalAntesDescuento').attr('val') - formResumen += '&total_descuento=' + $('#descuentoTotal').attr('val') - formResumen += '&total_descuentoPercent=' + $('#total_descuentoPercent').val() - formResumen += '&total_presupuesto=' + $('#totalDespuesDecuento').attr('val') - formResumen += '&total_precio_unidad=' + $('#precioUnidadPresupuesto').attr('val') + formResumen += '&total_antes_descuento=' + $('#totalAntesDescuento').attr('val'); + formResumen += '&total_descuento=' + $('#descuentoTotal').attr('val'); + formResumen += '&total_descuentoPercent=' + $('#total_descuentoPercent').val(); + formResumen += '&total_presupuesto=' + $('#totalDespuesDecuento').attr('val'); + formResumen += '&total_precio_unidad=' + $('#precioUnidadPresupuesto').attr('val'); - formResumen += '&total_factor=' + $('#total_factor').text() - formResumen += '&total_factor_ponderado=' + $('#total_factor_ponderado').text() + formResumen += '&total_factor=' + $('#total_factor').text(); + formResumen += '&total_factor_ponderado=' + $('#total_factor_ponderado').text(); + + if($('#confirmar_presupuesto').prop('checked')){ + formResumen += '&confirmar=1'; + } return formResumen } diff --git a/ci4/app/Views/themes/vuexy/form/presupuestos/cosidotapablanda/viewCosidotapablandaForm.php b/ci4/app/Views/themes/vuexy/form/presupuestos/cosidotapablanda/viewCosidotapablandaForm.php index b94ec96d..c0596ac0 100644 --- a/ci4/app/Views/themes/vuexy/form/presupuestos/cosidotapablanda/viewCosidotapablandaForm.php +++ b/ci4/app/Views/themes/vuexy/form/presupuestos/cosidotapablanda/viewCosidotapablandaForm.php @@ -43,7 +43,7 @@
" /> @@ -266,6 +266,8 @@ $('#bc-save').on( "click", function() { section("additionalInlineJs") ?> + var submitButtonClicked; // Variable para almacenar el botón que fue clickeado + // funcion que genera un JSON con la tabla de tiradas alternativas function generate_json_tiradas() { const data = tableTiradas.rows().data().toArray(); @@ -273,6 +275,7 @@ $('#bc-save').on( "click", function() { } $('#presupuestoForm').on("submit", function(event) { + event.preventDefault(); save_servicios(); save_datos_envios(); @@ -296,6 +299,9 @@ $('#bc-save').on( "click", function() { else{ showBreadCrumbSaveButton(false) popSuccessAlert(data.mensaje) + if($('#confirmar_presupuesto').prop('checked')) { + $('#estado_id').val(2) + } } }