package user import ( "duoduo/models/mysql" "duoduo/models/user" "duoduo/tools" "duoduo/tools/app" "github.com/shopspring/decimal" "github.com/gin-gonic/gin" ) func AdminAmount(c *gin.Context) { var inData user.AdminAmountResponse var adminOrder mysql.AdminTransRecords var order mysql.Order err := c.ShouldBindJSON(&inData) if err != nil { app.Error(c, 400, err, err.Error()) return } availableAmount, err := order.GetAdminAvailable() if err != nil { app.Error(c, 500, err, err.Error()) return } //已付款金额 adminTrans, err := adminOrder.GetTrans() if err != nil { app.Error(c, 500, err, err.Error()) return } adminOrder.Amount = availableAmount.Add(availableAmount.Mul(decimal.NewFromFloat(0.15)).Round(2)).Sub(adminTrans) adminOrder.CreateTime = tools.GetCurrntTimeStr() adminOrder.UpdateTime = tools.GetCurrntTimeStr() if adminOrder.Amount.Cmp(decimal.NewFromInt(0)) <= 0 { app.Error(c, 500, err, "金额小于等于0") return } adminOrder.Create() app.OK(c, nil, app.Success) }