Resolved conflict
This commit is contained in:
@@ -37,3 +37,5 @@ spring.rabbitmq.port=61613
|
||||
spring.rabbitmq.username=guest
|
||||
spring.rabbitmq.password=guest
|
||||
spring.rabbitmq.virtual-host=/
|
||||
|
||||
isSviluppumbriaProtocolEnabled = false
|
||||
@@ -83,7 +83,7 @@ sviluppumbria.username=protocollatoresvilumbria
|
||||
password=8e85ea4265e49497d697168fd3d34916
|
||||
CLASSIFICA=06.004.3
|
||||
TIPO_PROTOCOLLAZIONE=E
|
||||
tipoCorrispondenteCompany=PersonaGiuridica
|
||||
tipoCorrispondenteCompany=PersonaGiuridica
|
||||
tipoCorrispondenteWithoutCompany=Persona
|
||||
mezzo=Altro
|
||||
indirizzoPec=ufficio01@domain.com
|
||||
@@ -91,3 +91,4 @@ codiceUo=101_10
|
||||
competente=true
|
||||
tipoCorrispondente=Amministrazione
|
||||
sviluppumbriaUuid=t7jh5wfg9QXylNaTZkPoE
|
||||
isSviluppumbriaProtocolEnabled = true
|
||||
|
||||
@@ -2737,6 +2737,132 @@
|
||||
</insert>
|
||||
</changeSet>
|
||||
|
||||
<changeSet id="09-01-2025_PK_120129" author="Piyush Kag">
|
||||
<addColumn tableName="application_signed_document">
|
||||
<column name="is_deleted" type="BOOLEAN" defaultValueBoolean="false">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
</addColumn>
|
||||
|
||||
<addColumn tableName="APPLICATION_FORM">
|
||||
<column name="is_deleted" type="BOOLEAN" defaultValueBoolean="false">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
</addColumn>
|
||||
|
||||
<addColumn tableName="APPLICATION_FORM_FIELD">
|
||||
<column name="is_deleted" type="BOOLEAN" defaultValueBoolean="false">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
</addColumn>
|
||||
|
||||
<addColumn tableName="BENEFICIARY">
|
||||
<column name="is_deleted" type="BOOLEAN" defaultValueBoolean="false">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
</addColumn>
|
||||
|
||||
<addColumn tableName="CALL">
|
||||
<column name="is_deleted" type="BOOLEAN" defaultValueBoolean="false">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
</addColumn>
|
||||
|
||||
<addColumn tableName="COMPANY">
|
||||
<column name="is_deleted" type="BOOLEAN" defaultValueBoolean="false">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
</addColumn>
|
||||
|
||||
<addColumn tableName="FLOW_DATA">
|
||||
<column name="is_deleted" type="BOOLEAN" defaultValueBoolean="false">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
</addColumn>
|
||||
|
||||
<addColumn tableName="FLOW_EDGES">
|
||||
<column name="is_deleted" type="BOOLEAN" defaultValueBoolean="false">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
</addColumn>
|
||||
|
||||
<addColumn tableName="FORM">
|
||||
<column name="is_deleted" type="BOOLEAN" defaultValueBoolean="false">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
</addColumn>
|
||||
|
||||
<addColumn tableName="FORM_FIELD">
|
||||
<column name="is_deleted" type="BOOLEAN" defaultValueBoolean="false">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
</addColumn>
|
||||
|
||||
<addColumn tableName="FORM_TEMPLATE">
|
||||
<column name="is_deleted" type="BOOLEAN" defaultValueBoolean="false">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
</addColumn>
|
||||
<addColumn tableName="hub">
|
||||
<column name="is_deleted" type="BOOLEAN" defaultValueBoolean="false">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
</addColumn>
|
||||
|
||||
<addColumn tableName="LOGIN_ATTEMPT">
|
||||
<column name="is_deleted" type="BOOLEAN" defaultValueBoolean="false">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
</addColumn>
|
||||
|
||||
<addColumn tableName="LOOKUP_DATA">
|
||||
<column name="is_deleted" type="BOOLEAN" defaultValueBoolean="false">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
</addColumn>
|
||||
|
||||
<addColumn tableName="PROTOCOL">
|
||||
<column name="is_deleted" type="BOOLEAN" defaultValueBoolean="false">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
</addColumn>
|
||||
|
||||
<addColumn tableName="REGION">
|
||||
<column name="is_deleted" type="BOOLEAN" defaultValueBoolean="false">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
</addColumn>
|
||||
|
||||
<addColumn tableName="ROLE">
|
||||
<column name="is_deleted" type="BOOLEAN" defaultValueBoolean="false">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
</addColumn>
|
||||
|
||||
<addColumn tableName="s3_path_configuration">
|
||||
<column name="is_deleted" type="BOOLEAN" defaultValueBoolean="false">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
</addColumn>
|
||||
|
||||
<addColumn tableName="SAML_RESPONSE">
|
||||
<column name="is_deleted" type="BOOLEAN" defaultValueBoolean="false">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
</addColumn>
|
||||
|
||||
<addColumn tableName="user_company_delegation">
|
||||
<column name="is_deleted" type="BOOLEAN" defaultValueBoolean="false">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
</addColumn>
|
||||
|
||||
<addColumn tableName="GEPAFIN_USER">
|
||||
<column name="is_deleted" type="BOOLEAN" defaultValueBoolean="false">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
</addColumn>
|
||||
</changeSet>
|
||||
|
||||
<changeSet id="08-04-2025_PK_160730" author="Piyush kag">
|
||||
<sqlFile dbms="postgresql"
|
||||
@@ -2836,4 +2962,57 @@
|
||||
</addColumn>
|
||||
</changeSet>
|
||||
|
||||
<changeSet id="05-06-2025_RK_191738" author="Rajesh Khore">
|
||||
<sqlFile dbms="postgresql"
|
||||
path="db/dump/updated_form_field_05_06_2025.sql"/>
|
||||
</changeSet>
|
||||
|
||||
<changeSet id="06-06-2025_RK_180524" author="Rajesh Khore">
|
||||
<createTable tableName="ndganag">
|
||||
<column name="id" type="INTEGER" autoIncrement="true">
|
||||
<constraints primaryKey="true" primaryKeyName="ndganag_pkey" nullable="false"/>
|
||||
</column>
|
||||
<column name="ndg" type="VARCHAR(255)" />
|
||||
<column name="company_name" type="VARCHAR(255)"/>
|
||||
<column name="vat_number" type="VARCHAR(255)" />
|
||||
<column name="codice_fiscale" type="VARCHAR(255)" />
|
||||
<column name="json" type="TEXT"/>
|
||||
<column name="is_deleted" type="BOOLEAN"/>
|
||||
<column name="created_date" type="TIMESTAMP WITHOUT TIME ZONE"/>
|
||||
<column name="updated_date" type="TIMESTAMP WITHOUT TIME ZONE"/>
|
||||
</createTable>
|
||||
|
||||
<addColumn tableName="application">
|
||||
<column name="pec_email" type="VARCHAR(255)"></column>
|
||||
</addColumn>
|
||||
</changeSet>
|
||||
|
||||
<changeSet id="27-06-2025_RK_155914" author="Rajesh Khore">
|
||||
<sqlFile dbms="postgresql"
|
||||
path="db/dump/insert_system_email_template_technical_evaluation_rejected.sql"/>
|
||||
</changeSet>
|
||||
|
||||
<changeSet id="02-07_2025_RK_162833" author="Rajesh Khore">
|
||||
<addColumn tableName="application">
|
||||
<column name="vat_number" type="VARCHAR(255)"></column>
|
||||
</addColumn>
|
||||
</changeSet>
|
||||
|
||||
<changeSet id="02-07-2025_RK_152053" author="Rajesh Khore">
|
||||
<addColumn tableName="call">
|
||||
<column name="allow_multiple_applications" type="BOOLEAN" defaultValueBoolean="false"></column>
|
||||
</addColumn>
|
||||
</changeSet>
|
||||
|
||||
<changeSet id="08-07-2025_RK_152945" author="Rajesh Khore">
|
||||
<sqlFile dbms="postgresql"
|
||||
path="db/dump/update_assigned_application_view_08_07_2025.sql"/>
|
||||
|
||||
<sqlFile dbms="postgresql"
|
||||
path="db/dump/update_application_form_view_08_07_2025.sql"/>
|
||||
</changeSet>
|
||||
|
||||
<changeSet id="23-07-2025_RK_121816" author="Rajesh Khore">
|
||||
<sqlFile dbms="postgresql" path="db/dump/update_application_form_view_23_07_2025.sql"/>
|
||||
</changeSet>
|
||||
</databaseChangeLog>
|
||||
|
||||
@@ -0,0 +1,31 @@
|
||||
INSERT INTO gepafin_schema.system_email_template
|
||||
(template_name, "type", html_content, subject, "json", "system", is_deleted, created_date, updated_date, email_scenario)
|
||||
VALUES
|
||||
(
|
||||
'Application Technical Evaluation Rejected Template',
|
||||
'INADMISSIBILITY_NOTIFICATION_DUE_TO_TECHNICAL_EVALUATION_FAILURE',
|
||||
'<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>Buongiorno,</p>
|
||||
<p>Si comunica che, in riferimento alla domanda a valere sul bando “<strong>{{call_name}}</strong>” di cui al
|
||||
<strong>Protocollo n. {{protocol_number}} del {{protocol_date}} alle {{protocol_time}}</strong>,
|
||||
a stessa è stata sottoposta a valutazione tecnica ed economico finanziaria
|
||||
con esito negativo</p>
|
||||
<p>Le motivazioni sono le seguenti: <strong>{{form_text}}</strong></p>
|
||||
<p>Vi ricordiamo che i Beneficiari, in caso di mancato accoglimento della Domanda di Finanziamento agevolato, entro 10 giorni dalla data di ricevimento della presente potranno formulare ricorso al Gestore tramite
|
||||
modello disponibile nello sportello online
|
||||
<a href="{{platform_link}}">{{platform_link}}</a>, e sul sito internet home - ND Credit Repair , nella sezione dedicata ai Bandi e Avvisi pubblici.</p>
|
||||
<p>Distinti Saluti,</p>
|
||||
<p><strong>{{email_signature}}</strong></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>',
|
||||
'BANDO – "{{call_name}}" – Esito negativo della valutazione tecnica – {{company_name}}',
|
||||
null,
|
||||
true,
|
||||
false,
|
||||
CURRENT_TIMESTAMP,
|
||||
CURRENT_TIMESTAMP,
|
||||
'APPLICATION_TECHNICAL_EVALUATION_REJECTED'
|
||||
);
|
||||
@@ -0,0 +1,105 @@
|
||||
|
||||
DROP VIEW IF EXISTS gepafin_schema.application_form_view ;
|
||||
|
||||
CREATE OR REPLACE VIEW gepafin_schema.application_form_view AS
|
||||
SELECT app_data.id,
|
||||
app_data.call_id,
|
||||
app_data.application_form_id,
|
||||
app_data.form_id,
|
||||
app_data.application_id,
|
||||
field_data.value ->> 'id'::text AS field_id,
|
||||
COALESCE(( SELECT s.value ->> 'value'::text
|
||||
FROM jsonb_array_elements(field_data.value -> 'settings'::text) s(value)
|
||||
WHERE (s.value ->> 'name'::text) = 'label'::text
|
||||
LIMIT 1), field_data.value ->> 'label'::text) AS field_label,
|
||||
( SELECT (s.value ->> 'value'::text)::boolean AS bool
|
||||
FROM jsonb_array_elements(field_data.value -> 'settings'::text) s(value)
|
||||
WHERE (s.value ->> 'name'::text) = 'reportEnable'::text
|
||||
LIMIT 1) AS report_enable,
|
||||
COALESCE(( SELECT s.value ->> 'value'::text
|
||||
FROM jsonb_array_elements(field_data.value -> 'settings'::text) s(value)
|
||||
WHERE (s.value ->> 'name'::text) = 'reportHeader'::text
|
||||
LIMIT 1), field_data.value ->> 'reportHeader'::text) AS report_header,
|
||||
field_data.value ->> 'name'::text AS field_type,
|
||||
CASE
|
||||
WHEN (field_data.value ->> 'name'::text) = 'fileupload'::text THEN to_jsonb(( SELECT string_agg(d.file_name::text, ', '::text) AS string_agg
|
||||
FROM unnest(string_to_array(app_data.field_value, ','::text)) file_ids(file_id)
|
||||
JOIN gepafin_schema.document d ON d.id::text = file_ids.file_id
|
||||
WHERE d.is_deleted = false))
|
||||
WHEN (field_data.value ->> 'name'::text) = ANY (ARRAY['checkboxes'::text, 'select'::text, 'radio'::text]) THEN
|
||||
CASE
|
||||
WHEN app_data.field_value ~~ '[%'::text THEN to_jsonb(( SELECT string_agg(opt.value ->> 'label'::text, ', '::text) AS string_agg
|
||||
FROM jsonb_array_elements_text(app_data.field_value::jsonb) selected_id(value)
|
||||
CROSS JOIN LATERAL ( SELECT s.value
|
||||
FROM jsonb_array_elements(field_data.value -> 'settings'::text) s(value)
|
||||
WHERE (s.value ->> 'name'::text) = 'options'::text) options_setting,
|
||||
LATERAL jsonb_array_elements(options_setting.value -> 'value'::text) opt(value)
|
||||
WHERE (opt.value ->> 'name'::text) = selected_id.value))
|
||||
ELSE to_jsonb(( SELECT opt.value ->> 'label'::text
|
||||
FROM ( SELECT s.value
|
||||
FROM jsonb_array_elements(field_data.value -> 'settings'::text) s(value)
|
||||
WHERE (s.value ->> 'name'::text) = 'options'::text) options_setting,
|
||||
LATERAL jsonb_array_elements(options_setting.value -> 'value'::text) opt(value)
|
||||
WHERE (opt.value ->> 'name'::text) = app_data.field_value
|
||||
LIMIT 1))
|
||||
END
|
||||
ELSE to_jsonb(app_data.field_value)
|
||||
END AS field_value,
|
||||
app_data.status,
|
||||
app_data.amount_requested,
|
||||
app_data.amount_accepted,
|
||||
app_data.is_deleted,
|
||||
app_data.hub_id,
|
||||
app_data.user_id,
|
||||
app_data.evaluation_version,
|
||||
app_data.company_id,
|
||||
c.company_name,
|
||||
c.vat_number AS company_vat_number,
|
||||
c.codice_ateco,
|
||||
c.codice_fiscale AS company_codice_fiscale,
|
||||
p.protocol_number,
|
||||
b.codice_fiscale AS user_codice_fiscale,
|
||||
COALESCE(NULLIF(TRIM(BOTH FROM concat(COALESCE(u.first_name, ''::character varying), ' ', COALESCE(u.last_name, ''::character varying))), ''::text), ''::text) AS user_name,
|
||||
COALESCE( NULLIF(TRIM(BOTH FROM CONCAT(COALESCE(aauser.first_name, ''), ' ', COALESCE(aauser.last_name, ''))),''),'NA') AS instructor_name,
|
||||
uwc.is_legal_representant AS legal_representative,
|
||||
cl.name AS call_title,
|
||||
cl.end_date AS call_end_date,
|
||||
cl.end_time AS call_end_time,
|
||||
cl.start_date AS call_start_date,
|
||||
cl.start_time AS call_start_time
|
||||
FROM ( SELECT a.id AS application_id,
|
||||
a.call_id,
|
||||
a.protocol_number,
|
||||
af.id AS application_form_id,
|
||||
af.form_id,
|
||||
aff.id,
|
||||
aff.field_value,
|
||||
a.status,
|
||||
a.amount_requested,
|
||||
a.amount_accepted,
|
||||
a.is_deleted,
|
||||
a.hub_id,
|
||||
a.user_id,
|
||||
a.evaluation_version,
|
||||
a.created_date,
|
||||
a.company_id,
|
||||
aff.field_id,
|
||||
f.content
|
||||
FROM gepafin_schema.application a
|
||||
JOIN gepafin_schema.application_form af ON af.application_id = a.id
|
||||
JOIN gepafin_schema.application_form_field aff ON aff.application_form_id = af.id
|
||||
JOIN gepafin_schema.form f ON f.id = af.form_id
|
||||
WHERE a.is_deleted = false) app_data
|
||||
CROSS JOIN LATERAL ( SELECT jsonb_array_elements.value
|
||||
FROM jsonb_array_elements(app_data.content::jsonb) jsonb_array_elements(value)
|
||||
WHERE (jsonb_array_elements.value ->> 'id'::text) = app_data.field_id::text) field_data(value)
|
||||
LEFT JOIN gepafin_schema.call cl ON app_data.call_id = cl.id
|
||||
LEFT JOIN gepafin_schema.company c ON app_data.company_id = c.id
|
||||
LEFT JOIN gepafin_schema.protocol p ON app_data.protocol_number = p.id
|
||||
LEFT JOIN gepafin_schema.gepafin_user u ON app_data.user_id = u.id
|
||||
LEFT JOIN gepafin_schema.user_with_company uwc ON app_data.user_id = uwc.user_id AND app_data.company_id = uwc.company_id AND uwc.is_deleted = false
|
||||
LEFT JOIN gepafin_schema.beneficiary b ON u.beneficiary_id = b.id
|
||||
LEFT JOIN gepafin_schema.assigned_applications aa ON app_data.application_id = aa.application_id
|
||||
LEFT JOIN gepafin_schema.gepafin_user aauser ON aa.user_id = aauser.id
|
||||
WHERE app_data.id IS NOT NULL AND (app_data.status::text <> ALL (ARRAY['DRAFT'::character varying::text, 'AWAITING'::character varying::text, 'READY'::character varying::text]))
|
||||
ORDER BY app_data.id, (field_data.value ->> 'id'::text);
|
||||
@@ -0,0 +1,108 @@
|
||||
|
||||
DROP VIEW IF EXISTS gepafin_schema.application_form_view ;
|
||||
|
||||
CREATE OR REPLACE VIEW gepafin_schema.application_form_view AS
|
||||
SELECT app_data.id,
|
||||
app_data.call_id,
|
||||
app_data.application_form_id,
|
||||
app_data.form_id,
|
||||
app_data.application_id,
|
||||
field_data.value ->> 'id'::text AS field_id,
|
||||
COALESCE(( SELECT s.value ->> 'value'::text
|
||||
FROM jsonb_array_elements(field_data.value -> 'settings'::text) s(value)
|
||||
WHERE (s.value ->> 'name'::text) = 'label'::text
|
||||
LIMIT 1), field_data.value ->> 'label'::text) AS field_label,
|
||||
( SELECT (s.value ->> 'value'::text)::boolean AS bool
|
||||
FROM jsonb_array_elements(field_data.value -> 'settings'::text) s(value)
|
||||
WHERE (s.value ->> 'name'::text) = 'reportEnable'::text
|
||||
LIMIT 1) AS report_enable,
|
||||
COALESCE(( SELECT s.value ->> 'value'::text
|
||||
FROM jsonb_array_elements(field_data.value -> 'settings'::text) s(value)
|
||||
WHERE (s.value ->> 'name'::text) = 'reportHeader'::text
|
||||
LIMIT 1), field_data.value ->> 'reportHeader'::text) AS report_header,
|
||||
field_data.value ->> 'name'::text AS field_type,
|
||||
CASE
|
||||
WHEN (field_data.value ->> 'name'::text) = 'fileupload'::text THEN to_jsonb(( SELECT string_agg(d.file_name::text, ', '::text) AS string_agg
|
||||
FROM unnest(string_to_array(app_data.field_value, ','::text)) file_ids(file_id)
|
||||
JOIN gepafin_schema.document d ON d.id::text = file_ids.file_id
|
||||
WHERE d.is_deleted = false))
|
||||
WHEN (field_data.value ->> 'name'::text) = ANY (ARRAY['checkboxes'::text, 'select'::text, 'radio'::text]) THEN
|
||||
CASE
|
||||
WHEN app_data.field_value ~~ '[%'::text THEN to_jsonb(( SELECT string_agg(opt.value ->> 'label'::text, ', '::text) AS string_agg
|
||||
FROM jsonb_array_elements_text(app_data.field_value::jsonb) selected_id(value)
|
||||
CROSS JOIN LATERAL ( SELECT s.value
|
||||
FROM jsonb_array_elements(field_data.value -> 'settings'::text) s(value)
|
||||
WHERE (s.value ->> 'name'::text) = 'options'::text) options_setting,
|
||||
LATERAL jsonb_array_elements(options_setting.value -> 'value'::text) opt(value)
|
||||
WHERE (opt.value ->> 'name'::text) = selected_id.value))
|
||||
ELSE to_jsonb(( SELECT opt.value ->> 'label'::text
|
||||
FROM ( SELECT s.value
|
||||
FROM jsonb_array_elements(field_data.value -> 'settings'::text) s(value)
|
||||
WHERE (s.value ->> 'name'::text) = 'options'::text) options_setting,
|
||||
LATERAL jsonb_array_elements(options_setting.value -> 'value'::text) opt(value)
|
||||
WHERE (opt.value ->> 'name'::text) = app_data.field_value
|
||||
LIMIT 1))
|
||||
END
|
||||
ELSE to_jsonb(app_data.field_value)
|
||||
END AS field_value,
|
||||
app_data.status,
|
||||
app_data.amount_requested,
|
||||
app_data.amount_accepted,
|
||||
app_data.is_deleted,
|
||||
app_data.hub_id,
|
||||
app_data.user_id,
|
||||
app_data.evaluation_version,
|
||||
app_data.company_id,
|
||||
c.company_name,
|
||||
c.vat_number AS company_vat_number,
|
||||
c.codice_ateco,
|
||||
c.codice_fiscale AS company_codice_fiscale,
|
||||
p.protocol_number,
|
||||
DATE(app_data.submission_date) AS submission_date,
|
||||
TO_CHAR(app_data.submission_date, 'HH24:MI:SS') AS submission_time,
|
||||
b.codice_fiscale AS user_codice_fiscale,
|
||||
COALESCE(NULLIF(TRIM(BOTH FROM concat(COALESCE(u.first_name, ''::character varying), ' ', COALESCE(u.last_name, ''::character varying))), ''::text), ''::text) AS user_name,
|
||||
COALESCE( NULLIF(TRIM(BOTH FROM CONCAT(COALESCE(aauser.first_name, ''), ' ', COALESCE(aauser.last_name, ''))),''),'NA') AS instructor_name,
|
||||
uwc.is_legal_representant AS legal_representative,
|
||||
cl.name AS call_title,
|
||||
cl.end_date AS call_end_date,
|
||||
cl.end_time AS call_end_time,
|
||||
cl.start_date AS call_start_date,
|
||||
cl.start_time AS call_start_time
|
||||
FROM ( SELECT a.id AS application_id,
|
||||
a.call_id,
|
||||
a.protocol_number,
|
||||
af.id AS application_form_id,
|
||||
af.form_id,
|
||||
aff.id,
|
||||
aff.field_value,
|
||||
a.status,
|
||||
a.amount_requested,
|
||||
a.amount_accepted,
|
||||
a.is_deleted,
|
||||
a.hub_id,
|
||||
a.user_id,
|
||||
a.evaluation_version,
|
||||
a.created_date,
|
||||
a.company_id,
|
||||
a.submission_date,
|
||||
aff.field_id,
|
||||
f.content
|
||||
FROM gepafin_schema.application a
|
||||
JOIN gepafin_schema.application_form af ON af.application_id = a.id
|
||||
JOIN gepafin_schema.application_form_field aff ON aff.application_form_id = af.id
|
||||
JOIN gepafin_schema.form f ON f.id = af.form_id
|
||||
WHERE a.is_deleted = false) app_data
|
||||
CROSS JOIN LATERAL ( SELECT jsonb_array_elements.value
|
||||
FROM jsonb_array_elements(app_data.content::jsonb) jsonb_array_elements(value)
|
||||
WHERE (jsonb_array_elements.value ->> 'id'::text) = app_data.field_id::text) field_data(value)
|
||||
LEFT JOIN gepafin_schema.call cl ON app_data.call_id = cl.id
|
||||
LEFT JOIN gepafin_schema.company c ON app_data.company_id = c.id
|
||||
LEFT JOIN gepafin_schema.protocol p ON app_data.protocol_number = p.id
|
||||
LEFT JOIN gepafin_schema.gepafin_user u ON app_data.user_id = u.id
|
||||
LEFT JOIN gepafin_schema.user_with_company uwc ON app_data.user_id = uwc.user_id AND app_data.company_id = uwc.company_id AND uwc.is_deleted = false
|
||||
LEFT JOIN gepafin_schema.beneficiary b ON u.beneficiary_id = b.id
|
||||
LEFT JOIN gepafin_schema.assigned_applications aa ON app_data.application_id = aa.application_id
|
||||
LEFT JOIN gepafin_schema.gepafin_user aauser ON aa.user_id = aauser.id
|
||||
WHERE app_data.id IS NOT NULL AND (app_data.status::text <> ALL (ARRAY['DRAFT'::character varying::text, 'AWAITING'::character varying::text, 'READY'::character varying::text]))
|
||||
ORDER BY app_data.id, (field_data.value ->> 'id'::text);
|
||||
@@ -0,0 +1,62 @@
|
||||
|
||||
DROP VIEW IF EXISTS gepafin_schema.assigned_applications_view ;
|
||||
|
||||
CREATE OR REPLACE VIEW gepafin_schema.assigned_applications_view AS
|
||||
SELECT
|
||||
-- From assigned_applications
|
||||
aa.id AS id,
|
||||
aa.user_id AS user_id,
|
||||
aa.status AS status,
|
||||
aa.created_date AS created_date,
|
||||
aa.updated_date AS updated_date,
|
||||
aa.is_deleted AS is_deleted,
|
||||
|
||||
-- From application
|
||||
a.id AS application_id,
|
||||
a.hub_id as hub_id,
|
||||
a.status AS application_status,
|
||||
a.submission_date AS submission_date,
|
||||
ae.end_date AS evaluation_end_date,
|
||||
a.ndg AS ndg,
|
||||
a.appointment_id AS appointment_id,
|
||||
|
||||
-- From protocol (OneToOne)
|
||||
p.protocol_number AS protocol_number,
|
||||
|
||||
-- From call (ManyToOne)
|
||||
cl.name AS call_name,
|
||||
|
||||
-- From company (ManyToOne)
|
||||
c.company_name AS company_name,
|
||||
ae.email_send_response AS email_send_response,
|
||||
COALESCE(NULLIF(TRIM(BOTH FROM concat(COALESCE(u.first_name, ''::character varying), ' ', COALESCE(u.last_name, ''::character varying))), ''::text), ''::text) AS assigned_user_name
|
||||
|
||||
|
||||
FROM gepafin_schema.assigned_applications aa
|
||||
|
||||
-- Join application (ManyToOne from assigned_applications)
|
||||
LEFT JOIN gepafin_schema.application a
|
||||
ON aa.application_id = a.id
|
||||
AND (a.is_deleted IS FALSE OR a.is_deleted IS NULL)
|
||||
|
||||
-- Join application_evaluation (application_id matches + not deleted)
|
||||
LEFT JOIN gepafin_schema.application_evaluation ae
|
||||
ON ae.application_id = a.id
|
||||
AND (ae.is_deleted IS FALSE OR ae.is_deleted IS NULL)
|
||||
|
||||
-- Join protocol (OneToOne from application)
|
||||
LEFT JOIN gepafin_schema.protocol p
|
||||
ON a.protocol_number = p.id
|
||||
|
||||
-- Join call (ManyToOne from application)
|
||||
LEFT JOIN gepafin_schema.call cl
|
||||
ON a.call_id = cl.id
|
||||
|
||||
-- Join company (ManyToOne from application)
|
||||
LEFT JOIN gepafin_schema.company c
|
||||
ON a.company_id = c.id
|
||||
|
||||
LEFT JOIN gepafin_schema.gepafin_user u ON aa.user_id = u.id
|
||||
|
||||
|
||||
WHERE aa.is_deleted IS FALSE OR aa.is_deleted IS NULL;
|
||||
19
src/main/resources/db/dump/updated_form_field_05_06_2025.sql
Normal file
19
src/main/resources/db/dump/updated_form_field_05_06_2025.sql
Normal file
@@ -0,0 +1,19 @@
|
||||
UPDATE FORM_FIELD
|
||||
SET
|
||||
NAME = 'textinput',
|
||||
LABEL = 'Campo Email',
|
||||
DESCRIPTION = 'Per l''inserimento di indirizzi email standard (non PEC)',
|
||||
SETTINGS = '[{"name":"label","value":"Campo Email"},{"name":"placeholder","value":"nome@esempio.it"},{"name":"reportEnable","value":false},{"name":"reportHeader","value":""},{"name": "isPecEmail", "value":false}]',
|
||||
VALIDATORS = '{"isRequired": false, "custom": "isEmail"}',
|
||||
UPDATED_DATE = CURRENT_TIMESTAMP
|
||||
WHERE SORT_ORDER = 15;
|
||||
|
||||
UPDATE FORM_FIELD
|
||||
SET
|
||||
NAME = 'textinput',
|
||||
LABEL = 'Campo PEC',
|
||||
DESCRIPTION = 'Specifico per l''inserimento di un indirizzo di Posta Elettronica Certificata',
|
||||
SETTINGS = '[{"name":"label","value":"Campo PEC"},{"name":"placeholder","value":"nome@pec.it"},{"name":"reportEnable","value":false},{"name":"reportHeader","value":""},{"name": "isPecEmail", "value":false}]',
|
||||
VALIDATORS = '{"isRequired": false, "custom": "isEmailPEC"}',
|
||||
UPDATED_DATE = CURRENT_TIMESTAMP
|
||||
WHERE SORT_ORDER = 16;
|
||||
@@ -408,3 +408,8 @@ resend.email.sent.failed.msg = Failed to resend the email.
|
||||
application.readmit.success=Application has been readmitted successfully.
|
||||
no.email.log.msg = No failed emails found for given userActionId.
|
||||
user.action.id.not.found = User Action id not found.
|
||||
ndg.not.found=NDG not found.
|
||||
email.pec.cannot.null=Email pec is required.
|
||||
user.request.completed=User request completed successfully.
|
||||
end.date.greater.than.now=End date must be greater than the current date and time.
|
||||
|
||||
|
||||
@@ -399,3 +399,8 @@ resend.email.sent.failed.msg = Impossibile inviare nuovamente l'e-mail.
|
||||
application.readmit.success=L'applicazione è stata riammessa con successo.
|
||||
no.email.log.msg = Nessuna email trovata per userActionId specificato.
|
||||
user.action.id.not.found = ID azione utente non trovato.
|
||||
ndg.not.found=NDG non trovato.
|
||||
email.pec.cannot.null=L'indirizzo email pec è obbligatorio.
|
||||
user.request.completed=Richiesta utente completata con successo.
|
||||
end.date.greater.than.now=La data di fine deve essere successiva alla data e all'ora correnti.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user