added notif 2
This commit is contained in:
@@ -4,7 +4,7 @@ use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
|
||||
/**
|
||||
* سوییچ اعلان / هشدار قیمت برای اپ کاربر — پیشفرض false، can_edit=0.
|
||||
* هشدار قیمت — پیشفرض true، can_edit=0.
|
||||
* value ردیف موجود را تغییر نمیدهد.
|
||||
*/
|
||||
return new class extends Migration
|
||||
@@ -13,8 +13,8 @@ return new class extends Migration
|
||||
{
|
||||
$key = 'has_page_price_trigger';
|
||||
$meta = [
|
||||
'title_fa' => 'اعلان (هشدار قیمت)',
|
||||
'description' => 'روشن: منوی هشدار قیمت (اعلان) در اپ کاربر نمایش داده میشود. خاموش: منو و صفحه مخفی است. فقط از دیپلوی قابل تغییر است.',
|
||||
'title_fa' => 'هشدار قیمت',
|
||||
'description' => 'روشن: منوی هشدار قیمت در اپ کاربر نمایش داده میشود. خاموش: منو و صفحه مخفی است. فقط از دیپلوی قابل تغییر است.',
|
||||
'type' => 'switch',
|
||||
];
|
||||
|
||||
@@ -22,7 +22,7 @@ return new class extends Migration
|
||||
if (! $exists) {
|
||||
DB::table('settings')->insert([
|
||||
'key' => $key,
|
||||
'value' => 'false',
|
||||
'value' => 'true',
|
||||
'title_fa' => $meta['title_fa'],
|
||||
'can_edit' => 0,
|
||||
'is_active' => 1,
|
||||
@@ -44,6 +44,6 @@ return new class extends Migration
|
||||
|
||||
public function down(): void
|
||||
{
|
||||
// کلید را حذف نمیکنیم — ممکن است مقدار ادمین داشته باشد.
|
||||
// کلید را حذف نمیکنیم
|
||||
}
|
||||
};
|
||||
|
||||
@@ -0,0 +1,73 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
/**
|
||||
* اعلان داخل اپ (از ادمین به مشتری) + سوییچ has_page_notification.
|
||||
*/
|
||||
return new class extends Migration
|
||||
{
|
||||
public function up(): void
|
||||
{
|
||||
if (! Schema::hasTable('app_notifications')) {
|
||||
Schema::create('app_notifications', function (Blueprint $table) {
|
||||
$table->id();
|
||||
$table->string('title', 191);
|
||||
$table->text('body');
|
||||
$table->string('severity', 16)->default('info'); // info|success|warning|danger
|
||||
$table->boolean('is_active')->default(true);
|
||||
$table->unsignedBigInteger('created_by')->nullable()->index();
|
||||
$table->timestamps();
|
||||
$table->softDeletes();
|
||||
});
|
||||
}
|
||||
|
||||
if (! Schema::hasTable('app_notification_reads')) {
|
||||
Schema::create('app_notification_reads', function (Blueprint $table) {
|
||||
$table->id();
|
||||
$table->unsignedBigInteger('notification_id')->index();
|
||||
$table->unsignedBigInteger('customer_id')->index();
|
||||
$table->timestamp('read_at')->nullable();
|
||||
$table->timestamps();
|
||||
$table->unique(['notification_id', 'customer_id'], 'app_notif_reads_unique');
|
||||
});
|
||||
}
|
||||
|
||||
$key = 'has_page_notification';
|
||||
$meta = [
|
||||
'title_fa' => 'اعلان داخل اپ',
|
||||
'description' => 'روشن: زنگوله اعلان در اپ کاربر و منوی ثبت اعلان در ادمین فعال است. خاموش: مخفی است. فقط از دیپلوی قابل تغییر است.',
|
||||
'type' => 'switch',
|
||||
];
|
||||
|
||||
$exists = DB::table('settings')->where('key', $key)->exists();
|
||||
if (! $exists) {
|
||||
DB::table('settings')->insert([
|
||||
'key' => $key,
|
||||
'value' => 'false',
|
||||
'title_fa' => $meta['title_fa'],
|
||||
'can_edit' => 0,
|
||||
'is_active' => 1,
|
||||
'description' => $meta['description'],
|
||||
'type' => $meta['type'],
|
||||
]);
|
||||
} else {
|
||||
DB::table('settings')->where('key', $key)->update([
|
||||
'title_fa' => $meta['title_fa'],
|
||||
'description' => $meta['description'],
|
||||
'type' => $meta['type'],
|
||||
'can_edit' => 0,
|
||||
'is_active' => 1,
|
||||
]);
|
||||
}
|
||||
}
|
||||
|
||||
public function down(): void
|
||||
{
|
||||
Schema::dropIfExists('app_notification_reads');
|
||||
Schema::dropIfExists('app_notifications');
|
||||
}
|
||||
};
|
||||
@@ -360,11 +360,17 @@ SELECT 'enable_conditional_order', 'false', 'سفارش شرطی', 0, 1,
|
||||
WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'enable_conditional_order' LIMIT 1);
|
||||
|
||||
INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`)
|
||||
SELECT 'has_page_price_trigger', 'false', 'اعلان (هشدار قیمت)', 0, 1,
|
||||
'روشن: منوی هشدار قیمت (اعلان) در اپ کاربر نمایش داده میشود. خاموش: منو و صفحه مخفی است. فقط از دیپلوی قابل تغییر است.',
|
||||
SELECT 'has_page_price_trigger', 'true', 'هشدار قیمت', 0, 1,
|
||||
'روشن: منوی هشدار قیمت در اپ کاربر نمایش داده میشود. خاموش: منو و صفحه مخفی است. فقط از دیپلوی قابل تغییر است.',
|
||||
'switch'
|
||||
WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'has_page_price_trigger' LIMIT 1);
|
||||
|
||||
INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`)
|
||||
SELECT 'has_page_notification', 'false', 'اعلان داخل اپ', 0, 1,
|
||||
'روشن: زنگوله اعلان در اپ کاربر و منوی ثبت اعلان در ادمین فعال است. خاموش: مخفی است. فقط از دیپلوی قابل تغییر است.',
|
||||
'switch'
|
||||
WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'has_page_notification' LIMIT 1);
|
||||
|
||||
INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`)
|
||||
SELECT 'jibit_enabled', 'true', 'احراز هویت جیبیت', 0, 1,
|
||||
'روشن: سرویس احراز هویت جیبیت (تطبیق کد ملی/موبایل و کارت بانکی) فعال است. خاموش: هیچ فراخوانی به جیبیت انجام نمیشود و احراز هویت خودکار کار نمیکند. فقط از صفحه دیپلوی قابل تغییر است.',
|
||||
@@ -810,7 +816,7 @@ UPDATE `settings` SET `title_fa` = 'متن درباره ما' WHERE `key` = 'tex
|
||||
UPDATE `settings` SET `title_fa` = 'صفحه کسب درآمد' WHERE `key` = 'has_page_earn_money' AND (`title_fa` IS NULL OR TRIM(`title_fa`) = '');
|
||||
UPDATE `settings` SET `title_fa` = 'صفحه صندوق' WHERE `key` = 'has_page_fund' AND (`title_fa` IS NULL OR TRIM(`title_fa`) = '');
|
||||
UPDATE `settings` SET `title_fa` = 'صفحه مجوزها' WHERE `key` = 'has_page_permission' AND (`title_fa` IS NULL OR TRIM(`title_fa`) = '');
|
||||
UPDATE `settings` SET `title_fa` = 'اعلان (هشدار قیمت)' WHERE `key` = 'has_page_price_trigger' AND (`title_fa` IS NULL OR TRIM(`title_fa`) = '');
|
||||
UPDATE `settings` SET `title_fa` = 'هشدار قیمت' WHERE `key` = 'has_page_price_trigger' AND (`title_fa` IS NULL OR TRIM(`title_fa`) = '');
|
||||
UPDATE `settings` SET `title_fa` = 'صفحه طلای فیزیکی' WHERE `key` = 'has_page_physical_gold' AND (`title_fa` IS NULL OR TRIM(`title_fa`) = '');
|
||||
UPDATE `settings` SET `title_fa` = 'رنگ اصلی' WHERE `key` = 'color_primary' AND (`title_fa` IS NULL OR TRIM(`title_fa`) = '');
|
||||
UPDATE `settings` SET `title_fa` = 'رنگ ثانویه' WHERE `key` = 'color_secondary' AND (`title_fa` IS NULL OR TRIM(`title_fa`) = '');
|
||||
@@ -947,7 +953,7 @@ UPDATE `settings` SET `type` = 'switch' WHERE `key` IN (
|
||||
'fee_deduct_from_gold',
|
||||
'require_zero_main_gold_before_other_buy',
|
||||
'profit_gold_api_enabled', 'payping_round_toman', 'payping_strict_failed_withdraw',
|
||||
'has_page_earn_money', 'has_page_price_trigger', 'charge_notif', 'group_sms', 'sms_panel', 'customer_direct_sms',
|
||||
'has_page_earn_money', 'has_page_price_trigger', 'has_page_notification', 'charge_notif', 'group_sms', 'sms_panel', 'customer_direct_sms',
|
||||
'enable_conditional_order',
|
||||
'sms_notif_order_admin', 'sms_notif_order_customer',
|
||||
'sms_notif_withdraw_admin', 'sms_notif_withdraw_otp', 'sms_notif_login_otp',
|
||||
@@ -1324,7 +1330,9 @@ UPDATE `settings` SET `description` = 'مبلغ یا مقدار پاداش مع
|
||||
UPDATE `settings` SET `description` = 'روشن: تطبیق شماره کارت بانکی کاربر با سرویس احراز هویت جیبیت هنگام ثبت/ویرایش کارت.' WHERE `key` = 'jibit_verification';
|
||||
UPDATE `settings` SET `description` = 'روشن: تطبیق کد ملی و موبایل در فرآیند ثبتنام از طریق سرویس جیبیت.' WHERE `key` = 'register_jibit_verify';
|
||||
UPDATE `settings` SET `description` = 'روشن: منوی «کسب درآمد / دعوت دوستان» در اپ کاربر نمایش داده میشود.' WHERE `key` = 'has_page_earn_money';
|
||||
UPDATE `settings` SET `description` = 'روشن: منوی هشدار قیمت (اعلان) در اپ کاربر نمایش داده میشود. خاموش: منو و صفحه مخفی است. فقط از دیپلوی قابل تغییر است.' WHERE `key` = 'has_page_price_trigger';
|
||||
UPDATE `settings` SET `description` = 'روشن: منوی هشدار قیمت در اپ کاربر نمایش داده میشود. خاموش: منو و صفحه مخفی است. فقط از دیپلوی قابل تغییر است.' WHERE `key` = 'has_page_price_trigger';
|
||||
UPDATE `settings` SET `description` = 'روشن: زنگوله اعلان در اپ کاربر و منوی ثبت اعلان در ادمین فعال است. خاموش: مخفی است. فقط از دیپلوی قابل تغییر است.' WHERE `key` = 'has_page_notification';
|
||||
UPDATE `settings` SET `title_fa` = 'اعلان داخل اپ' WHERE `key` = 'has_page_notification';
|
||||
|
||||
UPDATE `settings` SET `description` = 'شماره موبایل حساب API سرویس همکار قیمت. برای دریافت توکن و لیست محصولات.' WHERE `key` = 'montzar_mobile';
|
||||
UPDATE `settings` SET `description` = 'رمز عبور حساب API سرویس همکار قیمت. محرمانه نگه دارید.' WHERE `key` = 'montzar_password';
|
||||
@@ -1519,7 +1527,7 @@ UPDATE `settings` SET `title_fa` = 'صفحه کسب درآمد' WHERE `key` = 'h
|
||||
UPDATE `settings` SET `title_fa` = 'صفحه صندوق' WHERE `key` = 'has_page_fund';
|
||||
UPDATE `settings` SET `title_fa` = 'صفحه مجوزها' WHERE `key` = 'has_page_permission';
|
||||
UPDATE `settings` SET `title_fa` = 'صفحه طلای فیزیکی' WHERE `key` = 'has_page_physical_gold';
|
||||
UPDATE `settings` SET `title_fa` = 'اعلان (هشدار قیمت)' WHERE `key` = 'has_page_price_trigger';
|
||||
UPDATE `settings` SET `title_fa` = 'هشدار قیمت' WHERE `key` = 'has_page_price_trigger';
|
||||
UPDATE `settings` SET `title_fa` = 'متن دعوتنامه اشتراکگذاری' WHERE `key` = 'invite_link_text';
|
||||
UPDATE `settings` SET `title_fa` = 'حالت فروشگاهی' WHERE `key` = 'is_store';
|
||||
UPDATE `settings` SET `title_fa` = 'تأیید کارت بانکی با جیبیت' WHERE `key` = 'jibit_verification';
|
||||
@@ -1632,6 +1640,7 @@ UPDATE `settings` SET `can_edit` = 0 WHERE `key` IN (
|
||||
'customer_direct_sms',
|
||||
'enable_conditional_order',
|
||||
'has_page_price_trigger',
|
||||
'has_page_notification',
|
||||
'jibit_enabled',
|
||||
'has_page_earn_money',
|
||||
'is_store',
|
||||
|
||||
@@ -315,11 +315,17 @@ SELECT 'enable_conditional_order', 'false', 'سفارش شرطی', 0, 1,
|
||||
WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'enable_conditional_order' LIMIT 1);
|
||||
|
||||
INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`)
|
||||
SELECT 'has_page_price_trigger', 'false', 'اعلان (هشدار قیمت)', 0, 1,
|
||||
'روشن: منوی هشدار قیمت (اعلان) در اپ کاربر نمایش داده میشود. خاموش: منو و صفحه مخفی است. فقط از دیپلوی قابل تغییر است.',
|
||||
SELECT 'has_page_price_trigger', 'true', 'هشدار قیمت', 0, 1,
|
||||
'روشن: منوی هشدار قیمت در اپ کاربر نمایش داده میشود. خاموش: منو و صفحه مخفی است. فقط از دیپلوی قابل تغییر است.',
|
||||
'switch'
|
||||
WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'has_page_price_trigger' LIMIT 1);
|
||||
|
||||
INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`)
|
||||
SELECT 'has_page_notification', 'false', 'اعلان داخل اپ', 0, 1,
|
||||
'روشن: زنگوله اعلان در اپ کاربر و منوی ثبت اعلان در ادمین فعال است. خاموش: مخفی است. فقط از دیپلوی قابل تغییر است.',
|
||||
'switch'
|
||||
WHERE NOT EXISTS (SELECT 1 FROM `settings` WHERE `key` = 'has_page_notification' LIMIT 1);
|
||||
|
||||
INSERT INTO `settings` (`key`, `value`, `title_fa`, `can_edit`, `is_active`, `description`, `type`)
|
||||
SELECT 'jibit_enabled', 'true', 'احراز هویت جیبیت', 0, 1,
|
||||
'روشن: سرویس احراز هویت جیبیت (تطبیق کد ملی/موبایل و کارت بانکی) فعال است. خاموش: هیچ فراخوانی به جیبیت انجام نمیشود و احراز هویت خودکار کار نمیکند. فقط از صفحه دیپلوی قابل تغییر است.',
|
||||
@@ -683,7 +689,7 @@ UPDATE `settings` SET `title_fa` = 'متن درباره ما' WHERE `key` = 'tex
|
||||
UPDATE `settings` SET `title_fa` = 'صفحه کسب درآمد' WHERE `key` = 'has_page_earn_money' AND (`title_fa` IS NULL OR TRIM(`title_fa`) = '');
|
||||
UPDATE `settings` SET `title_fa` = 'صفحه صندوق' WHERE `key` = 'has_page_fund' AND (`title_fa` IS NULL OR TRIM(`title_fa`) = '');
|
||||
UPDATE `settings` SET `title_fa` = 'صفحه مجوزها' WHERE `key` = 'has_page_permission' AND (`title_fa` IS NULL OR TRIM(`title_fa`) = '');
|
||||
UPDATE `settings` SET `title_fa` = 'اعلان (هشدار قیمت)' WHERE `key` = 'has_page_price_trigger' AND (`title_fa` IS NULL OR TRIM(`title_fa`) = '');
|
||||
UPDATE `settings` SET `title_fa` = 'هشدار قیمت' WHERE `key` = 'has_page_price_trigger' AND (`title_fa` IS NULL OR TRIM(`title_fa`) = '');
|
||||
UPDATE `settings` SET `title_fa` = 'صفحه طلای فیزیکی' WHERE `key` = 'has_page_physical_gold' AND (`title_fa` IS NULL OR TRIM(`title_fa`) = '');
|
||||
UPDATE `settings` SET `title_fa` = 'رنگ اصلی' WHERE `key` = 'color_primary' AND (`title_fa` IS NULL OR TRIM(`title_fa`) = '');
|
||||
UPDATE `settings` SET `title_fa` = 'رنگ ثانویه' WHERE `key` = 'color_secondary' AND (`title_fa` IS NULL OR TRIM(`title_fa`) = '');
|
||||
@@ -817,7 +823,7 @@ UPDATE `settings` SET `type` = 'switch' WHERE `key` IN (
|
||||
'close_price', 'show_last_price',
|
||||
'fee_deduct_from_gold',
|
||||
'send_to_tahesab', 'profit_gold_api_enabled', 'payping_round_toman', 'payping_strict_failed_withdraw',
|
||||
'has_page_earn_money', 'has_page_price_trigger', 'charge_notif', 'group_sms', 'sms_panel', 'customer_direct_sms',
|
||||
'has_page_earn_money', 'has_page_price_trigger', 'has_page_notification', 'charge_notif', 'group_sms', 'sms_panel', 'customer_direct_sms',
|
||||
'enable_conditional_order',
|
||||
'sms_notif_order_admin', 'sms_notif_order_customer',
|
||||
'sms_notif_withdraw_admin', 'sms_notif_withdraw_otp', 'sms_notif_login_otp',
|
||||
@@ -1210,7 +1216,9 @@ UPDATE `settings` SET `description` = 'مبلغ یا مقدار پاداش مع
|
||||
UPDATE `settings` SET `description` = 'روشن: تطبیق شماره کارت بانکی کاربر با سرویس احراز هویت جیبیت هنگام ثبت/ویرایش کارت.' WHERE `key` = 'jibit_verification';
|
||||
UPDATE `settings` SET `description` = 'روشن: تطبیق کد ملی و موبایل در فرآیند ثبتنام از طریق سرویس جیبیت.' WHERE `key` = 'register_jibit_verify';
|
||||
UPDATE `settings` SET `description` = 'روشن: منوی «کسب درآمد / دعوت دوستان» در اپ کاربر نمایش داده میشود.' WHERE `key` = 'has_page_earn_money';
|
||||
UPDATE `settings` SET `description` = 'روشن: منوی هشدار قیمت (اعلان) در اپ کاربر نمایش داده میشود. خاموش: منو و صفحه مخفی است. فقط از دیپلوی قابل تغییر است.' WHERE `key` = 'has_page_price_trigger';
|
||||
UPDATE `settings` SET `description` = 'روشن: منوی هشدار قیمت در اپ کاربر نمایش داده میشود. خاموش: منو و صفحه مخفی است. فقط از دیپلوی قابل تغییر است.' WHERE `key` = 'has_page_price_trigger';
|
||||
UPDATE `settings` SET `description` = 'روشن: زنگوله اعلان در اپ کاربر و منوی ثبت اعلان در ادمین فعال است. خاموش: مخفی است. فقط از دیپلوی قابل تغییر است.' WHERE `key` = 'has_page_notification';
|
||||
UPDATE `settings` SET `title_fa` = 'اعلان داخل اپ' WHERE `key` = 'has_page_notification';
|
||||
|
||||
UPDATE `settings` SET `description` = 'شماره موبایل حساب API سرویس همکار قیمت. برای دریافت توکن و لیست محصولات.' WHERE `key` = 'montzar_mobile';
|
||||
UPDATE `settings` SET `description` = 'رمز عبور حساب API سرویس همکار قیمت. محرمانه نگه دارید.' WHERE `key` = 'montzar_password';
|
||||
@@ -1340,6 +1348,7 @@ UPDATE `settings` SET `can_edit` = 0 WHERE `key` IN (
|
||||
'customer_direct_sms',
|
||||
'enable_conditional_order',
|
||||
'has_page_price_trigger',
|
||||
'has_page_notification',
|
||||
'jibit_enabled',
|
||||
'has_page_earn_money',
|
||||
'is_store',
|
||||
|
||||
Reference in New Issue
Block a user