This commit is contained in:
2025-11-27 21:04:28 +08:00
parent 339a21827c
commit 857c9eb1e8
7 changed files with 132 additions and 35 deletions
+86
View File
@@ -8,6 +8,10 @@
"name": "ops_vue_js",
"version": "0.0.0",
"dependencies": {
"@fullcalendar/daygrid": "^6.1.19",
"@fullcalendar/interaction": "^6.1.19",
"@fullcalendar/timegrid": "^6.1.19",
"@fullcalendar/vue3": "^6.1.19",
"@tabler/core": "^1.4.0",
"@tabler/icons-vue": "^3.35.0",
"axios": "^1.13.2",
@@ -1055,6 +1059,56 @@
"node": ">=18"
}
},
"node_modules/@fullcalendar/core": {
"version": "6.1.19",
"resolved": "https://registry.npmjs.org/@fullcalendar/core/-/core-6.1.19.tgz",
"integrity": "sha512-z0aVlO5e4Wah6p6mouM0UEqtRf1MZZPt4mwzEyU6kusaNL+dlWQgAasF2cK23hwT4cmxkEmr4inULXgpyeExdQ==",
"license": "MIT",
"peer": true,
"dependencies": {
"preact": "~10.12.1"
}
},
"node_modules/@fullcalendar/daygrid": {
"version": "6.1.19",
"resolved": "https://registry.npmjs.org/@fullcalendar/daygrid/-/daygrid-6.1.19.tgz",
"integrity": "sha512-IAAfnMICnVWPjpT4zi87i3FEw0xxSza0avqY/HedKEz+l5MTBYvCDPOWDATpzXoLut3aACsjktIyw9thvIcRYQ==",
"license": "MIT",
"peerDependencies": {
"@fullcalendar/core": "~6.1.19"
}
},
"node_modules/@fullcalendar/interaction": {
"version": "6.1.19",
"resolved": "https://registry.npmjs.org/@fullcalendar/interaction/-/interaction-6.1.19.tgz",
"integrity": "sha512-GOciy79xe8JMVp+1evAU3ytdwN/7tv35t5i1vFkifiuWcQMLC/JnLg/RA2s4sYmQwoYhTw/p4GLcP0gO5B3X5w==",
"license": "MIT",
"peerDependencies": {
"@fullcalendar/core": "~6.1.19"
}
},
"node_modules/@fullcalendar/timegrid": {
"version": "6.1.19",
"resolved": "https://registry.npmjs.org/@fullcalendar/timegrid/-/timegrid-6.1.19.tgz",
"integrity": "sha512-OuzpUueyO9wB5OZ8rs7TWIoqvu4v3yEqdDxZ2VcsMldCpYJRiOe7yHWKr4ap5Tb0fs7Rjbserc/b6Nt7ol6BRg==",
"license": "MIT",
"dependencies": {
"@fullcalendar/daygrid": "~6.1.19"
},
"peerDependencies": {
"@fullcalendar/core": "~6.1.19"
}
},
"node_modules/@fullcalendar/vue3": {
"version": "6.1.19",
"resolved": "https://registry.npmjs.org/@fullcalendar/vue3/-/vue3-6.1.19.tgz",
"integrity": "sha512-j5eUSxx0xIy3ADljo0f5B9PhjqXnCQ+7nUMPfsslc2eGVjp4F74YvY3dyd6OBbg13IvpsjowkjncGipYMQWmTA==",
"license": "MIT",
"peerDependencies": {
"@fullcalendar/core": "~6.1.19",
"vue": "^3.0.11"
}
},
"node_modules/@intlify/core-base": {
"version": "11.1.12",
"resolved": "https://registry.npmjs.org/@intlify/core-base/-/core-base-11.1.12.tgz",
@@ -3213,6 +3267,16 @@
"node": "^10 || ^12 || >=14"
}
},
"node_modules/preact": {
"version": "10.12.1",
"resolved": "https://registry.npmjs.org/preact/-/preact-10.12.1.tgz",
"integrity": "sha512-l8386ixSsBdbreOAkqtrwqHwdvR35ID8c3rKPa8lCWuO86dBi32QWHV4vfsZK1utLLFMvw+Z5Ad4XLkZzchscg==",
"license": "MIT",
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/preact"
}
},
"node_modules/proxy-from-env": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz",
@@ -3305,6 +3369,28 @@
"tslib": "^2.1.0"
}
},
"node_modules/sass": {
"version": "1.93.3",
"resolved": "https://registry.npmjs.org/sass/-/sass-1.93.3.tgz",
"integrity": "sha512-elOcIZRTM76dvxNAjqYrucTSI0teAF/L2Lv0s6f6b7FOwcwIuA357bIE871580AjHJuSvLIRUosgV+lIWx6Rgg==",
"dev": true,
"license": "MIT",
"optional": true,
"dependencies": {
"chokidar": "^4.0.0",
"immutable": "^5.0.2",
"source-map-js": ">=0.6.2 <2.0.0"
},
"bin": {
"sass": "sass.js"
},
"engines": {
"node": ">=14.0.0"
},
"optionalDependencies": {
"@parcel/watcher": "^2.4.1"
}
},
"node_modules/sass-embedded": {
"version": "1.93.3",
"resolved": "https://registry.npmjs.org/sass-embedded/-/sass-embedded-1.93.3.tgz",
+4
View File
@@ -12,6 +12,10 @@
"preview": "vite preview"
},
"dependencies": {
"@fullcalendar/daygrid": "^6.1.19",
"@fullcalendar/interaction": "^6.1.19",
"@fullcalendar/timegrid": "^6.1.19",
"@fullcalendar/vue3": "^6.1.19",
"@tabler/core": "^1.4.0",
"@tabler/icons-vue": "^3.35.0",
"axios": "^1.13.2",
@@ -183,9 +183,7 @@ onMounted(() => {
aria-label="Open user menu"
>
<img
:src="
userStore.getUserAvatarPath()
"
:src="userStore.getUserAvatarPath()"
alt=""
class="avatar avatar-sm"
/>
@@ -275,35 +273,26 @@ onMounted(() => {
<div class="row flex-column flex-md-row flex-fill align-items-center">
<div class="col d-flex">
<!-- BEGIN NAVBAR MENU -->
<ul class="navbar-nav">
<li class="nav-item active">
<router-link to="/" class="nav-link">
<span class="nav-link-icon d-md-none d-lg-inline-block"
><!-- Download SVG icon from http://tabler.io/icons/icon/home -->
<svg
xmlns="http://www.w3.org/2000/svg"
width="24"
height="24"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
class="icon icon-1"
>
<path d="M5 12l-2 0l9 -9l9 9l-2 0" />
<path d="M5 12v7a2 2 0 0 0 2 2h10a2 2 0 0 0 2 -2v-7" />
<path
d="M9 21v-6a2 2 0 0 1 2 -2h2a2 2 0 0 1 2 2v6"
/></svg
></span>
<span class="nav-link-title">
{{ t("appname.home") }}
</span>
</router-link>
</li>
</ul>
<dev class="navbar-nav">
<router-link
to="/"
class="nav-item nav-link"
active-class="active"
>
<span class="nav-link-title">
{{ t("appname.home") }}
</span>
</router-link>
<router-link
to="/schedule"
class="nav-item nav-link"
active-class="active"
>
<span class="nav-link-title">
{{ t("appname.schedule") }}
</span>
</router-link>
</dev>
<div class="ms-auto">
<select
+2 -1
View File
@@ -3,7 +3,8 @@
"home": "Home",
"login": "Login",
"forgot_password": "Forgot Password",
"register": "Register"
"register": "Register",
"schedule":"Schedule"
},
"message": {
"functionality_not_yet_developed":"Functionality not yet developed",
+2 -1
View File
@@ -3,7 +3,8 @@
"home": "主页",
"login": "登录",
"forgot_password": "忘记密码",
"register": "注册"
"register": "注册",
"schedule":"日程"
},
"message": {
"functionality_not_yet_developed":"功能未开发",
+6 -1
View File
@@ -46,11 +46,16 @@ const router = createRouter({
name: "admin",
component: () => import("../views/adminView.vue"),
},
{
{
path: "/settings/account",
name: "settings account",
component: () => import("../views/settings/account.vue"),
},
{
path: "/schedule",
name: "schedule",
component: () => import("../views/scheduleView.vue"),
},
],
});
@@ -0,0 +1,11 @@
<script setup>
import FullCalendar from '@fullcalendar/vue3'
import dayGridPlugin from '@fullcalendar/daygrid'
import timeGridPlugin from '@fullcalendar/timegrid'
import interactionPlugin from "@fullcalendar/interaction"//拖动插件 需要用npm安装
</script>
<template>
<FullCalendar > </FullCalendar>
</template>