Add configurable CC cost for banner vehicle PDF/description view

- Add cc_per_banner_view setting to system_settings (default 0.1 CC)
- Update car detail page to use dynamic CC value from settings
- Add CC per Banner View field in admin settings page
- Replace hardcoded 0.1 CC with configurable value

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
AutonetSellCar Deploy
2026-01-01 09:41:18 +09:00
parent 0d807eccc6
commit 7f45de7a89
6 changed files with 40 additions and 9 deletions

View File

@@ -11,6 +11,7 @@ interface SystemSettings {
cc_per_view: number;
cc_signup_bonus: number;
cars_per_cc: number;
cc_per_banner_view: number;
cache_ttl_hours: number;
container_logistics_usd: number;
shoring_cost_usd: number;
@@ -56,6 +57,7 @@ export default function SettingsPage() {
cc_per_view: 1,
cc_signup_bonus: 3,
cars_per_cc: 3,
cc_per_banner_view: 0.1,
cache_ttl_hours: 2,
container_logistics_usd: 3600,
shoring_cost_usd: 300,
@@ -85,6 +87,7 @@ export default function SettingsPage() {
cc_per_view: data.cc_per_view,
cc_signup_bonus: data.cc_signup_bonus,
cars_per_cc: data.cars_per_cc || 3,
cc_per_banner_view: data.cc_per_banner_view ?? 0.1,
cache_ttl_hours: data.cache_ttl_hours,
container_logistics_usd: data.container_logistics_usd || 3600,
shoring_cost_usd: data.shoring_cost_usd || 300,
@@ -372,6 +375,22 @@ export default function SettingsPage() {
/>
<p className="mt-1 text-sm text-gray-500">Free CC for new users</p>
</div>
<div>
<label className="block text-sm font-medium text-gray-700 mb-1">
CC per Banner View (PDF/Description)
</label>
<input
type="number"
min="0"
max="10"
step="0.1"
value={formData.cc_per_banner_view}
onChange={(e) => setFormData(prev => ({ ...prev, cc_per_banner_view: parseFloat(e.target.value) || 0.1 }))}
className="w-full px-3 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-primary-500 focus:border-primary-500"
/>
<p className="mt-1 text-sm text-gray-500"> PDF/ (기본값: 0.1 CC)</p>
</div>
</div>
<div className="mt-4 p-4 bg-blue-50 rounded-lg">