Conjunto de cambios e156b7a en seiven para economico


Ignorar:
Fecha y hora:
19/07/2017 17:30:24 (hace 7 años)
Autor:
elinares <elinares@…>
Branches:
master
Children:
9ce081c
Parents:
40567da
Mensaje:

Habilitación de la carga masiva y modificaciones del template en PIB. Corrección del datepicker en Agregados Monetarios

Ubicación:
economico
Ficheros:
3 editados

Leyenda

No modificado
Añadido
Eliminado
  • economico/models.py

    r40567da re156b7a  
    663663                    {'tag': str(PIBActividad._meta.get_field('total_consolidado').verbose_name), 'color': 'indigo', 'text_color': 'white', 'cabecera': True},
    664664                    {'tag': str(PIBActividad._meta.get_field('total_petrolera').verbose_name), 'color': 'green', 'text_color': 'white', 'cabecera': True},
    665                     {'tag': str(PIBActividad._meta.get_field('total_no_petrolera').verbose_name), 'color': 'ocean_blue', 'text_color': 'white', 'combine': 2, 'cabecera': True},
     665                    {'tag': str(PIBActividad._meta.get_field('total_no_petrolera').verbose_name), 'color': 'ocean_blue', 'text_color': 'white', 'cabecera': True},
    666666                    {'tag': str(PIBActividad._meta.get_field('mineria').verbose_name), 'color': 'gray25', 'text_color': 'white', 'cabecera': True},
    667667                    {'tag': str(PIBActividad._meta.get_field('manufactura').verbose_name), 'cabecera': True},
     
    755755
    756756        load_file = pyexcel.get_book(bookdict=kwargs['file_content'])[0]
    757         anho_base, i, col_ini, errors, result, message, is_nominal = '', 0, 2, '', False, '', False
     757        anhos_base, anho_b, errors, result, message, is_nominal = None, None, '', False, '', False
    758758        is_demanda, is_produccion, is_actividad, is_sector = False, False, False, False
    759759        load_data_msg = str(_("Datos Cargados"))
     
    795795                'message': str(_("El documento a cargar no es válido o no corresponde a los parámetros seleccionados"))
    796796            }
    797 
    798        
     797 
     798        if not is_nominal:
     799            # Se crea una lista con los años base del modelo
     800            anhos_base = [int(anhos.anho) for anhos in AnhoBase.objects.all()]
     801            #Se almacena el año base suministrado en el formulario
     802            anho_b = AnhoBase.objects.get(id=kwargs['anho_base'])
    799803        ## En base al archivo cargado, se validan y cargan a la base de datos los valores contenidos en el archivo
    800804        for row in load_file.row[2:]:
    801805            try:
    802                 # Asigna el año base del registro
    803                 anho_b = int(kwargs['anho_base'])
    804 
    805                 # Posición inicial desde la cual se van a comenzar a registrar los datos en los modelos asociados
     806                # Obtención del año a registrar
    806807                anho = row[0]
    807808
    808809                # Condición que indica si el registro corresponde al año base
    809                 base = True if i == 0 else False
    810 
     810                base = True if anho in anhos_base else False
     811               
    811812                # Almacena el valor en caso de tratarse del archivo PIB-Nominal_demanda o False en caso contrario
    812813                nominal = row[1] if (is_nominal and is_demanda) else None
     
    866867            except Exception as e:
    867868                errors += "- %s\n" % str(e)
    868             i += 1
    869869
    870870        if errors:
     
    13741374class AgregadosBase(models.Model):
    13751375    """!
    1376     Clase que contiene los registros comunes de los modelos relacionados con la Sub-área Agregados Monetarios
     1376    Clase que contiene los registros comunes de los modelos relacionados con el Sub-área Agregados Monetarios
    13771377
    13781378    @author Edgar A. Linares (elinares at cenditel.gob.ve)
  • economico/templates/economico.agregados.monetarios.html

    re2e4c11 re156b7a  
    7575    <script>
    7676        var dominio = $("#{{ form.dominio.auto_id }}");
     77        var fecha = $(".fecha");
    7778        var fecha_ini = $("#{{ form.start_date.auto_id }}");
    7879        var fecha_fin = $("#{{ form.end_date.auto_id }}");
     
    9495            * @date 30-05-2017
    9596            */
     97            var f_ini = fecha_ini.val().split("/");
     98            var f_fin = fecha_fin.val().split("/");
    9699            var filters = $("#filters"), json_filter = '';
    97100
     
    112115            }
    113116            if (dominio.val()){
    114                 $('.enlaces').show();
     117                if (fecha_ini.val() && fecha_fin.val())
     118                    if (f_ini[2] <= f_fin[2] && f_ini[1] <= f_fin[1])
     119                        if (f_ini[1] == f_fin[1] && f_ini[0] <= f_fin[0])
     120                            $('.enlaces').show();
     121                        else if (f_ini[1] != f_fin[1])
     122                            $('.enlaces').show();
     123                        else
     124                            $('.enlaces').hide();
     125                    else
     126                        $('.enlaces').hide();
    115127            }
    116             else {
    117                 $('.enlaces').hide();
    118             }
     128           
    119129            if (fecha_ini.val()) {
    120                 json_filter += "\"dia__gte\": \"" + fecha_ini.val() + "\",";
     130                json_filter += "\"fecha__gte\": \"" + fecha_ini.val() + "\",";
    121131            }
    122132            if (fecha_fin.val()) {
    123                 json_filter += "\"dia__lte\": \"" + fecha_fin.val() + "\",";
     133                json_filter += "\"fecha__lte\": \"" + fecha_fin.val() + "\",";
    124134            }
    125135            if (semana_ini.val()) {
     
    167177            anho_ini.on('change', function() { set_filters() });
    168178            anho_fin.on('change', function() { set_filters() });
     179            fecha.on('changeDate', function() { set_filters() });
     180        });
     181
     182        $(".fecha").datepicker( {
     183            format: "dd/mm/yyyy"
     184        }).on('changeDate', function (ev) {
     185            $(this).datepicker('hide');
    169186        });
    170187    </script>
  • economico/templates/economico.pib.html

    re2e4c11 re156b7a  
    2323            </div>
    2424            <div class="row separador-row">
    25                 <div class="col-xs-2 col-sm-2 col-md-2 col-lg-2">
     25                <div class="col-xs-2 col-sm-2 col-md-2 col-lg-2" align="right">
    2626                    <label for="{{ form.tipo.auto_id }}" class="control-label">
    27                     {{ form.tipo.label }}</label>
     27                    {{ form.tipo.label }}:</label>
    2828                </div>
    2929                <div class="col-xs-2 col-sm-2 col-md-2 col-lg-2"> {{ form.tipo }}</div>
    30                 <div class="col-xs-2 col-sm-2 col-md-2 col-lg-2">
     30                <div class="col-xs-2 col-sm-2 col-md-2 col-lg-2" align="right">
    3131                    <label for="{{ form.dominio.auto_id }}" class="control-label">
    32                     {{ form.dominio.label }}</label>
     32                    {{ form.dominio.label }}:</label>
    3333                </div>
    3434                <div class="col-xs-2 col-sm-2 col-md-2 col-lg-2">{{ form.dominio }}</div>
    35                 <div class="col-xs-2 col-sm-2 col-md-2 col-lg-2">
     35                <div class="col-xs-2 col-sm-2 col-md-2 col-lg-2 anho_base" align="right">
    3636                    <label for="{{ form.anho_base.auto_id }}" class="control-label">
    37                     {{ form.anho_base.label }}</label>
    38                 </div>
    39                 <div class="col-xs-2 col-sm-2 col-md-2 col-lg-2">{{ form.anho_base }}</div>
     37                    {{ form.anho_base.label }}:</label>
     38                </div>
     39                <div class="col-xs-2 col-sm-2 col-md-2 col-lg-2 anho_base">{{ form.anho_base }}</div>
    4040            </div>
    4141            <div class="row separador-row periodo" style='display:none;'>
     
    4343                </div>
    4444                <div class="col-xs-2 col-sm-2 col-md-2 col-lg-2 trimestral" style='display:none;'>
    45                     <label class="control-label">{% trans 'Trimestral' %}</label>
     45                    <label class="control-label">{% trans 'Trimestral' %}:</label>
    4646                </div>
    4747                <div class="col-xs-2 col-sm-2 col-md-2 col-lg-2">
    48                     <label class="control-label">{% trans 'Año' %}</label>
     48                    <label class="control-label">{% trans 'Año' %}:</label>
    4949                </div>
    5050            </div>
    5151            <div class="row separador-row periodo" style='display:none;'>
    52                 <div class="col-xs-2 col-sm-2 col-md-2 col-lg-2 col-xs-offset-2 col-sm-offset-2 col-md-offset-2 col-lg-offset-2">
    53                     <label class="control-label">{% trans 'Período' %}</label>
    54                 </div>
    55                 <div class="col-xs-2 col-sm-2 col-md-2 col-lg-2">
    56                     <label class="control-label">{{ form.periodo_trimestre_ini.label }}</label>
     52                <div class="col-xs-2 col-sm-2 col-md-2 col-lg-2 col-xs-offset-2 col-sm-offset-2 col-md-offset-2 col-lg-offset-2" align="right">
     53                </div>
     54                <div class="col-xs-1 col-sm-1 col-md-1 col-lg-1">
     55                    <label class="control-label">{% trans 'Período' %}:</label>
     56                </div>
     57                <div class="col-xs-1 col-sm-1 col-md-1 col-lg-1" align="right">
     58                    <label class="control-label">{{ form.periodo_trimestre_ini.label }}:</label>
    5759                </div>
    5860                <div class="col-xs-2 col-sm-2 col-md-2 col-lg-2 trimestral" style='display:none;'>
     
    6264            </div>
    6365            <div class="row separador-row periodo" style='display:none;'>
    64                 <div class="col-xs-2 col-sm-2 col-md-2 col-lg-2 col-xs-offset-4 col-sm-offset-4 col-md-offset-4 col-lg-offset-4">
    65                     <label class="control-label">{{ form.periodo_trimestre_fin.label }}</label>
     66                <div class="col-xs-2 col-sm-2 col-md-2 col-lg-2 col-xs-offset-4 col-sm-offset-4 col-md-offset-4 col-lg-offset-4" align="right">
     67                    <label class="control-label">{{ form.periodo_trimestre_fin.label }}:</label>
    6668                </div>
    6769                <div class="col-xs-2 col-sm-2 col-md-2 col-lg-2 trimestral" style='display:none;'>
     
    106108                if (tipo.val() == 'R') {
    107109                    json_filter += "\"real__isnull\": \"false\",";
     110                    $('.anho_base').show();
    108111                    if (tipo_ant != tipo.val())
    109112                        select_dominio.html(options_dominio);
     
    111114                else {
    112115                    json_filter += "\"nominal__isnull\": \"false\",";
     116                    $('.anho_base').hide();
    113117                    if (tipo_ant != tipo.val()){
    114118                        $("#id_dominio option[value='AE']").remove();
     
    132136                }
    133137            }
    134             if (tipo.val() == 'R' && (dominio.val() == 'AE' || dominio.val() == 'SI')) {
    135                 $('.periodo').show();
    136                 $('.trimestral').show();
    137             }
    138             else if (tipo.val() && dominio.val()) {
     138            if (tipo.val() == 'R' && dominio.val() && anho_base.val()) {
     139                if ((dominio.val() == 'AE' || dominio.val() == 'SI')){
     140                    $('.periodo').show();
     141                    $('.trimestral').show();
     142                }
     143                else{
     144                    $('.periodo').show();
     145                    $('.trimestral').hide();   
     146                }
     147            }
     148            else if (tipo.val() == 'N' && dominio.val()) {
    139149                $('.periodo').show();
    140150                $('.trimestral').hide();
     
    194204            trimestre_ini.on('change', function() { set_filters() });
    195205            trimestre_fin.on('change', function() { set_filters() });
     206
     207            // Función para procesar el archivo de carga masiva
     208            $('.fileinput-upload-button').click(function(event){
     209                event.preventDefault();
     210                var fdata = new FormData();
     211                fdata.append('file',file.files[0]);
     212                $.ajax({
     213                    url: URL_CARGAR_ARCHIVO_CM+models,
     214                    data: fdata,
     215                    contentType: false,
     216                    processData: false,
     217                    type: 'POST',
     218                    dataType: 'json',
     219                    success: function(data){
     220                        var msg = data.message ? data.result : data.error;
     221                        bootbox.alert(msg);
     222                    },
     223                    error: function(error){
     224                        console.log(error);
     225                    }
     226                });
     227            });
    196228        });
    197229    </script>
Nota: Vea TracChangeset para ayuda en el uso del visor de conjuntos de cambios.