From f3979e9e24ee01384e6a74b44ab8e6cf5b7424c5 Mon Sep 17 00:00:00 2001 From: megavrilinvv Date: Tue, 15 Nov 2022 16:16:36 +0300 Subject: [PATCH] =?UTF-8?q?[WIP]=20=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D0=BB=20=D1=81=D0=BE=D1=85=D1=80=D0=B0=D0=BD=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D0=B5=20=D0=B0=D0=B4=D1=80=D0=B5=D1=81=D0=BE=D0=B2=20=D0=B8=20?= =?UTF-8?q?=D0=BF=D0=B0=D1=81=D0=BF=D0=BE=D1=80=D1=82=D0=BD=D1=8B=D1=85=20?= =?UTF-8?q?=D0=B4=D0=B0=D0=BD=D0=BD=D1=8B=D1=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../components/ClientDetailInfoSection.vue | 59 +++++++------------ .../components/ClientDetailInfoWrapper.vue | 4 ++ .../components/ClientDetailSectionAddress.vue | 51 ++++++++++++++++ .../clients/components/ClientsTableRow.vue | 21 ++++--- 4 files changed, 87 insertions(+), 48 deletions(-) create mode 100644 src/pages/clients/components/ClientDetailSectionAddress.vue diff --git a/src/pages/clients/components/ClientDetailInfoSection.vue b/src/pages/clients/components/ClientDetailInfoSection.vue index 3879f3f..b98bd7f 100644 --- a/src/pages/clients/components/ClientDetailInfoSection.vue +++ b/src/pages/clients/components/ClientDetailInfoSection.vue @@ -7,7 +7,7 @@ .flex.items-center.gap-x-8 base-button( v-if="isChange", - @click="saveChange", + @click="changeDoc", confirm, rounded, outlined, @@ -69,29 +69,10 @@ .line.absolute .text-separation.span.text-sm.separator.px-2 или .flex.flex-col.gap-y-4(v-if="section === 'addresses' && isChange") - .flex.flex-col(class="gap-y-1.5") - .text-info.text-xxs.font-semibold Город - base-select( - placeholder="Выберите город", - :items="cities", - v-model="dopeAddress.city" - ) - .flex.flex-col(class="gap-y-1.5") - .text-info.text-xxs.font-semibold Область - base-input.input-info(placeholder="Введите область", v-model:value="dopeAddress.region") - .flex.flex-col(class="gap-y-1.5") - .text-info.text-xxs.font-semibold Улица - base-input.input-info(placeholder="Введите улицу", v-model:value="dopeAddress.street") - .flex.gap-x-4 - .flex.flex-col(class="gap-y-1.5") - .text-info.text-xxs.font-semibold Дом - base-input.input-info(placeholder="Дом", v-model:value="dopeAddress.house") - .flex.flex-col(class="gap-y-1.5") - .text-info.text-xxs.font-semibold Квартира - base-input.input-info(placeholder="Квартира", v-model:value="dopeAddress.flat") - .flex.flex-col(class="gap-y-1.5") - .text-info.text-xxs.font-semibold Индекс - base-input.input-info(v-mask="'######'", placeholder="000000", v-model:value="dopeAddress.index") + client-detail-section-address( + :dope-address="dopeAddress" + :cities="cities" + ) .flex(v-if="item.name && !isChange") span.text-sm.w-fit {{item.title}} .flex.items-center(v-if="item.title") @@ -103,7 +84,7 @@ span.text-sm {{item.title}} .section-add-doc.flex.justify-center.items-center.cursor-pointer( v-else, - @click="changeData" + @click="openAddDoc" ) span Добавить данные @@ -111,21 +92,18 @@ diff --git a/src/pages/clients/components/ClientDetailSectionAddress.vue b/src/pages/clients/components/ClientDetailSectionAddress.vue new file mode 100644 index 0000000..a1eef23 --- /dev/null +++ b/src/pages/clients/components/ClientDetailSectionAddress.vue @@ -0,0 +1,51 @@ + + + + + diff --git a/src/pages/clients/components/ClientsTableRow.vue b/src/pages/clients/components/ClientsTableRow.vue index 2308699..f9d7378 100644 --- a/src/pages/clients/components/ClientsTableRow.vue +++ b/src/pages/clients/components/ClientsTableRow.vue @@ -80,6 +80,8 @@ :dope-address="dopeAddress" :create-address="postCreateAddress" :create-document="postCreateIdentityDocument" + :address-id="addressId" + :doc-id="docId" ) @@ -280,13 +282,8 @@ export default { this.saveAttachments([...data.attachments]); }, saveIdentityDocument(data) { - if ( - data?.series || - data?.numba || - data?.issued_by_org || - data?.issued_by_org_code || - data?.issued_by_date - ) { + if (data?.id) { + this.docId = data.id; this.dataIdentityDocument = { numba: data.series && data.numba ? data?.series + " " + data?.numba : "", @@ -308,7 +305,6 @@ export default { issued_by_date: "", }; } - this.docId = data?.id; }, postUpdateIdentityDocument() { fetchWrapper @@ -389,6 +385,13 @@ export default { fetchWrapper .post("general/address/create/", { person_id: this.id, + full_address: + this.dopeAddress.city + + this.dopeAddress.region + + this.dopeAddress.street + + this.dopeAddress.house + + this.dopeAddress.flat + + this.dopeAddress.index || this.dataAddress.join_adress, }) .then(() => this.fetchClientDetail(this.id)); }, @@ -396,7 +399,7 @@ export default { fetchWrapper .post("general/identity_document/create/", { person_id: this.id, - kind: "ПАСПОРТ", + kind: "PASSPORT", series_number: this.dataIdentityDocument.numba, issued_by_org: this.dataIdentityDocument.issued_by_org, issued_by_org_code: this.dataIdentityDocument.issued_by_org_code,