fix(仪表板、数据大屏): JPA优化修复新建未保存时,设置联动报错问题 (#17254)

This commit is contained in:
王嘉豪
2025-10-24 12:03:08 +08:00
committed by GitHub
parent b8a10cfef8
commit 024fa13b58
3 changed files with 13 additions and 8 deletions

View File

@@ -6,6 +6,7 @@ import io.lettuce.core.dynamic.annotation.Param;
import org.springframework.data.jpa.domain.Specification;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.jpa.repository.Modifying;
import org.springframework.data.jpa.repository.Query;
import org.springframework.transaction.annotation.Transactional;
@@ -45,4 +46,14 @@ public interface SnapshotCoreChartViewRepository extends JpaRepository<SnapshotC
@Query("SELECT c.id as id FROM SnapshotCoreChartView c WHERE c.id IN :ids AND c.linkageActive = :linkageActive")
List<Long> findIdsByIdInAndLinkageActive(@Param("ids") List<Long> ids, @Param("linkageActive") Boolean linkageActive);
@Modifying
@Transactional
@Query("UPDATE SnapshotCoreChartView v SET v.linkageActive = :linkageActive WHERE v.id = :id")
void updateLinkageActiveById(@Param("id") Long id, @Param("linkageActive") Boolean linkageActive);
@Modifying
@Transactional
@Query("UPDATE SnapshotCoreChartView v SET v.jumpActive = :jumpActive WHERE v.id = :id")
void updateJumpActiveById(@Param("id") Long id, @Param("jumpActive") Boolean jumpActive);
}

View File

@@ -306,10 +306,7 @@ public class VisualizationLinkJumpService implements VisualizationLinkJumpApi {
@Override
public VisualizationLinkJumpBaseResponse updateJumpSetActive(VisualizationLinkJumpBaseRequest request) {
SnapshotCoreChartView coreChartView = new SnapshotCoreChartView();
coreChartView.setId(Long.valueOf(request.getSourceViewId()));
coreChartView.setJumpActive(request.getActiveStatus());
snapshotCoreChartViewRepository.saveAndFlush(coreChartView);
snapshotCoreChartViewRepository.updateJumpActiveById(request.getSourceViewId(),request.getActiveStatus());
return queryVisualizationJumpInfo(request.getSourceDvId(), CommonConstants.RESOURCE_TABLE.SNAPSHOT);
}

View File

@@ -132,10 +132,7 @@ public class VisualizationLinkageService implements VisualizationLinkageApi {
@Override
public Map updateLinkageActive(VisualizationLinkageRequest request) {
SnapshotCoreChartView coreChartView = new SnapshotCoreChartView();
coreChartView.setId(request.getSourceViewId());
coreChartView.setLinkageActive(request.getActiveStatus());
snapshotCoreChartViewRepository.saveAndFlush(coreChartView);
snapshotCoreChartViewRepository.updateLinkageActiveById(request.getSourceViewId(),request.getActiveStatus());
return getVisualizationAllLinkageInfo(request.getDvId(), CommonConstants.RESOURCE_TABLE.SNAPSHOT);
}