only improves

This commit is contained in:
kandrusyak
2023-08-02 01:54:50 +03:00
parent a9b4a7e185
commit e682136ed8
12 changed files with 191 additions and 72 deletions

View File

@@ -1,11 +1,11 @@
<template lang="pug">
medical-form-wrapper(
title="Основные данные"
:is-check-change="isCheckChange"
:is-loading-data="isLoadingData"
:is-edit="isEdit"
:save="saveChange"
:cancel="cancelEdit"
:is-check-change="isCheckChange"
:is-loading-data="isLoadingData"
:is-edit="isEdit"
:save="saveChange"
:cancel="cancelEdit"
:open-edit="openEdit"
)
q-form.form-wrap.gap-24.w-full(ref="formBasicData")
@@ -16,8 +16,8 @@
.avatar-field.flex.gap-3.items-center(v-if="field.type === 'avatar'")
base-avatar(:size="40")
img.avatar.object-cover(
v-if="basic[data.dataKey][field.key]?.photo"
:src="basic[data.dataKey][field.key].photo"
v-if="basic[data.dataKey][field.key]?.photo"
:src="basic[data.dataKey][field.key].photo"
alt="AV"
)
span(v-else) {{ avatar }}
@@ -25,7 +25,7 @@
base-modal(v-model="showModal" title="Загрузить изображение")
base-upload-photo(
v-model="basic[data.dataKey][field.key]"
:confirm-upload="confirmCahngeAvatar"
:confirm-upload="confirmCahngeAvatar"
)
.select(v-else-if="field.type === 'select'")
base-select(
@@ -49,11 +49,11 @@
)
base-input(
v-else,
:readonly="!isEdit"
:readonly="!isEdit"
v-model="basic[data.dataKey][field.key]"
@update:model-value="checkChangeInput"
:type="field.type"
:name="field.key"
:name="field.key"
:width="302",
size="M",
:rule="field.rules"
@@ -113,6 +113,8 @@ export default {
}),
...mapState({
basic: (state) => state.medical.basicData,
isNew: (state) => state.medical.medicalCard.type === "new",
medicalCard: (state) => state.medical.medicalCard,
}),
},
methods: {
@@ -195,15 +197,22 @@ export default {
const form = this.$refs.formBasicData;
form.validate().then((validate) => {
if (validate) {
this.isLoadingData = true;
let updateBasic = this.updateBasicData();
Promise.allSettled(updateBasic)
.then(() => this.$store.dispatch("getMedicalCardData"))
.then(() => {
this.isLoadingData = false;
this.isEdit = false;
this.isCheckChange = false;
});
let person = this.basic.personalData;
this.$store.dispatch("setMedicalCardData", {
...this.medicalCard,
person: {
...this.medicalCard.person,
...person,
},
});
//let updateBasic = this.updateBasicData();
// Promise.allSettled(updateBasic)
// .then(() => this.$store.dispatch("getMedicalCardData"))
// .then(() => {
// this.isLoadingData = false;
// this.isEdit = false;
// this.isCheckChange = false;
// });
} else {
getFieldsNameUnvalidated(form).forEach((errorKey) => {
addNotification(
@@ -221,6 +230,9 @@ export default {
this.isEdit = true;
},
},
mounted() {
this.isNew && this.openEdit();
},
};
</script>