mirror of
https://github.com/geekgeekrun/geekgeekrun.git
synced 2026-06-11 02:31:47 +08:00
add the feature when startup chat in LAUNCH_BOSS_SITE recommend, save the startup record
This commit is contained in:
@@ -4,6 +4,7 @@ import { BossInfo } from "./entity/BossInfo";
|
||||
import { CompanyInfo } from "./entity/CompanyInfo";
|
||||
import { JobInfo } from "./entity/JobInfo";
|
||||
import { parseCompanyScale, parseSalary } from "./utils/parser";
|
||||
import { ChatStartupLog } from "./entity/ChatStartupLog";
|
||||
|
||||
export async function saveJobInfoFromRecommendPage(ds: DataSource, _jobInfo) {
|
||||
const { bossInfo, brandComInfo, jobInfo } = _jobInfo;
|
||||
@@ -86,3 +87,21 @@ export async function saveJobInfoFromRecommendPage(ds: DataSource, _jobInfo) {
|
||||
//#endregion
|
||||
return;
|
||||
}
|
||||
|
||||
export async function saveChatStartupRecord(ds: DataSource, _jobInfo, { encryptUserId }) {
|
||||
const { jobInfo } = _jobInfo;
|
||||
|
||||
//#region chat-startup-log
|
||||
const chatStartupLog = new ChatStartupLog()
|
||||
const chatStartupLogPayload: Partial<ChatStartupLog> = {
|
||||
date: new Date(),
|
||||
encryptCurrentUserId: encryptUserId,
|
||||
encryptJobId: jobInfo.encryptId,
|
||||
}
|
||||
Object.assign(chatStartupLog, chatStartupLogPayload)
|
||||
|
||||
const chatStartupLogRepository = ds.getRepository(ChatStartupLog);
|
||||
await chatStartupLogRepository.save(chatStartupLog);
|
||||
//#endregion
|
||||
return
|
||||
}
|
||||
|
||||
@@ -15,7 +15,7 @@ import { VChatStartupLog } from "./entity/VChatStartupLog";
|
||||
|
||||
import sqlite3 from 'sqlite3';
|
||||
import * as cliHighlight from 'cli-highlight';
|
||||
import { saveJobInfoFromRecommendPage } from "./handlers";
|
||||
import { saveChatStartupRecord, saveJobInfoFromRecommendPage } from "./handlers";
|
||||
Boolean(cliHighlight);
|
||||
|
||||
export function initDb(dbFilePath) {
|
||||
@@ -76,26 +76,12 @@ export default class SqlitePlugin {
|
||||
|
||||
hooks.jobDetailIsGetFromRecommendList.tapPromise("SqlitePlugin", async (_jobInfo) => {
|
||||
const ds = await this.initPromise;
|
||||
saveJobInfoFromRecommendPage(ds, _jobInfo);
|
||||
await saveJobInfoFromRecommendPage(ds, _jobInfo);
|
||||
});
|
||||
|
||||
hooks.newChatStartup.tapPromise("SqlitePlugin", async (_jobInfo) => {
|
||||
const { jobInfo } = _jobInfo;
|
||||
|
||||
//#region chat-startup-log
|
||||
const chatStartupLog = new ChatStartupLog()
|
||||
const chatStartupLogPayload: Partial<ChatStartupLog> = {
|
||||
date: new Date(),
|
||||
encryptCurrentUserId: this.userInfo.encryptUserId,
|
||||
encryptJobId: jobInfo.encryptId,
|
||||
}
|
||||
Object.assign(chatStartupLog, chatStartupLogPayload)
|
||||
|
||||
const ds = await this.initPromise;
|
||||
const chatStartupLogRepository = ds.getRepository(ChatStartupLog);
|
||||
await chatStartupLogRepository.save(chatStartupLog);
|
||||
//#endregion
|
||||
return
|
||||
return await saveChatStartupRecord(ds, _jobInfo, this.userInfo);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user