package financial import ( "git.rosy.net.cn/baseapi/utils" "git.rosy.net.cn/jx-callback/business/jxutils/jxcontext" "git.rosy.net.cn/jx-callback/business/model" "git.rosy.net.cn/jx-callback/business/model/dao" ) func AddBillIncome(db *dao.DaoDB, billID int64, billType, incomePrice int) (err error) { billIncome := &model.BillIncome{ BillID: billID, Type: billType, IncomePrice: incomePrice, } dao.WrapAddIDCULEntity(billIncome, jxcontext.AdminCtx.GetUserName()) return dao.CreateEntity(db, billIncome) } func AddBillExpend(db *dao.DaoDB, billID int64, billType, expendPrice int) (err error) { billExpend := &model.BillExpend{ BillID: billID, Type: billType, ExpendPrice: expendPrice, } dao.WrapAddIDCULEntity(billExpend, jxcontext.AdminCtx.GetUserName()) return dao.CreateEntity(db, billExpend) } func AddUserBill(db *dao.DaoDB, billID int64, userID string) (err error) { userBillInsert := &model.UserBill{ BillID: billID, UserID: userID, } dao.WrapAddIDCULDEntity(userBillInsert, jxcontext.AdminCtx.GetUserName()) return dao.CreateEntity(db, userBillInsert) } func GetUserBillDetail(ctx *jxcontext.Context, userID, fromTime, toTime string, pageSize, offset int) (pagedInfo *model.PagedInfo, err error) { return dao.GetUserBillDetail(dao.GetDB(), userID, utils.Str2Time(fromTime), utils.Str2Time(toTime), pageSize, offset) } func AddExpendUpdateAccount(db *dao.DaoDB, userBill *model.UserBill, billType, price int) (err error) { //1、账户支出增加一条记录 err = AddBillExpend(db, userBill.BillID, billType, price) if err != nil { return err } //2、账户表余额减少相应值 userBill.AccountBalance -= price _, err = dao.UpdateEntity(db, userBill, "AccountBalance") return err } func AddIncomeUpdateAccount(db *dao.DaoDB, userBill *model.UserBill, billType, price int) (err error) { //2、账户收入增加一条记录 err = AddBillIncome(db, userBill.BillID, billType, price) if err != nil { return err } //1、根据任务剩余数量退钱到账户余额中 userBill.AccountBalance += price _, err = dao.UpdateEntity(db, userBill, "AccountBalance") return err }