Browse Source

Fixed save notes models

pull/15121/head
Vladyslav_Prykhodko 7 months ago
parent
commit
549843a55d
  1. 4
      common/data/src/main/java/org/thingsboard/server/common/data/rule/RuleChain.java
  2. 1
      dao/src/main/java/org/thingsboard/server/dao/model/ModelConstants.java
  3. 5
      dao/src/main/java/org/thingsboard/server/dao/model/sql/RuleChainEntity.java
  4. 12
      dao/src/main/java/org/thingsboard/server/dao/rule/BaseRuleChainService.java
  5. 1
      dao/src/main/resources/sql/schema-entities.sql

4
common/data/src/main/java/org/thingsboard/server/common/data/rule/RuleChain.java

@ -61,9 +61,6 @@ public class RuleChain extends BaseDataWithAdditionalInfo<RuleChainId> implement
private RuleChainId externalId;
private Long version;
@JsonIgnore
private String notes;
@JsonIgnore
private byte[] configurationBytes;
@ -85,7 +82,6 @@ public class RuleChain extends BaseDataWithAdditionalInfo<RuleChainId> implement
this.setConfiguration(ruleChain.getConfiguration());
this.setExternalId(ruleChain.getExternalId());
this.version = ruleChain.getVersion();
this.notes = ruleChain.getNotes();
}
@Override

1
dao/src/main/java/org/thingsboard/server/dao/model/ModelConstants.java

@ -420,7 +420,6 @@ public class ModelConstants {
public static final String RULE_CHAIN_FIRST_RULE_NODE_ID_PROPERTY = "first_rule_node_id";
public static final String RULE_CHAIN_ROOT_PROPERTY = "root";
public static final String RULE_CHAIN_CONFIGURATION_PROPERTY = "configuration";
public static final String RULE_CHAIN_NOTES_PROPERTY = "notes";
/**
* Rule node constants.

5
dao/src/main/java/org/thingsboard/server/dao/model/sql/RuleChainEntity.java

@ -69,9 +69,6 @@ public class RuleChainEntity extends BaseVersionedEntity<RuleChain> {
@Column(name = ModelConstants.ADDITIONAL_INFO_PROPERTY)
private JsonNode additionalInfo;
@Column(name = ModelConstants.RULE_CHAIN_NOTES_PROPERTY, columnDefinition = "TEXT")
private String notes;
@Column(name = ModelConstants.EXTERNAL_ID_PROPERTY)
private UUID externalId;
@ -90,7 +87,6 @@ public class RuleChainEntity extends BaseVersionedEntity<RuleChain> {
this.debugMode = ruleChain.isDebugMode();
this.configuration = ruleChain.getConfiguration();
this.additionalInfo = ruleChain.getAdditionalInfo();
this.notes = ruleChain.getNotes();
if (ruleChain.getExternalId() != null) {
this.externalId = ruleChain.getExternalId().getId();
}
@ -111,7 +107,6 @@ public class RuleChainEntity extends BaseVersionedEntity<RuleChain> {
ruleChain.setDebugMode(debugMode);
ruleChain.setConfiguration(configuration);
ruleChain.setAdditionalInfo(additionalInfo);
ruleChain.setNotes(notes);
if (externalId != null) {
ruleChain.setExternalId(new RuleChainId(externalId));
}

12
dao/src/main/java/org/thingsboard/server/dao/rule/BaseRuleChainService.java

@ -318,8 +318,9 @@ public class BaseRuleChainService extends AbstractEntityService implements RuleC
if (!relations.isEmpty()) {
relationService.saveRelations(tenantId, relations);
}
ruleChain.setNotes(ruleChainMetaData.getNotes() != null && !ruleChainMetaData.getNotes().isEmpty()
? JacksonUtil.toString(ruleChainMetaData.getNotes()) : null);
ruleChain.setConfiguration(CollectionUtils.isNotEmpty(ruleChainMetaData.getNotes())
? JacksonUtil.newObjectNode().set("notes", JacksonUtil.valueToTree(ruleChainMetaData.getNotes()))
: null);
ruleChain = ruleChainDao.save(tenantId, ruleChain);
eventPublisher.publishEvent(SaveEntityEvent.builder().tenantId(tenantId).entity(ruleChain)
.entityId(ruleChain.getId()).broadcastEvent(publishSaveEvent).build());
@ -380,9 +381,10 @@ public class BaseRuleChainService extends AbstractEntityService implements RuleC
Collections.sort(ruleChainMetaData.getConnections(), Comparator.comparingInt(NodeConnectionInfo::getFromIndex)
.thenComparing(NodeConnectionInfo::getToIndex).thenComparing(NodeConnectionInfo::getType));
}
if (ruleChain.getNotes() != null) {
ruleChainMetaData.setNotes(JacksonUtil.fromString(ruleChain.getNotes(), new TypeReference<List<RuleChainNote>>() {}));
}
ruleChainMetaData.setNotes(Optional.ofNullable(ruleChain.getConfiguration())
.filter(c -> c.has("notes"))
.map(c -> JacksonUtil.convertValue(c.get("notes"), new TypeReference<List<RuleChainNote>>() {}))
.orElse(null));
return ruleChainMetaData;
}

1
dao/src/main/resources/sql/schema-entities.sql

@ -169,7 +169,6 @@ CREATE TABLE IF NOT EXISTS rule_chain (
debug_mode boolean,
tenant_id uuid,
external_id uuid,
notes text,
version BIGINT DEFAULT 1,
CONSTRAINT rule_chain_external_id_unq_key UNIQUE (tenant_id, external_id)
);

Loading…
Cancel
Save