From: Bill Erickson Date: Thu, 13 Aug 2020 15:44:58 +0000 (-0400) Subject: LPXXX Patron UI WIP X-Git-Url: https://old-git.evergreen-ils.org/?a=commitdiff_plain;h=c7fdf9c3564cb7f648a24705fb72f8ec3bfc807a;p=working%2FEvergreen.git LPXXX Patron UI WIP Signed-off-by: Bill Erickson --- diff --git a/Open-ILS/src/eg2/src/app/staff/circ/patron/edit.component.html b/Open-ILS/src/eg2/src/app/staff/circ/patron/edit.component.html new file mode 100644 index 0000000000..383f2fc2a8 --- /dev/null +++ b/Open-ILS/src/eg2/src/app/staff/circ/patron/edit.component.html @@ -0,0 +1,98 @@ +
+
+ + + + +
+ +
+
+
+ ;lkjasd f;laksjdf ;aslkfjas ;flkjasf ;aslkdfjas ;flkjasf ;asdlkj + ;lkjasd f;laksjdf ;aslkfjas ;flkjasf ;aslkdfjas ;flkjasf ;asdlkj + ;lkjasd f;laksjdf ;aslkfjas ;flkjasf ;aslkdfjas ;flkjasf ;asdlkj + ;lkjasd f;laksjdf ;aslkfjas ;flkjasf ;aslkdfjas ;flkjasf ;asdlkj +
+
+
+
+ ;lkjasd f;laksjdf ;aslkfjas ;flkjasf ;aslkdfjas ;flkjasf ;asdlkj + ;lkjasd f;laksjdf ;aslkfjas ;flkjasf ;aslkdfjas ;flkjasf ;asdlkj + ;lkjasd f;laksjdf ;aslkfjas ;flkjasf ;aslkdfjas ;flkjasf ;asdlkj + ;lkjasd f;laksjdf ;aslkfjas ;flkjasf ;aslkdfjas ;flkjasf ;asdlkj +
+
+
+
+ ;lkjasd f;laksjdf ;aslkfjas ;flkjasf ;aslkdfjas ;flkjasf ;asdlkj + ;lkjasd f;laksjdf ;aslkfjas ;flkjasf ;aslkdfjas ;flkjasf ;asdlkj + ;lkjasd f;laksjdf ;aslkfjas ;flkjasf ;aslkdfjas ;flkjasf ;asdlkj + ;lkjasd f;laksjdf ;aslkfjas ;flkjasf ;aslkdfjas ;flkjasf ;asdlkj +
+
+
+
+ ;lkjasd f;laksjdf ;aslkfjas ;flkjasf ;aslkdfjas ;flkjasf ;asdlkj + ;lkjasd f;laksjdf ;aslkfjas ;flkjasf ;aslkdfjas ;flkjasf ;asdlkj + ;lkjasd f;laksjdf ;aslkfjas ;flkjasf ;aslkdfjas ;flkjasf ;asdlkj + ;lkjasd f;laksjdf ;aslkfjas ;flkjasf ;aslkdfjas ;flkjasf ;asdlkj +
+
+
+
+ ;lkjasd f;laksjdf ;aslkfjas ;flkjasf ;aslkdfjas ;flkjasf ;asdlkj + ;lkjasd f;laksjdf ;aslkfjas ;flkjasf ;aslkdfjas ;flkjasf ;asdlkj + ;lkjasd f;laksjdf ;aslkfjas ;flkjasf ;aslkdfjas ;flkjasf ;asdlkj + ;lkjasd f;laksjdf ;aslkfjas ;flkjasf ;aslkdfjas ;flkjasf ;asdlkj +
+
+
+
+ ;lkjasd f;laksjdf ;aslkfjas ;flkjasf ;aslkdfjas ;flkjasf ;asdlkj + ;lkjasd f;laksjdf ;aslkfjas ;flkjasf ;aslkdfjas ;flkjasf ;asdlkj + ;lkjasd f;laksjdf ;aslkfjas ;flkjasf ;aslkdfjas ;flkjasf ;asdlkj + ;lkjasd f;laksjdf ;aslkfjas ;flkjasf ;aslkdfjas ;flkjasf ;asdlkj +
+
+
+
+ ;lkjasd f;laksjdf ;aslkfjas ;flkjasf ;aslkdfjas ;flkjasf ;asdlkj + ;lkjasd f;laksjdf ;aslkfjas ;flkjasf ;aslkdfjas ;flkjasf ;asdlkj + ;lkjasd f;laksjdf ;aslkfjas ;flkjasf ;aslkdfjas ;flkjasf ;asdlkj + ;lkjasd f;laksjdf ;aslkfjas ;flkjasf ;aslkdfjas ;flkjasf ;asdlkj +
+
+
+
+ ;lkjasd f;laksjdf ;aslkfjas ;flkjasf ;aslkdfjas ;flkjasf ;asdlkj + ;lkjasd f;laksjdf ;aslkfjas ;flkjasf ;aslkdfjas ;flkjasf ;asdlkj + ;lkjasd f;laksjdf ;aslkfjas ;flkjasf ;aslkdfjas ;flkjasf ;asdlkj + ;lkjasd f;laksjdf ;aslkfjas ;flkjasf ;aslkdfjas ;flkjasf ;asdlkj +
+
+
+
+ ;lkjasd f;laksjdf ;aslkfjas ;flkjasf ;aslkdfjas ;flkjasf ;asdlkj + ;lkjasd f;laksjdf ;aslkfjas ;flkjasf ;aslkdfjas ;flkjasf ;asdlkj + ;lkjasd f;laksjdf ;aslkfjas ;flkjasf ;aslkdfjas ;flkjasf ;asdlkj + ;lkjasd f;laksjdf ;aslkfjas ;flkjasf ;aslkdfjas ;flkjasf ;asdlkj +
+
+
+
+ ;lkjasd f;laksjdf ;aslkfjas ;flkjasf ;aslkdfjas ;flkjasf ;asdlkj + ;lkjasd f;laksjdf ;aslkfjas ;flkjasf ;aslkdfjas ;flkjasf ;asdlkj + ;lkjasd f;laksjdf ;aslkfjas ;flkjasf ;aslkdfjas ;flkjasf ;asdlkj + ;lkjasd f;laksjdf ;aslkfjas ;flkjasf ;aslkdfjas ;flkjasf ;asdlkj +
+
+
+
+ ;lkjasd f;laksjdf ;aslkfjas ;flkjasf ;aslkdfjas ;flkjasf ;asdlkj + ;lkjasd f;laksjdf ;aslkfjas ;flkjasf ;aslkdfjas ;flkjasf ;asdlkj + ;lkjasd f;laksjdf ;aslkfjas ;flkjasf ;aslkdfjas ;flkjasf ;asdlkj + ;lkjasd f;laksjdf ;aslkfjas ;flkjasf ;aslkdfjas ;flkjasf ;asdlkj +
+
+
diff --git a/Open-ILS/src/eg2/src/app/staff/circ/patron/edit.component.ts b/Open-ILS/src/eg2/src/app/staff/circ/patron/edit.component.ts new file mode 100644 index 0000000000..061ae91971 --- /dev/null +++ b/Open-ILS/src/eg2/src/app/staff/circ/patron/edit.component.ts @@ -0,0 +1,28 @@ +import {Component, OnInit, Input} from '@angular/core'; +import {Router, ActivatedRoute, ParamMap} from '@angular/router'; +import {NgbNav, NgbNavChangeEvent} from '@ng-bootstrap/ng-bootstrap'; +import {OrgService} from '@eg/core/org.service'; +import {NetService} from '@eg/core/net.service'; +import {PatronService} from '@eg/staff/share/patron/patron.service'; +import {PatronManagerService} from './patron.service'; + +@Component({ + templateUrl: 'edit.component.html', + selector: 'eg-patron-edit' +}) +export class EditComponent implements OnInit { + + // CSS class for the main edit pane + @Input() contentPaneClass = ''; + + constructor( + private org: OrgService, + private net: NetService, + public patronService: PatronService, + public context: PatronManagerService + ) {} + + ngOnInit() { + } +} + diff --git a/Open-ILS/src/eg2/src/app/staff/circ/patron/patron.component.css b/Open-ILS/src/eg2/src/app/staff/circ/patron/patron.component.css index 8897ed1234..dbe3658876 100644 --- a/Open-ILS/src/eg2/src/app/staff/circ/patron/patron.component.css +++ b/Open-ILS/src/eg2/src/app/staff/circ/patron/patron.component.css @@ -1,10 +1,11 @@ -.patron-content-pane { +::ng-deep .patron-content-pane { margin-top: 10px; padding-top: 10px; + margin-right: 5px; + padding-right: 5px; position: fixed; height: 100%; overflow-y: auto; - overflow-x: hidden; } diff --git a/Open-ILS/src/eg2/src/app/staff/circ/patron/patron.component.html b/Open-ILS/src/eg2/src/app/staff/circ/patron/patron.component.html index 237fe99743..cd8ec32560 100644 --- a/Open-ILS/src/eg2/src/app/staff/circ/patron/patron.component.html +++ b/Open-ILS/src/eg2/src/app/staff/circ/patron/patron.component.html @@ -21,12 +21,20 @@ +
  • + Edit + + + + +
  • +
  • Patron Search
    diff --git a/Open-ILS/src/eg2/src/app/staff/circ/patron/patron.component.ts b/Open-ILS/src/eg2/src/app/staff/circ/patron/patron.component.ts index 8e034b71a5..fa5774b203 100644 --- a/Open-ILS/src/eg2/src/app/staff/circ/patron/patron.component.ts +++ b/Open-ILS/src/eg2/src/app/staff/circ/patron/patron.component.ts @@ -82,10 +82,10 @@ export class PatronComponent implements OnInit, AfterViewInit { // Patron row single-clicked in the grid. Load the patron without // leaving the search tab. - patronsClicked(rows: any[]) { - if (rows.length !== 1) { return; } + patronSelectionChange(ids: number[]) { + if (ids.length !== 1) { return; } - const id = rows[0].id(); + const id = ids[0]; if (id !== this.patronId) { this.patronId = id; this.context.loadPatron(id); diff --git a/Open-ILS/src/eg2/src/app/staff/circ/patron/patron.module.ts b/Open-ILS/src/eg2/src/app/staff/circ/patron/patron.module.ts index d4396e39cc..d16f6f1022 100644 --- a/Open-ILS/src/eg2/src/app/staff/circ/patron/patron.module.ts +++ b/Open-ILS/src/eg2/src/app/staff/circ/patron/patron.module.ts @@ -10,6 +10,7 @@ import {PatronManagerService} from './patron.service'; import {PatronComponent} from './patron.component'; import {SummaryComponent} from './summary.component'; import {CheckoutComponent} from './checkout.component'; +import {EditComponent} from './edit.component'; import {BcSearchComponent} from './bcsearch.component'; @NgModule({ @@ -17,6 +18,7 @@ import {BcSearchComponent} from './bcsearch.component'; PatronComponent, SummaryComponent, CheckoutComponent, + EditComponent, BcSearchComponent ], imports: [ diff --git a/Open-ILS/src/eg2/src/app/staff/share/patron/search.component.html b/Open-ILS/src/eg2/src/app/staff/share/patron/search.component.html index 40f7124134..bdf30e286c 100644 --- a/Open-ILS/src/eg2/src/app/staff/share/patron/search.component.html +++ b/Open-ILS/src/eg2/src/app/staff/share/patron/search.component.html @@ -179,8 +179,8 @@
    diff --git a/Open-ILS/src/eg2/src/app/staff/share/patron/search.component.ts b/Open-ILS/src/eg2/src/app/staff/share/patron/search.component.ts index 6948546f3a..d09daf27b7 100644 --- a/Open-ILS/src/eg2/src/app/staff/share/patron/search.component.ts +++ b/Open-ILS/src/eg2/src/app/staff/share/patron/search.component.ts @@ -41,11 +41,13 @@ export class PatronSearchComponent implements OnInit, AfterViewInit { @ViewChild('searchGrid', {static: false}) searchGrid: GridComponent; - // Fired on dbl-click of a search result row. + // Fires on dbl-click or Enter while one or more search result + // rows are selected. @Output() patronsSelected: EventEmitter; - // Fired on single click of a search results row - @Output() patronsClicked: EventEmitter; + // Fires when the selection of search result rows changes. + // Emits an array of patron IDs + @Output() selectionChange: EventEmitter; search: any = {}; searchOrg: IdlObject; @@ -61,7 +63,7 @@ export class PatronSearchComponent implements OnInit, AfterViewInit { private store: ServerStoreService ) { this.patronsSelected = new EventEmitter(); - this.patronsClicked = new EventEmitter(); + this.selectionChange = new EventEmitter(); this.dataSource = new GridDataSource(); this.dataSource.getRows = (pager: Pager, sort: any[]) => { return this.getRows(pager, sort); @@ -98,12 +100,12 @@ export class PatronSearchComponent implements OnInit, AfterViewInit { } } - rowsSelected(rows: IdlObject | IdlObject[]) { - this.patronsSelected.emit([].concat(rows)); + gridSelectionChange(keys: string[]) { + this.selectionChange.emit(keys.map(k => Number(k))); } - rowsClicked(rows: IdlObject | IdlObject[]) { - this.patronsClicked.emit([].concat(rows)); + rowsActivated(rows: IdlObject | IdlObject[]) { + this.patronsSelected.emit([].concat(rows)); } getSelected(): IdlObject[] {