41 lines
1.1 KiB
Python
41 lines
1.1 KiB
Python
from homework.day23.model.order_model import *
|
|||
|
|
from sqlalchemy import *
|
||
|
|
def add_order_dao(o ,db):
|
||
|
|
try:
|
||
|
|
ord1 = Order(**o)
|
||
|
|
db.add(ord1)
|
||
|
|
except:
|
||
|
|
db.rollback()
|
||
|
|
return False
|
||
|
|
else:
|
||
|
|
db.commit()
|
||
|
|
return True
|
||
|
|
|
||
|
|
def get_order_dao(id,title,p,pz,db):
|
||
|
|
r = db.query(Order).filter(or_(Order.title == title, Order.id == id)).\
|
||
|
|
offset((p - 1) * pz).limit(pz).all()
|
||
|
|
if r:
|
||
|
|
return [{'Order_id': i.id, 'Order_title': i.title, 'userid': i.userid,
|
||
|
|
'create_date': i.create_date, 'update_date': i.update_date} for i in r]
|
||
|
|
|
||
|
|
def del_order_dao(id,db):
|
||
|
|
try:
|
||
|
|
rows = db.query(Order).filter(Order.id == id).delete()
|
||
|
|
except:
|
||
|
|
db.rollback()
|
||
|
|
rows = 0
|
||
|
|
else:
|
||
|
|
db.commit()
|
||
|
|
finally:
|
||
|
|
return rows
|
||
|
|
|
||
|
|
def update_order_dao(id,o,db):
|
||
|
|
try:
|
||
|
|
rows = db.query(Order).filter(Order.id == id ).update(o.model_dump(exclude_unset=True))
|
||
|
|
except:
|
||
|
|
db.rollback()
|
||
|
|
rows = 0
|
||
|
|
else:
|
||
|
|
db.commit()
|
||
|
|
finally:
|
||
|
|
return rows
|