refactor: 更新项目引用路径从perfect-panel/ppanel-server到perfect-panel/server

feat: 添加版本和构建时间变量
fix: 修正短信队列类型注释错误
style: 清理未使用的代码和测试文件
docs: 更新安装文档中的下载链接
chore: 迁移数据库脚本添加日志和订阅配置
This commit is contained in:
2025-10-13 01:33:03 -07:00
parent 393b42f35a
commit c582087c0f
974 changed files with 23609 additions and 23398 deletions
@@ -4,11 +4,11 @@ import (
"context"
"encoding/json"
"github.com/perfect-panel/ppanel-server/internal/svc"
"github.com/perfect-panel/ppanel-server/internal/types"
"github.com/perfect-panel/ppanel-server/pkg/logger"
"github.com/perfect-panel/ppanel-server/pkg/tool"
"github.com/perfect-panel/ppanel-server/pkg/xerr"
"github.com/perfect-panel/server/internal/svc"
"github.com/perfect-panel/server/internal/types"
"github.com/perfect-panel/server/pkg/logger"
"github.com/perfect-panel/server/pkg/tool"
"github.com/perfect-panel/server/pkg/xerr"
"github.com/pkg/errors"
)
@@ -18,7 +18,7 @@ type GetAuthMethodConfigLogic struct {
svcCtx *svc.ServiceContext
}
// Get auth method config
// NewGetAuthMethodConfigLogic Get auth method config
func NewGetAuthMethodConfigLogic(ctx context.Context, svcCtx *svc.ServiceContext) *GetAuthMethodConfigLogic {
return &GetAuthMethodConfigLogic{
Logger: logger.WithContext(ctx),
@@ -4,11 +4,11 @@ import (
"context"
"encoding/json"
"github.com/perfect-panel/ppanel-server/internal/svc"
"github.com/perfect-panel/ppanel-server/internal/types"
"github.com/perfect-panel/ppanel-server/pkg/logger"
"github.com/perfect-panel/ppanel-server/pkg/tool"
"github.com/perfect-panel/ppanel-server/pkg/xerr"
"github.com/perfect-panel/server/internal/svc"
"github.com/perfect-panel/server/internal/types"
"github.com/perfect-panel/server/pkg/logger"
"github.com/perfect-panel/server/pkg/tool"
"github.com/perfect-panel/server/pkg/xerr"
"github.com/pkg/errors"
)
@@ -3,11 +3,11 @@ package authMethod
import (
"context"
"github.com/perfect-panel/ppanel-server/pkg/email"
"github.com/perfect-panel/server/pkg/email"
"github.com/perfect-panel/ppanel-server/internal/svc"
"github.com/perfect-panel/ppanel-server/internal/types"
"github.com/perfect-panel/ppanel-server/pkg/logger"
"github.com/perfect-panel/server/internal/svc"
"github.com/perfect-panel/server/internal/types"
"github.com/perfect-panel/server/pkg/logger"
)
type GetEmailPlatformLogic struct {
@@ -3,11 +3,11 @@ package authMethod
import (
"context"
"github.com/perfect-panel/ppanel-server/pkg/sms"
"github.com/perfect-panel/server/pkg/sms"
"github.com/perfect-panel/ppanel-server/internal/svc"
"github.com/perfect-panel/ppanel-server/internal/types"
"github.com/perfect-panel/ppanel-server/pkg/logger"
"github.com/perfect-panel/server/internal/svc"
"github.com/perfect-panel/server/internal/types"
"github.com/perfect-panel/server/pkg/logger"
)
type GetSmsPlatformLogic struct {
@@ -4,11 +4,11 @@ import (
"context"
"fmt"
"github.com/perfect-panel/ppanel-server/internal/svc"
"github.com/perfect-panel/ppanel-server/internal/types"
"github.com/perfect-panel/ppanel-server/pkg/email"
"github.com/perfect-panel/ppanel-server/pkg/logger"
"github.com/perfect-panel/ppanel-server/pkg/xerr"
"github.com/perfect-panel/server/internal/svc"
"github.com/perfect-panel/server/internal/types"
"github.com/perfect-panel/server/pkg/email"
"github.com/perfect-panel/server/pkg/logger"
"github.com/perfect-panel/server/pkg/xerr"
"github.com/pkg/errors"
)
@@ -4,11 +4,11 @@ import (
"context"
"fmt"
"github.com/perfect-panel/ppanel-server/internal/svc"
"github.com/perfect-panel/ppanel-server/internal/types"
"github.com/perfect-panel/ppanel-server/pkg/logger"
"github.com/perfect-panel/ppanel-server/pkg/sms"
"github.com/perfect-panel/ppanel-server/pkg/xerr"
"github.com/perfect-panel/server/internal/svc"
"github.com/perfect-panel/server/internal/types"
"github.com/perfect-panel/server/pkg/logger"
"github.com/perfect-panel/server/pkg/sms"
"github.com/perfect-panel/server/pkg/xerr"
"github.com/pkg/errors"
)
@@ -4,15 +4,15 @@ import (
"context"
"encoding/json"
"github.com/perfect-panel/ppanel-server/initialize"
"github.com/perfect-panel/ppanel-server/internal/model/auth"
"github.com/perfect-panel/ppanel-server/internal/svc"
"github.com/perfect-panel/ppanel-server/internal/types"
"github.com/perfect-panel/ppanel-server/pkg/email"
"github.com/perfect-panel/ppanel-server/pkg/logger"
"github.com/perfect-panel/ppanel-server/pkg/sms"
"github.com/perfect-panel/ppanel-server/pkg/tool"
"github.com/perfect-panel/ppanel-server/pkg/xerr"
"github.com/perfect-panel/server/initialize"
"github.com/perfect-panel/server/internal/model/auth"
"github.com/perfect-panel/server/internal/svc"
"github.com/perfect-panel/server/internal/types"
"github.com/perfect-panel/server/pkg/email"
"github.com/perfect-panel/server/pkg/logger"
"github.com/perfect-panel/server/pkg/sms"
"github.com/perfect-panel/server/pkg/tool"
"github.com/perfect-panel/server/pkg/xerr"
"github.com/pkg/errors"
)
@@ -40,34 +40,32 @@ func (l *UpdateAuthMethodConfigLogic) UpdateAuthMethodConfig(req *types.UpdateAu
tool.DeepCopy(method, req)
if req.Config != nil {
if value, ok := req.Config.(map[string]interface{}); ok {
if req.Method == "email" && value["verify_email_template"] == "" {
value["verify_email_template"] = email.DefaultEmailVerifyTemplate
}
if req.Method == "email" && value["expiration_email_template"] == "" {
value["expiration_email_template"] = email.DefaultExpirationEmailTemplate
}
if req.Method == "email" && value["maintenance_email_template"] == "" {
value["maintenance_email_template"] = email.DefaultMaintenanceEmailTemplate
}
if req.Method == "email" && value["traffic_exceed_email_template"] == "" {
value["traffic_exceed_email_template"] = email.DefaultTrafficExceedEmailTemplate
}
if value["platform_config"] != nil {
platformConfig, err := validatePlatformConfig(value["platform"].(string), value["platform_config"].(map[string]interface{}))
if err != nil {
l.Errorw("validate platform config failed", logger.Field("config", req.Config), logger.Field("error", err.Error()))
return nil, errors.Wrapf(xerr.NewErrCode(xerr.ERROR), "validate platform config failed: %v", err.Error())
}
req.Config.(map[string]interface{})["platform_config"] = platformConfig
}
_, exist := req.Config.(map[string]interface{})
if !exist {
req.Config = initializePlatformConfig(req.Method).(string)
}
if req.Method == "email" {
configs, _ := json.Marshal(req.Config)
emailConfig := new(auth.EmailAuthConfig)
emailConfig.Unmarshal(string(configs))
req.Config = emailConfig
}
if req.Method == "mobile" {
configs, _ := json.Marshal(req.Config)
mobileConfig := new(auth.MobileAuthConfig)
mobileConfig.Unmarshal(string(configs))
req.Config = mobileConfig
}
bytes, err := json.Marshal(req.Config)
if err != nil {
return nil, errors.Wrapf(xerr.NewErrCode(xerr.ERROR), "marshal config failed: %v", err.Error())
}
method.Config = string(bytes)
} else {
// initialize platform config
method.Config = initializePlatformConfig(req.Method).(string)
}
err = l.svcCtx.AuthModel.Update(l.ctx, method)
if err != nil {
@@ -94,6 +92,9 @@ func (l *UpdateAuthMethodConfigLogic) UpdateGlobal(method string) {
if method == "mobile" {
initialize.Mobile(l.svcCtx)
}
if method == "device" {
initialize.Device(l.svcCtx)
}
}
func validatePlatformConfig(platform string, cfg map[string]interface{}) (interface{}, error) {
@@ -124,3 +125,26 @@ func validatePlatformConfig(platform string, cfg map[string]interface{}) (interf
}
return config, nil
}
func initializePlatformConfig(platform string) interface{} {
var result interface{}
switch platform {
case "email":
result = new(auth.EmailAuthConfig).Marshal()
case "mobile":
result = new(auth.MobileAuthConfig).Marshal()
case "apple":
result = new(auth.AppleAuthConfig).Marshal()
case "google":
result = new(auth.GoogleAuthConfig).Marshal()
case "github":
result = new(auth.GithubAuthConfig).Marshal()
case "facebook":
result = new(auth.FacebookAuthConfig).Marshal()
case "telegram":
result = new(auth.TelegramAuthConfig).Marshal()
case "device":
result = new(auth.DeviceConfig).Marshal()
}
return result
}
@@ -4,7 +4,7 @@ import (
"encoding/json"
"testing"
"github.com/perfect-panel/ppanel-server/pkg/sms"
"github.com/perfect-panel/server/pkg/sms"
)
func TestValidate(t *testing.T) {