Фикс отображения данных при обновлении страницы

This commit is contained in:
megavrilinvv
2023-08-15 17:14:13 +03:00
parent 48f43a0770
commit d0ff2da700
4 changed files with 31 additions and 26 deletions

View File

@@ -124,7 +124,7 @@ export default {
},
methods: {
openMedicalCard(id) {
this.getMedicalCardData(id);
localStorage.setItem("medicalId", id);
this.$router.push("medical-card");
},
hidePreview() {

View File

@@ -47,5 +47,8 @@ export default {
computed: mapState({
medical: (state) => state.medical.medicalCard,
}),
created() {
this.$store.dispatch("getMedicalCardData");
},
};
</script>

View File

@@ -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",

View File

@@ -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,13 +457,13 @@ const actions = {
});
return this.getMedicalCardData(id);
},
getMedicalCardData({ state, commit }, id) {
if (state?.personId === id) return;
fetchWrapper.get(`medical_cards/person/${id}`).then((data) => {
getMedicalCardData({ commit }) {
fetchWrapper
.get(`medical_cards/person/${localStorage.getItem("medicalId")}`)
.then((data) => {
if (!data) {
return this.createMedicalCard(id);
return this.createMedicalCard(localStorage.getItem("medicalId"));
}
state.personId = id;
commit("setMedicalCard", data);
commit("setBasicData");
commit("setContactsData");
@@ -471,7 +474,6 @@ const actions = {
commit("setEventsPersonData", data?.person?.id);
});
},
getPersonsFiltredList() {
return fetchWrapper
.get(