From a2715a712ff2f4fbe252876763bee34d97555097 Mon Sep 17 00:00:00 2001 From: DwCay Date: Wed, 26 Oct 2022 16:11:56 +0300 Subject: [PATCH] =?UTF-8?q?WIP=20=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB?= =?UTF-8?q?=D0=B5=D0=BD=D0=B0=20=D0=B2=D0=BE=D0=B7=D0=BC=D0=BE=D0=B6=D0=BD?= =?UTF-8?q?=D0=BE=D1=81=D1=82=D1=8C=20=D1=80=D0=B5=D0=B4=D0=B0=D0=BA=D1=82?= =?UTF-8?q?=D0=B8=D1=80=D0=BE=D0=B2=D0=B0=D0=BD=D0=B8=D1=8F=20=D0=B4=D0=B0?= =?UTF-8?q?=D0=BD=D0=BD=D1=8B=D1=85=20=D0=BA=D0=BB=D0=B8=D0=B5=D0=BD=D1=82?= =?UTF-8?q?=D0=B0=20=D1=82=D0=B0=D0=B1=D0=BB=D0=B8=D1=86=D1=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- server.js | 576 ++++++++---------- src/components/TheSidebar.vue | 10 +- src/components/base/BaseAddingNetwork.vue | 27 + src/components/base/BaseInput.vue | 3 +- src/components/base/BasePopup.vue | 32 + src/components/base/BaseSelect.vue | 28 +- .../components/ClientDetailInfoSection.vue | 17 +- .../components/ClientDetailInfoWrapper.vue | 2 - .../clients/components/ClientsActionPopup.vue | 15 +- src/pages/clients/components/ClientsTable.vue | 5 +- .../clients/components/ClientsTableHat.vue | 2 +- .../clients/components/ClientsTableRow.vue | 73 ++- .../components/FormCreateBasicInfo.vue | 2 +- .../components/cells/TableCellBodyAge.vue | 8 +- .../components/cells/TableCellBodyEmail.vue | 8 +- .../components/cells/TableCellBodyName.vue | 13 +- .../cells/TableCellBodyNetworks.vue | 52 +- .../components/cells/TableCellBodyPhone.vue | 10 +- .../cells/TableCellBodyPriority.vue | 14 +- src/pages/clients/utils/tableConfig.js | 4 +- tailwind.config.js | 1 + 21 files changed, 515 insertions(+), 387 deletions(-) create mode 100644 src/components/base/BaseAddingNetwork.vue create mode 100644 src/components/base/BasePopup.vue diff --git a/server.js b/server.js index 54901f7..5b68003 100644 --- a/server.js +++ b/server.js @@ -170,335 +170,279 @@ const dataClients = { const clientDetail = [ { person_id: "14ff401c-2b7b-4d9a-9159-720c74d8b23c", - additional_info: { - snils: { - number: { - value: "812–183–139 21", - copy: true, - }, - }, - inn: { - number: { - value: "138291382731", - copy: true, - }, - }, - birthday: { - date: { - value: "1994-12-04", - }, - }, - addresses: { - registrationPlace: { - value: - "371311, Московская обл., г. Москва, ул. Комсомольская, д.6, кв. 13", - }, - actualPlace: { - value: - "371311, Московская обл., г. Москва, ул. Комсомольская, д.6, кв. 13", - }, - }, - docs: [ - { - name: "Договор оферты.pdf", - type: "application/pdf", - }, - { - name: "Договор о долевом строительстве.pdf", - type: "application/pdf", - }, - { - name: "Какое-то очень очень очень очень длинное название.doc", - type: "application/msword", - }, - { - name: "Договор об оплате.doc", - type: "application/msword", - }, - { - name: "Коммерческое предложение.xls", - type: "application/vnd.ms-excel", - }, - { - name: "Таблица заказов.xls", - type: "application/vnd.ms-excel", - }, - ], - additional: [ - { - header: "Предпочтения", - value: "Разговор на “Вы”\nТолько по делу\nТолько официальный стиль", - name: "", - type: "", - }, - { - header: "Доп.документы", - value: "", - name: "Памятка с вопросами на созвоне.pdf", - type: "application/pdf", - }, - { - header: "Его должность", - value: "Вроде бы важная шишка, пусть будет – Гуру в дизайне", - name: "", - type: "", - }, - { - header: "Чтобы не забыть", - value: "Не забудь!", - name: "", - type: "", - }, - ], + snils: { + numba: "812–183–139 21", }, + inn: { + numba: "138291382731", + }, + birthday: { + date: "1994-12-04", + }, + addresses: { + registrationPlace: + "371311, Московская обл., г. Москва, ул. Комсомольская, д.6, кв. 13", + actualPlace: + "371311, Московская обл., г. Москва, ул. Комсомольская, д.6, кв. 13", + }, + docs: [ + { + name: "Договор оферты.pdf", + type: "application/pdf", + }, + { + name: "Договор о долевом строительстве.pdf", + type: "application/pdf", + }, + { + name: "Какое-то очень очень очень очень длинное название.doc", + type: "application/msword", + }, + { + name: "Договор об оплате.doc", + type: "application/msword", + }, + { + name: "Коммерческое предложение.xls", + type: "application/vnd.ms-excel", + }, + { + name: "Таблица заказов.xls", + type: "application/vnd.ms-excel", + }, + ], + additional: [ + { + header: "Предпочтения", + value: "Разговор на “Вы”\nТолько по делу\nТолько официальный стиль", + name: "", + type: "", + }, + { + header: "Доп.документы", + value: "", + name: "Памятка с вопросами на созвоне.pdf", + type: "application/pdf", + }, + { + header: "Его должность", + value: "Вроде бы важная шишка, пусть будет – Гуру в дизайне", + name: "", + type: "", + }, + { + header: "Чтобы не забыть", + value: "Не забудь!", + name: "", + type: "", + }, + ], }, { person_id: "db831a14-e836-481f-a653-6325de7c311e", - additional_info: { - snils: { - number: { - value: "834–001–555 35", - copy: true, - }, - }, - inn: { - number: { - value: "371942327342", - copy: true, - }, - }, - birthday: { - date: { - value: "1997-09-03", - }, - }, - addresses: { - registrationPlace: { - value: - "371311, Московская обл., г. Владимир, ул. Гагарина, д.12, кв. 24", - }, - actualPlace: { - value: - "371311, Московская обл., г. Владимир, ул. Гагарина, д.12, кв. 24", - }, - }, - docs: [ - { - name: "Договор покупки.pdf", - type: "application/pdf", - }, - { - name: "Договор о оптовых поставках.pdf", - type: "application/pdf", - }, - { - name: "Договор о предоставлении услуг.pdf", - type: "application/pdf", - }, - { - name: "Какое-то очень очень очень очень короткое название.doc", - type: "application/msword", - }, - { - name: "Документация.doc", - type: "application/msword", - }, - { - name: "Отчет.xls", - type: "application/vnd.ms-excel", - }, - { - name: "Заказы.xls", - type: "application/vnd.ms-excel", - }, - ], - additional: [ - { - header: "По каким вопросам обращатся", - value: "Обращатся только по вопросам закупок", - name: "", - type: "", - }, - { - header: "Доп.документы", - value: "Ответственные за работу", - name: "Список ответсвенных.xls", - type: "application/vnd.ms-excel", - }, - { - header: "Портфолио", - value: "Информация о клиенте", - name: "Портфолио.doc", - type: "application/msword", - }, - ], + snils: { + numba: "834–001–555 35", }, + inn: { + numba: "371942327342", + }, + birthday: { + date: "1997-09-03", + }, + addresses: { + registrationPlace: + "371311, Московская обл., г. Владимир, ул. Гагарина, д.12, кв. 24", + actualPlace: + "371311, Московская обл., г. Владимир, ул. Гагарина, д.12, кв. 24", + }, + docs: [ + { + name: "Договор покупки.pdf", + type: "application/pdf", + }, + { + name: "Договор о оптовых поставках.pdf", + type: "application/pdf", + }, + { + name: "Договор о предоставлении услуг.pdf", + type: "application/pdf", + }, + { + name: "Какое-то очень очень очень очень короткое название.doc", + type: "application/msword", + }, + { + name: "Документация.doc", + type: "application/msword", + }, + { + name: "Отчет.xls", + type: "application/vnd.ms-excel", + }, + { + name: "Заказы.xls", + type: "application/vnd.ms-excel", + }, + ], + additional: [ + { + header: "По каким вопросам обращатся", + value: "Обращатся только по вопросам закупок", + name: "", + type: "", + }, + { + header: "Доп.документы", + value: "Ответственные за работу", + name: "Список ответсвенных.xls", + type: "application/vnd.ms-excel", + }, + { + header: "Портфолио", + value: "Информация о клиенте", + name: "Портфолио.doc", + type: "application/msword", + }, + ], }, { person_id: "db8jd58x-e836-481f-a653-oq1m4e7c09e1", - additional_info: { - snils: { - number: { - value: "812–183–139 21", - copy: true, - }, - }, - inn: { - number: { - value: "138291382731", - copy: true, - }, - }, - birthday: { - date: { - value: "1990-11-05", - }, - }, - addresses: { - registrationPlace: { - value: - "371311, Московская обл., г. Москва, ул. Комсомольская, д.6, кв. 13", - }, - actualPlace: { - value: - "371311, Московская обл., г. Москва, ул. Комсомольская, д.6, кв. 13", - }, - }, - docs: [ - { - name: "Договор оферты.pdf", - type: "application/pdf", - }, - { - name: "Договор о долевом строительстве.pdf", - type: "application/pdf", - }, - { - name: "Какое-то очень очень очень очень длинное название.doc", - type: "application/msword", - }, - { - name: "Договор об оплате.doc", - type: "application/msword", - }, - { - name: "Коммерческое предложение.xls", - type: "application/vnd.ms-excel", - }, - { - name: "Таблица заказов.xls", - type: "application/vnd.ms-excel", - }, - ], - additional: [ - { - header: "Предпочтения", - value: "Разговор на “Вы”\nТолько по делу\nТолько официальный стиль", - name: "", - type: "", - }, - { - header: "Доп.документы", - value: "", - name: "Памятка с вопросами на созвоне.pdf", - type: "application/pdf", - }, - { - header: "Его должность", - value: "Вроде бы важная шишка, пусть будет – Гуру в дизайне", - name: "", - type: "", - }, - { - header: "Чтобы не забыть", - value: "Не забудь!", - name: "", - type: "", - }, - ], + snils: { + numba: "812–183–139 21", }, + inn: { + numba: "138291382731", + }, + birthday: { + date: "1990-11-05", + }, + addresses: { + registrationPlace: + "371311, Московская обл., г. Москва, ул. Комсомольская, д.6, кв. 13", + actualPlace: + "371311, Московская обл., г. Москва, ул. Комсомольская, д.6, кв. 13", + }, + docs: [ + { + name: "Договор оферты.pdf", + type: "application/pdf", + }, + { + name: "Договор о долевом строительстве.pdf", + type: "application/pdf", + }, + { + name: "Какое-то очень очень очень очень длинное название.doc", + type: "application/msword", + }, + { + name: "Договор об оплате.doc", + type: "application/msword", + }, + { + name: "Коммерческое предложение.xls", + type: "application/vnd.ms-excel", + }, + { + name: "Таблица заказов.xls", + type: "application/vnd.ms-excel", + }, + ], + additional: [ + { + header: "Предпочтения", + value: "Разговор на “Вы”\nТолько по делу\nТолько официальный стиль", + name: "", + type: "", + }, + { + header: "Доп.документы", + value: "", + name: "Памятка с вопросами на созвоне.pdf", + type: "application/pdf", + }, + { + header: "Его должность", + value: "Вроде бы важная шишка, пусть будет – Гуру в дизайне", + name: "", + type: "", + }, + { + header: "Чтобы не забыть", + value: "Не забудь!", + name: "", + type: "", + }, + ], }, { person_id: "cs5ms771-e836-kdc4-a653-sc4n567sx123", - additional_info: { - snils: { - number: { - value: "834–001–555 35", - copy: true, - }, - }, - inn: { - number: { - value: "371942327342", - copy: true, - }, - }, - birthday: { - date: { - value: "2000-08-17", - }, - }, - addresses: { - registrationPlace: { - value: - "371311, Московская обл., г. Владимир, ул. Гагарина, д.12, кв. 24", - }, - actualPlace: { - value: - "371311, Московская обл., г. Владимир, ул. Гагарина, д.12, кв. 24", - }, - }, - docs: [ - { - name: "Договор покупки.pdf", - type: "application/pdf", - }, - { - name: "Договор о оптовых поставках.pdf", - type: "application/pdf", - }, - { - name: "Договор о предоставлении услуг.pdf", - type: "application/pdf", - }, - { - name: "Какое-то очень очень очень очень короткое название.doc", - type: "application/msword", - }, - { - name: "Документация.doc", - type: "application/msword", - }, - { - name: "Отчет.xls", - type: "application/vnd.ms-excel", - }, - { - name: "Заказы.xls", - type: "application/vnd.ms-excel", - }, - ], - additional: [ - { - header: "По каким вопросам обращатся", - value: "Обращатся только по вопросам закупок", - name: "", - type: "", - }, - { - header: "Доп.документы", - value: "Ответственные за работу", - name: "Список ответсвенных.xls", - type: "application/vnd.ms-excel", - }, - { - header: "Портфолио", - value: "Информация о клиенте", - name: "Портфолио.doc", - type: "application/msword", - }, - ], + snils: { + numba: "834–001–555 35", }, + inn: { + numba: "371942327342", + }, + birthday: { + date: "2000-08-17", + }, + addresses: { + registrationPlace: + "371311, Московская обл., г. Владимир, ул. Гагарина, д.12, кв. 24", + actualPlace: + "371311, Московская обл., г. Владимир, ул. Гагарина, д.12, кв. 24", + }, + docs: [ + { + name: "Договор покупки.pdf", + type: "application/pdf", + }, + { + name: "Договор о оптовых поставках.pdf", + type: "application/pdf", + }, + { + name: "Договор о предоставлении услуг.pdf", + type: "application/pdf", + }, + { + name: "Какое-то очень очень очень очень короткое название.doc", + type: "application/msword", + }, + { + name: "Документация.doc", + type: "application/msword", + }, + { + name: "Отчет.xls", + type: "application/vnd.ms-excel", + }, + { + name: "Заказы.xls", + type: "application/vnd.ms-excel", + }, + ], + additional: [ + { + header: "По каким вопросам обращатся", + value: "Обращатся только по вопросам закупок", + name: "", + type: "", + }, + { + header: "Доп.документы", + value: "Ответственные за работу", + name: "Список ответсвенных.xls", + type: "application/vnd.ms-excel", + }, + { + header: "Портфолио", + value: "Информация о клиенте", + name: "Портфолио.doc", + type: "application/msword", + }, + ], }, ]; diff --git a/src/components/TheSidebar.vue b/src/components/TheSidebar.vue index a8d375f..4dc157b 100644 --- a/src/components/TheSidebar.vue +++ b/src/components/TheSidebar.vue @@ -2,14 +2,14 @@ .sidebar.flex.flex-col.justify-between.flex-auto.py-6.box-border .flex.flex-col.gap-y-6 the-button-sidebar(id="home" path="#/") - .icon-home + .icon-home.icon the-button-sidebar(id="calendar" path="#/calendar") - .icon-calendar-2 + .icon-calendar-2.icon the-button-sidebar(id="user" path="#/clients") - .icon-person-2 + .icon-person-2.icon .flex.text-4xl.flex-col.gap-y-6 the-button-sidebar(id="settings" path="#/settings") - .icon-settings + .icon-settings.icon + + diff --git a/src/components/base/BaseInput.vue b/src/components/base/BaseInput.vue index ededb78..3e8916b 100644 --- a/src/components/base/BaseInput.vue +++ b/src/components/base/BaseInput.vue @@ -1,6 +1,6 @@ @@ -38,4 +38,5 @@ export default { .input-wrapper border: 2px solid var(--border-light-grey-color) border-radius: 4px + background-color: var(--default-white) diff --git a/src/components/base/BasePopup.vue b/src/components/base/BasePopup.vue new file mode 100644 index 0000000..758d101 --- /dev/null +++ b/src/components/base/BasePopup.vue @@ -0,0 +1,32 @@ + + + + + diff --git a/src/components/base/BaseSelect.vue b/src/components/base/BaseSelect.vue index b9cb34b..d0e8699 100644 --- a/src/components/base/BaseSelect.vue +++ b/src/components/base/BaseSelect.vue @@ -1,11 +1,14 @@ @@ -46,7 +47,7 @@ export default { width: fit-content background-color: var(--bg-ligth-blue-color) &.border - background-color: rgba(255, 255, 255, 0) + background-color: var(--default-white) border: 2px solid var(--border-light-grey-color) .select appearance: none @@ -60,9 +61,14 @@ export default { .options z-index: 3 width: max-content - background-color: var(--bg-ligth-blue-color) + background-color: var(--default-white) + border: 2px solid var(--border-light-grey-color) + border-top: none + border-radius: 0 0 4px 4px + left: -18px .option color: var(--font-black-color) + border-bottom: 1px solid var(--border-light-grey-color) &:hover background-color: var(--btn-blue-color) .select-form-separator diff --git a/src/pages/clients/components/ClientDetailInfoSection.vue b/src/pages/clients/components/ClientDetailInfoSection.vue index 6e6fa75..a914d6d 100644 --- a/src/pages/clients/components/ClientDetailInfoSection.vue +++ b/src/pages/clients/components/ClientDetailInfoSection.vue @@ -10,14 +10,16 @@ table-adding-new-doc(v-if="section === 'docs' && isOpenAddingWrap" :add-new-doc="addNewDoc" :save-docs="saveDocs" :new-docs="docData") table-adding-new-additional(v-if="section === 'additional' && isOpenAddingWrap" :new-additional-data="additionalData" :add-new-additional="addDocAdditional" :save-additional="saveDocs" ) .section-body.w-full.flex.flex-col.px-4.pt-3.pb-4.gap-y-4 - .flex.flex-col(v-for="(item, key) in settings[section].options" class="gap-y-1.5") - span.title-section.font-semibold.text-xs(v-if="settings[section].options") {{item}} + .flex.flex-col(v-for="(item, key) in sectionInfo" class="gap-y-1.5") + span.title-section.font-semibold.text-xs(v-if="settings[section].options") {{settings[section].options[key]}} span.title-section.font-semibold.text-xs(v-if="item.header") {{item.header}} - client-detail-input.text-sm.text-sm.w-max-fit(v-if="isChange && item.value" :style="{fontWeight:item.copy&&600}" v-model:value="sectionInfo[key]" :width="settings[section].width") - .copy.icon-copy.cursor-pointer(v-if="item.copy") + client-detail-input.text-sm.text-sm.w-max-fit(v-if="isChange" :style="{fontWeight:key === 'numba'&&600}" v-model:value="sectionInfo[key]" :width="settings[section].width") + .copy.icon-copy.cursor-pointer(v-if="item.copy" @click="() => copyValue(item)") + .flex(v-if="settings[section].options && !isChange") + span.text-sm.w-fit(:style="{fontWeight:key === 'numba'&&600}") {{item}} + .copy.icon-copy.cursor-pointer.pl-4(v-if="key === 'numba'" @click="() => copyValue(item)") .flex(v-if="item.value && !isChange") - span.text-sm.w-fit(:style="{fontWeight:item.copy&&600}") {{item.value}} - .copy.icon-copy.cursor-pointer.pl-4(v-if="item.copy") + span.text-sm.w-fit {{item.value}} .flex.items-center(v-if="item.name") .icon-cancel.cancel.cursor-pointer.pr-3.text-xsm(v-if="isChange" :id="item.name" @click="(e) => deleteDoc(e, section)") .icon-files.cursor-pointer.pr-3.text-xl(:style="{color:settings.docsColor[item.type]}") @@ -62,6 +64,9 @@ export default { }; }, methods: { + copyValue(text) { + navigator.clipboard.writeText(text); + }, openInterfaceChange() { this.isOpenChange = !this.isOpenChange; }, diff --git a/src/pages/clients/components/ClientDetailInfoWrapper.vue b/src/pages/clients/components/ClientDetailInfoWrapper.vue index b15329d..85853f3 100644 --- a/src/pages/clients/components/ClientDetailInfoWrapper.vue +++ b/src/pages/clients/components/ClientDetailInfoWrapper.vue @@ -24,5 +24,3 @@ export default { }, }; - - diff --git a/src/pages/clients/components/ClientsActionPopup.vue b/src/pages/clients/components/ClientsActionPopup.vue index 6ec8ddb..e6dfaa9 100644 --- a/src/pages/clients/components/ClientsActionPopup.vue +++ b/src/pages/clients/components/ClientsActionPopup.vue @@ -2,20 +2,23 @@ .flex.flex-col.items-end.absolute.right-2.top-5 .corner .popup-wrapper.flex.flex-col.gap-y-3.w-10.h-10.p-4 - .button.keep-redaction.flex.gap-x-3 - .icon-edit.icon-redaction + .button.keep-redaction.flex.gap-x-3(@click="openChangeData") + .icon-edit.icon span Редактировать .button.keep-redaction.flex.gap-x-3 - img(src="@/assets/icons/star.svg" alt="Star") + .icon-star-off.icon span На ведение .button.delete.flex.gap-x-3 - img(src="@/assets/icons/basket.svg" alt="Basket") + .icon-basket.icon-delete span Удалить @@ -29,7 +32,7 @@ export default { z-index: 1 .keep-redaction color: var(--font-dark-blue-color) -.icon-redaction +.icon color: var(--btn-blue-color) .delete color: var(--btn-red-color) @@ -43,4 +46,6 @@ export default { background-color: var(--default-white) z-index: 2 overflow: hidden +.icon-delete + color: var(--btn-red-color) diff --git a/src/pages/clients/components/ClientsTable.vue b/src/pages/clients/components/ClientsTable.vue index 94536d0..42b7029 100644 --- a/src/pages/clients/components/ClientsTable.vue +++ b/src/pages/clients/components/ClientsTable.vue @@ -10,10 +10,7 @@ :id="client.id" :is-check="marked.includes(client.id)" :check="selectedCheck" - :full-name="[client.last_name, client.first_name, client.patronymic]" - :age="client.birth_date" - :priority="client.priority" - :contacts="client.contacts" + :client="client" ) diff --git a/src/pages/clients/components/ClientsTableHat.vue b/src/pages/clients/components/ClientsTableHat.vue index 41f0179..3f1fcf8 100644 --- a/src/pages/clients/components/ClientsTableHat.vue +++ b/src/pages/clients/components/ClientsTableHat.vue @@ -2,7 +2,7 @@ .flex.justify-between.w-full.h-fit .flex.gap-2.w-fit.h-fit .input - base-input(:with-icon="true") + base-input(:with-icon="true" icon-position="left") .icon-search button.filter-button.flex.items-center.justify-center.box-border(class="px-2.5") .icon-filter.text-xl.leading-4 diff --git a/src/pages/clients/components/ClientsTableRow.vue b/src/pages/clients/components/ClientsTableRow.vue index f5daa2f..d36a32c 100644 --- a/src/pages/clients/components/ClientsTableRow.vue +++ b/src/pages/clients/components/ClientsTableRow.vue @@ -3,16 +3,17 @@ .row-body.flex.w-full.cursor-pointer(:id="id" @dblclick="(e) => openDetailInfo(e)") .check-box.flex.justify-center.items-center clients-table-checkbox(:id="id" :check="check" :is-check="isCheck") - table-cell-body-name(:value="fullName" :width="columnBody.find(el => el.name === 'fullName').width") - table-cell-body-age(:value="age" :width="columnBody.find(el => el.name === 'age').width") - table-cell-body-priority(:value="priority" :width="columnBody.find(el => el.name === 'priority').width") - table-cell-body-phone(:value="contacts" :width="columnBody.find(el => el.name === 'phone').width") - table-cell-body-email(:value="contacts" :width="columnBody.find(el => el.name === 'email').width") - table-cell-body-networks(:networks="contacts" :width="columnBody.find(el => el.name === 'networks').width") + table-cell-body-name(:value="dataClient" :avatar="dataClient.avatar" :is-open-change="isOpenChange" :width="columnBody.find(el => el.name === 'fullName').width") + table-cell-body-age(:value="dataClient" :is-open-change="isOpenChange" :width="columnBody.find(el => el.name === 'age').width") + table-cell-body-priority(:value="dataClient.priority" :choose-priority="choosePriority" :is-open-change="isOpenChange" :width="columnBody.find(el => el.name === 'priority').width") + table-cell-body-phone(:value="dataClient" :is-open-change="isOpenChange" :width="columnBody.find(el => el.name === 'phone').width") + table-cell-body-email(:value="dataClient" :is-open-change="isOpenChange" :width="columnBody.find(el => el.name === 'email').width") + table-cell-body-networks(:delete-network="deleteNetwork" :networks="dataClient.contacts" :is-open-change="isOpenChange" :width="columnBody.find(el => el.name === 'networks').width") .dots.flex.justify-center.items-center - .relative.dots-button.icon-dots.cursor-pointer.leading-6.text-center(:tabindex="1" @click="(e) => openPopup(e)" @blur="handleUnFocusPopup") - clients-action-popup(v-if="isOpenPopup") - client-detail-info-wrapper(v-if="isOpenDetailInfo" :data-detail="dataDetail" :save-new-doc="saveNewDoc" :delete-doc="deleteDoc") + base-button-ok(v-if="isOpenChange" :size="20" :icon-size="10" :dark-style="true" @click="closeChangeData") + .relative.dots-button.icon-dots.cursor-pointer.leading-6.text-center(v-if="!isOpenChange" :tabindex="1" @click="(e) => openPopup(e)" @blur="handleUnFocusPopup") + clients-action-popup(v-if="isOpenPopup" :open-change-data="openChangeData") + client-detail-info-wrapper(v-if="isOpenDetailInfo" :data-detail="dataDetail" :data-document="dataIdentityDocument" :save-new-doc="saveNewDoc" :delete-doc="deleteDoc") diff --git a/src/pages/clients/components/cells/TableCellBodyEmail.vue b/src/pages/clients/components/cells/TableCellBodyEmail.vue index f416618..8d6f305 100644 --- a/src/pages/clients/components/cells/TableCellBodyEmail.vue +++ b/src/pages/clients/components/cells/TableCellBodyEmail.vue @@ -1,14 +1,18 @@ diff --git a/src/pages/clients/components/cells/TableCellBodyName.vue b/src/pages/clients/components/cells/TableCellBodyName.vue index dec7e1d..159aeee 100644 --- a/src/pages/clients/components/cells/TableCellBodyName.vue +++ b/src/pages/clients/components/cells/TableCellBodyName.vue @@ -1,17 +1,22 @@ diff --git a/src/pages/clients/components/cells/TableCellBodyNetworks.vue b/src/pages/clients/components/cells/TableCellBodyNetworks.vue index 31b49ff..e33cb88 100644 --- a/src/pages/clients/components/cells/TableCellBodyNetworks.vue +++ b/src/pages/clients/components/cells/TableCellBodyNetworks.vue @@ -1,21 +1,66 @@ @@ -24,4 +69,9 @@ export default { column-gap: 2px .icon color: var(--btn-blue-color) +.delete + border-radius: 50% + background-color: var(--btn-red-color) + color: var(--default-white) + font-size: 8px diff --git a/src/pages/clients/components/cells/TableCellBodyPhone.vue b/src/pages/clients/components/cells/TableCellBodyPhone.vue index f7ca63c..5c5c52c 100644 --- a/src/pages/clients/components/cells/TableCellBodyPhone.vue +++ b/src/pages/clients/components/cells/TableCellBodyPhone.vue @@ -1,14 +1,18 @@ diff --git a/src/pages/clients/components/cells/TableCellBodyPriority.vue b/src/pages/clients/components/cells/TableCellBodyPriority.vue index d28adbb..0820628 100644 --- a/src/pages/clients/components/cells/TableCellBodyPriority.vue +++ b/src/pages/clients/components/cells/TableCellBodyPriority.vue @@ -1,17 +1,23 @@