Профиль хирургии

This commit is contained in:
brusnitsyn
2026-03-25 17:37:32 +09:00
parent 52a80ccd3b
commit f566ab96df
75 changed files with 3841 additions and 1009 deletions

View File

@@ -1,10 +1,10 @@
<script setup>
import {NButton, NFlex, NGi, NGrid, NH2, NForm, NFormItem, NInput} from "naive-ui";
import {NButton, NFlex, NGi, NGrid, NH2, NForm, NFormItem, NInput, NTransfer, NSwitch} from "naive-ui";
import AppLayout from "../../../Layouts/AppLayout.vue";
import AppContainer from "../../../Components/AppContainer.vue";
import AppPanel from "../../../Components/AppPanel.vue";
import {useForm} from "@inertiajs/vue3";
import {ref} from "vue";
import {computed, ref} from "vue";
const props = defineProps({
departments: {
@@ -17,6 +17,15 @@ const props = defineProps({
}
})
const departmentOptions = computed(() => props.departments.map(itm => ({
label: itm.name_full,
value: itm.department_id
})))
const roleOptions = computed(() => props.roles.map(itm => ({
label: itm.name,
value: itm.role_id
})))
const form = ref({
'name': '',
'login': '',
@@ -31,26 +40,62 @@ const form = ref({
<template #header>
<NFlex align="center" justify="space-between" class="max-w-6xl mx-auto mt-6 mb-4 w-full">
<NH2>
Создание нового пользователя
Создание учетной записи
</NH2>
</NFlex>
</template>
<AppContainer>
<AppPanel>
<NForm v-model:model="form">
<NFormItem label="Имя">
<NInput v-model:value="form.name" />
</NFormItem>
<NFormItem label="Логин">
<NInput v-model:value="form.login" />
</NFormItem>
<NFormItem label="Логин">
<NInput v-model:value="form.password" />
</NFormItem>
<NFormItem label="Логин">
<NInput v-model:value="form.password" />
</NFormItem>
</NForm>
<NGrid cols="2" x-gap="16">
<NGi>
<AppPanel header="Основная информация">
<NForm v-model:model="form">
<NFormItem label="Имя">
<NInput v-model:value="form.name" />
</NFormItem>
<NFormItem label="Привязка к ресурсу МИС">
<NInput v-model:value="form.password" />
</NFormItem>
<NFormItem label="Основное отделение">
<NInput v-model:value="form.password" />
</NFormItem>
<NFormItem label-placement="left" label-width="auto" label-style="align-items: center;" label="Пользователь заблокирован">
<NSwitch />
</NFormItem>
</NForm>
</AppPanel>
</NGi>
<NGi>
<AppPanel header="Данные для входа">
<NForm v-model:model="form">
<NFormItem label="Логин">
<NInput v-model:value="form.login" />
</NFormItem>
<NFormItem label="Пароль">
<NInput type="password" v-model:value="form.password" show-password-toggle />
</NFormItem>
</NForm>
</AppPanel>
</NGi>
</NGrid>
<AppPanel no-padding header="Привязка к отделениям">
<NTransfer
v-model:value="form.departments"
virtual-scroll
:options="departmentOptions"
source-filterable
target-filterable
/>
</AppPanel>
<AppPanel no-padding header="Роли">
<NTransfer
v-model:value="form.roles"
virtual-scroll
:options="roleOptions"
source-filterable
target-filterable
/>
</AppPanel>
</AppContainer>
</AppLayout>