|
|
|
@ -19,13 +19,16 @@ import com.fasterxml.jackson.databind.node.ObjectNode; |
|
|
|
import io.swagger.annotations.ApiOperation; |
|
|
|
import io.swagger.annotations.ApiParam; |
|
|
|
import org.springframework.beans.factory.annotation.Autowired; |
|
|
|
import org.springframework.http.HttpStatus; |
|
|
|
import org.springframework.security.access.prepost.PreAuthorize; |
|
|
|
import org.springframework.web.bind.annotation.*; |
|
|
|
import org.thingsboard.rule.engine.api.MailService; |
|
|
|
import org.thingsboard.rule.engine.api.SmsService; |
|
|
|
import org.thingsboard.server.common.data.AdminSettings; |
|
|
|
import org.thingsboard.server.common.data.Device; |
|
|
|
import org.thingsboard.server.common.data.UpdateMessage; |
|
|
|
import org.thingsboard.server.common.data.exception.ThingsboardException; |
|
|
|
import org.thingsboard.server.common.data.id.DeviceId; |
|
|
|
import org.thingsboard.server.common.data.id.TenantId; |
|
|
|
import org.thingsboard.server.common.data.security.model.SecuritySettings; |
|
|
|
import org.thingsboard.server.common.data.sms.config.TestSmsRequest; |
|
|
|
@ -38,8 +41,8 @@ import org.thingsboard.server.service.security.system.SystemSecurityService; |
|
|
|
import org.thingsboard.server.service.sync.vc.EntitiesVersionControlService; |
|
|
|
import org.thingsboard.server.service.update.UpdateService; |
|
|
|
|
|
|
|
import static org.thingsboard.server.controller.ControllerConstants.SYSTEM_AUTHORITY_PARAGRAPH; |
|
|
|
import static org.thingsboard.server.controller.ControllerConstants.TENANT_AUTHORITY_PARAGRAPH; |
|
|
|
import static org.thingsboard.server.controller.ControllerConstants.*; |
|
|
|
import static org.thingsboard.server.controller.ControllerConstants.DEVICE_ID; |
|
|
|
|
|
|
|
@RestController |
|
|
|
@TbCoreComponent |
|
|
|
@ -203,7 +206,7 @@ public class AdminController extends BaseController { |
|
|
|
@ApiOperation(value = "Creates or Updates the version control settings (saveVersionControlSettings)", |
|
|
|
notes = "Creates or Updates the version control settings object. " + TENANT_AUTHORITY_PARAGRAPH) |
|
|
|
@PreAuthorize("hasAuthority('TENANT_ADMIN')") |
|
|
|
@PostMapping("/vsSettings") |
|
|
|
@PostMapping("/vcSettings") |
|
|
|
public void saveVersionControlSettings(@RequestBody EntitiesVersionControlSettings settings) throws ThingsboardException { |
|
|
|
try { |
|
|
|
accessControlService.checkPermission(getCurrentUser(), Resource.ADMIN_SETTINGS, Operation.WRITE); |
|
|
|
@ -213,6 +216,21 @@ public class AdminController extends BaseController { |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
@ApiOperation(value = "Delete version control settings (deleteVersionControlSettings)", |
|
|
|
notes = "Deletes the version control settings." |
|
|
|
+ TENANT_AUTHORITY_PARAGRAPH) |
|
|
|
@PreAuthorize("hasAuthority('TENANT_ADMIN')") |
|
|
|
@RequestMapping(value = "/vcSettings", method = RequestMethod.DELETE) |
|
|
|
@ResponseStatus(value = HttpStatus.OK) |
|
|
|
public void deleteVersionControlSettings() throws ThingsboardException { |
|
|
|
try { |
|
|
|
accessControlService.checkPermission(getCurrentUser(), Resource.ADMIN_SETTINGS, Operation.DELETE); |
|
|
|
versionControlService.deleteVersionControlSettings(getTenantId()); |
|
|
|
} catch (Exception e) { |
|
|
|
throw handleException(e); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
@ApiOperation(value = "Check version control access (checkVersionControlAccess)", |
|
|
|
notes = "Attempts to check version control access. " + TENANT_AUTHORITY_PARAGRAPH) |
|
|
|
@PreAuthorize("hasAuthority('TENANT_ADMIN')") |
|
|
|
|