feat: add public sale invoices module with routing and service integration

- Introduced PUBLIC_SALE_INVOICES_ROUTES for handling sale invoice routes.
- Created PublicSaleInvoicesService to fetch single invoice data from the API.
- Implemented PublicSaleInvoiceStore for managing invoice state.
- Added PublicSaleInvoiceComponent to display invoice details.
- Updated app routes to include public sale invoices.
- Removed pre-invoice dialog component and its associated files.
- Enhanced order submitted dialog with QR code for invoice sharing.
- Updated sale invoice single view to reflect new data structure.
- Refactored page data list component for improved layout and functionality.
This commit is contained in:
2026-05-21 21:35:34 +03:30
parent 1b4ac0789c
commit 8c07dc7c3f
25 changed files with 1036 additions and 349 deletions
@@ -4,6 +4,7 @@ import { jalaliDiff } from '@/utils';
import { CommonModule } from '@angular/common';
import {
Component,
computed,
ContentChild,
ElementRef,
EventEmitter,
@@ -92,7 +93,7 @@ export interface IColumn<T = any> {
export class PageDataListComponent<I = any> {
constructor(
private host: ElementRef,
private renderer: Renderer2,
private renderer: Renderer2
) {}
@Input({ required: true }) pageTitle!: string;
@@ -138,12 +139,16 @@ export class PageDataListComponent<I = any> {
filterDrawerVisible = signal<boolean>(false);
expandedRows: { [key: string]: boolean } = {};
hasCaption = computed(
() => !!(this.pageTitle || this.showAdd || this.filter || this.showRefresh || this.moreActions)
);
ngOnInit() {
if (this.height)
this.renderer.setStyle(
this.host.nativeElement,
'height',
this.fullHeight ? '100cqmin' : this.height,
this.fullHeight ? '100cqmin' : this.height
);
// if (this.fullHeight) {
// }