添加候选人接口
This commit is contained in:
parent
f0ebc4af3c
commit
72ce65140e
@ -79,19 +79,19 @@ async def interview_insert(
|
|||||||
return schemas.Msg(code=200, msg='ok', data=data)
|
return schemas.Msg(code=200, msg='ok', data=data)
|
||||||
|
|
||||||
|
|
||||||
@router.post("/interview_insert")
|
# @router.post("/interview_insert")
|
||||||
async def interview_insert(
|
# async def interview_insert(
|
||||||
request: Request,
|
# request: Request,
|
||||||
data_in: schemas.Interview,
|
# data_in: schemas.Interview,
|
||||||
ckdb: CKDrive = Depends(get_ck_db),
|
# ckdb: CKDrive = Depends(get_ck_db),
|
||||||
) -> schemas.Msg:
|
# ) -> schemas.Msg:
|
||||||
""" 面试情况 """
|
# """ 面试情况 """
|
||||||
await interview.init()
|
# await interview.init()
|
||||||
res = interview.insert_interview_sql()
|
# res = interview.insert_interview_sql()
|
||||||
sql = res['sql']
|
# sql = res['sql']
|
||||||
insert_data = res['insert_data']
|
# insert_data = res['insert_data']
|
||||||
data = await db.execute_dict(sql, insert_data)
|
# data = await db.execute_dict(sql, insert_data)
|
||||||
return schemas.Msg(code=200, msg='ok', data=data)
|
# return schemas.Msg(code=200, msg='ok', data=data)
|
||||||
|
|
||||||
@router.post("/add_job")
|
@router.post("/add_job")
|
||||||
async def event_edit(
|
async def event_edit(
|
||||||
|
@ -401,7 +401,7 @@ class Settings(BaseSettings):
|
|||||||
# DATABASE_URI = f'mongodb://{MDB_USER}:{MDB_PASSWORD}@{MDB_HOST}:{MDB_PORT}/admin'
|
# DATABASE_URI = f'mongodb://{MDB_USER}:{MDB_PASSWORD}@{MDB_HOST}:{MDB_PORT}/admin'
|
||||||
# 本地MongoDB的库测试
|
# 本地MongoDB的库测试
|
||||||
class Debug(Settings):
|
class Debug(Settings):
|
||||||
MDB_HOST: str = '127.0.0.1'
|
MDB_HOST: str = '10.0.0.240'
|
||||||
MDB_PORT: int = 27017
|
MDB_PORT: int = 27017
|
||||||
MDB_DB: str = 'hr_system'
|
MDB_DB: str = 'hr_system'
|
||||||
|
|
||||||
|
@ -11,9 +11,10 @@ import pandas as pd
|
|||||||
import numpy as np
|
import numpy as np
|
||||||
|
|
||||||
from sqlalchemy import func, or_, and_, not_
|
from sqlalchemy import func, or_, and_, not_
|
||||||
|
from copy import deepcopy
|
||||||
import crud
|
import crud
|
||||||
import schemas
|
import schemas
|
||||||
|
from dateutil import parser
|
||||||
from core.config import settings
|
from core.config import settings
|
||||||
from db import get_database
|
from db import get_database
|
||||||
|
|
||||||
@ -36,18 +37,31 @@ class InterviewDo:
|
|||||||
|
|
||||||
def insert_interview_sql(self):
|
def insert_interview_sql(self):
|
||||||
insert_data = []
|
insert_data = []
|
||||||
|
res_data = []
|
||||||
if isinstance(self.data_in, dict):
|
if isinstance(self.data_in, dict):
|
||||||
insert_data = [self.data_in]
|
insert_data = [self.data_in]
|
||||||
if isinstance(self.data_in, list):
|
if isinstance(self.data_in, list):
|
||||||
insert_data = self.data_in
|
insert_data = self.data_in
|
||||||
keys = ()
|
|
||||||
|
sql = f"insert into HR.resumes(interview_name, interview_type, interview_sign, feedback, interview_round, star_time, end_time, event_time, uid, name, phone, job_name, hr_name, work_exp, interview_stage, owner_name, education, work_undergo, school, specialty, mmended_state, mail, account, id_card, gender, interview_state, graduate_time, counts) values"
|
||||||
for data in insert_data:
|
for data in insert_data:
|
||||||
keys = tuple(data.keys())
|
s1 = data['star_time']
|
||||||
break
|
s2 = data['end_time']
|
||||||
sql = f"insert into HR.resumes{keys} values"
|
s3 = data['event_time']
|
||||||
|
s4 = data['graduate_time']
|
||||||
|
if s1:
|
||||||
|
data['star_time'] = parser.parse(s1)
|
||||||
|
if s2:
|
||||||
|
data['end_time'] = parser.parse(s2)
|
||||||
|
if s3:
|
||||||
|
data['event_time'] = parser.parse(s3)
|
||||||
|
if s4:
|
||||||
|
data['graduate_time'] = parser.parse(s4)
|
||||||
|
data_true = deepcopy(data)
|
||||||
|
res_data.append(data_true)
|
||||||
print(sql)
|
print(sql)
|
||||||
return {'sql': sql,
|
return {'sql': sql,
|
||||||
'insert_data': insert_data
|
'insert_data': res_data
|
||||||
}
|
}
|
||||||
|
|
||||||
def update_interview_sql(self):
|
def update_interview_sql(self):
|
||||||
|
38
接口文档/添加候选人接口文档.txt
Normal file
38
接口文档/添加候选人接口文档.txt
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
路由: /api/v1/itr/interview_insert
|
||||||
|
|
||||||
|
参数:
|
||||||
|
{
|
||||||
|
"data_in": { # 插入的数据
|
||||||
|
"interview_name": "张四",
|
||||||
|
"interview_type": 0,
|
||||||
|
"interview_sign": 1,
|
||||||
|
"feedback": 0,
|
||||||
|
"interview_round": 1,
|
||||||
|
"star_time": "2022-07-11T10:30:00",
|
||||||
|
"end_time": "2022-07-11T11:00:00",
|
||||||
|
"event_time": "2022-07-01T10:00:00",
|
||||||
|
"uid": "1234567890",
|
||||||
|
"name": "李五",
|
||||||
|
"phone": "13789923799",
|
||||||
|
"job_name": "python开发",
|
||||||
|
"hr_name": "王六",
|
||||||
|
"work_exp": "2年",
|
||||||
|
"interview_stage": 1,
|
||||||
|
"owner_name": 2,
|
||||||
|
"education": 1,
|
||||||
|
"work_undergo": "",
|
||||||
|
"school": "武汉大学",
|
||||||
|
"specialty": "计算机专业",
|
||||||
|
"mmended_state": 0,
|
||||||
|
"mail": "250213000@qq.com",
|
||||||
|
"account": "湖北武汉",
|
||||||
|
"id_card": "421202199986750339",
|
||||||
|
"gender": "男",
|
||||||
|
"interview_state": 2,
|
||||||
|
"graduate_time": "2022-07-01T08:00:00",
|
||||||
|
"counts": 1
|
||||||
|
},
|
||||||
|
"interview_query": {}, # 筛选条件 添加候选人接口 传空值
|
||||||
|
"find_column": [ # 显示的字段 添加候选人接口 传空值
|
||||||
|
]
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user