@extends('layouts.reporte')
@section('php')
@php
$meses1 = [
1=>'Enero', 2=>'Febrero', 3=>'Marzo',
4=>'Abril', 5=>'Mayo', 6=>'Junio',
7=>'Julio', 8=>'Agosto', 9=>'Septiembre',
10=>'Octubre', 11=>'Noviembre', 12=>'Diciembre'
];
$locales = [];
$cantidad = 100;
while ($cantidad <= $cantidad_locales) {
$locales []= $cantidad;
$cantidad = $cantidad + 100;
}
if ($cantidad % 100 == 0) {
$locales []= $cantidad_locales;
}
$cliente = config('app.CLIENTE');
$locales = json_encode($locales);
if ($cliente == "colgate") {
$valor_salida = json_encode(["uni"=> __('messages.unidades'), "700" => __('messages.dias-de-inventario')]);
}else{
$valor_salida = json_encode(["uni"=> __('messages.unidades')]);
}
$tipo_periodo = 'mec';
$tipo_periodo_ = 'dia';
$display = 'none';
if($cliente == 'colgate'){
$tipo_periodo = 'mes';
$tipo_periodo_ = 'mes';
$display = 'block';
}
$salida_evo = json_encode(['901' => 'OSA', '900' => 'Instock', '902' => 'Inventario Fantasma', '903' => 'Quiebre']);
$pareto = json_encode(['100' => '100% de la Venta', '80' => '80% de la Venta']);
$pareto2 = json_encode(['100' => __('messages.100'), '20' => __('messages.20'), '80' => __('messages.80')]);
$periodo = json_encode(['dia' => __('messages.dias')]);
$periodo2 = json_encode(['mes' => __('messages.meses'), 'sem'=> __('messages.semanas')]);
$tipoStock = json_encode(['1' => __('messages.catalogado'), '0' => __('messages.no-catalogado'), '2' => __('messages.no-informado'), '' => __('messages.todos')]);
$tipoStock2 = json_encode(['1' => __('messages.catalogado'), '0' => __('messages.no-catalogado'), '2' => __('messages.no-informado'), '' => __('messages.todos')]);
$alertasForecast = json_encode(['alerta1' => 'Venta 7 = Forecast', 'alerta2' => 'Venta 7 < Forecast', 'alerta3' => 'Venta 7 > Forecast', 'alerta4' => 'Venta 7 < Venta 30 (Sem)', 'alerta5' => 'Venta 7 > Venta 30 (Sem)', 'alerta6' => 'Venta 7 != Venta 30 (Sem)', '' => 'Todos']);
//$motivos = json_encode(["" => __('messages.todos'),"DISPONIBLE" => "DISPONIBLE","NUEVO PRODUCTO" => "NUEVO PRODUCTO","STOCK FANTASMA" => "STOCK FANTASMA","STOCK NEGATIVO" => "STOCK NEGATIVO"]);
$motivos = ['' => __('messages.todos')];
if(count($motivosOSA) > 0){
foreach($motivosOSA as $motivosOsaAux){
$motivos[$motivosOsaAux->motivo] = $motivosOsaAux->motivo;
}
}
$motivos = json_encode($motivos);
$tipos_graficos = json_encode([ "msline" => "Líneas", "stackedcolumn2d" => (__('messages.selector-tipo-grafico-columnas-apiladas')),"mscolumn2d" => "Columnas agrupadas", "stackedbar2d" => "Barras apiladas"]);
$display_grafico = '';
$display_tabla = '';
if ($div_reportes != null) {
$div = '
';
foreach ($div_reportes as $value) {
$div.="- ".$value->Descripcion."
";
}
$div.="
";
}else{
$div='';
}
if($cliente == 'mondelezmx'){
unset($variables['Local']['3-6']); // Zona
unset($variables['Local']['3-4']); // Zona nielsen
unset($variables['Local']['3-8']); // Cluster
}
$variables_2 = $variables;
if(isset($variables_2['Local']) && isset($variables_2['Local']['3-5'])){
unset($variables_2['Local']['3-5']);
}
if(isset($variables_2['Producto']) && isset($variables_2['Producto']['1-15'])){
unset($variables_2['Producto']['1-15']);
}
$ninguno = ['' => ['-1' => 'Sin Seleccionar']];
$variables_2 = $ninguno + $variables_2;
$mesesComp = [];
$yearAct = date('Y');
$yearAnt = date('Y') - 1;
$semanasComp = [];
foreach ($meses as $value) {
list($_mes, $_year) = explode(' ', $value->nombre);
if($_year == $yearAct || $_year == $yearAnt) {
$mesesComp []= $value;
}
}
foreach ($semanas as $value) {
$_year = substr($value->periodo, 0, 4);
if($_year == $yearAct) {
$semanasComp []= $value;
}
}
$salida_detalle = json_encode(['1' => 'Unidades', '2' => 'Kilos']);
@endphp
@endsection
@section('div_reportes')
@php echo $div; @endphp
@endsection
@if(count($selectores_grafico)>0)
@section('grafico')
@if(isset($selectores_grafico['grafinstockdoh']))
Tipo Stock
{{__('messages.selector-generico-texto-pareto')}}
{{__('messages.selector-generico-texto-periodo')}}
{{__('messages.selector-semanas-meses-texto-desde')}}
{{__('messages.selector-semanas-meses-texto-hasta')}}
{{__('messages.selector-semanas-meses-texto-desde')}}
{{__('messages.selector-semanas-meses-texto-hasta')}}
{{__('messages.selector-tipo-grafico')}}
@php $display_grafico = 'display: none;'; @endphp
@endif
@endsection
@endif
@if(count($selectores_tabla)>0)
@section('tabla')
@if(isset($selectores_tabla['evoOsa']))
{{__('messages.selector-generico-texto-valor')}}
Tipo Stock
{{__('messages.selector-generico-texto-pareto')}}
{{__('messages.selector-generico-texto-periodo')}}
{{__('messages.selector-semanas-meses-texto-desde')}}
{{__('messages.selector-semanas-meses-texto-hasta')}}
{{__('messages.selector-semanas-meses-texto-desde')}}
{{__('messages.selector-semanas-meses-texto-hasta')}}
Consultas sobre la tabla: Para utilizar la tabla; definir los parámetros en los selectores y presionar "Actualizar".
- Selector Desglosar Por: Definir la variable por la cual se desglosa el reporte. Es posible desglosar hasta por dos variables (en su segundo selector).
- Valor Salida: Definir la salida del reporte (OSA, Inventario Fantasma, Quiebre).
- Pareto: Definir el Pareto a considerar en el reporte.
- Tipo de Periodo: Definir la periodicidad del reporte.
Ordenar: Clickear en los encabezados de las columnas ordenará los registros de la tabla en orden descendiente según lo que representa esa columna. Clickear nuevamente ordenará los registros en orden ascendente.
Filtros Rápidos: Marcar las opciones a filtrar en cada selector.
- Selector Cliente: Filtrar por Cliente.
- Selector Categoría: Filtrar por Categoría.
- Selector KAM: Filtrar por Key Account Manager (KAM).
Exportar: Descargar datos de la tabla.
- Columas: Corresponde al periodo del registro, según lo establecido en el selector Tipo Periodo.
@php $display_tabla = 'display: none;'; @endphp
@endif
@if(isset($selectores_tabla['osaGeneral']))
{{__('messages.selector-generico-texto-valor')}}
Consultas sobre la tabla: Para utilizar la tabla; definir los parámetros en los selectores y presionar "Actualizar".
- Selector Desglosar Por: Definir la variable por la cual se desglosa el reporte.
Ordenar: Clickear en los encabezados de las columnas ordenará los registros de la tabla en orden descendiente según lo que representa esa columna. Clickear nuevamente ordenará los registros en orden ascendente.
Fila y Columna Total (Títulos de variables seleccionadas): Valores calculados tomando todos los registros.
Filtros Rápidos: Marcar las opciones a filtrar en cada selector.
- Selector Cliente: Filtrar por Cliente.
- Selector Categoría: Filtrar por Categoría.
- Selector KAM: Filtrar por Key Account Manager (KAM).
Exportar: Descargar datos de la tabla.
- Columa Instock (%): Porcentaje de productos InStock.
- Columa DOH: Formula: (STOCK*30) / Ventas ult. 30 dias.
- Columa Stock (U): Cantidad en Unidades de Stock.
- Columa Ventas MEC ($): Ventas Mes en Curso en ($).
- Columa OSA (%): OSA asociado.
- Columa Venta Perdida ($): Venta Perdida en ($).
- Columa Venta Perdida (U): Venta Perdida en (U).
@php $display_tabla = 'display: none;'; @endphp
@endif
@if(isset($selectores_tabla['compOsa']))
Pareto
{{__('messages.selector-generico-texto-periodo')}}
{{__('messages.selector-generico-texto-periodo')}}
{{__('messages.selector-semanas-meses-texto-hasta')}}
{{__('messages.selector-semanas-meses-texto-desde')}}
{{__('messages.selector-semanas-meses-texto-hasta')}}
@php $display_tabla = 'display: none;'; @endphp
@endif
@if(isset($selectores_tabla['osaSabana']))
Tipo Stock
Motivo
Consultas sobre la tabla: Para utilizar la tabla; definir los parámetros en los selectores y presionar "Actualizar".
- Selector Desglosar Por: Definir la variable por la cual se desglosa el reporte.
- Selector Tipo Stock: Definir el tipo de stock del reporte, pudiendo ser entre Catalogado, No Catalogado, No Informado o Todos.
- Selector Motivo: Definir el motivo a filtrar.
Ordenar: Clickear en los encabezados de las columnas ordenará los registros de la tabla en orden descendiente según lo que representa esa columna. Clickear nuevamente ordenará los registros en orden ascendente.
Fila y Columna Total (Títulos de variables seleccionadas): Valores calculados tomando todos los registros.
Filtros Rápidos: Marcar las opciones a filtrar en cada selector.
- Selector Cliente: Filtrar por Cliente.
- Selector Categoría: Filtrar por Categoría.
- Selector KAM: Filtrar por Key Account Manager (KAM).
Exportar: Descargar datos de la tabla.
- Columa DOH: Formula: (STOCK*30) / Ventas ult. 30 dias.
- Columa OSA (%): OSA asociado.
- Columa Stock (U): Cantidad en Unidades de Stock.
- Columa Stock CD: Valor de Stock en Centros de Distribución.
- Columa Transito: Cantidad de productos que se transporta del CD a la sala.
- Columa Ventas 7: Ventas en Unidades de los últimos 7 días.
- Columa Ventas 15: Ventas en Unidades de los últimos 15 días.
- Columa Ventas 30: Ventas en Unidades de los últimos 30 días.
- Columa Venta Perdida ($): Venta Perdida en ($).
- Columa Motivo: Razón del OSA si es cero. Definido por el cliente por criterios para analizar el inventario de una cadena.
- Columa Área: Departamento encargado de gestionar una alerta/motivo de inventario.
- Columa Responsable: Rol/Cargo que desempeña la persona encargada del departamento que debe gestionar la alerta.
@php $display_tabla = 'display: none;'; @endphp
@endif
@if(isset($selectores_tabla['forecast']))
Alerta
Tipo Stock
{{__('messages.selector-generico-texto-pareto')}}
@php $display_tabla = 'display: none;'; @endphp
@endif
@if(isset($selectores_tabla['instockdoh']))
Tipo Stock
{{__('messages.selector-generico-texto-pareto')}}
{{__('messages.selector-generico-texto-periodo')}}
{{__('messages.selector-semanas-meses-texto-hasta')}}
{{__('messages.selector-semanas-meses-texto-hasta')}}
@php $display_tabla = 'display: none;'; @endphp
@endif
@endsection
@endif
@section('js_aft')
@endsection