Teren-app/resources/js/Pages/Imports/Templates/Partials/ImportModeSettings.vue

74 lines
2.9 KiB
Vue

<script setup>
import { Card, CardContent, CardHeader, CardTitle, CardDescription } from "@/Components/ui/card";
import { Label } from "@/Components/ui/label";
import { Checkbox } from "@/Components/ui/checkbox";
import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from "@/Components/ui/select";
import { Badge } from "@/Components/ui/badge";
const props = defineProps({
form: { type: Object, required: true },
entities: { type: Array, default: () => [] },
});
</script>
<template>
<Card>
<CardHeader>
<CardTitle>Nastavitve načina uvoza</CardTitle>
<CardDescription>
Konfiguriraj način uvoza za zgodovino ali plačila
</CardDescription>
</CardHeader>
<CardContent class="space-y-4">
<div class="flex items-center gap-6">
<label class="inline-flex items-center gap-2 cursor-pointer">
<Checkbox
:checked="form.meta.history_import"
@update:checked="form.meta.history_import = $event"
/>
<span class="text-sm font-medium">Uvoz zgodovine</span>
</label>
<label class="inline-flex items-center gap-2 cursor-pointer">
<Checkbox
:checked="form.meta.payments_import"
@update:checked="form.meta.payments_import = $event"
/>
<span class="text-sm font-medium">Uvoz plačil</span>
</label>
</div>
<p class="text-xs text-muted-foreground">
Zgodovina dovoljuje oseba/naslov/telefon/pogodbe/aktivnosti/primeri strank; računi so
samodejno dodani s pogodbami. Plačila zaklene entitete na Pogodbe Računi Plačila.
</p>
<div v-if="form.meta.payments_import" class="space-y-2 pt-2">
<Label for="contract_key">Ključ ujemanja pogodb</Label>
<Select v-model="form.meta.contract_key_mode">
<SelectTrigger id="contract_key">
<SelectValue />
</SelectTrigger>
<SelectContent>
<SelectItem value="reference">
Referenca (uporabi samo contract.reference za iskanje zapisov)
</SelectItem>
</SelectContent>
</Select>
<p class="text-xs text-muted-foreground">
Preslika stolpec CSV na contract.reference za reševanje pogodb za tega naročnika.
</p>
</div>
<!-- Entities locked info for payments mode -->
<div v-if="form.meta.payments_import" class="p-3 bg-emerald-50 rounded-lg border border-emerald-200">
<div class="text-sm text-emerald-900 mb-2 font-medium">Entitete so zaklenjene:</div>
<div class="flex flex-wrap gap-2">
<Badge variant="secondary" class="bg-emerald-100 text-emerald-800">Pogodbe</Badge>
<Badge variant="secondary" class="bg-emerald-100 text-emerald-800">Računi</Badge>
<Badge variant="secondary" class="bg-emerald-100 text-emerald-800">Plačila</Badge>
</div>
</div>
</CardContent>
</Card>
</template>