diff --git a/mobile/openapi/README.md b/mobile/openapi/README.md index 8b63596108..6c2505b7f5 100644 --- a/mobile/openapi/README.md +++ b/mobile/openapi/README.md @@ -161,10 +161,10 @@ Class | Method | HTTP request | Description *LibrariesApi* | [**scanLibrary**](doc//LibrariesApi.md#scanlibrary) | **POST** /libraries/{id}/scan | Scan a library *LibrariesApi* | [**updateLibrary**](doc//LibrariesApi.md#updatelibrary) | **PUT** /libraries/{id} | Update a library *LibrariesApi* | [**validate**](doc//LibrariesApi.md#validate) | **POST** /libraries/{id}/validate | Validate library settings -*MaintenanceAdminApi* | [**deleteIntegrityReport**](doc//MaintenanceAdminApi.md#deleteintegrityreport) | **DELETE** /admin/integrity/report/{id} | Delete report entry and perform corresponding deletion action +*MaintenanceAdminApi* | [**deleteIntegrityReport**](doc//MaintenanceAdminApi.md#deleteintegrityreport) | **DELETE** /admin/integrity/report/{id} | Delete integrity report item *MaintenanceAdminApi* | [**getIntegrityReport**](doc//MaintenanceAdminApi.md#getintegrityreport) | **POST** /admin/integrity/report | Get integrity report by type *MaintenanceAdminApi* | [**getIntegrityReportCsv**](doc//MaintenanceAdminApi.md#getintegrityreportcsv) | **GET** /admin/integrity/report/{type}/csv | Export integrity report by type as CSV -*MaintenanceAdminApi* | [**getIntegrityReportFile**](doc//MaintenanceAdminApi.md#getintegrityreportfile) | **GET** /admin/integrity/report/{id}/file | Download the orphan/broken file if one exists +*MaintenanceAdminApi* | [**getIntegrityReportFile**](doc//MaintenanceAdminApi.md#getintegrityreportfile) | **GET** /admin/integrity/report/{id}/file | Download flagged file file *MaintenanceAdminApi* | [**getIntegrityReportSummary**](doc//MaintenanceAdminApi.md#getintegrityreportsummary) | **GET** /admin/integrity/summary | Get integrity report summary *MaintenanceAdminApi* | [**maintenanceLogin**](doc//MaintenanceAdminApi.md#maintenancelogin) | **POST** /admin/maintenance/login | Log into maintenance mode *MaintenanceAdminApi* | [**setMaintenanceMode**](doc//MaintenanceAdminApi.md#setmaintenancemode) | **POST** /admin/maintenance | Set maintenance mode diff --git a/mobile/openapi/lib/api/maintenance_admin_api.dart b/mobile/openapi/lib/api/maintenance_admin_api.dart index ed9dbf0a2d..b8302d44a8 100644 --- a/mobile/openapi/lib/api/maintenance_admin_api.dart +++ b/mobile/openapi/lib/api/maintenance_admin_api.dart @@ -16,9 +16,9 @@ class MaintenanceAdminApi { final ApiClient apiClient; - /// Delete report entry and perform corresponding deletion action + /// Delete integrity report item /// - /// ... + /// Delete a given report item and perform corresponding deletion (e.g. trash asset, delete file) /// /// Note: This method returns the HTTP [Response]. /// @@ -51,9 +51,9 @@ class MaintenanceAdminApi { ); } - /// Delete report entry and perform corresponding deletion action + /// Delete integrity report item /// - /// ... + /// Delete a given report item and perform corresponding deletion (e.g. trash asset, delete file) /// /// Parameters: /// @@ -67,7 +67,7 @@ class MaintenanceAdminApi { /// Get integrity report by type /// - /// ... + /// Get all flagged items by integrity report type /// /// Note: This method returns the HTTP [Response]. /// @@ -101,7 +101,7 @@ class MaintenanceAdminApi { /// Get integrity report by type /// - /// ... + /// Get all flagged items by integrity report type /// /// Parameters: /// @@ -123,7 +123,7 @@ class MaintenanceAdminApi { /// Export integrity report by type as CSV /// - /// ... + /// Get all integrity report entries for a given type as a CSV /// /// Note: This method returns the HTTP [Response]. /// @@ -158,7 +158,7 @@ class MaintenanceAdminApi { /// Export integrity report by type as CSV /// - /// ... + /// Get all integrity report entries for a given type as a CSV /// /// Parameters: /// @@ -178,9 +178,9 @@ class MaintenanceAdminApi { return null; } - /// Download the orphan/broken file if one exists + /// Download flagged file file /// - /// ... + /// Download the orphan/broken file if one exists /// /// Note: This method returns the HTTP [Response]. /// @@ -213,9 +213,9 @@ class MaintenanceAdminApi { ); } - /// Download the orphan/broken file if one exists + /// Download flagged file file /// - /// ... + /// Download the orphan/broken file if one exists /// /// Parameters: /// @@ -237,7 +237,7 @@ class MaintenanceAdminApi { /// Get integrity report summary /// - /// ... + /// Get a count of the items flagged in each integrity report /// /// Note: This method returns the HTTP [Response]. Future getIntegrityReportSummaryWithHttpInfo() async { @@ -267,7 +267,7 @@ class MaintenanceAdminApi { /// Get integrity report summary /// - /// ... + /// Get a count of the items flagged in each integrity report Future getIntegrityReportSummary() async { final response = await getIntegrityReportSummaryWithHttpInfo(); if (response.statusCode >= HttpStatus.badRequest) { diff --git a/mobile/openapi/lib/model/job_name.dart b/mobile/openapi/lib/model/job_name.dart index 4572ccf7a4..99959a0954 100644 --- a/mobile/openapi/lib/model/job_name.dart +++ b/mobile/openapi/lib/model/job_name.dart @@ -86,7 +86,8 @@ class JobName { static const integrityMissingFilesRefresh = JobName._(r'IntegrityMissingFilesRefresh'); static const integrityChecksumFiles = JobName._(r'IntegrityChecksumFiles'); static const integrityChecksumFilesRefresh = JobName._(r'IntegrityChecksumFilesRefresh'); - static const integrityReportDelete = JobName._(r'IntegrityReportDelete'); + static const integrityDeleteReportType = JobName._(r'IntegrityDeleteReportType'); + static const integrityDeleteReports = JobName._(r'IntegrityDeleteReports'); /// List of all possible values in this [enum][JobName]. static const values = [ @@ -153,7 +154,8 @@ class JobName { integrityMissingFilesRefresh, integrityChecksumFiles, integrityChecksumFilesRefresh, - integrityReportDelete, + integrityDeleteReportType, + integrityDeleteReports, ]; static JobName? fromJson(dynamic value) => JobNameTypeTransformer().decode(value); @@ -255,7 +257,8 @@ class JobNameTypeTransformer { case r'IntegrityMissingFilesRefresh': return JobName.integrityMissingFilesRefresh; case r'IntegrityChecksumFiles': return JobName.integrityChecksumFiles; case r'IntegrityChecksumFilesRefresh': return JobName.integrityChecksumFilesRefresh; - case r'IntegrityReportDelete': return JobName.integrityReportDelete; + case r'IntegrityDeleteReportType': return JobName.integrityDeleteReportType; + case r'IntegrityDeleteReports': return JobName.integrityDeleteReports; default: if (!allowNull) { throw ArgumentError('Unknown enum value to decode: $data'); diff --git a/open-api/immich-openapi-specs.json b/open-api/immich-openapi-specs.json index feb80d2838..aa7cfb72b0 100644 --- a/open-api/immich-openapi-specs.json +++ b/open-api/immich-openapi-specs.json @@ -338,7 +338,7 @@ "required": true }, "responses": { - "201": { + "200": { "content": { "application/json": { "schema": { diff --git a/open-api/typescript-sdk/src/fetch-client.ts b/open-api/typescript-sdk/src/fetch-client.ts index 7df795c4c4..206fa2557c 100644 --- a/open-api/typescript-sdk/src/fetch-client.ts +++ b/open-api/typescript-sdk/src/fetch-client.ts @@ -1894,7 +1894,7 @@ export function getIntegrityReport({ integrityGetReportDto }: { integrityGetReportDto: IntegrityGetReportDto; }, opts?: Oazapfts.RequestOpts) { return oazapfts.ok(oazapfts.fetchJson<{ - status: 201; + status: 200; data: IntegrityReportResponseDto; }>("/admin/integrity/report", oazapfts.json({ ...opts, @@ -1903,7 +1903,7 @@ export function getIntegrityReport({ integrityGetReportDto }: { }))); } /** - * Delete report entry and perform corresponding deletion action + * Delete integrity report item */ export function deleteIntegrityReport({ id }: { id: string; @@ -1914,7 +1914,7 @@ export function deleteIntegrityReport({ id }: { })); } /** - * Download the orphan/broken file if one exists + * Download flagged file file */ export function getIntegrityReportFile({ id }: { id: string; @@ -5610,7 +5610,8 @@ export enum JobName { IntegrityMissingFilesRefresh = "IntegrityMissingFilesRefresh", IntegrityChecksumFiles = "IntegrityChecksumFiles", IntegrityChecksumFilesRefresh = "IntegrityChecksumFilesRefresh", - IntegrityReportDelete = "IntegrityReportDelete" + IntegrityDeleteReportType = "IntegrityDeleteReportType", + IntegrityDeleteReports = "IntegrityDeleteReports" } export enum SearchSuggestionType { Country = "country", diff --git a/server/src/queries/integrity.repository.sql b/server/src/queries/integrity.repository.sql index 6d39953ab1..92f235b1c6 100644 --- a/server/src/queries/integrity.repository.sql +++ b/server/src/queries/integrity.repository.sql @@ -135,7 +135,8 @@ from left join "integrity_report" on "integrity_report"."assetId" = "asset"."id" and "integrity_report"."type" = $1 where - "createdAt" >= $2 + "asset"."deletedAt" is null + and "createdAt" >= $2 and "createdAt" <= $3 order by "createdAt" asc