导入候选人

This commit is contained in:
Àî×ÚÕñ 2022-07-12 18:17:47 +08:00
parent bab4e071aa
commit 120265d2fd
3 changed files with 47 additions and 5 deletions

View File

@ -47,6 +47,23 @@ async def interview_find(
return schemas.Msg(code=200, msg='ok', data=data) return schemas.Msg(code=200, msg='ok', data=data)
# 面试查询
@router.post("/interview_home_find")
async def interview_find(
request: Request,
interview: InterviewDo = Depends(InterviewDo),
db: CKDrive = Depends(get_ck_db),
) -> schemas.Msg:
""" interview面试数据查询 """
await interview.init()
res = interview.find_interview_home_sql()
sql = res['sql']
data = await db.execute(sql)
if not data:
return schemas.Msg(code=-9, msg='无数据', data=None)
return schemas.Msg(code=200, msg='ok', data=data)
# 面试修改 # 面试修改
@router.post("/interview_update") @router.post("/interview_update")
async def interview_update( async def interview_update(
@ -120,11 +137,13 @@ async def interview_insert(
else: else:
data['age'] = int(true_age.group()) data['age'] = int(true_age.group())
work_exp = data['work_exp'] work_exp = data['work_exp']
if not work_exp:
data['work_exp'] = 0
# 工作经验float转化 # 工作经验float转化
if work_exp and isinstance(work_exp, str): if work_exp and isinstance(work_exp, str):
true_work_exp = re.search(r"\d+\.?\d*", work_exp) true_work_exp = re.search(r"\d+\.?\d*", work_exp)
if len(true_work_exp.group()) > 3: if len(true_work_exp.group()) > 3:
data['work_exp'] = 1.0 data['work_exp'] = 0
else: else:
data['work_exp'] = float(true_work_exp.group()) data['work_exp'] = float(true_work_exp.group())
print(data) print(data)

View File

@ -89,10 +89,12 @@ class InterviewDo:
data_true['age'] = int(true_age.group()) data_true['age'] = int(true_age.group())
work_exp = data_true['work_exp'] work_exp = data_true['work_exp']
# 工作经验float转化 # 工作经验float转化
if not work_exp:
data_true['work_exp'] = 0
if work_exp and isinstance(work_exp, str): if work_exp and isinstance(work_exp, str):
true_work_exp = re.search(r"\d+\.?\d*", work_exp) true_work_exp = re.search(r"\d+\.?\d*", work_exp)
if len(true_work_exp.group()) > 3: if len(true_work_exp.group()) > 3:
data_true['work_exp'] = 1.0 data_true['work_exp'] = 0.0
else: else:
data_true['work_exp'] = float(true_work_exp.group()) data_true['work_exp'] = float(true_work_exp.group())
res_data.append(data_true) res_data.append(data_true)
@ -134,12 +136,33 @@ class InterviewDo:
whereStr += str(key) + ' = ' + str(value) + ' ' whereStr += str(key) + ' = ' + str(value) + ' '
whereStr = whereStr.strip() whereStr = whereStr.strip()
findStr = findStr.strip().strip(',') findStr = findStr.strip().strip(',')
# sql = f"select {findStr} from HR.resumes where {whereStr}" sql = f"select {findStr} from HR.resumes where {whereStr}"
sql = f"select * from HR.resumes where {whereStr}" # sql = f"select * from HR.resumes where {whereStr}"
print(sql) print(sql)
return {'sql': sql, return {'sql': sql,
} }
# 主页查询
def find_interview_home_sql(self):
whereStr = ''
findStr = ''
# 主页查询字段
self.find_column = ["age","gender","at_school","name","event_time", "owner_name", "education", "school", "specialty", "interview_name", "mmended_state", "work_list", "work_exp", "job_name"]
for fstr in self.find_column:
findStr += fstr + ', '
for key, value in self.where.items():
if isinstance(value, str):
whereStr += str(key) + ' = ' + "'" + value + "'" + ' '
continue
whereStr += str(key) + ' = ' + str(value) + ' '
whereStr = whereStr.strip()
findStr = findStr.strip().strip(',')
sql = f"select {findStr} from HR.resumes where {whereStr}"
print(sql)
return {'sql': sql,
}
if __name__ == '__main__': if __name__ == '__main__':
find = re.search(r"\d+\.?\d*", "18岁") find = re.search(r"\d+\.?\d*", "18岁")
print(len(find.group())) print(len(find.group()))

View File

@ -33,7 +33,7 @@ data_mode = {
"phone": "", "phone": "",
"job_name": "", "job_name": "",
"hr_name": "吴操", "hr_name": "吴操",
"work_exp": 0.0, "work_exp": 0,
"interview_stage": 1, "interview_stage": 1,
"owner_name": 2, "owner_name": 2,
"education": 1, "education": 1,