Support Projects in Userdata

This commit is contained in:
Pearl Dsilva 2024-07-11 09:31:44 -04:00
parent beebeed5e2
commit 8410707f20
3 changed files with 32 additions and 4 deletions

View File

@ -46,6 +46,14 @@ public class UserDataResponse extends BaseResponseWithAnnotations {
@SerializedName(ApiConstants.DOMAIN) @Param(description="the domain name of the userdata owner") @SerializedName(ApiConstants.DOMAIN) @Param(description="the domain name of the userdata owner")
private String domain; private String domain;
@SerializedName(ApiConstants.PROJECT_ID)
@Param(description = "the project id of the userdata owner")
private String projectId;
@SerializedName(ApiConstants.PROJECT)
@Param(description = "the project name of the userdata owner")
private String projectName;
@SerializedName(ApiConstants.USER_DATA) @Param(description="base64 encoded userdata content") @SerializedName(ApiConstants.USER_DATA) @Param(description="base64 encoded userdata content")
private String userData; private String userData;
@ -125,4 +133,12 @@ public class UserDataResponse extends BaseResponseWithAnnotations {
public void setDomainName(String domain) { public void setDomainName(String domain) {
this.domain = domain; this.domain = domain;
} }
public void setProjectId(String projectId) {
this.projectId = projectId;
}
public void setProjectName(String projectName) {
this.projectName = projectName;
}
} }

View File

@ -4690,8 +4690,14 @@ public class ApiResponseHelper implements ResponseGenerator {
public UserDataResponse createUserDataResponse(UserData userData) { public UserDataResponse createUserDataResponse(UserData userData) {
UserDataResponse response = new UserDataResponse(userData.getUuid(), userData.getName(), userData.getUserData(), userData.getParams()); UserDataResponse response = new UserDataResponse(userData.getUuid(), userData.getName(), userData.getUserData(), userData.getParams());
Account account = ApiDBUtils.findAccountById(userData.getAccountId()); Account account = ApiDBUtils.findAccountById(userData.getAccountId());
response.setAccountId(account.getUuid()); if (account.getType() == Account.Type.PROJECT) {
response.setAccountName(account.getAccountName()); Project project = ApiDBUtils.findProjectByProjectAccountIdIncludingRemoved(account.getAccountId());
response.setProjectId(project.getUuid());
response.setProjectName(project.getName());
} else {
response.setAccountName(account.getAccountName());
response.setAccountId(account.getUuid());
}
Domain domain = ApiDBUtils.findDomainById(userData.getDomainId()); Domain domain = ApiDBUtils.findDomainById(userData.getDomainId());
response.setDomainId(domain.getUuid()); response.setDomainId(domain.getUuid());
response.setDomainName(domain.getName()); response.setDomainName(domain.getName());

View File

@ -820,11 +820,14 @@ export default {
label: 'label.remove.user.data', label: 'label.remove.user.data',
message: 'message.please.confirm.remove.user.data', message: 'message.please.confirm.remove.user.data',
dataView: true, dataView: true,
args: ['id', 'account', 'domainid'], args: ['id', 'account', 'domainid', 'projectid'],
mapping: { mapping: {
id: { id: {
value: (record, params) => { return record.id } value: (record, params) => { return record.id }
}, },
projectid: {
value: (record, params) => { return record.projectid }
},
account: { account: {
value: (record, params) => { return record.account } value: (record, params) => { return record.account }
}, },
@ -838,7 +841,10 @@ export default {
return selection.map(x => { return selection.map(x => {
const data = record.filter(y => { return y.id === x }) const data = record.filter(y => { return y.id === x })
return { return {
id: x, account: data[0].account, domainid: data[0].domainid id: x,
account: data[0].account,
domainid: data[0].domainid,
projectid: data[0].projectid
} }
}) })
} }