add the expectJobRegExpStr field to make it can filter unrelated job

This commit is contained in:
geekgeekrun
2024-12-25 02:47:59 +08:00
parent 5184d275c3
commit 4e28fdd56e
6 changed files with 100 additions and 19 deletions

View File

@@ -60,11 +60,12 @@ export default function initIpc() {
const bossConfig = readConfigFile('boss.json')
bossConfig.anyCombineRecommendJobFilter = payload.anyCombineRecommendJobFilter
bossConfig.expectJobRegExpStr = payload.expectJobRegExpStr
return await Promise.all([
writeConfigFile('dingtalk.json', dingtalkConfig),
writeConfigFile('target-company-list.json', payload.expectCompanies.split(',')),
writeConfigFile('boss.json', bossConfig),
writeConfigFile('boss.json', bossConfig)
])
})

View File

@@ -12,6 +12,12 @@
>
<el-input v-model="formContent.dingtalkRobotAccessToken" />
</el-form-item>
<el-form-item
label="期望职位正则(按照职位名称+职位描述筛选职位,非目标职位直接标注不合适;为空时将不筛选)"
prop="expectJobRegExpStr"
>
<el-input v-model="formContent.expectJobRegExpStr" />
</el-form-item>
<el-form-item
label="期望公司(以逗号分隔,置空即遍历推荐列表,依次开聊)"
prop="expectCompanies"
@@ -67,7 +73,8 @@ const router = useRouter()
const formContent = ref({
dingtalkRobotAccessToken: '',
expectCompanies: '',
anyCombineRecommendJobFilter: {}
anyCombineRecommendJobFilter: {},
expectJobRegExpStr: ''
})
const currentAnyCombineRecommendJobFilterCombinationCount = computed(() => {
@@ -86,12 +93,14 @@ electron.ipcRenderer.invoke('fetch-config-file-content').then((res) => {
scaleList: [],
industryList: []
}
formContent.value.expectJobRegExpStr = res.config['boss.json']?.expectJobRegExpStr ?? ''
})
const formRules = {}
const formRef = ref<InstanceType<typeof ElForm>>()
const handleSubmit = async () => {
formContent.value.expectJobRegExpStr = (formContent.value.expectJobRegExpStr || '').trim()
await formRef.value!.validate()
await electron.ipcRenderer.invoke('save-config-file-from-ui', JSON.stringify(formContent.value))

View File

@@ -33,6 +33,9 @@
<strong>{{ markReasonTopicMap[row.markReason] }}</strong>
<pre class="m-0 of-auto">{{ formatMarkReason(row) }}</pre>
</template>
<template v-else-if="row.markReason === MarkAsNotSuitReason.JOB_NOT_SUIT">
<strong>{{ markReasonTopicMap[row.markReason] }}</strong>
</template>
</template>
</ElTableColumn>
<ElTableColumn prop="experienceName" label="工作经验" />
@@ -168,7 +171,8 @@ function handleViewJobSnapshotButtonClick(record: VMarkAsNotSuitLog) {
const markReasonTopicMap = {
[MarkAsNotSuitReason.BOSS_INACTIVE]: 'Boss不活跃',
[MarkAsNotSuitReason.USER_MANUAL_OPERATION_WITH_UNKNOWN_REASON]: '手动标记不合适'
[MarkAsNotSuitReason.USER_MANUAL_OPERATION_WITH_UNKNOWN_REASON]: '手动标记不合适',
[MarkAsNotSuitReason.JOB_NOT_SUIT]: '职位不合适'
}
function formatMarkReason(row: VMarkAsNotSuitLog) {