update
This commit is contained in:
@@ -2,7 +2,6 @@ node_modules
|
|||||||
.git
|
.git
|
||||||
.gitignore
|
.gitignore
|
||||||
*.md
|
*.md
|
||||||
.env
|
|
||||||
.env.*
|
.env.*
|
||||||
*.log
|
*.log
|
||||||
dist
|
dist
|
||||||
|
|||||||
BIN
prisma/dev.db
BIN
prisma/dev.db
Binary file not shown.
@@ -21,13 +21,21 @@ const telegramService = new TelegramService(
|
|||||||
false
|
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() {
|
async function main() {
|
||||||
try {
|
try {
|
||||||
console.time("sendTelegram");
|
console.time("sendTelegram");
|
||||||
await sendTelegram();
|
await sendTelegram();
|
||||||
console.timeEnd("sendTelegram");
|
console.timeEnd("sendTelegram");
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.log(error);
|
errorWithTime(error);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -35,33 +43,41 @@ async function sendTelegram() {
|
|||||||
const sendUsers = isTestMode ? testUsers : telegramUsers;
|
const sendUsers = isTestMode ? testUsers : telegramUsers;
|
||||||
|
|
||||||
for (let telegramUser of sendUsers) {
|
for (let telegramUser of sendUsers) {
|
||||||
const articles = await prisma.realEstateArticle.findMany({
|
try {
|
||||||
where: {
|
const articles = await prisma.realEstateArticle.findMany({
|
||||||
isActive: true,
|
where: {
|
||||||
realtorId: telegramUser.realtorId,
|
isActive: true,
|
||||||
...(telegramUser.site !== "ALL" && { cpNm: telegramUser.site }),
|
realtorId: telegramUser.realtorId,
|
||||||
...(telegramUser.site === "부동산포스" && {
|
...(telegramUser.site !== "ALL" && { cpNm: telegramUser.site }),
|
||||||
brokerPhone: telegramUser.brokerPhone,
|
...(telegramUser.site === "부동산포스" && {
|
||||||
}),
|
brokerPhone: telegramUser.brokerPhone,
|
||||||
},
|
}),
|
||||||
});
|
},
|
||||||
|
});
|
||||||
|
|
||||||
if (articles.length === 0) {
|
if (articles.length === 0) {
|
||||||
console.log("no articles");
|
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;
|
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");
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -48,13 +48,13 @@ export const telegramUsers: TelegramUser[] = [
|
|||||||
phone: "010-6377-2069",
|
phone: "010-6377-2069",
|
||||||
realtorId: "namyeong00",
|
realtorId: "namyeong00",
|
||||||
},
|
},
|
||||||
{
|
// {
|
||||||
site: "부동산써브",
|
// site: "부동산써브",
|
||||||
chatId: 6864925398,
|
// chatId: 6864925398,
|
||||||
name: "박희영",
|
// name: "박희영",
|
||||||
phone: "010-5387-4521",
|
// phone: "010-5387-4521",
|
||||||
realtorId: "namyeong00",
|
// realtorId: "namyeong00",
|
||||||
},
|
// },
|
||||||
{
|
{
|
||||||
site: "부동산포스",
|
site: "부동산포스",
|
||||||
chatId: 8155003662,
|
chatId: 8155003662,
|
||||||
|
|||||||
Reference in New Issue
Block a user