55 lines
3.4 KiB
Markdown
55 lines
3.4 KiB
Markdown
# چک خروجی و یادآوری سررسید
|
|||
|
|
|
||
|
|
تاریخ: ۱۴۰۵/۶/۲۰
|
||
|
|
وضعیت: تأییدشده برای پیادهسازی
|
||
|
|
|
||
|
|
## هدف
|
||
|
|
|
||
|
|
دفتر چک هم دریافتی و هم پرداختی باشد. سه روز قبل از سررسید، یکبار به افراد توافقشده اطلاع داده شود.
|
||
|
|
|
||
|
|
## صفحه
|
||
|
|
|
||
|
|
مسیر همان `/cheques` است؛ لینک سایدبار عوض نمیشود.
|
||
|
|
|
||
|
|
دو تب: **دریافتی** و **پرداختی**. دو دکمه: **دریافت چک** و **پرداخت چک**. هر کدام مودال جدا با فیلدهای شخص، مبلغ، ارز (اگر بیش از یکی فعال باشد)، شماره، بانک، سررسید، وضعیت، یادداشت. در پرداختی شخص یعنی گیرنده.
|
||
|
|
|
||
|
|
ستونهای جدول مثل الان. وضعیت:
|
||
|
|
|
||
|
|
- دریافتی: در جریان / وصول شد / برگشت
|
||
|
|
- پرداختی: در جریان / پرداخت شد / برگشت
|
||
|
|
|
||
|
|
چک وصل به فاکتور فقط در تب دریافتی دیده میشود. پرداختی به فاکتور وصل نمیشود.
|
||
|
|
|
||
|
|
## داده
|
||
|
|
|
||
|
|
همان مدل `Cheque` با:
|
||
|
|
|
||
|
|
- `direction`: `in` | `out` (چک فاکتور همیشه `in`)
|
||
|
|
- `reminderNotifiedAt`: تا هر چک فقط یکبار یادآوری شود
|
||
|
|
|
||
|
|
`POST /cheques` جهت را میگیرد. `GET /cheques?direction=in|out` فیلتر میکند. `PATCH` وضعیت مثل قبل.
|
||
|
|
|
||
|
|
## یادآوری
|
||
|
|
|
||
|
|
زمانبند روزانه حدود ساعت ۸ به وقت تهران. فقط چکهای `pending` که روز سررسیدشان دقیقاً ۳ روز بعد است (تقویم تهران).
|
||
|
|
|
||
|
|
گیرندگان داخلی: همهٔ کاربران `owner`/`admin` سازمان + ثبتکنندهٔ چک (`ownerId`). اگر یک نفر دو نقش دارد، یکبار.
|
||
|
|
|
||
|
|
کانال:
|
||
|
|
|
||
|
|
- همهٔ گیرندگان داخلی: اعلان داخل برنامه (عنوان «سررسید چک»، لینک `/cheques`) + پیامک اگر موبایل داشته باشند
|
||
|
|
- دریافتی: پیامک به موبایل شخص طرفحساب
|
||
|
|
- پرداختی: به شخص پیامک نمیرود
|
||
|
|
|
||
|
|
بعد از تلاش برای آن چک، `reminderNotifiedAt` ست میشود. خطای یک چک بقیه را متوقف نمیکند. اگر پیامک پیکربندی نباشد یا موبایل خالی باشد، همان کانال رد میشود؛ اعلان داخل برنامه برای کاربران CRM میماند.
|
||
|
|
|
||
|
|
متنها با پیشوند `یادآوری منتکت:` و حداکثر حدود ۱۶۰ نویسه:
|
||
|
|
|
||
|
|
- شخص (فقط دریافتی): `یادآوری منتکت: چک شماره {شماره} به مبلغ {مبلغ} سه روز دیگر ({سررسید شمسی}) سررسید میشود.`
|
||
|
|
- داخلی دریافتی: `یادآوری منتکت: چک دریافتی {شماره} از {نام شخص}، مبلغ {مبلغ}، سررسید {تاریخ} (۳ روز دیگر).`
|
||
|
|
- داخلی پرداختی: `یادآوری منتکت: چک پرداختی {شماره} به {نام شخص}، مبلغ {مبلغ}، سررسید {تاریخ} (۳ روز دیگر).`
|
||
|
|
|
||
|
|
## خارج از این نسخه
|
||
|
|
|
||
|
|
سند حسابداری برای چک خروجی، وصل پرداختی به فاکتور، یادآوری روز سررسید یا برگشت، تنظیم فاصلهٔ روز از داخل تنظیمات.
|