From d7ac9e7d6d6e5f31d7f89748781b9525ee80d3d9 Mon Sep 17 00:00:00 2001 From: David Morales Date: Thu, 12 Dec 2019 20:06:52 -0500 Subject: [PATCH] add mov by source se agrega movimientos a consulta de rubros por fuente y se agrega parametro para que consulte por tipo generico de movimiento --- src/app/@core/helpers/fuentes/fuenteHelper.ts | 2 +- src/app/@core/helpers/modApropiacionHelper.ts | 4 +- ...st-modificacion-apropiacion.component.html | 6 ++ ...list-modificacion-apropiacion.component.ts | 20 ++++- .../rubros-fuente.component.html | 87 +++++++++++-------- .../rubros-fuente.component.scss | 8 +- .../rubros-fuente/rubros-fuente.component.ts | 68 +++++++++++++-- .../set-modificacion-fuente.component.ts | 3 +- src/assets/i18n/es.json | 6 ++ 9 files changed, 152 insertions(+), 52 deletions(-) diff --git a/src/app/@core/helpers/fuentes/fuenteHelper.ts b/src/app/@core/helpers/fuentes/fuenteHelper.ts index 780c5fbf..787c4daf 100644 --- a/src/app/@core/helpers/fuentes/fuenteHelper.ts +++ b/src/app/@core/helpers/fuentes/fuenteHelper.ts @@ -36,7 +36,7 @@ export class FuenteHelper { return undefined; } else if (!id || this.query_params === '0/1') { res.forEach(element => { - element.Vigencia === '0' ? element.Vigencia = 'sin vigencia asignada' : element.Vigencia; + element.Vigencia === 0 ? element.Vigencia = 'sin vigencia asignada' : element.Vigencia; }); } return res; diff --git a/src/app/@core/helpers/modApropiacionHelper.ts b/src/app/@core/helpers/modApropiacionHelper.ts index a292c6ee..2d286694 100644 --- a/src/app/@core/helpers/modApropiacionHelper.ts +++ b/src/app/@core/helpers/modApropiacionHelper.ts @@ -39,9 +39,9 @@ export class ModApropiacionHelper { ); } - public getAllModificacionesApr(id?: any, params?: { vigencia: string, cg: string }) { + public getAllModificacionesApr(id?: any, params?: { vigencia: string, cg: string, tipomod: string }) { this.rqManager.setPath('PLAN_CUENTAS_MID_SERVICE'); - return this.rqManager.get(`modificacion_apropiacion/${params.vigencia}/${params.cg}`).pipe( + return this.rqManager.get(`modificacion_apropiacion/${params.vigencia}/${params.cg}/${params.tipomod}`).pipe( map( (res) => { if (res['Type'] === 'error') { diff --git a/src/app/pages/plan-cuentas/consulta-modificacion-apropiacion/list-modificacion-apropiacion.component.html b/src/app/pages/plan-cuentas/consulta-modificacion-apropiacion/list-modificacion-apropiacion.component.html index e3b2e597..e1143bc5 100644 --- a/src/app/pages/plan-cuentas/consulta-modificacion-apropiacion/list-modificacion-apropiacion.component.html +++ b/src/app/pages/plan-cuentas/consulta-modificacion-apropiacion/list-modificacion-apropiacion.component.html @@ -12,6 +12,12 @@ {{ v.vigencia }} + {{ + "GLOBAL.tipo" | translate + }} + + {{ v.label }} + diff --git a/src/app/pages/plan-cuentas/consulta-modificacion-apropiacion/list-modificacion-apropiacion.component.ts b/src/app/pages/plan-cuentas/consulta-modificacion-apropiacion/list-modificacion-apropiacion.component.ts index bcd7217c..fc59a9c4 100644 --- a/src/app/pages/plan-cuentas/consulta-modificacion-apropiacion/list-modificacion-apropiacion.component.ts +++ b/src/app/pages/plan-cuentas/consulta-modificacion-apropiacion/list-modificacion-apropiacion.component.ts @@ -15,11 +15,12 @@ import { ApropiacionHelper } from '../../../@core/helpers/apropiaciones/apropiac export class ListModificacionApropiacionComponent implements OnInit { - paramsFieldsName: { vigencia: string, cg: string }; + paramsFieldsName: { vigencia: string, cg: string , tipomod: string}; uuidReadFieldName: string; uuidDeleteFieldName: string; vigenciaSel: any; + tipoModSel: any; vigencias: any[]; deleteConfirmMessage: string; deleteMessage: string; @@ -44,6 +45,7 @@ export class ListModificacionApropiacionComponent implements OnInit { localtabACtived: boolean = false; viewTab: boolean = false; modificationDataSelected: object; + tipoModificaciones: { value: string; label: any; }[]; constructor( private translate: TranslateService, @@ -58,6 +60,9 @@ export class ListModificacionApropiacionComponent implements OnInit { this.vigencias = res; } }); + this.tipoModificaciones = [ + {value: 'modificacion_presupuestal', label:this.translate.instant('GLOBAL.mod_presupuestal')}, + {value: 'modificacion_fuente', label:this.translate.instant('GLOBAL.mod_fuente')}]; this.uuidReadFieldName = '_id'; this.uuidDeleteFieldName = '_id'; this.isOnlyCrud = true; @@ -68,10 +73,12 @@ export class ListModificacionApropiacionComponent implements OnInit { this.commonHelper.geCurrentVigencia().subscribe(res => { if (res) { this.vigenciaSel = res + ''; + this.tipoModSel = this.tipoModificaciones[0]; } - this.paramsFieldsName = { vigencia: this.vigenciaSel, cg: '1' }; + this.paramsFieldsName = { vigencia: this.vigenciaSel, cg: '1' , tipomod: this.tipoModSel.value}; this.loadFormDataFunction = this.modificacionAprHelper.getAllModificacionesApr; }); + this.listColumns = { TipoDocumento: { @@ -145,7 +152,14 @@ export class ListModificacionApropiacionComponent implements OnInit { onSelect(selectedItem: any) { this.vigenciaSel = selectedItem; - this.paramsFieldsName = { vigencia: this.vigenciaSel, cg: '1' }; + this.paramsFieldsName = { vigencia: this.vigenciaSel, cg: '1' , tipomod: this.tipoModSel.value }; + // this.eventChange.emit(true); + } + + onSelectTipoMod(selectedItem: any) { + console.info(selectedItem); + this.tipoModSel = selectedItem; + this.paramsFieldsName = { vigencia: this.vigenciaSel, cg: '1', tipomod: this.tipoModSel.value }; // this.eventChange.emit(true); } diff --git a/src/app/pages/plan-cuentas/fuentes/rubros-fuente/rubros-fuente.component.html b/src/app/pages/plan-cuentas/fuentes/rubros-fuente/rubros-fuente.component.html index acac8afa..94908300 100644 --- a/src/app/pages/plan-cuentas/fuentes/rubros-fuente/rubros-fuente.component.html +++ b/src/app/pages/plan-cuentas/fuentes/rubros-fuente/rubros-fuente.component.html @@ -4,7 +4,7 @@
@@ -12,44 +12,59 @@
{{infoinput.Nombre}} - {{infoinput.Codigo}} No hay información asociada para esta fuente de financiamiento -
+
+
-
    -
  • Rubro: - {{item.rubro.Nombre}} ( {{item.rubro.Codigo}} ) -
      -
    • Apropiación Inicial: - {{item.rubro.ValorInicial | currency:'COP':'symbol':'4.2-2':'co'}}
    • -
        -
      • Meta: {{item.meta}}
      • -
      -
        -
      • Dependencia: {{item.dependencia}}
      • -
      • Valor Dependencia: - {{item.valor_fuente_financiamiento | currency:'COP':'symbol':'4.2-2':'co'}}
      • -
      +
      + +
        +
      • Rubro: + {{item.rubro.Nombre}} ( {{item.rubro.Codigo}} ) +
          +
        • Apropiación Inicial: + {{item.rubro.ValorActual | currency:'COP':'symbol':'4.2-2':'co'}}
        • +
            +
          • Meta: {{item.meta}}
          • +
          +
            +
          • Dependencia: {{item.dependencia}}
          • +
          • Valor Dependencia: + {{item.valor_fuente_financiamiento | currency:'COP':'symbol':'4.2-2':'co'}}
          • +
          +
        +
      - -
    -
      -
    • El rubro - {{item.rubro}} no esta creado para la vigencia - {{infoinput.Vigencia}}, - por favor crearlo -
        -
      • Apropiación Inicial: - No existe, por favor crearla
      • -
          -
        • Meta: {{item.meta}}
        • -
        -
          -
        • Dependencia: {{item.dependencia}}
        • -
        • Valor Dependencia: - {{item.valor_fuente_financiamiento | currency:'COP':'symbol':'4.2-2':'co'}}
        • -
        +
          +
        • El rubro + {{item.rubro}} no esta creado para la vigencia + {{infoinput.Vigencia}}, + por favor crearlo +
            +
          • Apropiación Inicial: + No existe, por favor crearla
          • +
              +
            • Meta: {{item.meta}}
            • +
            +
              +
            • Dependencia: {{item.dependencia}}
            • +
            • Valor Dependencia: + {{item.valor_fuente_financiamiento | currency:'COP':'symbol':'4.2-2':'co'}}
            • +
            +
          +
        - -
      +
+
+
+ Movimientos para {{infoinput.Nombre}} - {{infoinput.Codigo}} +
+ + +
+
+ No hay movimientos para la fuente +
+
diff --git a/src/app/pages/plan-cuentas/fuentes/rubros-fuente/rubros-fuente.component.scss b/src/app/pages/plan-cuentas/fuentes/rubros-fuente/rubros-fuente.component.scss index f8576937..d9835311 100644 --- a/src/app/pages/plan-cuentas/fuentes/rubros-fuente/rubros-fuente.component.scss +++ b/src/app/pages/plan-cuentas/fuentes/rubros-fuente/rubros-fuente.component.scss @@ -1,3 +1,9 @@ .moneyField { text-align: right; -} \ No newline at end of file +} + +.mod-registration-input-item{ + flex-basis: 80%; +} + +:host /deep/ .customformat{ text-align: right; } \ No newline at end of file diff --git a/src/app/pages/plan-cuentas/fuentes/rubros-fuente/rubros-fuente.component.ts b/src/app/pages/plan-cuentas/fuentes/rubros-fuente/rubros-fuente.component.ts index 245d11ae..51840565 100644 --- a/src/app/pages/plan-cuentas/fuentes/rubros-fuente/rubros-fuente.component.ts +++ b/src/app/pages/plan-cuentas/fuentes/rubros-fuente/rubros-fuente.component.ts @@ -2,7 +2,8 @@ import { Component, OnInit, Input, EventEmitter, Output } from '@angular/core'; import { FuenteHelper } from '../../../../@core/helpers/fuentes/fuenteHelper'; import { DependenciaHelper } from '../../../../@core/helpers/oikos/dependenciaHelper'; import { ApropiacionHelper } from '../../../../@core/helpers/apropiaciones/apropiacionHelper'; -import { registerLocaleData } from '@angular/common'; +import { TranslateService } from '@ngx-translate/core'; +import { registerLocaleData, CurrencyPipe } from '@angular/common'; import locales from '@angular/common/locales/es-CO'; registerLocaleData(locales, 'co'); @@ -15,16 +16,69 @@ export class RubrosFuenteComponent implements OnInit { @Output() auxcambiotab = new EventEmitter(); @Input('infoinput') infoinput: any; planAdquisicionesFuente: any; + settings: object; + listColumns: object; + source: Array; - constructor(private fuenteHelper: FuenteHelper, private dependenciaHelper: DependenciaHelper, private apHelper: ApropiacionHelper) { } + constructor(private translate: TranslateService, + private fuenteHelper: FuenteHelper, + private dependenciaHelper: DependenciaHelper, private apHelper: ApropiacionHelper) { } ngOnInit() { this.loadInfoFuente(); + this.loadMovimientos(); } + loadMovimientos() { + if (this.infoinput.Movimientos !== undefined) { + + const data: Array = []; + for (let [key, value] of Object.entries(this.infoinput.Movimientos)) { + let movFormated: any; + movFormated = { + Movimiento: key, + Valor: value + } + data.push(movFormated); + } + + this.source = data; + this.listColumns = { + + + Movimiento: { + title: this.translate.instant('GLOBAL.movimiento'), + valuePrepareFunction: (value) => this.translate.instant('GLOBAL.' + value), + }, + Valor: { + title: this.translate.instant('GLOBAL.valor'), + type: 'html', + valuePrepareFunction: function (value) { + return `
` + new CurrencyPipe('co').transform(value, 'COP', 'symbol', '4.2-2', 'co') + `
`; + }, + } + }; + + this.settings = { + actions: { + add: false, + edit: false, + delete: false, + position: 'right' + }, + add: { + addButtonContent: '', + createButtonContent: '', + cancelButtonContent: '' + }, + mode: 'external', + columns: this.listColumns, + }; + } + } loadInfoFuente() { - if(this.infoinput.Vigencia > 0){ + if (this.infoinput.Vigencia > 0) { this.fuenteHelper.getPlanAdquisicionByFuente('2019', this.infoinput.Codigo).subscribe((res) => { if (res) { @@ -38,10 +92,10 @@ export class RubrosFuenteComponent implements OnInit { } }); this.apHelper.getFullArbolByNode(item.rubro, this.infoinput.Vigencia).subscribe((res) => { - if(res){ - item.rubro = res[0].data; - } - }); + if (res) { + item.rubro = res[0].data; + } + }); }) } }) diff --git a/src/app/pages/plan-cuentas/modificacion-apropiacion/set-modificacion-fuente/set-modificacion-fuente.component.ts b/src/app/pages/plan-cuentas/modificacion-apropiacion/set-modificacion-fuente/set-modificacion-fuente.component.ts index f9ac8261..3cc7bcc8 100644 --- a/src/app/pages/plan-cuentas/modificacion-apropiacion/set-modificacion-fuente/set-modificacion-fuente.component.ts +++ b/src/app/pages/plan-cuentas/modificacion-apropiacion/set-modificacion-fuente/set-modificacion-fuente.component.ts @@ -143,8 +143,7 @@ export class SetModificacionFuenteComponent implements OnInit { if (currentMovData.MovimientoOrigen !== undefined) { this.fuenteHelper.getPlanAdquisicionByFuente(this.vigenciaActual.toString(), currentMovData.MovimientoOrigen.Codigo).subscribe((response) => { if (response) { - let saldoFuente = response.fuente_financiamiento.total_saldo_fuente; - saldoFuente += this.sumaMovimientosFuente; + let saldoFuente = currentMovData.MovimientoOrigen.ValorActual - response.fuente_financiamiento.total_saldo_fuente; if(saldoFuente< currentMovData.Valor && this.movDestino !== undefined) { this.limitSumFuentes = false; this.infoSaldoSuperado = 'La fuente: ' + currentMovData.MovimientoOrigen.Nombre + ' se desfasa por un valor de: '; diff --git a/src/assets/i18n/es.json b/src/assets/i18n/es.json index 9adca271..b323aaee 100644 --- a/src/assets/i18n/es.json +++ b/src/assets/i18n/es.json @@ -77,6 +77,9 @@ "titulo-apropiacion-inicial": "Comprobación de Apropiación Inicial", "seleccionar_modificacion": "Seleccionar Modificación", "rubro": "Rubro", + "mod_presupuestal": "Apropiación", + "mod_fuente": "Fuente", + "movimiento": "Movimiento", "fuente_financiamiento": "Fuente de Financiamiento", "dependencia": "Dependencia", "entidad": "Entidad", @@ -176,6 +179,9 @@ "reduccion": "Reducción", "suspension": "Suspensión", "adicion": "Adición", + "ad_fuente": "Adición Fuente", + "tr_fuente": "Traslado como fuente origen", + "tr_fuente_destino": "Traslado como fuente destino", "organismo_emisor": "Organismo emisor", "placeholder_organismo_emisor": "Organismo emisor", "movimiento_origen": "Movimiento origen",