ecs/servers/gate/handler/inner_server.go
2025-06-04 18:17:39 +08:00

83 lines
2.0 KiB
Go

package handler
import (
"ecs/proto"
"ecs/proto/old"
"ecs/servers/gate/logic"
"github.com/oylshe1314/framework/http"
"github.com/oylshe1314/framework/util"
)
func (this *InnerHandler) GetSetting(msg *http.Message) {
if this.logger.IsDebugEnabled() {
this.logger.Debugf("[%s] <- Get setting, req: %s", msg.R.RemoteAddr, util.ToJsonString(nil))
}
setting, err := this.gateManager.GetSetting()
if err != nil {
this.logger.Error("Get setting error, ", err)
_ = msg.Reply(proto.RawErrInternalError)
}
var ack = &old.MsgGateSettingGetAck{}
if setting != nil {
ack.GeteSetting = &old.GeteSetting{
Version: setting.Version,
Title: setting.Title,
Content: setting.Content,
LoginClosed: setting.LoginClosed,
Offline: setting.Offline,
TimedClose: setting.TimedClose,
CloseTime: setting.CloseTime,
ClosedList: setting.ClosedList,
WhiteList: setting.WhiteList,
}
}
if this.logger.IsDebugEnabled() {
this.logger.Debugf("[%s] <- Get setting, ack: %s", msg.R.RemoteAddr, util.ToJsonString(ack))
}
_ = msg.Reply(ack)
}
func (this *InnerHandler) SaveSetting(msg *http.Message) {
var req = new(old.MsgGateSettingSaveReq)
var err = msg.Read(req)
if err != nil {
this.logger.Error("Read message error, ", err)
_ = msg.Reply(proto.RawErrMessageError)
return
}
if this.logger.IsDebugEnabled() {
this.logger.Debugf("[%s] <- Save setting, req: %s", msg.R.RemoteAddr, util.ToJsonString(req))
}
err = this.gateManager.SetSetting(&logic.Setting{
Id: 1,
Version: req.Version,
Title: req.Title,
Content: req.Content,
LoginClosed: req.LoginClosed,
Offline: req.Offline,
TimedClose: req.TimedClose,
CloseTime: req.CloseTime,
ClosedList: req.ClosedList,
WhiteList: req.WhiteList,
})
if err != nil {
this.logger.Error("Save setting failed, ", err)
_ = msg.Reply(err)
return
}
if this.logger.IsDebugEnabled() {
this.logger.Debugf("[%s] -> Save setting, ack: %s", msg.R.RemoteAddr, util.ToJsonString(nil))
}
_ = msg.Reply(nil)
}