add migration for fill colums for is approved and priview in hesabdariDoc and storeroomTicket
This commit is contained in:
parent
8ff15b1e67
commit
77e0c5a975
35
docs/migrations/README_migration_20250819174429.md
Normal file
35
docs/migrations/README_migration_20250819174429.md
Normal file
|
@ -0,0 +1,35 @@
|
|||
# Migration Version20250819174429
|
||||
|
||||
## توضیحات
|
||||
این migration برای تنظیم مقادیر پیشفرض ستونهای `preview` و `approved` در جداول `hesabdari_doc` و `storeroom_ticket` ایجاد شده است.
|
||||
|
||||
## هدف
|
||||
برای اسناد قبلی که در سیستم ثبت شدهاند و ستونهای `is_preview` و `is_approved` آنها `NULL` هستند، مقادیر پیشفرض زیر تنظیم میشود:
|
||||
- `is_preview = false (0)`
|
||||
- `is_approved = true (1)`
|
||||
|
||||
## جداول تحت تأثیر
|
||||
1. **hesabdari_doc** - اسناد حسابداری
|
||||
2. **storeroom_ticket** - حوالههای انبار
|
||||
|
||||
## تغییرات اعمال شده
|
||||
- **68,818** سند حسابداری بهروزرسانی شد
|
||||
- **2,807** حواله انبار بهروزرسانی شد
|
||||
|
||||
## نحوه اجرا
|
||||
```bash
|
||||
php bin/console doctrine:migrations:execute 'DoctrineMigrations\Version20250819174429' --up
|
||||
```
|
||||
|
||||
## نحوه برگرداندن
|
||||
```bash
|
||||
php bin/console doctrine:migrations:execute 'DoctrineMigrations\Version20250819174429' --down
|
||||
```
|
||||
|
||||
## تاریخ ایجاد
|
||||
19 آگوست 2025 - 17:44:29
|
||||
|
||||
## نکات مهم
|
||||
- این migration فقط روی رکوردهایی که `is_preview` یا `is_approved` آنها `NULL` است اعمال میشود
|
||||
- رکوردهایی که قبلاً مقادیر مشخصی دارند، تغییر نمیکنند
|
||||
- این تغییرات برای حفظ سازگاری با سیستم approval جدید ضروری است
|
55
hesabixCore/migrations/Version20250819174429.php
Normal file
55
hesabixCore/migrations/Version20250819174429.php
Normal file
|
@ -0,0 +1,55 @@
|
|||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace DoctrineMigrations;
|
||||
|
||||
use Doctrine\DBAL\Schema\Schema;
|
||||
use Doctrine\Migrations\AbstractMigration;
|
||||
|
||||
/**
|
||||
* Migration برای تنظیم مقادیر پیشفرض ستونهای preview و approved
|
||||
* برای اسناد قبلی ثبت شده در جداول hesabdariDoc و storeroomTicker
|
||||
*/
|
||||
final class Version20250819174429 extends AbstractMigration
|
||||
{
|
||||
public function getDescription(): string
|
||||
{
|
||||
return 'تنظیم مقادیر پیشفرض برای ستونهای preview و approved در اسناد قبلی';
|
||||
}
|
||||
|
||||
public function up(Schema $schema): void
|
||||
{
|
||||
// تنظیم مقادیر پیشفرض برای اسناد حسابداری قبلی
|
||||
// برای اسناد قبلی: approved = true و preview = false
|
||||
$this->addSql(<<<'SQL'
|
||||
UPDATE hesabdari_doc
|
||||
SET is_preview = 0, is_approved = 1
|
||||
WHERE is_preview IS NULL OR is_approved IS NULL
|
||||
SQL);
|
||||
|
||||
// تنظیم مقادیر پیشفرض برای حوالههای انبار قبلی
|
||||
// برای حوالههای قبلی: approved = true و preview = false
|
||||
$this->addSql(<<<'SQL'
|
||||
UPDATE storeroom_ticket
|
||||
SET is_preview = 0, is_approved = 1
|
||||
WHERE is_preview IS NULL OR is_approved IS NULL
|
||||
SQL);
|
||||
}
|
||||
|
||||
public function down(Schema $schema): void
|
||||
{
|
||||
// برگرداندن تغییرات - تنظیم مقادیر به NULL
|
||||
$this->addSql(<<<'SQL'
|
||||
UPDATE hesabdari_doc
|
||||
SET is_preview = NULL, is_approved = NULL
|
||||
WHERE is_preview = 0 AND is_approved = 1
|
||||
SQL);
|
||||
|
||||
$this->addSql(<<<'SQL'
|
||||
UPDATE storeroom_ticket
|
||||
SET is_preview = NULL, is_approved = NULL
|
||||
WHERE is_preview = 0 AND is_approved = 1
|
||||
SQL);
|
||||
}
|
||||
}
|
Loading…
Reference in a new issue