[WIP] Изменил инпуты для даты и ограничил вводимые значения; при наведении на аватар клиента, появляется иконка загрузки

This commit is contained in:
megavrilinvv
2022-11-30 18:39:11 +03:00
parent a66081c14d
commit 766e1be22c
12 changed files with 31 additions and 46 deletions

View File

@@ -4,7 +4,6 @@
:is-open-form="isOpenForm", :is-open-form="isOpenForm",
:close-form="closeForm", :close-form="closeForm",
:open-form="openForm", :open-form="openForm",
:current-year="currentYear",
@update-client="setUpdatedClients" @update-client="setUpdatedClients"
) )
.flex.flex-auto .flex.flex-auto
@@ -12,7 +11,6 @@
router-view( router-view(
:open-form="openForm", :open-form="openForm",
:is-open-form="isOpenForm", :is-open-form="isOpenForm",
:current-year="currentYear",
:updated-clients="updatedClients", :updated-clients="updatedClients",
@reset-updated-clients="resetUpdatedClients" @reset-updated-clients="resetUpdatedClients"
) )
@@ -30,7 +28,6 @@ export default {
data() { data() {
return { return {
isOpenForm: false, isOpenForm: false,
currentYear: null,
updatedClients: false, updatedClients: false,
}; };
}, },
@@ -41,9 +38,6 @@ export default {
closeForm() { closeForm() {
this.isOpenForm = false; this.isOpenForm = false;
}, },
printCurrentYear() {
return new Date().getFullYear();
},
setUpdatedClients() { setUpdatedClients() {
this.updatedClients = true; this.updatedClients = true;
}, },
@@ -51,8 +45,5 @@ export default {
this.updatedClients = false; this.updatedClients = false;
}, },
}, },
mounted: function () {
this.currentYear = this.printCurrentYear();
},
}; };
</script> </script>

View File

@@ -3,7 +3,6 @@
base-client-form-create( base-client-form-create(
v-if="isOpenForm", v-if="isOpenForm",
:close-form="closeForm", :close-form="closeForm",
:current-year="currentYear",
@update-client="transmitUpdateClient" @update-client="transmitUpdateClient"
) )
.flex.items-center.box-border.cursor-pointer.mr-auto .flex.items-center.box-border.cursor-pointer.mr-auto
@@ -43,7 +42,6 @@ export default {
openForm: Function, openForm: Function,
closeForm: Function, closeForm: Function,
isOpenForm: Boolean, isOpenForm: Boolean,
currentYear: Number,
}, },
data() { data() {
return { return {

View File

@@ -12,7 +12,7 @@
v-for="img in image" v-for="img in image"
) )
.icon-download.text-xl(v-if="img === defaultIcon") .icon-download.text-xl(v-if="img === defaultIcon")
.flex.w-10.h-10(v-else) .wrapper-img.flex.w-10.h-10(v-else)
img.current-avatar(:src="img") img.current-avatar(:src="img")
base-popup.right-5.top-7(v-if="showPopup", :width="230") base-popup.right-5.top-7(v-if="showPopup", :width="230")
.flex.items-center.gap-x-2 .flex.items-center.gap-x-2
@@ -56,13 +56,11 @@
:choose-option="chooseOptionNetworks" :choose-option="chooseOptionNetworks"
:choose-priority="choosePriority" :choose-priority="choosePriority"
:priority-list="priorityList" :priority-list="priorityList"
:current-year="currentYear"
) )
.flex(:style="{display :'none'}" ref="doc") .flex(:style="{display :'none'}" ref="doc")
form-create-identity-documents( form-create-identity-documents(
:identity-document="infoClient.identity_document", :identity-document="infoClient.identity_document",
:save-client="saveClient", :save-client="saveClient"
:current-year="currentYear"
) )
.flex(:style="{display :'none'}" ref="address") .flex(:style="{display :'none'}" ref="address")
form-create-addresses( form-create-addresses(
@@ -106,7 +104,6 @@ export default {
}, },
props: { props: {
closeForm: Function, closeForm: Function,
currentYear: Number,
}, },
data() { data() {
return { return {
@@ -429,4 +426,12 @@ export default {
background-size: cover background-size: cover
background-repeat: no-repeat background-repeat: no-repeat
background-position: center background-position: center
&:hover
display: none
.wrapper-img
background-size: 20px
background-repeat: no-repeat
background-position: center
background-image: url(@/assets/icons/download.svg)
</style> </style>

View File

@@ -1,14 +1,16 @@
<template lang="pug"> <template lang="pug">
.input-wrapper.flex.gap-x-2.px-4.box-border( .input-wrapper.flex.gap-x-2.px-4.box-border(
class="py-2.5" class="py-2.5",
:style="{ minWidth: widthInput + 'px' }" :style="{ minWidth: widthInput + 'px' }"
) )
input.input.w-full.outline-0.not-italic.date( input.input.w-full.outline-0.not-italic.date(
:value="value" :value="value",
type="date" type="date",
@input="$emit('update:value', $event.target.value)" @input="$emit('update:value', $event.target.value)",
:placeholder="placeholder" :placeholder="placeholder",
:maxlength="maxLength" :maxlength="maxLength",
max="9999-12-31",
min="0000-01-01"
) )
.slot(v-if="withIcon" :class="iconPosition") .slot(v-if="withIcon" :class="iconPosition")
slot.cursor-pointer slot.cursor-pointer

View File

@@ -2,7 +2,6 @@
clients-wrapper( clients-wrapper(
:open-form="openForm", :open-form="openForm",
:is-open-form="isOpenForm", :is-open-form="isOpenForm",
:current-year="currentYear",
:updated-clients="updatedClients", :updated-clients="updatedClients",
@reset-updated-clients="transmitReset" @reset-updated-clients="transmitReset"
) )
@@ -15,7 +14,6 @@ export default {
components: { ClientsWrapper }, components: { ClientsWrapper },
props: { props: {
openForm: Function, openForm: Function,
currentYear: Number,
isOpenForm: Boolean, isOpenForm: Boolean,
updatedClients: Boolean, updatedClients: Boolean,
}, },

View File

@@ -157,7 +157,6 @@ export default {
createDocument: Function, createDocument: Function,
addressId: String, addressId: String,
docId: String, docId: String,
currentYear: Number,
}, },
data() { data() {
return { return {

View File

@@ -7,7 +7,6 @@
:lack-data="lackData", :lack-data="lackData",
:create-document="createDocument", :create-document="createDocument",
:doc-id="docId", :doc-id="docId",
:current-year="currentYear"
) )
.flex.flex-col .flex.flex-col
client-detail-info-section( client-detail-info-section(
@@ -51,7 +50,6 @@ export default {
createDocument: Function, createDocument: Function,
addressId: String, addressId: String,
docId: String, docId: String,
currentYear: Number,
}, },
}; };
</script> </script>

View File

@@ -16,7 +16,6 @@
:check="selectedCheck", :check="selectedCheck",
:client="client", :client="client",
:fetch-data-clients="fetchDataClients", :fetch-data-clients="fetchDataClients",
:current-year="currentYear"
) )
client-table-pagination( client-table-pagination(
v-if="pageCount > 1" v-if="pageCount > 1"
@@ -48,7 +47,6 @@ export default {
}, },
props: { props: {
openForm: Function, openForm: Function,
currentYear: Number,
isOpenForm: Boolean, isOpenForm: Boolean,
updatedClients: Boolean, updatedClients: Boolean,
}, },

View File

@@ -84,7 +84,6 @@
:create-document="postCreateIdentityDocument" :create-document="postCreateIdentityDocument"
:address-id="addressId" :address-id="addressId"
:doc-id="docId" :doc-id="docId"
:current-year="currentYear"
) )
</template> </template>
@@ -152,7 +151,6 @@ export default {
check: Function, check: Function,
isCheck: Boolean, isCheck: Boolean,
client: Object, client: Object,
currentYear: Number,
}, },
created() { created() {
this.dataClient = { this.dataClient = {

View File

@@ -3,7 +3,6 @@
clients-table( clients-table(
:open-form="openForm", :open-form="openForm",
:is-open-form="isOpenForm", :is-open-form="isOpenForm",
:current-year="currentYear",
:updated-clients="updatedClients", :updated-clients="updatedClients",
@reset-updated-clients="transmitReset" @reset-updated-clients="transmitReset"
) )
@@ -16,7 +15,6 @@ export default {
components: { ClientsTable }, components: { ClientsTable },
props: { props: {
openForm: Function, openForm: Function,
currentYear: Number,
isOpenForm: Boolean, isOpenForm: Boolean,
updatedClients: Boolean, updatedClients: Boolean,
}, },

View File

@@ -10,12 +10,9 @@
) )
.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-date.input-date(
v-model:value="basicInfo.birth_date", v-model:value="basicInfo.birth_date",
type="date", :width-input="277"
placeholder="00.00.0000",
:width-input="277",
:max-date="`${ currentYear }-12-31`"
) )
.flex.flex-col(class="gap-y-1.5") .flex.flex-col(class="gap-y-1.5")
span.text-sm Номер телефона span.text-sm Номер телефона
@@ -54,6 +51,7 @@
<script> <script>
import BaseButton from "@/components/base/BaseButton"; import BaseButton from "@/components/base/BaseButton";
import BaseInput from "@/components/base/BaseInput"; import BaseInput from "@/components/base/BaseInput";
import BaseInputDate from "@/components/base/BaseInputDate";
import BaseAddingNetwork from "@/components/base/BaseAddingNetwork"; import BaseAddingNetwork from "@/components/base/BaseAddingNetwork";
import { column } from "@/pages/clients/utils/tableConfig"; import { column } from "@/pages/clients/utils/tableConfig";
import BaseCustomSelect from "@/components/base/BaseCustomSelect"; import BaseCustomSelect from "@/components/base/BaseCustomSelect";
@@ -62,6 +60,7 @@ export default {
name: "FormCreateBasicInfo", name: "FormCreateBasicInfo",
components: { components: {
BaseInput, BaseInput,
BaseInputDate,
BaseAddingNetwork, BaseAddingNetwork,
BaseButton, BaseButton,
BaseCustomSelect, BaseCustomSelect,
@@ -76,7 +75,6 @@ export default {
basicInfo: Object, basicInfo: Object,
saveClient: Function, saveClient: Function,
addNetwork: Function, addNetwork: Function,
currentYear: Number,
}, },
directives: { mask }, directives: { mask },
data() { data() {
@@ -113,4 +111,6 @@ export default {
height: 100% height: 100%
border: 2px solid var(--border-light-grey-color) border: 2px solid var(--border-light-grey-color)
border-radius: 4px border-radius: 4px
.input-date
border: 1.5px solid var(--border-light-grey-color)
</style> </style>

View File

@@ -28,12 +28,10 @@
) )
.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-date.input-date(
type="date",
v-model:value="identityDocument.pass.issued_by_date", v-model:value="identityDocument.pass.issued_by_date",
placeholder="Дата", placeholder="Дата",
:width-input="277", :width-input="277"
:max-date="`${currentYear}-12-31`"
) )
.flex.flex-col.gap-y-6.px-4 .flex.flex-col.gap-y-6.px-4
span.title-info.text-base.font-bold СНИЛС и ИНН span.title-info.text-base.font-bold СНИЛС и ИНН
@@ -62,14 +60,14 @@
<script> <script>
import BaseButton from "@/components/base/BaseButton"; import BaseButton from "@/components/base/BaseButton";
import BaseInput from "@/components/base/BaseInput"; import BaseInput from "@/components/base/BaseInput";
import BaseInputDate from "@/components/base/BaseInputDate";
import { mask } from "vue-the-mask"; import { mask } from "vue-the-mask";
export default { export default {
name: "FormCreateIdentityDocuments", name: "FormCreateIdentityDocuments",
components: { BaseInput, BaseButton }, components: { BaseInput, BaseInputDate, BaseButton },
props: { props: {
identityDocument: Object, identityDocument: Object,
saveClient: Function, saveClient: Function,
currentYear: Number,
}, },
directives: { mask }, directives: { mask },
}; };
@@ -93,4 +91,6 @@ export default {
color: var(--font-dark-blue-color) color: var(--font-dark-blue-color)
.title-info .title-info
color: var(--font-dark-blue-color) color: var(--font-dark-blue-color)
.input-date
border: 1.5px solid var(--border-light-grey-color)
</style> </style>