This commit is contained in:
kjy
2026-03-03 21:35:25 +09:00
parent ffdca4f6dd
commit 59a94f08e6
4 changed files with 48 additions and 33 deletions

View File

@@ -21,13 +21,21 @@ const telegramService = new TelegramService(
false
);
function logWithTime(...args: unknown[]) {
console.log(`[${dayjs().format("YYYY-MM-DD HH:mm:ss")}]`, ...args);
}
function errorWithTime(...args: unknown[]) {
console.error(`[${dayjs().format("YYYY-MM-DD HH:mm:ss")}]`, ...args);
}
async function main() {
try {
console.time("sendTelegram");
await sendTelegram();
console.timeEnd("sendTelegram");
} catch (error) {
console.log(error);
errorWithTime(error);
}
}
@@ -35,33 +43,41 @@ async function sendTelegram() {
const sendUsers = isTestMode ? testUsers : telegramUsers;
for (let telegramUser of sendUsers) {
const articles = await prisma.realEstateArticle.findMany({
where: {
isActive: true,
realtorId: telegramUser.realtorId,
...(telegramUser.site !== "ALL" && { cpNm: telegramUser.site }),
...(telegramUser.site === "부동산포스" && {
brokerPhone: telegramUser.brokerPhone,
}),
},
});
try {
const articles = await prisma.realEstateArticle.findMany({
where: {
isActive: true,
realtorId: telegramUser.realtorId,
...(telegramUser.site !== "ALL" && { cpNm: telegramUser.site }),
...(telegramUser.site === "부동산포스" && {
brokerPhone: telegramUser.brokerPhone,
}),
},
});
if (articles.length === 0) {
console.log("no articles");
if (articles.length === 0) {
logWithTime("no articles");
continue;
}
const excelFilePath = await createExcelFile(telegramUser, articles);
await telegramService.sendDocument(
telegramUser.chatId,
excelFilePath,
`${telegramUser.realtorId}_네이버 부동산 매물 목록 (${dayjs().format(
"YYYY-MM-DD"
)})`
);
await unlink(excelFilePath);
logWithTime("excel file deleted");
} catch (error) {
errorWithTime(
`${telegramUser.name}(${telegramUser.chatId}) 처리 실패:`,
error
);
continue;
}
const excelFilePath = await createExcelFile(telegramUser, articles);
await telegramService.sendDocument(
telegramUser.chatId,
excelFilePath,
`${telegramUser.realtorId}_네이버 부동산 매물 목록 (${dayjs().format(
"YYYY-MM-DD"
)})`
);
await unlink(excelFilePath);
console.log("excel file deleted");
}
}

View File

@@ -48,13 +48,13 @@ export const telegramUsers: TelegramUser[] = [
phone: "010-6377-2069",
realtorId: "namyeong00",
},
{
site: "부동산써브",
chatId: 6864925398,
name: "박희영",
phone: "010-5387-4521",
realtorId: "namyeong00",
},
// {
// site: "부동산써브",
// chatId: 6864925398,
// name: "박희영",
// phone: "010-5387-4521",
// realtorId: "namyeong00",
// },
{
site: "부동산포스",
chatId: 8155003662,