添加用户购买车加载与存储操作

This commit is contained in:
gazebo
2019-10-21 14:17:30 +08:00
parent 73feffcac2
commit d24b8ea53d
4 changed files with 86 additions and 3 deletions

View File

@@ -633,3 +633,48 @@ func QueryMyDeliveryAddress(ctx *jxcontext.Context) (addressList []*dao.UserDeli
addressList, _, err = dao.QueryUserDeliveryAddress(dao.GetDB(), []string{userID}, 0, model.UnlimitedPageSize)
return addressList, err
}
func SaveUserCart(ctx *jxcontext.Context, userID string, storeID int, cartItems []*model.UserCartItem) (err error) {
if userID == "" || storeID == 0 {
return fmt.Errorf("用户与门店必须要指定")
}
for _, v := range cartItems {
v.UserID = userID
v.StoreID = storeID
dao.WrapAddIDCULEntity(v, userID)
}
db := dao.GetDB()
dao.Begin(db)
defer func() {
if r := recover(); r != nil || err != nil {
dao.Rollback(db)
if r != nil {
panic(r)
}
}
}()
_, err = dao.ExecuteSQL(db, `
DELETE t1
FROM user_cart_item t1
WHERE t1.user_id = ? AND t1.store_id = ?
`, userID, storeID)
if err != nil {
return err
}
err = dao.CreateMultiEntities(dao.GetDB(), cartItems)
return err
}
func LoadUserCart(ctx *jxcontext.Context, userID string, storeID int) (cartItems []*model.UserCartItem, err error) {
if userID == "" || storeID == 0 {
return nil, fmt.Errorf("用户与门店必须要指定")
}
sql := `
SELECT t1.*
FROM user_cart_item t1
WHERE t1.user_id = ? AND t1.store_id = ?
ORDER BY t1.sku_id
`
err = dao.GetRows(dao.GetDB(), &cartItems, sql, userID, storeID)
return cartItems, err
}