gms_notices.go 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. package gm_services
  2. import (
  3. "errors"
  4. "gadmin/internal/admin/data"
  5. "gadmin/internal/admin/forms"
  6. "github.com/jinzhu/copier"
  7. )
  8. var (
  9. stopType = "stopServerNotice"
  10. stopText = "服务器将于%s停服维护,为各位玩家带来的不便,敬请谅解。"
  11. errNoticeNotFound = errors.New("广播记录已被删除或不存在")
  12. )
  13. func GetNoticeList(params forms.NoticeListReq) (notices []forms.NoticeItem, err error) {
  14. // var stamps []api.NoticeItem
  15. for _, v := range data.Db {
  16. var item forms.NoticeItem
  17. copier.Copy(&item, &v)
  18. notices = append(notices, item)
  19. }
  20. if notices == nil {
  21. notices = make([]forms.NoticeItem, 0)
  22. }
  23. return
  24. }
  25. func AddNotice(params forms.AddNoticeReq) (notice *data.Notice, err error) {
  26. if params.Type == "" {
  27. params.Type = stopType
  28. }
  29. notice = data.AddNotice(params)
  30. // if params.Content != "" {
  31. //
  32. // if err == nil {
  33. // rpc_share.MsgMap[msgItem.MsgId] = fmt.Sprintf("%s,GM发布了广播任务 %v",
  34. // utils.FormatSecond(time.Now()), msgItem)
  35. // }
  36. // } else {
  37. // err = errors.New("广播内容不能为空")
  38. // }
  39. return
  40. }
  41. func DelNotice(id string) (err error) {
  42. if _, ok := data.Db[id]; ok {
  43. delete(data.Db, id)
  44. } else {
  45. err = errNoticeNotFound
  46. }
  47. return
  48. }