39 lines
1.7 KiB
Markdown
39 lines
1.7 KiB
Markdown
# چک خروجی و یادآوری سررسید — برنامه پیادهسازی
|
|
|
|
> اجرا در همین نشست؛ کامیت فقط اگر کاربر بخواهد.
|
|
|
|
**Goal:** دفتر چک دریافتی/پرداختی + یادآوری یکبار سه روز قبل از سررسید.
|
|
|
|
**Architecture:** فیلد `direction` و `reminderNotifiedAt` روی `Cheque`. زمانبند `@nestjs/schedule` ساعت ۸ تهران. متن و تشخیص روز در `cheque-reminder.util.ts`.
|
|
|
|
**Tech Stack:** Prisma, NestJS, Vue 3, `@nestjs/schedule`, SMS موجود، اعلان موجود.
|
|
|
|
## Global Constraints
|
|
|
|
- npm workspaces؛ Prisma فقط از `apps/api`
|
|
- متن پیامک با `یادآوری منتکت:` و حداکثر ۱۶۰ نویسه
|
|
- پرداختی به فاکتور وصل نمیشود؛ چک فاکتور همیشه `in`
|
|
- بدون سند حسابداری
|
|
|
|
## Files
|
|
|
|
- `apps/api/prisma/schema.prisma` + migration `20260911120000_cheque_direction_reminder`
|
|
- `packages/shared/src/index.ts`
|
|
- `apps/api/src/finance/cheque-reminder.util.ts`
|
|
- `apps/api/src/finance/__tests__/cheque-reminder.check.ts`
|
|
- `apps/api/src/finance/cheque-reminders.service.ts`
|
|
- `apps/api/src/finance/{cheques.service,dto,finance.controller,finance.module}.ts`
|
|
- `apps/api/src/invoices/invoices.service.ts`
|
|
- `apps/api/src/app.module.ts`
|
|
- `apps/api/package.json` (`@nestjs/schedule`)
|
|
- `apps/web/src/views/ChequesView.vue`
|
|
|
|
## Tasks
|
|
|
|
1. util + unit check (روز تهران، متن پیامک)
|
|
2. schema/migration + shared types
|
|
3. API create/list direction؛ فاکتور `direction: in`
|
|
4. ChequeRemindersService + cron
|
|
5. UI تب و مودال پرداخت
|
|
6. `npm run build -w @mento/shared`، migrate، generate، unit check
|