add gunicorn.py
This commit is contained in:
parent
32f2539d72
commit
953bb9ab4b
19
.env
19
.env
|
|
@ -1,6 +1,6 @@
|
|||
|
||||
|
||||
AUTH_SECRET_KEY = "09d25e094faa6ca2556c818166b7a9563b93f7099f6f0f4caa6cf63b88e8d3e7"
|
||||
AUTH_SECRET_KEY = ""
|
||||
AUTH_ALGORITHM = "HS256"
|
||||
AUTH_ACCESS_TOKEN_EXPIRE_MINUTES = 43201
|
||||
AUTH_REFRESH_TOKEN_EXPIRE_MINUTES = 43200
|
||||
|
|
@ -10,16 +10,15 @@ TEST_VAR = 10
|
|||
|
||||
|
||||
# mongo
|
||||
MONGO_URL = "mongodb://bridge_user:ky2io8XRCI43vO8j@192.168.15.76:27270/bridge"
|
||||
MONGO_DB = 'bridge'
|
||||
AUTH_DB = 'auth'
|
||||
|
||||
PROD_MONGO_URL = "mongodb://bridge_user:ky2io8XRCI43vO8j@192.168.15.76:27270/bridge"
|
||||
PROD_MONGO_DB = 'bridge'
|
||||
PROD_AUTH_DB = 'auth'
|
||||
MONGO_DB = ''
|
||||
AUTH_DB = ''
|
||||
|
||||
PROD_MONGO_URL = ""
|
||||
PROD_MONGO_DB = ''
|
||||
PROD_AUTH_DB = ''
|
||||
MONGO_URL=''
|
||||
IS_PROD = False
|
||||
PREFIX_API_URL = '/api/v1'
|
||||
FILE_SYSTEM_BASE_URL = 'https://testnet.hacoupian.net/api/scm/v1/file'
|
||||
FILE_SYSTEM_BASE_URL = 'https://google.com'
|
||||
|
||||
LINKER_URL = 'http://hcpn.ir/l'
|
||||
LINKER_URL = ''
|
||||
|
|
|
|||
|
|
@ -5,29 +5,29 @@ from sqlalchemy.orm import relationship
|
|||
from badmin.models.model import Base
|
||||
|
||||
|
||||
class Admin(Base):
|
||||
__tablename__ = 'account_admin'
|
||||
|
||||
id = Column(BigInteger, primary_key=True, server_default=sqlalchemy.text(
|
||||
"nextval('account_admin_id_seq'::regclass)"))
|
||||
first_name = Column(String(128))
|
||||
last_name = Column(String(128))
|
||||
full_name = Column(String(128), nullable=True)
|
||||
email = Column(String(64), unique=True)
|
||||
role_id = Column(Integer,ForeignKey('account_role.id',),nullable=True)
|
||||
role = relationship('Role', remote_side=role_id)
|
||||
gender = Column(SmallInteger, default=3)
|
||||
is_active = Column(Boolean, default=True)
|
||||
phone = Column(String(32), nullable=True)
|
||||
address = Column(String(512), nullable=True)
|
||||
password = Column(String(512))
|
||||
|
||||
|
||||
class Role(Base):
|
||||
__tablename__ = 'account_role'
|
||||
|
||||
id = Column(BigInteger, primary_key=True, server_default=sqlalchemy.text(
|
||||
"nextval('account_role_id_seq'::regclass)"))
|
||||
title = Column(String(128))
|
||||
count = Column(Integer, default=0)
|
||||
key = Column(String(128))
|
||||
# class Admin(Base):
|
||||
# __tablename__ = 'account_admin'
|
||||
#
|
||||
# id = Column(BigInteger, primary_key=True, server_default=sqlalchemy.text(
|
||||
# "nextval('account_admin_id_seq'::regclass)"))
|
||||
# first_name = Column(String(128))
|
||||
# last_name = Column(String(128))
|
||||
# full_name = Column(String(128), nullable=True)
|
||||
# email = Column(String(64), unique=True)
|
||||
# role_id = Column(Integer,ForeignKey('account_role.id',),nullable=True)
|
||||
# role = relationship('Role', remote_side=role_id)
|
||||
# gender = Column(SmallInteger, default=3)
|
||||
# is_active = Column(Boolean, default=True)
|
||||
# phone = Column(String(32), nullable=True)
|
||||
# address = Column(String(512), nullable=True)
|
||||
# password = Column(String(512))
|
||||
#
|
||||
#
|
||||
# class Role(Base):
|
||||
# __tablename__ = 'account_role'
|
||||
#
|
||||
# id = Column(BigInteger, primary_key=True, server_default=sqlalchemy.text(
|
||||
# "nextval('account_role_id_seq'::regclass)"))
|
||||
# title = Column(String(128))
|
||||
# count = Column(Integer, default=0)
|
||||
# key = Column(String(128))
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load Diff
|
|
@ -9,7 +9,7 @@ from config import conf
|
|||
from database import get_db
|
||||
from map import routes
|
||||
from utils import generateRouter, current_user, get_current_active_user, getUser
|
||||
from badmin.models.main import Admin
|
||||
from badmin.models.model import AccountAdmin
|
||||
from core.auth.auth import PasswordMaker
|
||||
from fastapi import Request
|
||||
|
||||
|
|
@ -29,7 +29,7 @@ def login(body: dict = Body(...), db=Depends(get_db)):
|
|||
expire = datetime.utcnow() + timedelta(days=10)
|
||||
username = body.get('email')
|
||||
password = body.get('password')
|
||||
user = db.query(Admin).filter(Admin.email == username).first()
|
||||
user = db.query(AccountAdmin).filter(AccountAdmin.email == username).first()
|
||||
if not user:
|
||||
raise HTTPException(status_code=422, detail='user not found!!')
|
||||
if not PasswordMaker.verify_password(plain_password=password, hashed_password=user.password):
|
||||
|
|
|
|||
4
main.py
4
main.py
|
|
@ -6,7 +6,7 @@ from fastapi.middleware.cors import CORSMiddleware
|
|||
from config import conf
|
||||
import badmin.urls
|
||||
from database import get_db
|
||||
from badmin.models.main import Admin
|
||||
from badmin.models.model import AccountAdmin
|
||||
from core.auth.auth import PasswordMaker
|
||||
|
||||
|
||||
|
|
@ -17,7 +17,7 @@ def ping():
|
|||
|
||||
@app.get('/create')
|
||||
def create_user(db=Depends(get_db)):
|
||||
new_admin = Admin(
|
||||
new_admin = AccountAdmin(
|
||||
first_name='Admin',
|
||||
last_name='Supper',
|
||||
email='admin@irelex.com',
|
||||
|
|
|
|||
21
map.py
21
map.py
|
|
@ -14,7 +14,28 @@ routes = {
|
|||
'auth-group': 'AuthGroup',
|
||||
'const': 'ConstConst',
|
||||
'contact': 'ContactContact',
|
||||
'contact-address': 'ContactAddres',
|
||||
'contact-email': 'ContactEmail',
|
||||
'contact-person': 'ContactPerson',
|
||||
'contact-phone': 'ContactPhone',
|
||||
'contact-website': 'ContactWebsite',
|
||||
'time-entry': 'BillingBillTimeEntry',
|
||||
'expense-category': 'ActivityExpensecategory',
|
||||
'expense': 'ActivityExpenseentry',
|
||||
'matter': 'MatterMatter',
|
||||
'note': 'NoteNote',
|
||||
'country': 'DictionaryCountry',
|
||||
'currency': 'DictionaryCurrency',
|
||||
'subscription-plan': 'SubscriptionPlan',
|
||||
'subscription-contract': 'SubscriptionContract',
|
||||
'subscription-rule': 'SubscriptionPlanpricerule',
|
||||
'subscription': 'SubscriptionSubscription',
|
||||
'subscription-transaction': 'SubscriptionTransaction',
|
||||
'subscription-payment': 'SubscriptionPayment',
|
||||
'subscription-contract-user': 'SubscriptionContractUser',
|
||||
'task': 'TaskTasklist',
|
||||
'task-type': 'TaskTasktype',
|
||||
'bank-account': 'BankAccountBankaccount',
|
||||
'practice-area': 'DictionaryPracticearea',
|
||||
|
||||
}
|
||||
|
|
|
|||
4
utils.py
4
utils.py
|
|
@ -9,7 +9,7 @@ from starlette.routing import BaseRoute
|
|||
|
||||
import app
|
||||
import schema
|
||||
from badmin.models.main import Admin
|
||||
from badmin.models.model import AccountAdmin
|
||||
from config import conf
|
||||
from database import get_db
|
||||
|
||||
|
|
@ -40,7 +40,7 @@ async def current_user(token: str = Depends(schema.oauth2)):
|
|||
|
||||
if username is None:
|
||||
raise credentials_exception
|
||||
user = next(get_db()).query(Admin).filter(Admin.id == username).first()
|
||||
user = next(get_db()).query(AccountAdmin).filter(AccountAdmin.id == username).first()
|
||||
app.app.state.user = user
|
||||
except (JWTError, ValidationError):
|
||||
raise credentials_exception
|
||||
|
|
|
|||
Loading…
Reference in New Issue