-
getAccountStatus
- Questo metodo recupera lo stato corrente dell'account token. Questo metodo può essere chiamato dal
Token Admin
del codice concatenato o dal proprietario dell'account token.
-
@Validator(yup.string(), yup.string())
public async getAccountStatus(orgId: string, userId: string) {
const accountId = await this.Ctx.ERC721Account.generateAccountId(orgId, userId);
await this.Ctx.ERC721Auth.checkAuthorization("ERC721ACCOUNT_STATUS.get", "TOKEN", { accountId });
try {
return await this.Ctx.ERC721AccountStatus.getAccountStatus(accountId);
} catch (err) {
return await this.Ctx.ERC721AccountStatus.getDefaultAccountStatus(accountId);
}
}
- Parametri:
orgId: string
: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente.
userId: string
: il nome utente o l'ID e-mail dell'utente.
- Restituisce:
- In caso di operazione riuscita, una rappresentazione JSON dello stato dell'account token. Se non viene trovato alcuno stato nel libro contabile per il conto perché il conto è stato creato prima che la funzionalità di stato del conto fosse disponibile, lo stato viene elencato come
active
nella risposta.
- Esempio di valore restituito:
{
"assetType": "oaccountStatus",
"statusId": "oaccountStatus~5a0b0d8b1c6433af9fedfe0d9e6580e7cf6b6bb62a0de6267aaf79f79d5e96d7",
"accountId": "oaccount~1c568151c4acbcd1bd265c766c677145760a61c47fc8a3ba681a4cfbe287f9c1",
"status": "active"
}
-
getAccountStatusHistory
- Questo metodo recupera la cronologia dello stato dell'account. Questo metodo può essere chiamato dal
Token Admin
del codice concatenato o dal proprietario dell'account token.
-
public async getAccountStatusHistory(orgId: string, userId: string) {
const accountId = await this.Ctx.ERC721Account.generateAccountId(orgId, userId);
await this.Ctx.ERC721Account.getAccount(accountId);
await this.Ctx.ERC721Auth.checkAuthorization("ERC721ACCOUNT_STATUS.history", "TOKEN", { accountId });
const status_id = await this.Ctx.ERC721AccountStatus.generateAccountStatusId(accountId);
let accountStatusHistory: any;
try {
accountStatusHistory = await this.Ctx.ERC721AccountStatus.history(status_id);
} catch (err) {
return [];
}
return accountStatusHistory;
}
- Parametri:
orgId: string
: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente.
userId: string
: il nome utente o l'ID e-mail dell'utente.
- Restituisce:
- In caso di operazione riuscita, la cronologia dello stato dell'account in formato JSON.
- Esempio di valore restituito:
[
{
"trxId": "d5c6d6f601257ba9b6edaf5b7660f00adc13c37d5321b8f7d3a35afab2e93e63",
"timeStamp": "2022-12-02T10:39:14.000Z",
"value": {
"assetType": "oaccountStatus",
"statusId": "oaccountStatus~5a0b0d8b1c6433af9fedfe0d9e6580e7cf6b6bb62a0de6267aaf79f79d5e96d7",
"accountId": "oaccount~1c568151c4acbcd1bd265c766c677145760a61c47fc8a3ba681a4cfbe287f9c1",
"status": "suspended"
}
},
{
"trxId": "e6c850cfa084dc20ad95fb2bb8165eef3a3bd62a0ac867cccee57c2003125183",
"timeStamp": "2022-12-02T10:37:50.000Z",
"value": {
"assetType": "oaccountStatus",
"statusId": "oaccountStatus~5a0b0d8b1c6433af9fedfe0d9e6580e7cf6b6bb62a0de6267aaf79f79d5e96d7",
"accountId": "oaccount~1c568151c4acbcd1bd265c766c677145760a61c47fc8a3ba681a4cfbe287f9c1",
"status": "active"
}
}
]
-
activateAccount
- Questo metodo attiva un account token. Questo metodo può essere richiamato solo da un
Token Admin
del codice concatenato. Impossibile attivare gli account eliminati. Per tutti i conti creati prima della disponibilità della funzionalità di stato del conto, è necessario chiamare questo metodo per impostare lo stato del conto su active
.
-
@Validator(yup.string(), yup.string())
public async activateAccount(orgId: string, userId: string) {
await this.Ctx.ERC721Auth.checkAuthorization("ERC721ACCOUNT_STATUS.activateAccount", "TOKEN");
const accountId = await this.Ctx.ERC721Account.generateAccountId(orgId, userId);
return await this.Ctx.ERC721Account.activateAccount(accountId);
}
- Parametri:
orgId: string
: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente.
userId: string
: il nome utente o l'ID e-mail dell'utente.
- Restituisce:
- In caso di operazione riuscita, una rappresentazione JSON dello stato dell'account token.
- Esempio di valore restituito:
{
"assetType": "oaccountStatus",
"statusId": "oaccountStatus~5a0b0d8b1c6433af9fedfe0d9e6580e7cf6b6bb62a0de6267aaf79f79d5e96d7",
"accountId": "oaccount~1c568151c4acbcd1bd265c766c677145760a61c47fc8a3ba681a4cfbe287f9c1",
"status": "active"
}
-
suspendAccount
- Questo metodo sospende un account token. Questo metodo può essere richiamato solo da un
Token Admin
del codice concatenato. Dopo la sospensione di un conto, non è possibile completare le operazioni che lo aggiornano. Impossibile sospendere un account eliminato.
-
@Validator(yup.string(), yup.string())
public async suspendAccount(orgId: string, userId: string) {
await this.Ctx.ERC721Auth.checkAuthorization("ERC721ACCOUNT_STATUS.suspendAccount", "TOKEN");
const accountId = await this.Ctx.ERC721Account.generateAccountId(orgId, userId);
return await this.Ctx.ERC721Account.suspendAccount(accountId);
}
- Parametri:
orgId: string
: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente.
userId: string
: il nome utente o l'ID e-mail dell'utente.
- Restituisce:
- In caso di operazione riuscita, una rappresentazione JSON dello stato dell'account token.
- Esempio di valore restituito:
{
"assetType": "oaccountStatus",
"statusId": "oaccountStatus~5a0b0d8b1c6433af9fedfe0d9e6580e7cf6b6bb62a0de6267aaf79f79d5e96d7",
"accountId": "oaccount~1c568151c4acbcd1bd265c766c677145760a61c47fc8a3ba681a4cfbe287f9c1",
"status": "suspended"
}
-
deleteAccount
- Questo metodo elimina un account token. Questo metodo può essere richiamato solo da un
Token Admin
del codice concatenato. Dopo l'eliminazione di un account, non è possibile completare le operazioni che lo aggiornano. L'account eliminato è in uno stato finale e non può essere modificato in nessun altro stato. Per eliminare un conto, il saldo del conto deve essere zero.
-
@Validator(yup.string(), yup.string())
public async deleteAccount(orgId: string, userId: string) {
await this.Ctx.ERC721Auth.checkAuthorization("ERC721ACCOUNT_STATUS.deleteAccount", "TOKEN");
const accountId = await this.Ctx.ERC721Account.generateAccountId(orgId, userId);
return await this.Ctx.ERC721Account.deleteAccount(accountId);
}
- Parametri:
orgId: string
: l'ID del provider di servizi di appartenenza (MSP) dell'utente nell'organizzazione corrente.
userId: string
: il nome utente o l'ID e-mail dell'utente.
- Restituisce:
- In caso di operazione riuscita, una rappresentazione JSON dello stato dell'account token.
- Esempio di valore restituito:
{
"assetType": "oaccountStatus",
"statusId": "oaccountStatus~5a0b0d8b1c6433af9fedfe0d9e6580e7cf6b6bb62a0de6267aaf79f79d5e96d7",
"accountId": "oaccount~1c568151c4acbcd1bd265c766c677145760a61c47fc8a3ba681a4cfbe287f9c1",
"status": "deleted"
}