Merge remote-tracking branch 'origin/feature/image-resources' into feature/image-resources
This commit is contained in:
commit
3c16e908a3
@ -44,7 +44,7 @@ public interface ImageService {
|
||||
|
||||
TbImageDeleteResult deleteImage(TbResourceInfo imageInfo, boolean force);
|
||||
|
||||
TbResourceInfo findImageByTenantIdAndEtag(TenantId tenantId, String etag);
|
||||
TbResourceInfo findSystemOrTenantImageByEtag(TenantId tenantId, String etag);
|
||||
|
||||
boolean replaceBase64WithImageUrl(HasImage entity, String type);
|
||||
boolean replaceBase64WithImageUrl(Dashboard dashboard);
|
||||
|
||||
@ -259,8 +259,8 @@ public class BaseImageService extends BaseResourceService implements ImageServic
|
||||
}
|
||||
|
||||
@Override
|
||||
public TbResourceInfo findImageByTenantIdAndEtag(TenantId tenantId, String etag) {
|
||||
return resourceInfoDao.findByTenantIdAndEtag(tenantId, ResourceType.IMAGE, etag);
|
||||
public TbResourceInfo findSystemOrTenantImageByEtag(TenantId tenantId, String etag) {
|
||||
return resourceInfoDao.findSystemOrTenantImageByEtag(tenantId, ResourceType.IMAGE, etag);
|
||||
}
|
||||
|
||||
@Transactional(propagation = Propagation.NOT_SUPPORTED)// we don't want transaction to rollback in case of an image processing failure
|
||||
@ -417,10 +417,7 @@ public class BaseImageService extends BaseResourceService implements ImageServic
|
||||
String extension = ImageUtils.mediaTypeToFileExtension(mdMediaType);
|
||||
byte[] imageData = Base64.getDecoder().decode(base64Data);
|
||||
String etag = calculateEtag(imageData);
|
||||
var imageInfo = findImageByTenantIdAndEtag(tenantId, etag);
|
||||
if (imageInfo == null && !tenantId.isSysTenantId()) {
|
||||
imageInfo = findImageByTenantIdAndEtag(TenantId.SYS_TENANT_ID, etag);
|
||||
}
|
||||
var imageInfo = findSystemOrTenantImageByEtag(tenantId, etag);
|
||||
if (imageInfo == null) {
|
||||
TbResource image = new TbResource();
|
||||
image.setTenantId(tenantId);
|
||||
|
||||
@ -40,5 +40,5 @@ public interface TbResourceInfoDao extends Dao<TbResourceInfo> {
|
||||
|
||||
List<TbResourceInfo> findByTenantIdAndEtagAndKeyStartingWith(TenantId tenantId, String etag, String query);
|
||||
|
||||
TbResourceInfo findByTenantIdAndEtag(TenantId tenantId, ResourceType resourceType, String etag);
|
||||
TbResourceInfo findSystemOrTenantImageByEtag(TenantId tenantId, ResourceType resourceType, String etag);
|
||||
}
|
||||
|
||||
@ -106,7 +106,7 @@ public class JpaTbResourceInfoDao extends JpaAbstractDao<TbResourceInfoEntity, T
|
||||
}
|
||||
|
||||
@Override
|
||||
public TbResourceInfo findByTenantIdAndEtag(TenantId tenantId, ResourceType resourceType, String etag) {
|
||||
return DaoUtil.getData(resourceInfoRepository.findByTenantIdAndEtag(TenantId.SYS_TENANT_ID.getId(), tenantId.getId(), resourceType.name(), etag));
|
||||
public TbResourceInfo findSystemOrTenantImageByEtag(TenantId tenantId, ResourceType resourceType, String etag) {
|
||||
return DaoUtil.getData(resourceInfoRepository.findSystemOrTenantImageByEtag(TenantId.SYS_TENANT_ID.getId(), tenantId.getId(), resourceType.name(), etag));
|
||||
}
|
||||
}
|
||||
|
||||
@ -66,8 +66,8 @@ public interface TbResourceInfoRepository extends JpaRepository<TbResourceInfoEn
|
||||
List<TbResourceInfoEntity> findByTenantIdAndEtagAndResourceKeyStartingWith(UUID tenantId, String etag, String query);
|
||||
|
||||
@Query(value = "SELECT * FROM resource r WHERE (r.tenant_id = :systemTenantId OR r.tenant_id = :tenantId) AND r.resource_type = :resourceType AND r.etag = :etag LIMIT 1", nativeQuery = true)
|
||||
TbResourceInfoEntity findByTenantIdAndEtag(@Param("systemTenantId") UUID sysTenantId,
|
||||
@Param("tenantId") UUID tenantId,
|
||||
@Param("resourceType") String resourceType,
|
||||
@Param("etag") String etag);
|
||||
TbResourceInfoEntity findSystemOrTenantImageByEtag(@Param("systemTenantId") UUID sysTenantId,
|
||||
@Param("tenantId") UUID tenantId,
|
||||
@Param("resourceType") String resourceType,
|
||||
@Param("etag") String etag);
|
||||
}
|
||||
|
||||
@ -259,7 +259,7 @@ export class ImageGalleryComponent extends PageComponent implements OnInit, OnDe
|
||||
}
|
||||
} else {
|
||||
this.gridImagesFilter = {
|
||||
search: isNotEmptyStr(value) ? encodeURI(value) : null,
|
||||
search: isNotEmptyStr(value) ? value.trim() : null,
|
||||
includeSystemImages: this.includeSystemImages
|
||||
};
|
||||
this.cd.markForCheck();
|
||||
|
||||
@ -111,8 +111,7 @@ export class ImportExportService {
|
||||
this.imageService.exportImage(type, key).subscribe(
|
||||
{
|
||||
next: (imageData) => {
|
||||
let name = imageData.title;
|
||||
name = name.toLowerCase().replace(/\W/g, '_');
|
||||
const name = imageData.fileName.split('.')[0];
|
||||
this.exportToPc(imageData, name);
|
||||
},
|
||||
error: (e) => {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user