const fs = require("fs"); const path = require("path"); const readline = require("readline"); const filePath = path.join(__dirname, "SadenTel_Documents.csv"); // خواندن فایل CSV const fileContent = fs.readFileSync(filePath, "utf8"); // تبدیل CSV به آرایه اسناد const lines = fileContent.trim().split(/\r?\n/); const documents = lines.slice(1).map(line => { const columns = line.split(","); return { row: columns[0], title: columns[1], id: columns[2] }; }); // ایجاد محیط دریافت ورودی const rl = readline.createInterface({ input: process.stdin, output: process.stdout }); // جست‌وجوی اسناد function searchDocument(query) { const searchText = query.trim().toLowerCase(); const results = documents.filter(doc => doc.title.toLowerCase().includes(searchText) || doc.id.toLowerCase().includes(searchText) ); if (results.length === 0) { console.log("\nسندی پیدا نشد."); return; } console.log(`\nتعداد نتایج: ${results.length}\n`); results.forEach(doc => { console.log("------------------------------"); console.log("عنوان سند:", doc.title); console.log("شناسه داخلی:", doc.id); console.log("ردیف:", doc.row); }); console.log("------------------------------"); } // دریافت عبارت جست‌وجو function askSearch() { rl.question("\nنام یا شناسه سند را وارد کنید (برای خروج exit): ", query => { if (query.trim().toLowerCase() === "exit") { rl.close(); return; } if (query.trim() === "") { console.log("لطفاً عبارت جست‌وجو را وارد کنید."); } else { searchDocument(query); } askSearch(); }); } console.log("===== SadenTel Document Search ====="); askSearch();