object.go 997 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. package models
  2. import (
  3. "errors"
  4. "strconv"
  5. "time"
  6. )
  7. var (
  8. Objects map[string]*Object
  9. )
  10. type Object struct {
  11. ObjectId string
  12. Score int64
  13. PlayerName string
  14. }
  15. func init() {
  16. Objects = make(map[string]*Object)
  17. Objects["hjkhsbnmn123"] = &Object{"hjkhsbnmn123", 100, "astaxie"}
  18. Objects["mjjkxsxsaa23"] = &Object{"mjjkxsxsaa23", 101, "someone"}
  19. }
  20. func AddOne(object Object) (ObjectId string) {
  21. object.ObjectId = "astaxie" + strconv.FormatInt(time.Now().UnixNano(), 10)
  22. Objects[object.ObjectId] = &object
  23. return object.ObjectId
  24. }
  25. func GetOne(ObjectId string) (object *Object, err error) {
  26. if v, ok := Objects[ObjectId]; ok {
  27. return v, nil
  28. }
  29. return nil, errors.New("ObjectId Not Exist")
  30. }
  31. func GetAll() map[string]*Object {
  32. return Objects
  33. }
  34. func Update(ObjectId string, Score int64) (err error) {
  35. if v, ok := Objects[ObjectId]; ok {
  36. v.Score = Score
  37. return nil
  38. }
  39. return errors.New("ObjectId Not Exist")
  40. }
  41. func Delete(ObjectId string) {
  42. delete(Objects, ObjectId)
  43. }