Skip to content

Fiyat bantlarini config'e tasi + uretim oncesi butce secimi - #2

Open
kdrgny-dev wants to merge 1 commit into
eticmedya:mainfrom
kdrgny-dev:fiyat-bantlari-yapilandirilabilir
Open

Fiyat bantlarini config'e tasi + uretim oncesi butce secimi#2
kdrgny-dev wants to merge 1 commit into
eticmedya:mainfrom
kdrgny-dev:fiyat-bantlari-yapilandirilabilir

Conversation

@kdrgny-dev

Copy link
Copy Markdown

İki şeyi çözüyor. İkisi de fiyatla ilgili olduğu için tek PR'da tuttum, ayrılmasını istersen bölerim.

1. Fiyatlar prompt'un içinden çıktı

Dört fiyat bandı buildPrompt()'un ortasında düz metin olarak duruyordu. Kendi ücretini yazmak için prompt metnini editlemek gerekiyordu — README de zaten burayı "değiştirmen muhtemel yer" diye işaret ediyor.

Artık shared/config/pricing.ts:

export const PRICE_BANDS: PriceBand[] = [
  { id: 'statik-basit', scope: '...', price: '500-1.200 TL tek seferlik', cms: false },
  ...
]

price serbest metin, para birimi fark etmiyor. Mevcut dört bandın kapsamı ve rakamları birebir korundu, davranış değişmedi.

2. Üretmeden önce bütçe seçimi

Aynı dosyada:

export const BUDGET_FOCUSES: BudgetFocus[] = [
  { id: 'hepsi',     label: 'Bütçe farketmez',    bandIds: [] },
  { id: 'ekonomik',  label: 'Ekonomik işler',      bandIds: ['statik-basit', 'statik-orta'] },
  { id: 'kapsamli',  label: 'Kapsamlı sistemler',  bandIds: ['cms', 'entegrasyon'] },
]

İşletme sayfasında Üret ve Yeniden Üret butonlarının yanına bir seçim geldi. Aynı işletmeye önce ekonomik, sonra kapsamlı üretip ikisini karşılaştırabiliyorsun — sahada bütçesi belli olan bir esnafa gitmeden işe yarıyor.

Bir seçeneği kaldırmak ya da yenisini eklemek tek satır; UI listeden besleniyor.

Dikkat ettiğim yerler

needs_cms kuralı. "En az bir true, en az bir false" kuralı bütçe daraltılınca imkânsız hale geliyor. O cümle artık sadece iki tür bant birlikte açıksa gönderiliyor; tek tür kaldıysa yerine "hepsi CMS'li olmalı" ya da "hepsi tek seferlik olmalı" gidiyor.

Geriye dönük uyumluluk. resolvePriceBands() bilinmeyen bir id'de tüm bantlara dönüyor, gövdesiz POST /api/process/:id isteği de eskisi gibi çalışıyor. Fiyatsız prompt üretmek mümkün değil.

Doğrulama

Prodivers Ayvalık Dalış Merkezi üzerinde, üç durum da canlı Gemini ile:

--- ekonomik ---
  cms=false | 1.200-2.500 TL tek seferlik      | Dalış Turları ve Eğitim Kataloğu Web Sitesi
  cms=false | 500-1.200 TL tek seferlik        | Mobil Dalış Bilgilendirme ve Bilgi Kartı

--- kapsamli ---
  cms=true  | 3.000-6.000 TL + aylık 300-750   | Online Dalış Rezervasyonu ve Form Yönetim Sistemi
  cms=true  | 5.000-10.000 TL                  | WhatsApp Entegreli Otomatik Hatırlatma Sistemi
  cms=true  | 3.000-6.000 TL + aylık 300-750   | Yönetilebilir Kurumsal Dalış Sitesi

--- govdesiz (eski davranis) ---
  cms=true  | 3.000-6.000 TL + aylık 300-750
  cms=false | 1.200-2.500 TL tek seferlik
  cms=true  | 5.000-10.000 TL

Uydurma fiyat çıkmadı, hepsi banttan geldi. vue-tsc --noEmit temiz.

README'nin hem TR hem EN tarafında dosya ağacı ve "kendine göre uyarlama" bölümleri güncellendi.

Fiyatlar prompt metninin icine gomuluydu; kendi ucretini yazmak icin
buildPrompt()'un ortasindaki dort satiri duzenlemek gerekiyordu. README
zaten burayi "degistirmen muhtemel yer" diye isaret ediyordu.

- shared/config/pricing.ts eklendi. PRICE_BANDS dort kademenin kapsamini,
  ucretini ve CMS gerektirip gerektirmedigini tutuyor. price serbest
  metin, para birimi fark etmiyor.
- Ayni dosyadaki BUDGET_FOCUSES uretim oncesi secilen butce
  secenegini tanimliyor: hepsi / ekonomik / kapsamli. Bir secenek
  hangi bantlari acacagini kendi listesiyle soyluyor.
- Isletme sayfasinda Uret ve Yeniden Uret butonlarinin yanina secim
  geldi. Ayni isletmeye farkli butcelerle tekrar uretilebiliyor.
- needs_cms kurali artik secilen bantlara gore kuruluyor. Butce
  daraltilinca "en az bir true en az bir false" kurali imkansiz hale
  geldigi icin, o cumle sadece iki tur bant birlikte aciksa gonderiliyor.
- resolvePriceBands() bilinmeyen id'de tum bantlara donuyor; eski bir
  istemci ya da govdesiz istek fiyatsiz prompt uretemiyor.

Prodivers Ayvalik Dalis Merkezi uzerinde dogrulandi:
  ekonomik -> cms=false, 500-1.200 ve 1.200-2.500 bantlari
  kapsamli -> cms=true, 3.000-6.000 ve 5.000-10.000 bantlari
  govdesiz -> karisik, tum bantlar (geriye donuk uyumlu)

vue-tsc --noEmit temiz.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant