diff --git a/src/pages/newCalendar/components/CalendarRecordPreview.vue b/src/pages/newCalendar/components/CalendarRecordPreview.vue index 2972479..c938130 100644 --- a/src/pages/newCalendar/components/CalendarRecordPreview.vue +++ b/src/pages/newCalendar/components/CalendarRecordPreview.vue @@ -124,7 +124,7 @@ export default { }, methods: { openMedicalCard(id) { - this.getMedicalCardData(id); + localStorage.setItem("medicalId", id); this.$router.push("medical-card"); }, hidePreview() { diff --git a/src/pages/newMedicalCard/TheMedicalCard.vue b/src/pages/newMedicalCard/TheMedicalCard.vue index edc3a1c..427c8a8 100644 --- a/src/pages/newMedicalCard/TheMedicalCard.vue +++ b/src/pages/newMedicalCard/TheMedicalCard.vue @@ -47,5 +47,9 @@ export default { computed: mapState({ medical: (state) => state.medical.medicalCard, }), + created() { + if (!localStorage.getItem("medicalId")) this.$router.push("/calendar"); + this.$store.dispatch("getMedicalCardData"); + }, }; diff --git a/src/pages/newMedicalCard/components/BasicDataForms/ContactsForm.vue b/src/pages/newMedicalCard/components/BasicDataForms/ContactsForm.vue index 6f32192..db5a5df 100644 --- a/src/pages/newMedicalCard/components/BasicDataForms/ContactsForm.vue +++ b/src/pages/newMedicalCard/components/BasicDataForms/ContactsForm.vue @@ -17,11 +17,11 @@ .flex(v-if="key === 'networks'") .flex.rounded-full.cursor-pointer.items-center.gap-10px.py-1.pl-1.pr-2( v-if="data.id || data.filled" - @click="() => copyLinkNetwork(data.username)" + @click="() => copyLinkNetwork(data.value)" style="background-color: var(--bg-light-grey)" ) q-icon.icon(:name="mapNetworks[data.kind].icon" :class="{old: data.id, new: data.filled}") - span.text-sm.font-medium {{ mapNetworks[data.kind].title || data.username }} + span.text-sm.font-medium {{ mapNetworks[data.kind].title || data.value }} .flex.gap-10px(v-else v-click-outside="() => checkNetworksField(index)" :key="key+index") base-select-networks( :list-data="Object.values(mapNetworks)" @@ -31,7 +31,7 @@ :size-input="50" ) base-input.w-full( - v-model="data.username", + v-model="data.value", :name="key", :rule="configData[key].rules", size="M" @@ -39,7 +39,7 @@ base-input.w-full( v-else, :readonly="!isEdit", - v-model="data.username", + v-model="data.value", :name="key", :mask="configData[key].inputMask", :rule="configData[key].rules", diff --git a/src/store/modules/medicalCard.js b/src/store/modules/medicalCard.js index de082d1..5d4bd9e 100644 --- a/src/store/modules/medicalCard.js +++ b/src/store/modules/medicalCard.js @@ -257,15 +257,18 @@ const getters = { getContactsData(state) { let phones = state.medicalCard?.person?.contacts - ?.filter((el) => el.kind === "PHONE") - ?.map((el) => ({ ...el })) || []; + ?.filter((el) => el.category === "PHONE") + ?.map((el) => { + el.value = el.value.slice(1); + return { ...el }; + }) || []; let emails = state.medicalCard?.person?.contacts - ?.filter((el) => el.kind === "EMAIL") + ?.filter((el) => el.category === "EMAIL") ?.map((el) => ({ ...el })) || []; let networks = state.medicalCard?.person?.contacts - ?.filter((el) => el.kind !== "PHONE" && el.kind !== "EMAIL") + ?.filter((el) => el.category !== "PHONE" && el.category !== "EMAIL") ?.map((el) => ({ ...el })) || []; return { phones, @@ -454,24 +457,23 @@ const actions = { }); return this.getMedicalCardData(id); }, - getMedicalCardData({ state, commit }, id) { - if (state?.personId === id) return; - fetchWrapper.get(`medical_cards/person/${id}`).then((data) => { - if (!data) { - return this.createMedicalCard(id); - } - state.personId = id; - commit("setMedicalCard", data); - commit("setBasicData"); - commit("setContactsData"); - commit("setDocumentsData"); - commit("setAllergiesData"); - commit("setConfidantData"); - commit("setHealthStateData"); - commit("setEventsPersonData", data?.person?.id); - }); + getMedicalCardData({ commit }) { + fetchWrapper + .get(`medical_cards/person/${localStorage.getItem("medicalId")}`) + .then((data) => { + if (!data) { + return this.createMedicalCard(localStorage.getItem("medicalId")); + } + commit("setMedicalCard", data); + commit("setBasicData"); + commit("setContactsData"); + commit("setDocumentsData"); + commit("setAllergiesData"); + commit("setConfidantData"); + commit("setHealthStateData"); + commit("setEventsPersonData", data?.person?.id); + }); }, - getPersonsFiltredList() { return fetchWrapper .get(