fix household creation (not sure)

This commit is contained in:
Kuchenpirat 2025-07-12 15:20:50 +00:00
commit a76ed4eb97

View file

@ -94,10 +94,7 @@
icon icon
color="error" color="error"
variant="text" variant="text"
@click.stop=" @click.stop="confirmDialog = true; deleteTarget = item.id"
confirmDialog = true;
deleteTarget = +item.id;
"
> >
<v-icon> <v-icon>
{{ $globals.icons.delete }} {{ $globals.icons.delete }}
@ -114,7 +111,7 @@
</v-container> </v-container>
</template> </template>
<script lang="ts"> <script setup lang="ts">
import { fieldTypes } from "~/composables/forms"; import { fieldTypes } from "~/composables/forms";
import { useGroups } from "~/composables/use-groups"; import { useGroups } from "~/composables/use-groups";
import { useAdminHouseholds } from "~/composables/use-households"; import { useAdminHouseholds } from "~/composables/use-households";
@ -122,30 +119,27 @@ import { validators } from "~/composables/use-validators";
import type { HouseholdInDB } from "~/lib/api/types/household"; import type { HouseholdInDB } from "~/lib/api/types/household";
import type { VForm } from "~/types/auto-forms"; import type { VForm } from "~/types/auto-forms";
export default defineNuxtComponent({
setup() {
definePageMeta({ definePageMeta({
layout: "admin", layout: "admin",
}); });
const i18n = useI18n(); const i18n = useI18n();
// Set page title
useSeoMeta({ useSeoMeta({
title: i18n.t("household.manage-households"), title: i18n.t("household.manage-households"),
}); });
const { groups } = useGroups(); const { groups } = useGroups();
const { households, refreshAllHouseholds, deleteHousehold, createHousehold } = useAdminHouseholds(); const { households, deleteHousehold, createHousehold } = useAdminHouseholds();
const refNewHouseholdForm = ref<VForm | null>(null); const refNewHouseholdForm = ref<VForm | null>(null);
const state = reactive({ const createDialog = ref(false);
createDialog: false, const confirmDialog = ref(false);
confirmDialog: false, const deleteTarget = ref<string>("");
loading: false, const search = ref("");
deleteTarget: 0, const updateMode = ref(false);
search: "",
headers: [ const headers = [
{ {
title: i18n.t("household.household"), title: i18n.t("household.household"),
align: "start", align: "start",
@ -157,9 +151,9 @@ export default defineNuxtComponent({
{ title: i18n.t("user.total-users"), value: "users" }, { title: i18n.t("user.total-users"), value: "users" },
{ title: i18n.t("user.webhooks-enabled"), value: "webhookEnable" }, { title: i18n.t("user.webhooks-enabled"), value: "webhookEnable" },
{ title: i18n.t("general.delete"), value: "actions" }, { title: i18n.t("general.delete"), value: "actions" },
], ];
updateMode: false,
createHouseholdForm: { const createHouseholdForm = reactive({
items: [ items: [
{ {
label: i18n.t("household.household-name"), label: i18n.t("household.household-name"),
@ -172,13 +166,12 @@ export default defineNuxtComponent({
groupId: "", groupId: "",
name: "", name: "",
}, },
},
}); });
function openDialog() { function openDialog() {
state.createDialog = true; createDialog.value = true;
state.createHouseholdForm.data.name = ""; createHouseholdForm.data.name = "";
state.createHouseholdForm.data.groupId = ""; createHouseholdForm.data.groupId = "";
} }
const router = useRouter(); const router = useRouter();
@ -191,23 +184,7 @@ export default defineNuxtComponent({
if (!refNewHouseholdForm.value?.validate()) { if (!refNewHouseholdForm.value?.validate()) {
return; return;
} }
createDialog.value = false;
state.createDialog = false; await createHousehold(createHouseholdForm.data);
await createHousehold(state.createHouseholdForm.data);
} }
return {
...toRefs(state),
refNewHouseholdForm,
groups,
households,
validators,
refreshAllHouseholds,
deleteHousehold,
handleCreateSubmit,
openDialog,
handleRowClick,
};
},
});
</script> </script>