package controller import ( "context" "fmt" "rag-local/kb/model/dto" "rag-local/kb/service" ) type systemConfig struct{} var SystemConfig = new(systemConfig) func (c *systemConfig) Login(ctx context.Context, req *dto.LoginReq) (res *dto.LoginRes, err error) { token, err := service.SystemConfigService.Login(ctx, req.Token) if err != nil { return nil, err } return &dto.LoginRes{Token: token}, nil } func (c *systemConfig) Get(ctx context.Context, req *dto.GetSystemConfigReq) (res *dto.GetSystemConfigRes, err error) { chatModel, dataset, err := service.SystemConfigService.GetSettings(ctx) if err != nil { return nil, err } return &dto.GetSystemConfigRes{DefaultChatModel: chatModel, DefaultDataset: dataset}, nil } func (c *systemConfig) Update(ctx context.Context, req *dto.UpdateSystemConfigReq) (res *dto.UpdateSystemConfigRes, err error) { return nil, service.SystemConfigService.UpdateSettings(ctx, req.DefaultChatModel, req.DefaultDataset) } func (c *systemConfig) GetToken(ctx context.Context, req *dto.GetTokenReq) (*dto.GetTokenRes, error) { token, err := service.SystemConfigService.GetToken(ctx) if err != nil { return nil, err } return &dto.GetTokenRes{Token: token}, nil } func (c *systemConfig) RegenerateToken(ctx context.Context, req *dto.RegenerateTokenReq) (res *dto.RegenerateTokenRes, err error) { token, err := service.SystemConfigService.RegenerateToken(ctx) if err != nil { return nil, err } fmt.Printf("\n============================================\n") fmt.Printf("访问令牌(登录用)已更新: %s\n", token) fmt.Printf("旧令牌已失效,请在登录页重新输入\n") fmt.Printf("============================================\n\n") return &dto.RegenerateTokenRes{Token: token}, nil }