#!/usr/bin/env python3 # -*- coding: utf-8 -*- from fastapi import APIRouter, Request, Depends, Form, Body, File, UploadFile from database import get_db from utils.StripTagsHTMLParser import * from sqlalchemy.orm import Session from datetime import datetime, timedelta import jwt from passlib.context import CryptContext from models import * from sqlalchemy import text, exists, and_, or_, not_ from sqlalchemy.sql import func from models import * from extensions import logger from utils import * import traceback router = APIRouter() # 2.2.3.特殊作业许可及作业过程信息 # 2.2.3.1.特殊作业活动信息表 @router.post('/activity/info', description='提交特殊作业活动信息') async def index( request: Request, db: Session = Depends(get_db), data: dict = Depends(remove_xss_json) ): try: id = get_req_param(data, 'id') info = db.query(DangerWorkerActivityInfo).filter(DangerWorkerActivityInfo.id == id).first() if info is None: new_entity = DangerWorkerActivityInfo(**data) db.add(new_entity) else: db.query(DangerWorkerActivityInfo).filter(DangerWorkerActivityInfo.id == id).update(data) db.commit() return { "code":1, "message":"成功", "data":{} } except Exception as e: traceback.print_exc() return { "code":0, "message":"更新异常,错误信息:" + str(e), "data":{} } # 2.2.3.2.特殊作业票证信息表 @router.post('/ticket/info', description='提交特殊作业票证信息表') async def index( request: Request, db: Session = Depends(get_db), data: dict = Depends(remove_xss_json) ): try: id = get_req_param(data, 'id') info = db.query(DangerWorkerTicketInfo).filter(DangerWorkerTicketInfo.id == id).first() if info is None: new_entity = DangerWorkerTicketInfo(**data) db.add(new_entity) else: db.query(DangerWorkerTicketInfo).filter(DangerWorkerTicketInfo.id == id).update(data) db.commit() return { "code":1, "message":"成功", "data":{} } except Exception as e: traceback.print_exc() return { "code":0, "message":"更新异常,错误信息:" + str(e), "data":{} } # 2.2.3.3.JSA分析信息 @router.post('/jsa/analysis', description='提交气体分析信息') async def index( request: Request, db: Session = Depends(get_db), data: dict = Depends(remove_xss_json) ): try: id = get_req_param(data, 'id') info = db.query(DangerWorkerJsaAnalysis).filter(DangerWorkerJsaAnalysis.id == id).first() if info is None: new_entity = DangerWorkerJsaAnalysis(**data) db.add(new_entity) else: db.query(DangerWorkerJsaAnalysis).filter(DangerWorkerJsaAnalysis.id == id).update(data) db.commit() return { "code":1, "message":"成功", "data":{} } except Exception as e: traceback.print_exc() return { "code":0, "message":"更新异常,错误信息:" + str(e), "data":{} } # 2.2.3.4.作业票和视频关联表 @router.post('/ticket/video', description='提交作业票和视频关联表') async def index( request: Request, db: Session = Depends(get_db), data: dict = Depends(remove_xss_json) ): try: id = get_req_param(data, 'id') info = db.query(DangerWorkerTicketVideo).filter(DangerWorkerTicketVideo.id == id).first() if info is None: new_entity = DangerWorkerTicketVideo(**data) db.add(new_entity) else: db.query(DangerWorkerTicketVideo).filter(DangerWorkerTicketVideo.id == id).update(data) db.commit() return { "code":1, "message":"成功", "data":{} } except Exception as e: traceback.print_exc() return { "code":0, "message":"更新异常,错误信息:" + str(e), "data":{} }