package shanghu import ( "duoduo/apis/shanghu/models" "duoduo/models/shanghu" "duoduo/tools/app" "github.com/gin-gonic/gin" "time" ) func CreateMerchant(c *gin.Context) { var inData models.CreateMerchantRequest var sqlData shanghu.Merchant err := c.ShouldBindJSON(&inData) if err != nil { app.Error(c, 400, err, err.Error()) return } sqlData.OpenId = inData.OpenId merchant, err := sqlData.GetMerchant() if err != nil && err.Error() != "record not found" { app.Error(c, 500, err, err.Error()) return } if merchant.ID > 0 { app.OK(c, nil, app.Success) return } sqlData.CreatedAt = time.Now() sqlData.UpdatedAt = time.Now() sqlData.MerchantName = inData.MerchantName sqlData.Area = inData.Area sqlData.Address = inData.Address sqlData.BusinessHours = inData.BusinessHours sqlData.BusinessLicenseUrl = inData.BusinessLicenseUrl sqlData.Consumption = inData.Consumption sqlData.Contacts = inData.Contacts sqlData.DoorHeaderUrl = inData.DoorHeaderUrl sqlData.Industry = inData.Industry sqlData.IndustryCategory = inData.IndustryCategory sqlData.Iphone = inData.Iphone sqlData.NumberPlate = inData.NumberPlate sqlData.OpenId = inData.OpenId _, err = sqlData.Create() if err != nil { app.Error(c, 500, err, err.Error()) return } app.OK(c, nil, app.Success) } func GetMerchant(c *gin.Context) { var inData models.GetMerchantRequest var sqlData shanghu.Merchant err := c.ShouldBindJSON(&inData) if err != nil { app.Error(c, 400, err, err.Error()) return } sqlData.OpenId = inData.OpenId merchant, err := sqlData.GetMerchant() if err != nil { app.Error(c, 500, err, err.Error()) return } app.OK(c, merchant, app.Success) } func MerchantList(c *gin.Context) { var inData models.MerchantListRequest var sqlData shanghu.Merchant 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.NumberPlate = inData.OpenId merchant, count, err := sqlData.GetOpenIdList(pageSize, pageIndex) if err != nil { app.Error(c, 500, err, err.Error()) return } app.PageOK(c, merchant, count, pageIndex, pageSize, app.Success) } func UpdateMerchant(c *gin.Context) { var inData models.UpdateMerchantRequest var sqlData shanghu.Merchant err := c.ShouldBindJSON(&inData) if err != nil { app.Error(c, 400, err, err.Error()) return } sqlData.ID = inData.ID sqlData.MerchantName = inData.MerchantName sqlData.Area = inData.Area sqlData.Address = inData.Address sqlData.BusinessHours = inData.BusinessHours sqlData.BusinessLicenseUrl = inData.BusinessLicenseUrl sqlData.Consumption = inData.Consumption sqlData.Contacts = inData.Contacts sqlData.DoorHeaderUrl = inData.DoorHeaderUrl sqlData.Industry = inData.Industry sqlData.IndustryCategory = inData.IndustryCategory sqlData.Iphone = inData.Iphone sqlData.NumberPlate = inData.NumberPlate err = sqlData.UpdateMerchant() if err != nil { app.Error(c, 400, err, err.Error()) return } app.OK(c, nil, app.Success) }