feat: enhance tipologia selection with admin restrictions in FormNewServizioAcquisto

This commit is contained in:
Marco Pedone 2026-03-12 12:03:08 +01:00
parent 400dc037fe
commit b8d92df023

View file

@ -430,44 +430,52 @@ export const FormNewServizioAcquisto = ({
render={({ field }) => (
<FormItem>
<div className="flex flex-wrap items-center gap-x-2">
<FormLabel htmlFor="select-tipologia">
{t.parametri.tipologia}
</FormLabel>
<FormLabel htmlFor="select-tipologia">Tipologia</FormLabel>
<FormMessage />
</div>
<MultiSelect
defaultValue={
field.value === TipologiaPosizioneEnum.Transitorio
? {
label: "Transitorio",
value: TipologiaPosizioneEnum.Transitorio,
}
: {
label: "Stabile",
value: TipologiaPosizioneEnum.Stabile,
}
}
elementId="select-tipologia"
elementName="tipologia"
isMulti={false}
onValueChange={(value) => {
field.onChange(value.value);
form.setValue("motivazione_transitorio", null);
form.setValue("reddito", null);
}}
options={[
{
label: "Transitorio",
value: TipologiaPosizioneEnum.Transitorio,
},
{
label: "Stabile",
value: TipologiaPosizioneEnum.Stabile,
},
]}
placeholder={t.seleziona_placeholder}
/>
{!isAdmin ? (
<div className="space-y-0">
<p className="font-semibold text-lg">{field.value}</p>
<p className="text-muted-foreground text-sm">
La tipologia non può essere modificata. Contatta il
supporto se necessario.
</p>
</div>
) : (
<MultiSelect
defaultValue={
field.value === TipologiaPosizioneEnum.Transitorio
? {
label: "Transitorio",
value: TipologiaPosizioneEnum.Transitorio,
}
: {
label: "Stabile",
value: TipologiaPosizioneEnum.Stabile,
}
}
elementId="select-tipologia"
elementName="tipologia"
isMulti={false}
onValueChange={(value) => {
field.onChange(value.value);
form.setValue("motivazione_transitorio", null);
form.setValue("reddito", null);
}}
options={[
{
label: "Transitorio",
value: TipologiaPosizioneEnum.Transitorio,
},
{
label: "Stabile",
value: TipologiaPosizioneEnum.Stabile,
},
]}
placeholder={t.seleziona_placeholder}
/>
)}
</FormItem>
)}
/>