import { useState, useEffect } from 'react'; import { Settings as SettingsIcon, Save, Truck, ShieldAlert, Percent, AlertCircle } from 'lucide-react'; import api from '../services/api'; import Spinner from '../components/ui/Spinner'; export default function Settings() { const [settings, setSettings] = useState({ SHIPPING_FEE: '', MIN_ORDER_AMOUNT: '', B2B_DISCOUNT_PERCENT: '', MAINTENANCE_MODE: 'false', CHARITY_ROUND_STEP: '10000', }); const [isLoading, setIsLoading] = useState(true); const [isSaving, setIsSaving] = useState(false); const fetchSettings = async () => { try { setIsLoading(true); const response = await api.get('/admin/settings'); if (response.data?.success) { setSettings({ SHIPPING_FEE: response.data.data.SHIPPING_FEE || '0', MIN_ORDER_AMOUNT: response.data.data.MIN_ORDER_AMOUNT || '0', B2B_DISCOUNT_PERCENT: response.data.data.B2B_DISCOUNT_PERCENT || '0', MAINTENANCE_MODE: response.data.data.MAINTENANCE_MODE || 'false', CHARITY_ROUND_STEP: response.data.data.CHARITY_ROUND_STEP || '10000', }); } } catch (err) { console.error('Failed to fetch settings', err); } finally { setIsLoading(false); } }; useEffect(() => { fetchSettings(); }, []); const handleSave = async (e: React.FormEvent) => { e.preventDefault(); try { setIsSaving(true); await api.put('/admin/settings', settings); alert('تنظیمات با موفقیت بروزرسانی شد.'); } catch (err) { console.error('Failed to update settings', err); } finally { setIsSaving(false); } }; return (
مدیریت پارامترهای اصلی و سیستمی کانینا