12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 |
- package shanghu
- import (
- "duoduo/apis/shanghu/models"
- "duoduo/models/shanghu"
- "duoduo/tools/app"
- "errors"
- "github.com/gin-gonic/gin"
- "github.com/shopspring/decimal"
- "time"
- )
- // 中奖商品与库存
- func DrawProductCreate(c *gin.Context) {
- var inData models.CreateDrawProductRequest
- var sqlData shanghu.MerchantActiveDrawProduct
- err := c.ShouldBindJSON(&inData)
- if err != nil {
- app.Error(c, 400, err, err.Error())
- return
- }
- if inData.DrawProductName == "" || inData.DrawUrl == "" || inData.TotalStock <= 0 {
- app.Error(c, 500, errors.New("必填参数缺失"), "必填参数缺失")
- return
- }
- if !inData.DrawOdds.GreaterThan(decimal.NewFromFloat(0)) {
- app.Error(c, 500, errors.New("中奖率需要大于0"), "中奖率需要大于0")
- return
- }
- sqlData.CreatedAt = time.Now()
- sqlData.UpdatedAt = time.Now()
- sqlData.DrawOdds = inData.DrawOdds
- sqlData.TotalStock = inData.TotalStock
- sqlData.MerchantOpenID = inData.MerchantOpenID
- sqlData.DrawProductName = inData.DrawProductName
- sqlData.Stock = 0
- sqlData.DrawUrl = inData.DrawUrl
- sqlData.Version = 0
- sqlData.IsPrize = inData.IsPrize
- _, err = sqlData.Create()
- if err != nil {
- app.Error(c, 500, err, err.Error())
- return
- }
- app.OK(c, nil, app.Success)
- }
|