diff --git a/admin/server/api/v1/enter.go b/admin/server/api/v1/enter.go index 73a6350..fe9a158 100644 --- a/admin/server/api/v1/enter.go +++ b/admin/server/api/v1/enter.go @@ -2,14 +2,14 @@ package v1 import ( "github.com/flipped-aurora/gin-vue-admin/server/api/v1/example" + "github.com/flipped-aurora/gin-vue-admin/server/api/v1/gameUser" "github.com/flipped-aurora/gin-vue-admin/server/api/v1/system" - "github.com/flipped-aurora/gin-vue-admin/server/api/v1/user" ) var ApiGroupApp = new(ApiGroup) type ApiGroup struct { - SystemApiGroup system.ApiGroup - ExampleApiGroup example.ApiGroup - UserApiGroup user.ApiGroup + SystemApiGroup system.ApiGroup + ExampleApiGroup example.ApiGroup + GameUserApiGroup gameUser.ApiGroup } diff --git a/admin/server/api/v1/gameUser/enter.go b/admin/server/api/v1/gameUser/enter.go new file mode 100644 index 0000000..bac0e48 --- /dev/null +++ b/admin/server/api/v1/gameUser/enter.go @@ -0,0 +1,5 @@ +package gameUser + +type ApiGroup struct { + GameUserApi +} diff --git a/admin/server/api/v1/user/user.go b/admin/server/api/v1/gameUser/user.go similarity index 75% rename from admin/server/api/v1/user/user.go rename to admin/server/api/v1/gameUser/user.go index bb1f20c..c81dc6c 100644 --- a/admin/server/api/v1/user/user.go +++ b/admin/server/api/v1/gameUser/user.go @@ -1,4 +1,4 @@ -package user +package gameUser import ( "fmt" @@ -7,23 +7,21 @@ import ( "github.com/flipped-aurora/gin-vue-admin/server/global" "github.com/flipped-aurora/gin-vue-admin/server/model/common/response" us "github.com/flipped-aurora/gin-vue-admin/server/service/user" - "github.com/flipped-aurora/gin-vue-admin/server/utils" "github.com/gin-gonic/gin" "go.uber.org/zap" ) -type UserApi struct{} +type GameUserApi struct{} -func (e *UserApi) GetUserById(c *gin.Context) { +func (e *GameUserApi) GetUserById(c *gin.Context) { var gameUser = &user.GameUser{} err := c.ShouldBindJSON(&gameUser) if err != nil { response.FailWithMessage(err.Error(), c) return } - err = utils.Verify(gameUser, utils.IdVerify) - if err != nil { - response.FailWithMessage(err.Error(), c) + if gameUser.ID < 1 { + response.FailWithMessage(fmt.Sprintf("玩家id不能为0"), c) return } diff --git a/admin/server/api/v1/user/enter.go b/admin/server/api/v1/user/enter.go deleted file mode 100644 index e21f9c7..0000000 --- a/admin/server/api/v1/user/enter.go +++ /dev/null @@ -1,5 +0,0 @@ -package user - -type ApiGroup struct { - UserApi -} diff --git a/admin/server/initialize/router.go b/admin/server/initialize/router.go index 2622e5e..037b2ad 100644 --- a/admin/server/initialize/router.go +++ b/admin/server/initialize/router.go @@ -53,7 +53,7 @@ func Routers() *gin.Engine { systemRouter := router.RouterGroupApp.System exampleRouter := router.RouterGroupApp.Example - userRouter := router.RouterGroupApp.User + gameUserRouter := router.RouterGroupApp.GameUser // 如果想要不使用nginx代理前端网页,可以修改 web/.env.production 下的 // VUE_APP_BASE_API = / // VUE_APP_BASE_PATH = http://localhost @@ -111,7 +111,7 @@ func Routers() *gin.Engine { } { - userRouter.InitUserRouter(PrivateGroup, PublicGroup) + gameUserRouter.InitGameUserRouter(PrivateGroup, PublicGroup) } //插件路由安装 diff --git a/admin/server/router/enter.go b/admin/server/router/enter.go index 33b4a30..5fc7ef0 100644 --- a/admin/server/router/enter.go +++ b/admin/server/router/enter.go @@ -2,14 +2,14 @@ package router import ( "github.com/flipped-aurora/gin-vue-admin/server/router/example" + "github.com/flipped-aurora/gin-vue-admin/server/router/gameUser" "github.com/flipped-aurora/gin-vue-admin/server/router/system" - "github.com/flipped-aurora/gin-vue-admin/server/router/user" ) var RouterGroupApp = new(RouterGroup) type RouterGroup struct { - System system.RouterGroup - Example example.RouterGroup - User user.RouterGroup + System system.RouterGroup + Example example.RouterGroup + GameUser gameUser.GameUserRouter } diff --git a/admin/server/router/user/enter.go b/admin/server/router/gameUser/enter.go similarity index 53% rename from admin/server/router/user/enter.go rename to admin/server/router/gameUser/enter.go index 466b43e..223a7c2 100644 --- a/admin/server/router/user/enter.go +++ b/admin/server/router/gameUser/enter.go @@ -1,11 +1,11 @@ -package user +package gameUser import api "github.com/flipped-aurora/gin-vue-admin/server/api/v1" type RouterGroup struct { - UserRouter + GameUserRouter } var ( - userApi = api.ApiGroupApp.UserApiGroup.UserApi + gameUserApi = api.ApiGroupApp.GameUserApiGroup.GameUserApi ) diff --git a/admin/server/router/gameUser/user.go b/admin/server/router/gameUser/user.go new file mode 100644 index 0000000..6138227 --- /dev/null +++ b/admin/server/router/gameUser/user.go @@ -0,0 +1,18 @@ +package gameUser + +import ( + "github.com/flipped-aurora/gin-vue-admin/server/middleware" + "github.com/gin-gonic/gin" +) + +type GameUserRouter struct{} + +func (s *GameUserRouter) InitGameUserRouter(Router *gin.RouterGroup, RouterPub *gin.RouterGroup) { + _ = RouterPub + router := Router.Group("gameUser").Use(middleware.OperationRecord()) + + { + router.PUT("getUserById", gameUserApi.GetUserById) // 获取玩家信息 + } + +} diff --git a/admin/server/router/user/user.go b/admin/server/router/user/user.go deleted file mode 100644 index 1ce4f2a..0000000 --- a/admin/server/router/user/user.go +++ /dev/null @@ -1,18 +0,0 @@ -package user - -import ( - "github.com/flipped-aurora/gin-vue-admin/server/middleware" - "github.com/gin-gonic/gin" -) - -type UserRouter struct{} - -func (s *UserRouter) InitUserRouter(Router *gin.RouterGroup, RouterPub *gin.RouterGroup) { - _ = RouterPub - router := Router.Group("user").Use(middleware.OperationRecord()) - - { - router.GET("getUserById", userApi.GetUserById) // 获取玩家信息 - } - -} diff --git a/admin/server/router/user/user_test.go b/admin/server/router/user/user_test.go deleted file mode 100644 index 4e9fe4f..0000000 --- a/admin/server/router/user/user_test.go +++ /dev/null @@ -1,21 +0,0 @@ -package user - -import ( - "github.com/gin-gonic/gin" - "github.com/stretchr/testify/assert" - "net/http" - "net/http/httptest" - "testing" -) - -func TestGetUserById(t *testing.T) { - r := gin.Default() - r.GET("/user/getUser", userApi.GetUserById) - - req, _ := http.NewRequest("GET", "/user/getUser?id=123", nil) - w := httptest.NewRecorder() - r.ServeHTTP(w, req) - - assert.Equal(t, http.StatusOK, w.Code) - t.Logf("Response: %s", w.Body.String()) -} diff --git a/admin/server/servicex/service.go b/admin/server/servicex/service.go index d16d473..df47f22 100644 --- a/admin/server/servicex/service.go +++ b/admin/server/servicex/service.go @@ -2,6 +2,7 @@ package servicex import ( "fmt" + "game/common/gameService" "game/common/proto/pb" "game/common/serviceName" config "github.com/flipped-aurora/gin-vue-admin/server/configx" @@ -13,7 +14,7 @@ import ( var servers []*AdminService type AdminService struct { - *service.NatsService + *gameService.GameService } func GetService() *AdminService { @@ -42,11 +43,10 @@ func Stop() { } func newService(serviceId int) *AdminService { - var err error s := new(AdminService) sName := fmt.Sprintf("%v-%d", serviceName.Admin, serviceId) - if s.NatsService, err = service.NewNatsService(&service.InitNatsServiceParams{ + s.GameService = gameService.NewGameService(&service.InitNatsServiceParams{ EtcdAddress: config.Cfg.Etcd.Address, EtcdUsername: "", EtcdPassword: "", @@ -56,10 +56,7 @@ func newService(serviceId int) *AdminService { OnFunc: s, TypeId: int(pb.ServiceTypeId_STI_Admin), Version: config.Cfg.BuildDate, - }); err != nil { - log.Fatal(err.Error()) - return nil - } + }, &config.Cfg.Redis) //s.initRpcProcessor() s.OnInit() diff --git a/admin/web/src/api/gameUser.js b/admin/web/src/api/gameUser.js index 9650ecc..a0e6bad 100644 --- a/admin/web/src/api/gameUser.js +++ b/admin/web/src/api/gameUser.js @@ -4,8 +4,8 @@ import request from '@/utils/request' export function getUserById(params) { return request({ - url: '/user/getUserById', - method: 'get', + url: '/gameUser/getUserById', + method: 'put', data: params }) } \ No newline at end of file diff --git a/admin/web/src/pathInfo.json b/admin/web/src/pathInfo.json index f200f9d..6388372 100644 --- a/admin/web/src/pathInfo.json +++ b/admin/web/src/pathInfo.json @@ -18,7 +18,6 @@ "/src/view/example/index.vue": "Example", "/src/view/example/upload/scanUpload.vue": "scanUpload", "/src/view/example/upload/upload.vue": "Upload", - "/src/view/gameuser/gggg/user.vue": "User", "/src/view/gameuser/index.vue": "Index", "/src/view/init/index.vue": "Init", "/src/view/layout/aside/asideComponent/asyncSubmenu.vue": "AsyncSubmenu", @@ -70,7 +69,6 @@ "/src/view/systemTools/installPlugin/index.vue": "Index", "/src/view/systemTools/pubPlug/pubPlug.vue": "PubPlug", "/src/view/systemTools/system/system.vue": "Config", - "/src/view/test/test.vue": "Test", "/src/plugin/announcement/form/info.vue": "InfoForm", "/src/plugin/announcement/view/info.vue": "Info", "/src/plugin/email/view/index.vue": "Email" diff --git a/admin/web/src/view/gameuser/index.vue b/admin/web/src/view/gameuser/index.vue index 7074308..28ed655 100644 --- a/admin/web/src/view/gameuser/index.vue +++ b/admin/web/src/view/gameuser/index.vue @@ -1,26 +1,146 @@ - - - - - - - - - - - - - - - - - - - - - + + + + + + + diff --git a/common/model/user/userAccount.go b/common/model/user/userAccount.go index c751f84..fc184a0 100644 --- a/common/model/user/userAccount.go +++ b/common/model/user/userAccount.go @@ -20,7 +20,7 @@ type UserAccount struct { DeviceID string `gorm:"type:varchar(64);index" json:"device_id"` // 设备ID LastLoginIP string `gorm:"type:varchar(45)" json:"last_login_ip"` // 最后登录IP(支持IPv6) LastLoginTime time.Time `json:"last_login_time"` // 最后登录时间 - Status int `gorm:"type:tinyint;default:1" json:"status"` // 账号状态 1-正常 2-冻结 3-封禁 + Status int `gorm:"type:tinyint;default:1" json:"status"` // 账号状态 1:正常 2:冻结 3:封禁 4:白名单 RegisterIP string `gorm:"type:varchar(45)" json:"register_ip"` // 注册IP RegisterTime time.Time `gorm:"type:TIMESTAMP;default:CURRENT_TIMESTAMP" json:"register_time"` // 注册时间 } diff --git a/server/db/operation/userAccount.go b/server/db/operation/userAccount.go index 28ff0ef..5c9452e 100644 --- a/server/db/operation/userAccount.go +++ b/server/db/operation/userAccount.go @@ -4,8 +4,8 @@ import ( "context" "errors" "fmt" - "game/common/model" "game/common/model/user" + "game/common/modelOperator" "game/common/proto/pb" "game/common/serialization" "game/common/utils" @@ -19,7 +19,7 @@ type UserAccountOp struct { logDb *gorm.DB db *gorm.DB accountRedis *redis.Client - accountOp *model.TableOp[user.UserAccount] + accountOp *modelOperator.TableOp[user.UserAccount] } func NewUserAccountOp() *UserAccountOp { @@ -27,7 +27,7 @@ func NewUserAccountOp() *UserAccountOp { logDb: LogDB, db: UserDB, accountRedis: AccountRedis, - accountOp: model.NewTableOp[user.UserAccount](UserDB, AccountRedis), + accountOp: modelOperator.NewTableOp[user.UserAccount](UserDB, AccountRedis), } } @@ -48,7 +48,7 @@ func (s *UserAccountOp) GetUserAccount(username string) (*user.UserAccount, pb.E // 从db中查到后写入redis,并建立索引 if us.Username != "" && us.ID > 0 { _, _ = s.accountOp.Update(us.ID, serialization.StructToMap(us)) - _ = s.accountRedis.Set(context.Background(), s.redisKey(username), us.ID, model.TableExpire).Err() + _ = s.accountRedis.Set(context.Background(), s.redisKey(username), us.ID, modelOperator.TableExpire).Err() } return us, pb.ErrCode_OK } else { @@ -80,7 +80,7 @@ func (s *UserAccountOp) CreateUserAccount(us *user.UserAccount) (*user.UserAccou return nil, code } // 建立索引 - _ = s.accountRedis.Set(context.Background(), s.redisKey(us.Username), us.ID, model.TableExpire).Err() + _ = s.accountRedis.Set(context.Background(), s.redisKey(us.Username), us.ID, modelOperator.TableExpire).Err() return us, pb.ErrCode_OK } @@ -95,7 +95,7 @@ func (s *UserAccountOp) UpdateUserPassword(us *user.UserAccount) (*user.UserAcco var code pb.ErrCode us, code = s.accountOp.Update(us.ID, map[string]any{"password": hashedPassword}) if code != pb.ErrCode_OK { - _ = s.accountRedis.Expire(context.Background(), s.redisKey(us.Username), model.TableExpire).Err() + _ = s.accountRedis.Expire(context.Background(), s.redisKey(us.Username), modelOperator.TableExpire).Err() } return us, code }