techlify-inventory-common 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.editorconfig +13 -0
- package/README.md +27 -0
- package/angular.json +207 -0
- package/e2e/protractor.conf.js +28 -0
- package/e2e/src/app.e2e-spec.ts +14 -0
- package/e2e/src/app.po.ts +11 -0
- package/e2e/tsconfig.e2e.json +13 -0
- package/ng-package.json +6 -0
- package/package.json +92 -0
- package/projects/inventory-common/README.md +24 -0
- package/projects/inventory-common/ng-package.json +7 -0
- package/projects/inventory-common/package.json +12 -0
- package/projects/inventory-common/src/lib/inventory-common/category/category-form/category-form.component.html +41 -0
- package/projects/inventory-common/src/lib/inventory-common/category/category-form/category-form.component.scss +0 -0
- package/projects/inventory-common/src/lib/inventory-common/category/category-form/category-form.component.ts +75 -0
- package/projects/inventory-common/src/lib/inventory-common/category/category-form-button/category-form-button.component.html +32 -0
- package/projects/inventory-common/src/lib/inventory-common/category/category-form-button/category-form-button.component.scss +0 -0
- package/projects/inventory-common/src/lib/inventory-common/category/category-form-button/category-form-button.component.ts +29 -0
- package/projects/inventory-common/src/lib/inventory-common/category/category-list-page/category-list-page.component.html +79 -0
- package/projects/inventory-common/src/lib/inventory-common/category/category-list-page/category-list-page.component.scss +0 -0
- package/projects/inventory-common/src/lib/inventory-common/category/category-list-page/category-list-page.component.ts +61 -0
- package/projects/inventory-common/src/lib/inventory-common/category/category-routing.module.ts +16 -0
- package/projects/inventory-common/src/lib/inventory-common/category/category.module.ts +36 -0
- package/projects/inventory-common/src/lib/inventory-common/category/category.service.ts +11 -0
- package/projects/inventory-common/src/lib/inventory-common/inventory-common-routing.module.ts +65 -0
- package/projects/inventory-common/src/lib/inventory-common/inventory-common.module.ts +24 -0
- package/projects/inventory-common/src/lib/inventory-common/inventory-dashboard-page/inventory-dashboard-page.component.html +88 -0
- package/projects/inventory-common/src/lib/inventory-common/inventory-dashboard-page/inventory-dashboard-page.component.scss +0 -0
- package/projects/inventory-common/src/lib/inventory-common/inventory-dashboard-page/inventory-dashboard-page.component.ts +36 -0
- package/projects/inventory-common/src/lib/inventory-common/inventory-value-report.service.ts +19 -0
- package/projects/inventory-common/src/lib/inventory-common/low-stock-report.service.ts +19 -0
- package/projects/inventory-common/src/lib/inventory-common/material.module.ts +95 -0
- package/projects/inventory-common/src/lib/inventory-common/measure/measure-delete/measure-delete-button/measure-delete-button.component.html +37 -0
- package/projects/inventory-common/src/lib/inventory-common/measure/measure-delete/measure-delete-button/measure-delete-button.component.scss +0 -0
- package/projects/inventory-common/src/lib/inventory-common/measure/measure-delete/measure-delete-button/measure-delete-button.component.ts +44 -0
- package/projects/inventory-common/src/lib/inventory-common/measure/measure-delete/measure-delete.module.ts +11 -0
- package/projects/inventory-common/src/lib/inventory-common/measure/measure-form/measure-form/measure-form.component.html +66 -0
- package/projects/inventory-common/src/lib/inventory-common/measure/measure-form/measure-form/measure-form.component.scss +0 -0
- package/projects/inventory-common/src/lib/inventory-common/measure/measure-form/measure-form/measure-form.component.ts +78 -0
- package/projects/inventory-common/src/lib/inventory-common/measure/measure-form/measure-form-button/measure-form-button.component.html +16 -0
- package/projects/inventory-common/src/lib/inventory-common/measure/measure-form/measure-form-button/measure-form-button.component.scss +0 -0
- package/projects/inventory-common/src/lib/inventory-common/measure/measure-form/measure-form-button/measure-form-button.component.ts +29 -0
- package/projects/inventory-common/src/lib/inventory-common/measure/measure-form/measure-form.module.ts +13 -0
- package/projects/inventory-common/src/lib/inventory-common/measure/measure-routing.module.ts +16 -0
- package/projects/inventory-common/src/lib/inventory-common/measure/measure.module.ts +26 -0
- package/projects/inventory-common/src/lib/inventory-common/measure/measure.service.ts +11 -0
- package/projects/inventory-common/src/lib/inventory-common/measure/measures-list/measures-list.component.html +88 -0
- package/projects/inventory-common/src/lib/inventory-common/measure/measures-list/measures-list.component.scss +0 -0
- package/projects/inventory-common/src/lib/inventory-common/measure/measures-list/measures-list.component.ts +67 -0
- package/projects/inventory-common/src/lib/inventory-common/product/low-stock-products-widget/low-stock-products-widget.component.html +52 -0
- package/projects/inventory-common/src/lib/inventory-common/product/low-stock-products-widget/low-stock-products-widget.component.scss +0 -0
- package/projects/inventory-common/src/lib/inventory-common/product/low-stock-products-widget/low-stock-products-widget.component.ts +42 -0
- package/projects/inventory-common/src/lib/inventory-common/product/low-stock-products-widget/low-stock-products-widget.module.ts +20 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-basic-info/product-basic-info.component.html +114 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-basic-info/product-basic-info.component.scss +0 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-basic-info/product-basic-info.component.ts +43 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-delete-button/product-delete-button.component.html +33 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-delete-button/product-delete-button.component.scss +0 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-delete-button/product-delete-button.component.ts +53 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-form/product-form.component.html +209 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-form/product-form.component.spec.ts +24 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-form/product-form.component.ts +182 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-form-button/product-form-button.component.html +17 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-form-button/product-form-button.component.scss +0 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-form-button/product-form-button.component.ts +39 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-form.service.ts +11 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-import-page/product-import-page.component.html +1 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-import-page/product-import-page.component.scss +0 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-import-page/product-import-page.component.ts +66 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-list/product-list.component.html +254 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-list/product-list.component.spec.ts +24 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-list/product-list.component.ts +171 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-measure-form/product-measure-form.component.html +44 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-measure-form/product-measure-form.component.spec.ts +24 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-measure-form/product-measure-form.component.ts +93 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-measures-list/product-measures-list.component.html +90 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-measures-list/product-measures-list.component.spec.ts +24 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-measures-list/product-measures-list.component.ts +153 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-nav-bar/product-nav-bar.component.html +3 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-nav-bar/product-nav-bar.component.spec.ts +24 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-nav-bar/product-nav-bar.component.ts +7 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-quick-search/product-quick-search.component.html +110 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-quick-search/product-quick-search.component.scss +0 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-quick-search/product-quick-search.component.ts +102 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-routing.module.ts +49 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-search/product-search.component.html +78 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-search/product-search.component.scss +12 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-search/product-search.component.ts +153 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-search/product-search.module.ts +22 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-summary-chart/product-summary-chart.component.html +11 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-summary-chart/product-summary-chart.component.scss +0 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-summary-chart/product-summary-chart.component.ts +62 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-summary-chart/product-summary-chart.module.ts +15 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-summary-widget/product-summary-widget.component.html +9 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-summary-widget/product-summary-widget.component.scss +0 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-summary-widget/product-summary-widget.component.ts +39 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-tax/product-tax-delete-button/product-tax-delete-button.component.html +32 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-tax/product-tax-delete-button/product-tax-delete-button.component.scss +0 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-tax/product-tax-delete-button/product-tax-delete-button.component.ts +55 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-tax/product-tax-form-button/product-tax-form-button.component.html +49 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-tax/product-tax-form-button/product-tax-form-button.component.scss +0 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-tax/product-tax-form-button/product-tax-form-button.component.ts +87 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-tax/product-tax-list/product-tax-list.component.html +48 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-tax/product-tax-list/product-tax-list.component.scss +0 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-tax/product-tax-list/product-tax-list.component.ts +33 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-tax/product-tax.module.ts +23 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-tax/product-tax.service.ts +11 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-view-page/product-view-page.component.html +34 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product-view-page/product-view-page.component.ts +63 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product.module.ts +69 -0
- package/projects/inventory-common/src/lib/inventory-common/product/product.service.ts +54 -0
- package/projects/inventory-common/src/lib/inventory-common/product/widgets/product-category-badges/product-category-badges.component.html +8 -0
- package/projects/inventory-common/src/lib/inventory-common/product/widgets/product-category-badges/product-category-badges.component.scss +0 -0
- package/projects/inventory-common/src/lib/inventory-common/product/widgets/product-category-badges/product-category-badges.component.ts +16 -0
- package/projects/inventory-common/src/lib/inventory-common/reports/inventory-value-report/inventory-value-report.component.html +140 -0
- package/projects/inventory-common/src/lib/inventory-common/reports/inventory-value-report/inventory-value-report.component.scss +0 -0
- package/projects/inventory-common/src/lib/inventory-common/reports/inventory-value-report/inventory-value-report.component.ts +191 -0
- package/projects/inventory-common/src/lib/inventory-common/reports/low-stock-report/low-stock-report.component.html +158 -0
- package/projects/inventory-common/src/lib/inventory-common/reports/low-stock-report/low-stock-report.component.scss +0 -0
- package/projects/inventory-common/src/lib/inventory-common/reports/low-stock-report/low-stock-report.component.ts +191 -0
- package/projects/inventory-common/src/lib/inventory-common/services/techlify-form-service.ts +14 -0
- package/projects/inventory-common/src/lib/inventory-common/stock-issuances/stock-issuance-delete-button/stock-issuance-delete-button.component.html +32 -0
- package/projects/inventory-common/src/lib/inventory-common/stock-issuances/stock-issuance-delete-button/stock-issuance-delete-button.component.scss +0 -0
- package/projects/inventory-common/src/lib/inventory-common/stock-issuances/stock-issuance-delete-button/stock-issuance-delete-button.component.ts +49 -0
- package/projects/inventory-common/src/lib/inventory-common/stock-issuances/stock-issuance-delete-button/stock-issuance-delete-button.module.ts +11 -0
- package/projects/inventory-common/src/lib/inventory-common/stock-issuances/stock-issuance.service.ts +11 -0
- package/projects/inventory-common/src/lib/inventory-common/stock-issuances/stock-issuances-list/stock-issuances-list.component.html +165 -0
- package/projects/inventory-common/src/lib/inventory-common/stock-issuances/stock-issuances-list/stock-issuances-list.component.scss +0 -0
- package/projects/inventory-common/src/lib/inventory-common/stock-issuances/stock-issuances-list/stock-issuances-list.component.ts +113 -0
- package/projects/inventory-common/src/lib/inventory-common/stock-issuances/stock-issuances-list/stock-issuances-list.module.ts +26 -0
- package/projects/inventory-common/src/lib/inventory-common/stock-issuances/stock-issuances-routing.module.ts +16 -0
- package/projects/inventory-common/src/lib/inventory-common/stock-issuances/stock-issuances.module.ts +36 -0
- package/projects/inventory-common/src/lib/inventory-common/stock-issuances/stock-issue-form/stock-issue-form/stock-issue-form.component.html +64 -0
- package/projects/inventory-common/src/lib/inventory-common/stock-issuances/stock-issue-form/stock-issue-form/stock-issue-form.component.scss +0 -0
- package/projects/inventory-common/src/lib/inventory-common/stock-issuances/stock-issue-form/stock-issue-form/stock-issue-form.component.ts +115 -0
- package/projects/inventory-common/src/lib/inventory-common/stock-issuances/stock-issue-form/stock-issue-form-button/stock-issue-form-button.component.html +20 -0
- package/projects/inventory-common/src/lib/inventory-common/stock-issuances/stock-issue-form/stock-issue-form-button/stock-issue-form-button.component.scss +0 -0
- package/projects/inventory-common/src/lib/inventory-common/stock-issuances/stock-issue-form/stock-issue-form-button/stock-issue-form-button.component.ts +35 -0
- package/projects/inventory-common/src/lib/inventory-common/stock-issuances/stock-issue-form/stock-issue-form.module.ts +29 -0
- package/projects/inventory-common/src/lib/inventory-common/stock-receipts/stock-receipt-delete-button/stock-receipt-delete-button.component.html +32 -0
- package/projects/inventory-common/src/lib/inventory-common/stock-receipts/stock-receipt-delete-button/stock-receipt-delete-button.component.scss +0 -0
- package/projects/inventory-common/src/lib/inventory-common/stock-receipts/stock-receipt-delete-button/stock-receipt-delete-button.component.ts +49 -0
- package/projects/inventory-common/src/lib/inventory-common/stock-receipts/stock-receipt-form/stock-receipt-form/stock-receipt-form.component.html +74 -0
- package/projects/inventory-common/src/lib/inventory-common/stock-receipts/stock-receipt-form/stock-receipt-form/stock-receipt-form.component.scss +0 -0
- package/projects/inventory-common/src/lib/inventory-common/stock-receipts/stock-receipt-form/stock-receipt-form/stock-receipt-form.component.ts +122 -0
- package/projects/inventory-common/src/lib/inventory-common/stock-receipts/stock-receipt-form/stock-receipt-form-button/stock-receipt-form-button.component.html +18 -0
- package/projects/inventory-common/src/lib/inventory-common/stock-receipts/stock-receipt-form/stock-receipt-form-button/stock-receipt-form-button.component.scss +0 -0
- package/projects/inventory-common/src/lib/inventory-common/stock-receipts/stock-receipt-form/stock-receipt-form-button/stock-receipt-form-button.component.ts +33 -0
- package/projects/inventory-common/src/lib/inventory-common/stock-receipts/stock-receipt-form/stock-receipt-form.module.ts +29 -0
- package/projects/inventory-common/src/lib/inventory-common/stock-receipts/stock-receipt.service.ts +11 -0
- package/projects/inventory-common/src/lib/inventory-common/stock-receipts/stock-receipts-list-page/stock-receipts-list-page.component.html +139 -0
- package/projects/inventory-common/src/lib/inventory-common/stock-receipts/stock-receipts-list-page/stock-receipts-list-page.component.scss +0 -0
- package/projects/inventory-common/src/lib/inventory-common/stock-receipts/stock-receipts-list-page/stock-receipts-list-page.component.ts +109 -0
- package/projects/inventory-common/src/lib/inventory-common/stock-receipts/stock-receipts-routing.module.ts +16 -0
- package/projects/inventory-common/src/lib/inventory-common/stock-receipts/stock-receipts.module.ts +45 -0
- package/projects/inventory-common/src/lib/inventory-common/stock-summary.service.ts +18 -0
- package/projects/inventory-common/src/lib/inventory-common/supplier/payee-selector/payee-selector/payee-selector.component.html +22 -0
- package/projects/inventory-common/src/lib/inventory-common/supplier/payee-selector/payee-selector/payee-selector.component.scss +0 -0
- package/projects/inventory-common/src/lib/inventory-common/supplier/payee-selector/payee-selector/payee-selector.component.ts +44 -0
- package/projects/inventory-common/src/lib/inventory-common/supplier/payee-selector/payee-selector.module.ts +19 -0
- package/projects/inventory-common/src/lib/inventory-common/supplier/supplier-delete-button/supplier-delete-button.component.css +0 -0
- package/projects/inventory-common/src/lib/inventory-common/supplier/supplier-delete-button/supplier-delete-button.component.html +3 -0
- package/projects/inventory-common/src/lib/inventory-common/supplier/supplier-delete-button/supplier-delete-button.component.spec.ts +28 -0
- package/projects/inventory-common/src/lib/inventory-common/supplier/supplier-delete-button/supplier-delete-button.component.ts +56 -0
- package/projects/inventory-common/src/lib/inventory-common/supplier/supplier-form/supplier-form-button/supplier-form-button.component.css +0 -0
- package/projects/inventory-common/src/lib/inventory-common/supplier/supplier-form/supplier-form-button/supplier-form-button.component.html +3 -0
- package/projects/inventory-common/src/lib/inventory-common/supplier/supplier-form/supplier-form-button/supplier-form-button.component.spec.ts +28 -0
- package/projects/inventory-common/src/lib/inventory-common/supplier/supplier-form/supplier-form-button/supplier-form-button.component.ts +40 -0
- package/projects/inventory-common/src/lib/inventory-common/supplier/supplier-form/supplier-form.component.html +100 -0
- package/projects/inventory-common/src/lib/inventory-common/supplier/supplier-form/supplier-form.component.ts +116 -0
- package/projects/inventory-common/src/lib/inventory-common/supplier/supplier-form/supplier-form.service.ts +11 -0
- package/projects/inventory-common/src/lib/inventory-common/supplier/supplier-information/supplier-information.component.html +67 -0
- package/projects/inventory-common/src/lib/inventory-common/supplier/supplier-information/supplier-information.component.scss +0 -0
- package/projects/inventory-common/src/lib/inventory-common/supplier/supplier-information/supplier-information.component.ts +68 -0
- package/projects/inventory-common/src/lib/inventory-common/supplier/supplier-routing.module.ts +32 -0
- package/projects/inventory-common/src/lib/inventory-common/supplier/supplier-type.service.ts +17 -0
- package/projects/inventory-common/src/lib/inventory-common/supplier/supplier-view/supplier-view.component.html +60 -0
- package/projects/inventory-common/src/lib/inventory-common/supplier/supplier-view/supplier-view.component.ts +58 -0
- package/projects/inventory-common/src/lib/inventory-common/supplier/supplier.component.html +3 -0
- package/projects/inventory-common/src/lib/inventory-common/supplier/supplier.component.scss +0 -0
- package/projects/inventory-common/src/lib/inventory-common/supplier/supplier.component.ts +16 -0
- package/projects/inventory-common/src/lib/inventory-common/supplier/supplier.module.ts +46 -0
- package/projects/inventory-common/src/lib/inventory-common/supplier/supplier.service.ts +57 -0
- package/projects/inventory-common/src/lib/inventory-common/supplier/suppliers-list/suppliers-list.component.html +98 -0
- package/projects/inventory-common/src/lib/inventory-common/supplier/suppliers-list/suppliers-list.component.ts +126 -0
- package/projects/inventory-common/src/lib/inventory-common/techlify-filter/techlify-filter.component.html +442 -0
- package/projects/inventory-common/src/lib/inventory-common/techlify-filter/techlify-filter.component.scss +0 -0
- package/projects/inventory-common/src/lib/inventory-common/techlify-filter/techlify-filter.component.ts +109 -0
- package/projects/inventory-common/src/lib/inventory-common/techlify-filter/techlify-filter.module.ts +24 -0
- package/projects/inventory-common/src/public-api.ts +10 -0
- package/projects/inventory-common/tsconfig.lib.json +17 -0
- package/projects/inventory-common/tsconfig.lib.prod.json +13 -0
- package/projects/inventory-common/tsconfig.spec.json +17 -0
- package/public_api.ts +23 -0
- package/releases/techlify-ng-users-0.0.4.tgz +0 -0
- package/releases/techlify-ng-users-0.0.5.tgz +0 -0
- package/src/.htaccess +19 -0
- package/src/app/@modules/@shared/print-button/print-button/print-button.component.html +3 -0
- package/src/app/@modules/@shared/print-button/print-button/print-button.component.scss +0 -0
- package/src/app/@modules/@shared/print-button/print-button/print-button.component.ts +11 -0
- package/src/app/@modules/@shared/print-button/print-button.module.ts +11 -0
- package/src/app/@modules/@shared/print-button/print.service.ts +38 -0
- package/src/app/@modules/@shared/techlify-form-service.ts +14 -0
- package/src/app/@modules/@shared/user-menu/user-menu.component.html +26 -0
- package/src/app/@modules/@shared/user-menu/user-menu.component.spec.ts +23 -0
- package/src/app/@modules/@shared/user-menu/user-menu.component.ts +46 -0
- package/src/app/@modules/@shared/user-menu/user-menu.module.ts +20 -0
- package/src/app/@modules/administration/administration-routing.module.ts +44 -0
- package/src/app/@modules/administration/administration.component.html +3 -0
- package/src/app/@modules/administration/administration.component.ts +11 -0
- package/src/app/@modules/administration/administration.module.ts +18 -0
- package/src/app/@modules/administration/administration.service.ts +33 -0
- package/src/app/@modules/auth/auth-routing.module.ts +17 -0
- package/src/app/@modules/auth/auth.module.ts +12 -0
- package/src/app/@modules/auth/login/login.component.html +302 -0
- package/src/app/@modules/auth/login/login.component.scss +43 -0
- package/src/app/@modules/auth/login/login.component.ts +57 -0
- package/src/app/@modules/inventory-common/category/category-form/category-form.component.html +41 -0
- package/src/app/@modules/inventory-common/category/category-form/category-form.component.scss +0 -0
- package/src/app/@modules/inventory-common/category/category-form/category-form.component.ts +75 -0
- package/src/app/@modules/inventory-common/category/category-form-button/category-form-button.component.html +32 -0
- package/src/app/@modules/inventory-common/category/category-form-button/category-form-button.component.scss +0 -0
- package/src/app/@modules/inventory-common/category/category-form-button/category-form-button.component.ts +29 -0
- package/src/app/@modules/inventory-common/category/category-list-page/category-list-page.component.html +79 -0
- package/src/app/@modules/inventory-common/category/category-list-page/category-list-page.component.scss +0 -0
- package/src/app/@modules/inventory-common/category/category-list-page/category-list-page.component.ts +61 -0
- package/src/app/@modules/inventory-common/category/category-routing.module.ts +16 -0
- package/src/app/@modules/inventory-common/category/category.module.ts +36 -0
- package/src/app/@modules/inventory-common/category/category.service.ts +11 -0
- package/src/app/@modules/inventory-common/inventory-common-routing.module.ts +55 -0
- package/src/app/@modules/inventory-common/inventory-common.module.ts +20 -0
- package/src/app/@modules/inventory-common/inventory-dashboard-page/inventory-dashboard-page.component.html +88 -0
- package/src/app/@modules/inventory-common/inventory-dashboard-page/inventory-dashboard-page.component.scss +0 -0
- package/src/app/@modules/inventory-common/inventory-dashboard-page/inventory-dashboard-page.component.ts +35 -0
- package/src/app/@modules/inventory-common/measure/measure-delete/measure-delete-button/measure-delete-button.component.html +37 -0
- package/src/app/@modules/inventory-common/measure/measure-delete/measure-delete-button/measure-delete-button.component.scss +0 -0
- package/src/app/@modules/inventory-common/measure/measure-delete/measure-delete-button/measure-delete-button.component.ts +44 -0
- package/src/app/@modules/inventory-common/measure/measure-delete/measure-delete.module.ts +11 -0
- package/src/app/@modules/inventory-common/measure/measure-form/measure-form/measure-form.component.html +66 -0
- package/src/app/@modules/inventory-common/measure/measure-form/measure-form/measure-form.component.scss +0 -0
- package/src/app/@modules/inventory-common/measure/measure-form/measure-form/measure-form.component.ts +78 -0
- package/src/app/@modules/inventory-common/measure/measure-form/measure-form-button/measure-form-button.component.html +16 -0
- package/src/app/@modules/inventory-common/measure/measure-form/measure-form-button/measure-form-button.component.scss +0 -0
- package/src/app/@modules/inventory-common/measure/measure-form/measure-form-button/measure-form-button.component.ts +29 -0
- package/src/app/@modules/inventory-common/measure/measure-form/measure-form.module.ts +13 -0
- package/src/app/@modules/inventory-common/measure/measure-routing.module.ts +16 -0
- package/src/app/@modules/inventory-common/measure/measure.module.ts +26 -0
- package/src/app/@modules/inventory-common/measure/measure.service.ts +11 -0
- package/src/app/@modules/inventory-common/measure/measures-list/measures-list.component.html +88 -0
- package/src/app/@modules/inventory-common/measure/measures-list/measures-list.component.scss +0 -0
- package/src/app/@modules/inventory-common/measure/measures-list/measures-list.component.ts +67 -0
- package/src/app/@modules/inventory-common/product/low-stock-products-widget/low-stock-products-widget.component.html +52 -0
- package/src/app/@modules/inventory-common/product/low-stock-products-widget/low-stock-products-widget.component.scss +0 -0
- package/src/app/@modules/inventory-common/product/low-stock-products-widget/low-stock-products-widget.component.ts +42 -0
- package/src/app/@modules/inventory-common/product/low-stock-products-widget/low-stock-products-widget.module.ts +20 -0
- package/src/app/@modules/inventory-common/product/product-basic-info/product-basic-info.component.html +114 -0
- package/src/app/@modules/inventory-common/product/product-basic-info/product-basic-info.component.scss +0 -0
- package/src/app/@modules/inventory-common/product/product-basic-info/product-basic-info.component.ts +43 -0
- package/src/app/@modules/inventory-common/product/product-delete-button/product-delete-button.component.html +33 -0
- package/src/app/@modules/inventory-common/product/product-delete-button/product-delete-button.component.scss +0 -0
- package/src/app/@modules/inventory-common/product/product-delete-button/product-delete-button.component.ts +53 -0
- package/src/app/@modules/inventory-common/product/product-form/product-form.component.html +209 -0
- package/src/app/@modules/inventory-common/product/product-form/product-form.component.spec.ts +24 -0
- package/src/app/@modules/inventory-common/product/product-form/product-form.component.ts +182 -0
- package/src/app/@modules/inventory-common/product/product-form-button/product-form-button.component.html +17 -0
- package/src/app/@modules/inventory-common/product/product-form-button/product-form-button.component.scss +0 -0
- package/src/app/@modules/inventory-common/product/product-form-button/product-form-button.component.ts +39 -0
- package/src/app/@modules/inventory-common/product/product-form.service.ts +11 -0
- package/src/app/@modules/inventory-common/product/product-import-page/product-import-page.component.html +1 -0
- package/src/app/@modules/inventory-common/product/product-import-page/product-import-page.component.scss +0 -0
- package/src/app/@modules/inventory-common/product/product-import-page/product-import-page.component.ts +66 -0
- package/src/app/@modules/inventory-common/product/product-list/product-list.component.html +229 -0
- package/src/app/@modules/inventory-common/product/product-list/product-list.component.spec.ts +24 -0
- package/src/app/@modules/inventory-common/product/product-list/product-list.component.ts +176 -0
- package/src/app/@modules/inventory-common/product/product-measure-form/product-measure-form.component.html +44 -0
- package/src/app/@modules/inventory-common/product/product-measure-form/product-measure-form.component.spec.ts +24 -0
- package/src/app/@modules/inventory-common/product/product-measure-form/product-measure-form.component.ts +93 -0
- package/src/app/@modules/inventory-common/product/product-measures-list/product-measures-list.component.html +90 -0
- package/src/app/@modules/inventory-common/product/product-measures-list/product-measures-list.component.spec.ts +24 -0
- package/src/app/@modules/inventory-common/product/product-measures-list/product-measures-list.component.ts +153 -0
- package/src/app/@modules/inventory-common/product/product-nav-bar/product-nav-bar.component.html +3 -0
- package/src/app/@modules/inventory-common/product/product-nav-bar/product-nav-bar.component.spec.ts +24 -0
- package/src/app/@modules/inventory-common/product/product-nav-bar/product-nav-bar.component.ts +7 -0
- package/src/app/@modules/inventory-common/product/product-routing.module.ts +49 -0
- package/src/app/@modules/inventory-common/product/product-search/product-search.component.html +78 -0
- package/src/app/@modules/inventory-common/product/product-search/product-search.component.scss +12 -0
- package/src/app/@modules/inventory-common/product/product-search/product-search.component.ts +153 -0
- package/src/app/@modules/inventory-common/product/product-search/product-search.module.ts +22 -0
- package/src/app/@modules/inventory-common/product/product-summary-chart/product-summary-chart.component.html +17 -0
- package/src/app/@modules/inventory-common/product/product-summary-chart/product-summary-chart.component.scss +0 -0
- package/src/app/@modules/inventory-common/product/product-summary-chart/product-summary-chart.component.ts +45 -0
- package/src/app/@modules/inventory-common/product/product-summary-chart/product-summary-chart.module.ts +18 -0
- package/src/app/@modules/inventory-common/product/product-tax/product-tax-delete-button/product-tax-delete-button.component.html +32 -0
- package/src/app/@modules/inventory-common/product/product-tax/product-tax-delete-button/product-tax-delete-button.component.scss +0 -0
- package/src/app/@modules/inventory-common/product/product-tax/product-tax-delete-button/product-tax-delete-button.component.ts +55 -0
- package/src/app/@modules/inventory-common/product/product-tax/product-tax-form-button/product-tax-form-button.component.html +49 -0
- package/src/app/@modules/inventory-common/product/product-tax/product-tax-form-button/product-tax-form-button.component.scss +0 -0
- package/src/app/@modules/inventory-common/product/product-tax/product-tax-form-button/product-tax-form-button.component.ts +87 -0
- package/src/app/@modules/inventory-common/product/product-tax/product-tax-list/product-tax-list.component.html +48 -0
- package/src/app/@modules/inventory-common/product/product-tax/product-tax-list/product-tax-list.component.scss +0 -0
- package/src/app/@modules/inventory-common/product/product-tax/product-tax-list/product-tax-list.component.ts +33 -0
- package/src/app/@modules/inventory-common/product/product-tax/product-tax.module.ts +23 -0
- package/src/app/@modules/inventory-common/product/product-tax/product-tax.service.ts +11 -0
- package/src/app/@modules/inventory-common/product/product-view-page/product-view-page.component.html +34 -0
- package/src/app/@modules/inventory-common/product/product-view-page/product-view-page.component.ts +63 -0
- package/src/app/@modules/inventory-common/product/product.module.ts +67 -0
- package/src/app/@modules/inventory-common/product/product.service.ts +54 -0
- package/src/app/@modules/inventory-common/stock-issuances/stock-issuance-delete-button/stock-issuance-delete-button.component.html +32 -0
- package/src/app/@modules/inventory-common/stock-issuances/stock-issuance-delete-button/stock-issuance-delete-button.component.scss +0 -0
- package/src/app/@modules/inventory-common/stock-issuances/stock-issuance-delete-button/stock-issuance-delete-button.component.ts +49 -0
- package/src/app/@modules/inventory-common/stock-issuances/stock-issuance-delete-button/stock-issuance-delete-button.module.ts +11 -0
- package/src/app/@modules/inventory-common/stock-issuances/stock-issuance.service.ts +11 -0
- package/src/app/@modules/inventory-common/stock-issuances/stock-issuances-list/stock-issuances-list.component.html +165 -0
- package/src/app/@modules/inventory-common/stock-issuances/stock-issuances-list/stock-issuances-list.component.scss +0 -0
- package/src/app/@modules/inventory-common/stock-issuances/stock-issuances-list/stock-issuances-list.component.ts +113 -0
- package/src/app/@modules/inventory-common/stock-issuances/stock-issuances-list/stock-issuances-list.module.ts +26 -0
- package/src/app/@modules/inventory-common/stock-issuances/stock-issuances-routing.module.ts +16 -0
- package/src/app/@modules/inventory-common/stock-issuances/stock-issuances.module.ts +36 -0
- package/src/app/@modules/inventory-common/stock-issuances/stock-issue-form/stock-issue-form/stock-issue-form.component.html +64 -0
- package/src/app/@modules/inventory-common/stock-issuances/stock-issue-form/stock-issue-form/stock-issue-form.component.scss +0 -0
- package/src/app/@modules/inventory-common/stock-issuances/stock-issue-form/stock-issue-form/stock-issue-form.component.ts +115 -0
- package/src/app/@modules/inventory-common/stock-issuances/stock-issue-form/stock-issue-form-button/stock-issue-form-button.component.html +20 -0
- package/src/app/@modules/inventory-common/stock-issuances/stock-issue-form/stock-issue-form-button/stock-issue-form-button.component.scss +0 -0
- package/src/app/@modules/inventory-common/stock-issuances/stock-issue-form/stock-issue-form-button/stock-issue-form-button.component.ts +35 -0
- package/src/app/@modules/inventory-common/stock-issuances/stock-issue-form/stock-issue-form.module.ts +29 -0
- package/src/app/@modules/inventory-common/stock-receipts/stock-receipt-delete-button/stock-receipt-delete-button.component.html +32 -0
- package/src/app/@modules/inventory-common/stock-receipts/stock-receipt-delete-button/stock-receipt-delete-button.component.scss +0 -0
- package/src/app/@modules/inventory-common/stock-receipts/stock-receipt-delete-button/stock-receipt-delete-button.component.ts +49 -0
- package/src/app/@modules/inventory-common/stock-receipts/stock-receipt-form/stock-receipt-form/stock-receipt-form.component.html +74 -0
- package/src/app/@modules/inventory-common/stock-receipts/stock-receipt-form/stock-receipt-form/stock-receipt-form.component.scss +0 -0
- package/src/app/@modules/inventory-common/stock-receipts/stock-receipt-form/stock-receipt-form/stock-receipt-form.component.ts +122 -0
- package/src/app/@modules/inventory-common/stock-receipts/stock-receipt-form/stock-receipt-form-button/stock-receipt-form-button.component.html +18 -0
- package/src/app/@modules/inventory-common/stock-receipts/stock-receipt-form/stock-receipt-form-button/stock-receipt-form-button.component.scss +0 -0
- package/src/app/@modules/inventory-common/stock-receipts/stock-receipt-form/stock-receipt-form-button/stock-receipt-form-button.component.ts +33 -0
- package/src/app/@modules/inventory-common/stock-receipts/stock-receipt-form/stock-receipt-form.module.ts +29 -0
- package/src/app/@modules/inventory-common/stock-receipts/stock-receipt.service.ts +11 -0
- package/src/app/@modules/inventory-common/stock-receipts/stock-receipts-list-page/stock-receipts-list-page.component.html +139 -0
- package/src/app/@modules/inventory-common/stock-receipts/stock-receipts-list-page/stock-receipts-list-page.component.scss +0 -0
- package/src/app/@modules/inventory-common/stock-receipts/stock-receipts-list-page/stock-receipts-list-page.component.ts +109 -0
- package/src/app/@modules/inventory-common/stock-receipts/stock-receipts-routing.module.ts +16 -0
- package/src/app/@modules/inventory-common/stock-receipts/stock-receipts.module.ts +45 -0
- package/src/app/@modules/inventory-common/stock-summary.service.ts +18 -0
- package/src/app/@modules/inventory-common/supplier/payee-selector/payee-selector/payee-selector.component.html +22 -0
- package/src/app/@modules/inventory-common/supplier/payee-selector/payee-selector/payee-selector.component.scss +0 -0
- package/src/app/@modules/inventory-common/supplier/payee-selector/payee-selector/payee-selector.component.ts +44 -0
- package/src/app/@modules/inventory-common/supplier/payee-selector/payee-selector.module.ts +19 -0
- package/src/app/@modules/inventory-common/supplier/supplier-form/supplier-form.component.html +133 -0
- package/src/app/@modules/inventory-common/supplier/supplier-form/supplier-form.component.ts +116 -0
- package/src/app/@modules/inventory-common/supplier/supplier-form/supplier-form.service.ts +11 -0
- package/src/app/@modules/inventory-common/supplier/supplier-information/supplier-information.component.html +67 -0
- package/src/app/@modules/inventory-common/supplier/supplier-information/supplier-information.component.scss +0 -0
- package/src/app/@modules/inventory-common/supplier/supplier-information/supplier-information.component.ts +68 -0
- package/src/app/@modules/inventory-common/supplier/supplier-routing.module.ts +32 -0
- package/src/app/@modules/inventory-common/supplier/supplier-type.service.ts +17 -0
- package/src/app/@modules/inventory-common/supplier/supplier-view/supplier-view.component.html +60 -0
- package/src/app/@modules/inventory-common/supplier/supplier-view/supplier-view.component.ts +58 -0
- package/src/app/@modules/inventory-common/supplier/supplier.component.html +3 -0
- package/src/app/@modules/inventory-common/supplier/supplier.component.scss +0 -0
- package/src/app/@modules/inventory-common/supplier/supplier.component.ts +16 -0
- package/src/app/@modules/inventory-common/supplier/supplier.module.ts +42 -0
- package/src/app/@modules/inventory-common/supplier/supplier.service.ts +57 -0
- package/src/app/@modules/inventory-common/supplier/suppliers-list/suppliers-list.component.html +140 -0
- package/src/app/@modules/inventory-common/supplier/suppliers-list/suppliers-list.component.ts +240 -0
- package/src/app/@modules/sidebar-layout/expandable-menu/expandable-menu.component.html +10 -0
- package/src/app/@modules/sidebar-layout/expandable-menu/expandable-menu.component.scss +20 -0
- package/src/app/@modules/sidebar-layout/expandable-menu/expandable-menu.component.ts +24 -0
- package/src/app/@modules/sidebar-layout/menu-item.model.ts +12 -0
- package/src/app/@modules/sidebar-layout/sidebar-administration-menu/sidebar-administration-menu.component.html +26 -0
- package/src/app/@modules/sidebar-layout/sidebar-administration-menu/sidebar-administration-menu.component.ts +23 -0
- package/src/app/@modules/sidebar-layout/sidebar-layout/sidebar-layout.component.html +32 -0
- package/src/app/@modules/sidebar-layout/sidebar-layout/sidebar-layout.component.scss +48 -0
- package/src/app/@modules/sidebar-layout/sidebar-layout/sidebar-layout.component.ts +173 -0
- package/src/app/@modules/sidebar-layout/sidebar-layout-routing.module.ts +52 -0
- package/src/app/@modules/sidebar-layout/sidebar-layout.module.ts +52 -0
- package/src/app/@modules/sidebar-layout/top-menu/top-menu.component.html +85 -0
- package/src/app/@modules/sidebar-layout/top-menu/top-menu.component.scss +0 -0
- package/src/app/@modules/sidebar-layout/top-menu/top-menu.component.ts +46 -0
- package/src/app/@modules/sidebar-layout/top-menu/top-menu.service.ts +29 -0
- package/src/app/@modules/techlify-filter/techlify-filter.component.html +442 -0
- package/src/app/@modules/techlify-filter/techlify-filter.component.scss +0 -0
- package/src/app/@modules/techlify-filter/techlify-filter.component.ts +109 -0
- package/src/app/@modules/techlify-filter/techlify-filter.module.ts +24 -0
- package/src/app/@modules/user/user-layout/user-layout.component.html +15 -0
- package/src/app/@modules/user/user-layout/user-layout.component.scss +0 -0
- package/src/app/@modules/user/user-layout/user-layout.component.ts +12 -0
- package/src/app/@modules/user/user-routing.module.ts +23 -0
- package/src/app/@modules/user/user.module.ts +13 -0
- package/src/app/@modules/user-setting-button/user-setting-button/user-setting-button.component.html +15 -0
- package/src/app/@modules/user-setting-button/user-setting-button/user-setting-button.component.scss +0 -0
- package/src/app/@modules/user-setting-button/user-setting-button/user-setting-button.component.ts +12 -0
- package/src/app/@modules/user-setting-button/user-setting-button.module.ts +20 -0
- package/src/app/app-routing.module.ts +28 -0
- package/src/app/app.component.html +1 -0
- package/src/app/app.component.scss +43 -0
- package/src/app/app.component.spec.ts +18 -0
- package/src/app/app.component.ts +62 -0
- package/src/app/app.module.ts +73 -0
- package/src/app/material.module.ts +95 -0
- package/src/assets/.gitkeep +0 -0
- package/src/assets/images/techlify-logo-xs.png +0 -0
- package/src/assets/product/product-import-sample.csv +1 -0
- package/src/environments/common-environment.ts +36 -0
- package/src/environments/environment.prod.ts +10 -0
- package/src/environments/environment.staging.ts +19 -0
- package/src/environments/environment.ts +18 -0
- package/src/favicon.ico +0 -0
- package/src/index.html +34 -0
- package/src/main.ts +19 -0
- package/src/polyfills.ts +57 -0
- package/src/styles.scss +366 -0
- package/src/test.ts +12 -0
- package/src/theme/theme-variables.scss +132 -0
- package/src/theme/theme.scss +17 -0
- package/src/tsconfig.app.json +15 -0
- package/src/tsconfig.spec.json +14 -0
- package/tsconfig.app.json +17 -0
- package/tsconfig.json +69 -0
- package/tslint.json +130 -0
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
.removeborder {
|
|
2
|
+
border: none !important;
|
|
3
|
+
}
|
|
4
|
+
|
|
5
|
+
.heading {
|
|
6
|
+
font-family: "Inter";
|
|
7
|
+
font-style: normal;
|
|
8
|
+
font-weight: 700 !important;
|
|
9
|
+
font-size: 30px !important;
|
|
10
|
+
line-height: 36px !important;
|
|
11
|
+
color: #000000 !important;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
.subheading {
|
|
15
|
+
font-family: "Inter";
|
|
16
|
+
font-style: normal;
|
|
17
|
+
font-weight: 400 !important;
|
|
18
|
+
font-size: 18px !important;
|
|
19
|
+
line-height: 28px !important;
|
|
20
|
+
color: #8692a6 !important;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
.customlabel {
|
|
24
|
+
font-family: "Inter";
|
|
25
|
+
font-style: normal;
|
|
26
|
+
font-weight: 500 !important;
|
|
27
|
+
font-size: 16px !important;
|
|
28
|
+
line-height: 19px !important;
|
|
29
|
+
color: #696f79 !important;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
.custombutton {
|
|
33
|
+
height: 50px;
|
|
34
|
+
background: #009ffd;
|
|
35
|
+
border-radius: 6px;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
.custominput {
|
|
39
|
+
border: 1px solid #8692a6;
|
|
40
|
+
border-radius: 6px;
|
|
41
|
+
/* height: 64px; */
|
|
42
|
+
background-color: white !important;
|
|
43
|
+
}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { HttpClient } from "@angular/common/http";
|
|
2
|
+
import { Component, OnInit } from "@angular/core";
|
|
3
|
+
import { FormBuilder, FormGroup } from "@angular/forms";
|
|
4
|
+
import { Router } from "@angular/router";
|
|
5
|
+
|
|
6
|
+
@Component({
|
|
7
|
+
selector: "app-login",
|
|
8
|
+
templateUrl: "./login.component.html",
|
|
9
|
+
styleUrls: ["./login.component.scss"],
|
|
10
|
+
})
|
|
11
|
+
export class LoginComponent implements OnInit {
|
|
12
|
+
constructor(
|
|
13
|
+
private fb: FormBuilder,
|
|
14
|
+
private http: HttpClient,
|
|
15
|
+
private _router: Router
|
|
16
|
+
) {}
|
|
17
|
+
|
|
18
|
+
ngOnInit(): void {
|
|
19
|
+
this.ReactiveForms();
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
public Form!: FormGroup;
|
|
23
|
+
|
|
24
|
+
ReactiveForms() {
|
|
25
|
+
this.Form = this.fb.group({
|
|
26
|
+
password: "",
|
|
27
|
+
username: "",
|
|
28
|
+
client_id: 2,
|
|
29
|
+
client_secret: "KKKnfR6E6FziQtlSpiH3FvnHtCWmxMTIbLtuKjTH",
|
|
30
|
+
grant_type: "password",
|
|
31
|
+
remember: true,
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
Logicall() {
|
|
36
|
+
debugger;
|
|
37
|
+
|
|
38
|
+
try {
|
|
39
|
+
this.Loginservices(
|
|
40
|
+
"http://127.0.0.1:8000/oauth/token",
|
|
41
|
+
this.Form.value
|
|
42
|
+
).subscribe((dt) => {
|
|
43
|
+
localStorage.setItem("user", JSON.stringify(dt));
|
|
44
|
+
console.log("dt", dt);
|
|
45
|
+
setTimeout(() => {
|
|
46
|
+
this._router.navigate(["/product-table"]);
|
|
47
|
+
}, 10);
|
|
48
|
+
});
|
|
49
|
+
} catch {
|
|
50
|
+
console.error("error");
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
Loginservices(url: string, body: any) {
|
|
55
|
+
return this.http.post(url, body);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
<form
|
|
2
|
+
[formGroup]="form"
|
|
3
|
+
(submit)="save()"
|
|
4
|
+
class="d-flex flex-column justify-content-start"
|
|
5
|
+
>
|
|
6
|
+
<mat-form-field>
|
|
7
|
+
<mat-label>Title</mat-label>
|
|
8
|
+
<input type="text" matInput formControlName="title" placeholder="Title" />
|
|
9
|
+
<mat-error *ngIf="isFieldValid('title')">
|
|
10
|
+
{{ getErrorMessage("title") }}
|
|
11
|
+
</mat-error>
|
|
12
|
+
</mat-form-field>
|
|
13
|
+
|
|
14
|
+
<mat-form-field>
|
|
15
|
+
<mat-label>Description</mat-label>
|
|
16
|
+
<textarea
|
|
17
|
+
matInput
|
|
18
|
+
formControlName="description"
|
|
19
|
+
placeholder="Description"
|
|
20
|
+
></textarea>
|
|
21
|
+
</mat-form-field>
|
|
22
|
+
|
|
23
|
+
<div class="d-flex justify-content-end align-items-center gap-2">
|
|
24
|
+
<button
|
|
25
|
+
[disabled]="isSaving"
|
|
26
|
+
type="submit"
|
|
27
|
+
mat-raised-button
|
|
28
|
+
color="primary"
|
|
29
|
+
>
|
|
30
|
+
Save
|
|
31
|
+
</button>
|
|
32
|
+
<button
|
|
33
|
+
[disabled]="isSaving"
|
|
34
|
+
type="button"
|
|
35
|
+
mat-flat-button
|
|
36
|
+
(click)="cancelled.emit()"
|
|
37
|
+
>
|
|
38
|
+
Cancel
|
|
39
|
+
</button>
|
|
40
|
+
</div>
|
|
41
|
+
</form>
|
|
File without changes
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, OnInit, Output } from "@angular/core";
|
|
2
|
+
import {
|
|
3
|
+
AlertService,
|
|
4
|
+
FormValidatorService,
|
|
5
|
+
TechlifyFormComponentInterface,
|
|
6
|
+
} from "ngx-techlify-core";
|
|
7
|
+
import { FormBuilder, Validators } from "@angular/forms";
|
|
8
|
+
import { CategoryService } from "../category.service";
|
|
9
|
+
import { Observable } from "rxjs";
|
|
10
|
+
|
|
11
|
+
@Component({
|
|
12
|
+
selector: "app-category-form",
|
|
13
|
+
templateUrl: "./category-form.component.html",
|
|
14
|
+
styleUrls: ["./category-form.component.scss"],
|
|
15
|
+
})
|
|
16
|
+
export class CategoryFormComponent
|
|
17
|
+
extends TechlifyFormComponentInterface
|
|
18
|
+
implements OnInit
|
|
19
|
+
{
|
|
20
|
+
@Input() category: any;
|
|
21
|
+
@Output() saved: EventEmitter<any> = new EventEmitter<any>();
|
|
22
|
+
@Output() cancelled: EventEmitter<any> = new EventEmitter<any>();
|
|
23
|
+
|
|
24
|
+
isSaving: boolean = false;
|
|
25
|
+
constructor(
|
|
26
|
+
formValidatorService: FormValidatorService,
|
|
27
|
+
private formBuilder: FormBuilder,
|
|
28
|
+
private categoryService: CategoryService,
|
|
29
|
+
private alertService: AlertService
|
|
30
|
+
) {
|
|
31
|
+
super(formValidatorService);
|
|
32
|
+
this.errorMessages = {
|
|
33
|
+
title: {
|
|
34
|
+
required: "The title field is required.",
|
|
35
|
+
},
|
|
36
|
+
};
|
|
37
|
+
|
|
38
|
+
this.form = this.formBuilder.group({
|
|
39
|
+
id: [""],
|
|
40
|
+
title: ["", Validators.required],
|
|
41
|
+
description: [""],
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
save() {
|
|
46
|
+
this.form.markAllAsTouched();
|
|
47
|
+
if (this.form.invalid) {
|
|
48
|
+
this.alertService.addAlert("Please check the form for errors.", "error");
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
this.isSaving = true;
|
|
53
|
+
const data: any = { ...this.form.value };
|
|
54
|
+
let request: Observable<any> = this.categoryService.store(data);
|
|
55
|
+
if (this.category?.id) {
|
|
56
|
+
request = this.categoryService.update(data);
|
|
57
|
+
}
|
|
58
|
+
request.subscribe({
|
|
59
|
+
next: (response: any) => {
|
|
60
|
+
this.isSaving = false;
|
|
61
|
+
this.alertService.addAlert("Category saved successfully!", "success");
|
|
62
|
+
this.saved.emit(response?.item);
|
|
63
|
+
},
|
|
64
|
+
error: () => {
|
|
65
|
+
this.isSaving = false;
|
|
66
|
+
},
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
ngOnInit(): void {
|
|
71
|
+
if (this.category) {
|
|
72
|
+
this.form.patchValue({ ...this.category });
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
<mat-icon
|
|
2
|
+
*ngIf="!category"
|
|
3
|
+
color="primary"
|
|
4
|
+
class="cursor-pointer"
|
|
5
|
+
(click)="showCategoryForm(categoryFormTemplate)"
|
|
6
|
+
>
|
|
7
|
+
add
|
|
8
|
+
</mat-icon>
|
|
9
|
+
|
|
10
|
+
<mat-icon
|
|
11
|
+
*ngIf="category"
|
|
12
|
+
class="cursor-pointer"
|
|
13
|
+
(click)="showCategoryForm(categoryFormTemplate)"
|
|
14
|
+
>
|
|
15
|
+
edit
|
|
16
|
+
</mat-icon>
|
|
17
|
+
|
|
18
|
+
<ng-template #categoryFormTemplate>
|
|
19
|
+
<h3 mat-dialog-title class="mb-0">
|
|
20
|
+
{{ category ? "Edit" : "Create" }} Category
|
|
21
|
+
</h3>
|
|
22
|
+
<small class="text-secondary mb-1">
|
|
23
|
+
Note that category names are unique and cannot be duplicated.
|
|
24
|
+
</small>
|
|
25
|
+
<div mat-dialog-content>
|
|
26
|
+
<app-category-form
|
|
27
|
+
[category]="category"
|
|
28
|
+
(saved)="onCategorySaved($event)"
|
|
29
|
+
(cancelled)="matDialog.closeAll()"
|
|
30
|
+
></app-category-form>
|
|
31
|
+
</div>
|
|
32
|
+
</ng-template>
|
|
File without changes
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import {
|
|
2
|
+
Component,
|
|
3
|
+
EventEmitter,
|
|
4
|
+
Input,
|
|
5
|
+
Output,
|
|
6
|
+
TemplateRef,
|
|
7
|
+
} from "@angular/core";
|
|
8
|
+
import { MatDialog } from "@angular/material/dialog";
|
|
9
|
+
|
|
10
|
+
@Component({
|
|
11
|
+
selector: "app-category-form-button",
|
|
12
|
+
templateUrl: "./category-form-button.component.html",
|
|
13
|
+
styleUrls: ["./category-form-button.component.scss"],
|
|
14
|
+
})
|
|
15
|
+
export class CategoryFormButtonComponent {
|
|
16
|
+
@Input() category: any;
|
|
17
|
+
@Output() saved: EventEmitter<any> = new EventEmitter<any>();
|
|
18
|
+
|
|
19
|
+
constructor(public matDialog: MatDialog) {}
|
|
20
|
+
|
|
21
|
+
showCategoryForm(templateRef: TemplateRef<any>) {
|
|
22
|
+
this.matDialog.open(templateRef, { width: "400px" });
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
onCategorySaved(category: any) {
|
|
26
|
+
this.matDialog.closeAll();
|
|
27
|
+
this.saved.emit(category);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
<mat-card>
|
|
2
|
+
<mat-card-content
|
|
3
|
+
class="d-flex justify-content-start align-items-center gap-3"
|
|
4
|
+
>
|
|
5
|
+
<div class="d-flex justify-content-start align-items-center gap-2">
|
|
6
|
+
<h3 class="mb-0">Product Categories</h3>
|
|
7
|
+
<app-category-form-button
|
|
8
|
+
class="mt-1"
|
|
9
|
+
(saved)="reload()"
|
|
10
|
+
></app-category-form-button>
|
|
11
|
+
</div>
|
|
12
|
+
<app-techlify-filter
|
|
13
|
+
[filterForm]="filterForm"
|
|
14
|
+
(filterUpdated)="reload()"
|
|
15
|
+
[filterConfig]="filterConfig"
|
|
16
|
+
></app-techlify-filter>
|
|
17
|
+
</mat-card-content>
|
|
18
|
+
</mat-card>
|
|
19
|
+
|
|
20
|
+
<mat-card class="mt-2 p-0">
|
|
21
|
+
<mat-card-content>
|
|
22
|
+
<table
|
|
23
|
+
mat-table
|
|
24
|
+
[dataSource]="models"
|
|
25
|
+
class="w-100"
|
|
26
|
+
aria-describedby="Product Categories"
|
|
27
|
+
infiniteScroll
|
|
28
|
+
[infiniteScrollDistance]="2"
|
|
29
|
+
[infiniteScrollThrottle]="50"
|
|
30
|
+
(scrolled)="onScroll()"
|
|
31
|
+
matSort
|
|
32
|
+
(matSortChange)="onSortChange($event)"
|
|
33
|
+
>
|
|
34
|
+
<!-- # Column -->
|
|
35
|
+
<ng-container matColumnDef="no">
|
|
36
|
+
<th mat-header-cell *matHeaderCellDef>#</th>
|
|
37
|
+
<td mat-cell *matCellDef="let element; let i = index">{{ i + 1 }}</td>
|
|
38
|
+
</ng-container>
|
|
39
|
+
|
|
40
|
+
<!-- Title Column -->
|
|
41
|
+
<ng-container matColumnDef="title">
|
|
42
|
+
<th mat-header-cell *matHeaderCellDef mat-sort-header>Title</th>
|
|
43
|
+
<td mat-cell *matCellDef="let element">{{ element?.title }}</td>
|
|
44
|
+
</ng-container>
|
|
45
|
+
|
|
46
|
+
<!-- Description Column -->
|
|
47
|
+
<ng-container matColumnDef="description">
|
|
48
|
+
<th mat-header-cell *matHeaderCellDef>Description</th>
|
|
49
|
+
<td mat-cell *matCellDef="let element">{{ element?.description }}</td>
|
|
50
|
+
</ng-container>
|
|
51
|
+
|
|
52
|
+
<!-- Products Column -->
|
|
53
|
+
<ng-container matColumnDef="products">
|
|
54
|
+
<th mat-header-cell *matHeaderCellDef mat-sort-header="products_count">
|
|
55
|
+
Products
|
|
56
|
+
</th>
|
|
57
|
+
<td mat-cell *matCellDef="let element">
|
|
58
|
+
{{ element?.products_count }}
|
|
59
|
+
</td>
|
|
60
|
+
</ng-container>
|
|
61
|
+
|
|
62
|
+
<!-- Actions Column -->
|
|
63
|
+
<ng-container matColumnDef="actions">
|
|
64
|
+
<th mat-header-cell *matHeaderCellDef>Actions</th>
|
|
65
|
+
<td mat-cell *matCellDef="let element">
|
|
66
|
+
<app-category-form-button
|
|
67
|
+
[category]="element"
|
|
68
|
+
(saved)="reload()"
|
|
69
|
+
></app-category-form-button>
|
|
70
|
+
</td>
|
|
71
|
+
</ng-container>
|
|
72
|
+
|
|
73
|
+
<tr mat-header-row *matHeaderRowDef="displayedColumns"></tr>
|
|
74
|
+
<tr mat-row *matRowDef="let row; columns: displayedColumns"></tr>
|
|
75
|
+
</table>
|
|
76
|
+
|
|
77
|
+
<mat-progress-bar *ngIf="isWorking" mode="indeterminate"></mat-progress-bar>
|
|
78
|
+
</mat-card-content>
|
|
79
|
+
</mat-card>
|
|
File without changes
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { Component } from "@angular/core";
|
|
2
|
+
import { TechlifyListingControllerInterface } from "ngx-techlify-core";
|
|
3
|
+
import { FormBuilder } from "@angular/forms";
|
|
4
|
+
import { CategoryService } from "../category.service";
|
|
5
|
+
import { Sort } from "@angular/material/sort";
|
|
6
|
+
|
|
7
|
+
@Component({
|
|
8
|
+
selector: "app-category-list-page",
|
|
9
|
+
templateUrl: "./category-list-page.component.html",
|
|
10
|
+
styleUrls: ["./category-list-page.component.scss"],
|
|
11
|
+
})
|
|
12
|
+
export class CategoryListPageComponent extends TechlifyListingControllerInterface {
|
|
13
|
+
filterConfig = {
|
|
14
|
+
search: {
|
|
15
|
+
placeholder: "Search category title, description",
|
|
16
|
+
},
|
|
17
|
+
};
|
|
18
|
+
displayedColumns: string[] = [
|
|
19
|
+
"no",
|
|
20
|
+
"title",
|
|
21
|
+
"description",
|
|
22
|
+
"products",
|
|
23
|
+
"actions",
|
|
24
|
+
];
|
|
25
|
+
|
|
26
|
+
constructor(
|
|
27
|
+
private formBuilder: FormBuilder,
|
|
28
|
+
private categoryService: CategoryService
|
|
29
|
+
) {
|
|
30
|
+
super();
|
|
31
|
+
this.filterForm = this.formBuilder.group({
|
|
32
|
+
search: [""],
|
|
33
|
+
sort_by: ["created_at|desc"],
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
override loadData() {
|
|
38
|
+
this.isWorking = true;
|
|
39
|
+
const params: any = { ...this.filterForm.value };
|
|
40
|
+
params.perPage = this.perPage;
|
|
41
|
+
params.page = this.page;
|
|
42
|
+
params.withCount = "products";
|
|
43
|
+
|
|
44
|
+
this.categoryService.index(params).subscribe({
|
|
45
|
+
next: (response: any) => {
|
|
46
|
+
this.models = this.models.concat(response?.data);
|
|
47
|
+
this.lastPage = response?.last_page;
|
|
48
|
+
this.isWorking = false;
|
|
49
|
+
},
|
|
50
|
+
error: () => (this.isWorking = false),
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
onSortChange(sort: Sort) {
|
|
55
|
+
let { active, direction } = sort;
|
|
56
|
+
if (!active) active = "created_at";
|
|
57
|
+
if (!direction) direction = "desc";
|
|
58
|
+
|
|
59
|
+
this.filterForm.get("sort_by").setValue(active + "|" + direction);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { NgModule } from "@angular/core";
|
|
2
|
+
import { RouterModule, Routes } from "@angular/router";
|
|
3
|
+
import { CategoryListPageComponent } from "./category-list-page/category-list-page.component";
|
|
4
|
+
|
|
5
|
+
const routes: Routes = [
|
|
6
|
+
{
|
|
7
|
+
path: "",
|
|
8
|
+
component: CategoryListPageComponent,
|
|
9
|
+
},
|
|
10
|
+
];
|
|
11
|
+
|
|
12
|
+
@NgModule({
|
|
13
|
+
imports: [RouterModule.forChild(routes)],
|
|
14
|
+
exports: [RouterModule],
|
|
15
|
+
})
|
|
16
|
+
export class CategoryRoutingModule {}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { NgModule } from "@angular/core";
|
|
2
|
+
import { CommonModule } from "@angular/common";
|
|
3
|
+
|
|
4
|
+
import { CategoryRoutingModule } from "./category-routing.module";
|
|
5
|
+
import { CategoryListPageComponent } from "./category-list-page/category-list-page.component";
|
|
6
|
+
import { MatCardModule } from "@angular/material/card";
|
|
7
|
+
import { CategoryFormButtonComponent } from "./category-form-button/category-form-button.component";
|
|
8
|
+
import { MatIconModule } from "@angular/material/icon";
|
|
9
|
+
import { CategoryFormComponent } from "./category-form/category-form.component";
|
|
10
|
+
import { MatDialogModule } from "@angular/material/dialog";
|
|
11
|
+
import { ReactiveFormsModule } from "@angular/forms";
|
|
12
|
+
import { InfiniteScrollModule } from "ngx-infinite-scroll";
|
|
13
|
+
import { MaterialModule } from "ngx-techlify-core";
|
|
14
|
+
import { TechlifyFilterModule } from "@modules/techlify-filter/techlify-filter.module";
|
|
15
|
+
import { MatProgressBarModule } from "@angular/material/progress-bar";
|
|
16
|
+
|
|
17
|
+
@NgModule({
|
|
18
|
+
declarations: [
|
|
19
|
+
CategoryListPageComponent,
|
|
20
|
+
CategoryFormButtonComponent,
|
|
21
|
+
CategoryFormComponent,
|
|
22
|
+
],
|
|
23
|
+
imports: [
|
|
24
|
+
CommonModule,
|
|
25
|
+
CategoryRoutingModule,
|
|
26
|
+
MatCardModule,
|
|
27
|
+
MatIconModule,
|
|
28
|
+
MatDialogModule,
|
|
29
|
+
ReactiveFormsModule,
|
|
30
|
+
MaterialModule,
|
|
31
|
+
TechlifyFilterModule,
|
|
32
|
+
InfiniteScrollModule,
|
|
33
|
+
MatProgressBarModule,
|
|
34
|
+
],
|
|
35
|
+
})
|
|
36
|
+
export class CategoryModule {}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { Injectable } from "@angular/core";
|
|
2
|
+
import { HttpService, TechlifyServiceBaseClass } from "ngx-techlify-core";
|
|
3
|
+
|
|
4
|
+
@Injectable({
|
|
5
|
+
providedIn: "root",
|
|
6
|
+
})
|
|
7
|
+
export class CategoryService extends TechlifyServiceBaseClass {
|
|
8
|
+
constructor(httpService: HttpService) {
|
|
9
|
+
super(httpService, "product-categories");
|
|
10
|
+
}
|
|
11
|
+
}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { NgModule } from "@angular/core";
|
|
2
|
+
import { RouterModule, Routes } from "@angular/router";
|
|
3
|
+
import { InventoryDashboardPageComponent } from "./inventory-dashboard-page/inventory-dashboard-page.component";
|
|
4
|
+
|
|
5
|
+
const routes: Routes = [
|
|
6
|
+
{
|
|
7
|
+
path: "suppliers",
|
|
8
|
+
loadChildren: () =>
|
|
9
|
+
import("./supplier/supplier.module").then((m) => m.SupplierModule),
|
|
10
|
+
},
|
|
11
|
+
{
|
|
12
|
+
path: "measures",
|
|
13
|
+
loadChildren: () =>
|
|
14
|
+
import("./measure/measure.module").then((mod) => mod.MeasureModule),
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
path: "stock-issuances",
|
|
18
|
+
loadChildren: () =>
|
|
19
|
+
import("./stock-issuances/stock-issuances.module").then(
|
|
20
|
+
(mod) => mod.StockIssuancesModule
|
|
21
|
+
),
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
path: "stock-receipts",
|
|
25
|
+
loadChildren: () =>
|
|
26
|
+
import("./stock-receipts/stock-receipts.module").then(
|
|
27
|
+
(mod) => mod.StockReceiptsModule
|
|
28
|
+
),
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
path: "categories",
|
|
32
|
+
loadChildren: () =>
|
|
33
|
+
import("./category/category.module").then((mod) => mod.CategoryModule),
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
path: "products",
|
|
37
|
+
loadChildren: () =>
|
|
38
|
+
import("./product/product.module").then((mod) => mod.ProductModule),
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
path: "dashboard",
|
|
42
|
+
component: InventoryDashboardPageComponent,
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
path: "**",
|
|
46
|
+
redirectTo: "dashboard",
|
|
47
|
+
pathMatch: "full",
|
|
48
|
+
},
|
|
49
|
+
];
|
|
50
|
+
|
|
51
|
+
@NgModule({
|
|
52
|
+
imports: [RouterModule.forChild(routes)],
|
|
53
|
+
exports: [RouterModule],
|
|
54
|
+
})
|
|
55
|
+
export class InventoryCommonRoutingModule {}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { NgModule } from "@angular/core";
|
|
2
|
+
import { CommonModule } from "@angular/common";
|
|
3
|
+
|
|
4
|
+
import { InventoryCommonRoutingModule } from "./inventory-common-routing.module";
|
|
5
|
+
import { InventoryDashboardPageComponent } from "./inventory-dashboard-page/inventory-dashboard-page.component";
|
|
6
|
+
import { MaterialModule } from "ngx-techlify-core";
|
|
7
|
+
import { LowStockProductsWidgetModule } from "@modules/inventory-common/product/low-stock-products-widget/low-stock-products-widget.module";
|
|
8
|
+
import { ProductSummaryChartModule } from "@modules/inventory-common/product/product-summary-chart/product-summary-chart.module";
|
|
9
|
+
|
|
10
|
+
@NgModule({
|
|
11
|
+
declarations: [InventoryDashboardPageComponent],
|
|
12
|
+
imports: [
|
|
13
|
+
CommonModule,
|
|
14
|
+
InventoryCommonRoutingModule,
|
|
15
|
+
MaterialModule,
|
|
16
|
+
LowStockProductsWidgetModule,
|
|
17
|
+
ProductSummaryChartModule,
|
|
18
|
+
],
|
|
19
|
+
})
|
|
20
|
+
export class InventoryCommonModule {}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
<div class="d-flex justify-content-start align-items-start gap-3 vh-100">
|
|
2
|
+
<div class="row" style="width: calc(100% - 300px)">
|
|
3
|
+
<div class="col-lg-4 mb-3">
|
|
4
|
+
<mat-card>
|
|
5
|
+
<mat-card-content
|
|
6
|
+
class="d-flex justify-content-center align-items-center gap-3"
|
|
7
|
+
>
|
|
8
|
+
<span
|
|
9
|
+
class="material-symbols-outlined fs-1 fw-bold"
|
|
10
|
+
style="color: #f5222d !important"
|
|
11
|
+
>
|
|
12
|
+
inventory_2
|
|
13
|
+
</span>
|
|
14
|
+
<div class="d-flex flex-column gap-0">
|
|
15
|
+
<small class="text-secondary">Low Stock Products</small>
|
|
16
|
+
<h1 class="mb-0 fw-bold">{{ lowStockProductsCount | number }}</h1>
|
|
17
|
+
</div>
|
|
18
|
+
</mat-card-content>
|
|
19
|
+
</mat-card>
|
|
20
|
+
</div>
|
|
21
|
+
<div class="col-lg-4 mb-3">
|
|
22
|
+
<mat-card>
|
|
23
|
+
<mat-card-content
|
|
24
|
+
class="d-flex justify-content-center align-items-center gap-3"
|
|
25
|
+
>
|
|
26
|
+
<span class="material-symbols-outlined fs-1 fw-bold">
|
|
27
|
+
arrow_circle_down
|
|
28
|
+
</span>
|
|
29
|
+
<div class="d-flex flex-column gap-0">
|
|
30
|
+
<small class="text-secondary">Products Received This Month</small>
|
|
31
|
+
<h1 class="mb-0 fw-bold">{{ stockReceiptsQtySum | number }}</h1>
|
|
32
|
+
</div>
|
|
33
|
+
</mat-card-content>
|
|
34
|
+
</mat-card>
|
|
35
|
+
</div>
|
|
36
|
+
<div class="col-lg-4 mb-3">
|
|
37
|
+
<mat-card>
|
|
38
|
+
<mat-card-content
|
|
39
|
+
class="d-flex justify-content-center align-items-center gap-3"
|
|
40
|
+
>
|
|
41
|
+
<span class="material-symbols-outlined fs-1 fw-bold">
|
|
42
|
+
arrow_circle_up
|
|
43
|
+
</span>
|
|
44
|
+
<div class="d-flex flex-column gap-0">
|
|
45
|
+
<small class="text-secondary">Products Issued This Month</small>
|
|
46
|
+
<h1 class="mb-0 fw-bold">{{ stockIssuanceQtySum | number }}</h1>
|
|
47
|
+
</div>
|
|
48
|
+
</mat-card-content>
|
|
49
|
+
</mat-card>
|
|
50
|
+
</div>
|
|
51
|
+
<div class="col-lg-6 mb-3">
|
|
52
|
+
<app-low-stock-products-widget></app-low-stock-products-widget>
|
|
53
|
+
</div>
|
|
54
|
+
<div class="col-lg-6 mb-3">
|
|
55
|
+
<app-product-summary-chart
|
|
56
|
+
title="Product By Category"
|
|
57
|
+
></app-product-summary-chart>
|
|
58
|
+
</div>
|
|
59
|
+
</div>
|
|
60
|
+
<div style="width: 300px" class="d-flex flex-column gap-3 h-100">
|
|
61
|
+
<mat-card class="h-100">
|
|
62
|
+
<mat-card-content>
|
|
63
|
+
<div class="d-flex justify-content-start align-items-center gap-2">
|
|
64
|
+
<mat-icon>flag</mat-icon>
|
|
65
|
+
<h3 class="mb-0 fw-bold">Reports</h3>
|
|
66
|
+
</div>
|
|
67
|
+
</mat-card-content>
|
|
68
|
+
<mat-card-content
|
|
69
|
+
class="mt-3 d-flex flex-column justify-content-start gap-3"
|
|
70
|
+
>
|
|
71
|
+
<a
|
|
72
|
+
class="d-flex justify-content-start align-items-center gap-2 text-decoration-none text-dark cursor-pointer"
|
|
73
|
+
>
|
|
74
|
+
<span class="material-symbols-outlined fs-3"> description </span>
|
|
75
|
+
<h3 class="mb-0">On Hand Report</h3>
|
|
76
|
+
<span class="material-symbols-outlined"> chevron_forward </span>
|
|
77
|
+
</a>
|
|
78
|
+
<a
|
|
79
|
+
class="d-flex justify-content-start align-items-center gap-2 text-decoration-none text-dark cursor-pointer"
|
|
80
|
+
>
|
|
81
|
+
<span class="material-symbols-outlined fs-3"> description </span>
|
|
82
|
+
<h3 class="mb-0">Inventory Value Report</h3>
|
|
83
|
+
<span class="material-symbols-outlined"> chevron_forward </span>
|
|
84
|
+
</a>
|
|
85
|
+
</mat-card-content>
|
|
86
|
+
</mat-card>
|
|
87
|
+
</div>
|
|
88
|
+
</div>
|
|
File without changes
|