Browse Source

isolated tenant improvements

pull/2622/head
YevhenBondarenko 6 years ago
committed by Andrew Shvayka
parent
commit
e83d69c40c
  1. 11
      application/src/main/java/org/thingsboard/server/controller/TenantController.java
  2. 5
      application/src/main/java/org/thingsboard/server/service/install/SqlDatabaseUpgradeService.java
  3. 4
      ui/src/app/tenant/tenant-fieldset.tpl.html

11
application/src/main/java/org/thingsboard/server/controller/TenantController.java

@ -28,6 +28,7 @@ import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.ResponseStatus;
import org.springframework.web.bind.annotation.RestController;
import org.thingsboard.server.common.data.Tenant;
import org.thingsboard.server.common.data.exception.ThingsboardErrorCode;
import org.thingsboard.server.common.data.exception.ThingsboardException;
import org.thingsboard.server.common.data.id.TenantId;
import org.thingsboard.server.common.data.page.TextPageData;
@ -72,6 +73,16 @@ public class TenantController extends BaseController {
try {
boolean newTenant = tenant.getId() == null;
if (!newTenant) {
Tenant oldTenant = tenantService.findTenantById(tenant.getTenantId());
if (oldTenant.isIsolatedTbCore() != tenant.isIsolatedTbCore()) {
throw new ThingsboardException("Field isolatedTbCore from Tenant can't be changed.", ThingsboardErrorCode.BAD_REQUEST_PARAMS);
}
if (oldTenant.isIsolatedTbRuleEngine() != tenant.isIsolatedTbRuleEngine()) {
throw new ThingsboardException("Field isolatedTbRuleEngine from Tenant can't be changed.", ThingsboardErrorCode.BAD_REQUEST_PARAMS);
}
}
Operation operation = newTenant ? Operation.CREATE : Operation.WRITE;
accessControlService.checkPermission(getCurrentUser(), Resource.TENANT, operation,

5
application/src/main/java/org/thingsboard/server/service/install/SqlDatabaseUpgradeService.java

@ -221,7 +221,10 @@ public class SqlDatabaseUpgradeService implements DatabaseEntitiesUpgradeService
}
}
}
conn.createStatement().execute("ALTER TABLE tenant ADD COLUMN isolated_tb_core boolean DEFAULT (false), ADD COLUMN isolated_tb_rule_engine boolean DEFAULT (false)");
try {
conn.createStatement().execute("ALTER TABLE tenant ADD COLUMN isolated_tb_core boolean DEFAULT (false), ADD COLUMN isolated_tb_rule_engine boolean DEFAULT (false)");
} catch (Exception e) {
}
log.info("Schema updated.");
}
break;

4
ui/src/app/tenant/tenant-fieldset.tpl.html

@ -47,14 +47,14 @@
</md-input-container>
<tb-contact contact="tenant" the-form="theForm" is-edit="isEdit"></tb-contact>
<md-input-container class="md-block">
<md-checkbox ng-disabled="$root.loading || !isEdit"
<md-checkbox ng-disabled="{{theForm.$name != 'theForm'}}"
ng-model="tenant.isolatedTbCore">
{{'tenant.isolated-tb-core' | translate}}<br/>
<span style="font-size: 10px">{{'tenant.isolated-tb-core-details' | translate}}</span>
</md-checkbox>
</md-input-container>
<md-input-container class="md-block">
<md-checkbox ng-disabled="$root.loading || !isEdit"
<md-checkbox ng-disabled="{{theForm.$name != 'theForm'}}"
ng-model="tenant.isolatedTbRuleEngine">
{{'tenant.isolated-tb-rule-engine' | translate}}<br/>
<span style="font-size: 10px">{{'tenant.isolated-tb-rule-engine-details' | translate}}</span>

Loading…
Cancel
Save