From 4d592ac928d735d54f77c246801e17a5a09a4434 Mon Sep 17 00:00:00 2001 From: hongwei Date: Wed, 16 Jul 2025 12:39:11 +0200 Subject: [PATCH] bugfix/revert all functions to view trait. --- .../code/views/system/ViewDefinition.scala | 93 +++++++++ .../commons/model/ViewModel.scala | 181 ++++++++++++++++++ 2 files changed, 274 insertions(+) diff --git a/obp-api/src/main/scala/code/views/system/ViewDefinition.scala b/obp-api/src/main/scala/code/views/system/ViewDefinition.scala index 32f646481..8bee2519d 100644 --- a/obp-api/src/main/scala/code/views/system/ViewDefinition.scala +++ b/obp-api/src/main/scala/code/views/system/ViewDefinition.scala @@ -445,6 +445,99 @@ class ViewDefinition extends View with LongKeyedMapper[ViewDefinition] with Many } }) } + + //TODO All the following methods can be removed later, we use ViewPermission table instead. + override def canRevokeAccessToCustomViews : Boolean = canRevokeAccessToCustomViews_.get + override def canGrantAccessToCustomViews : Boolean = canGrantAccessToCustomViews_.get + def canSeeTransactionThisBankAccount : Boolean = canSeeTransactionThisBankAccount_.get + def canSeeTransactionRequests : Boolean = canSeeTransactionRequests_.get + def canSeeTransactionRequestTypes: Boolean = canSeeTransactionRequestTypes_.get + def canSeeTransactionOtherBankAccount : Boolean = canSeeTransactionOtherBankAccount_.get + def canSeeTransactionMetadata : Boolean = canSeeTransactionMetadata_.get + def canSeeTransactionDescription: Boolean = canSeeTransactionDescription_.get + def canSeeTransactionAmount: Boolean = canSeeTransactionAmount_.get + def canSeeTransactionType: Boolean = canSeeTransactionType_.get + def canSeeTransactionCurrency: Boolean = canSeeTransactionCurrency_.get + def canSeeTransactionStartDate: Boolean = canSeeTransactionStartDate_.get + def canSeeTransactionFinishDate: Boolean = canSeeTransactionFinishDate_.get + def canSeeTransactionBalance: Boolean = canSeeTransactionBalance_.get + def canSeeTransactionStatus: Boolean = canSeeTransactionStatus_.get + def canSeeComments: Boolean = canSeeComments_.get + def canSeeOwnerComment: Boolean = canSeeOwnerComment_.get + def canSeeTags : Boolean = canSeeTags_.get + def canSeeImages : Boolean = canSeeImages_.get + def canSeeAvailableViewsForBankAccount : Boolean = canSeeAvailableViewsForBankAccount_.get + def canSeeBankAccountOwners : Boolean = canSeeBankAccountOwners_.get + def canSeeBankAccountType : Boolean = canSeeBankAccountType_.get + def canSeeBankAccountBalance : Boolean = canSeeBankAccountBalance_.get + def canSeeBankAccountCurrency : Boolean = canSeeBankAccountCurrency_.get + def canQueryAvailableFunds : Boolean = canQueryAvailableFunds_.get + def canSeeBankAccountLabel : Boolean = canSeeBankAccountLabel_.get + def canUpdateBankAccountLabel : Boolean = canUpdateBankAccountLabel_.get + def canSeeBankAccountNationalIdentifier : Boolean = canSeeBankAccountNationalIdentifier_.get + def canSeeBankAccountSwiftBic : Boolean = canSeeBankAccountSwift_bic_.get + def canSeeBankAccountIban : Boolean = canSeeBankAccountIban_.get + def canSeeBankAccountNumber : Boolean = canSeeBankAccountNumber_.get + def canSeeBankAccountBankName : Boolean = canSeeBankAccountBankName_.get + def canSeeBankAccountBankPermalink : Boolean = canSeeBankAccountBankPermalink_.get + def canSeeBankRoutingScheme : Boolean = canSeeBankRoutingScheme_.get + def canSeeBankRoutingAddress : Boolean = canSeeBankRoutingAddress_.get + def canSeeBankAccountRoutingScheme : Boolean = canSeeBankAccountRoutingScheme_.get + def canSeeBankAccountRoutingAddress : Boolean = canSeeBankAccountRoutingAddress_.get + def canSeeViewsWithPermissionsForOneUser: Boolean = canSeeViewsWithPermissionsForOneUser_.get + def canSeeViewsWithPermissionsForAllUsers : Boolean = canSeeViewsWithPermissionsForAllUsers_.get + def canSeeOtherAccountNationalIdentifier : Boolean = canSeeOtherAccountNationalIdentifier_.get + def canSeeOtherAccountSwiftBic : Boolean = canSeeOtherAccountSWIFT_BIC_.get + def canSeeOtherAccountIban : Boolean = canSeeOtherAccountIBAN_.get + def canSeeOtherAccountBankName : Boolean = canSeeOtherAccountBankName_.get + def canSeeOtherAccountNumber : Boolean = canSeeOtherAccountNumber_.get + def canSeeOtherAccountMetadata : Boolean = canSeeOtherAccountMetadata_.get + def canSeeOtherAccountKind : Boolean = canSeeOtherAccountKind_.get + def canSeeOtherBankRoutingScheme : Boolean = canSeeOtherBankRoutingScheme_.get + def canSeeOtherBankRoutingAddress : Boolean = canSeeOtherBankRoutingAddress_.get + def canSeeOtherAccountRoutingScheme : Boolean = canSeeOtherAccountRoutingScheme_.get + def canSeeOtherAccountRoutingAddress : Boolean = canSeeOtherAccountRoutingAddress_.get + def canSeeMoreInfo: Boolean = canSeeMoreInfo_.get + def canSeeUrl: Boolean = canSeeUrl_.get + def canSeeImageUrl: Boolean = canSeeImageUrl_.get + def canSeeOpenCorporatesUrl: Boolean = canSeeOpenCorporatesUrl_.get + def canSeeCorporateLocation : Boolean = canSeeCorporateLocation_.get + def canSeePhysicalLocation : Boolean = canSeePhysicalLocation_.get + def canSeePublicAlias : Boolean = canSeePublicAlias_.get + def canSeePrivateAlias : Boolean = canSeePrivateAlias_.get + def canAddMoreInfo : Boolean = canAddMoreInfo_.get + def canAddUrl : Boolean = canAddURL_.get + def canAddImageUrl : Boolean = canAddImageURL_.get + def canAddOpenCorporatesUrl : Boolean = canAddOpenCorporatesUrl_.get + def canAddCorporateLocation : Boolean = canAddCorporateLocation_.get + def canAddPhysicalLocation : Boolean = canAddPhysicalLocation_.get + def canAddPublicAlias : Boolean = canAddPublicAlias_.get + def canAddPrivateAlias : Boolean = canAddPrivateAlias_.get + def canAddCounterparty : Boolean = canAddCounterparty_.get + def canGetCounterparty : Boolean = canGetCounterparty_.get + def canDeleteCounterparty : Boolean = canDeleteCounterparty_.get + def canDeleteCorporateLocation : Boolean = canDeleteCorporateLocation_.get + def canDeletePhysicalLocation : Boolean = canDeletePhysicalLocation_.get + def canEditOwnerComment: Boolean = canEditOwnerComment_.get + def canAddComment : Boolean = canAddComment_.get + def canDeleteComment: Boolean = canDeleteComment_.get + def canAddTag : Boolean = canAddTag_.get + def canDeleteTag : Boolean = canDeleteTag_.get + def canAddImage : Boolean = canAddImage_.get + def canDeleteImage : Boolean = canDeleteImage_.get + def canAddWhereTag : Boolean = canAddWhereTag_.get + def canSeeWhereTag : Boolean = canSeeWhereTag_.get + def canDeleteWhereTag : Boolean = canDeleteWhereTag_.get + def canAddTransactionRequestToOwnAccount: Boolean = false //we do not need this field, set this to false. + def canAddTransactionRequestToAnyAccount: Boolean = canAddTransactionRequestToAnyAccount_.get + def canAddTransactionRequestToBeneficiary: Boolean = canAddTransactionRequestToBeneficiary_.get + def canSeeBankAccountCreditLimit: Boolean = canSeeBankAccountCreditLimit_.get + def canCreateDirectDebit: Boolean = canCreateDirectDebit_.get + def canCreateStandingOrder: Boolean = canCreateStandingOrder_.get + def canCreateCustomView: Boolean = canCreateCustomView_.get + def canDeleteCustomView: Boolean = canDeleteCustomView_.get + def canUpdateCustomView: Boolean = canUpdateCustomView_.get + def canGetCustomView: Boolean = canGetCustomView_.get } object ViewDefinition extends ViewDefinition with LongKeyedMetaMapper[ViewDefinition] { diff --git a/obp-commons/src/main/scala/com/openbankproject/commons/model/ViewModel.scala b/obp-commons/src/main/scala/com/openbankproject/commons/model/ViewModel.scala index cae038259..91d09f7e6 100644 --- a/obp-commons/src/main/scala/com/openbankproject/commons/model/ViewModel.scala +++ b/obp-commons/src/main/scala/com/openbankproject/commons/model/ViewModel.scala @@ -161,4 +161,185 @@ trait View { def createViewAndPermissions(viewSpecification : ViewSpecification) : Unit def deleteViewPermissions :List[Boolean] + + //TODO All the following methods can be removed later, we use ViewPermission table instead. + def canSeeTransactionRequests: Boolean + + def canSeeTransactionRequestTypes: Boolean + + def canSeeTransactionThisBankAccount: Boolean + + def canSeeTransactionOtherBankAccount: Boolean + + def canSeeTransactionMetadata: Boolean + + def canSeeTransactionDescription: Boolean + + def canSeeTransactionAmount: Boolean + + def canSeeTransactionType: Boolean + + def canSeeTransactionCurrency: Boolean + + def canSeeTransactionStartDate: Boolean + + def canSeeTransactionFinishDate: Boolean + + def canSeeTransactionBalance: Boolean + + def canSeeTransactionStatus: Boolean + + //transaction metadata + def canSeeComments: Boolean + + def canSeeOwnerComment: Boolean + + def canSeeTags: Boolean + + def canSeeImages: Boolean + + //Bank account fields + def canSeeAvailableViewsForBankAccount: Boolean + + def canSeeBankAccountOwners: Boolean + + def canSeeBankAccountType: Boolean + def canUpdateBankAccountLabel: Boolean + + def canSeeBankAccountBalance: Boolean + + def canQueryAvailableFunds: Boolean + + def canSeeBankAccountCurrency: Boolean + + def canSeeBankAccountLabel: Boolean + + def canSeeBankAccountNationalIdentifier: Boolean + + def canSeeBankAccountSwiftBic: Boolean + + def canSeeBankAccountIban: Boolean + + def canSeeBankAccountNumber: Boolean + + def canSeeBankAccountBankName: Boolean + + def canSeeBankRoutingScheme: Boolean + + def canSeeBankRoutingAddress: Boolean + + def canSeeBankAccountRoutingScheme: Boolean + + def canSeeBankAccountRoutingAddress: Boolean + + def canSeeViewsWithPermissionsForOneUser: Boolean + + def canSeeViewsWithPermissionsForAllUsers: Boolean + + //other bank account (counterparty) fields + def canSeeOtherAccountNationalIdentifier: Boolean + + def canSeeOtherAccountSwiftBic: Boolean + + def canSeeOtherAccountIban: Boolean + + def canSeeOtherAccountBankName: Boolean + + def canSeeOtherAccountNumber: Boolean + + def canSeeOtherAccountMetadata: Boolean + + def canSeeOtherAccountKind: Boolean + + def canSeeOtherBankRoutingScheme: Boolean + + def canSeeOtherBankRoutingAddress: Boolean + + def canSeeOtherAccountRoutingScheme: Boolean + + def canSeeOtherAccountRoutingAddress: Boolean + + //other bank account meta data - read + def canSeeMoreInfo: Boolean + + def canSeeUrl: Boolean + + def canSeeImageUrl: Boolean + + def canSeeOpenCorporatesUrl: Boolean + + def canSeeCorporateLocation: Boolean + + def canSeePhysicalLocation: Boolean + + def canSeePublicAlias: Boolean + + def canSeePrivateAlias: Boolean + + //other bank account (Counterparty) meta data - write + def canAddMoreInfo: Boolean + + def canAddUrl: Boolean + + def canAddImageUrl: Boolean + + def canAddOpenCorporatesUrl: Boolean + + def canAddCorporateLocation: Boolean + + def canAddPhysicalLocation: Boolean + + def canAddPublicAlias: Boolean + + def canAddPrivateAlias: Boolean + + def canAddCounterparty: Boolean + + def canGetCounterparty: Boolean + + def canDeleteCounterparty: Boolean + + def canDeleteCorporateLocation: Boolean + + def canDeletePhysicalLocation: Boolean + + //writing access + def canEditOwnerComment: Boolean + + def canAddComment: Boolean + + def canDeleteComment: Boolean + + def canAddTag: Boolean + + def canDeleteTag: Boolean + + def canAddImage: Boolean + + def canDeleteImage: Boolean + + def canAddWhereTag: Boolean + + def canSeeWhereTag: Boolean + + def canDeleteWhereTag: Boolean + + def canAddTransactionRequestToOwnAccount: Boolean //added following two for payments + def canAddTransactionRequestToAnyAccount: Boolean + def canAddTransactionRequestToBeneficiary: Boolean + + def canSeeBankAccountCreditLimit: Boolean + + def canCreateDirectDebit: Boolean + + def canCreateStandingOrder: Boolean + + //If any view set these to true, you can create/delete/update the custom view + def canCreateCustomView: Boolean + def canDeleteCustomView: Boolean + def canUpdateCustomView: Boolean + def canGetCustomView: Boolean + + def canRevokeAccessToCustomViews : Boolean + def canGrantAccessToCustomViews : Boolean } \ No newline at end of file