package logic import ( "GtDataStore/common/crypto/md5" "context" "fmt" "GtDataStore/app/cmd/organization/internal/svc" "GtDataStore/app/cmd/organization/pb" "github.com/zeromicro/go-zero/core/logx" ) type ResetAppSecretLogic struct { ctx context.Context svcCtx *svc.ServiceContext logx.Logger } func NewResetAppSecretLogic(ctx context.Context, svcCtx *svc.ServiceContext) *ResetAppSecretLogic { return &ResetAppSecretLogic{ ctx: ctx, svcCtx: svcCtx, Logger: logx.WithContext(ctx), } } func (l *ResetAppSecretLogic) ResetAppSecret(in *pb.ResetAppSecretReq) (*pb.ResetAppSecretResp, error) { appInfo, err := l.svcCtx.AppInfo.FindOneByAppName(l.ctx, in.AppName) if err != nil { return nil, err } appInfo.Secret = md5.Md5([]byte(fmt.Sprintf("%s_%d:%d", in.AppName, appInfo.Status, appInfo.ExpireAt.UnixMilli()))) err = l.svcCtx.AppInfo.Update(l.ctx, appInfo) if err != nil { return nil, err } return &pb.ResetAppSecretResp{Secret: appInfo.Secret}, nil }