更新外键连接
This commit is contained in:
@@ -9,4 +9,5 @@ dependencies = [
|
|||||||
"pip>=26.2.1",
|
"pip>=26.2.1",
|
||||||
"pymysql>=1.2.3",
|
"pymysql>=1.2.3",
|
||||||
"sqlalchemy>=2.0.54",
|
"sqlalchemy>=2.0.54",
|
||||||
|
"uvicorn>=0.53.0",
|
||||||
]
|
]
|
||||||
|
|||||||
@@ -49,7 +49,7 @@ def add_address(
|
|||||||
add:AddRequest,db=Depends(get_db)
|
add:AddRequest,db=Depends(get_db)
|
||||||
):
|
):
|
||||||
d = add.model_dump()
|
d = add.model_dump()
|
||||||
r = add_employment_dao(o=d, db=db)
|
r = add_address_dao(o=d, db=db)
|
||||||
if not r:
|
if not r:
|
||||||
raise HTTPException(status_code=500, detail='服务器繁忙,请稍后添加!')
|
raise HTTPException(status_code=500, detail='服务器繁忙,请稍后添加!')
|
||||||
return EmpResponse(totals=1, data=d)
|
return EmpResponse(totals=1, data=d)
|
||||||
|
|||||||
+3
-2
@@ -52,7 +52,7 @@ def update_orders_dao(id,update_data,db):
|
|||||||
db.commit()
|
db.commit()
|
||||||
return rows
|
return rows
|
||||||
|
|
||||||
def get_orders_dao(
|
def get_emp_dao(
|
||||||
# stuid,
|
# stuid,
|
||||||
name
|
name
|
||||||
,db
|
,db
|
||||||
@@ -92,7 +92,8 @@ def get_orders_dao(
|
|||||||
|
|
||||||
def delete_orders_dao(id,db):
|
def delete_orders_dao(id,db):
|
||||||
try: # 删除有返回值,删除的行数
|
try: # 删除有返回值,删除的行数
|
||||||
rows = db.query(Employments).filter(Employments.id == id).delete()
|
rows = db.query(Employments).filter(Employments.id == id).update( is_deleted=1 )
|
||||||
|
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
print(f'删除失败,{e}')
|
print(f'删除失败,{e}')
|
||||||
db.rollback()
|
db.rollback()
|
||||||
|
|||||||
+1
-1
@@ -4,7 +4,7 @@ from database import Base,engine
|
|||||||
import model
|
import model
|
||||||
app=FastAPI()
|
app=FastAPI()
|
||||||
Base.metadata.create_all(engine)
|
Base.metadata.create_all(engine)
|
||||||
app.include_router(CURD,tags=['就业管理系统'],prefix='/employment')
|
app.include_router(CURD,tags=['就业管理系统'])
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
+9
-4
@@ -45,10 +45,14 @@ class Employments(Base):
|
|||||||
,nullable=False
|
,nullable=False
|
||||||
)
|
)
|
||||||
company_id = Column(Integer
|
company_id = Column(Integer
|
||||||
|
, ForeignKey('Company.id')
|
||||||
, nullable=False
|
, nullable=False
|
||||||
|
|
||||||
)
|
)
|
||||||
|
address_id = Column(Integer
|
||||||
|
, ForeignKey('Address.id')
|
||||||
|
, nullable=False
|
||||||
|
)
|
||||||
salary = Column(Integer)
|
salary = Column(Integer)
|
||||||
|
|
||||||
employment_open_date = Column(DATETIME)
|
employment_open_date = Column(DATETIME)
|
||||||
@@ -67,12 +71,13 @@ class Employments(Base):
|
|||||||
class Company(Base):
|
class Company(Base):
|
||||||
__tablename__ = 'Company'
|
__tablename__ = 'Company'
|
||||||
id = Column(Integer
|
id = Column(Integer
|
||||||
, ForeignKey('Employments.company_id')
|
|
||||||
, primary_key=True
|
, primary_key=True
|
||||||
|
|
||||||
)
|
)
|
||||||
compname = Column(String(50), nullable=False)
|
compname = Column(String(50), nullable=False)
|
||||||
address_id = Column(Integer
|
address_id = Column(Integer
|
||||||
|
# , ForeignKey('Address.id')
|
||||||
, nullable=False
|
, nullable=False
|
||||||
)
|
)
|
||||||
created_date = Column(DATETIME
|
created_date = Column(DATETIME
|
||||||
@@ -85,9 +90,9 @@ class Company(Base):
|
|||||||
is_deleted = Column(Integer, default=0)
|
is_deleted = Column(Integer, default=0)
|
||||||
|
|
||||||
class Address(Base):
|
class Address(Base):
|
||||||
__tablename__ = 'address'
|
__tablename__ = 'Address'
|
||||||
id = Column(Integer
|
id = Column(Integer
|
||||||
, ForeignKey('Company.address_id')
|
|
||||||
, primary_key=True
|
, primary_key=True
|
||||||
|
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -1,6 +0,0 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
class
|
|
||||||
|
|
||||||
|
|
||||||
+6
-11
@@ -7,13 +7,11 @@ class PostRequest(BaseModel):
|
|||||||
compname: str|None=None
|
compname: str|None=None
|
||||||
stuname: str|None=None
|
stuname: str|None=None
|
||||||
stuclass: str|None=None
|
stuclass: str|None=None
|
||||||
|
company_id:int|None=None
|
||||||
address_id: int|None=None
|
address_id: int|None=None
|
||||||
salary: int|None=None
|
salary: int|None=None
|
||||||
employment_open_date:date|None=None
|
employment_open_date:date|None=None
|
||||||
offer_date:date|None=None
|
offer_date:date|None=None
|
||||||
created_date: datetime=Field(default_factory=datetime.now)
|
|
||||||
updated_date: datetime=Field(default_factory=datetime.now)
|
|
||||||
is_deleted: bool = False
|
|
||||||
class EmpResponse(BaseModel):
|
class EmpResponse(BaseModel):
|
||||||
code: int = 200
|
code: int = 200
|
||||||
detail: str = 'OK'
|
detail: str = 'OK'
|
||||||
@@ -22,10 +20,9 @@ class EmpResponse(BaseModel):
|
|||||||
|
|
||||||
|
|
||||||
class CompRequest(BaseModel):
|
class CompRequest(BaseModel):
|
||||||
compname:str|None=None
|
compname:str
|
||||||
created_date: datetime = Field(default_factory=datetime.now)
|
address_id: int | None = None
|
||||||
updated_date: datetime = Field(default_factory=datetime.now)
|
|
||||||
is_deleted: bool = False
|
|
||||||
class CompResponse(BaseModel):
|
class CompResponse(BaseModel):
|
||||||
code: int = 200
|
code: int = 200
|
||||||
detail: str = 'OK'
|
detail: str = 'OK'
|
||||||
@@ -33,10 +30,8 @@ class CompResponse(BaseModel):
|
|||||||
data: str | dict | tuple | list
|
data: str | dict | tuple | list
|
||||||
|
|
||||||
class AddRequest(BaseModel):
|
class AddRequest(BaseModel):
|
||||||
somewhere:str|None=None
|
somewhere:str
|
||||||
created_date: datetime = Field(default_factory=datetime.now)
|
|
||||||
updated_date: datetime = Field(default_factory=datetime.now)
|
|
||||||
is_deleted: bool = False
|
|
||||||
class AddResponse(BaseModel):
|
class AddResponse(BaseModel):
|
||||||
code: int = 200
|
code: int = 200
|
||||||
detail: str = 'OK'
|
detail: str = 'OK'
|
||||||
|
|||||||
@@ -845,6 +845,7 @@ dependencies = [
|
|||||||
{ name = "pip" },
|
{ name = "pip" },
|
||||||
{ name = "pymysql" },
|
{ name = "pymysql" },
|
||||||
{ name = "sqlalchemy" },
|
{ name = "sqlalchemy" },
|
||||||
|
{ name = "uvicorn" },
|
||||||
]
|
]
|
||||||
|
|
||||||
[package.metadata]
|
[package.metadata]
|
||||||
@@ -853,6 +854,7 @@ requires-dist = [
|
|||||||
{ name = "pip", specifier = ">=26.2.1" },
|
{ name = "pip", specifier = ">=26.2.1" },
|
||||||
{ name = "pymysql", specifier = ">=1.2.3" },
|
{ name = "pymysql", specifier = ">=1.2.3" },
|
||||||
{ name = "sqlalchemy", specifier = ">=2.0.54" },
|
{ name = "sqlalchemy", specifier = ">=2.0.54" },
|
||||||
|
{ name = "uvicorn", specifier = ">=0.53.0" },
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
|
|||||||
Reference in New Issue
Block a user