Resolve Conflicts

This commit is contained in:
rajesh
2025-01-13 16:42:42 +05:30
82 changed files with 1949 additions and 517 deletions

View File

@@ -25,7 +25,8 @@ appointment.portal.context=GEPAFINPORTAL
flagDaFirmare=false
# RabbitMQ properties for STOMP broker relay for Notification
spring.rabbitmq.host=rabbitmq.bflows.ai
#spring.rabbitmq.host=rabbitmq.bflows.ai
spring.rabbitmq.host=172.18.0.7
spring.rabbitmq.port=61613
spring.rabbitmq.username=guest
spring.rabbitmq.password=guest

View File

@@ -24,7 +24,7 @@ default.hub.uuid=p4lk3bcx1RStqTaIVVbXs
# TEST DEPLOY Configuration
#Login to Odessa, Appointment Creation, Upload document Configuration
appointment.base.url=https://demo.galileonetwork.it/gateway/rest
appointment.base.url=https://prd.galileonetwork.it/gateway/rest
appointment.portal.user=UtenzaAPIPortal@621
appointment.portal.password=u13nzaAP1P0rtal
appointment.portal.source=GEPAFINPORTAL
@@ -32,7 +32,8 @@ appointment.portal.context=GEPAFINPORTAL
flagDaFirmare=true
# RabbitMQ properties for STOMP broker relay for Notification
spring.rabbitmq.host=rabbitmq.bflows.ai
#spring.rabbitmq.host=rabbitmq.bflows.ai
spring.rabbitmq.host=172.18.0.5
spring.rabbitmq.port=61613
spring.rabbitmq.username=guest
spring.rabbitmq.password=guest

View File

@@ -1961,7 +1961,17 @@
</column>
</addColumn>
</changeSet>
<changeSet id="02-12-2024_1" author="Rajesh Khore">
<sql dbms="postgresql">select
setval('gepafin_schema.system_email_template_id_seq', (select
max(id)+1
from gepafin_schema.system_email_template), false)
</sql>
<sqlFile dbms="postgresql"
path="db/dump/insert_system_email_template_for_user_28_11_2024.sql"/>
<sqlFile dbms="postgresql"
path="db/dump/insert_system_email_template_for_reset_password_28_11_2024.sql"/>
</changeSet>
<changeSet id="03-12-2024_1" author="Piyush">
<sqlFile dbms="postgresql"
path="db/dump/update_system_email_template_for_updating_amendment_mail_notification_mail_03_12_2024_1.sql"/>
@@ -1972,6 +1982,20 @@
path="db/dump/update_system_email_template_for_updating_amendment_mail_notification_mail_04_12_2024_1.sql"/>
</changeSet>
<changeSet id="19-12-2024_4" author="Nisha Kashyap">
<addColumn tableName="USER_WITH_COMPANY">
<column name="contact_name" type="VARCHAR(255)"/>
<column name="contact_email" type="VARCHAR(255)"/>
<column name="PEC" type="VARCHAR(255)"/>
<column name="EMAIL" type="VARCHAR(255)"/>
<column name="JSON" type="TEXT"/>
</addColumn>
<dropColumn tableName="COMPANY" columnName="contact_name"/>
<dropColumn tableName="COMPANY" columnName="contact_email"/>
<dropColumn tableName="COMPANY" columnName="PEC"/>
<dropColumn tableName="COMPANY" columnName="EMAIL"/>
</changeSet>
<changeSet id="04-12-2024_3" author="Piyush">
<addColumn tableName="hub">
<column name="auth_token" type="TEXT"/>
@@ -2030,7 +2054,7 @@
</addColumn>
</changeSet>
<changeSet id="19-12-2024_1" author="Nisha kashyap">
<changeSet id="19-12-2024_1" author="Nisha Kashyap">
<!-- Insert data for Intructor manager role -->
<insert tableName="role">
<column name="role_name" value="instructor manager"/>
@@ -2069,6 +2093,11 @@
<column name="closing_date" type="TIMESTAMP WITHOUT TIME ZONE"></column>
</addColumn>
</changeSet>
<changeSet id="03-01-2025_RK_191100" author="Rajesh Khore">
<addColumn tableName="application_evaluation">
<column name="ACTIVE_DAYS" type="INTEGER"></column>
</addColumn>
</changeSet>
<changeSet id="13-12-2024_1" author="Piyush Kag">
<createTable tableName="notification">
@@ -2123,7 +2152,7 @@
</addColumn>
</changeSet>
<changeSet id="13-01-2025_NK_142215" author="Rajesh Khore">
<changeSet id="13-01-2025_RK_142215" author="Rajesh Khore">
<createTable tableName="role_action_context">
<column autoIncrement="true" name="id" type="BIGINT">
<constraints nullable="false" primaryKey="true"
@@ -2143,10 +2172,55 @@
</createTable>
</changeSet>
<changeSet id="13-01-2025_NK_164615" author="Rajesh Khore">
<changeSet id="13-01-2025_RK_164615" author="Rajesh Khore">
<sqlFile dbms="postgresql"
path="db/dump/insert_action_context_data_09_01_2025.sql"/>
</changeSet>
<changeSet id="31-12-2024" author="Piyush Kag">
<sqlFile dbms="postgresql"
path="db/dump/update_json_template_for_notification_31_12_2024.sql"/>
</changeSet>
<changeSet id="03-01-2024_NK_125210" author="Nisha Kashyap">
<sql>
TRUNCATE TABLE FORM_FIELD RESTART IDENTITY;
</sql>
<sqlFile dbms="postgresql"
path="db/dump/update_form_field_data_03_01_2025.sql"/>
</changeSet>
<changeSet id="07-01-2025_NK_063910" author="Nisha Kashyap">
<createTable tableName="expiration_config">
<column autoIncrement="true" name="id" type="BIGINT">
<constraints nullable="false" primaryKey="true" primaryKeyName="expiration_config_pkey"/>
</column>
<column name="INTERVAL_DAYS" type="INTEGER"></column>
<column name="TYPE" type="VARCHAR(255)"></column>
<column name="is_deleted" type="BOOLEAN" defaultValueBoolean="false">
<constraints nullable="false"/>
</column>
<column name="created_date" type="TIMESTAMP WITHOUT TIME ZONE"></column>
<column name="updated_date" type="TIMESTAMP WITHOUT TIME ZONE"></column>
</createTable>
</changeSet>
<changeSet id="07-01-2025_NK_064515" author="Nisha kashyap">
<sqlFile dbms="postgresql"
path="db/dump/update_json_template_for_notification_03_01_2025.sql"/>
</changeSet>
<changeSet id="07-01-2025_NK_064516" author="Nisha kashyap">
<sqlFile dbms="postgresql"
path="db/dump/insert_expiration_scheduler_data_07_01_2025.sql"/>
</changeSet>
<changeSet id="08-01-2025_NK_075410" author="Nisha kashyap">
<addColumn tableName="application">
<column name="amount_requested" type="numeric"></column>
<column name="amount_accepted" type="numeric"></column>
<column name="date_accepted" type="TIMESTAMP WITHOUT TIME ZONE"></column>
<column name="date_rejected" type="TIMESTAMP WITHOUT TIME ZONE"></column>
</addColumn>
</changeSet>
</databaseChangeLog>

View File

@@ -0,0 +1,9 @@
INSERT INTO expiration_config (interval_days, type, created_date, updated_date)
VALUES
(5, 'AMENDMENT', '2024-12-03T11:00:51', '2024-12-03T11:00:51'),
(2, 'AMENDMENT', '2024-12-03T11:00:51', '2024-12-03T11:00:51'),
(0, 'AMENDMENT', '2024-12-03T11:00:51', '2024-12-03T11:00:51'),
(5, 'EVALUATION', '2024-12-03T11:00:51', '2024-12-03T11:00:51'),
(2, 'EVALUATION', '2024-12-03T11:00:51', '2024-12-03T11:00:51'),
(0, 'EVALUATION', '2024-12-03T11:00:51', '2024-12-03T11:00:51');

View File

@@ -0,0 +1,60 @@
INSERT INTO gepafin_schema.system_email_template
(template_name, "type", html_content, subject, "json", "system", is_deleted, created_date, updated_date,email_scenario)
VALUES
(
'Password Reset Link Email (Italian)',
'PASSWORD_RESET',
'<table border="0" style="background: #f5f5f5; text-align: center; width: 100%; max-width: 600px; padding: 20px;" align="center" cellpadding="0" cellspacing="0">
<tbody>
<tr>
<td>
<table>
<thead>
<tr>
<th>
<p style="font-weight: 600; color: #000; font-family: open sans; font-size: 26px; margin: 0; padding-bottom: 20px;">Richiesta di Reimpostazione Password</p>
</th>
</tr>
</thead>
<tbody align="left">
<tr>
<td>
<p style="margin: 8px 0px;">Gentile {{user_name}},</p>
<p style="margin: 8px 0px;">Hai richiesto di reimpostare la tua password.</p>
</td>
</tr>
<tr>
<td>
<p style="margin: 8px 0px;">Cordiali saluti,</p>
<p style="margin: 8px 0px;"><strong>{{email_signature}}</strong></p>
</td>
</tr>
<tr>
<td style="padding-top: 20px;">
<!-- Button added here -->
<a href="{{reset_password_link}}" style="background-color: #007bff;
color: #fff;
font-family: open sans;
border-radius: 5px;
box-sizing: border-box;
cursor: pointer;
font-size: 14px;
font-weight: bold;
width: 100%;
max-width: 280px;
padding: 12px 25px;">Reimposta la Password</a>
</td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>',
'Richiesta di Reimpostazione Password',
NULL,
true,
false,
CURRENT_TIMESTAMP,
CURRENT_TIMESTAMP,
'PASSWORD_RESET_REQUEST');

View File

@@ -0,0 +1,29 @@
INSERT INTO gepafin_schema.system_email_template
(template_name, "type", html_content, subject, "json", "system", is_deleted, created_date, updated_date, email_scenario)
VALUES
(
'Welcome Email for New User',
'USER_ONBOARDING',
'<html>
<body style="font-family: Arial, sans-serif; color: #000; line-height: 1.6;">
<div style="padding: 20px; border: 1px solid #ddd; border-radius: 8px; max-width: 600px; margin: auto;">
<p><strong>Benvenuto!</strong></p>
<p>Ciao {{user_name}},</p>
<p>Siamo lieti di averti con noi. Di seguito trovi alcune informazioni utili:</p>
<ul>
<li><strong>Nome Utente:</strong> {{user_email}}</li>
</ul>
<p>Per accedere, utilizza il tuo indirizzo email registrato. Se hai bisogno di supporto, non esitare a contattarci.</p>
<p>Distinti saluti,</p>
<p><strong>{{email_signature}}</strong></p>
</div>
</body>
</html>',
'Welcome - {{user_name}}',
NULL,
true,
false,
CURRENT_TIMESTAMP,
CURRENT_TIMESTAMP,
'USER_CREATION'
);

View File

@@ -0,0 +1,101 @@
INSERT INTO FORM_FIELD (SORT_ORDER, NAME, LABEL, DESCRIPTION, SETTINGS, VALIDATORS, CREATED_DATE, UPDATED_DATE)
VALUES
(1, 'textinput', 'Testo Breve', 'Per risposte concise (nomi, titoli, brevi descrizioni)',
'[{"name": "label", "value": "Testo Breve"}, {"name": "placeholder", "value": ""}]',
'{"isRequired": false, "minLength": null, "maxLength": null, "pattern": null, "custom": null}',
CURRENT_TIMESTAMP, CURRENT_TIMESTAMP),
(2, 'textarea', 'Testo Lungo', 'Campo di testo esteso per paragrafi, descrizioni, proposte',
'[{"name": "label", "value": "Testo Lungo"}, {"name": "placeholder", "value": ""}]',
'{"isRequired": false, "minLength": null, "maxLength": null, "pattern": null, "custom": null}',
CURRENT_TIMESTAMP, CURRENT_TIMESTAMP),
(3, 'wysiwyg', 'Campo di Testo Formattato', 'Editor avanzato per testo con formattazione',
'[{"name": "label", "value": "Testo Formattato"}, {"name": "placeholder", "value": ""}]',
'{"isRequired": false, "minLength": null, "maxLength": null, "pattern": null, "custom": null}',
CURRENT_TIMESTAMP, CURRENT_TIMESTAMP),
(4, 'numberinput', 'Campo Numerico', 'Per l''inserimento di valori numerici (quantità, importi, percentuali)',
'[{"name": "label", "value": "Numero"}, {"name": "placeholder", "value": "0"}, {"name": "step", "value": "0"},{"name": "isRequestedAmount","value": false}]',
'{"isRequired": false, "min": null, "max": null, "pattern": null, "custom": null}',
CURRENT_TIMESTAMP, CURRENT_TIMESTAMP),
(5, 'radio', 'Scelta Singola', 'Gruppo di opzioni per selezione singola',
'[{"name": "label", "value": "Scelta Singola"}, {"name": "options", "value": []}]',
'{"isRequired": false, "custom": null}',
CURRENT_TIMESTAMP, CURRENT_TIMESTAMP),
(6, 'select', 'Menu a Tendina', 'Selezione da opzioni predefinite',
'[{"name": "label", "value": "Menu a Tendina"}, {"name": "options", "value": []}]',
'{"isRequired": false, "custom": null}',
CURRENT_TIMESTAMP, CURRENT_TIMESTAMP),
(7, 'checkboxes', 'Scelta Multipla', 'Gruppo di opzioni per selezione singola o multipla',
'[{"name": "label", "value": "Scelta Multipla"}, {"name": "options", "value": []}]',
'{"isRequired": false, "min": null, "max": null, "custom": null}',
CURRENT_TIMESTAMP, CURRENT_TIMESTAMP),
(8, 'switch', 'Casella di Spunta', 'Per selezioni binarie, accettazioni, conferme',
'[{"name": "label", "value": "Casella di Spunta"}]',
'{"isRequired": false}',
CURRENT_TIMESTAMP, CURRENT_TIMESTAMP),
(9, 'datepicker', 'Data', 'Selezione di data',
'[{"name": "label", "value": "Data"}]',
'{"isRequired": false}',
CURRENT_TIMESTAMP, CURRENT_TIMESTAMP),
(10, 'fileupload', 'Caricamento File', 'Per l''upload di documenti o immagini',
'[{"name": "label", "value": "Caricamento File"}, {"name": "mime", "value": []}]',
'{"isRequired": false, "maxSize": 100000}',
CURRENT_TIMESTAMP, CURRENT_TIMESTAMP),
(11, 'textinput', 'Campo Partita IVA', 'Specifico per l''inserimento del numero di Partita IVA',
'[{"name": "label", "value": "Partita IVA"}, {"name": "placeholder", "value": ""}]',
'{"isRequired": true, "custom": "isPIVA"}',
CURRENT_TIMESTAMP, CURRENT_TIMESTAMP),
(12, 'textinput', 'Campo Codice Fiscale','Specifico per l''inserimento del Codice Fiscale italiano per persone fisiche e giuridiche',
'[{"name": "label", "value": "Codice Fiscale"}, {"name": "placeholder", "value": ""}]',
'{"isRequired": true, "custom": "isCodiceFiscale"}',
CURRENT_TIMESTAMP, CURRENT_TIMESTAMP),
(13, 'textinput', 'Campo CAP','Per l''inserimento del Codice di Avviamento Postale',
'[{"name": "label", "value": "CAP"}, {"name": "placeholder", "value": ""}]',
'{"isRequired": true, "custom": "isCAP"}',
CURRENT_TIMESTAMP, CURRENT_TIMESTAMP),
(14, 'textinput', 'Campo IBAN', 'Per l''inserimento del codice IBAN',
'[{"name": "label", "value": "IBAN"}, {"name": "placeholder", "value": ""}]',
'{"isRequired": true, "custom": "isIBAN"}',
CURRENT_TIMESTAMP, CURRENT_TIMESTAMP),
(15, 'textinput', 'Campo Email', 'Per l''inserimento di indirizzi email standard (non PEC)',
'[{"name": "label", "value": "Campo Email"}, {"name": "placeholder", "value": "nome@esempio.it"}]',
'{"isRequired": false, "custom": "isEmail"}',
CURRENT_TIMESTAMP, CURRENT_TIMESTAMP),
(16, 'textinput', 'Campo PEC', 'Specifico per l''inserimento di un indirizzo di Posta Elettronica Certificata',
'[{"name": "label", "value": "Campo PEC"}, {"name": "placeholder", "value": "nome@pec.it"}]',
'{"isRequired": false, "custom": "isEmailPEC"}',
CURRENT_TIMESTAMP, CURRENT_TIMESTAMP),
(17, 'textinput', 'Campo URL', 'Per l''inserimento di indirizzi web',
'[{"name": "label", "value": "Indirizzo URL"}, {"name": "placeholder", "value": ""}]',
'{"isRequired": false, "custom": "isUrl"}',
CURRENT_TIMESTAMP, CURRENT_TIMESTAMP),
(18, 'textinput', 'Marca da bollo', 'Per inserire codice di marca da bollo',
'[{"name": "label", "value": "Marca da bollo"}, {"name": "placeholder", "value": "Numero identificativo"}]',
'{"isRequired": false, "custom": "isMarcaDaBollo"}',
CURRENT_TIMESTAMP, CURRENT_TIMESTAMP),
(19, 'paragraph', 'Paragrafo', 'Semplice testo formattato',
'[{"name": "text", "value": ""}]',
'{}',
CURRENT_TIMESTAMP, CURRENT_TIMESTAMP),
(20, 'table', 'Tabella', 'Tabella',
'[{"name": "label", "value": "Tabella"}, {"name": "table_columns", "value": []}]',
'{}',
CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);

View File

@@ -0,0 +1,3 @@
INSERT INTO notification_type (notification_name,title, json_template,created_date,updated_date,is_deleted) VALUES
('AMENDMENT_EXPIRATION_REMINDER','Lemendamento sta per scadere','Lemendamento per {{call_name}} - {{company_name}} scadrà tra {{days_before}} giorni. Assicurati che tutte le azioni necessarie siano completate prima della scadenza.','2025-01-03T10:16:26.472Z','2025-01-03T10:16:26.472Z','false'),
('EVALUATION_EXPIRATION_REMINDER','La valutazione sta per scadere','Lemendamento per {{call_name}} - {{company_name}} scadrà tra {{days_before}} giorni. Assicurati che tutte le azioni necessarie siano completate prima della scadenza.','2025-01-03T10:16:26.472Z','2025-01-03T10:16:26.472Z','false');

View File

@@ -0,0 +1,62 @@
UPDATE notification_type
SET
title = 'Un Nuovo Bando È Stato Pubblicato',
json_template = 'Un nuovo bando intitolato {{call_name}} è stato pubblicato. Controllalo e invia le candidature prima della scadenza.'
WHERE
notification_name = 'CALL_CREATED';
UPDATE notification_type
SET
title = 'Richiesta Finanziamento Inviata con Successo per la Valutazione',
json_template = 'La richiesta per {{call_name}} ai sensi del protocollo n. {{protocol_number}} è stata presentata con successo. È ora in fase di valutazione.'
WHERE
notification_name = 'APPLICATION_SUBMISSION';
UPDATE notification_type
SET
title = 'È Stato Creato un Soccorso Istruttorio per la Richiesta',
json_template = 'È stato creato un soccorso istruttorio per la richiesta in {{call_name}} ai sensi del protocollo n. {{protocol_number}}. Esamina le richieste e procedi di conseguenza.'
WHERE
notification_name = 'AMENDMENT_CREATION';
UPDATE notification_type
SET
title = 'Il Risultato della Valutazione per la Richiesta È Disponibile',
json_template = 'Il risultato della valutazione per la richiesta ai sensi del protocollo n. {{protocol_number}} è ora disponibile.'
WHERE
notification_name = 'EVALUATION_RESULT';
UPDATE notification_type
SET
title = 'Soccorso Scaduto',
json_template = 'Il soccorso istruttorio per la richiesta in {{call_name}} ai sensi del protocollo n. {{protocol_number}} è scaduto.'
WHERE
notification_name = 'AMENDMENT_EXPIRED';
UPDATE notification_type
SET
title = 'Scorso Chiuso ed È Ora Inattivo',
json_template = 'Il soccorso istruttorio per {{call_name}} ai sensi del protocollo n. {{protocol_number}} è stato chiuso ed è ora inattivo.'
WHERE
notification_name = 'AMENDMENT_CLOSED';
UPDATE notification_type
SET
title = 'NDG creato per la Richiesta',
json_template = 'È stato generato un nuovo NDG per {{call_name}} ai sensi del protocollo n. {{protocol_number}}.'
WHERE
notification_name = 'NDG_GENERATION';
UPDATE notification_type
SET
title = 'La domanda è stata assegnata per la Valutazione',
json_template = 'La richiesta in {{call_name}} ai sensi del protocollo n. {{protocol_number}} è stata assegnata alla fase di valutazione.'
WHERE
notification_name = 'EVALUATION_CREATION';
UPDATE notification_type
SET
title = 'La Valutazione per la Richiesta È Scaduta',
json_template = 'La valutazione per la richiesta in {{call_name}} ai sensi del protocollo n. {{protocol_number}} è scaduta.'
WHERE
notification_name = 'EVALUATION_EXPIRED';

View File

@@ -313,6 +313,7 @@ company.id.required.for.preferred.call=Company ID is required when requesting on
response.days.not.null=Response days should not be null and greater than zero.
application.cannot.approved.or.rejected=Application cannot be approved and rejected because amendment is active.
valid.vatnumber.message=The VAT number is valid.
atleast.one.id.required=At least one of companyId or applicationId must be provided
@@ -347,3 +348,4 @@ notification.updated.successfully=Notification updated successfully.
user.with.company.not.found = User with company not found for user or company.
user.action.fetched.successfully = User action details fetched successfully.
amount.accepted.required=Amount accepted is required while approving the application.

View File

@@ -70,7 +70,7 @@ email.already.exists=Esiste gi? un utente con questa email.
invalid_user=Validazione utente fallita. Controlla le informazioni, lo stato dell'account e la scadenza del token.
#Global messages
common_message=qualcosa é andato storto. Per favore riprova
common_message=qualcosa <EFBFBD> andato storto. Per favore riprova
invalid_signature=Gettone non valido.
invalid_login=Nome utente o password errati
req_validation_er=Errore di convalida
@@ -304,7 +304,10 @@ beneficiary.call.duplicate = Una chiamata preferita con questo ID di chiamata e
user.must.be.associated.with.company.to.create.application=Devi essere associato a un'azienda per poter presentare domanda per questa applicazione.
company.id.required.for.preferred.call=ID azienda obbligatorio quando si richiedono solo chiamate preferite.
response.days.not.null=I giorni di risposta non devono essere nulli e maggiori di zero.
application.cannot.approved.or.rejected=La domanda non pu<70> essere approvata o rifiutata perch<63> l'emendamento <20> attivo.
valid.vatnumber.message=Il numero di partita IVA <20> valido.
application.cannot.approved.or.rejected=La domanda non pu? essere approvata o rifiutata perch? l'emendamento ? attivo.
atleast.one.id.required=Almeno uno tra companyId o applicationId deve essere fornito.
#Appointment flow messages
@@ -328,7 +331,7 @@ document.uploading.is.in.progress = Il documento ? in fase di caricamento.
all.document.checked.and.one.checklist.checked=Tutti i documenti devono essere controllati e almeno una checklist deve essere controllata.
#notification messsages
notification.already.in.state=La notifica è già nello stato fornito.
notification.already.in.state=La notifica <EFBFBD> gi<EFBFBD> nello stato fornito.
notification.fetched.successfully=Notifica recuperata con successo.
notification.not.found=Notifica non trovata.
notification.sent.successfully=Notifica inviata con successo.
@@ -336,4 +339,5 @@ notification.deleted.successfully=Notifica eliminata con successo.
notification.updated.successfully=Notifica aggiornata con successo.
user.with.company.not.found = Utente con azienda non trovato per utente o azienda.
user.action.fetched.successfully = Dettagli sull'azione dell'utente recuperati correttamente.
user.action.fetched.successfully = Dettagli sull'azione dell'utente recuperati correttamente.
amount.accepted.required=L'importo accettato <20> obbligatorio durante l'approvazione della domanda.