move field names in a single place
This commit is contained in:
+24
-16
@@ -43,6 +43,13 @@ export default class RecuperoPropostaCctDaContrattiComponent extends ElixFormsCo
|
|||||||
/** Ref al container per gestire il click-outside */
|
/** Ref al container per gestire il click-outside */
|
||||||
private autocompleteRef: React.RefObject<HTMLDivElement | null> = React.createRef();
|
private autocompleteRef: React.RefObject<HTMLDivElement | null> = React.createRef();
|
||||||
|
|
||||||
|
private static readonly formFieldKeys = {
|
||||||
|
idContratto: 'COL0010',
|
||||||
|
titoloContratto: 'COL0020',
|
||||||
|
idDomanda: 'COL0030',
|
||||||
|
idRicevuta: 'COL0040',
|
||||||
|
} as const;
|
||||||
|
|
||||||
/** Codice fiscale letto dalla query string (COL0009), usato solo per la chiamata API */
|
/** Codice fiscale letto dalla query string (COL0009), usato solo per la chiamata API */
|
||||||
private codiceFiscale: string;
|
private codiceFiscale: string;
|
||||||
|
|
||||||
@@ -210,10 +217,10 @@ export default class RecuperoPropostaCctDaContrattiComponent extends ElixFormsCo
|
|||||||
this.setState({
|
this.setState({
|
||||||
formData: {
|
formData: {
|
||||||
...this.state.formData,
|
...this.state.formData,
|
||||||
COL0010: contract.idContratto,
|
[RecuperoPropostaCctDaContrattiComponent.formFieldKeys.idContratto]: contract.idContratto,
|
||||||
COL0020: contract.titoloContratto,
|
[RecuperoPropostaCctDaContrattiComponent.formFieldKeys.titoloContratto]: contract.titoloContratto,
|
||||||
COL0030: contract.idDomanda,
|
[RecuperoPropostaCctDaContrattiComponent.formFieldKeys.idDomanda]: contract.idDomanda,
|
||||||
COL0040: contract.idRicevuta,
|
[RecuperoPropostaCctDaContrattiComponent.formFieldKeys.idRicevuta]: contract.idRicevuta,
|
||||||
},
|
},
|
||||||
}, () => {
|
}, () => {
|
||||||
console.log('Contratto selezionato:', contract);
|
console.log('Contratto selezionato:', contract);
|
||||||
@@ -230,10 +237,10 @@ export default class RecuperoPropostaCctDaContrattiComponent extends ElixFormsCo
|
|||||||
this.setState({
|
this.setState({
|
||||||
formData: {
|
formData: {
|
||||||
...this.state.formData,
|
...this.state.formData,
|
||||||
COL0010: '',
|
[RecuperoPropostaCctDaContrattiComponent.formFieldKeys.idContratto]: '',
|
||||||
COL0020: '',
|
[RecuperoPropostaCctDaContrattiComponent.formFieldKeys.titoloContratto]: '',
|
||||||
COL0030: '',
|
[RecuperoPropostaCctDaContrattiComponent.formFieldKeys.idDomanda]: '',
|
||||||
COL0040: '',
|
[RecuperoPropostaCctDaContrattiComponent.formFieldKeys.idRicevuta]: '',
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@@ -332,20 +339,21 @@ export default class RecuperoPropostaCctDaContrattiComponent extends ElixFormsCo
|
|||||||
* - 4 campi hidden (COL0010, COL0020, COL0030, COL0040) per i dati da rimandare a elixForms
|
* - 4 campi hidden (COL0010, COL0020, COL0030, COL0040) per i dati da rimandare a elixForms
|
||||||
*/
|
*/
|
||||||
protected override createCustomFormFields(formFieldFactory: IElixFormsComponentCustomFormFieldFactory): JSX.Element {
|
protected override createCustomFormFields(formFieldFactory: IElixFormsComponentCustomFormFieldFactory): JSX.Element {
|
||||||
const col0010Value = this.state.formData['COL0010'] ?? '';
|
const fieldKeys = RecuperoPropostaCctDaContrattiComponent.formFieldKeys;
|
||||||
const col0020Value = this.state.formData['COL0020'] ?? '';
|
const idContratto = this.state.formData[fieldKeys.idContratto] ?? '';
|
||||||
const col0030Value = this.state.formData['COL0030'] ?? '';
|
const titoloContratto = this.state.formData[fieldKeys.titoloContratto] ?? '';
|
||||||
const col0040Value = this.state.formData['COL0040'] ?? '';
|
const idDomanda = this.state.formData[fieldKeys.idDomanda] ?? '';
|
||||||
|
const idRicevuta = this.state.formData[fieldKeys.idRicevuta] ?? '';
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
{this.renderAutocomplete()}
|
{this.renderAutocomplete()}
|
||||||
|
|
||||||
{/* Campi hidden per i dati del contratto selezionato — verranno inviati nel POST a elixForms */}
|
{/* Campi hidden per i dati del contratto selezionato — verranno inviati nel POST a elixForms */}
|
||||||
<input type="hidden" id="COL0010_hidden" name="COL0010" value={col0010Value} />
|
<input type="hidden" id="idContratto_hidden" name={fieldKeys.idContratto} value={idContratto} />
|
||||||
<input type="hidden" id="COL0020_hidden" name="COL0020" value={col0020Value} />
|
<input type="hidden" id="titoloContratto_hidden" name={fieldKeys.titoloContratto} value={titoloContratto} />
|
||||||
<input type="hidden" id="COL0030_hidden" name="COL0030" value={col0030Value} />
|
<input type="hidden" id="idDomanda_hidden" name={fieldKeys.idDomanda} value={idDomanda} />
|
||||||
<input type="hidden" id="COL0040_hidden" name="COL0040" value={col0040Value} />
|
<input type="hidden" id="idRicevuta_hidden" name={fieldKeys.idRicevuta} value={idRicevuta} />
|
||||||
</>
|
</>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user