优化可视化配置
This commit is contained in:
parent
8a98971be4
commit
3d09765247
|
|
@ -52,5 +52,17 @@ public class DataVisualizationEntity extends GenericEntity<String> {
|
|||
@DefaultValue("enabled")
|
||||
private DataVisualizationState state;
|
||||
|
||||
public void applyId() {
|
||||
this.setId(String.format("%s:%s", type, target));
|
||||
}
|
||||
|
||||
public static DataVisualizationEntity newEmpty(String type, String target) {
|
||||
DataVisualizationEntity entity = new DataVisualizationEntity();
|
||||
entity.setType(type);
|
||||
entity.setTarget(target);
|
||||
entity.applyId();
|
||||
entity.setMetadata("");
|
||||
return entity;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,11 +1,21 @@
|
|||
package org.jetlinks.pro.visualization.service;
|
||||
|
||||
import org.hswebframework.ezorm.rdb.mapping.defaults.SaveResult;
|
||||
import org.hswebframework.web.crud.service.GenericReactiveCrudService;
|
||||
import org.jetlinks.pro.visualization.entity.DataVisualizationEntity;
|
||||
import org.reactivestreams.Publisher;
|
||||
import org.springframework.stereotype.Service;
|
||||
import reactor.core.publisher.Flux;
|
||||
import reactor.core.publisher.Mono;
|
||||
|
||||
@Service
|
||||
public class DataVisualizationService extends GenericReactiveCrudService<DataVisualizationEntity,String> {
|
||||
|
||||
@Override
|
||||
public Mono<SaveResult> save(Publisher<DataVisualizationEntity> entityPublisher) {
|
||||
return Flux.from(entityPublisher)
|
||||
.doOnNext(DataVisualizationEntity::applyId)
|
||||
.as(super::save);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -34,7 +34,8 @@ public class DataVisualizationController implements ReactiveServiceCrudControlle
|
|||
return visualizationService.createQuery()
|
||||
.where(DataVisualizationEntity::getType, type)
|
||||
.and(DataVisualizationEntity::getTarget, target)
|
||||
.fetchOne();
|
||||
.fetchOne()
|
||||
.defaultIfEmpty(DataVisualizationEntity.newEmpty(type, target));
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue