diff --git a/script/main.go b/script/main.go index bb65643..a4ac232 100644 --- a/script/main.go +++ b/script/main.go @@ -19,7 +19,6 @@ const ( mongoURI = "mongodb://test:test@localhost:27024/?authSource=admin" mongoDBName = "admin" collectionName = "verification" - folder = "folder" ) func main() { @@ -69,7 +68,9 @@ func main() { // получение всех файлов из минио по бакету func getAllFilesInBucket(ctx context.Context, client *minio.Client) ([]minio.ObjectInfo, error) { var files []minio.ObjectInfo - objectCh := client.ListObjects(ctx, bucketName, minio.ListObjectsOptions{}) + objectCh := client.ListObjects(ctx, bucketName, minio.ListObjectsOptions{ + Recursive: true, // флаг рекурсивного прохода по расположениям, добавлен с добавлением folder + }) for object := range objectCh { if object.Err != nil { return nil, object.Err @@ -108,36 +109,13 @@ func getVerificationRecords(ctx context.Context, collection *mongo.Collection) ( // проверка на существования файла минио в монге по урлу func checkContains(verifications []models.Verification, fileKey string) bool { - firstTry := func(verifications []models.Verification, fileKey string) bool { - fileURL := fmt.Sprintf("%s/%s/%s", minioEndpoint, bucketName, fileKey) - for _, verification := range verifications { - for _, file := range verification.Files { - if file.Url == fileURL { - return true - } + fileURL := fmt.Sprintf("%s/%s/%s", minioEndpoint, bucketName, fileKey) + for _, verification := range verifications { + for _, file := range verification.Files { + if file.Url == fileURL { + return true } } - return false - } - - secondTry := func(verifications []models.Verification, fileKey string) bool { - for _, verification := range verifications { - for _, file := range verification.Files { - fileURL := fmt.Sprintf("%s/%s/%s/%s/%s", minioEndpoint, bucketName, folder, verification.UserID, fileKey) - if file.Url == fileURL { - return true - } - } - } - return false - } - - if firstTry(verifications, fileKey) { - return true - } - - if secondTry(verifications, fileKey) { - return true } return false }