| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 |
- package controller
- import (
- "designs/app/common/request"
- "designs/app/common/response"
- "designs/global"
- "designs/model"
- "github.com/gin-gonic/gin"
- )
- func GameList(c *gin.Context) {
- form := request.Check(c, &struct {
- Gid string `form:"gid" binding:""`
- Pid string `form:"pid" binding:""`
- }{})
- query := global.App.DB.Table(model.TableGame)
- if form.Gid != "" {
- query = query.Where("gid", form.Gid)
- }
- if form.Pid != "" {
- query = query.Where("pid", form.Pid)
- }
- var data []model.Game
- err := query.Select("gid", "pid", "gameName").Scan(&data).Error
- if err != nil {
- response.Fail(c, 1001, err.Error())
- return
- }
- type game struct {
- Pid string `json:"pid" gorm:"column:pid; "`
- Gid string `json:"gid" gorm:"column:gid; "`
- GameName string `json:"gameName" gorm:"column:gameName; "`
- }
- res := make(map[string][]game)
- for _, v := range data {
- res[v.Pid] = append(res[v.Pid], game{
- Pid: v.Pid,
- Gid: v.Gid,
- GameName: v.GameName,
- })
- }
- response.Success(c, gin.H{
- "data": res,
- })
- }
|