[WIP] Фикс апдейта данных клиента

This commit is contained in:
megavrilinvv
2022-12-07 17:28:21 +03:00
parent a42d8aa30a
commit a8be61b4e4
4 changed files with 39 additions and 24 deletions

View File

@@ -212,29 +212,31 @@ export default {
(el) => el.text === this.dataClient.priority (el) => el.text === this.dataClient.priority
); );
let data = {}; let data = {};
if ( let clientName = `${this.client.last_name || ""} ${
this.dataClient.age !== this.client.birth_date && this.client.first_name || ""
this.dataClient.age } ${this.client.patronymic || ""}`;
) {
if (!this.dataClient.fullName) this.dataClient.fullName = clientName;
else if (this.dataClient.fullName !== clientName)
data.full_name = this.dataClient.fullName;
if (this.dataClient.age !== this.client.birth_date && this.dataClient.age)
data.birth_date = this.dataClient.age; data.birth_date = this.dataClient.age;
else if (!this.dataClient.age) {
this.addErrorNotification(
"Пожалуйста, введите дату рождения корректно"
);
this.dataClient.age = this.client.birth_date || "";
} }
if ( if (foundElement.id !== this.client.priority)
foundElement.id !== this.client.priority && data.priority = foundElement.id;
foundElement.text !== "-"
) {
data.priority = foundElement.priority;
} else if (foundElement.text === "-") {
data.priority = 4;
}
if ( if (
data.birth_date && data.birth_date &&
moment(data.birth_date).isAfter(moment().format("YYYY-MM-DD")) moment(data.birth_date).isAfter(moment().format("YYYY-MM-DD"))
) { ) {
this.addErrorNotification(); this.addErrorNotification("Дата рождения позже текущего дня");
this.dataClient.age = this.client.birth_date; this.dataClient.age = this.client.birth_date || "";
} else } else if (!Object.keys(data).length == 0)
fetchWrapper.post(`general/person/${this.client.id}/update/`, { fetchWrapper.post(`general/person/${this.client.id}/update/`, {
full_name: this.dataClient.fullName,
...data, ...data,
}); });
}, },
@@ -264,16 +266,24 @@ export default {
this.client.contacts.forEach((el) => { this.client.contacts.forEach((el) => {
if ( if (
el.kind === "PHONE" && el.kind === "PHONE" &&
this.dataClient.phone.username.length === 18 &&
el.username !== this.dataClient.phone.username el.username !== this.dataClient.phone.username
) { ) {
updateContacts.push(this.dataClient.phone); updateContacts.push(this.dataClient.phone);
} } else
this.dataClient.phone.username =
this.client.contacts.find((el) => el.kind === "PHONE")?.username ||
"";
if ( if (
el.kind === "EMAIL" && el.kind === "EMAIL" &&
this.dataClient.email.username &&
el.username !== this.dataClient.email.username el.username !== this.dataClient.email.username
) { ) {
updateContacts.push(this.dataClient.email); updateContacts.push(this.dataClient.email);
} } else
this.dataClient.email.username =
this.client.contacts.find((el) => el.kind === "EMAIL")?.username ||
"";
}); });
createContacts.forEach((el) => this.postCreateContact(el)); createContacts.forEach((el) => this.postCreateContact(el));
// deleteContacts.forEach((el) => this.postDeleteContact(el)); // deleteContacts.forEach((el) => this.postDeleteContact(el));
@@ -336,11 +346,11 @@ export default {
5000 5000
); );
}, },
addErrorNotification() { addErrorNotification(message) {
addNotification( addNotification(
"Некорректная дата рождения", "Некорректная дата рождения",
"Некорректная дата рождения", "Некорректная дата рождения",
"Дата рождения позже текущего дня", message,
"error", "error",
5000 5000
); );

View File

@@ -39,18 +39,22 @@
.flex.flex-col(class="gap-y-1.5") .flex.flex-col(class="gap-y-1.5")
span.text-sm Номер СНИЛС span.text-sm Номер СНИЛС
base-input.input-info( base-input.input-info(
disabled,
v-mask="'###-###-### ##'", v-mask="'###-###-### ##'",
v-model:value="identityDocument.snils.numba", v-model:value="identityDocument.snils.numba",
placeholder="000000000 00", placeholder="000000000 00",
:width-input="277" :width-input="277",
:style="{backgroundColor: 'var(--bg-disable-grey-color)'}"
) )
.flex.flex-col(class="gap-y-1.5") .flex.flex-col(class="gap-y-1.5")
span.text-sm Номер ИНН span.text-sm Номер ИНН
base-input.input-info( base-input.input-info(
disabled,
v-mask="'############'", v-mask="'############'",
v-model:value="identityDocument.inn.numba", v-model:value="identityDocument.inn.numba",
placeholder="000000000000", placeholder="000000000000",
:width-input="277" :width-input="277",
:style="{backgroundColor: 'var(--bg-disable-grey-color)'}"
) )
.px-4 .px-4
base-button(@click="saveClient" :size="40") base-button(@click="saveClient" :size="40")

View File

@@ -9,7 +9,8 @@
@click.stop, @click.stop,
type="text", type="text",
v-model:value="value.fullName", v-model:value="value.fullName",
:width-input="300" :width-input="300",
placeholder="Фамилия Имя Отчество"
) )
</template> </template>

View File

@@ -8,7 +8,7 @@
.absolute.icon-cancel-mini.delete.flex.w-4.h-4.justify-center.items-center.bottom-4.left-2( .absolute.icon-cancel-mini.delete.flex.w-4.h-4.justify-center.items-center.bottom-4.left-2(
v-if="isOpenChange", v-if="isOpenChange",
:id="network.kind", :id="network.kind",
@click="(e) => deleteNetwork(e)" @click.stop="(e) => deleteNetwork(e)"
) )
.flex.relative.pb-2(class="pl-[46px]") .flex.relative.pb-2(class="pl-[46px]")
base-button( base-button(