added methods for RestClient, added system comment after comment deletion
This commit is contained in:
parent
c9ae2767ff
commit
2f59a74b65
@ -104,7 +104,7 @@ public class AlarmCommentController extends BaseController {
|
||||
@RequestMapping(value = "/alarm/{alarmId}/comment", method = RequestMethod.GET)
|
||||
@ResponseBody
|
||||
public PageData<AlarmCommentInfo> getAlarmComments(
|
||||
@ApiParam(value = ALARM_ID_PARAM_DESCRIPTION)
|
||||
@ApiParam(value = ALARM_ID_PARAM_DESCRIPTION, required = true)
|
||||
@PathVariable(ALARM_ID) String strAlarmId,
|
||||
@ApiParam(value = PAGE_SIZE_DESCRIPTION, required = true)
|
||||
@RequestParam int pageSize,
|
||||
|
||||
@ -102,7 +102,7 @@ public class ControllerConstants {
|
||||
protected static final String ASSET_PROFILE_SORT_PROPERTY_ALLOWABLE_VALUES = "createdTime, name, description, isDefault";
|
||||
protected static final String ASSET_SORT_PROPERTY_ALLOWABLE_VALUES = "createdTime, name, type, label, customerTitle";
|
||||
protected static final String ALARM_SORT_PROPERTY_ALLOWABLE_VALUES = "createdTime, startTs, endTs, type, ackTs, clearTs, severity, status";
|
||||
protected static final String ALARM_COMMENT_SORT_PROPERTY_ALLOWABLE_VALUES = "createdTime";
|
||||
protected static final String ALARM_COMMENT_SORT_PROPERTY_ALLOWABLE_VALUES = "createdTime, id";
|
||||
protected static final String EVENT_SORT_PROPERTY_ALLOWABLE_VALUES = "ts, id";
|
||||
protected static final String EDGE_SORT_PROPERTY_ALLOWABLE_VALUES = "createdTime, name, type, label, customerTitle";
|
||||
protected static final String RULE_CHAIN_SORT_PROPERTY_ALLOWABLE_VALUES = "createdTime, name, root";
|
||||
|
||||
@ -17,10 +17,12 @@ package org.thingsboard.server.service.entitiy.alarm;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.thingsboard.common.util.JacksonUtil;
|
||||
import org.thingsboard.server.common.data.EntityType;
|
||||
import org.thingsboard.server.common.data.User;
|
||||
import org.thingsboard.server.common.data.alarm.Alarm;
|
||||
import org.thingsboard.server.common.data.alarm.AlarmComment;
|
||||
import org.thingsboard.server.common.data.alarm.AlarmCommentType;
|
||||
import org.thingsboard.server.common.data.audit.ActionType;
|
||||
import org.thingsboard.server.common.data.exception.ThingsboardException;
|
||||
import org.thingsboard.server.common.data.id.UserId;
|
||||
@ -48,5 +50,13 @@ public class DefaultTbAlarmCommentService extends AbstractTbEntityService implem
|
||||
public void deleteAlarmComment(Alarm alarm, AlarmComment alarmComment, User user) {
|
||||
alarmCommentService.deleteAlarmComment(alarm.getTenantId(), alarmComment.getId());
|
||||
notificationEntityService.notifyAlarmComment(alarm, alarmComment, ActionType.DELETED_COMMENT, user);
|
||||
|
||||
AlarmComment.AlarmCommentBuilder commentDeletedComment = AlarmComment.builder()
|
||||
.alarmId(alarm.getId())
|
||||
.type(AlarmCommentType.SYSTEM)
|
||||
.comment(JacksonUtil.newObjectNode().put("text",
|
||||
String.format("User %s deleted his comment", user.getName())));
|
||||
|
||||
alarmCommentService.createOrUpdateAlarmComment(alarm.getTenantId(), commentDeletedComment.build());
|
||||
}
|
||||
}
|
||||
|
||||
@ -66,6 +66,8 @@ import org.thingsboard.server.common.data.TenantProfile;
|
||||
import org.thingsboard.server.common.data.UpdateMessage;
|
||||
import org.thingsboard.server.common.data.User;
|
||||
import org.thingsboard.server.common.data.alarm.Alarm;
|
||||
import org.thingsboard.server.common.data.alarm.AlarmComment;
|
||||
import org.thingsboard.server.common.data.alarm.AlarmCommentInfo;
|
||||
import org.thingsboard.server.common.data.alarm.AlarmInfo;
|
||||
import org.thingsboard.server.common.data.alarm.AlarmSearchStatus;
|
||||
import org.thingsboard.server.common.data.alarm.AlarmSeverity;
|
||||
@ -84,6 +86,7 @@ import org.thingsboard.server.common.data.edge.EdgeInfo;
|
||||
import org.thingsboard.server.common.data.edge.EdgeInstallInstructions;
|
||||
import org.thingsboard.server.common.data.edge.EdgeSearchQuery;
|
||||
import org.thingsboard.server.common.data.entityview.EntityViewSearchQuery;
|
||||
import org.thingsboard.server.common.data.id.AlarmCommentId;
|
||||
import org.thingsboard.server.common.data.id.AlarmId;
|
||||
import org.thingsboard.server.common.data.id.AssetId;
|
||||
import org.thingsboard.server.common.data.id.AssetProfileId;
|
||||
@ -464,6 +467,29 @@ public class RestClient implements ClientHttpRequestInterceptor, Closeable {
|
||||
return restTemplate.postForEntity(baseURL + "/api/alarm", alarm, Alarm.class).getBody();
|
||||
}
|
||||
|
||||
public AlarmComment saveAlarmComment(AlarmId alarmId, AlarmComment alarmComment) {
|
||||
return restTemplate.postForEntity(baseURL + "/api/alarm/{alarmId}/comment", alarmComment, AlarmComment.class, alarmId.getId()).getBody();
|
||||
}
|
||||
|
||||
public void deleteAlarmComment(AlarmId alarmId, AlarmCommentId alarmCommentId) {
|
||||
restTemplate.delete(baseURL + "/api/alarm/{alarmId}/comment/{alarmCommentId}",
|
||||
alarmId.getId(), alarmCommentId.getId());
|
||||
}
|
||||
|
||||
public PageData<AlarmCommentInfo> getAlarmComments(AlarmId alarmId, PageLink pageLink) {
|
||||
String urlSecondPart = "/api/alarm/{alarmId}/comment";
|
||||
Map<String, String> params = new HashMap<>();
|
||||
params.put("alarmId", alarmId.getId().toString());
|
||||
|
||||
return restTemplate.exchange(
|
||||
baseURL + urlSecondPart + "&" + getUrlParams(pageLink),
|
||||
HttpMethod.GET,
|
||||
HttpEntity.EMPTY,
|
||||
new ParameterizedTypeReference<PageData<AlarmCommentInfo>>() {
|
||||
},
|
||||
params).getBody();
|
||||
}
|
||||
|
||||
public Optional<Asset> getAssetById(AssetId assetId) {
|
||||
try {
|
||||
ResponseEntity<Asset> asset = restTemplate.getForEntity(baseURL + "/api/asset/{assetId}", Asset.class, assetId.getId());
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user