Finished from a parallel session that expired (owner: «بساز»).
- RPT-01: GET admin/report/order-items — legacy report/order_item's
32-column Excel (order items, one row per unit, plus financial
documents), RTL, Jalali dates. The «گزارش تجمیعی» screen gets
«دریافت فایل اکسل». Review fixes:
- weight: computedWeightGrams is already one unit's weight; legacy
divided it by qty again, under-reporting «بدهکار» on multi-unit
lines. Not repeated.
- «درصد»: the final percent (wage − discount), as legacy.
- dates: the end date covers its whole day; a bad date is a 400.
- SMS-01: confirming or rejecting a financial document texts the customer,
as legacy CashController::toggleConfiremCash.
- SMS-02: bulk SMS substitutes %name per recipient and is actually sent
through the configured gateway (D26 relay), no longer only logged.
- Docs: 01-ADMIN-MATRIX and D16-BC-GAP-SUMMARY.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
80 lines
3.8 KiB
TypeScript
80 lines
3.8 KiB
TypeScript
import { Module } from '@nestjs/common';
|
|
import { PrismaModule } from './prisma/prisma.module';
|
|
import { CatalogModule } from './modules/catalog/catalog.module';
|
|
import { CustomersModule } from './modules/customers/customers.module';
|
|
import { CustomerAuthModule } from './modules/customer-auth/customer-auth.module';
|
|
import { SalesExpertAppModule } from './modules/sales-expert-app/sales-expert-app.module';
|
|
import { CustomerProfileModule } from './modules/customer-profile/customer-profile.module';
|
|
import { CustomerFavoritesModule } from './modules/customer-favorites/customer-favorites.module';
|
|
import { CustomerReportModule } from './modules/customer-report/customer-report.module';
|
|
import { SmsModule } from './modules/sms/sms.module';
|
|
import { OrdersModule } from './modules/orders/orders.module';
|
|
import { AccountingModule } from './modules/accounting/accounting.module';
|
|
import { AccountingSyncModule } from './modules/accounting-sync/accounting-sync.module';
|
|
import { PricingModule } from './modules/pricing/pricing.module';
|
|
import { AuthModule } from './modules/auth/auth.module';
|
|
import { IamModule } from './modules/iam/iam.module';
|
|
import { AdminSessionModule } from './modules/sessions/admin-session.module';
|
|
import { AdminTableModule } from './modules/admin-table/admin-table.module';
|
|
import { AdminOrdersModule } from './modules/admin-orders/admin-orders.module';
|
|
import { AdminCitiesModule } from './modules/admin-cities/admin-cities.module';
|
|
import { AdminPreOrdersModule } from './modules/admin-preorders/admin-preorders.module';
|
|
import { AdminWorkshopsModule } from './modules/admin-workshops/admin-workshops.module';
|
|
import { AdminCustomersModule } from './modules/admin-customers/admin-customers.module';
|
|
import { AdminCommentsModule } from './modules/admin-comments/admin-comments.module';
|
|
import { AdminProductsModule } from './modules/admin-products/admin-products.module';
|
|
import { AdminCategoriesModule } from './modules/admin-categories/admin-categories.module';
|
|
import { AdminDocumentsModule } from './modules/admin-documents/admin-documents.module';
|
|
import { AdminPromotionsModule } from './modules/admin-promotions/admin-promotions.module';
|
|
import { AdminUsersModule } from './modules/admin-users/admin-users.module';
|
|
import { AdminBranchesModule } from './modules/admin-branches/admin-branches.module';
|
|
import { AdminInvoicesModule } from './modules/admin-invoices/admin-invoices.module';
|
|
import { AdminMiscModule } from './modules/admin-misc/admin-misc.module';
|
|
import { AdminUploadsModule } from './modules/admin-uploads/admin-uploads.module';
|
|
import { AdminDashboardModule } from './modules/admin-dashboard/admin-dashboard.module';
|
|
import { AdminReportModule } from './modules/admin-report/admin-report.module';
|
|
import { SalesAgentModule } from './modules/sales-agent/sales-agent.module';
|
|
|
|
@Module({
|
|
imports: [
|
|
// Inert unless IAM_ENABLED=true — see modules/iam/README.md
|
|
IamModule,
|
|
AdminSessionModule,
|
|
PrismaModule,
|
|
AuthModule,
|
|
AdminTableModule,
|
|
AdminOrdersModule,
|
|
AdminCitiesModule,
|
|
AdminPreOrdersModule,
|
|
AdminWorkshopsModule,
|
|
AdminCustomersModule,
|
|
AdminCommentsModule,
|
|
AdminProductsModule,
|
|
AdminCategoriesModule,
|
|
AdminDocumentsModule,
|
|
AdminPromotionsModule,
|
|
AdminUsersModule,
|
|
AdminBranchesModule,
|
|
AdminInvoicesModule,
|
|
AdminMiscModule,
|
|
AdminUploadsModule,
|
|
AdminDashboardModule,
|
|
AdminReportModule,
|
|
CatalogModule,
|
|
CustomersModule,
|
|
SmsModule,
|
|
CustomerAuthModule,
|
|
SalesExpertAppModule,
|
|
CustomerProfileModule,
|
|
CustomerFavoritesModule,
|
|
CustomerReportModule,
|
|
SalesAgentModule,
|
|
OrdersModule,
|
|
AccountingModule,
|
|
// Tahesab / Zarrin integration (D27) — inert until switched on in the admin panel
|
|
AccountingSyncModule,
|
|
PricingModule,
|
|
],
|
|
})
|
|
export class AppModule {}
|