package shanghu import ( "duoduo/apis/shanghu/models" "duoduo/models/shanghu" "duoduo/tools/app" "encoding/json" "github.com/gin-gonic/gin" "time" ) // 配置充值 func CreateMerchantRechargeConfig(c *gin.Context) { var inData models.CreateMerchantRechargeRequest var project []int64 var merchantProjectList []shanghu.MerchantRechargeProject err := c.ShouldBindJSON(&inData) if err != nil { app.Error(c, 400, err, err.Error()) return } var merchantRecharge shanghu.MerchantRecharge merchantRecharge.MerchantRechargeName = inData.MerchantRechargeName merchantRecharge.CardProjectData = inData.CardProjectData merchantRecharge.MerchantOpenID = inData.MerchantOpenID merchantRecharge.Amount = inData.Amount merchantRecharge.CreatedAt = time.Now() merchantRecharge.UpdatedAt = time.Now() err = json.Unmarshal([]byte(inData.CardProjectData), &project) if err != nil { app.Error(c, 400, err, err.Error()) return } for _, v := range project { var sql shanghu.MerchantRechargeProject sql.ID = v merchantProject, err := sql.GetMerchantRechargeProjectById() if err != nil { app.Error(c, 400, err, err.Error()) return } merchantProjectList = append(merchantProjectList, merchantProject) } list, err := json.Marshal(merchantProjectList) if err != nil { app.Error(c, 400, err, err.Error()) return } merchantRecharge.CardProjectData = string(list) _, err = merchantRecharge.Create() if err != nil { app.Error(c, 400, err, err.Error()) return } app.OK(c, nil, app.Success) } // 删除充值 func DelMerchantRechargeConfig(c *gin.Context) { var inData models.DelMerchantRechargeRequest var sql shanghu.MerchantRecharge err := c.ShouldBindJSON(&inData) if err != nil { app.Error(c, 400, err, err.Error()) return } sql.ID = inData.Id sql.MerchantOpenID = inData.MerchantOpenID err = sql.DelMerchantRecharge() if err != nil { app.Error(c, 400, err, err.Error()) return } app.OK(c, nil, app.Success) } // 充值列表 func MerchantRechargeConfigList(c *gin.Context) { var inData models.MerchantRechargeListRequest var sqlData shanghu.MerchantRecharge err := c.ShouldBindJSON(&inData) if err != nil { app.Error(c, 400, err, err.Error()) return } var pageSize = 10 var pageIndex = 1 if inData.PageSize != 0 { pageSize = inData.PageSize } if inData.PageIndex != 0 { pageIndex = inData.PageIndex } sqlData.MerchantOpenID = inData.OpenId cashOutList, count, err := sqlData.MerchantRechargeList(pageSize, pageIndex) if err != nil { app.Error(c, 500, err, err.Error()) return } app.PageOK(c, cashOutList, count, pageIndex, pageSize, app.Success) }