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,