* добавил удаление карты, если она была добавлена не из МИС

* добавил диалог при удалении карты
* добавил сохранение движения
* добавил вывод сохраненного отчета
* изменил логику сохранения отчета
This commit is contained in:
brusnitsyn
2026-05-06 17:03:41 +09:00
parent fe2264dfce
commit 2026a1ca9f
22 changed files with 928 additions and 195 deletions

View File

@@ -1,99 +1,85 @@
<script setup>
import {NLayout, NLayoutSider, NConfigProvider, NLayoutHeader, ruRU, dateRuRU, darkTheme, NEl, NAlert, NSpin, NText} from "naive-ui";
import SideMenu from "./Components/SideMenu.vue";
import {NLayout, NLayoutHeader, NEl, NAlert, NSpin, NText} from "naive-ui";
import AppHeader from "./Components/AppHeader.vue";
import {useGlobalLoading} from "../Composables/useGlobalLoading.js";
import AppDialogManager from "../Components/AppDialogManager.vue";
const {isGlobalLoading} = useGlobalLoading()
const themeOverrides = {
Modal: {
peers: {
Dialog: {
borderRadius: '8px'
},
Card: {
borderRadius: '8px'
},
}
}
}
</script>
<template>
<NConfigProvider :theme="darkTheme" :theme-overrides="themeOverrides" :locale="ruRU" :date-locale="dateRuRU">
<NLayout position="absolute">
<AppDialogManager />
<NLayout position="absolute">
<NLayoutHeader style="height: 48px;" bordered>
<AppHeader>
<template #headerExtra>
<slot name="headerExtra" />
</template>
<NLayoutHeader style="height: 48px;" bordered>
<AppHeader>
<template #headerExtra>
<slot name="headerExtra" />
</template>
<template #headerSuffix>
<slot name="headerSuffix" />
</template>
</AppHeader>
</NLayoutHeader>
<template #headerSuffix>
<slot name="headerSuffix" />
</template>
</AppHeader>
</NLayoutHeader>
<Transition name="wait-alert">
<NEl
v-if="isGlobalLoading"
class="wait-layer pointer-events-none fixed inset-x-0 top-[56px] z-[2600] flex justify-center px-3"
>
<NAlert
type="info"
:show-icon="false"
class="wait-banner w-full max-w-md"
style="
<Transition name="wait-alert">
<NEl
v-if="isGlobalLoading"
class="wait-layer pointer-events-none fixed inset-x-0 top-[56px] z-[2600] flex justify-center px-3"
>
<NAlert
type="info"
:show-icon="false"
class="wait-banner w-full max-w-md"
style="
--n-color: color-mix(in oklch, var(--info-color) 12%, transparent);
--n-border: 1px solid color-mix(in oklch, var(--info-color) 36%, transparent);
"
>
<div class="flex items-center justify-center gap-2.5 text-[13px] leading-none">
<NSpin :size="14" />
<NText depth="1" class="tracking-[0.1px]">Подождите, загружаем данные</NText>
</div>
</NAlert>
</NEl>
</Transition>
<NEl class="pointer-events-none fixed inset-x-0 top-12 bottom-0 overflow-hidden z-0">
<div class="absolute inset-x-0 top-[-12rem] mx-auto h-80 w-80 rounded-full blur-3xl"
style="background: color-mix(in oklch, var(--primary-color) 22%, transparent);" />
<div class="absolute right-[-8rem] top-48 h-72 w-72 rounded-full blur-3xl"
style="background: color-mix(in oklch, var(--warning-color) 28%, transparent);" />
<div class="absolute left-[-10rem] bottom-10 h-80 w-80 rounded-full blur-3xl"
style="background: color-mix(in oklch, var(--info-color) 24%, transparent);" />
<div class="grid-overlay absolute inset-0 opacity-65" />
</NEl>
<NLayout
has-sider
position="absolute"
class="top-12! bottom-0! relative overflow-hidden z-10"
content-class="relative z-10"
:native-scrollbar="false"
style="--n-color: transparent;"
>
<!-- <NLayoutSider-->
<!-- :native-scrollbar="false"-->
<!-- width="290"-->
<!-- class="h-[100vh-48px]!"-->
<!-- >-->
<!-- <SideMenu />-->
<!-- </NLayoutSider>-->
<NLayout style="--n-color: transparent;">
<div>
<slot name="header" />
>
<div class="flex items-center justify-center gap-2.5 text-[13px] leading-none">
<NSpin :size="14" />
<NText depth="1" class="tracking-[0.1px]">Подождите, загружаем данные</NText>
</div>
<slot />
</NLayout>
</NLayout>
</NAlert>
</NEl>
</Transition>
<NEl class="pointer-events-none fixed inset-x-0 top-12 bottom-0 overflow-hidden z-0">
<div class="absolute inset-x-0 top-[-12rem] mx-auto h-80 w-80 rounded-full blur-3xl"
style="background: color-mix(in oklch, var(--primary-color) 22%, transparent);" />
<div class="absolute right-[-8rem] top-48 h-72 w-72 rounded-full blur-3xl"
style="background: color-mix(in oklch, var(--warning-color) 28%, transparent);" />
<div class="absolute left-[-10rem] bottom-10 h-80 w-80 rounded-full blur-3xl"
style="background: color-mix(in oklch, var(--info-color) 24%, transparent);" />
<div class="grid-overlay absolute inset-0 opacity-65" />
</NEl>
<NLayout
has-sider
position="absolute"
class="top-12! bottom-0! relative overflow-hidden z-10"
content-class="relative z-10"
:native-scrollbar="false"
style="--n-color: transparent;"
>
<!-- <NLayoutSider-->
<!-- :native-scrollbar="false"-->
<!-- width="290"-->
<!-- class="h-[100vh-48px]!"-->
<!-- >-->
<!-- <SideMenu />-->
<!-- </NLayoutSider>-->
<NLayout style="--n-color: transparent;">
<div>
<slot name="header" />
</div>
<slot />
</NLayout>
</NLayout>
</NConfigProvider>
</NLayout>
</template>
<style scoped>