[WIP] Исправил стили инпутов

This commit is contained in:
megavrilinvv
2023-01-19 15:31:23 +03:00
parent e0831f521f
commit 61085dc51a
33 changed files with 140 additions and 281 deletions

View File

@@ -13,7 +13,7 @@
.icon-wrapper.mr-2.flex.justify-center .icon-wrapper.mr-2.flex.justify-center
.icon-ok.text-xs.flex.justify-center.items-center(v-if="filter === selectedFilter") .icon-ok.text-xs.flex.justify-center.items-center(v-if="filter === selectedFilter")
.flex.items-center {{ filter }} .flex.items-center {{ filter }}
base-input(type="text", square, placeholder="Искать ...") base-input.p-4(type="text", square, placeholder="Искать ...", borderless)
</template> </template>
<script> <script>

View File

@@ -2,7 +2,7 @@
.flex.w-full(class="gap-x-1.5") .flex.w-full(class="gap-x-1.5")
.flex(:id="value.id" @click="(e) => saveNetworkId(e)") .flex(:id="value.id" @click="(e) => saveNetworkId(e)")
base-select-networks(:style-border="true" :list-data="listAddingNetworks" :option-data="selectedOption" :choose-option="chooseNetwork" :width-select="42") base-select-networks(:style-border="true" :list-data="listAddingNetworks" :option-data="selectedOption" :choose-option="chooseNetwork" :width-select="42")
base-input.w-full(v-model="value.username", placeholder="Ссылкa") base-input.w-full(v-model="value.username", placeholder="Ссылкa" outlined)
</template> </template>
<script> <script>

View File

@@ -53,7 +53,7 @@
@click="closeAddImage", @click="closeAddImage",
icon="app:icon-ok" icon="app:icon-ok"
) )
base-input.w-full(v-model="infoClient.basic.full_name", placeholder="ФИО*") base-input.w-full(v-model="infoClient.basic.full_name", placeholder="ФИО*", outlined)
.flex.flex-col.flex-auto.l.gap-y-8 .flex.flex-col.flex-auto.l.gap-y-8
.flex .flex
button.title-info.px-6.py-2.cursor-pointer.w-full.text-sm( button.title-info.px-6.py-2.cursor-pointer.w-full.text-sm(
@@ -93,7 +93,6 @@ import { fetchWrapper } from "@/shared/fetchWrapper";
import FormCreateBasicInfo from "@/pages/clients/components/FormCreateBasicInfo"; import FormCreateBasicInfo from "@/pages/clients/components/FormCreateBasicInfo";
import FormCreateIdentityDocuments from "@/pages/clients/components/FormCreateIdentityDocuments"; import FormCreateIdentityDocuments from "@/pages/clients/components/FormCreateIdentityDocuments";
import FormCreateAddresses from "@/pages/clients/components/FormCreateAddresses"; import FormCreateAddresses from "@/pages/clients/components/FormCreateAddresses";
import FormCreateAdditional from "@/pages/clients/components/FormCreateAdditional";
import BaseInput from "@/components/base/BaseInput"; import BaseInput from "@/components/base/BaseInput";
import BasePopup from "@/components/base/BasePopup"; import BasePopup from "@/components/base/BasePopup";
import BaseModal from "@/components/base/BaseModal"; import BaseModal from "@/components/base/BaseModal";
@@ -101,6 +100,7 @@ import addImageIcon from "@/assets/icons/photo.svg";
import TheNotificationProvider from "@/components/Notifications/TheNotificationProvider"; import TheNotificationProvider from "@/components/Notifications/TheNotificationProvider";
import { addNotification } from "@/components/Notifications/notificationContext"; import { addNotification } from "@/components/Notifications/notificationContext";
import * as moment from "moment"; import * as moment from "moment";
export default { export default {
name: "BaseClientFormClient", name: "BaseClientFormClient",
components: { components: {
@@ -108,7 +108,6 @@ export default {
FormCreateBasicInfo, FormCreateBasicInfo,
FormCreateIdentityDocuments, FormCreateIdentityDocuments,
FormCreateAddresses, FormCreateAddresses,
FormCreateAdditional,
BasePopup, BasePopup,
BaseModal, BaseModal,
addImageIcon, addImageIcon,

View File

@@ -3,7 +3,7 @@
span.title-section.font-semibold.text-xs(v-if="field.title" ) {{field.title}} span.title-section.font-semibold.text-xs(v-if="field.title" ) {{field.title}}
.flex.items-center(v-if="field.type === 'text' || field.type === 'textarea'" class="gap-x-2.5") .flex.items-center(v-if="field.type === 'text' || field.type === 'textarea'" class="gap-x-2.5")
span.w-4.icon(v-if="field.icon" :class="field.icon") span.w-4.icon(v-if="field.icon" :class="field.icon")
base-input(v-model="data[field.label]" :with-icon="field.copy") base-input(v-model="data[field.label]" :with-icon="field.copy", outlined)
.flex.items-center(v-if="field.copy && data[field.label]") .flex.items-center(v-if="field.copy && data[field.label]")
.copy.icon-copy.cursor-pointer(@click="() => copyValue(data[field.label])") .copy.icon-copy.cursor-pointer(@click="() => copyValue(data[field.label])")
base-input(v-if="field.type === 'date'" v-model="data[field.label]") base-input(v-if="field.type === 'date'" v-model="data[field.label]")

View File

@@ -35,7 +35,7 @@ export default {
}, },
outlined: { outlined: {
type: Boolean, type: Boolean,
default: true, default: false,
}, },
square: { square: {
type: Boolean, type: Boolean,

View File

@@ -1,146 +0,0 @@
<template lang="pug">
.flex.flex-col.gap-y-2
.font-semibold.text-sm.opacity-40(
v-if="label",
:class="labelClass"
) {{ label }}
.base-select.flex.justify-between.items-center.py-9px.px-4.gap-4.relative(
ref="select",
@click="open = !open",
:class="{'open': open, 'border-none': borderNone}",
)
input.w-full.outline-0.not-italic(
:placeholder="placeholder",
v-model="value.label",
)
.flex.items-center
span.icon-down-arrow.open-icon.flex.text-xsm(:class="{'open': open }")
base-options(v-if="open")
.items-container.mt-1(
@click="closeOptions",
v-click-outside="leaveSelect",
:class="textClass"
)
.empty-window.py-2.px-4(v-if="items.length === 0") Ничего не найдено
.item.py-2.px-4.cursor-pointer(
v-else
v-for="item in items",
:key="item?.id",
:class="{'center': center}",
@click="clickItem(item?.id, item?.label)"
) {{ item?.label }}
</template>
<script>
import BaseOptions from "@/components/base/BaseOptions.vue";
import BaseInput from "@/components/base/BaseInput.vue";
export default {
name: "BaseSearchSelect",
components: { BaseOptions, BaseInput },
props: {
placeholder: String,
items: {
type: Array,
default: () => [],
},
label: String,
modelValue: Object,
center: Boolean,
borderNone: Boolean,
textStyle: String,
labelStyle: String,
},
data() {
return {
open: false,
filteredItems: [],
};
},
emits: ["update:modelValue"],
computed: {
value: {
get() {
return this.modelValue;
},
set(value) {
this.$emit("update:modelValue", value);
},
},
textClass() {
return this.textStyle
? {
[this.textStyle]: true,
}
: {
"text-base": true,
};
},
labelClass() {
return this.labelStyle
? {
[this.labelStyle]: true,
}
: {
"text-sm": true,
};
},
},
methods: {
clickItem(id, label) {
this.value = {
id: id,
label: label,
};
},
leaveSelect() {
this.open = false;
},
closeOptions(e) {
e.stopPropagation();
this.open = false;
},
},
};
</script>
<style scoped lang="sass">
.base-select
width: 100%
border: 1.5px solid var(--border-light-grey-color)
border-radius: 4px
background-color: white
user-select: none
height: 40px
&.open
border: 1.5px solid var(--btn-blue-color)
.items-container
box-shadow: 1px 1px 8px rgba(37, 40, 80, 0.15)
border-radius: 4px
background-color: white
max-height: 142px
overflow-y: auto
.placeholder
color: var(--font-black-color)
opacity: 0.4
text-overflow: ellipsis
overflow: hidden
.item
border-bottom: 0.5px solid var(--border-light-grey-color)
color: var(--font-black-color)
&:hover
background-color: rgba(215, 217, 255, 0.25)
&:last-child
border-bottom: none
.open-icon
&.open
transform: rotate(180deg)
.border-none
border: none
.center
display: flex
justify-content: center
.empty-window
color: var(--font-black-color)
pointer-events: none
</style>

View File

@@ -1,7 +1,7 @@
<template lang="pug"> <template lang="pug">
base-input-container(:label="label") base-input-container(:label="label")
.relative .relative
base-input(type="text", v-model="value.label") base-input(type="text", v-model="value.label", outlined)
template(#icon) template(#icon)
.icon(@click="isExpand = !isExpand") .icon(@click="isExpand = !isExpand")
.menu(v-if="isExpand") .menu(v-if="isExpand")

View File

@@ -1,7 +1,7 @@
<template lang="pug"> <template lang="pug">
base-input-container(:label="label") base-input-container(:label="label")
.relative .relative
base-input(type="text", v-model="value.label") base-input(type="text", v-model="value.label", outlined)
template(#icon) template(#icon)
.icon(@click="isExpand = !isExpand") .icon(@click="isExpand = !isExpand")
.menu(v-if="isExpand") .menu(v-if="isExpand")

View File

@@ -17,7 +17,8 @@
v-else, v-else,
disabled, disabled,
v-model="status.label", v-model="status.label",
label="Статус приема" label="Статус приема",
outlined
) )
base-custom-select( base-custom-select(
:items="ownersList", :items="ownersList",
@@ -35,19 +36,22 @@
base-input( base-input(
v-model="eventDate", v-model="eventDate",
label="Дата", label="Дата",
type="date" type="date",
outlined
) )
.flex.gap-x-2.items-center.justify-between .flex.gap-x-2.items-center.justify-between
base-input( base-input(
type="time", type="time",
v-model="startTime", v-model="startTime",
label="Начало" label="Начало",
outlined
) )
span.mt-4 span.mt-4
base-input( base-input(
type="time", type="time",
v-model="endTime", v-model="endTime",
label="Конец" label="Конец",
outlined
) )
q-btn.create-button( q-btn.create-button(
v-if="!selectedEventData.id", v-if="!selectedEventData.id",

View File

@@ -113,7 +113,8 @@
base-input( base-input(
type="date", type="date",
v-else-if="isChange && section !== 'docs' && section !== 'additional'", v-else-if="isChange && section !== 'docs' && section !== 'additional'",
v-model="sectionInfo.issued_by_date" v-model="sectionInfo.issued_by_date",
outlined
) )
.copy.icon-copy.cursor-pointer( .copy.icon-copy.cursor-pointer(
v-if="item.copy", v-if="item.copy",

View File

@@ -5,7 +5,8 @@
:placeholder="placeholder", :placeholder="placeholder",
:maxLength="maxLength", :maxLength="maxLength",
:mask="sharp", :mask="sharp",
:autogrow="choiceGrow" :autogrow="choiceGrow",
outlined
) )
slot slot
</template> </template>

View File

@@ -14,7 +14,8 @@
labelStyle="text-xxs", labelStyle="text-xxs",
textStyle="text-sm", textStyle="text-sm",
v-model="dopeAddress.region", v-model="dopeAddress.region",
label="Область" label="Область",
outlined
) )
base-input( base-input(
disabled, disabled,
@@ -22,7 +23,8 @@
labelStyle="text-xxs", labelStyle="text-xxs",
textStyle="text-sm", textStyle="text-sm",
v-model="dopeAddress.street", v-model="dopeAddress.street",
label="Улица" label="Улица",
outlined
) )
.flex.gap-x-4 .flex.gap-x-4
base-input( base-input(
@@ -40,6 +42,7 @@
v-model="dopeAddress.flat", v-model="dopeAddress.flat",
labelStyle="text-xxs", labelStyle="text-xxs",
textStyle="text-sm", textStyle="text-sm",
outlined
) )
base-input( base-input(
disabled, disabled,
@@ -49,6 +52,7 @@
v-model="dopeAddress.index", v-model="dopeAddress.index",
labelStyle="text-xxs", labelStyle="text-xxs",
textStyle="text-sm", textStyle="text-sm",
outlined
) )
</template> </template>

View File

@@ -7,7 +7,8 @@
icon-position="left", icon-position="left",
v-model="searchClient", v-model="searchClient",
placeholder="Введите фамилию", placeholder="Введите фамилию",
@keyup.enter="searchLastName" @keyup.enter="searchLastName",
outlined
) )
.flex.items-center.cursor-pointer .flex.items-center.cursor-pointer
.icon-search .icon-search

View File

@@ -1,68 +0,0 @@
<template lang="pug">
.wrapper-additional.flex.flex-col.gap-y-8.justify-between.text-base
.flex.flex-col.gap-y-6.w-full.px-4
.flex.flex-col.gap-y-4.w-full(v-for="info in additionalInfo" :key="info.id")
.flex.flex-col.gap-y-1
base-input(v-model="info.header" placeholder="Заголовок")
.flex.px-4.py-3.description
textarea.w-full.h-full.outline-0.resize-none(:value="info.description" @input="$emit('update:info.description', $event.target.value)" placeholder="Описание" style="py-10")
.upload-wrapper.flex.flex-col.justify-center.items-center
.upload-text.text-center.flex.w-fit
input.hidden(@change="(e) => saveFile(e)" type="file" :id="info.id")
span Загрузите элемент
label.label.cursor-pointer(:for="info.id") с комьютера
span или перетащите их сюда
.add-additional.flex.gap-x-3.cursor-pointer(@click="addNewAdditional")
.icon-plus
span Добавить еще пункт
.px-4
base-button(@click="saveClient" :size="40")
span.font-semibold Создать клиента
</template>
<script>
import BaseInput from "@/components/base/BaseInput";
import BaseButton from "@/components/base/BaseButton";
export default {
name: "FormCreateAdditional",
components: { BaseInput, BaseButton },
props: {
additionalInfo: Object,
saveClient: Function,
addNewAdditional: Function,
saveFile: Function,
},
};
</script>
<style lang="sass" scoped>
.wrapper-additional
min-height: 443px
max-height: 443px
overflow-y: auto
&::-webkit-scrollbar
width: 4px
&::-webkit-scrollbar-track
background-color: rgba(211, 212, 220, 0.5)
border-radius: 8px
&::-webkit-scrollbar-thumb
border-radius: 8px
background-color: var(--btn-blue-color)
.upload-wrapper
min-height: 92px
max-height: 92px
width: 100%
color: var(--font-grey-color)
border: 2px dashed var(--font-grey-color)
border-radius: 4px
.upload-text
max-width: 278px
.label
color: var(--btn-blue-color)
.description
min-height: 77px
border-radius: 4px
border: 2px solid var(--border-light-grey-color)
.add-additional
color: var(--btn-blue-color)
</style>

View File

@@ -4,7 +4,8 @@
base-input( base-input(
v-model="addresses.full_address", v-model="addresses.full_address",
placeholder="Введите адрес целиком", placeholder="Введите адрес целиком",
label="Полный адрес" label="Полный адрес",
outlined
) )
.flex.items-center.justify-center.relative .flex.items-center.justify-center.relative
.line.absolute .line.absolute
@@ -15,35 +16,40 @@
filled, filled,
placeholder="Введите город", placeholder="Введите город",
v-model="addresses.city", v-model="addresses.city",
label="Город" label="Город",
outlined
) )
base-input( base-input(
disabled, disabled,
filled, filled,
placeholder="Введите область", placeholder="Введите область",
v-model="addresses.region", v-model="addresses.region",
label="Область" label="Область",
outlined
) )
base-input( base-input(
disabled, disabled,
filled, filled,
placeholder="Введите улицу", placeholder="Введите улицу",
v-model="addresses.street", v-model="addresses.street",
label="Введите улицу" label="Введите улицу",
outlined
) )
base-input( base-input(
disabled, disabled,
filled, filled,
placeholder="Номер дома", placeholder="Номер дома",
v-model="addresses.house_number", v-model="addresses.house_number",
label="Дом" label="Дом",
outlined
) )
base-input( base-input(
disabled, disabled,
filled, filled,
placeholder="Номер квартиры", placeholder="Номер квартиры",
v-model="addresses.apartment_number", v-model="addresses.apartment_number",
label="Квартира" label="Квартира",
outlined
) )
base-input( base-input(
disabled, disabled,
@@ -51,7 +57,8 @@
placeholder="000000", placeholder="000000",
mask="######", mask="######",
v-model="addresses.zip_code", v-model="addresses.zip_code",
label="Индекс" label="Индекс",
outlined
) )
</template> </template>

View File

@@ -10,18 +10,21 @@
base-input( base-input(
type="date" type="date"
v-model="basicInfo.birth_date", v-model="basicInfo.birth_date",
label="Дата рождения" label="Дата рождения",
outlined
) )
base-input( base-input(
v-model="phone.username", v-model="phone.username",
placeholder="+7 (915) 6449223", placeholder="+7 (915) 6449223",
mask="+7 (###) ###-##-##", mask="+7 (###) ###-##-##",
label="Номер телефона" label="Номер телефона",
outlined
) )
base-input( base-input(
v-model="email.username", v-model="email.username",
placeholder="user@yandex.ru", placeholder="user@yandex.ru",
label="Email" label="Email",
outlined
) )
.flex.flex-col.col-start-1.col-end-3.w-100(class="gap-y-1.5") .flex.flex-col.col-start-1.col-end-3.w-100(class="gap-y-1.5")
span.text-sm.font-semibold.opacity-40.input-info Ссылки на соцсети span.text-sm.font-semibold.opacity-40.input-info Ссылки на соцсети

View File

@@ -7,24 +7,28 @@
mask="#### ######", mask="#### ######",
v-model="identityDocument.pass.series_number", v-model="identityDocument.pass.series_number",
placeholder="0000 000000", placeholder="0000 000000",
label="Серия и номер" label="Серия и номер",
outlined
) )
base-input( base-input(
v-model="identityDocument.pass.issued_by_org", v-model="identityDocument.pass.issued_by_org",
placeholder="Точно как в паспорте", placeholder="Точно как в паспорте",
label="Кем выдан" label="Кем выдан",
outlined
) )
base-input( base-input(
mask="###-###", mask="###-###",
v-model="identityDocument.pass.issued_by_org_code", v-model="identityDocument.pass.issued_by_org_code",
placeholder="000000", placeholder="000000",
label="Код подразделения" label="Код подразделения",
outlined
) )
base-input( base-input(
type="date" type="date"
v-model="identityDocument.pass.issued_by_date", v-model="identityDocument.pass.issued_by_date",
placeholder="Дата", placeholder="Дата",
label="Дата выдачи" label="Дата выдачи",
outlined
) )
.flex.flex-col.gap-y-6 .flex.flex-col.gap-y-6
span.title-info.text-base.font-bold СНИЛС и ИНН span.title-info.text-base.font-bold СНИЛС и ИНН
@@ -35,7 +39,8 @@
mask="###-###-### ##", mask="###-###-### ##",
v-model="identityDocument.snils.number", v-model="identityDocument.snils.number",
placeholder="000000000 00", placeholder="000000000 00",
label="Номер СНИЛС" label="Номер СНИЛС",
outlined
) )
base-input( base-input(
disabled, disabled,
@@ -43,7 +48,8 @@
mask="############", mask="############",
v-model="identityDocument.inn.number", v-model="identityDocument.inn.number",
placeholder="000000000000", placeholder="000000000000",
label="Номер ИНН" label="Номер ИНН",
outlined
) )
</template> </template>

View File

@@ -11,17 +11,20 @@
base-input( base-input(
type="date", type="date",
v-model="signedDate", v-model="signedDate",
label="Дата подписания" label="Дата подписания",
outlined
) )
base-input( base-input(
type="date", type="date",
v-model="startDate", v-model="startDate",
label="Начало оказания услуг" label="Начало оказания услуг"
outlined
) )
base-input( base-input(
type="date", type="date",
v-model="endDate", v-model="endDate",
label="Окончание оказания услуг" label="Окончание оказания услуг"
outlined
) )
base-custom-select( base-custom-select(
placeholder="Поручить", placeholder="Поручить",

View File

@@ -5,6 +5,7 @@
label="ФИО пациента", label="ФИО пациента",
v-model="patientFullName", v-model="patientFullName",
disabled disabled
outlined
) )
//-.flex.justify-between //-.flex.justify-between
base-custom-select.w-80( base-custom-select.w-80(

View File

@@ -12,16 +12,19 @@
type="date", type="date",
v-model="signedDate", v-model="signedDate",
label="Дата подписания" label="Дата подписания"
outlined
) )
base-input( base-input(
type="date", type="date",
v-model="startDate", v-model="startDate",
label="Начало оказания услуг" label="Начало оказания услуг"
outlined
) )
base-input( base-input(
type="date", type="date",
v-model="endDate", v-model="endDate",
label="Окончание оказания услуг" label="Окончание оказания услуг"
outlined
) )
base-custom-select( base-custom-select(
placeholder="Поручить", placeholder="Поручить",

View File

@@ -1,7 +1,7 @@
<template lang="pug"> <template lang="pug">
.flex.flex-col.gap-y-3 .flex.flex-col.gap-y-3
.flex.flex-col.gap-y-3.relative .flex.flex-col.gap-y-3.relative
base-input.text-smm(placeholder="Заголовок", v-model="title", :maxLength="40") base-input.text-smm(placeholder="Заголовок", v-model="title", :maxLength="40", outlined)
.text.flex.absolute.text-xsx.right-7.top-3 {{`${changeValue}/40`}} .text.flex.absolute.text-xsx.right-7.top-3 {{`${changeValue}/40`}}
.input-wrapper.flex.gap-x-2.px-4.box-border.w-max-fit.text-smm(class="py-2.5") .input-wrapper.flex.gap-x-2.px-4.box-border.w-max-fit.text-smm(class="py-2.5")
textarea.place-input.w-full.outline-0.not-italic.resize-none( textarea.place-input.w-full.outline-0.not-italic.resize-none(

View File

@@ -17,7 +17,8 @@
.counter.font-semibold.text-smm ФИО .counter.font-semibold.text-smm ФИО
base-input( base-input(
v-model="patient", v-model="patient",
placeholder="Введите название для пакета документов" placeholder="Введите название для пакета документов",
outlined
) )
span.counter span.counter
.flex.gap-x-4 .flex.gap-x-4
@@ -27,7 +28,7 @@
.flex.flex-col(class="gap-y-1.5") .flex.flex-col(class="gap-y-1.5")
.counter.font-semibold.text-smm Дата подписания .counter.font-semibold.text-smm Дата подписания
.input-date.flex.h-10.justify-center .input-date.flex.h-10.justify-center
base-input(type="date", :width-input="277") base-input(type="date", :width-input="277", outlined)
.flex.flex-col.gap-y-6 .flex.flex-col.gap-y-6
span.font-bold Дополнительное span.font-bold Дополнительное
.flex.flex-col.mb-124px(class="gap-y-1.5") .flex.flex-col.mb-124px(class="gap-y-1.5")
@@ -44,7 +45,8 @@
:with-icon="true", :with-icon="true",
icon-position="left", icon-position="left",
:width-input="310", :width-input="310",
placeholder="Поиск" placeholder="Поиск",
outlined
) )
.counter.icon-search .counter.icon-search
base-select.h-10(placeholder="Вид услуги") base-select.h-10(placeholder="Вид услуги")

View File

@@ -8,7 +8,8 @@
type="date", type="date",
v-if="isOpenChange", v-if="isOpenChange",
@click.stop, @click.stop,
v-model="value.age" v-model="value.age",
outlined
) )
</template> </template>

View File

@@ -12,7 +12,8 @@
v-if="isOpenChange", v-if="isOpenChange",
@click.stop, @click.stop,
v-model="value.email.username", v-model="value.email.username",
:placeholder="value.email.username" :placeholder="value.email.username",
outlined
) )
</template> </template>

View File

@@ -10,7 +10,8 @@
base-input( base-input(
@click.stop, @click.stop,
v-model="value.fullName", v-model="value.fullName",
placeholder="Фамилия Имя Отчество" placeholder="Фамилия Имя Отчество",
outlined
) )
</template> </template>

View File

@@ -8,7 +8,8 @@
@click.stop, @click.stop,
v-model="value.phone.username", v-model="value.phone.username",
:placeholder="value.phone.username", :placeholder="value.phone.username",
mask="+7 (###) ###-##-##" mask="+7 (###) ###-##-##",
outlined
) )
</template> </template>

View File

@@ -15,13 +15,15 @@
v-model="user.username", v-model="user.username",
placeholder="Введите ваш логин", placeholder="Введите ваш логин",
label="Логин" label="Логин"
outlined
) )
base-input( base-input(
:rule="[wrongData => !!wrongData]", :rule="[wrongData => !!wrongData]",
v-model="user.password", v-model="user.password",
:type="changeType", :type="changeType",
placeholder="Введите ваш пароль", placeholder="Введите ваш пароль",
label="Пароль" label="Пароль",
outlined
) )
.flex.items-center.cursor-pointer .flex.items-center.cursor-pointer
q-icon( q-icon(
@@ -30,8 +32,8 @@
@click="changeView" @click="changeView"
) )
span.font-medium(:style="{color: this.redColor}", v-if="wrongData") Неверный логин или пароль span.font-medium(:style="{color: this.redColor}", v-if="wrongData") Неверный логин или пароль
.flex.items-center.gap-x-11px .flex.items-center.gap-x-8px
input.w-4.h-4.checkbox.cursor-pointer(@click="persist", type="checkbox") q-checkbox(@click="persist", v-model="isView", type="checkbox")
.flex.non-italic.font-medium.base Запомнить меня .flex.non-italic.font-medium.base Запомнить меня
base-button.font-semibold(:disabled="disabledButton", :size="48", @click="login") Войти в аккаунт base-button.font-semibold(:disabled="disabledButton", :size="48", @click="login") Войти в аккаунт
.absolute.left-12.bottom-12 2022 © Астра .absolute.left-12.bottom-12 2022 © Астра
@@ -43,6 +45,7 @@ import { fetchWrapper } from "@/shared/fetchWrapper";
import BaseInput from "@/components/base/BaseInput"; import BaseInput from "@/components/base/BaseInput";
import BaseButton from "@/components/base/BaseButton"; import BaseButton from "@/components/base/BaseButton";
import logoMark from "@/assets/images/logoMark.svg"; import logoMark from "@/assets/images/logoMark.svg";
export default { export default {
name: "TheLogin", name: "TheLogin",
components: { BaseInput, BaseButton }, components: { BaseInput, BaseButton },

View File

@@ -6,7 +6,8 @@
base-input.w-full( base-input.w-full(
placeholder="ФИО*", placeholder="ФИО*",
v-model="clientDetail.fullName", v-model="clientDetail.fullName",
disabled disabled,
outlined
) )
base-radio-buttons-group( base-radio-buttons-group(
:items="gendersList", :items="gendersList",
@@ -20,6 +21,7 @@
type="date", type="date",
label="Дата рождения", label="Дата рождения",
v-model="clientDetail.birth_date", v-model="clientDetail.birth_date",
outlined
) )
.input .input
base-input( base-input(
@@ -27,15 +29,18 @@
mask="###-###-### ##", mask="###-###-### ##",
label="СНИЛС", label="СНИЛС",
v-model="clientDetail.insurance_number", v-model="clientDetail.insurance_number",
outlined
) )
.flex.flex-col.gap-y-6 .flex.flex-col.gap-y-6
base-input( base-input(
label="Адрес регистрации", label="Адрес регистрации",
placeholder="Введите полный адрес" placeholder="Введите полный адрес",
outlined
) )
base-input( base-input(
label="Фактический адрес места жительства", label="Фактический адрес места жительства",
placeholder="Введите полный адрес" placeholder="Введите полный адрес",
outlined
) )
.flex.gap-x-4 .flex.gap-x-4
.input .input
@@ -44,12 +49,14 @@
placeholder="+7 (915) 6449223", placeholder="+7 (915) 6449223",
mask="+7 (###) ###-##-##", mask="+7 (###) ###-##-##",
v-model="clientDetail.phone", v-model="clientDetail.phone",
outlined
) )
.input .input
base-input( base-input(
label="Email", label="Email",
placeholder="user@yandex.ru" placeholder="user@yandex.ru"
v-model="clientDetail.email", v-model="clientDetail.email",
outlined
) )
</template> </template>

View File

@@ -86,7 +86,7 @@
.flex.flex-col.gap-y-2(v-for="(key, index) in Object.keys(dentalIndications)") .flex.flex-col.gap-y-2(v-for="(key, index) in Object.keys(dentalIndications)")
span.font-bold.text-xsx {{`${index+1}. ${configData.dental_indications[key]}`}} span.font-bold.text-xsx {{`${index+1}. ${configData.dental_indications[key]}`}}
medical-dental-formula(v-if="key === 'dental_formula'" :formula-data="dentalIndications[key]") medical-dental-formula(v-if="key === 'dental_formula'" :formula-data="dentalIndications[key]")
base-input(v-model="dentalIndications[key]" v-else) base-input(v-model="dentalIndications[key]", outlined, v-else)
.flex.justify-center .flex.justify-center
base-button.w-fit(:icon-left-size="13", :size="40") base-button.w-fit(:icon-left-size="13", :size="40")
span.font-semibold Сохранить span.font-semibold Сохранить

View File

@@ -6,23 +6,27 @@
base-input( base-input(
label="Серия и номер", label="Серия и номер",
placeholder="0000 000000", placeholder="0000 000000",
v-model="clientDetail.identity_documents.number" v-model="clientDetail.identity_documents.number",
outlined
) )
base-input( base-input(
label="Кем выдан", label="Кем выдан",
placeholder="Точно как в паспорте", placeholder="Точно как в паспорте",
v-model="clientDetail.identity_documents.issued_by_org" v-model="clientDetail.identity_documents.issued_by_org",
outlined
) )
.flex.gap-x-4 .flex.gap-x-4
base-input( base-input(
label="Код подразделения", label="Код подразделения",
placeholder="000-000", placeholder="000-000",
v-model="clientDetail.identity_documents.issued_by_org_code" v-model="clientDetail.identity_documents.issued_by_org_code",
outlined
) )
base-input( base-input(
type="date", type="date",
label="Дата выдачи", label="Дата выдачи",
v-model="clientDetail.identity_documents.issued_by_date" v-model="clientDetail.identity_documents.issued_by_date",
outlined
) )
</template> </template>

View File

@@ -14,12 +14,14 @@
placeholder="000000 0000000000", placeholder="000000 0000000000",
v-model="clientDetail.OMSPolicy.number", v-model="clientDetail.OMSPolicy.number",
mask="###### ##########", mask="###### ##########",
:disabled="!selectedOMSPolicy" :disabled="!selectedOMSPolicy",
outlined
) )
base-input.input( base-input.input(
label="Страховая организация полиса ОМС", label="Страховая организация полиса ОМС",
v-model="clientDetail.OMSPolicy.organization", v-model="clientDetail.OMSPolicy.organization",
:disabled="!selectedOMSPolicy" :disabled="!selectedOMSPolicy",
outlined
) )
.flex.flex-col.gap-y-4 .flex.flex-col.gap-y-4
base-input.input( base-input.input(
@@ -27,25 +29,30 @@
placeholder="000000 0000000000", placeholder="000000 0000000000",
v-model="clientDetail.DMSPolicy.number", v-model="clientDetail.DMSPolicy.number",
mask="###### ##########", mask="###### ##########",
:disabled="selectedOMSPolicy" :disabled="selectedOMSPolicy",
outlined
) )
base-input.input( base-input.input(
label="Страховая организация полиса ДМС", label="Страховая организация полиса ДМС",
v-model="clientDetail.DMSPolicy.organization", v-model="clientDetail.DMSPolicy.organization",
:disabled="selectedOMSPolicy" :disabled="selectedOMSPolicy",
outlined
) )
base-input( base-input(
label="Код категории льготы", label="Код категории льготы",
placeholder="000", placeholder="000",
v-model="clientDetail.benefit_code", v-model="clientDetail.benefit_code",,
outlined
) )
base-input( base-input(
label="К кому обращаться в случае необходимости", label="К кому обращаться в случае необходимости",
placeholder="ФИО*" placeholder="ФИО*",
outlined
) )
base-input( base-input(
label="Номер телефона", label="Номер телефона",
placeholder="+7 (915) 6449223" placeholder="+7 (915) 6449223",
outlined
) )
</template> </template>

View File

@@ -7,13 +7,23 @@
.flex.pt-2 .flex.pt-2
.icon-cancel.close-icon.tesxt-xs.cursor-pointer(@click="closeForm") .icon-cancel.close-icon.tesxt-xs.cursor-pointer(@click="closeForm")
.flex.flex-col.gap-y-6 .flex.flex-col.gap-y-6
base-input(label="Дата", type="date") base-input(label="Дата", type="date", outlined)
base-custom-select(v-model="currentEmployee", label="Текущий сотрудник") base-custom-select(v-model="currentEmployee", label="Текущий сотрудник")
base-custom-select(v-model="currentEmployee", label="Замена сотрудника") base-custom-select(v-model="currentEmployee", label="Замена сотрудника")
.time-wrapper.flex.justify-center.gap-x-6 .time-wrapper.flex.justify-center.gap-x-6
base-input(type="time", label="Начало", v-model="timesShift.start_time") base-input(
type="time",
label="Начало",
v-model="timesShift.start_time",
outlined
)
.flex.items-center.mt-4 .flex.items-center.mt-4
base-input(type="time", label="Конец", v-model="timesShift.end_time") base-input(
type="time",
label="Конец",
v-model="timesShift.end_time",
outlined
)
.flex.justify-center .flex.justify-center
base-button.font-semibold(:size="40") Сохранить base-button.font-semibold(:size="40") Сохранить
</template> </template>

View File

@@ -5,13 +5,15 @@
base-input( base-input(
type="time", type="time",
v-model="times.start_time", v-model="times.start_time",
label="Начало" label="Начало",
outlined
) )
.flex.items-center.mt-6 .flex.items-center.mt-6
base-input( base-input(
type="time", type="time",
v-model="times.end_time", v-model="times.end_time",
label="Конец" label="Конец",
outlined
) )
.status-wrapper.flex.flex-col.gap-y-3.p-3 .status-wrapper.flex.flex-col.gap-y-3.p-3
.flex.justify-center.items-center.h-10 .flex.justify-center.items-center.h-10
@@ -40,7 +42,8 @@
mask="#/#", mask="#/#",
placeholder="0/0", placeholder="0/0",
label="Введите график", label="Введите график",
v-model="template.item.label" v-model="template.item.label",
outlined
) )
.flex.justify-center.gap-x-6.h-10 .flex.justify-center.gap-x-6.h-10
q-btn( q-btn(