123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122 |
- package http
- import (
- "strconv"
- "time"
- "go-common/app/admin/main/push/model"
- "go-common/library/ecode"
- "go-common/library/log"
- bm "go-common/library/net/http/blademaster"
- )
- func businessList(c *bm.Context) {
- var (
- items []*model.Business
- err error
- count int
- apps []*model.App
- appsMap = make(map[int64]*model.App)
- )
- pager := new(model.Pager)
- if err = c.Bind(pager); err != nil {
- return
- }
- if err = pushSrv.DB.Offset((pager.Pn - 1) * pager.Ps).Limit(pager.Ps).Find(&items).Error; err != nil {
- log.Error("businessList(%d,%d) error(%v)", pager.Pn, pager.Ps, err)
- c.JSON(nil, err)
- return
- }
- if err = pushSrv.DB.Find(&apps).Error; err != nil {
- log.Error("businessList(%d,%d) error(%v)", pager.Pn, pager.Ps, err)
- c.JSON(nil, err)
- return
- }
- for _, app := range apps {
- appsMap[app.ID] = app
- }
- for _, item := range items {
- if appsMap[item.AppID] != nil {
- item.AppName = appsMap[item.AppID].Name
- }
- }
- if err = pushSrv.DB.Model(&model.Business{}).Count(&count).Error; err != nil {
- log.Error("businessList count error(%v)", err)
- c.JSON(nil, err)
- return
- }
- data := map[string]interface{}{
- "data": items,
- "pager": &model.Pager{
- Pn: pager.Pn,
- Ps: pager.Ps,
- Total: count,
- },
- }
- c.JSONMap(data, nil)
- }
- func addBusiness(c *bm.Context) {
- biz := new(model.Business)
- if err := c.Bind(biz); err != nil {
- return
- }
- biz.Token = model.RandomString(32)
- if !pushSrv.DB.Where("app_id=? and name=?", biz.AppID, biz.Name).First(&model.Business{}).RecordNotFound() {
- log.Warn("addBusiness(%+v) repeat", biz)
- c.JSON(nil, ecode.PushRecordRepeatErr)
- return
- }
- if err := pushSrv.DB.Create(biz).Error; err != nil {
- log.Error("addBusiness(%+v) error(%v)", biz, err)
- c.JSON(nil, err)
- return
- }
- c.JSON(nil, nil)
- }
- func businessInfo(c *bm.Context) {
- var (
- req = c.Request.Form
- info = &model.Business{}
- )
- id, _ := strconv.ParseInt(req.Get("id"), 10, 64)
- if id == 0 {
- c.JSON(nil, ecode.RequestErr)
- return
- }
- if err := pushSrv.DB.First(info, id).Error; err != nil {
- log.Error("businessInfo(%d) error(%v)", id, err)
- c.JSON(nil, err)
- return
- }
- c.JSON(info, nil)
- }
- func saveBusiness(c *bm.Context) {
- biz := new(model.Business)
- if err := c.Bind(biz); err != nil {
- c.JSON(nil, ecode.RequestErr)
- return
- }
- if err := pushSrv.DB.Omit("token", "mtime", "ctime", "dtime").Save(biz).Error; err != nil {
- log.Error("saveBusiness(%+v) error(%v)", biz, err)
- c.JSON(nil, err)
- return
- }
- c.JSON(nil, nil)
- }
- func delBusiness(c *bm.Context) {
- id, _ := strconv.ParseInt(c.Request.Form.Get("id"), 10, 64)
- if id == 0 {
- c.JSON(nil, ecode.RequestErr)
- return
- }
- if err := pushSrv.DB.Model(&model.Business{ID: id}).Update("dtime", time.Now().Unix()).Error; err != nil {
- log.Error("delBusiness(%d) error(%v)", id, err)
- c.JSON(nil, err)
- return
- }
- c.JSON(nil, nil)
- }
|