Исправил редактирование приоритета, возраста, телефона клиента

This commit is contained in:
megavrilinvv
2022-12-05 16:47:38 +03:00
parent c50c549e33
commit 22ff04e498
3 changed files with 37 additions and 14 deletions

View File

@@ -37,7 +37,7 @@
)
table-cell-body-priority(
v-if="!rowOverlay",
:value="dataClient.priority",
:value="dataClient",
:choose-priority="choosePriority",
:is-open-change="isOpenChange",
:width="columnBody.find(el => el.name === 'priority').width"
@@ -207,11 +207,19 @@ export default {
}
},
postUpdateClient() {
fetchWrapper.post(`general/person/${this.client.id}/update/`, {
full_name: this.dataClient.fullName,
birth_date: this.dataClient.age,
priority: this.dataClient.priority,
});
let foundElement = this.prioritySettings.settings.find(
(el) => el.text === this.dataClient.priority
);
let data = {};
if (this.dataClient.age) {
data.birth_date = this.dataClient.age;
}
if (
this.dataClient.priority !== this.client.priority &&
this.dataClient.priority
) {
data.priority = foundElement.priority;
}
},
postContactsClient() {
let contacts = [...this.dataClient.contacts];

View File

@@ -1,11 +1,20 @@
<template lang="pug">
.flex.box-border.px-4.items-center.w-full.text-sm(:style="{ minWidth : width + 'px' }")
span.text-sm(v-if="!isOpenChange") {{value.phone.username.replace(/\+7(\d{3})(\d{3})(\d{2})(\d{2})/, '+7 ($1) $2-$3-$4')}}
base-input(v-if="isOpenChange" :width-input="154" v-model:value="value.phone.username" :placeholder="value.phone.username")
span.text-sm(
v-if="!isOpenChange"
) {{value.phone.username.replace(/\+7(\d{3})(\d{3})(\d{2})(\d{2})/, '+7 ($1) $2-$3-$4')}}
base-input(
v-if="isOpenChange",
:width-input="154",
v-model:value="value.phone.username",
:placeholder="value.phone.username",
v-mask="'+7 (###) ###-##-##'"
)
</template>
<script>
import BaseInput from "@/components/base/BaseInput";
import { mask } from "vue-the-mask";
export default {
name: "TableCellBodyPhone",
components: { BaseInput },
@@ -14,5 +23,6 @@ export default {
width: Number,
isOpenChange: Boolean,
},
directives: { mask },
};
</script>

View File

@@ -1,10 +1,10 @@
<template lang="pug">
.flex.box-border.px-4.items-center.w-full.gap-x-2(:style="{ minWidth : width + 'px' }")
.flex.gap-x-2.items-center(v-if="!isOpenChange")
.dot.w-2.h-2(:style="{ backgroundColor : settings.settings.find((el) => el.text == value).color }")
span.text-sm(:style="{ color : settings.settings.find((el) => el.text == value).color }") {{value}}
.dot.w-2.h-2(:style="{ backgroundColor: prioritySettings.settings.find((el) => el.text == value.priority).color }")
span.text-sm(:style="{ color: prioritySettings.settings.find((el) => el.text == value.priority).color }") {{value.priority}}
.flex.gap-x-2.text-sm(class="w-[164px]")
base-select(v-if="isOpenChange", :items="getPriorityList", v-model="value")
base-select(v-if="isOpenChange", :items="getPriorityList", v-model="value.priority")
</template>
<script>
@@ -12,16 +12,21 @@ import { column } from "@/pages/clients/utils/tableConfig";
import BaseSelect from "@/components/base/BaseSelect";
export default {
name: "TableCellBodyPriority",
props: ["value", "width", "isOpenChange", "choosePriority"],
props: {
value: Object,
width: Number,
isOpenChange: Boolean,
choosePriority: Function,
},
components: { BaseSelect },
data() {
return {
settings: column.find((el) => el.name === "priority"),
prioritySettings: column.find((el) => el.name === "priority"),
};
},
computed: {
getPriorityList() {
return this.settings.settings.map((el) => {
return this.prioritySettings.settings.map((el) => {
return { label: el.text, id: el.id };
});
},