diff --git a/src/services/preparationDeadline.js b/src/services/preparationDeadline.js index bccfafd..2343c90 100644 --- a/src/services/preparationDeadline.js +++ b/src/services/preparationDeadline.js @@ -4,7 +4,7 @@ import {deadlineInfo} from './tenderCalendar.js'; export function preparationDeadlineProblem(tender, now = new Date()) { if(tender?.kazananFirma)return 'İhalenin kazananı açıklanmış. Hazır teklif çıktısı oluşturulamaz; taslağınızı kaydedebilirsiniz.'; const status=String(tender?.durum || '').toLocaleLowerCase('tr-TR'); - if (/iptal|sonuçlandı|sözleşme imzalandı/.test(status)) + if (/iptal|sonuçlandı|sözleşme imzalandı|kapalı|tamamlandı|değerlendirme/.test(status)) return 'İhale iptal edilmiş veya sonuçlanmış. Hazır teklif çıktısı oluşturulamaz; taslağınızı kaydedebilirsiniz.'; const info=deadlineInfo(tender,now); if (!info.deadline) return 'Son teklif tarihi veya saati doğrulanamadı. Kaynak ilanı kontrol edin; taslağınızı kaydedebilirsiniz.'; diff --git a/tests/preparation-deadline.test.mjs b/tests/preparation-deadline.test.mjs index 9694946..16ba766 100644 --- a/tests/preparation-deadline.test.mjs +++ b/tests/preparation-deadline.test.mjs @@ -11,7 +11,7 @@ test('unknown or malformed deadline cannot qualify as a ready bid',()=>{ assert.match(preparationDeadlineProblem(value,new Date('2026-09-01')),/doğrulanamadı/); }); test('cancelled and completed tenders do not regain readiness merely through a future date',()=>{ - for(const durum of ['İptal Edildi','Sonuçlandı','Sözleşme imzalandı']) + for(const durum of ['İptal Edildi','Sonuçlandı','Sözleşme imzalandı','Kapalı','Tamamlandı','Değerlendirme aşamasında']) assert.match(preparationDeadlineProblem({...tender,durum},new Date('2026-09-01')),/iptal edilmiş veya sonuçlanmış/); });