diff --git a/business/model/dao/dao_bill.go b/business/model/dao/dao_bill.go index 499d803b1..c7f980e35 100644 --- a/business/model/dao/dao_bill.go +++ b/business/model/dao/dao_bill.go @@ -129,3 +129,9 @@ func GetUserBillDetail(db *DaoDB, userID string, fromTime, toTime time.Time, pag } return pagedInfo, err } + +// UpdateUserBill 修改用户余额 +func UpdateUserBill(userId string, money int) error { + _, err := ExecuteSQL(GetDB(), `UPDATE user_bill SET account_balance = ? WHERE user_id = ? `, []interface{}{money, userId}...) + return err +} diff --git a/business/model/dao/dao_user.go b/business/model/dao/dao_user.go index 2ac167c4b..22d3c09c0 100644 --- a/business/model/dao/dao_user.go +++ b/business/model/dao/dao_user.go @@ -123,7 +123,7 @@ func GetUsers2(db *DaoDB, keyword string, userID string, pop int, mobile string, sqlParams := []interface{}{} sql := ` SELECT SQL_CALC_FOUND_ROWS DISTINCT - a.* + a.*,ub.account_balance FROM user a` for _, v := range consumeTypes { switch v { @@ -171,6 +171,7 @@ func GetUsers2(db *DaoDB, keyword string, userID string, pop int, mobile string, } } } + sql += ` JOIN user_bill ub ON ub.user_id = a.user_id` sql += ` WHERE a.status = 1 AND a.deleted_at = ?` sqlParams = append(sqlParams, utils.DefaultTimeValue) diff --git a/business/model/user.go b/business/model/user.go index c9876abeb..1ca48f318 100644 --- a/business/model/user.go +++ b/business/model/user.go @@ -54,14 +54,15 @@ type User struct { IDCardNo string `orm:"size(18);column(id_card_no)" json:"idCardNo" compact:"idCardNo"` // 身份证号 Remark string `orm:"size(255)" json:"remark"` - LastLoginAt *time.Time `orm:"null" json:"lastLoginAt"` - LastLoginIP string `orm:"size(64);column(last_login_ip)" json:"lastLoginIP"` - LastLoginType string `orm:"size(16)" json:"lastLoginType"` - PopCode string `json:"popCode"` //推广码 - PopUser string `json:"popUser"` //推广人 - PopCount int `json:"popCount"` //推荐人数 - PopFlag int `json:"popFlag"` //是否已通过推荐获得免费会员 - PopedFlag int `json:"popedFlag"` //被邀请标志(弹框) + LastLoginAt *time.Time `orm:"null" json:"lastLoginAt"` + LastLoginIP string `orm:"size(64);column(last_login_ip)" json:"lastLoginIP"` + LastLoginType string `orm:"size(16)" json:"lastLoginType"` + PopCode string `json:"popCode"` //推广码 + PopUser string `json:"popUser"` //推广人 + PopCount int `json:"popCount"` //推荐人数 + PopFlag int `json:"popFlag"` //是否已通过推荐获得免费会员 + PopedFlag int `json:"popedFlag"` //被邀请标志(弹框) + AccountBalance int64 `json:"-"` // 银行余额 } func (*User) TableUnique() [][]string { diff --git a/controllers/user_balance.go b/controllers/user_balance.go new file mode 100644 index 000000000..1e9fb6c59 --- /dev/null +++ b/controllers/user_balance.go @@ -0,0 +1,32 @@ +package controllers + +import ( + "errors" + "git.rosy.net.cn/jx-callback/business/model/dao" + "github.com/astaxie/beego/server/web" +) + +type UserBalanceController struct { + web.Controller +} + +var DefaultMobile = map[string]string{"18048531223": "ok", "15729837802": "ok"} + +// UpdateUserBalance +// @Title 修改用户账户余额 +// @Description 用户余额 +// @Param token header string true "认证token" +// @Param phone formData string true "发起修改人电话" +// @Param userID formData string true "被修用户Id" +// @Param money formData int false "修改后金额" +// @Success 200 {object} controllers.CallResult +// @Failure 200 {object} controllers.CallResult +// @router /UpdateUserBalance [post] +func (c *UserBalanceController) UpdateUserBalance() { + c.callUpdateUserBalance(func(params *tBalanceUpdateUserBalanceParams) (interface{}, string, error) { + if DefaultMobile[params.Phone] != "ok" { + return nil, "", errors.New("此用户不能修改用户金额") + } + return nil, "", dao.UpdateUserBill(params.UserID, params.Money) + }) +} diff --git a/routers/commentsRouter_controllers.go b/routers/commentsRouter_controllers.go index b57ab7136..41114372c 100644 --- a/routers/commentsRouter_controllers.go +++ b/routers/commentsRouter_controllers.go @@ -1078,4 +1078,13 @@ func init() { MethodParams: param.Make(), Filters: nil, Params: nil}) + // 修改用户账户余额 + beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:UserBalanceController"] = append(beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:UserBalanceController"], + beego.ControllerComments{ + Method: "UpdateUserBalance", + Router: "/UpdateUserBalance", + AllowHTTPMethods: []string{"post"}, + MethodParams: param.Make(), + Filters: nil, + Params: nil}) } diff --git a/routers/router.go b/routers/router.go index cdf28062b..daa22dd74 100644 --- a/routers/router.go +++ b/routers/router.go @@ -67,6 +67,12 @@ func init() { &controllers.QBiDaExpressController{}, ), ), + // 用户账户余额 + web.NSNamespace("/balance", + web.NSInclude( + &controllers.UserBalanceController{}, + ), + ), ) web.AddNamespace(ns) web.AutoRouter(&controllers.WXPayController{})