update
This commit is contained in:
parent
05f44c6dfe
commit
4f074561d0
@ -16,6 +16,9 @@ from sqlalchemy import func
|
||||
from sqlalchemy.orm import joinedload
|
||||
from app.models.merchant_product import OperationType, DeliveryType, DeliveryTimeType
|
||||
from app.models.merchant import MerchantInfo
|
||||
from app.models.address import AddressDB, AddressInfo
|
||||
from app.api.deps import get_current_user
|
||||
|
||||
router = APIRouter()
|
||||
|
||||
@router.post("", response_model=ResponseModel)
|
||||
@ -120,25 +123,36 @@ async def list_merchant_products(
|
||||
@router.get("/{product_id}", response_model=ResponseModel)
|
||||
async def get_product(
|
||||
product_id: int,
|
||||
db: Session = Depends(get_db)
|
||||
db: Session = Depends(get_db),
|
||||
current_user: UserDB = Depends(get_current_user)
|
||||
):
|
||||
"""获取产品详情"""
|
||||
product = db.query(MerchantProductDB).filter(
|
||||
MerchantProductDB.id == product_id
|
||||
).first()
|
||||
|
||||
if not product:
|
||||
return error_response(code=404, message="产品不存在")
|
||||
|
||||
product_info = MerchantProductInfo.model_validate(product)
|
||||
|
||||
merchant = MerchantInfo.model_validate(product.merchant)
|
||||
|
||||
|
||||
result = {
|
||||
**product_info.model_dump(),
|
||||
"gift_points" : int(float(product.gift_points_rate) / 10 * float(product.sale_price)),
|
||||
"merchant": merchant.model_dump()
|
||||
}
|
||||
|
||||
if not product:
|
||||
return error_response(code=404, message="产品不存在")
|
||||
# 获取默认地址
|
||||
default_address = db.query(AddressDB).filter(
|
||||
AddressDB.user_id == current_user.userid,
|
||||
AddressDB.is_default == True
|
||||
).first()
|
||||
|
||||
if default_address:
|
||||
result["default_address"] = AddressInfo.model_validate(default_address)
|
||||
|
||||
return success_response(data=result)
|
||||
|
||||
|
||||
BIN
jobs.sqlite
BIN
jobs.sqlite
Binary file not shown.
Loading…
Reference in New Issue
Block a user