创建user模块

This commit is contained in:
wcq 2023-06-12 11:27:47 +08:00
parent fd61ecd37c
commit f98fa2f4de
9 changed files with 32 additions and 9 deletions

View File

@ -8,4 +8,11 @@
<orderEntry type="jdk" jdkName="Python 3.9 (rate-sys-template)" jdkType="Python SDK" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
<component name="PyNamespacePackagesService">
<option name="namespacePackageFolders">
<list>
<option value="$MODULE_DIR$/Mods" />
</list>
</option>
</component>
</module>

View File

@ -44,7 +44,11 @@ def company_rate_query(req: Schemas.CompanyRateQueryReq, db: Session = Depends(c
items = [Schemas.CompanyRateInfo(**item.to_dict()) for item in query]
return Schemas.CompanyRateQueryRes(count=count, items=items)
@router.post("/company_rate/query", summary="查询公司评级数据", response_model=Schemas.CompanyRateQueryRes)
def company_rate_query(req: Schemas.CompanyRateQueryReq, db: Session = Depends(common_db.get_db)):
count, query = Crud.company_rate_query(db, req)
items = [Schemas.CompanyRateInfo(**item.to_dict()) for item in query]
return Schemas.CompanyRateQueryRes(count=count, items=items)
@router.post("/company_rate/query_common", summary="通用查询公司评级数据",
response_model=Schemas.CompanyRateQueryRes)
def company_rate_query_common(req: QueryParams, db: Session = Depends(common_db.get_db)):

View File

@ -1,7 +1,8 @@
from fastapi import APIRouter
from .FormFile import Router as FormFileRouter
from .CompanyRate import Router as CompanyRateRouter
from .CompanyUser import Router as CompanyUserRouter
from .User.CompanyUser import Router as CompanyUserRouter
router = APIRouter(prefix="")
router.include_router(FormFileRouter.router)
router.include_router(CompanyRateRouter.router)

View File

@ -16,7 +16,7 @@ class CompanyUser(common_db.Base):
phone = Column(String(255), comment="手机号")
company_name = Column(String(255), comment="公司名称")
passwd = Column(String(255), comment="hash密码")
verified = Column(Boolean, default=False, comment="是否通过验证")
business_license= Column(Integer,comment="营业执照文件ID")
create_time = Column(DateTime, server_default=func.now(), comment='创建时间')
def to_dict(self):

View File

@ -3,15 +3,12 @@ from sqlalchemy.orm import Session
from Context.common import common_db, conf, email_code_verify, company_user_auth_util, tianyancha_api, \
CompanyUserTokenDataModel
from Utils.EmailUtils import email_check
from Utils.PasswdUtils import get_encrypt_password, decode_b64_pwd
from Utils.ValidateUtil import Validate
from Utils.VerifyCodeUtils import EmailVerifyType
from . import Schemas
from . import Crud
from Utils.SqlAlchemyUtils import QueryParams, query_common
from .Models import CompanyUser
from ..FormFile import Crud as FormFileCrud
from Mods.FormFile import Crud as FormFileCrud
from Utils.OcrUtils import ocr_business_license
router = APIRouter(tags=["企业用户"])

View File

@ -9,7 +9,7 @@ class CompanyUserInfo(BaseModel):
phone: Optional[str]
company_name: Optional[str]
passwd: Optional[str]
verified: Optional[bool]
business_license: Optional[int]
create_time: Optional[datetime]

View File

@ -2,6 +2,7 @@ from typing import Literal, List, Any, Optional
from pydantic import BaseModel
from sqlalchemy import create_engine, Column, and_, asc, desc, func
from sqlalchemy.ext.asyncio import create_async_engine, async_sessionmaker
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm import sessionmaker, Session, Query
from sqlalchemy_utils import database_exists, create_database
@ -15,6 +16,7 @@ class SqlalchemyConnect:
self.password = password
self.db = db
self.engine = self.init_engine()
self.async_engine = self.init_async_engine()
def init_engine(self):
engine = create_engine(
@ -54,6 +56,17 @@ class SqlalchemyConnect:
self.create_db()
self.Base.metadata.create_all(bind=self.engine)
def init_async_engine(self):
async_engine = create_async_engine(
f"mysql+aiomysql://{self.user}:{self.password}@{self.host}/{self.db}?charset=utf8mb4", pool_recycle=3600 * 4
)
return async_engine
def get_async_db(self) -> sessionmaker:
async_session = async_sessionmaker(self.async_engine, expire_on_commit=False)
db = async_session()
yield db
# 通用查询接口

View File

@ -20,4 +20,5 @@ blessed~=1.20.0
watchdog~=3.0.0
codefind~=0.1.3
sqlalchemy-utils~=0.41.1
pandas~=2.0.2
pandas~=2.0.2
aiomysql!=0.2.0