
# Changelog
All notable changes to this project will be documented in this file.


## [Released]
## [12.1.0] - 10/03/2022



### Enhancements
#INTRD-1692 - RT job performance improvement
#INTRD-1858 - Change logs levels on frontend servlet
#INTRD-1988 - Upgrade Dependencies having severity vulnerabilities of CRITICAL and HIGH
#INTRD-1994 - Mediation job improvement
#INTRD-2023 - Mig 8.6.8 > Performance Job GDPR
#INTRD-2049 - Show custom fields in RT details screen in admin gui
#INTRD-2082 - User account detail screen fails to open when WO size per user acount/wallet is large
#INTRD-2397 - Delete all System.out from code 
#INTRD-2421 - Remove account_entity table
#INTRD-2498 -  Add quoteOffer and OrderOffer in invoiceLine entity + update services
#INTRD-2535 - Problème avec les règles de surcharge lorsque deux quoteOffer sur la même offer template
#INTRD-3210 - InvoiceLine aggregates - group by Tax and set it in the invoiceline
#INTRD-3359 - Adding tag \adjustedInvoiceNumber\ to XML invoice should be supported for multiple adjustement codes values
#INTRD-3517 - Durring a charge rating, the param \isVirtual\ should be passed to the context of any customized Script executed through this rating
#INTRD-4204 - UsageJob : Filter the list of open EDRs 
#INTRD-4294 - Refonte et optimisation de l'ecran des utilisateurs 
#INTRD-4393 - SubscriptionAndProductsToInstantiate - CF and accesses not created
#INTRD-4616 - Add support for invalidation type cache for opencell-tenant-cache, opencell-cft-cache, opencell-cet-cache and opencell-notification-cache
#INTRD-4693 - [Postman] full crud migration
#INTRD-4705 - Index Creation on attribute instance table and WOP charge instance
#INTRD-4841 - CPQ-Performance : Add indexes
#INTRD-4872 - GUI AccountingWriting - add search filter on extraParam2
#INTRD-4875 - [INNOV] S3 implementation using AWS SDK for Java
#INTRD-5381 - [API] Charge is not active when setting status to active
#INTRD-5494 - InvoiceLine entity - fire CRUD events

### Issues
#INTRD-1579 - Attributes are not instantiated when instantiating services
#INTRD-1603 - [BUG] Payment schedule: Could not commit transaction while activating service
#INTRD-1790 - [Back] API: product code with space
#INTRD-2034 - NPE when updating a Customer account code 
#INTRD-2091 - quotation - charge Label in prices block is not filled
#INTRD-2143 - [Regression] No subscription created after the validation of an order
#INTRD-2221 - Unable to publish a price version if another price version is overlaping dates in draft status
#INTRD-2223 - Unable to set-up a commercial offer if today's date is not included in the validity period
#INTRD-2227 - [Regression] technical issue when viewing invoice in the portal
#INTRD-2243 - [Regression] INTRD-1951
#INTRD-2249 - Error 500 après suppréssion d'un accounting article
#INTRD-2252 - code articleMapping n'est pas unique
#INTRD-2256 - [Change offer ] Issue on subscription activation 
#INTRD-2301 - [Regression] Can not create a new subscription
#INTRD-2302 - Error on invoice creation
#INTRD-2332 - [BACK] Problem of Swagger generation while going up to KeyCloak version 11.0.3
#INTRD-2372 - 13 accounting periods are generated instead of 12
#INTRD-2388 - Article code value is empty in the XML invoice file
#INTRD-2404 - [API] duplicate product hierarchy
#INTRD-2424 - API + XML Quotation : régression sur le total par offre dans le devis
#INTRD-2432 - Trial balance resulsts
#INTRD-2464 - NPE When update PricePlanMatrixVersion
#INTRD-2468 - Download does not work in Report Extract execution
#INTRD-2487 - retour d'une NPE lors de la valorisation si le seller du customer est null
#INTRD-2530 - NPE at API /account/accountHierarchy/find /account/accountHierarchy/filtering when param calculateBalances is set to null
#INTRD-2559 - Offre DOLMEN - Agrégation sur 1 seule ligne avec un article au hasard lorsque le même produit a plusieurs charges
#INTRD-2560 - Les attributs au niveau offre, qui ont une règle commerciale ne sont pas marqués comme « ruled »
#INTRD-2568 - Report extract - maximum de ligne par rapport
#INTRD-2581 - Resiliating a subscription triggers NPE if a recurring charge was never charged
#INTRD-2604 - (RT_JOB - with WOs AGG]AliasToAggregatedWalletOperationResultTransformer triggers NPE if generated aggregate Query dosen't select cfvalues
#INTRD-2605 - Adding new field \old_wallet_id\ in WO requires to redefine View billing_wallet_operation_period
#INTRD-2625 - API User - Role is always mandatory
#INTRD-2626 - Duplication of offerItems already duplicated
#INTRD-2629 - Reimbursing of subscription charges when terminating a subscription does not consider if subscription charge was applied
#INTRD-2630 - Termination of user account will terminate subscriptions without considering if subscription is already terminated
#INTRD-2645 - OfferID not set in the quote price (quote, offer)
#INTRD-2646 - disable the prorata in the quotation process
#INTRD-2676 - [BACK] subscription screen: API bug in creation & update
#INTRD-2701 - Monthly Timer configuration issue
#INTRD-2705 - [BACK] Error deleting attribute
#INTRD-2806 - Ajouter le nom d’une offre par quoteline dans le QUOTEXML
#INTRD-2850 - Configuration Swagger V2 erronée
#INTRD-2856 - [invoice line] : Problem on rounding rule
#INTRD-2857 - Régression sur la version 11.0.12 lors d’appel de l’api générique /opencell/api/rest/v2/generic/all/quoteOffer
#INTRD-2907 - Error on creating webhooks, pre-appending a useless body= in webhook bodies
#INTRD-3054 - Add new API /cancelSubscriptionTerminaition that should restore subscription's old renew config and subscribedTillDate values
#INTRD-3056 - RT_Job with Aggr - WoAggregationLine with ChargeInstance throws AggregatedWo instantiation exception
#INTRD-3074 - [Regression] Failed to execute Invoice_Lines_Job_V2
#INTRD-3094 - WalletOperation is missing in the TaxMapping script context
#INTRD-3108 - Charge - Linked Attribute issue
#INTRD-3129 - When refunding a WO during rerating, accounting code does not get copied to a refund WO
#INTRD-3138 - ChargeCDR API - resulted wo.chargeInstanceId differs between isVirtual = true / false 
#INTRD-3175 - [API] the price version lose grid data when duplicated twice
#INTRD-3176 - [API] the error message when deleting a published price version
#INTRD-3231 - [Transfer] Credit transfer KO 
#INTRD-3268 - [CPQ] Quote validation process (no quoteProduct is linked to the created serviceInstance)
#INTRD-3269 - Publication nouvelle version cpqQuote
#INTRD-3273 - When creating and duplicating a dunning template, the status must be false by default
#INTRD-3281 - Order validation issue after updating the order progress to 100%
#INTRD-3285 - Notification cache is not updated automatically
#INTRD-3293 - POST/catalog/products/{productCode}/addCharges/
#INTRD-3294 - POST /catalog/products/{productCode}/removeCharges/
#INTRD-3305 - Counters are not well instanciated
#INTRD-3319 - Can not add a new product to Offer via API
#INTRD-3321 - API - Can not dissociate a product from an offer
#INTRD-3329 - Subscription is not activated when Subscription date is reached
#INTRD-3336 - [API] delete a referenced price plan version
#INTRD-3346 - @Stateless annotation is missing in AccountsManagementApiServices
#INTRD-3379 - ServiceInstance.splitChargeInstances() doesn't work if one of its chargeInstances is instance of HibernateProxy instead of real Charge classe
#INTRD-3409 - regression on invoice line creation
#INTRD-3410 - [security] File servlet should be limited to media folder and shouldn't return zipped folders
#INTRD-3431 - Massive calls to RumSequenceRs triggers org.hibernate.StaleObjectStateException 
#INTRD-3432 - Manual refund by card KO
#INTRD-3438 - It's possible to import a value not belonging to the list of text values
#INTRD-3442 - [opencell Admin]
#INTRD-3477 - Création d'un article à partir de l'invoice impossible
#INTRD-3478 - Unable to save updates on order offer in some cases
#INTRD-3487 - NPE on jobInstance API list
#INTRD-3499 - [Regression] Duplication of attributes instances after updating service instance
#INTRD-3504 - [gdpr|fix] Anonymize Payment method data
#INTRD-3535 - PricePlan matrix : Attribute of type EL are not well evaluated
#INTRD-3555 - [invoice] FK violation when calculating a draft invoice from Portal
#INTRD-3563 - Duplicating lines on quote not working
#INTRD-3565 - Quotation prices - ajout de articleDescription
#INTRD-3575 - invoice_id and invoice_line_id are not set at billing_rated_transaction
#INTRD-3589 - Duration is always = 1h 00m 00s
#INTRD-3595 - [mediation] : non tranmission de l'EDR à l'EL de valorisation d'un priceplan
#INTRD-3598 - Change the tab name for a transaction attribute of a scripting job 
#INTRD-3603 - Refactor usage, oneshot and recurring rating so that failure to rate would not result in a rollback
#INTRD-3622 - [GenericWorkflowApi] update workflow status list
#INTRD-3632 - Duplicate quote issue - prices duplicated
#INTRD-3678 - Usage job on 11.X returns 0 OK
#INTRD-3706 - Mediation job : The duplicated Cdr are processed in V11
#INTRD-3765 -  DeleteCustomerScript causes a timeout after 2 hours of running
#INTRD-3802 - NullPointerException using a function in generic API
#INTRD-3816 - rated transaction status not changed to BILLED after invoicing
#INTRD-3822 - Fix charge usage quotation
#INTRD-3872 - [Back] Regression: RatedTransaction are not well grouped
#INTRD-3875 - Change \InvoiceLineService\ Accessebility to protected in XmlInvoiceCreatorScript 
#INTRD-3883 - NPE when trying to publish new quote version 
#INTRD-3892 - [Back]- [contractLine]- cannot duplicate pricePlanMatrixVersions
#INTRD-3933 - [BillingRun]: Not the same behaviour between API and IHM
#INTRD-3960 - [BACK-Api] respect api response structure
#INTRD-3961 - Accounting article line with only product criteria are not retrieved
#INTRD-3968 - Allow closing a product version
#INTRD-3975 - ServiceInstance.splitChargeInstances() throws java.lang.ClassCastException: class ChargeInstance$HibernateProxy$rBx80EnP cannot be cast to RecurringChargeInstance
#INTRD-3977 - [API] similar values in the price grid lines
#INTRD-3986 - [portal] userManagement should not be required to access offer list
#INTRD-3994 - [Regression] NullPointerException when publishing a quote version
#INTRD-4041 - Missing Tax and Tax rate details on invoices lines
#INTRD-4118 - [Regression] EJBTransactionRolledbackException during quotation
#INTRD-4152 - [DSP2] INGENICO - Authentication failures
#INTRD-4168 - [admin] Issue in drop down CT UI 
#INTRD-4191 - [API] create customer account hierarchy
#INTRD-4192 - [BACK- API] Order creation/edition: the order N° is not saved
#INTRD-4206 - Incompatibility rule not working when having OR operator between 2 source lines
#INTRD-4218 -  Users search is not working 
#INTRD-4219 - [API] the error message on endOf dunning level
#INTRD-4228 - Bug Accounting period manager
#INTRD-4231 - [api] chargeCdr[List] missing WalletOperation.id when returnWalletOperationDetails is true
#INTRD-4248 - [api] Generate invoice failed trying to compute invoice minimum
#INTRD-4267 - issue when creating an invoice line
#INTRD-4268 - [Reg] Line having similar values should count price
#INTRD-4275 - accounting period not closed for regular user, even though closed for all users 
#INTRD-4277 - [DBMS agnostic] : Create Custom table for Oracle
#INTRD-4279 - Usage charge quotation - quantity carried by an EL attribute
#INTRD-4296 - [Regression] RollbackException ARJUNA016053 when creating accountingPeriods
#INTRD-4298 - [API] import a price grid with wrong values
#INTRD-4325 - Problem on product creation when currentProductVersion is provided
#INTRD-4351 - InvoiceNumber, customerAccountLegalEntityTypeCode and customerAccountLastName are missing in the reminder email
#INTRD-4367 - [API] the error messages are not correct
#INTRD-4396 - Problème de format de date sur Custom Field (CF)
#INTRD-4402 - auto activation of dunning policy
#INTRD-4447 - [WorkFlow] : problème transition
#INTRD-4487 - Updated Due date is not saved correctly
#INTRD-4497 - [Regression] UnhandledException when deleting invoice lines
#INTRD-4499 - InvoicingPlanItem APIs - correct thrown exceptions
#INTRD-4525 - [Regression] Cannot create quotes from portal
#INTRD-4537 - The surcharged getter method Product.getServiceUsageCharges() returns an empty list even the field Product.serviceUsageCharges is not empty
#INTRD-4549 - TriggerCollectionPlanLevelsJob throws an error when a dunningActionInstance.actionType = RETRY_PAYMENT is found
#INTRD-4555 - [Regression] contract probleme, statusDate
#INTRD-4563 - [DSP2] Add different urls for payment and refund
#INTRD-4564 - Régression sur les règles commerciales dans le package 11.0.14.4
#INTRD-4595 - [Order] duplication issues
#INTRD-4621 - [api] You should be able to create an invoice line providing only unit price
#INTRD-4629 - CLONE - [Generic API] \versions.columns\ not working inside nestedEntities field
#INTRD-4630 - [Charges] Statuts- Add control during the activation
#INTRD-4633 - [api] Generate invoice fails trying to assign an invoice number to a draft invoice
#INTRD-4635 - [Product] Statuts- Add control during the activation
#INTRD-4652 - Invoice aggregate is not recalculated/updated after deleting the last invoice line
#INTRD-4682 - Exponential processing time in Generic QuoteVersion API with \accessible entities\ 
#INTRD-4696 - Add a custum field of relational type to an entity
#INTRD-4706 - [API] instantiate and activate services
#INTRD-4709 - Fix invoice cancellation
#INTRD-4710 - Error NPE on creating detailed Invoice from linked invoice
#INTRD-4719 - [DBMS agnostic] : Problème d'affichage & de suppression dans les custom tables en Oracle
#INTRD-4745 - [offerTemplate] Valid From on Commercial offers API
#INTRD-4760 - [Order] Error with Invoicing plan - Facturation à la commande
#INTRD-4769 - Customer not invoiced
#INTRD-4785 - Advance payment invoice not generated
#INTRD-4794 - [NRT12.0.0] Validity date gets refilled after having it set to empty
#INTRD-4798 - Lenteur d'éxécution de l’api de browsing catalog 
#INTRD-4802 - [NRT12.0.0] Deleting commercial rules associated with a CO is not working 
#INTRD-4809 - [NRT12.0.0] Error duplicating a commercial offer
#INTRD-4826 - Recurring rating misses a period when subscription date is later than a rate until date
#INTRD-4829 - [Quote] - Download (main) issue
#INTRD-4844 - [Regression] EJBTransactionRolledbackException when validating an order
#INTRD-4863 - CLONE - [[DBMS agnostic]] : Page d'index admin ne s'affiche pas, probleme dans la table measured_value en Oracle
#INTRD-4864 - [NRT12.0.0] Discounts of type invoice_line are not taken into account in the invoice calculation
#INTRD-4870 - [NRT12.0.0] Getting an ugly error when trying to delete a discount plan
#INTRD-4871 - [NRT12.0.0] Discount rate is not updated when set to null
#INTRD-4880 - [Order] - Default value of parameters is not working
#INTRD-4885 - [Subscription] Creation should not be with the status \ACTIVATED\
#INTRD-4887 - [Hierarchy] API - company Tag / Flag must be mandatory such as the front portal
#INTRD-4891 - [Business Attribute] subscription_date value is not correct
#INTRD-4910 - Messages not transfered from script to the SepaDirectDebitJob's report
#INTRD-4911 - Billing_invoice - colonnes cpq_quote_id et order_id à NULL pour les factures récurrentes
#INTRD-4912 - [NRT12.0.0] Customer Termination is not working
#INTRD-4915 - [NRT12.0.0] Enhance the error displayed when trying to delete a customer
#INTRD-4917 - [NRT12.0.0] Customer payment methods : updates on Preferred value are not persisted
#INTRD-4918 - [API] update the dunning policy
#INTRD-4920 - [NRT12.0.0] fix the delete consumer API
#INTRD-4922 - [provider] Impossible to update provider due to error in dunning configuration
#INTRD-4925 - Eligibilté d'offre - Offre accessible par tous si aucun tag configuré
#INTRD-4936 - [NRT12.0.0] Duplicate orders : Some fields are not duplicated
#INTRD-4942 - [NRT12.0.0] Orders: It's not possible to set Consumer to null
#INTRD-4948 - [NRT12.0.0] The price is not overriden when a contract is linked to a quote
#INTRD-4949 - Règle commerciale d'incompatibilité entre plusieurs attributs 
#INTRD-4968 - [NRT12.0.0] Tax details on the invoice are wrong 
#INTRD-4970 - [API] update the validity date error message
#INTRD-4974 - [Order] - Bugs following bug correction. API and Invoice Plan
#INTRD-4975 - [NRT12.0.0] Unable to download the pdf of a quote
#INTRD-4977 - [API] read xml format of invoices
#INTRD-4978 - [API] response format if using genericFields with custom field
#INTRD-4983 - [AO] : status litigation
#INTRD-4989 - [API] unable to delete discount plans
#INTRD-4990 - [Souscription] Impossible to save after editing the product attributes
#INTRD-4996 - [NRT12.0.0] API - Unable to unlink a contract from a quote
#INTRD-5003 - [API] delete of payment methods
#INTRD-5011 - [API | GUI] update the payment method
#INTRD-5018 - [NRT12.0.0] Quantity is wrong on the quote
#INTRD-5022 - [NRT12.0.0] Getting an exception when trying to download a quote with discount
#INTRD-504 - Cache does not work on WF22 cluster
#INTRD-5065 - [TriggerEDR] Offer RENT do not trigger EDR anymore ( regression) 
#INTRD-5067 - [Rating] Advance Recurring Charge are not available for invoicing 
#INTRD-5071 - [API] should not be able to update active templates
#INTRD-5081 - Impossible de modifier un prix sur le service instancié d'une souscription
#INTRD-5134 - [Dunning] collectionPlanJob Date Diff calculation issue
#INTRD-5171 - [Quote] API /cpq/quotes/xxxxxxxxxx/status/APPROVED -> Missing Controls
#INTRD-5175 - Generate invoice should not be forced to DRAFT invoice type
#INTRD-5200 - [Oracle] Bug at generic API v2/generic/all/invoice 
#INTRD-5201 - Problème sur les règles commerciales de type Prérequis
#INTRD-5262 - [Invoice] - [Back] I can validate an invoice that has no invoice line
#INTRD-5276 - An exception is thrown when running Invoicing_Line_Job_V2 on oracle database
#INTRD-5295 - Update last_login_date du user à chaque appel de l’API rebrowsing
#INTRD-5318 - Unable to save updates on an invoice
#INTRD-5328 - [DP] - Discount calculation error on PDF
#INTRD-5339 - [Reg] Article mapping ignores charge parameters
#INTRD-5360 - xmlInvoiceCreator.createDocument() triggers ClassCastException error: class IXmlInvoiceCreatorScript cannot be cast to class XmlInvoiceCreatorScript
#INTRD-5369 - [API] refunded to full or partial crediting of security deposit
#INTRD-5380 - [Admin] Problem when deleting Tax from Admin
#INTRD-5383 - Generic API error
#INTRD-5385 - Discount issue - Scenario 1
#INTRD-5386 - Discount issue - Scenario 2
#INTRD-5397 - Issues in payment card
#INTRD-5401 - [WorkFlow] 
#INTRD-5433 - [Reg | API] null pointer exception on security deposit instantiation
#INTRD-5464 - Problem running API permission job
#INTRD-5490 - [Reg] Issue with the import of dates
#INTRD-5493 - InvoiceLineService.createInvoiceLine method : NPE
#INTRD-5498 - Could not generate an invoice in 9.7.6-370
#INTRD-5499 - Usage Job concurrent access timeout
#INTRD-5513 - TNR 12.0.0: BR with no amount
#INTRD-5526 - Customer Care - Json formatting exception
#INTRD-5529 - manual invoice : InvoiceLine discount with a target article
#INTRD-5533 - {TNR 12.0.0] Could not create a BR by ihm
#INTRD-5554 - Exception in Invoice Line
#INTRD-5555 - [Billing Run Manager] Impossible de faire \process\ un BR créé par API
#INTRD-5579 - [Article] GET throw ERROR 500
#INTRD-5583 - [Invoice] Impossible to generate an invoice - RT are still Open
#INTRD-5619 - [api] Generate invoice fails due to type mismatch in BillingAccount id

### Story
#INTRD-1254 - [order] Target user account per order line
#INTRD-1271 - [catalog] Export offers and products to XML
#INTRD-1417 - [payment plan] General payment settings
#INTRD-1418 - [payment plan] General payment plan settings
#INTRD-1419 - [payment plan] General payment deferral settings
#INTRD-1483 - [dunning] Templates
#INTRD-1615 - [pricing] Modifying end date of published price versions
#INTRD-1774 - EXPORT - Price grid
#INTRD-1857 - IMPORT - PRICE GRID
#INTRD-187 - Evaluation Order for price grid lines
#INTRD-1889 - [catalog] Charge Statuses
#INTRD-1907 - [quote] Target user account per quote line
#INTRD-1919 - [article] Default article unit price
#INTRD-1993 - [quote] Scheduled service activation
#INTRD-2225 - Allow image uploading in media section
#INTRD-2466 - Unit price in price grid must be mandatory
#INTRD-2574 - Chargement F12_D /1. Détection et Ordonnancement des fichiers à traiter
#INTRD-2600 - Dunning Actions - Add the AssignedTo field
#INTRD-2606 - [quote] Quote seller and invoice seller
#INTRD-2627 - [mediation] RegisterCdrList deduplication key override
#INTRD-2713 - Document quote - Show detail for consumer (user account)
#INTRD-2848 - [dunning] Default Templates - Consolidation
#INTRD-2897 - Corrective US - General dunning Settings
#INTRD-30 - Dunning policies
#INTRD-3213 - Corrective US - Update dunningCollectionPlanStatus Entity
#INTRD-3320 - [invoice] Download XML from invoice details
#INTRD-3380 - GUI - Add field \order line type\ to orders & quotes
#INTRD-4065 - [gdpr] Add a new field in the Customer table to flag anonymized accounts
#INTRD-4360 - [s3] (2) Use S3 to read jasper templates for invoices
#INTRD-4362 - [s3] (6) Use S3 for media files storage
#INTRD-4556 - [scheme] (3) Define an accounting scheme for a given account operation type
#INTRD-4849 - [PERF] Invoice_Lines_Job_V2 refactoring
#INTRD-55 - Collection plans - Triggering a collection plan
#INTRD-60 - [dunning] Company's global dunning setting are accessed from Opencell's portal
#INTRD-66 - Collection plans - Pause & Stop dunning
#INTRD-67 - Collection plans - Task Management
#INTRD-825 - Dunning levels - Life cycle
#INTRD-866 - [subscription][api] Delay old version termination until new version activation
#INTRD-99 - Payments matching status on invoice view
