Files
portal-api/database/seeders/EmailTemplates/TemplateVariables.php
T
baodev0andClaude Opus 5.5 46aa138eec feat(admin): IP pool allocation, billing exports, service attachments
- IP pool: sheet import (xlsx/csv) matched by address, bulk allocate/revoke
  with notification email (ip_allocated/ip_revoked), ip_pool_logs history.
- Orders/invoices: Excel export on branded template (BrandedReportWriter),
  shared billing filters, order item service info in list responses.
- Web design quote Excel export; activity log export.
- Service attachments with copy-to-invoice; deployment invoice attachments.
- Customer email attachments stored on disk and attached by path.
- Admin password change endpoint; user.fullname backfill migration;
  orders.user_id backfill from logs.
- Disable deploy workflow until CI/CD is set up.
- Ignore stored customer email and service attachment uploads.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-15 19:58:36 +07:00

145 lines
11 KiB
PHP

<?php
namespace Database\Seeders\EmailTemplates;
final class TemplateVariables
{
/**
* @var array<string, array{0: string, 1: string, 2: string}> key => [label, type, example]
*/
public const DEFINITIONS = [
'app_name' => ['Tên công ty', 'string', 'Thế Giới Số'],
'company_name' => ['Tên công ty', 'string', 'Thế Giới Số'],
'login_url' => ['Link đăng nhập', 'url', 'https://tgs.com.vn/dang-nhap'],
'full_name' => ['Tên khách hàng', 'string', 'Nguyễn Văn A'],
'client_name' => ['Tên khách hàng', 'string', 'Nguyễn Văn A'],
'customer_name' => ['Tên khách hàng', 'string', 'Nguyễn Văn A'],
'customer_email' => ['Email khách hàng', 'string', 'khachhang@example.com'],
'customer_phone' => ['Số điện thoại khách hàng', 'string', '0901 234 567'],
'email' => ['Email đăng nhập', 'string', 'khachhang@example.com'],
'verify_code' => ['Mã xác thực', 'string', '482913'],
'reset_url' => ['Link đặt lại mật khẩu', 'url', 'https://tgs.com.vn/dat-lai-mat-khau?t=abc'],
'expire_minutes' => ['Số phút hiệu lực', 'string', '60'],
'otp_purpose' => ['Mục đích mã xác thực', 'string', 'đăng nhập tài khoản'],
'password' => ['Mật khẩu mới', 'string', 'Xk9#pL2m'],
'product_name' => ['Tên dịch vụ', 'string', 'Cloud VPS Pro'],
'product_billing' => ['Chu kỳ thanh toán', 'string', '12 tháng'],
'product_price' => ['Giá dịch vụ', 'string', '1.200.000'],
'product_billing_row' => ['[Tự động] Dòng chu kỳ thanh toán', 'html', ''],
'product_price_row' => ['[Tự động] Dòng giá dịch vụ', 'html', ''],
'os_name_row' => ['[Tự động] Dòng hệ điều hành', 'html', ''],
'service_host' => ['Địa chỉ IP / Host', 'string', '103.0.0.10'],
'service_username' => ['Tài khoản đăng nhập', 'string', 'root'],
'service_password' => ['Mật khẩu dịch vụ', 'string', 'Xk9#pL2m'],
'service_port_row' => ['[Tự động] Dòng cổng kết nối', 'html', ''],
'service_due_exp_row' => ['[Tự động] Dòng hạn sử dụng', 'html', ''],
'service_due_exp' => ['Ngày hết hạn', 'string', '31/12/2026'],
'service_remaining' => ['Số ngày còn lại', 'string', '7'],
'ftp_account' => ['Tài khoản FTP', 'string', 'ftp_example'],
'ftp_password' => ['Mật khẩu FTP', 'string', 'Ftp#2026'],
'vm_name' => ['Tên VPS', 'string', 'VPS-Pro-01'],
'new_password' => ['Mật khẩu mới', 'string', 'Xk9#pL2m'],
'vmware_id' => ['VM ID', 'string', 'vm-1024'],
'suspended_at' => ['Thời gian tạm ngưng', 'string', '08/10/2026 09:00'],
'server_name_suffix' => ['[Tự động] Tên máy chủ kèm theo', 'html', ''],
'expires_at' => ['Ngày hết hạn', 'string', '31/12/2026'],
'price_row' => ['[Tự động] Dòng số tiền gia hạn', 'html', ''],
'invoice_url' => ['Link đơn hàng', 'url', 'https://tgs.com.vn/don-hang'],
'ip' => ['Địa chỉ IP', 'string', '103.0.0.10'],
'ip_count' => ['Số địa chỉ IP', 'string', '2'],
'ip_rows' => ['[Tự động] Danh sách địa chỉ IP', 'html', ''],
'ip_table' => ['[Tự động] Bảng IP cấp phát (STT, IP, dịch vụ, ngày)', 'html', ''],
'issued_on' => ['Ngày thông báo (ngày … tháng … năm …)', 'string', 'ngày 15 tháng 10 năm 2026'],
'allocated_at' => ['Ngày cấp phát', 'string', '15/10/2026'],
'revoked_at' => ['Ngày thu hồi', 'string', '31/10/2026'],
'note_block' => ['[Tự động] Ghi chú', 'html', ''],
'service_url' => ['Link dịch vụ', 'url', 'https://tgs.com.vn/dich-vu'],
'new_password_row' => ['[Tự động] Dòng mật khẩu mới', 'html', ''],
'snapshot_name' => ['Tên snapshot', 'string', 'backup-2026-10-08'],
'action_at' => ['Thời gian thực hiện', 'string', '08/10/2026 09:00:00'],
'action_icon' => ['Biểu tượng thao tác', 'string', '📸'],
'action_title' => ['Tiêu đề thao tác', 'string', 'Tạo snapshot thành công'],
'action_desc' => ['Mô tả thao tác', 'string', 'Snapshot máy chủ ảo đã được tạo'],
'action_status' => ['Trạng thái thao tác', 'string', 'Thành công'],
'domain_name' => ['Tên miền', 'string', 'example.vn'],
'registered_at' => ['Ngày đăng ký', 'string', '08/10/2026'],
'name_server_1' => ['Name server 1', 'string', 'ns9.tgs.com.vn'],
'name_server_2' => ['Name server 2', 'string', 'ns10.tgs.com.vn'],
'kyc_block' => ['[Tự động] Khối xác thực eKYC', 'html', ''],
'hosting_plan' => ['Gói hosting', 'string', 'Premium Hosting 1'],
'server_host_row' => ['[Tự động] Dòng máy chủ / FTP host', 'html', ''],
'ftp_username_row' => ['[Tự động] Dòng tài khoản FTP', 'html', ''],
'ftp_password_row' => ['[Tự động] Dòng mật khẩu FTP', 'html', ''],
'ftp_password_notice' => ['[Tự động] Lưu ý mật khẩu FTP', 'html', ''],
'plesk_block' => ['[Tự động] Khối tài khoản Plesk', 'html', ''],
'server_name' => ['Tên máy chủ', 'string', 'plesk-01'],
'server_ip' => ['IP máy chủ', 'string', '103.0.0.20'],
'plesk_client_id' => ['Plesk Client ID', 'string', '15'],
'plesk_subscription_id' => ['Plesk Subscription ID', 'string', '42'],
'ftp_username' => ['Tài khoản FTP', 'string', 'ftp_example'],
'plesk_panel_url' => ['Địa chỉ Plesk Panel', 'string', 'https://103.0.0.20:8443'],
'plesk_login' => ['Tài khoản Plesk', 'string', 'example_vn'],
'plesk_password_row' => ['[Tự động] Dòng mật khẩu Plesk', 'html', ''],
'created_at' => ['Thời gian tạo', 'string', '08/10/2026 09:00:00'],
'title' => ['Tiêu đề thông báo', 'string', 'Thông báo hóa đơn'],
'body_message' => ['Lời nhắn', 'string', 'Vui lòng xem thông tin hóa đơn của bạn.'],
'invoice_number' => ['Số hoá đơn', 'string', 'INV-2026-0001'],
'created_date' => ['Ngày lập', 'string', '01/10/2026'],
'due_date' => ['Hạn thanh toán', 'string', '15/10/2026'],
'total' => ['Tổng tiền', 'string', '1.200.000'],
'status_label' => ['[Tự động] Trạng thái hoá đơn', 'html', ''],
'outstanding_row' => ['[Tự động] Dòng đã trả / còn thiếu', 'html', ''],
'intro_note' => ['Ghi chú đính kèm', 'string', 'File PDF hóa đơn đã được đính kèm trong email này.'],
'pay_button' => ['[Tự động] Nút thanh toán', 'html', ''],
'attachments_block' => ['[Tự động] Danh sách file đính kèm', 'html', ''],
'note_block' => ['[Tự động] Ghi chú hoá đơn', 'html', ''],
'outstanding' => ['Số tiền còn phải trả', 'string', '1.200.000'],
'status_line' => ['Tình trạng hạn thanh toán', 'string', 'Hoá đơn sẽ đến hạn sau 3 ngày.'],
'paid_row' => ['[Tự động] Dòng đã thanh toán', 'html', ''],
'transaction_code' => ['Mã giao dịch', 'string', 'NAP20261008001'],
'amount_formatted' => ['Số tiền', 'string', '500,000'],
'credit_formatted' => ['Tiền khuyến mãi', 'string', '0'],
'current_total_formatted' => ['Số dư hiện tại', 'string', '1,500,000'],
'current_credit_formatted' => ['Số dư khuyến mãi hiện tại', 'string', '0'],
'deposit_date' => ['Thời gian nạp', 'string', '08/10/2026 09:00:00'],
'status_color' => ['Màu chữ trạng thái', 'string', '#16a34a'],
'status_bg' => ['Màu nền trạng thái', 'string', '#dcfce7'],
'status_message' => ['Nội dung trạng thái', 'string', 'Yêu cầu nạp tiền của bạn đã được duyệt.'],
'processed_date_row' => ['[Tự động] Dòng thời gian xử lý', 'html', ''],
'portal_url' => ['Link trang nạp tiền', 'url', 'https://tgs.com.vn/nap-tien'],
'order_num' => ['Mã đơn hàng', 'string', 'DH20261008001'],
'invoice_num' => ['Mã hoá đơn', 'string', 'INV-2026-0001'],
'order_total' => ['Tổng tiền đơn hàng', 'string', '1.200.000'],
'order_url' => ['Link đơn hàng', 'url', 'https://tgs.com.vn/don-hang'],
'reason' => ['Lý do', 'string', 'Tên miền đã có người đăng ký'],
'admin_url' => ['Link quản trị', 'url', 'https://admin.tgs.com.vn'],
'client_ip_row' => ['[Tự động] Dòng IP khách', 'html', ''],
'product_type' => ['Loại sản phẩm', 'string', 'Cloud VPS'],
'billing_cycle' => ['Chu kỳ thanh toán', 'string', '12 tháng'],
'total_formatted' => ['Tổng tiền', 'string', '1.200.000 VNĐ'],
'vm_block' => ['[Tự động] Khối thông tin VPS', 'html', ''],
'ticket_num' => ['Mã ticket', 'string', 'TK1024'],
'subject' => ['Tiêu đề ticket', 'string', 'Không truy cập được VPS'],
'room_row' => ['[Tự động] Dòng phòng ban', 'html', ''],
'ticket_url' => ['Link ticket', 'url', 'https://tgs.com.vn/tickets/TK1024'],
'subject_text' => ['Tiêu đề ticket', 'string', 'Không truy cập được VPS'],
'room' => ['Phòng ban', 'string', 'Kỹ thuật'],
'description' => ['Nội dung ticket', 'string', 'VPS không SSH được từ sáng nay.'],
'customer_phone_row' => ['[Tự động] Dòng số điện thoại', 'html', ''],
'proof_row' => ['[Tự động] Dòng chứng từ', 'html', ''],
'cpu' => ['CPU', 'string', '2 vCPU'],
'ram' => ['RAM', 'string', '4 GB'],
'ssd' => ['SSD', 'string', '60 GB'],
'os' => ['Hệ điều hành', 'string', 'Ubuntu 24.04'],
'other_row' => ['[Tự động] Dòng yêu cầu khác', 'html', ''],
];
}