@extends('template.layout')

@section('styles')
@endsection

@section('content')
    <h1 class="page-title">
        <a href="{{ url('tramite') }}"><i class="icon-action-undo"></i></a>
        Detalle del Trámite TUPA
    </h1>
    <div class="portlet light bordered">
        <div class="tabbable-custom nav-justified">
            <ul class="nav nav-tabs nav-justified">
                <li class="active">
                    <a href="#tab_1_1_1" data-toggle="tab">Información General</a>
                </li>
                <li>
                    <a href="#tab_1_1_2" data-toggle="tab">Requisitos</a>
                </li>
                <li>
                    <a href="#tab_1_1_3" data-toggle="tab">Resolución</a>
                </li>
            </ul>
            <div class="tab-content">
                <div class="tab-pane active" id="tab_1_1_1">
                    <div class="portlet-body">
                        <div class="row">
                            <div class="col-lg-12">
                                {{ Form::model(null) }}
                                <div class="form-horizontal">
                                    <div class="form-group col-lg-6 col-sm-6 col-xs-12" style="margin-right: 10px;">
                                        {!! Form::label('nombre', 'Nombre:', ['class' => 'control-label']) !!}
                                        {!! Form::text('nombre', $tramiteProcedimiento->nombre, ['class' => 'form-control', 'disabled' => false, 'readonly' => 'readonly']) !!}
                                    </div>
                                    <div class="form-group col-lg-6 col-sm-6 col-xs-12" style="margin-right: 10px;">
                                        {!! Form::label('tramite_categoria_nombre', 'Categoría:', ['class' => 'control-label']) !!}
                                        {!! Form::text('tramite_categoria_nombre', ($tramiteProcedimiento->tramite_categoria_nombre != "" ? $tramiteProcedimiento->tramite_categoria_nombre : "---"), ['class' => 'form-control', 'disabled' => false, 'readonly' => 'readonly']) !!}
                                    </div>
                                    <div class="form-group col-lg-6 col-sm-6 col-xs-12" style="margin-right: 10px;">
                                        {!! Form::label('tramite_calificacion', 'Calificación:', ['class' => 'control-label']) !!}
                                        {!! Form::text('tramite_calificacion', ($tramiteProcedimiento->id_tramite_calificacion != "" ? config('constants.TRAMITE_CALIFICACION')[$tramiteProcedimiento->id_tramite_calificacion] : "---"), ['class' => 'form-control', 'disabled' => false, 'readonly' => 'readonly']) !!}
                                    </div>
                                    <div class="form-group col-lg-6 col-sm-6 col-xs-12" style="margin-right: 10px;">
                                        {!! Form::label('plazo_resolucion', 'Duración del Trámite:', ['class' => 'control-label']) !!}
                                        {!! Form::text('plazo_resolucion', ($tramiteProcedimiento->plazo_resolucion >= 0 ? $tramiteProcedimiento->plazo_resolucion . ($tramiteProcedimiento->plazo_resolucion != 1 ? ' días' : ' día') : "---"), ['class' => 'form-control', 'disabled' => false, 'readonly' => 'readonly']) !!}
                                    </div>
                                    <div class="form-group col-lg-6 col-sm-6 col-xs-12" style="margin-right: 10px;">
                                        {!! Form::label('area_inicio_nombre', 'Área Inicial:', ['class' => 'control-label']) !!}
                                        {!! Form::text('area_inicio_nombre', ($tramiteProcedimiento->area_inicio_nombre != "" ? $tramiteProcedimiento->area_inicio_nombre : "---"), ['class' => 'form-control', 'disabled' => false, 'readonly' => 'readonly']) !!}
                                    </div>
                                    <div class="form-group col-lg-6 col-sm-6 col-xs-12" style="margin-right: 10px;">
                                        {!! Form::label('autoridad_competente_nombre', 'Autoridad Competente:', ['class' => 'control-label']) !!}
                                        {!! Form::text('autoridad_competente_nombre', ($tramiteProcedimiento->autoridad_competente_nombre != "" ? $tramiteProcedimiento->autoridad_competente_nombre : "---"), ['class' => 'form-control', 'disabled' => false, 'readonly' => 'readonly']) !!}
                                    </div>
                                    <div class="form-group col-lg-12 col-xs-12" style="margin-right: 10px;">
                                        {!! Form::label('base_legal', 'Base Legal:', ['class' => 'control-label']) !!}
                                        {!! Form::textarea('base_legal', $tramiteProcedimiento->base_legal, ['class' => 'form-control', 'disabled' => false, 'readonly' => 'readonly', 'style' => 'resize: none']) !!}
                                    </div>
                                </div>
                                {!! Form::close() !!}
                            </div>
                        </div>
                    </div>
                </div>
                <div class="tab-pane" id="tab_1_1_2">
                    <div class="portlet-body">
                        <div class="row">
                            <div class="col-lg-12">
                                <table id="dataTable" class="table table-hover nowrap dataTable dtr-inline" style="text-align: center;">
                                    <thead>
                                    <tr>
                                        <th>Nombre</th>
                                        <th>Formulario/Código/Ubicación</th>
                                        <th>Costo UIT</th>
                                        <th>Costo S/.</th>
                                    </tr>
                                    </thead>
                                    <tbody style="text-align: left !important;"></tbody>
                                </table>
                            </div>
                        </div>
                    </div>
                </div>
                <div class="tab-pane" id="tab_1_1_3">
                    <div class="portlet-body">
                        <div class="row">
                            <div class="col-lg-12">
                                <table id="dataTable-2" class="table table-hover nowrap dataTable dtr-inline" style="text-align: center;">
                                    <thead>
                                    <tr>
                                        <th>Nombre</th>
                                        <th>Autoridad</th>
                                        <th>Plazo Presentación</th>
                                        <th>Plazo Resolución</th>
                                    </tr>
                                    </thead>
                                    <tbody style="text-align: left !important;"></tbody>
                                </table>
                            </div>
                        </div>
                    </div>
                </div>
            </div>
        </div>
        <div class="row">
            <div class="col-md-offset-0 col-xs-12 text-center">
                <a class="btn btn-primary" href="#" onclick="Iniciar('{{ $tramiteProcedimiento->id }}', '{{ $tramiteProcedimiento->id_area_inicio }}', '{{ $tramiteProcedimiento->nombre }}')">Iniciar Trámite</a>
            </div>
        </div>
    </div>
    <div id="modalIniciar" class="modal fade" tabindex="-1" role="dialog" aria-labelledby="modalIniciar">
        <div class="modal-dialog" role="document">
            <div class="modal-content">
                <div class="modal-header">
                    <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
                    <h4 class="modal-title caption-subject font-blue-secondary sbold uppercase">Sustento</h4>
                </div>
                <div class="modal-body">
                    {{ Form::open(array('id' => 'form-validation', 'class' => 'form-horizontal', 'name' => 'formIniciar', 'onsubmit' => 'IniciarResult(this, event)')) }}
                    <div class="form-body">
                        {!! Form::hidden('id_tramite_procedimiento', null, ['id' => 'iniciarIdTramiteProcedimiento', 'class' => 'form-control']) !!}
                        {!! Form::hidden('id_dependencia', null, ['id' => 'iniciarIdDependencia', 'class' => 'form-control']) !!}
                        {!! Form::hidden('nombre', null, ['id' => 'iniciarNombre', 'class' => 'form-control']) !!}
                        <div class="form-group">
                            <div class="col-xs-12">
                                {!! Form::textarea('sustento', null, ['class' => 'form-control', 'style' => 'resize: none']) !!}
                            </div>
                        </div>
                        <div class="form-actions">
                            <div class="row">
                                <div class="col-md-offset-0 col-xs-12">
                                    <a class="btn btn-default" href="#" data-dismiss="modal">Cancelar</a>
                                    {!! Form::submit('Guardar', ['class' => 'btn btn-primary', 'name' => 'submit']) !!}
                                </div>
                            </div>
                        </div>
                    </div>
                    {!! Form::close() !!}
                </div>
            </div>
        </div>
    </div>
@endsection

@section('scripts')
    <script>
        var tramiteResolucionTipo = JSON.parse('{!! json_encode(config('constants.TRAMITE_RESOLUCION_TIPO')) !!}');

        var dataTableLanguage = {
            "sProcessing":     "Procesando...",
            "sLengthMenu":     "Mostrar _MENU_ registros",
            "sZeroRecords":    "No se encontraron resultados",
            "sEmptyTable":     "Ningún dato disponible en esta tabla",
            "sInfo":           "Mostrando registros del _START_ al _END_ de un total de _TOTAL_ registros",
            "sInfoEmpty":      "Mostrando registros del 0 al 0 de un total de 0 registros",
            "sInfoFiltered":   "(filtrado de un total de _MAX_ registros)",
            "sInfoPostFix":    "",
            "sSearch":         "Buscar:",
            "sUrl":            "",
            "sInfoThousands":  ",",
            "sLoadingRecords": "Cargando...",
            "oPaginate": {
                "sFirst":    "Primero",
                "sLast":     "Último",
                "sNext":     "Siguiente",
                "sPrevious": "Anterior"
            },
            "oAria": {
                "sSortAscending":  ": Activar para ordenar la columna de manera ascendente",
                "sSortDescending": ": Activar para ordenar la columna de manera descendente"
            }
        };
        var dataTable = [
            function (args) {
                $("#dataTable").DataTable({
                    language: dataTableLanguage,
                    processing: true,
                    serverSide: true,
                    destroy: true,
                    responsive: true,
                    ajax: {
                        data: {
                            id_tramite_procedimiento: args.id_tramite_procedimiento
                        },
                        type: "POST",
                        url: "{{ route('tramite.requisito.post') }}",
                        error: function (jqXHR, textStatus, errorThrown) {
                            /*console.log(jqXHR);
                             console.log(textStatus);
                             console.log(errorThrown);*/
                        }
                    },
                    columns: [
                        {
                            data: "nombre",
                            name: "nombre"
                        },
                        {
                            data: "codigo",
                            name: "codigo",
                            render: function(data, type, row) {
                                var render = "";

                                if (data != "") {
                                    render = "<td>" + data + "</td>";
                                } else {
                                    render = "<td>---</td>";
                                }

                                return render;
                            }
                        },
                        {
                            data: "tramitacion_uit",
                            name: "tramitacion_uit",
                            render: function(data, type, row) {
                                var render = "";

                                if (data != "") {
                                    render = "<td>" + data + "</td>";
                                } else {
                                    render = "<td>---</td>";
                                }

                                return render;
                            }
                        },
                        {
                            data: "tramitacion_soles",
                            name: "tramitacion_soles",
                            render: function(data, type, row) {
                                var render = "";

                                if (data != "") {
                                    render = "<td>" + data + "</td>";
                                } else {
                                    render = "<td>---</td>";
                                }

                                return render;
                            }
                        }
                    ],
                    order: [
                        [0, "asc"]
                    ]
                });
            },
            function (args) {
                $("#dataTable-2").DataTable({
                    language: dataTableLanguage,
                    processing: true,
                    serverSide: true,
                    destroy: true,
                    responsive: true,
                    ajax: {
                        data: {
                            id_tramite_procedimiento: args.id_tramite_procedimiento
                        },
                        type: "POST",
                        url: "{{ route('tramite.resolucion.post') }}",
                        error: function (jqXHR, textStatus, errorThrown) {
                            /*console.log(jqXHR);
                             console.log(textStatus);
                             console.log(errorThrown);*/
                        }
                    },
                    columns: [
                        {
                            data: "id_tramite_resolucion_tipo",
                            name: "id_tramite_resolucion_tipo",
                            render: function(data, type, row) {
                                var render = "";

                                if (data != "") {
                                    render = "<td>" + tramiteResolucionTipo[data] + "</td>";
                                } else {
                                    render = "<td>---</td>";
                                }

                                return render;
                            }
                        },
                        {
                            data: "autoridad_nombre",
                            name: "autoridad_nombre",
                            render: function(data, type, row) {
                                var render = "";

                                if (data != "") {
                                    render = "<td>" + data + "</td>";
                                } else {
                                    render = "<td>---</td>";
                                }

                                return render;
                            }
                        },
                        {
                            data:"plazo_presentacion",
                            name:"plazo_presentacion",
                            render: function(data, type, row) {
                                var render = "";

                                if (data != "") {
                                    render = "<td>" + data + (data != "1" ? " días" : " día") + "</td>";
                                } else {
                                    render = "<td>---</td>";
                                }

                                return render;
                            }
                        },
                        {
                            data:"plazo_resolucion",
                            name:"plazo_resolucion",
                            render: function(data, type, row) {
                                var render = "";

                                if (data != "") {
                                    render = "<td>" + data + (data != "1" ? " días" : " día") + "</td>";
                                } else {
                                    render = "<td>---</td>";
                                }

                                return render;
                            }
                        }
                    ],
                    order: [
                        [1, "asc"]
                    ]
                });
            }
        ];

        $.ajaxSetup({
            headers: {
                'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
            }
        });

        function CargarDataTables(index, args) {
            index = index || -1;
            args = args || null;

            if (index < 0) {
                var dataTableLength = dataTable.length;
                for (var i = 0; i < dataTableLength; i++) {
                    dataTable[i](args);
                }
            } else {
                dataTable[index](args);
            }
        }

        function Iniciar(id_tramite_procedimiento, id_dependencia, nombre) {
            document.getElementById("iniciarIdTramiteProcedimiento").value = id_tramite_procedimiento;
            document.getElementById("iniciarIdDependencia").value = id_dependencia;
            document.getElementById("iniciarNombre").value = nombre;

            $("#modalIniciar").modal("show");
        }

        function IniciarResult(element, event) {
            event.preventDefault();

            var formName = element.name;
            var form = document.forms[formName];

            $("#modalIniciar").modal("hide");

            swal({
                cancelButtonColor: "#dd3333",
                cancelButtonText: "No",
                confirmButtonColor: "#3085d6",
                confirmButtonText: "Sí",
                showCancelButton: true,
                showConfirmButton: true,
                text: form["nombre"].value,
                title: "¿Desea solicitar el trámite?",
                type: "warning"
            }, function (isConfirm) {
                $.ajax({
                    data: {
                        id_tramite_procedimiento: form["id_tramite_procedimiento"].value,
                        id_dependencia: form["id_dependencia"].value,
                        sustento: form["sustento"].value
                    },
                    type: "POST",
                    url: "{{ route('tramite.usuario.agregar.post') }}",
                    success: function(data) {
                        //console.log(data);

                        swal({
                            text: "Trámite agregado",
                            title: "Éxito",
                            type: "success"
                        }, function (isConfirm) {
                            window.location.href = "{{ url('tramite') }}";
                            form["sustento"].value = "";
                        });
                    },
                    error: function(error) {
                        //console.log(error);

                        swal({
                            text: "No se pudo agregar el trámite",
                            title: "Error",
                            type: "error"
                        }, function (isConfirm) {
                            //window.location.href = "{ url('/tramite/') }}";
                            form["sustento"].value = "";
                        });
                    }
                });
            });
        }

        window.onload = function() {
            var args = {
                id_tramite_procedimiento: "{{ $tramiteProcedimiento->id }}" * 1
            };

            CargarDataTables(-1, args);
        };
    </script>
@endsection
