From 3f32d0646637714cebe57eaf372dd0a129fc1966 Mon Sep 17 00:00:00 2001 From: Abhay Chawla Date: Mon, 6 Aug 2018 13:01:25 +0530 Subject: [PATCH] feat(accounting): provisioning entries component Add provisioning entries component. --- .../accounting/accounting-routing.module.ts | 6 ++ src/app/accounting/accounting.component.html | 6 +- src/app/accounting/accounting.module.ts | 4 +- src/app/accounting/accounting.service.ts | 4 ++ .../provisioning-entries.component.html | 64 +++++++++++++++++++ .../provisioning-entries.component.scss | 3 + .../provisioning-entries.component.spec.ts | 25 ++++++++ .../provisioning-entries.component.ts | 33 ++++++++++ 8 files changed, 140 insertions(+), 5 deletions(-) create mode 100644 src/app/accounting/provisioning-entries/provisioning-entries.component.html create mode 100644 src/app/accounting/provisioning-entries/provisioning-entries.component.scss create mode 100644 src/app/accounting/provisioning-entries/provisioning-entries.component.spec.ts create mode 100644 src/app/accounting/provisioning-entries/provisioning-entries.component.ts diff --git a/src/app/accounting/accounting-routing.module.ts b/src/app/accounting/accounting-routing.module.ts index 4b2603c4d..8f497395f 100644 --- a/src/app/accounting/accounting-routing.module.ts +++ b/src/app/accounting/accounting-routing.module.ts @@ -31,6 +31,7 @@ import { ViewRuleComponent } from './accounting-rules/view-rule/view-rule.compon import { ViewAccountingRuleResolver } from './accounting-rules/view-rule/view-rule.resolver'; import { EditRuleComponent } from './accounting-rules/edit-rule/edit-rule.component'; import { PeriodicAccrualsComponent } from './periodic-accruals/periodic-accruals.component'; +import { ProvisioningEntriesComponent } from './provisioning-entries/provisioning-entries.component'; const routes: Routes = [ Route.withShell([ @@ -206,6 +207,11 @@ const routes: Routes = [ path: 'periodic-accruals', component: PeriodicAccrualsComponent, data: { title: extract('Periodic Accrual Accounting'), breadcrumb: 'Execute Periodic Accrual Accounting' } + }, + { + path: 'provisioning-entries', + component: ProvisioningEntriesComponent, + data: { title: extract('Provisioning Entries'), breadcrumb: 'Provisioning Entries' } } ] } diff --git a/src/app/accounting/accounting.component.html b/src/app/accounting/accounting.component.html index 3cad92948..4c635c5be 100644 --- a/src/app/accounting/accounting.component.html +++ b/src/app/accounting/accounting.component.html @@ -70,11 +70,9 @@

Accrues income, expenses and liabilities as on the provided date

- + settings_backup_restore - - Provisioning Entries - +

Provisioning Entries

Create provisioning entries

diff --git a/src/app/accounting/accounting.module.ts b/src/app/accounting/accounting.module.ts index 2258bbac4..92287f842 100644 --- a/src/app/accounting/accounting.module.ts +++ b/src/app/accounting/accounting.module.ts @@ -29,6 +29,7 @@ import { CreateRuleComponent } from './accounting-rules/create-rule/create-rule. import { ViewRuleComponent } from './accounting-rules/view-rule/view-rule.component'; import { EditRuleComponent } from './accounting-rules/edit-rule/edit-rule.component'; import { PeriodicAccrualsComponent } from './periodic-accruals/periodic-accruals.component'; +import { ProvisioningEntriesComponent } from './provisioning-entries/provisioning-entries.component'; @NgModule({ imports: [ @@ -62,7 +63,8 @@ import { PeriodicAccrualsComponent } from './periodic-accruals/periodic-accruals CreateRuleComponent, ViewRuleComponent, EditRuleComponent, - PeriodicAccrualsComponent + PeriodicAccrualsComponent, + ProvisioningEntriesComponent ], entryComponents: [ RevertTransactionComponent, diff --git a/src/app/accounting/accounting.service.ts b/src/app/accounting/accounting.service.ts index e22a6c985..8275880d0 100644 --- a/src/app/accounting/accounting.service.ts +++ b/src/app/accounting/accounting.service.ts @@ -169,4 +169,8 @@ export class AccountingService { return this.http.post('/runaccruals', periodicAccruals); } + getProvisioningEntries() { + return this.http.get('/provisioningentries'); + } + } diff --git a/src/app/accounting/provisioning-entries/provisioning-entries.component.html b/src/app/accounting/provisioning-entries/provisioning-entries.component.html new file mode 100644 index 000000000..6f80763ea --- /dev/null +++ b/src/app/accounting/provisioning-entries/provisioning-entries.component.html @@ -0,0 +1,64 @@ +
+ +
+ +
+ +
+ + + +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Created By {{ provisioningEntry.createdUser }} Created On {{ provisioningEntry.createdDate }} Journal Entry Created {{ provisioningEntry.journalEntry }} View Report + + Recreate Provisioning + + View Journal Entry + +
+ + + +
+ +
diff --git a/src/app/accounting/provisioning-entries/provisioning-entries.component.scss b/src/app/accounting/provisioning-entries/provisioning-entries.component.scss new file mode 100644 index 000000000..1922e7ffa --- /dev/null +++ b/src/app/accounting/provisioning-entries/provisioning-entries.component.scss @@ -0,0 +1,3 @@ +table { + width: 100%; +} diff --git a/src/app/accounting/provisioning-entries/provisioning-entries.component.spec.ts b/src/app/accounting/provisioning-entries/provisioning-entries.component.spec.ts new file mode 100644 index 000000000..20194f436 --- /dev/null +++ b/src/app/accounting/provisioning-entries/provisioning-entries.component.spec.ts @@ -0,0 +1,25 @@ +import { async, ComponentFixture, TestBed } from '@angular/core/testing'; + +import { ProvisioningEntriesComponent } from './provisioning-entries.component'; + +describe('ProvisioningEntriesComponent', () => { + let component: ProvisioningEntriesComponent; + let fixture: ComponentFixture; + + beforeEach(async(() => { + TestBed.configureTestingModule({ + declarations: [ ProvisioningEntriesComponent ] + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(ProvisioningEntriesComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/accounting/provisioning-entries/provisioning-entries.component.ts b/src/app/accounting/provisioning-entries/provisioning-entries.component.ts new file mode 100644 index 000000000..acc5d9932 --- /dev/null +++ b/src/app/accounting/provisioning-entries/provisioning-entries.component.ts @@ -0,0 +1,33 @@ +import { Component, OnInit, ViewChild } from '@angular/core'; +import { MatSort, MatPaginator, MatTableDataSource } from '@angular/material'; + +import { AccountingService } from '../accounting.service'; + +@Component({ + selector: 'mifosx-provisioning-entries', + templateUrl: './provisioning-entries.component.html', + styleUrls: ['./provisioning-entries.component.scss'] +}) +export class ProvisioningEntriesComponent implements OnInit { + + displayedColumns: string[] = ['createdUser', 'createdDate', 'journalEntry', 'viewReport', 'recreateProvisioning', 'viewJournalEntry']; + dataSource: any; + + @ViewChild(MatPaginator) paginator: MatPaginator; + @ViewChild(MatSort) sort: MatSort; + + constructor(private accountingService: AccountingService) { } + + ngOnInit() { + this.getProvisioningEntries(); + } + + getProvisioningEntries() { + this.accountingService.getProvisioningEntries().subscribe((provisioningEntryData: any) => { + this.dataSource = new MatTableDataSource(provisioningEntryData); + this.dataSource.paginator = this.paginator; + this.dataSource.sort = this.sort; + }); + } + +}