feat(server): implement server management handlers and database schema

This commit is contained in:
Chang lue Tsen
2025-08-25 14:06:37 -04:00
parent 1ccbdc18b1
commit ad4f3df74e
108 changed files with 3152 additions and 718 deletions
@@ -65,7 +65,7 @@ func (l *OAuthLoginGetTokenLogic) OAuthLoginGetToken(req *types.OAuthLoginGetTok
)
defer func() {
l.recordLoginStatus(loginStatus, userInfo, ip, userAgent, requestID)
l.recordLoginStatus(loginStatus, userInfo, ip, userAgent, requestID, req.Method)
}()
userInfo, err = l.handleOAuthProvider(req, requestID)
@@ -487,10 +487,11 @@ func (l *OAuthLoginGetTokenLogic) createAuthMethod(db *gorm.DB, userID int64, au
return nil
}
func (l *OAuthLoginGetTokenLogic) recordLoginStatus(loginStatus bool, userInfo *user.User, ip, userAgent, requestID string) {
func (l *OAuthLoginGetTokenLogic) recordLoginStatus(loginStatus bool, userInfo *user.User, ip, userAgent, requestID, authType string) {
if userInfo != nil && userInfo.Id != 0 {
loginLog := log.Login{
Method: authType,
LoginIP: ip,
UserAgent: userAgent,
Success: loginStatus,
@@ -45,6 +45,7 @@ func (l *ResetPasswordLogic) ResetPassword(req *types.ResetPasswordRequest) (res
defer func() {
if userInfo.Id != 0 && loginStatus {
loginLog := log.Login{
Method: "email",
LoginIP: req.IP,
UserAgent: req.UserAgent,
Success: loginStatus,
@@ -53,6 +53,7 @@ func (l *TelephoneLoginLogic) TelephoneLogin(req *types.TelephoneLoginRequest, r
defer func(svcCtx *svc.ServiceContext) {
if userInfo.Id != 0 {
loginLog := log.Login{
Method: "mobile",
LoginIP: ip,
UserAgent: r.UserAgent(),
Success: loginStatus,
@@ -104,6 +104,7 @@ func (l *TelephoneResetPasswordLogic) TelephoneResetPassword(req *types.Telephon
defer func() {
if token != "" && userInfo.Id != 0 {
loginLog := log.Login{
Method: "mobile",
LoginIP: req.IP,
UserAgent: req.UserAgent,
Success: token != "",
@@ -159,6 +159,7 @@ func (l *TelephoneUserRegisterLogic) TelephoneUserRegister(req *types.TelephoneR
defer func() {
if token != "" && userInfo.Id != 0 {
loginLog := log.Login{
Method: "mobile",
LoginIP: req.IP,
UserAgent: req.UserAgent,
Success: token != "",
+1
View File
@@ -43,6 +43,7 @@ func (l *UserLoginLogic) UserLogin(req *types.UserLoginRequest) (resp *types.Log
defer func(svcCtx *svc.ServiceContext) {
if userInfo.Id != 0 {
loginLog := log.Login{
Method: "email",
LoginIP: req.IP,
UserAgent: req.UserAgent,
Success: loginStatus,
+1
View File
@@ -147,6 +147,7 @@ func (l *UserRegisterLogic) UserRegister(req *types.UserRegisterRequest) (resp *
defer func() {
if token != "" && userInfo.Id != 0 {
loginLog := log.Login{
Method: "email",
LoginIP: req.IP,
UserAgent: req.UserAgent,
Success: loginStatus,