Merge branch 'UC-208' into 'master'
WIP Добавил запрос на данные медицинской карты и переход на страницу карты See merge request andrusyakka/urban-couscous!230
This commit is contained in:
@@ -32,9 +32,8 @@
|
||||
:update-data-client="updateDataClient",
|
||||
:fetch-data-clients="fetchDataClients",
|
||||
:fetch-created-client-data="fetchCreatedClientData",
|
||||
:create-medical-card="medicalCardHandler",
|
||||
@handler-click-popup="handlerClickPopup",
|
||||
:created-client-name="createdClientName",
|
||||
@delete-client="deleteClientHandler",
|
||||
@recover-client="clearDeletedRowId",
|
||||
)
|
||||
client-table-pagination(
|
||||
@@ -115,6 +114,7 @@ export default {
|
||||
marked: [],
|
||||
dataClients: [
|
||||
{
|
||||
medical_history: [],
|
||||
initialization: true,
|
||||
},
|
||||
],
|
||||
@@ -127,6 +127,7 @@ export default {
|
||||
currentPage: 0,
|
||||
length: 0,
|
||||
},
|
||||
medicalHistory: {},
|
||||
showModal: false,
|
||||
clientId: "",
|
||||
deletedRowId: "",
|
||||
@@ -160,6 +161,9 @@ export default {
|
||||
saveDataClients(data) {
|
||||
this.dataClients = data.results;
|
||||
},
|
||||
saveDataMedicalHistory(data) {
|
||||
this.medicalHistory = data;
|
||||
},
|
||||
saveClientsCount(data) {
|
||||
if (!this.clientsCount) this.clientsCount = data.count;
|
||||
},
|
||||
@@ -254,30 +258,34 @@ export default {
|
||||
openModal() {
|
||||
this.showModal = true;
|
||||
},
|
||||
medicalCardHandler() {
|
||||
async handlerClickPopup(action, id) {
|
||||
this.modalConfig = this.modalConfig.map((el) => {
|
||||
return el.name === "medical"
|
||||
return el.name === action
|
||||
? { ...el, view: true }
|
||||
: { ...el, view: false };
|
||||
});
|
||||
if (action === "delete") {
|
||||
this.clientId = id;
|
||||
this.titleModal = "Удалить клиента";
|
||||
this.openModal();
|
||||
}
|
||||
if (action === "medical") {
|
||||
if (id) {
|
||||
fetchWrapper
|
||||
.get(`medical_card/medical_history/${id}/detail/`)
|
||||
.then((res) => this.saveDataMedicalHistory(res));
|
||||
this.$router.push("medical-card");
|
||||
} else {
|
||||
this.titleModal = "Создать мед.карту";
|
||||
this.openModal();
|
||||
}
|
||||
}
|
||||
},
|
||||
createMedicalCard(id) {
|
||||
this.selectedClientId = id;
|
||||
this.showMedicalCard = true;
|
||||
this.closeModal();
|
||||
},
|
||||
deleteClientHandler(id) {
|
||||
this.clientId = id;
|
||||
this.modalConfig = this.modalConfig.map((el) => {
|
||||
return el.name === "delete"
|
||||
? { ...el, view: true }
|
||||
: { ...el, view: false };
|
||||
});
|
||||
this.titleModal = "Удалить клиента";
|
||||
this.openModal();
|
||||
},
|
||||
writeDeletedRowId() {
|
||||
this.deletedRowId = this.clientId;
|
||||
this.closeModal();
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
:client-id="client.id",
|
||||
:disabled-delete="!!deletedClientId && !rowOverlay",
|
||||
@delete-client="transmitDeleteClient",
|
||||
:create-medical-card="createMedicalCard"
|
||||
:create-medical-card="transmitMedicalCard"
|
||||
)
|
||||
.flex.z-10(
|
||||
v-if="isOpenChange && !rowOverlay",
|
||||
@@ -268,7 +268,7 @@ export default {
|
||||
"Дата рождения позже текущего дня"
|
||||
);
|
||||
this.dataClient.age = this.client.birth_date || "";
|
||||
} else if (!Object.keys(data).length == 0)
|
||||
} else if (!Object.keys(data).length === 0)
|
||||
fetchWrapper
|
||||
.post(`general/person/${this.client.id}/update/`, {
|
||||
...data,
|
||||
@@ -395,9 +395,16 @@ export default {
|
||||
openChangeData() {
|
||||
this.isOpenChange = true;
|
||||
},
|
||||
transmitMedicalCard() {
|
||||
this.$emit(
|
||||
"handler-click-popup",
|
||||
"medical",
|
||||
this.client?.medical_history[0]?.id
|
||||
);
|
||||
},
|
||||
transmitDeleteClient() {
|
||||
this.isOpenDetailInfo = false;
|
||||
this.$emit("delete-client", this.client.id);
|
||||
this.$emit("handler-click-popup", "delete", this.client.id);
|
||||
},
|
||||
async deleteClient() {
|
||||
await fetchWrapper.del(`general/person/${this.client.id}/delete/`);
|
||||
|
||||
@@ -38,7 +38,7 @@ export default createRouter({
|
||||
{ path: "calendar", component: TheCalendar },
|
||||
{ path: "clients", component: TheUser },
|
||||
{ path: "settings", component: TheSettings },
|
||||
{ path: "medicalCard", component: TheMedicalCard },
|
||||
{ path: "medical-card", component: TheMedicalCard },
|
||||
],
|
||||
},
|
||||
],
|
||||
|
||||
Reference in New Issue
Block a user