Browse Source

Alarm comment is not entity any more

pull/7762/head
dashevchenko 4 years ago
parent
commit
071b68e938
  1. 4
      application/src/main/java/org/thingsboard/server/install/ThingsboardInstallService.java
  2. 4
      application/src/main/java/org/thingsboard/server/service/entitiy/DefaultTbNotificationEntityService.java
  3. 4
      application/src/main/java/org/thingsboard/server/service/entitiy/alarm/DefaultTbAlarmCommentService.java
  4. 3
      application/src/main/java/org/thingsboard/server/service/entitiy/alarm/DefaultTbAlarmService.java
  5. 1
      application/src/main/resources/thingsboard.yml
  6. 2
      common/dao-api/src/main/java/org/thingsboard/server/dao/alarm/AlarmCommentService.java
  7. 2
      common/data/src/main/java/org/thingsboard/server/common/data/EntityType.java
  8. 5
      common/data/src/main/java/org/thingsboard/server/common/data/audit/ActionType.java
  9. 8
      common/data/src/main/java/org/thingsboard/server/common/data/id/AlarmCommentId.java
  10. 2
      common/data/src/main/java/org/thingsboard/server/common/data/id/EntityIdFactory.java
  11. 9
      dao/src/main/java/org/thingsboard/server/dao/alarm/BaseAlarmCommentService.java
  12. 3
      rule-engine/rule-engine-components/src/main/java/org/thingsboard/rule/engine/util/EntitiesFieldsAsyncLoader.java
  13. 4
      rule-engine/rule-engine-components/src/main/java/org/thingsboard/rule/engine/util/TenantIdLoader.java

4
application/src/main/java/org/thingsboard/server/install/ThingsboardInstallService.java

@ -233,12 +233,12 @@ public class ThingsboardInstallService {
log.info("Upgrading ThingsBoard from version 3.4.1 to 3.4.2 ..."); log.info("Upgrading ThingsBoard from version 3.4.1 to 3.4.2 ...");
databaseEntitiesUpgradeService.upgradeDatabase("3.4.1"); databaseEntitiesUpgradeService.upgradeDatabase("3.4.1");
dataUpdateService.updateData("3.4.1"); dataUpdateService.updateData("3.4.1");
log.info("Updating system data...");
systemDataLoaderService.updateSystemWidgets();
break; break;
case "3.4.3": case "3.4.3":
log.info("Upgrading ThingsBoard from version 3.4.3 to 3.5 ..."); log.info("Upgrading ThingsBoard from version 3.4.3 to 3.5 ...");
databaseEntitiesUpgradeService.upgradeDatabase("3.4.3"); databaseEntitiesUpgradeService.upgradeDatabase("3.4.3");
log.info("Updating system data...");
systemDataLoaderService.updateSystemWidgets();
break; break;
//TODO update CacheCleanupService on the next version upgrade //TODO update CacheCleanupService on the next version upgrade

4
application/src/main/java/org/thingsboard/server/service/entitiy/DefaultTbNotificationEntityService.java

@ -232,12 +232,12 @@ public class DefaultTbNotificationEntityService implements TbNotificationEntityS
@Override @Override
public void notifyCreateOrUpdateAlarmComment(Alarm alarm, AlarmComment alarmComment, ActionType actionType, User user) { public void notifyCreateOrUpdateAlarmComment(Alarm alarm, AlarmComment alarmComment, ActionType actionType, User user) {
logEntityAction(alarm.getTenantId(), alarmComment.getId(), alarmComment, alarm.getCustomerId(), actionType, user); logEntityAction(alarm.getTenantId(), alarm.getId(), alarm, alarm.getCustomerId(), actionType, user, alarmComment);
} }
@Override @Override
public void notifyDeleteAlarmComment(Alarm alarm, AlarmComment alarmComment, User user) { public void notifyDeleteAlarmComment(Alarm alarm, AlarmComment alarmComment, User user) {
logEntityAction(alarm.getTenantId(), alarmComment.getId(), alarmComment, alarm.getCustomerId(), ActionType.DELETED, user); logEntityAction(alarm.getTenantId(), alarm.getId(), alarm, alarm.getCustomerId(), ActionType.DELETED_COMMENT, user, alarmComment);
} }
@Override @Override

4
application/src/main/java/org/thingsboard/server/service/entitiy/alarm/DefaultTbAlarmCommentService.java

@ -31,7 +31,7 @@ import org.thingsboard.server.service.entitiy.AbstractTbEntityService;
public class DefaultTbAlarmCommentService extends AbstractTbEntityService implements TbAlarmCommentService{ public class DefaultTbAlarmCommentService extends AbstractTbEntityService implements TbAlarmCommentService{
@Override @Override
public AlarmComment saveAlarmComment(Alarm alarm, AlarmComment alarmComment, User user) throws ThingsboardException { public AlarmComment saveAlarmComment(Alarm alarm, AlarmComment alarmComment, User user) throws ThingsboardException {
ActionType actionType = alarmComment.getId() == null ? ActionType.ADDED : ActionType.UPDATED; ActionType actionType = alarmComment.getId() == null ? ActionType.ADDED_COMMENT : ActionType.UPDATED_COMMENT;
UserId userId = user.getId(); UserId userId = user.getId();
alarmComment.setUserId(userId); alarmComment.setUserId(userId);
try { try {
@ -39,7 +39,7 @@ public class DefaultTbAlarmCommentService extends AbstractTbEntityService implem
notificationEntityService.notifyCreateOrUpdateAlarmComment(alarm, savedAlarmComment, actionType, user); notificationEntityService.notifyCreateOrUpdateAlarmComment(alarm, savedAlarmComment, actionType, user);
return savedAlarmComment; return savedAlarmComment;
} catch (Exception e) { } catch (Exception e) {
notificationEntityService.logEntityAction(alarm.getTenantId(), emptyId(EntityType.ALARM_COMMENT), alarmComment, actionType, user, e); notificationEntityService.logEntityAction(alarm.getTenantId(), emptyId(EntityType.ALARM), alarm, actionType, user, e, alarmComment);
throw e; throw e;
} }
} }

3
application/src/main/java/org/thingsboard/server/service/entitiy/alarm/DefaultTbAlarmService.java

@ -61,7 +61,8 @@ public class DefaultTbAlarmService extends AbstractTbEntityService implements Tb
AlarmComment alarmComment = AlarmComment.builder() AlarmComment alarmComment = AlarmComment.builder()
.alarmId(alarm.getId()) .alarmId(alarm.getId())
.type(AlarmCommentType.SYSTEM) .type(AlarmCommentType.SYSTEM)
.comment(JacksonUtil.newObjectNode().put("text", String.format("Alarm was acknowledged by user %s", user.getName()))) .comment(JacksonUtil.newObjectNode().put("text", String.format("Alarm was acknowledged by user %s", user.getName()))
.put("userId", user.getId().toString()))
.build(); .build();
alarmCommentService.createOrUpdateAlarmComment(alarm.getTenantId(), alarmComment); alarmCommentService.createOrUpdateAlarmComment(alarm.getTenantId(), alarmComment);
alarm.setAckTs(ackTs); alarm.setAckTs(ackTs);

1
application/src/main/resources/thingsboard.yml

@ -584,7 +584,6 @@ audit-log:
"user": "${AUDIT_LOG_MASK_USER:W}" "user": "${AUDIT_LOG_MASK_USER:W}"
"rule_chain": "${AUDIT_LOG_MASK_RULE_CHAIN:W}" "rule_chain": "${AUDIT_LOG_MASK_RULE_CHAIN:W}"
"alarm": "${AUDIT_LOG_MASK_ALARM:W}" "alarm": "${AUDIT_LOG_MASK_ALARM:W}"
"alarm_comment": "${AUDIT_LOG_MASK_ALARM_COMMENT:W}"
"entity_view": "${AUDIT_LOG_MASK_ENTITY_VIEW:W}" "entity_view": "${AUDIT_LOG_MASK_ENTITY_VIEW:W}"
"device_profile": "${AUDIT_LOG_MASK_DEVICE_PROFILE:W}" "device_profile": "${AUDIT_LOG_MASK_DEVICE_PROFILE:W}"
"asset_profile": "${AUDIT_LOG_MASK_ASSET_PROFILE:W}" "asset_profile": "${AUDIT_LOG_MASK_ASSET_PROFILE:W}"

2
common/dao-api/src/main/java/org/thingsboard/server/dao/alarm/AlarmCommentService.java

@ -25,7 +25,7 @@ import org.thingsboard.server.common.data.page.PageData;
import org.thingsboard.server.common.data.page.PageLink; import org.thingsboard.server.common.data.page.PageLink;
import org.thingsboard.server.dao.entity.EntityDaoService; import org.thingsboard.server.dao.entity.EntityDaoService;
public interface AlarmCommentService extends EntityDaoService { public interface AlarmCommentService {
AlarmComment createOrUpdateAlarmComment(TenantId tenantId, AlarmComment alarmComment); AlarmComment createOrUpdateAlarmComment(TenantId tenantId, AlarmComment alarmComment);
void deleteAlarmComment(TenantId tenantId, AlarmCommentId alarmCommentId); void deleteAlarmComment(TenantId tenantId, AlarmCommentId alarmCommentId);

2
common/data/src/main/java/org/thingsboard/server/common/data/EntityType.java

@ -19,5 +19,5 @@ package org.thingsboard.server.common.data;
* @author Andrew Shvayka * @author Andrew Shvayka
*/ */
public enum EntityType { public enum EntityType {
TENANT, CUSTOMER, USER, DASHBOARD, ASSET, DEVICE, ALARM, ALARM_COMMENT, RULE_CHAIN, RULE_NODE, ENTITY_VIEW, WIDGETS_BUNDLE, WIDGET_TYPE, TENANT_PROFILE, DEVICE_PROFILE, ASSET_PROFILE, API_USAGE_STATE, TB_RESOURCE, OTA_PACKAGE, EDGE, RPC, QUEUE; TENANT, CUSTOMER, USER, DASHBOARD, ASSET, DEVICE, ALARM, RULE_CHAIN, RULE_NODE, ENTITY_VIEW, WIDGETS_BUNDLE, WIDGET_TYPE, TENANT_PROFILE, DEVICE_PROFILE, ASSET_PROFILE, API_USAGE_STATE, TB_RESOURCE, OTA_PACKAGE, EDGE, RPC, QUEUE;
} }

5
common/data/src/main/java/org/thingsboard/server/common/data/audit/ActionType.java

@ -48,7 +48,10 @@ public enum ActionType {
PROVISION_SUCCESS(false), PROVISION_SUCCESS(false),
PROVISION_FAILURE(false), PROVISION_FAILURE(false),
ASSIGNED_TO_EDGE(false), // log edge name ASSIGNED_TO_EDGE(false), // log edge name
UNASSIGNED_FROM_EDGE(false); UNASSIGNED_FROM_EDGE(false),
ADDED_COMMENT(false),
UPDATED_COMMENT(false),
DELETED_COMMENT(false);
private final boolean isRead; private final boolean isRead;

8
common/data/src/main/java/org/thingsboard/server/common/data/id/AlarmCommentId.java

@ -24,7 +24,7 @@ import org.thingsboard.server.common.data.EntityType;
import java.util.UUID; import java.util.UUID;
@ApiModel @ApiModel
public class AlarmCommentId extends UUIDBased implements EntityId{ public class AlarmCommentId extends UUIDBased {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
@ -36,10 +36,4 @@ public class AlarmCommentId extends UUIDBased implements EntityId{
public static AlarmCommentId fromString(String commentId) { public static AlarmCommentId fromString(String commentId) {
return new AlarmCommentId(UUID.fromString(commentId)); return new AlarmCommentId(UUID.fromString(commentId));
} }
@ApiModelProperty(position = 2, required = true, value = "string", example = "ALARM_COMMENT", allowableValues = "ALARM_COMMENT")
@Override
public EntityType getEntityType() {
return EntityType.ALARM_COMMENT;
}
} }

2
common/data/src/main/java/org/thingsboard/server/common/data/id/EntityIdFactory.java

@ -53,8 +53,6 @@ public class EntityIdFactory {
return new AssetId(uuid); return new AssetId(uuid);
case ALARM: case ALARM:
return new AlarmId(uuid); return new AlarmId(uuid);
case ALARM_COMMENT:
return new AlarmCommentId(uuid);
case RULE_CHAIN: case RULE_CHAIN:
return new RuleChainId(uuid); return new RuleChainId(uuid);
case RULE_NODE: case RULE_NODE:

9
dao/src/main/java/org/thingsboard/server/dao/alarm/BaseAlarmCommentService.java

@ -117,13 +117,4 @@ public class BaseAlarmCommentService extends AbstractEntityService implements Al
return null; return null;
} }
@Override
public Optional<HasId<?>> findEntity(TenantId tenantId, EntityId entityId) {
return Optional.ofNullable(findAlarmCommentById(tenantId, new AlarmCommentId(entityId.getId())));
}
@Override
public EntityType getEntityType() {
return EntityType.ALARM_COMMENT;
}
} }

3
rule-engine/rule-engine-components/src/main/java/org/thingsboard/rule/engine/util/EntitiesFieldsAsyncLoader.java

@ -57,9 +57,6 @@ public class EntitiesFieldsAsyncLoader {
case ALARM: case ALARM:
return getAsync(ctx.getAlarmService().findAlarmByIdAsync(ctx.getTenantId(), (AlarmId) original), return getAsync(ctx.getAlarmService().findAlarmByIdAsync(ctx.getTenantId(), (AlarmId) original),
EntityFieldsData::new); EntityFieldsData::new);
case ALARM_COMMENT:
return getAsync(ctx.getAlarmCommentService().findAlarmCommentByIdAsync(ctx.getTenantId(), (AlarmCommentId) original),
EntityFieldsData::new);
case RULE_CHAIN: case RULE_CHAIN:
return getAsync(ctx.getRuleChainService().findRuleChainByIdAsync(ctx.getTenantId(), (RuleChainId) original), return getAsync(ctx.getRuleChainService().findRuleChainByIdAsync(ctx.getTenantId(), (RuleChainId) original),
EntityFieldsData::new); EntityFieldsData::new);

4
rule-engine/rule-engine-components/src/main/java/org/thingsboard/rule/engine/util/TenantIdLoader.java

@ -71,10 +71,6 @@ public class TenantIdLoader {
case ALARM: case ALARM:
tenantEntity = ctx.getAlarmService().findAlarmById(ctxTenantId, new AlarmId(id)); tenantEntity = ctx.getAlarmService().findAlarmById(ctxTenantId, new AlarmId(id));
break; break;
case ALARM_COMMENT:
AlarmComment alarmComment = ctx.getAlarmCommentService().findAlarmCommentById(ctxTenantId, new AlarmCommentId(id));
tenantEntity = ctx.getAlarmService().findAlarmById(ctxTenantId, new AlarmId(alarmComment.getAlarmId().getId()));
break;
case RULE_CHAIN: case RULE_CHAIN:
tenantEntity = ctx.getRuleChainService().findRuleChainById(ctxTenantId, new RuleChainId(id)); tenantEntity = ctx.getRuleChainService().findRuleChainById(ctxTenantId, new RuleChainId(id));
break; break;

Loading…
Cancel
Save