|
@@ -22,7 +22,10 @@ from datetime import datetime, timedelta
|
|
import pandas as pd
|
|
import pandas as pd
|
|
import xlrd
|
|
import xlrd
|
|
from common.db import db_dept
|
|
from common.db import db_dept
|
|
-from exceptions import AppException
|
|
|
|
|
|
+from exceptions import AppException, HmacException
|
|
|
|
+from common.enc import mpfun, three_proofing_responsible_person_data
|
|
|
|
+from common.db import db_czrz
|
|
|
|
+from common.auth_user import *
|
|
|
|
|
|
router = APIRouter()
|
|
router = APIRouter()
|
|
|
|
|
|
@@ -30,9 +33,11 @@ router = APIRouter()
|
|
|
|
|
|
@router.post('/create')
|
|
@router.post('/create')
|
|
async def create_contact(
|
|
async def create_contact(
|
|
- db: Session = Depends(get_db),
|
|
|
|
- body=Depends(remove_xss_json),
|
|
|
|
- user_id=Depends(valid_access_token)
|
|
|
|
|
|
+ request: Request,
|
|
|
|
+ auth_user: AuthUser = Depends(find_auth_user),
|
|
|
|
+ db: Session = Depends(get_db),
|
|
|
|
+ body=Depends(remove_xss_json),
|
|
|
|
+ user_id=Depends(valid_access_token)
|
|
):
|
|
):
|
|
try:
|
|
try:
|
|
# 提取请求数据
|
|
# 提取请求数据
|
|
@@ -52,7 +57,8 @@ async def create_contact(
|
|
order_num=body['order_num']
|
|
order_num=body['order_num']
|
|
unit_id = db_dept.get_dept_id_by_name(db, unit_name)
|
|
unit_id = db_dept.get_dept_id_by_name(db, unit_name)
|
|
user_id_1 = db_user.get_user_id_by_phonenumber(db,phone)
|
|
user_id_1 = db_user.get_user_id_by_phonenumber(db,phone)
|
|
- # 创建新的预案记录
|
|
|
|
|
|
+
|
|
|
|
+ # 创建新的记录
|
|
new_person = ThreeProofingResponsiblePerson(
|
|
new_person = ThreeProofingResponsiblePerson(
|
|
unit_id=unit_id,
|
|
unit_id=unit_id,
|
|
unit_name=unit_name,
|
|
unit_name=unit_name,
|
|
@@ -69,9 +75,11 @@ async def create_contact(
|
|
# 添加到数据库会话并提交
|
|
# 添加到数据库会话并提交
|
|
type_list = body['type_list']
|
|
type_list = body['type_list']
|
|
if isinstance(type_list,list) and len(type_list)>0:
|
|
if isinstance(type_list,list) and len(type_list)>0:
|
|
-
|
|
|
|
db.add(new_person)
|
|
db.add(new_person)
|
|
db.commit()
|
|
db.commit()
|
|
|
|
+
|
|
|
|
+ three_proofing_responsible_person_data.sign_table()
|
|
|
|
+
|
|
else:
|
|
else:
|
|
return JSONResponse(status_code=404,content={
|
|
return JSONResponse(status_code=404,content={
|
|
'code': 404,
|
|
'code': 404,
|
|
@@ -121,7 +129,11 @@ async def create_contact(
|
|
db.rollback()
|
|
db.rollback()
|
|
traceback.print_exc()
|
|
traceback.print_exc()
|
|
new_person.del_flag='2'
|
|
new_person.del_flag='2'
|
|
|
|
+
|
|
db.commit()
|
|
db.commit()
|
|
|
|
+
|
|
|
|
+ db_czrz.log(db, auth_user, "系统管理", f"后台管理新建三防责任人管理人员信息成功", request.client.host)
|
|
|
|
+
|
|
# 返回创建成功的响应
|
|
# 返回创建成功的响应
|
|
return {
|
|
return {
|
|
"code": 200,
|
|
"code": 200,
|
|
@@ -137,9 +149,11 @@ async def create_contact(
|
|
|
|
|
|
@router.put('/update')
|
|
@router.put('/update')
|
|
async def update_contact(
|
|
async def update_contact(
|
|
- db: Session = Depends(get_db),
|
|
|
|
- body=Depends(remove_xss_json),
|
|
|
|
- user_id=Depends(valid_access_token)
|
|
|
|
|
|
+ request: Request,
|
|
|
|
+ auth_user: AuthUser = Depends(find_auth_user),
|
|
|
|
+ db: Session = Depends(get_db),
|
|
|
|
+ body=Depends(remove_xss_json),
|
|
|
|
+ user_id=Depends(valid_access_token)
|
|
):
|
|
):
|
|
try:
|
|
try:
|
|
# 提取请求数据
|
|
# 提取请求数据
|
|
@@ -156,24 +170,36 @@ async def update_contact(
|
|
person.name = body['name']
|
|
person.name = body['name']
|
|
person.area_code = body['area_code']
|
|
person.area_code = body['area_code']
|
|
area_info = id_get_area_info(db, body['area_code'])
|
|
area_info = id_get_area_info(db, body['area_code'])
|
|
|
|
+
|
|
if area_info:
|
|
if area_info:
|
|
person.area_code2 = area_info.area_code
|
|
person.area_code2 = area_info.area_code
|
|
person.position = body['position']
|
|
person.position = body['position']
|
|
- person.phone = body['phone']
|
|
|
|
|
|
+ person.phone = mpfun.enc_data(body['phone'])
|
|
|
|
+
|
|
if 'telephone' in body:
|
|
if 'telephone' in body:
|
|
- person.telephone=body['telephone']
|
|
|
|
|
|
+ person.telephone = mpfun.enc_data(body['telephone'])
|
|
person.order_num = body['order_num']
|
|
person.order_num = body['order_num']
|
|
|
|
+
|
|
if body['order_num']=='':
|
|
if body['order_num']=='':
|
|
person.order_num = -1
|
|
person.order_num = -1
|
|
person.unit_id = db_dept.get_dept_id_by_name(db, body['unit_name'])
|
|
person.unit_id = db_dept.get_dept_id_by_name(db, body['unit_name'])
|
|
|
|
+
|
|
|
|
+ person.update_by = user_id
|
|
|
|
+ person.update_time = datetime.now()
|
|
|
|
+ person.sign = three_proofing_responsible_person_data.get_sign_hmac(person)
|
|
|
|
+
|
|
|
|
+
|
|
type_list = body['type_list']
|
|
type_list = body['type_list']
|
|
old_person_type_list=get_person_type_by_person_id(db,person.id)
|
|
old_person_type_list=get_person_type_by_person_id(db,person.id)
|
|
|
|
+
|
|
for old_person_type in old_person_type_list:
|
|
for old_person_type in old_person_type_list:
|
|
old_person_type.del_flag='2'
|
|
old_person_type.del_flag='2'
|
|
old_person_other_info_list = get_person_other_info_by_person_id(db,person.id)
|
|
old_person_other_info_list = get_person_other_info_by_person_id(db,person.id)
|
|
|
|
+
|
|
for old_person_other_info in old_person_other_info_list:
|
|
for old_person_other_info in old_person_other_info_list:
|
|
old_person_other_info.del_flag = '2'
|
|
old_person_other_info.del_flag = '2'
|
|
old_person_other_type_list = get_person_other_type_by_person_id(db,person.id)
|
|
old_person_other_type_list = get_person_other_type_by_person_id(db,person.id)
|
|
|
|
+
|
|
for old_person_other_type in old_person_other_type_list:
|
|
for old_person_other_type in old_person_other_type_list:
|
|
old_person_other_type.del_flag = '2'
|
|
old_person_other_type.del_flag = '2'
|
|
|
|
|
|
@@ -219,6 +245,8 @@ async def update_contact(
|
|
# 更新到数据库会话并提交
|
|
# 更新到数据库会话并提交
|
|
db.commit()
|
|
db.commit()
|
|
|
|
|
|
|
|
+ db_czrz.log(db, auth_user, "系统管理", f"后台管理更新三防责任人管理人员信息成功", request.client.host)
|
|
|
|
+
|
|
# 返回创建成功的响应
|
|
# 返回创建成功的响应
|
|
return {
|
|
return {
|
|
"code": 200,
|
|
"code": 200,
|
|
@@ -311,8 +339,8 @@ async def get_emergency_contact_list(
|
|
"area_code": info.area_code,
|
|
"area_code": info.area_code,
|
|
"area_name": area_info.area_name,
|
|
"area_name": area_info.area_name,
|
|
"position": info.position,
|
|
"position": info.position,
|
|
- "phone": info.phone,
|
|
|
|
- "telephone":info.telephone,
|
|
|
|
|
|
+ "phone": mpfun.dec_data(info.phone),
|
|
|
|
+ "telephone": mpfun.dec_data(info.telephone),
|
|
"order_num": order_num,
|
|
"order_num": order_num,
|
|
"online_status":'0',
|
|
"online_status":'0',
|
|
"create_time": info.create_time.strftime('%Y-%m-%d %H:%M:%S'),
|
|
"create_time": info.create_time.strftime('%Y-%m-%d %H:%M:%S'),
|
|
@@ -366,8 +394,8 @@ async def get_emergency_contact_id_info(
|
|
"area_code":contact.area_code,
|
|
"area_code":contact.area_code,
|
|
"area_name": area_info.area_name,
|
|
"area_name": area_info.area_name,
|
|
"position": contact.position,
|
|
"position": contact.position,
|
|
- "phone": contact.phone,
|
|
|
|
- "telephone":contact.telephone,
|
|
|
|
|
|
+ "phone": mpfun.dec_data(contact.phone),
|
|
|
|
+ "telephone":mpfun.dec_data(contact.telephone),
|
|
"order_num":order_num,
|
|
"order_num":order_num,
|
|
"online_status":'0',
|
|
"online_status":'0',
|
|
"create_time": contact.create_time.strftime('%Y-%m-%d %H:%M:%S'),
|
|
"create_time": contact.create_time.strftime('%Y-%m-%d %H:%M:%S'),
|
|
@@ -424,10 +452,12 @@ async def get_emergency_contact_id_info(
|
|
|
|
|
|
@router.delete('/delete')
|
|
@router.delete('/delete')
|
|
async def delete_emergency_plans(
|
|
async def delete_emergency_plans(
|
|
- ids: list,
|
|
|
|
- db: Session = Depends(get_db),
|
|
|
|
- body=Depends(remove_xss_json),
|
|
|
|
- user_id=Depends(valid_access_token)
|
|
|
|
|
|
+ request: Request,
|
|
|
|
+ ids: list,
|
|
|
|
+ db: Session = Depends(get_db),
|
|
|
|
+ body=Depends(remove_xss_json),
|
|
|
|
+ auth_user: AuthUser = Depends(find_auth_user),
|
|
|
|
+ user_id=Depends(valid_access_token)
|
|
):
|
|
):
|
|
try:
|
|
try:
|
|
# 提取请求数据
|
|
# 提取请求数据
|
|
@@ -442,10 +472,14 @@ async def delete_emergency_plans(
|
|
})
|
|
})
|
|
for contact in contacts:
|
|
for contact in contacts:
|
|
contact.del_flag = '2'
|
|
contact.del_flag = '2'
|
|
- contact.create_by = user_id
|
|
|
|
|
|
+ contact.update_by = user_id
|
|
|
|
+ contact.update_time = datetime.now()
|
|
|
|
+ contact.sign = three_proofing_responsible_person_data.get_sign_hmac(contact)
|
|
# 更新到数据库会话并提交
|
|
# 更新到数据库会话并提交
|
|
db.commit()
|
|
db.commit()
|
|
|
|
|
|
|
|
+ db_czrz.log(db, auth_user, "系统管理", f"后台管理删除三防责任人管理人员信息成功", request.client.host)
|
|
|
|
+
|
|
# 返回创建成功的响应
|
|
# 返回创建成功的响应
|
|
return {
|
|
return {
|
|
"code": 200,
|
|
"code": 200,
|
|
@@ -460,10 +494,12 @@ async def delete_emergency_plans(
|
|
|
|
|
|
@router.delete('/delete/{id}')
|
|
@router.delete('/delete/{id}')
|
|
async def delete_emergency_plans(
|
|
async def delete_emergency_plans(
|
|
- id: int,
|
|
|
|
- db: Session = Depends(get_db),
|
|
|
|
- body=Depends(remove_xss_json),
|
|
|
|
- user_id=Depends(valid_access_token)
|
|
|
|
|
|
+ request: Request,
|
|
|
|
+ id: int,
|
|
|
|
+ db: Session = Depends(get_db),
|
|
|
|
+ body=Depends(remove_xss_json),
|
|
|
|
+ auth_user: AuthUser = Depends(find_auth_user),
|
|
|
|
+ user_id=Depends(valid_access_token)
|
|
):
|
|
):
|
|
try:
|
|
try:
|
|
contact = get_person_info_by_id(db, id)
|
|
contact = get_person_info_by_id(db, id)
|
|
@@ -473,10 +509,14 @@ async def delete_emergency_plans(
|
|
'errmsg': '联系人不存在'
|
|
'errmsg': '联系人不存在'
|
|
})
|
|
})
|
|
contact.del_flag = '2'
|
|
contact.del_flag = '2'
|
|
- contact.create_by = user_id
|
|
|
|
|
|
+ contact.update_by = user_id
|
|
|
|
+ contact.update_time = datetime.now()
|
|
|
|
+ contact.sign = three_proofing_responsible_person_data.get_sign_hmac(contact)
|
|
# 更新到数据库会话并提交
|
|
# 更新到数据库会话并提交
|
|
db.commit()
|
|
db.commit()
|
|
|
|
|
|
|
|
+ db_czrz.log(db, auth_user, "系统管理", f"后台管理删除三防责任人管理人员信息成功", request.client.host)
|
|
|
|
+
|
|
# 返回创建成功的响应
|
|
# 返回创建成功的响应
|
|
return {
|
|
return {
|
|
"code": 200,
|
|
"code": 200,
|
|
@@ -505,6 +545,7 @@ def string_type_parent_id_create_data(db,string,type_parent_id,file_info,new_per
|
|
file_info.remark= file_info.remark+f'\n行<{row+1}>责任类别未找到<{type_name}>'
|
|
file_info.remark= file_info.remark+f'\n行<{row+1}>责任类别未找到<{type_name}>'
|
|
return reslte ,False
|
|
return reslte ,False
|
|
return reslte ,True
|
|
return reslte ,True
|
|
|
|
+
|
|
def other_type_string_type_parent_id_create_data(db,string,type_parent_id,file_info,new_person,user_id,row) :
|
|
def other_type_string_type_parent_id_create_data(db,string,type_parent_id,file_info,new_person,user_id,row) :
|
|
type_name_list = [i for i in string.split(',')]
|
|
type_name_list = [i for i in string.split(',')]
|
|
reslte = []
|
|
reslte = []
|
|
@@ -523,6 +564,7 @@ def other_type_string_type_parent_id_create_data(db,string,type_parent_id,file_i
|
|
file_info.error_num +=1
|
|
file_info.error_num +=1
|
|
return reslte ,False
|
|
return reslte ,False
|
|
return reslte ,True
|
|
return reslte ,True
|
|
|
|
+
|
|
def import_data(db,file_path,user_id,file_info):
|
|
def import_data(db,file_path,user_id,file_info):
|
|
|
|
|
|
import_status = True
|
|
import_status = True
|
|
@@ -564,7 +606,7 @@ def import_data(db,file_path,user_id,file_info):
|
|
phone_list = [i for i in phone.split(',')]
|
|
phone_list = [i for i in phone.split(',')]
|
|
user_id_1=-1
|
|
user_id_1=-1
|
|
for i in phone_list:
|
|
for i in phone_list:
|
|
- user_id_1 = db_user.get_user_id_by_phonenumber(db,i)
|
|
|
|
|
|
+ user_id_1 = db_user.get_user_id_by_phonenumber(db, i)
|
|
if user_id_1 != -1:
|
|
if user_id_1 != -1:
|
|
break
|
|
break
|
|
|
|
|
|
@@ -589,6 +631,7 @@ def import_data(db,file_path,user_id,file_info):
|
|
import_status = False
|
|
import_status = False
|
|
area_code2 = area_code.area_code
|
|
area_code2 = area_code.area_code
|
|
area_code = area_code.id
|
|
area_code = area_code.id
|
|
|
|
+
|
|
new_person = ThreeProofingResponsiblePerson(
|
|
new_person = ThreeProofingResponsiblePerson(
|
|
unit_id=unit_id,
|
|
unit_id=unit_id,
|
|
unit_name=unit_name,
|
|
unit_name=unit_name,
|
|
@@ -600,11 +643,14 @@ def import_data(db,file_path,user_id,file_info):
|
|
telephone=telephone,
|
|
telephone=telephone,
|
|
user_id=user_id_1,
|
|
user_id=user_id_1,
|
|
order_num=order_num,
|
|
order_num=order_num,
|
|
- create_by=user_id
|
|
|
|
|
|
+ create_by=user_id,
|
|
|
|
+ sign = ''
|
|
)
|
|
)
|
|
data.append(new_person)
|
|
data.append(new_person)
|
|
db.add(new_person)
|
|
db.add(new_person)
|
|
db.commit()
|
|
db.commit()
|
|
|
|
+
|
|
|
|
+
|
|
# 党委政府
|
|
# 党委政府
|
|
a1 = sheet.cell(row, 6).value
|
|
a1 = sheet.cell(row, 6).value
|
|
if a1 != '':
|
|
if a1 != '':
|
|
@@ -819,13 +865,17 @@ def import_data(db,file_path,user_id,file_info):
|
|
db.delete(info)
|
|
db.delete(info)
|
|
file_info.status = 2
|
|
file_info.status = 2
|
|
db.commit()
|
|
db.commit()
|
|
|
|
+
|
|
|
|
+ three_proofing_responsible_person_data.sign_table()
|
|
|
|
+
|
|
@router.post('/createImport')
|
|
@router.post('/createImport')
|
|
async def create_contact(
|
|
async def create_contact(
|
|
- background_tasks: BackgroundTasks,
|
|
|
|
- db: Session = Depends(get_db),
|
|
|
|
- body=Depends(remove_xss_json),
|
|
|
|
- user_id=Depends(valid_access_token),
|
|
|
|
-
|
|
|
|
|
|
+ request: Request,
|
|
|
|
+ background_tasks: BackgroundTasks,
|
|
|
|
+ db: Session = Depends(get_db),
|
|
|
|
+ body=Depends(remove_xss_json),
|
|
|
|
+ auth_user: AuthUser = Depends(find_auth_user),
|
|
|
|
+ user_id=Depends(valid_access_token)
|
|
):
|
|
):
|
|
try:
|
|
try:
|
|
# 提取请求数据
|
|
# 提取请求数据
|
|
@@ -854,6 +904,8 @@ async def create_contact(
|
|
db.commit()
|
|
db.commit()
|
|
background_tasks.add_task(import_data,db,file_path, user_id,new_file)
|
|
background_tasks.add_task(import_data,db,file_path, user_id,new_file)
|
|
|
|
|
|
|
|
+
|
|
|
|
+ db_czrz.log(db, auth_user, "系统管理", f"后台管理导入三防责任人管理人员信息成功", request.client.host)
|
|
|
|
|
|
# 返回创建成功的响应
|
|
# 返回创建成功的响应
|
|
return {
|
|
return {
|