diff --git a/business/model/dao/store.go b/business/model/dao/store.go index a1016f2b9..422959d4d 100644 --- a/business/model/dao/store.go +++ b/business/model/dao/store.go @@ -1343,3 +1343,29 @@ func GetBrandUser(db *DaoDB, brandID int, userID string) (brandUsers []*model.Br err = GetRows(db, &brandUsers, sql, sqlParams) return brandUsers, err } + +func GetBrandBalance(db *DaoDB, brandID int) (result int, err error) { + var ( + balance = &struct { + Balance int + }{} + ) + sql := ` + SELECT a.balance - b.balance balance + FROM ( + SELECT SUM(price) balance + FROM brand_bill + WHERE brand_id = ? + AND bill_type = ? + ) a, + ( + SELECT IFNULL(SUM(price), 0) balance + FROM brand_bill + WHERE brand_id = ? + AND bill_type = ? + ) b + ` + sqlParams := []interface{}{brandID, model.BrandBillTypeIncome, brandID, model.BrandBillTypeExpend} + err = GetRow(db, &balance, sql, sqlParams) + return balance.Balance, err +} diff --git a/business/model/store.go b/business/model/store.go index ee41b49ef..7fd98b040 100644 --- a/business/model/store.go +++ b/business/model/store.go @@ -18,6 +18,17 @@ const ( StoreIsSyncYes = 1 ) +const ( + BrandBillTypeIncome = 1 //收入 + BrandBillTypeExpend = 2 //支出 + + BrandBillFeeTypeSys = 1 //系统划入 + BrandBillFeeTypeCharge = 2 //人工充值 + BrandBillFeeTypeSms = 3 //短信费用 + BrandBillFeeTypeVoice = 4 //语音费用 + BrandBillFeeTypeDelivery = 5 //三方配送费 +) + const ( StoreAuditStatusCreated = 1 StoreAuditStatusOnline = 0