feat: khởi tạo/huỷ domain Plesk qua job, gửi mail hoá đơn qua queue, đính kèm triển khai
- ProvisionDnsDomainJob/SuspendDnsDomainJob: tạo domain admin lên Plesk, huỷ = suspend (is_created=3) - Khách xem zone DNS được gán ở /dich-vu/domain, quản lý bản ghi A/AAAA/CNAME/TXT/MX/SRV - send-mail hoá đơn đẩy SendInvoiceMailJob, preview + sửa nội dung, ghi mail.order_id - invoice_attachments.type (payment_proof/deployment) - CacheService xoá theo SCAN pattern, Redis không persistent mặc định - Backfill transactions.public_code Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
30898ea46f
commit
94614d9cb3
@@ -2,11 +2,14 @@
|
||||
|
||||
namespace App\Models;
|
||||
|
||||
use App\Services\Cache\CacheServiceInterface;
|
||||
use App\Traits\LogsActivity;
|
||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Database\Eloquent\SoftDeletes;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
use Illuminate\Support\Facades\URL;
|
||||
use Illuminate\Support\Str;
|
||||
use App\Traits\HasUuid;
|
||||
|
||||
class Transaction extends Model
|
||||
@@ -30,6 +33,24 @@ class Transaction extends Model
|
||||
|
||||
protected $appends = ['direction', 'proof_image_urls'];
|
||||
|
||||
protected static function booted(): void
|
||||
{
|
||||
static::creating(function (Transaction $transaction) {
|
||||
$transaction->public_code ??= self::newPublicCode('TXN');
|
||||
});
|
||||
|
||||
$flushListCache = fn () => DB::afterCommit(
|
||||
fn () => app(CacheServiceInterface::class)->clearByModule('transaction')
|
||||
);
|
||||
static::saved($flushListCache);
|
||||
static::deleted($flushListCache);
|
||||
}
|
||||
|
||||
public static function newPublicCode(string $prefix): string
|
||||
{
|
||||
return $prefix . '-' . now()->format('Ymd') . '-' . strtoupper(Str::random(6));
|
||||
}
|
||||
|
||||
public function customer()
|
||||
{
|
||||
return $this->belongsTo(Customer::class, 'customer_id');
|
||||
@@ -53,7 +74,7 @@ class Transaction extends Model
|
||||
'admin_add_total', 'admin_add_credit', 'manual', 'refund' => 'credit',
|
||||
'admin_deduct_credit' => 'debit',
|
||||
'balance' => 'debit',
|
||||
'transfer' => 'neutral',
|
||||
'transfer', 'admin_record' => 'neutral',
|
||||
'invoice' => str_starts_with((string) $this->note, 'Admin xác nhận')
|
||||
? 'neutral'
|
||||
: 'debit',
|
||||
|
||||
Reference in New Issue
Block a user