From 16b063870156db78148440971ab46c649e3e6018 Mon Sep 17 00:00:00 2001
From: 移动系统liao <liaoxujun@qq.com>
Date: 星期三, 19 三月 2025 11:44:22 +0800
Subject: [PATCH] 测试定版,
---
AdminwebPages/adminpageView/src/views/cylsgPayrollReport.vue | 282 ++
AdminwebPages/adminpageView/env.d.ts | 1
AdminwebPages/adminpageView/tsconfig.node.json | 19
cylsg/cylsg.Model/TransferOrder/WeChartTransferOrder.cs | 31
cylsg/cylsg.Model/ECTEModel/OA_DeliverPlan.cs | 18
AdminwebPages/adminpageView/public/favicon.ico | 0
cylsg/cylsg.Model/ECTEModel/OA_DeliverPlanPaiche.cs | 278 ++
cylsg/cylsg.Model/ECTEModel/EC_DriverRecord.cs | 27
AdminwebPages/adminpageView/src/assets/base.css | 86
AdminwebPages/adminpageView/src/views/HomeView.vue | 24
AdminwebPages/adminpageView/.vscode/extensions.json | 8
AdminwebPages/adminpageView/src/store/index.ts | 9
AdminwebPages/adminpageView/src/store/types.ts | 51
AdminwebPages/adminpageView/src/components/HelloWorld.vue | 41
AdminwebPages/adminpageView/index.html | 13
AdminwebPages/adminpageView/README.md | 39
AdminwebPages/adminpageView/src/Api/EzApiBaseTypes.d.ts | 112 +
cylsg/cylsg.utility/untilityModels.cs | 16
AdminwebPages/adminpageView/eslint.config.ts | 24
AdminwebPages/adminpageView/package.json | 45
AdminwebPages/adminpageView/src/App.vue | 27
AdminwebPages/adminpageView/src/components/icons/IconEcosystem.vue | 7
AdminwebPages/adminpageView/.gitignore | 30
AdminwebPages/adminpageView/.gitattributes | 1
AdminwebPages/adminpageView/pnpm-lock.yaml | 3625 +++++++++++++++++++++++++++++++++
AdminwebPages/adminpageView/src/components/WelcomeItem.vue | 87
AdminwebPages/adminpageView/tsconfig.app.json | 12
AdminwebPages/adminpageView/src/assets/main.css | 16
AdminwebPages/adminpageView/src/stores/counter.ts | 12
AdminwebPages/adminpageView/tsconfig.json | 14
cylsg/cylsg.Application/CyOS/CyOSSettingController.cs | 14
cylsg/ECTESTOA/OAServices.cs | 2
cylsg/cylsg.utility/CommonHelper.cs | 171 +
AdminwebPages/adminpageView/.editorconfig | 9
AdminwebPages/adminpageView/src/assets/logo.svg | 1
cylsg/cylsg.Model/ECTEModel/OA_DeliverTixing.cs | 16
AdminwebPages/adminpageView/src/components/icons/IconCommunity.vue | 7
AdminwebPages/adminpageView/src/main.ts | 35
AdminwebPages/adminpageView/vite.config.ts | 52
cylsg/cylsg.Application/CyOS/CyOSSDriver.cs | 382 +++
cylsg/cylsg.Model/UserModel/User.cs | 9
AdminwebPages/adminpageView/src/router/index.ts | 37
AdminwebPages/adminpageView/.prettierrc.json | 6
AdminwebPages/adminpageView/src/components/icons/IconTooling.vue | 19
cylsg/cylsg.Model/utilityViewModel/ECTESTOAPermissions.cs | 56
cylsg/cylsg.Application/CyOS/CyOsDeliverManage.cs | 274 ++
AdminwebPages/adminpageView/src/components/icons/IconSupport.vue | 7
AdminwebPages/adminpageView/src/Api/apis.ts | 220 ++
AdminwebPages/adminpageView/src/views/AboutView.vue | 15
cylsg/cylsg.utility/Extend/StringEx.cs | 15
AdminwebPages/adminpageView/src/components/icons/IconDocumentation.vue | 7
cylsg/cylsg.utility/cylsg.utility.csproj | 1
AdminwebPages/adminpageView/src/components/TheWelcome.vue | 94
cylsg/cylsg.Application/CyOS/CyOSStaffController.cs | 18
cylsg/cylsg.Application/Transfer/UserTransfer.cs | 78
55 files changed, 6,426 insertions(+), 74 deletions(-)
diff --git a/AdminwebPages/adminpageView/.editorconfig b/AdminwebPages/adminpageView/.editorconfig
new file mode 100644
index 0000000..5a5809d
--- /dev/null
+++ b/AdminwebPages/adminpageView/.editorconfig
@@ -0,0 +1,9 @@
+[*.{js,jsx,mjs,cjs,ts,tsx,mts,cts,vue,css,scss,sass,less,styl}]
+charset = utf-8
+indent_size = 2
+indent_style = space
+insert_final_newline = true
+trim_trailing_whitespace = true
+
+end_of_line = lf
+max_line_length = 100
diff --git a/AdminwebPages/adminpageView/.gitattributes b/AdminwebPages/adminpageView/.gitattributes
new file mode 100644
index 0000000..6313b56
--- /dev/null
+++ b/AdminwebPages/adminpageView/.gitattributes
@@ -0,0 +1 @@
+* text=auto eol=lf
diff --git a/AdminwebPages/adminpageView/.gitignore b/AdminwebPages/adminpageView/.gitignore
new file mode 100644
index 0000000..8ee54e8
--- /dev/null
+++ b/AdminwebPages/adminpageView/.gitignore
@@ -0,0 +1,30 @@
+# Logs
+logs
+*.log
+npm-debug.log*
+yarn-debug.log*
+yarn-error.log*
+pnpm-debug.log*
+lerna-debug.log*
+
+node_modules
+.DS_Store
+dist
+dist-ssr
+coverage
+*.local
+
+/cypress/videos/
+/cypress/screenshots/
+
+# Editor directories and files
+.vscode/*
+!.vscode/extensions.json
+.idea
+*.suo
+*.ntvs*
+*.njsproj
+*.sln
+*.sw?
+
+*.tsbuildinfo
diff --git a/AdminwebPages/adminpageView/.prettierrc.json b/AdminwebPages/adminpageView/.prettierrc.json
new file mode 100644
index 0000000..29a2402
--- /dev/null
+++ b/AdminwebPages/adminpageView/.prettierrc.json
@@ -0,0 +1,6 @@
+{
+ "$schema": "https://json.schemastore.org/prettierrc",
+ "semi": false,
+ "singleQuote": true,
+ "printWidth": 100
+}
diff --git a/AdminwebPages/adminpageView/.vscode/extensions.json b/AdminwebPages/adminpageView/.vscode/extensions.json
new file mode 100644
index 0000000..c92168f
--- /dev/null
+++ b/AdminwebPages/adminpageView/.vscode/extensions.json
@@ -0,0 +1,8 @@
+{
+ "recommendations": [
+ "Vue.volar",
+ "dbaeumer.vscode-eslint",
+ "EditorConfig.EditorConfig",
+ "esbenp.prettier-vscode"
+ ]
+}
diff --git a/AdminwebPages/adminpageView/README.md b/AdminwebPages/adminpageView/README.md
new file mode 100644
index 0000000..4b89ac7
--- /dev/null
+++ b/AdminwebPages/adminpageView/README.md
@@ -0,0 +1,39 @@
+# adminpageView
+
+This template should help get you started developing with Vue 3 in Vite.
+
+## Recommended IDE Setup
+
+[VSCode](https://code.visualstudio.com/) + [Volar](https://marketplace.visualstudio.com/items?itemName=Vue.volar) (and disable Vetur).
+
+## Type Support for `.vue` Imports in TS
+
+TypeScript cannot handle type information for `.vue` imports by default, so we replace the `tsc` CLI with `vue-tsc` for type checking. In editors, we need [Volar](https://marketplace.visualstudio.com/items?itemName=Vue.volar) to make the TypeScript language service aware of `.vue` types.
+
+## Customize configuration
+
+See [Vite Configuration Reference](https://vite.dev/config/).
+
+## Project Setup
+
+```sh
+pnpm install
+```
+
+### Compile and Hot-Reload for Development
+
+```sh
+pnpm dev
+```
+
+### Type-Check, Compile and Minify for Production
+
+```sh
+pnpm build
+```
+
+### Lint with [ESLint](https://eslint.org/)
+
+```sh
+pnpm lint
+```
diff --git a/AdminwebPages/adminpageView/env.d.ts b/AdminwebPages/adminpageView/env.d.ts
new file mode 100644
index 0000000..11f02fe
--- /dev/null
+++ b/AdminwebPages/adminpageView/env.d.ts
@@ -0,0 +1 @@
+/// <reference types="vite/client" />
diff --git a/AdminwebPages/adminpageView/eslint.config.ts b/AdminwebPages/adminpageView/eslint.config.ts
new file mode 100644
index 0000000..d3d8f17
--- /dev/null
+++ b/AdminwebPages/adminpageView/eslint.config.ts
@@ -0,0 +1,24 @@
+import pluginVue from 'eslint-plugin-vue'
+import { defineConfigWithVueTs, vueTsConfigs } from '@vue/eslint-config-typescript'
+import skipFormatting from '@vue/eslint-config-prettier/skip-formatting'
+
+// To allow more languages other than `ts` in `.vue` files, uncomment the following lines:
+// import { configureVueProject } from '@vue/eslint-config-typescript'
+// configureVueProject({ scriptLangs: ['ts', 'tsx'] })
+// More info at https://github.com/vuejs/eslint-config-typescript/#advanced-setup
+
+export default defineConfigWithVueTs(
+ {
+ name: 'app/files-to-lint',
+ files: ['**/*.{ts,mts,tsx,vue}'],
+ },
+
+ {
+ name: 'app/files-to-ignore',
+ ignores: ['**/dist/**', '**/dist-ssr/**', '**/coverage/**'],
+ },
+
+ pluginVue.configs['flat/essential'],
+ vueTsConfigs.recommended,
+ skipFormatting,
+)
diff --git a/AdminwebPages/adminpageView/index.html b/AdminwebPages/adminpageView/index.html
new file mode 100644
index 0000000..9e5fc8f
--- /dev/null
+++ b/AdminwebPages/adminpageView/index.html
@@ -0,0 +1,13 @@
+<!DOCTYPE html>
+<html lang="">
+ <head>
+ <meta charset="UTF-8">
+ <link rel="icon" href="/favicon.ico">
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
+ <title>Vite App</title>
+ </head>
+ <body>
+ <div id="app"></div>
+ <script type="module" src="/src/main.ts"></script>
+ </body>
+</html>
diff --git a/AdminwebPages/adminpageView/package.json b/AdminwebPages/adminpageView/package.json
new file mode 100644
index 0000000..107bed2
--- /dev/null
+++ b/AdminwebPages/adminpageView/package.json
@@ -0,0 +1,45 @@
+{
+ "name": "adminpageview",
+ "version": "0.0.0",
+ "private": true,
+ "type": "module",
+ "scripts": {
+ "dev": "vite",
+ "build": "run-p type-check \"build-only {@}\" --",
+ "preview": "vite preview",
+ "build-only": "vite build",
+ "type-check": "vue-tsc --build",
+ "lint": "eslint . --fix",
+ "format": "prettier --write src/"
+ },
+ "dependencies": {
+ "@types/qs": "^6.9.18",
+ "axios": "^1.8.3",
+ "element-plus": "^2.9.6",
+ "moment": "^2.30.1",
+ "pinia": "^3.0.1",
+ "plus-pro-components": "^0.1.21",
+ "qs": "^6.14.0",
+ "vue": "^3.5.13",
+ "vue-router": "^4.5.0"
+ },
+ "devDependencies": {
+ "@tsconfig/node22": "^22.0.0",
+ "@types/node": "^22.13.9",
+ "@types/nprogress": "^0.2.3",
+ "@vitejs/plugin-vue": "^5.2.1",
+ "@vitejs/plugin-vue-jsx": "^4.1.1",
+ "@vue/eslint-config-prettier": "^10.2.0",
+ "@vue/eslint-config-typescript": "^14.5.0",
+ "@vue/tsconfig": "^0.7.0",
+ "eslint": "^9.21.0",
+ "eslint-plugin-vue": "~10.0.0",
+ "jiti": "^2.4.2",
+ "npm-run-all2": "^7.0.2",
+ "prettier": "3.5.3",
+ "typescript": "~5.8.0",
+ "vite": "^6.2.1",
+ "vite-plugin-vue-devtools": "^7.7.2",
+ "vue-tsc": "^2.2.8"
+ }
+}
diff --git a/AdminwebPages/adminpageView/pnpm-lock.yaml b/AdminwebPages/adminpageView/pnpm-lock.yaml
new file mode 100644
index 0000000..b2ef1da
--- /dev/null
+++ b/AdminwebPages/adminpageView/pnpm-lock.yaml
@@ -0,0 +1,3625 @@
+lockfileVersion: '9.0'
+
+settings:
+ autoInstallPeers: true
+ excludeLinksFromLockfile: false
+
+importers:
+
+ .:
+ dependencies:
+ '@types/qs':
+ specifier: ^6.9.18
+ version: 6.9.18
+ axios:
+ specifier: ^1.8.3
+ version: 1.8.3
+ element-plus:
+ specifier: ^2.9.6
+ version: 2.9.6(vue@3.5.13(typescript@5.8.2))
+ moment:
+ specifier: ^2.30.1
+ version: 2.30.1
+ pinia:
+ specifier: ^3.0.1
+ version: 3.0.1(typescript@5.8.2)(vue@3.5.13(typescript@5.8.2))
+ plus-pro-components:
+ specifier: ^0.1.21
+ version: 0.1.21(element-plus@2.9.6(vue@3.5.13(typescript@5.8.2)))(vue@3.5.13(typescript@5.8.2))
+ qs:
+ specifier: ^6.14.0
+ version: 6.14.0
+ vue:
+ specifier: ^3.5.13
+ version: 3.5.13(typescript@5.8.2)
+ vue-router:
+ specifier: ^4.5.0
+ version: 4.5.0(vue@3.5.13(typescript@5.8.2))
+ devDependencies:
+ '@tsconfig/node22':
+ specifier: ^22.0.0
+ version: 22.0.0
+ '@types/node':
+ specifier: ^22.13.9
+ version: 22.13.10
+ '@types/nprogress':
+ specifier: ^0.2.3
+ version: 0.2.3
+ '@vitejs/plugin-vue':
+ specifier: ^5.2.1
+ version: 5.2.2(vite@6.2.2(@types/node@22.13.10)(jiti@2.4.2))(vue@3.5.13(typescript@5.8.2))
+ '@vitejs/plugin-vue-jsx':
+ specifier: ^4.1.1
+ version: 4.1.2(vite@6.2.2(@types/node@22.13.10)(jiti@2.4.2))(vue@3.5.13(typescript@5.8.2))
+ '@vue/eslint-config-prettier':
+ specifier: ^10.2.0
+ version: 10.2.0(eslint@9.22.0(jiti@2.4.2))(prettier@3.5.3)
+ '@vue/eslint-config-typescript':
+ specifier: ^14.5.0
+ version: 14.5.0(eslint-plugin-vue@10.0.0(eslint@9.22.0(jiti@2.4.2))(vue-eslint-parser@10.1.1(eslint@9.22.0(jiti@2.4.2))))(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2)
+ '@vue/tsconfig':
+ specifier: ^0.7.0
+ version: 0.7.0(typescript@5.8.2)(vue@3.5.13(typescript@5.8.2))
+ eslint:
+ specifier: ^9.21.0
+ version: 9.22.0(jiti@2.4.2)
+ eslint-plugin-vue:
+ specifier: ~10.0.0
+ version: 10.0.0(eslint@9.22.0(jiti@2.4.2))(vue-eslint-parser@10.1.1(eslint@9.22.0(jiti@2.4.2)))
+ jiti:
+ specifier: ^2.4.2
+ version: 2.4.2
+ npm-run-all2:
+ specifier: ^7.0.2
+ version: 7.0.2
+ prettier:
+ specifier: 3.5.3
+ version: 3.5.3
+ typescript:
+ specifier: ~5.8.0
+ version: 5.8.2
+ vite:
+ specifier: ^6.2.1
+ version: 6.2.2(@types/node@22.13.10)(jiti@2.4.2)
+ vite-plugin-vue-devtools:
+ specifier: ^7.7.2
+ version: 7.7.2(rollup@4.35.0)(vite@6.2.2(@types/node@22.13.10)(jiti@2.4.2))(vue@3.5.13(typescript@5.8.2))
+ vue-tsc:
+ specifier: ^2.2.8
+ version: 2.2.8(typescript@5.8.2)
+
+packages:
+
+ '@ampproject/remapping@2.3.0':
+ resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==}
+ engines: {node: '>=6.0.0'}
+
+ '@antfu/utils@0.7.10':
+ resolution: {integrity: sha512-+562v9k4aI80m1+VuMHehNJWLOFjBnXn3tdOitzD0il5b7smkSBal4+a3oKiQTbrwMmN/TBUMDvbdoWDehgOww==}
+
+ '@babel/code-frame@7.26.2':
+ resolution: {integrity: sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/compat-data@7.26.8':
+ resolution: {integrity: sha512-oH5UPLMWR3L2wEFLnFJ1TZXqHufiTKAiLfqw5zkhS4dKXLJ10yVztfil/twG8EDTA4F/tvVNw9nOl4ZMslB8rQ==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/core@7.26.10':
+ resolution: {integrity: sha512-vMqyb7XCDMPvJFFOaT9kxtiRh42GwlZEg1/uIgtZshS5a/8OaduUfCi7kynKgc3Tw/6Uo2D+db9qBttghhmxwQ==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/generator@7.26.10':
+ resolution: {integrity: sha512-rRHT8siFIXQrAYOYqZQVsAr8vJ+cBNqcVAY6m5V8/4QqzaPl+zDBe6cLEPRDuNOUf3ww8RfJVlOyQMoSI+5Ang==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/helper-annotate-as-pure@7.25.9':
+ resolution: {integrity: sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/helper-compilation-targets@7.26.5':
+ resolution: {integrity: sha512-IXuyn5EkouFJscIDuFF5EsiSolseme1s0CZB+QxVugqJLYmKdxI1VfIBOst0SUu4rnk2Z7kqTwmoO1lp3HIfnA==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/helper-create-class-features-plugin@7.26.9':
+ resolution: {integrity: sha512-ubbUqCofvxPRurw5L8WTsCLSkQiVpov4Qx0WMA+jUN+nXBK8ADPlJO1grkFw5CWKC5+sZSOfuGMdX1aI1iT9Sg==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+
+ '@babel/helper-member-expression-to-functions@7.25.9':
+ resolution: {integrity: sha512-wbfdZ9w5vk0C0oyHqAJbc62+vet5prjj01jjJ8sKn3j9h3MQQlflEdXYvuqRWjHnM12coDEqiC1IRCi0U/EKwQ==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/helper-module-imports@7.25.9':
+ resolution: {integrity: sha512-tnUA4RsrmflIM6W6RFTLFSXITtl0wKjgpnLgXyowocVPrbYrLUXSBXDgTs8BlbmIzIdlBySRQjINYs2BAkiLtw==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/helper-module-transforms@7.26.0':
+ resolution: {integrity: sha512-xO+xu6B5K2czEnQye6BHA7DolFFmS3LB7stHZFaOLb1pAwO1HWLS8fXA+eh0A2yIvltPVmx3eNNDBJA2SLHXFw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+
+ '@babel/helper-optimise-call-expression@7.25.9':
+ resolution: {integrity: sha512-FIpuNaz5ow8VyrYcnXQTDRGvV6tTjkNtCK/RYNDXGSLlUD6cBuQTSw43CShGxjvfBTfcUA/r6UhUCbtYqkhcuQ==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/helper-plugin-utils@7.26.5':
+ resolution: {integrity: sha512-RS+jZcRdZdRFzMyr+wcsaqOmld1/EqTghfaBGQQd/WnRdzdlvSZ//kF7U8VQTxf1ynZ4cjUcYgjVGx13ewNPMg==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/helper-replace-supers@7.26.5':
+ resolution: {integrity: sha512-bJ6iIVdYX1YooY2X7w1q6VITt+LnUILtNk7zT78ykuwStx8BauCzxvFqFaHjOpW1bVnSUM1PN1f0p5P21wHxvg==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+
+ '@babel/helper-skip-transparent-expression-wrappers@7.25.9':
+ resolution: {integrity: sha512-K4Du3BFa3gvyhzgPcntrkDgZzQaq6uozzcpGbOO1OEJaI+EJdqWIMTLgFgQf6lrfiDFo5FU+BxKepI9RmZqahA==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/helper-string-parser@7.25.9':
+ resolution: {integrity: sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/helper-validator-identifier@7.25.9':
+ resolution: {integrity: sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/helper-validator-option@7.25.9':
+ resolution: {integrity: sha512-e/zv1co8pp55dNdEcCynfj9X7nyUKUXoUEwfXqaZt0omVOmDe9oOTdKStH4GmAw6zxMFs50ZayuMfHDKlO7Tfw==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/helpers@7.26.10':
+ resolution: {integrity: sha512-UPYc3SauzZ3JGgj87GgZ89JVdC5dj0AoetR5Bw6wj4niittNyFh6+eOGonYvJ1ao6B8lEa3Q3klS7ADZ53bc5g==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/parser@7.26.10':
+ resolution: {integrity: sha512-6aQR2zGE/QFi8JpDLjUZEPYOs7+mhKXm86VaKFiLP35JQwQb6bwUE+XbvkH0EptsYhbNBSUGaUBLKqxH1xSgsA==}
+ engines: {node: '>=6.0.0'}
+ hasBin: true
+
+ '@babel/plugin-proposal-decorators@7.25.9':
+ resolution: {integrity: sha512-smkNLL/O1ezy9Nhy4CNosc4Va+1wo5w4gzSZeLe6y6dM4mmHfYOCPolXQPHQxonZCF+ZyebxN9vqOolkYrSn5g==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-syntax-decorators@7.25.9':
+ resolution: {integrity: sha512-ryzI0McXUPJnRCvMo4lumIKZUzhYUO/ScI+Mz4YVaTLt04DHNSjEUjKVvbzQjZFLuod/cYEc07mJWhzl6v4DPg==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-syntax-import-attributes@7.26.0':
+ resolution: {integrity: sha512-e2dttdsJ1ZTpi3B9UYGLw41hifAubg19AtCu/2I/F1QNVclOBr1dYpTdmdyZ84Xiz43BS/tCUkMAZNLv12Pi+A==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-syntax-import-meta@7.10.4':
+ resolution: {integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-syntax-jsx@7.25.9':
+ resolution: {integrity: sha512-ld6oezHQMZsZfp6pWtbjaNDF2tiiCYYDqQszHt5VV437lewP9aSi2Of99CK0D0XB21k7FLgnLcmQKyKzynfeAA==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-syntax-typescript@7.25.9':
+ resolution: {integrity: sha512-hjMgRy5hb8uJJjUcdWunWVcoi9bGpJp8p5Ol1229PoN6aytsLwNMgmdftO23wnCLMfVmTwZDWMPNq/D1SY60JQ==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-typescript@7.26.8':
+ resolution: {integrity: sha512-bME5J9AC8ChwA7aEPJ6zym3w7aObZULHhbNLU0bKUhKsAkylkzUdq+0kdymh9rzi8nlNFl2bmldFBCKNJBUpuw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/template@7.26.9':
+ resolution: {integrity: sha512-qyRplbeIpNZhmzOysF/wFMuP9sctmh2cFzRAZOn1YapxBsE1i9bJIY586R/WBLfLcmcBlM8ROBiQURnnNy+zfA==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/traverse@7.26.10':
+ resolution: {integrity: sha512-k8NuDrxr0WrPH5Aupqb2LCVURP/S0vBEn5mK6iH+GIYob66U5EtoZvcdudR2jQ4cmTwhEwW1DLB+Yyas9zjF6A==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/types@7.26.10':
+ resolution: {integrity: sha512-emqcG3vHrpxUKTrxcblR36dcrcoRDvKmnL/dCL6ZsHaShW80qxCAcNhzQZrpeM765VzEos+xOi4s+r4IXzTwdQ==}
+ engines: {node: '>=6.9.0'}
+
+ '@ctrl/tinycolor@3.6.1':
+ resolution: {integrity: sha512-SITSV6aIXsuVNV3f3O0f2n/cgyEDWoSqtZMYiAmcsYHydcKrOz3gUxB/iXd/Qf08+IZX4KpgNbvUdMBmWz+kcA==}
+ engines: {node: '>=10'}
+
+ '@element-plus/icons-vue@2.3.1':
+ resolution: {integrity: sha512-XxVUZv48RZAd87ucGS48jPf6pKu0yV5UCg9f4FFwtrYxXOwWuVJo6wOvSLKEoMQKjv8GsX/mhP6UsC1lRwbUWg==}
+ peerDependencies:
+ vue: ^3.2.0
+
+ '@esbuild/aix-ppc64@0.25.1':
+ resolution: {integrity: sha512-kfYGy8IdzTGy+z0vFGvExZtxkFlA4zAxgKEahG9KE1ScBjpQnFsNOX8KTU5ojNru5ed5CVoJYXFtoxaq5nFbjQ==}
+ engines: {node: '>=18'}
+ cpu: [ppc64]
+ os: [aix]
+
+ '@esbuild/android-arm64@0.25.1':
+ resolution: {integrity: sha512-50tM0zCJW5kGqgG7fQ7IHvQOcAn9TKiVRuQ/lN0xR+T2lzEFvAi1ZcS8DiksFcEpf1t/GYOeOfCAgDHFpkiSmA==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [android]
+
+ '@esbuild/android-arm@0.25.1':
+ resolution: {integrity: sha512-dp+MshLYux6j/JjdqVLnMglQlFu+MuVeNrmT5nk6q07wNhCdSnB7QZj+7G8VMUGh1q+vj2Bq8kRsuyA00I/k+Q==}
+ engines: {node: '>=18'}
+ cpu: [arm]
+ os: [android]
+
+ '@esbuild/android-x64@0.25.1':
+ resolution: {integrity: sha512-GCj6WfUtNldqUzYkN/ITtlhwQqGWu9S45vUXs7EIYf+7rCiiqH9bCloatO9VhxsL0Pji+PF4Lz2XXCES+Q8hDw==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [android]
+
+ '@esbuild/darwin-arm64@0.25.1':
+ resolution: {integrity: sha512-5hEZKPf+nQjYoSr/elb62U19/l1mZDdqidGfmFutVUjjUZrOazAtwK+Kr+3y0C/oeJfLlxo9fXb1w7L+P7E4FQ==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [darwin]
+
+ '@esbuild/darwin-x64@0.25.1':
+ resolution: {integrity: sha512-hxVnwL2Dqs3fM1IWq8Iezh0cX7ZGdVhbTfnOy5uURtao5OIVCEyj9xIzemDi7sRvKsuSdtCAhMKarxqtlyVyfA==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [darwin]
+
+ '@esbuild/freebsd-arm64@0.25.1':
+ resolution: {integrity: sha512-1MrCZs0fZa2g8E+FUo2ipw6jw5qqQiH+tERoS5fAfKnRx6NXH31tXBKI3VpmLijLH6yriMZsxJtaXUyFt/8Y4A==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [freebsd]
+
+ '@esbuild/freebsd-x64@0.25.1':
+ resolution: {integrity: sha512-0IZWLiTyz7nm0xuIs0q1Y3QWJC52R8aSXxe40VUxm6BB1RNmkODtW6LHvWRrGiICulcX7ZvyH6h5fqdLu4gkww==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [freebsd]
+
+ '@esbuild/linux-arm64@0.25.1':
+ resolution: {integrity: sha512-jaN3dHi0/DDPelk0nLcXRm1q7DNJpjXy7yWaWvbfkPvI+7XNSc/lDOnCLN7gzsyzgu6qSAmgSvP9oXAhP973uQ==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [linux]
+
+ '@esbuild/linux-arm@0.25.1':
+ resolution: {integrity: sha512-NdKOhS4u7JhDKw9G3cY6sWqFcnLITn6SqivVArbzIaf3cemShqfLGHYMx8Xlm/lBit3/5d7kXvriTUGa5YViuQ==}
+ engines: {node: '>=18'}
+ cpu: [arm]
+ os: [linux]
+
+ '@esbuild/linux-ia32@0.25.1':
+ resolution: {integrity: sha512-OJykPaF4v8JidKNGz8c/q1lBO44sQNUQtq1KktJXdBLn1hPod5rE/Hko5ugKKZd+D2+o1a9MFGUEIUwO2YfgkQ==}
+ engines: {node: '>=18'}
+ cpu: [ia32]
+ os: [linux]
+
+ '@esbuild/linux-loong64@0.25.1':
+ resolution: {integrity: sha512-nGfornQj4dzcq5Vp835oM/o21UMlXzn79KobKlcs3Wz9smwiifknLy4xDCLUU0BWp7b/houtdrgUz7nOGnfIYg==}
+ engines: {node: '>=18'}
+ cpu: [loong64]
+ os: [linux]
+
+ '@esbuild/linux-mips64el@0.25.1':
+ resolution: {integrity: sha512-1osBbPEFYwIE5IVB/0g2X6i1qInZa1aIoj1TdL4AaAb55xIIgbg8Doq6a5BzYWgr+tEcDzYH67XVnTmUzL+nXg==}
+ engines: {node: '>=18'}
+ cpu: [mips64el]
+ os: [linux]
+
+ '@esbuild/linux-ppc64@0.25.1':
+ resolution: {integrity: sha512-/6VBJOwUf3TdTvJZ82qF3tbLuWsscd7/1w+D9LH0W/SqUgM5/JJD0lrJ1fVIfZsqB6RFmLCe0Xz3fmZc3WtyVg==}
+ engines: {node: '>=18'}
+ cpu: [ppc64]
+ os: [linux]
+
+ '@esbuild/linux-riscv64@0.25.1':
+ resolution: {integrity: sha512-nSut/Mx5gnilhcq2yIMLMe3Wl4FK5wx/o0QuuCLMtmJn+WeWYoEGDN1ipcN72g1WHsnIbxGXd4i/MF0gTcuAjQ==}
+ engines: {node: '>=18'}
+ cpu: [riscv64]
+ os: [linux]
+
+ '@esbuild/linux-s390x@0.25.1':
+ resolution: {integrity: sha512-cEECeLlJNfT8kZHqLarDBQso9a27o2Zd2AQ8USAEoGtejOrCYHNtKP8XQhMDJMtthdF4GBmjR2au3x1udADQQQ==}
+ engines: {node: '>=18'}
+ cpu: [s390x]
+ os: [linux]
+
+ '@esbuild/linux-x64@0.25.1':
+ resolution: {integrity: sha512-xbfUhu/gnvSEg+EGovRc+kjBAkrvtk38RlerAzQxvMzlB4fXpCFCeUAYzJvrnhFtdeyVCDANSjJvOvGYoeKzFA==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [linux]
+
+ '@esbuild/netbsd-arm64@0.25.1':
+ resolution: {integrity: sha512-O96poM2XGhLtpTh+s4+nP7YCCAfb4tJNRVZHfIE7dgmax+yMP2WgMd2OecBuaATHKTHsLWHQeuaxMRnCsH8+5g==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [netbsd]
+
+ '@esbuild/netbsd-x64@0.25.1':
+ resolution: {integrity: sha512-X53z6uXip6KFXBQ+Krbx25XHV/NCbzryM6ehOAeAil7X7oa4XIq+394PWGnwaSQ2WRA0KI6PUO6hTO5zeF5ijA==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [netbsd]
+
+ '@esbuild/openbsd-arm64@0.25.1':
+ resolution: {integrity: sha512-Na9T3szbXezdzM/Kfs3GcRQNjHzM6GzFBeU1/6IV/npKP5ORtp9zbQjvkDJ47s6BCgaAZnnnu/cY1x342+MvZg==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [openbsd]
+
+ '@esbuild/openbsd-x64@0.25.1':
+ resolution: {integrity: sha512-T3H78X2h1tszfRSf+txbt5aOp/e7TAz3ptVKu9Oyir3IAOFPGV6O9c2naym5TOriy1l0nNf6a4X5UXRZSGX/dw==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [openbsd]
+
+ '@esbuild/sunos-x64@0.25.1':
+ resolution: {integrity: sha512-2H3RUvcmULO7dIE5EWJH8eubZAI4xw54H1ilJnRNZdeo8dTADEZ21w6J22XBkXqGJbe0+wnNJtw3UXRoLJnFEg==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [sunos]
+
+ '@esbuild/win32-arm64@0.25.1':
+ resolution: {integrity: sha512-GE7XvrdOzrb+yVKB9KsRMq+7a2U/K5Cf/8grVFRAGJmfADr/e/ODQ134RK2/eeHqYV5eQRFxb1hY7Nr15fv1NQ==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [win32]
+
+ '@esbuild/win32-ia32@0.25.1':
+ resolution: {integrity: sha512-uOxSJCIcavSiT6UnBhBzE8wy3n0hOkJsBOzy7HDAuTDE++1DJMRRVCPGisULScHL+a/ZwdXPpXD3IyFKjA7K8A==}
+ engines: {node: '>=18'}
+ cpu: [ia32]
+ os: [win32]
+
+ '@esbuild/win32-x64@0.25.1':
+ resolution: {integrity: sha512-Y1EQdcfwMSeQN/ujR5VayLOJ1BHaK+ssyk0AEzPjC+t1lITgsnccPqFjb6V+LsTp/9Iov4ysfjxLaGJ9RPtkVg==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [win32]
+
+ '@eslint-community/eslint-utils@4.5.1':
+ resolution: {integrity: sha512-soEIOALTfTK6EjmKMMoLugwaP0rzkad90iIWd1hMO9ARkSAyjfMfkRRhLvD5qH7vvM0Cg72pieUfR6yh6XxC4w==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ peerDependencies:
+ eslint: ^6.0.0 || ^7.0.0 || >=8.0.0
+
+ '@eslint-community/regexpp@4.12.1':
+ resolution: {integrity: sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==}
+ engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0}
+
+ '@eslint/config-array@0.19.2':
+ resolution: {integrity: sha512-GNKqxfHG2ySmJOBSHg7LxeUx4xpuCoFjacmlCoYWEbaPXLwvfIjixRI12xCQZeULksQb23uiA8F40w5TojpV7w==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
+ '@eslint/config-helpers@0.1.0':
+ resolution: {integrity: sha512-kLrdPDJE1ckPo94kmPPf9Hfd0DU0Jw6oKYrhe+pwSC0iTUInmTa+w6fw8sGgcfkFJGNdWOUeOaDM4quW4a7OkA==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
+ '@eslint/core@0.12.0':
+ resolution: {integrity: sha512-cmrR6pytBuSMTaBweKoGMwu3EiHiEC+DoyupPmlZ0HxBJBtIxwe+j/E4XPIKNx+Q74c8lXKPwYawBf5glsTkHg==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
+ '@eslint/eslintrc@3.3.0':
+ resolution: {integrity: sha512-yaVPAiNAalnCZedKLdR21GOGILMLKPyqSLWaAjQFvYA2i/ciDi8ArYVr69Anohb6cH2Ukhqti4aFnYyPm8wdwQ==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
+ '@eslint/js@9.22.0':
+ resolution: {integrity: sha512-vLFajx9o8d1/oL2ZkpMYbkLv8nDB6yaIwFNt7nI4+I80U/z03SxmfOMsLbvWr3p7C+Wnoh//aOu2pQW8cS0HCQ==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
+ '@eslint/object-schema@2.1.6':
+ resolution: {integrity: sha512-RBMg5FRL0I0gs51M/guSAj5/e14VQ4tpZnQNWwuDT66P14I43ItmPfIZRhO9fUVIPOAQXU47atlywZ/czoqFPA==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
+ '@eslint/plugin-kit@0.2.7':
+ resolution: {integrity: sha512-JubJ5B2pJ4k4yGxaNLdbjrnk9d/iDz6/q8wOilpIowd6PJPgaxCuHBnBszq7Ce2TyMrywm5r4PnKm6V3iiZF+g==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
+ '@floating-ui/core@1.6.9':
+ resolution: {integrity: sha512-uMXCuQ3BItDUbAMhIXw7UPXRfAlOAvZzdK9BWpE60MCn+Svt3aLn9jsPTi/WNGlRUu2uI0v5S7JiIUsbsvh3fw==}
+
+ '@floating-ui/dom@1.6.13':
+ resolution: {integrity: sha512-umqzocjDgNRGTuO7Q8CU32dkHkECqI8ZdMZ5Swb6QAM0t5rnlrN3lGo1hdpscRd3WS8T6DKYK4ephgIH9iRh3w==}
+
+ '@floating-ui/utils@0.2.9':
+ resolution: {integrity: sha512-MDWhGtE+eHw5JW7lq4qhc5yRLS11ERl1c7Z6Xd0a58DozHES6EnNNwUWbMiG4J9Cgj053Bhk8zvlhFYKVhULwg==}
+
+ '@humanfs/core@0.19.1':
+ resolution: {integrity: sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==}
+ engines: {node: '>=18.18.0'}
+
+ '@humanfs/node@0.16.6':
+ resolution: {integrity: sha512-YuI2ZHQL78Q5HbhDiBA1X4LmYdXCKCMQIfw0pw7piHJwyREFebJUvrQN4cMssyES6x+vfUbx1CIpaQUKYdQZOw==}
+ engines: {node: '>=18.18.0'}
+
+ '@humanwhocodes/module-importer@1.0.1':
+ resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==}
+ engines: {node: '>=12.22'}
+
+ '@humanwhocodes/retry@0.3.1':
+ resolution: {integrity: sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==}
+ engines: {node: '>=18.18'}
+
+ '@humanwhocodes/retry@0.4.2':
+ resolution: {integrity: sha512-xeO57FpIu4p1Ri3Jq/EXq4ClRm86dVF2z/+kvFnyqVYRavTZmaFaUBbWCOuuTh0o/g7DSsk6kc2vrS4Vl5oPOQ==}
+ engines: {node: '>=18.18'}
+
+ '@jridgewell/gen-mapping@0.3.8':
+ resolution: {integrity: sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==}
+ engines: {node: '>=6.0.0'}
+
+ '@jridgewell/resolve-uri@3.1.2':
+ resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==}
+ engines: {node: '>=6.0.0'}
+
+ '@jridgewell/set-array@1.2.1':
+ resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==}
+ engines: {node: '>=6.0.0'}
+
+ '@jridgewell/sourcemap-codec@1.5.0':
+ resolution: {integrity: sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==}
+
+ '@jridgewell/trace-mapping@0.3.25':
+ resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==}
+
+ '@nodelib/fs.scandir@2.1.5':
+ resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==}
+ engines: {node: '>= 8'}
+
+ '@nodelib/fs.stat@2.0.5':
+ resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==}
+ engines: {node: '>= 8'}
+
+ '@nodelib/fs.walk@1.2.8':
+ resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==}
+ engines: {node: '>= 8'}
+
+ '@pkgr/core@0.1.1':
+ resolution: {integrity: sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA==}
+ engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0}
+
+ '@polka/url@1.0.0-next.28':
+ resolution: {integrity: sha512-8LduaNlMZGwdZ6qWrKlfa+2M4gahzFkprZiAt2TF8uS0qQgBizKXpXURqvTJ4WtmupWxaLqjRb2UCTe72mu+Aw==}
+
+ '@rollup/pluginutils@5.1.4':
+ resolution: {integrity: sha512-USm05zrsFxYLPdWWq+K3STlWiT/3ELn3RcV5hJMghpeAIhxfsUIg6mt12CBJBInWMV4VneoV7SfGv8xIwo2qNQ==}
+ engines: {node: '>=14.0.0'}
+ peerDependencies:
+ rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0
+ peerDependenciesMeta:
+ rollup:
+ optional: true
+
+ '@rollup/rollup-android-arm-eabi@4.35.0':
+ resolution: {integrity: sha512-uYQ2WfPaqz5QtVgMxfN6NpLD+no0MYHDBywl7itPYd3K5TjjSghNKmX8ic9S8NU8w81NVhJv/XojcHptRly7qQ==}
+ cpu: [arm]
+ os: [android]
+
+ '@rollup/rollup-android-arm64@4.35.0':
+ resolution: {integrity: sha512-FtKddj9XZudurLhdJnBl9fl6BwCJ3ky8riCXjEw3/UIbjmIY58ppWwPEvU3fNu+W7FUsAsB1CdH+7EQE6CXAPA==}
+ cpu: [arm64]
+ os: [android]
+
+ '@rollup/rollup-darwin-arm64@4.35.0':
+ resolution: {integrity: sha512-Uk+GjOJR6CY844/q6r5DR/6lkPFOw0hjfOIzVx22THJXMxktXG6CbejseJFznU8vHcEBLpiXKY3/6xc+cBm65Q==}
+ cpu: [arm64]
+ os: [darwin]
+
+ '@rollup/rollup-darwin-x64@4.35.0':
+ resolution: {integrity: sha512-3IrHjfAS6Vkp+5bISNQnPogRAW5GAV1n+bNCrDwXmfMHbPl5EhTmWtfmwlJxFRUCBZ+tZ/OxDyU08aF6NI/N5Q==}
+ cpu: [x64]
+ os: [darwin]
+
+ '@rollup/rollup-freebsd-arm64@4.35.0':
+ resolution: {integrity: sha512-sxjoD/6F9cDLSELuLNnY0fOrM9WA0KrM0vWm57XhrIMf5FGiN8D0l7fn+bpUeBSU7dCgPV2oX4zHAsAXyHFGcQ==}
+ cpu: [arm64]
+ os: [freebsd]
+
+ '@rollup/rollup-freebsd-x64@4.35.0':
+ resolution: {integrity: sha512-2mpHCeRuD1u/2kruUiHSsnjWtHjqVbzhBkNVQ1aVD63CcexKVcQGwJ2g5VphOd84GvxfSvnnlEyBtQCE5hxVVw==}
+ cpu: [x64]
+ os: [freebsd]
+
+ '@rollup/rollup-linux-arm-gnueabihf@4.35.0':
+ resolution: {integrity: sha512-mrA0v3QMy6ZSvEuLs0dMxcO2LnaCONs1Z73GUDBHWbY8tFFocM6yl7YyMu7rz4zS81NDSqhrUuolyZXGi8TEqg==}
+ cpu: [arm]
+ os: [linux]
+ libc: [glibc]
+
+ '@rollup/rollup-linux-arm-musleabihf@4.35.0':
+ resolution: {integrity: sha512-DnYhhzcvTAKNexIql8pFajr0PiDGrIsBYPRvCKlA5ixSS3uwo/CWNZxB09jhIapEIg945KOzcYEAGGSmTSpk7A==}
+ cpu: [arm]
+ os: [linux]
+ libc: [musl]
+
+ '@rollup/rollup-linux-arm64-gnu@4.35.0':
+ resolution: {integrity: sha512-uagpnH2M2g2b5iLsCTZ35CL1FgyuzzJQ8L9VtlJ+FckBXroTwNOaD0z0/UF+k5K3aNQjbm8LIVpxykUOQt1m/A==}
+ cpu: [arm64]
+ os: [linux]
+ libc: [glibc]
+
+ '@rollup/rollup-linux-arm64-musl@4.35.0':
+ resolution: {integrity: sha512-XQxVOCd6VJeHQA/7YcqyV0/88N6ysSVzRjJ9I9UA/xXpEsjvAgDTgH3wQYz5bmr7SPtVK2TsP2fQ2N9L4ukoUg==}
+ cpu: [arm64]
+ os: [linux]
+ libc: [musl]
+
+ '@rollup/rollup-linux-loongarch64-gnu@4.35.0':
+ resolution: {integrity: sha512-5pMT5PzfgwcXEwOaSrqVsz/LvjDZt+vQ8RT/70yhPU06PTuq8WaHhfT1LW+cdD7mW6i/J5/XIkX/1tCAkh1W6g==}
+ cpu: [loong64]
+ os: [linux]
+ libc: [glibc]
+
+ '@rollup/rollup-linux-powerpc64le-gnu@4.35.0':
+ resolution: {integrity: sha512-c+zkcvbhbXF98f4CtEIP1EBA/lCic5xB0lToneZYvMeKu5Kamq3O8gqrxiYYLzlZH6E3Aq+TSW86E4ay8iD8EA==}
+ cpu: [ppc64]
+ os: [linux]
+ libc: [glibc]
+
+ '@rollup/rollup-linux-riscv64-gnu@4.35.0':
+ resolution: {integrity: sha512-s91fuAHdOwH/Tad2tzTtPX7UZyytHIRR6V4+2IGlV0Cej5rkG0R61SX4l4y9sh0JBibMiploZx3oHKPnQBKe4g==}
+ cpu: [riscv64]
+ os: [linux]
+ libc: [glibc]
+
+ '@rollup/rollup-linux-s390x-gnu@4.35.0':
+ resolution: {integrity: sha512-hQRkPQPLYJZYGP+Hj4fR9dDBMIM7zrzJDWFEMPdTnTy95Ljnv0/4w/ixFw3pTBMEuuEuoqtBINYND4M7ujcuQw==}
+ cpu: [s390x]
+ os: [linux]
+ libc: [glibc]
+
+ '@rollup/rollup-linux-x64-gnu@4.35.0':
+ resolution: {integrity: sha512-Pim1T8rXOri+0HmV4CdKSGrqcBWX0d1HoPnQ0uw0bdp1aP5SdQVNBy8LjYncvnLgu3fnnCt17xjWGd4cqh8/hA==}
+ cpu: [x64]
+ os: [linux]
+ libc: [glibc]
+
+ '@rollup/rollup-linux-x64-musl@4.35.0':
+ resolution: {integrity: sha512-QysqXzYiDvQWfUiTm8XmJNO2zm9yC9P/2Gkrwg2dH9cxotQzunBHYr6jk4SujCTqnfGxduOmQcI7c2ryuW8XVg==}
+ cpu: [x64]
+ os: [linux]
+ libc: [musl]
+
+ '@rollup/rollup-win32-arm64-msvc@4.35.0':
+ resolution: {integrity: sha512-OUOlGqPkVJCdJETKOCEf1mw848ZyJ5w50/rZ/3IBQVdLfR5jk/6Sr5m3iO2tdPgwo0x7VcncYuOvMhBWZq8ayg==}
+ cpu: [arm64]
+ os: [win32]
+
+ '@rollup/rollup-win32-ia32-msvc@4.35.0':
+ resolution: {integrity: sha512-2/lsgejMrtwQe44glq7AFFHLfJBPafpsTa6JvP2NGef/ifOa4KBoglVf7AKN7EV9o32evBPRqfg96fEHzWo5kw==}
+ cpu: [ia32]
+ os: [win32]
+
+ '@rollup/rollup-win32-x64-msvc@4.35.0':
+ resolution: {integrity: sha512-PIQeY5XDkrOysbQblSW7v3l1MDZzkTEzAfTPkj5VAu3FW8fS4ynyLg2sINp0fp3SjZ8xkRYpLqoKcYqAkhU1dw==}
+ cpu: [x64]
+ os: [win32]
+
+ '@sec-ant/readable-stream@0.4.1':
+ resolution: {integrity: sha512-831qok9r2t8AlxLko40y2ebgSDhenenCatLVeW/uBtnHPyhHOvG0C7TvfgecV+wHzIm5KUICgzmVpWS+IMEAeg==}
+
+ '@sindresorhus/merge-streams@4.0.0':
+ resolution: {integrity: sha512-tlqY9xq5ukxTUZBmoOp+m61cqwQD5pHJtFY3Mn8CA8ps6yghLH/Hw8UPdqg4OLmFW3IFlcXnQNmo/dh8HzXYIQ==}
+ engines: {node: '>=18'}
+
+ '@sxzz/popperjs-es@2.11.7':
+ resolution: {integrity: sha512-Ccy0NlLkzr0Ex2FKvh2X+OyERHXJ88XJ1MXtsI9y9fGexlaXaVTPzBCRBwIxFkORuOb+uBqeu+RqnpgYTEZRUQ==}
+
+ '@tsconfig/node22@22.0.0':
+ resolution: {integrity: sha512-twLQ77zevtxobBOD4ToAtVmuYrpeYUh3qh+TEp+08IWhpsrIflVHqQ1F1CiPxQGL7doCdBIOOCF+1Tm833faNg==}
+
+ '@types/estree@1.0.6':
+ resolution: {integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==}
+
+ '@types/json-schema@7.0.15':
+ resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==}
+
+ '@types/lodash-es@4.17.12':
+ resolution: {integrity: sha512-0NgftHUcV4v34VhXm8QBSftKVXtbkBG3ViCjs6+eJ5a6y6Mi/jiFGPc1sC7QK+9BFhWrURE3EOggmWaSxL9OzQ==}
+
+ '@types/lodash@4.17.16':
+ resolution: {integrity: sha512-HX7Em5NYQAXKW+1T+FiuG27NGwzJfCX3s1GjOa7ujxZa52kjJLOr4FUxT+giF6Tgxv1e+/czV/iTtBw27WTU9g==}
+
+ '@types/node@22.13.10':
+ resolution: {integrity: sha512-I6LPUvlRH+O6VRUqYOcMudhaIdUVWfsjnZavnsraHvpBwaEyMN29ry+0UVJhImYL16xsscu0aske3yA+uPOWfw==}
+
+ '@types/nprogress@0.2.3':
+ resolution: {integrity: sha512-k7kRA033QNtC+gLc4VPlfnue58CM1iQLgn1IMAU8VPHGOj7oIHPp9UlhedEnD/Gl8evoCjwkZjlBORtZ3JByUA==}
+
+ '@types/qs@6.9.18':
+ resolution: {integrity: sha512-kK7dgTYDyGqS+e2Q4aK9X3D7q234CIZ1Bv0q/7Z5IwRDoADNU81xXJK/YVyLbLTZCoIwUoDoffFeF+p/eIklAA==}
+
+ '@types/web-bluetooth@0.0.16':
+ resolution: {integrity: sha512-oh8q2Zc32S6gd/j50GowEjKLoOVOwHP/bWVjKJInBwQqdOYMdPrf1oVlelTlyfFK3CKxL1uahMDAr+vy8T7yMQ==}
+
+ '@typescript-eslint/eslint-plugin@8.26.1':
+ resolution: {integrity: sha512-2X3mwqsj9Bd3Ciz508ZUtoQQYpOhU/kWoUqIf49H8Z0+Vbh6UF/y0OEYp0Q0axOGzaBGs7QxRwq0knSQ8khQNA==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ '@typescript-eslint/parser': ^8.0.0 || ^8.0.0-alpha.0
+ eslint: ^8.57.0 || ^9.0.0
+ typescript: '>=4.8.4 <5.9.0'
+
+ '@typescript-eslint/parser@8.26.1':
+ resolution: {integrity: sha512-w6HZUV4NWxqd8BdeFf81t07d7/YV9s7TCWrQQbG5uhuvGUAW+fq1usZ1Hmz9UPNLniFnD8GLSsDpjP0hm1S4lQ==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ eslint: ^8.57.0 || ^9.0.0
+ typescript: '>=4.8.4 <5.9.0'
+
+ '@typescript-eslint/scope-manager@8.26.1':
+ resolution: {integrity: sha512-6EIvbE5cNER8sqBu6V7+KeMZIC1664d2Yjt+B9EWUXrsyWpxx4lEZrmvxgSKRC6gX+efDL/UY9OpPZ267io3mg==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
+ '@typescript-eslint/type-utils@8.26.1':
+ resolution: {integrity: sha512-Kcj/TagJLwoY/5w9JGEFV0dclQdyqw9+VMndxOJKtoFSjfZhLXhYjzsQEeyza03rwHx2vFEGvrJWJBXKleRvZg==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ eslint: ^8.57.0 || ^9.0.0
+ typescript: '>=4.8.4 <5.9.0'
+
+ '@typescript-eslint/types@8.26.1':
+ resolution: {integrity: sha512-n4THUQW27VmQMx+3P+B0Yptl7ydfceUj4ON/AQILAASwgYdZ/2dhfymRMh5egRUrvK5lSmaOm77Ry+lmXPOgBQ==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
+ '@typescript-eslint/typescript-estree@8.26.1':
+ resolution: {integrity: sha512-yUwPpUHDgdrv1QJ7YQal3cMVBGWfnuCdKbXw1yyjArax3353rEJP1ZA+4F8nOlQ3RfS2hUN/wze3nlY+ZOhvoA==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ typescript: '>=4.8.4 <5.9.0'
+
+ '@typescript-eslint/utils@8.26.1':
+ resolution: {integrity: sha512-V4Urxa/XtSUroUrnI7q6yUTD3hDtfJ2jzVfeT3VK0ciizfK2q/zGC0iDh1lFMUZR8cImRrep6/q0xd/1ZGPQpg==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ eslint: ^8.57.0 || ^9.0.0
+ typescript: '>=4.8.4 <5.9.0'
+
+ '@typescript-eslint/visitor-keys@8.26.1':
+ resolution: {integrity: sha512-AjOC3zfnxd6S4Eiy3jwktJPclqhFHNyd8L6Gycf9WUPoKZpgM5PjkxY1X7uSy61xVpiJDhhk7XT2NVsN3ALTWg==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
+ '@vitejs/plugin-vue-jsx@4.1.2':
+ resolution: {integrity: sha512-4Rk0GdE0QCdsIkuMmWeg11gmM4x8UmTnZR/LWPm7QJ7+BsK4tq08udrN0isrrWqz5heFy9HLV/7bOLgFS8hUjA==}
+ engines: {node: ^18.0.0 || >=20.0.0}
+ peerDependencies:
+ vite: ^5.0.0 || ^6.0.0
+ vue: ^3.0.0
+
+ '@vitejs/plugin-vue@5.2.2':
+ resolution: {integrity: sha512-IY0aPonWZI2huxrWjoSBUQX14GThitmr1sc2OUJymcgnY5RlUI7HoXGAnFEoVNRsck/kS6inGvxCN6CoHu86yQ==}
+ engines: {node: ^18.0.0 || >=20.0.0}
+ peerDependencies:
+ vite: ^5.0.0 || ^6.0.0
+ vue: ^3.2.25
+
+ '@volar/language-core@2.4.12':
+ resolution: {integrity: sha512-RLrFdXEaQBWfSnYGVxvR2WrO6Bub0unkdHYIdC31HzIEqATIuuhRRzYu76iGPZ6OtA4Au1SnW0ZwIqPP217YhA==}
+
+ '@volar/source-map@2.4.12':
+ resolution: {integrity: sha512-bUFIKvn2U0AWojOaqf63ER0N/iHIBYZPpNGogfLPQ68F5Eet6FnLlyho7BS0y2HJ1jFhSif7AcuTx1TqsCzRzw==}
+
+ '@volar/typescript@2.4.12':
+ resolution: {integrity: sha512-HJB73OTJDgPc80K30wxi3if4fSsZZAOScbj2fcicMuOPoOkcf9NNAINb33o+DzhBdF9xTKC1gnPmIRDous5S0g==}
+
+ '@vue/babel-helper-vue-transform-on@1.4.0':
+ resolution: {integrity: sha512-mCokbouEQ/ocRce/FpKCRItGo+013tHg7tixg3DUNS+6bmIchPt66012kBMm476vyEIJPafrvOf4E5OYj3shSw==}
+
+ '@vue/babel-plugin-jsx@1.4.0':
+ resolution: {integrity: sha512-9zAHmwgMWlaN6qRKdrg1uKsBKHvnUU+Py+MOCTuYZBoZsopa90Di10QRjB+YPnVss0BZbG/H5XFwJY1fTxJWhA==}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+ peerDependenciesMeta:
+ '@babel/core':
+ optional: true
+
+ '@vue/babel-plugin-resolve-type@1.4.0':
+ resolution: {integrity: sha512-4xqDRRbQQEWHQyjlYSgZsWj44KfiF6D+ktCuXyZ8EnVDYV3pztmXJDf1HveAjUAXxAnR8daCQT51RneWWxtTyQ==}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@vue/compiler-core@3.5.13':
+ resolution: {integrity: sha512-oOdAkwqUfW1WqpwSYJce06wvt6HljgY3fGeM9NcVA1HaYOij3mZG9Rkysn0OHuyUAGMbEbARIpsG+LPVlBJ5/Q==}
+
+ '@vue/compiler-dom@3.5.13':
+ resolution: {integrity: sha512-ZOJ46sMOKUjO3e94wPdCzQ6P1Lx/vhp2RSvfaab88Ajexs0AHeV0uasYhi99WPaogmBlRHNRuly8xV75cNTMDA==}
+
+ '@vue/compiler-sfc@3.5.13':
+ resolution: {integrity: sha512-6VdaljMpD82w6c2749Zhf5T9u5uLBWKnVue6XWxprDobftnletJ8+oel7sexFfM3qIxNmVE7LSFGTpv6obNyaQ==}
+
+ '@vue/compiler-ssr@3.5.13':
+ resolution: {integrity: sha512-wMH6vrYHxQl/IybKJagqbquvxpWCuVYpoUJfCqFZwa/JY1GdATAQ+TgVtgrwwMZ0D07QhA99rs/EAAWfvG6KpA==}
+
+ '@vue/compiler-vue2@2.7.16':
+ resolution: {integrity: sha512-qYC3Psj9S/mfu9uVi5WvNZIzq+xnXMhOwbTFKKDD7b1lhpnn71jXSFdTQ+WsIEk0ONCd7VV2IMm7ONl6tbQ86A==}
+
+ '@vue/devtools-api@6.6.4':
+ resolution: {integrity: sha512-sGhTPMuXqZ1rVOk32RylztWkfXTRhuS7vgAKv0zjqk8gbsHkJ7xfFf+jbySxt7tWObEJwyKaHMikV/WGDiQm8g==}
+
+ '@vue/devtools-api@7.7.2':
+ resolution: {integrity: sha512-1syn558KhyN+chO5SjlZIwJ8bV/bQ1nOVTG66t2RbG66ZGekyiYNmRO7X9BJCXQqPsFHlnksqvPhce2qpzxFnA==}
+
+ '@vue/devtools-core@7.7.2':
+ resolution: {integrity: sha512-lexREWj1lKi91Tblr38ntSsy6CvI8ba7u+jmwh2yruib/ltLUcsIzEjCnrkh1yYGGIKXbAuYV2tOG10fGDB9OQ==}
+ peerDependencies:
+ vue: ^3.0.0
+
+ '@vue/devtools-kit@7.7.2':
+ resolution: {integrity: sha512-CY0I1JH3Z8PECbn6k3TqM1Bk9ASWxeMtTCvZr7vb+CHi+X/QwQm5F1/fPagraamKMAHVfuuCbdcnNg1A4CYVWQ==}
+
+ '@vue/devtools-shared@7.7.2':
+ resolution: {integrity: sha512-uBFxnp8gwW2vD6FrJB8JZLUzVb6PNRG0B0jBnHsOH8uKyva2qINY8PTF5Te4QlTbMDqU5K6qtJDr6cNsKWhbOA==}
+
+ '@vue/eslint-config-prettier@10.2.0':
+ resolution: {integrity: sha512-GL3YBLwv/+b86yHcNNfPJxOTtVFJ4Mbc9UU3zR+KVoG7SwGTjPT+32fXamscNumElhcpXW3mT0DgzS9w32S7Bw==}
+ peerDependencies:
+ eslint: '>= 8.21.0'
+ prettier: '>= 3.0.0'
+
+ '@vue/eslint-config-typescript@14.5.0':
+ resolution: {integrity: sha512-5oPOyuwkw++AP5gHDh5YFmST50dPfWOcm3/W7Nbh42IK5O3H74ytWAw0TrCRTaBoD/02khnWXuZf1Bz1xflavQ==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ eslint: ^9.10.0
+ eslint-plugin-vue: ^9.28.0 || ^10.0.0
+ typescript: '>=4.8.4'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@vue/language-core@2.2.8':
+ resolution: {integrity: sha512-rrzB0wPGBvcwaSNRriVWdNAbHQWSf0NlGqgKHK5mEkXpefjUlVRP62u03KvwZpvKVjRnBIQ/Lwre+Mx9N6juUQ==}
+ peerDependencies:
+ typescript: '*'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@vue/reactivity@3.5.13':
+ resolution: {integrity: sha512-NaCwtw8o48B9I6L1zl2p41OHo/2Z4wqYGGIK1Khu5T7yxrn+ATOixn/Udn2m+6kZKB/J7cuT9DbWWhRxqixACg==}
+
+ '@vue/runtime-core@3.5.13':
+ resolution: {integrity: sha512-Fj4YRQ3Az0WTZw1sFe+QDb0aXCerigEpw418pw1HBUKFtnQHWzwojaukAs2X/c9DQz4MQ4bsXTGlcpGxU/RCIw==}
+
+ '@vue/runtime-dom@3.5.13':
+ resolution: {integrity: sha512-dLaj94s93NYLqjLiyFzVs9X6dWhTdAlEAciC3Moq7gzAc13VJUdCnjjRurNM6uTLFATRHexHCTu/Xp3eW6yoog==}
+
+ '@vue/server-renderer@3.5.13':
+ resolution: {integrity: sha512-wAi4IRJV/2SAW3htkTlB+dHeRmpTiVIK1OGLWV1yeStVSebSQQOwGwIq0D3ZIoBj2C2qpgz5+vX9iEBkTdk5YA==}
+ peerDependencies:
+ vue: 3.5.13
+
+ '@vue/shared@3.5.13':
+ resolution: {integrity: sha512-/hnE/qP5ZoGpol0a5mDi45bOd7t3tjYJBjsgCsivow7D48cJeV5l05RD82lPqi7gRiphZM37rnhW1l6ZoCNNnQ==}
+
+ '@vue/tsconfig@0.7.0':
+ resolution: {integrity: sha512-ku2uNz5MaZ9IerPPUyOHzyjhXoX2kVJaVf7hL315DC17vS6IiZRmmCPfggNbU16QTvM80+uYYy3eYJB59WCtvg==}
+ peerDependencies:
+ typescript: 5.x
+ vue: ^3.4.0
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+ vue:
+ optional: true
+
+ '@vueuse/core@9.13.0':
+ resolution: {integrity: sha512-pujnclbeHWxxPRqXWmdkKV5OX4Wk4YeK7wusHqRwU0Q7EFusHoqNA/aPhB6KCh9hEqJkLAJo7bb0Lh9b+OIVzw==}
+
+ '@vueuse/metadata@9.13.0':
+ resolution: {integrity: sha512-gdU7TKNAUVlXXLbaF+ZCfte8BjRJQWPCa2J55+7/h+yDtzw3vOoGQDRXzI6pyKyo6bXFT5/QoPE4hAknExjRLQ==}
+
+ '@vueuse/shared@9.13.0':
+ resolution: {integrity: sha512-UrnhU+Cnufu4S6JLCPZnkWh0WwZGUp72ktOF2DFptMlOs3TOdVv8xJN53zhHGARmVOsz5KqOls09+J1NR6sBKw==}
+
+ acorn-jsx@5.3.2:
+ resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==}
+ peerDependencies:
+ acorn: ^6.0.0 || ^7.0.0 || ^8.0.0
+
+ acorn@8.14.1:
+ resolution: {integrity: sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg==}
+ engines: {node: '>=0.4.0'}
+ hasBin: true
+
+ ajv@6.12.6:
+ resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==}
+
+ alien-signals@1.0.4:
+ resolution: {integrity: sha512-DJqqQD3XcsaQcQ1s+iE2jDUZmmQpXwHiR6fCAim/w87luaW+vmLY8fMlrdkmRwzaFXhkxf3rqPCR59tKVv1MDw==}
+
+ ansi-styles@4.3.0:
+ resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==}
+ engines: {node: '>=8'}
+
+ ansi-styles@6.2.1:
+ resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==}
+ engines: {node: '>=12'}
+
+ argparse@2.0.1:
+ resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==}
+
+ async-validator@4.2.5:
+ resolution: {integrity: sha512-7HhHjtERjqlNbZtqNqy2rckN/SpOOlmDliet+lP7k+eKZEjPk3DgyeU9lIXLdeLz0uBbbVp+9Qdow9wJWgwwfg==}
+
+ asynckit@0.4.0:
+ resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==}
+
+ axios@1.8.3:
+ resolution: {integrity: sha512-iP4DebzoNlP/YN2dpwCgb8zoCmhtkajzS48JvwmkSkXvPI3DHc7m+XYL5tGnSlJtR6nImXZmdCuN5aP8dh1d8A==}
+
+ balanced-match@1.0.2:
+ resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
+
+ birpc@0.2.19:
+ resolution: {integrity: sha512-5WeXXAvTmitV1RqJFppT5QtUiz2p1mRSYU000Jkft5ZUCLJIk4uQriYNO50HknxKwM6jd8utNc66K1qGIwwWBQ==}
+
+ boolbase@1.0.0:
+ resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==}
+
+ brace-expansion@1.1.11:
+ resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==}
+
+ brace-expansion@2.0.1:
+ resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==}
+
+ braces@3.0.3:
+ resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==}
+ engines: {node: '>=8'}
+
+ browserslist@4.24.4:
+ resolution: {integrity: sha512-KDi1Ny1gSePi1vm0q4oxSF8b4DR44GF4BbmS2YdhPLOEqd8pDviZOGH/GsmRwoWJ2+5Lr085X7naowMwKHDG1A==}
+ engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
+ hasBin: true
+
+ bundle-name@4.1.0:
+ resolution: {integrity: sha512-tjwM5exMg6BGRI+kNmTntNsvdZS1X8BFYS6tnJ2hdH0kVxM6/eVZ2xy+FqStSWvYmtfFMDLIxurorHwDKfDz5Q==}
+ engines: {node: '>=18'}
+
+ call-bind-apply-helpers@1.0.2:
+ resolution: {integrity: sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==}
+ engines: {node: '>= 0.4'}
+
+ call-bound@1.0.4:
+ resolution: {integrity: sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==}
+ engines: {node: '>= 0.4'}
+
+ callsites@3.1.0:
+ resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==}
+ engines: {node: '>=6'}
+
+ caniuse-lite@1.0.30001705:
+ resolution: {integrity: sha512-S0uyMMiYvA7CxNgomYBwwwPUnWzFD83f3B1ce5jHUfHTH//QL6hHsreI8RVC5606R4ssqravelYO5TU6t8sEyg==}
+
+ chalk@4.1.2:
+ resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==}
+ engines: {node: '>=10'}
+
+ color-convert@2.0.1:
+ resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==}
+ engines: {node: '>=7.0.0'}
+
+ color-name@1.1.4:
+ resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==}
+
+ combined-stream@1.0.8:
+ resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==}
+ engines: {node: '>= 0.8'}
+
+ concat-map@0.0.1:
+ resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==}
+
+ convert-source-map@2.0.0:
+ resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==}
+
+ copy-anything@3.0.5:
+ resolution: {integrity: sha512-yCEafptTtb4bk7GLEQoM8KVJpxAfdBJYaXyzQEgQQQgYrZiDp8SJmGKlYza6CYjEDNstAdNdKA3UuoULlEbS6w==}
+ engines: {node: '>=12.13'}
+
+ cross-spawn@7.0.6:
+ resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==}
+ engines: {node: '>= 8'}
+
+ cssesc@3.0.0:
+ resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==}
+ engines: {node: '>=4'}
+ hasBin: true
+
+ csstype@3.1.3:
+ resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==}
+
+ dayjs@1.11.13:
+ resolution: {integrity: sha512-oaMBel6gjolK862uaPQOVTA7q3TZhuSvuMQAAglQDOWYO9A91IrAOUJEyKVlqJlHE0vq5p5UXxzdPfMH/x6xNg==}
+
+ de-indent@1.0.2:
+ resolution: {integrity: sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==}
+
+ debug@4.4.0:
+ resolution: {integrity: sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==}
+ engines: {node: '>=6.0'}
+ peerDependencies:
+ supports-color: '*'
+ peerDependenciesMeta:
+ supports-color:
+ optional: true
+
+ deep-is@0.1.4:
+ resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==}
+
+ default-browser-id@5.0.0:
+ resolution: {integrity: sha512-A6p/pu/6fyBcA1TRz/GqWYPViplrftcW2gZC9q79ngNCKAeR/X3gcEdXQHl4KNXV+3wgIJ1CPkJQ3IHM6lcsyA==}
+ engines: {node: '>=18'}
+
+ default-browser@5.2.1:
+ resolution: {integrity: sha512-WY/3TUME0x3KPYdRRxEJJvXRHV4PyPoUsxtZa78lwItwRQRHhd2U9xOscaT/YTf8uCXIAjeJOFBVEh/7FtD8Xg==}
+ engines: {node: '>=18'}
+
+ define-lazy-prop@3.0.0:
+ resolution: {integrity: sha512-N+MeXYoqr3pOgn8xfyRPREN7gHakLYjhsHhWGT3fWAiL4IkAt0iDw14QiiEm2bE30c5XX5q0FtAA3CK5f9/BUg==}
+ engines: {node: '>=12'}
+
+ delayed-stream@1.0.0:
+ resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==}
+ engines: {node: '>=0.4.0'}
+
+ dunder-proto@1.0.1:
+ resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==}
+ engines: {node: '>= 0.4'}
+
+ electron-to-chromium@1.5.119:
+ resolution: {integrity: sha512-Ku4NMzUjz3e3Vweh7PhApPrZSS4fyiCIbcIrG9eKrriYVLmbMepETR/v6SU7xPm98QTqMSYiCwfO89QNjXLkbQ==}
+
+ element-plus@2.9.6:
+ resolution: {integrity: sha512-D9zU28Ce0s/9O/Vp3ewemikxzFVA6gdZyMwmWijHijo+t5/9H3sHRTIm1WlfeNpFW2Yq0y8nHXD0fU5YxU6qlQ==}
+ peerDependencies:
+ vue: ^3.2.0
+
+ entities@4.5.0:
+ resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==}
+ engines: {node: '>=0.12'}
+
+ error-stack-parser-es@0.1.5:
+ resolution: {integrity: sha512-xHku1X40RO+fO8yJ8Wh2f2rZWVjqyhb1zgq1yZ8aZRQkv6OOKhKWRUaht3eSCUbAOBaKIgM+ykwFLE+QUxgGeg==}
+
+ es-define-property@1.0.1:
+ resolution: {integrity: sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==}
+ engines: {node: '>= 0.4'}
+
+ es-errors@1.3.0:
+ resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==}
+ engines: {node: '>= 0.4'}
+
+ es-object-atoms@1.1.1:
+ resolution: {integrity: sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==}
+ engines: {node: '>= 0.4'}
+
+ es-set-tostringtag@2.1.0:
+ resolution: {integrity: sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==}
+ engines: {node: '>= 0.4'}
+
+ esbuild@0.25.1:
+ resolution: {integrity: sha512-BGO5LtrGC7vxnqucAe/rmvKdJllfGaYWdyABvyMoXQlfYMb2bbRuReWR5tEGE//4LcNJj9XrkovTqNYRFZHAMQ==}
+ engines: {node: '>=18'}
+ hasBin: true
+
+ escalade@3.2.0:
+ resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==}
+ engines: {node: '>=6'}
+
+ escape-html@1.0.3:
+ resolution: {integrity: sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==}
+
+ escape-string-regexp@4.0.0:
+ resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==}
+ engines: {node: '>=10'}
+
+ eslint-config-prettier@10.1.1:
+ resolution: {integrity: sha512-4EQQr6wXwS+ZJSzaR5ZCrYgLxqvUjdXctaEtBqHcbkW944B1NQyO4qpdHQbXBONfwxXdkAY81HH4+LUfrg+zPw==}
+ hasBin: true
+ peerDependencies:
+ eslint: '>=7.0.0'
+
+ eslint-plugin-prettier@5.2.3:
+ resolution: {integrity: sha512-qJ+y0FfCp/mQYQ/vWQ3s7eUlFEL4PyKfAJxsnYTJ4YT73nsJBWqmEpFryxV9OeUiqmsTsYJ5Y+KDNaeP31wrRw==}
+ engines: {node: ^14.18.0 || >=16.0.0}
+ peerDependencies:
+ '@types/eslint': '>=8.0.0'
+ eslint: '>=8.0.0'
+ eslint-config-prettier: '*'
+ prettier: '>=3.0.0'
+ peerDependenciesMeta:
+ '@types/eslint':
+ optional: true
+ eslint-config-prettier:
+ optional: true
+
+ eslint-plugin-vue@10.0.0:
+ resolution: {integrity: sha512-XKckedtajqwmaX6u1VnECmZ6xJt+YvlmMzBPZd+/sI3ub2lpYZyFnsyWo7c3nMOQKJQudeyk1lw/JxdgeKT64w==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ eslint: ^8.57.0 || ^9.0.0
+ vue-eslint-parser: ^10.0.0
+
+ eslint-scope@8.3.0:
+ resolution: {integrity: sha512-pUNxi75F8MJ/GdeKtVLSbYg4ZI34J6C0C7sbL4YOp2exGwen7ZsuBqKzUhXd0qMQ362yET3z+uPwKeg/0C2XCQ==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
+ eslint-visitor-keys@3.4.3:
+ resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+
+ eslint-visitor-keys@4.2.0:
+ resolution: {integrity: sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
+ eslint@9.22.0:
+ resolution: {integrity: sha512-9V/QURhsRN40xuHXWjV64yvrzMjcz7ZyNoF2jJFmy9j/SLk0u1OLSZgXi28MrXjymnjEGSR80WCdab3RGMDveQ==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ hasBin: true
+ peerDependencies:
+ jiti: '*'
+ peerDependenciesMeta:
+ jiti:
+ optional: true
+
+ espree@10.3.0:
+ resolution: {integrity: sha512-0QYC8b24HWY8zjRnDTL6RiHfDbAWn63qb4LMj1Z4b076A4une81+z03Kg7l7mn/48PUTqoLptSXez8oknU8Clg==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
+ esquery@1.6.0:
+ resolution: {integrity: sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==}
+ engines: {node: '>=0.10'}
+
+ esrecurse@4.3.0:
+ resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==}
+ engines: {node: '>=4.0'}
+
+ estraverse@5.3.0:
+ resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==}
+ engines: {node: '>=4.0'}
+
+ estree-walker@2.0.2:
+ resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==}
+
+ esutils@2.0.3:
+ resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==}
+ engines: {node: '>=0.10.0'}
+
+ execa@9.5.2:
+ resolution: {integrity: sha512-EHlpxMCpHWSAh1dgS6bVeoLAXGnJNdR93aabr4QCGbzOM73o5XmRfM/e5FUqsw3aagP8S8XEWUWFAxnRBnAF0Q==}
+ engines: {node: ^18.19.0 || >=20.5.0}
+
+ fast-deep-equal@3.1.3:
+ resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==}
+
+ fast-diff@1.3.0:
+ resolution: {integrity: sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==}
+
+ fast-glob@3.3.3:
+ resolution: {integrity: sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==}
+ engines: {node: '>=8.6.0'}
+
+ fast-json-stable-stringify@2.1.0:
+ resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==}
+
+ fast-levenshtein@2.0.6:
+ resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==}
+
+ fastq@1.19.1:
+ resolution: {integrity: sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==}
+
+ figures@6.1.0:
+ resolution: {integrity: sha512-d+l3qxjSesT4V7v2fh+QnmFnUWv9lSpjarhShNTgBOfA0ttejbQUAlHLitbjkoRiDulW0OPoQPYIGhIC8ohejg==}
+ engines: {node: '>=18'}
+
+ file-entry-cache@8.0.0:
+ resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==}
+ engines: {node: '>=16.0.0'}
+
+ fill-range@7.1.1:
+ resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==}
+ engines: {node: '>=8'}
+
+ find-up@5.0.0:
+ resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==}
+ engines: {node: '>=10'}
+
+ flat-cache@4.0.1:
+ resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==}
+ engines: {node: '>=16'}
+
+ flatted@3.3.3:
+ resolution: {integrity: sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==}
+
+ follow-redirects@1.15.9:
+ resolution: {integrity: sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==}
+ engines: {node: '>=4.0'}
+ peerDependencies:
+ debug: '*'
+ peerDependenciesMeta:
+ debug:
+ optional: true
+
+ form-data@4.0.2:
+ resolution: {integrity: sha512-hGfm/slu0ZabnNt4oaRZ6uREyfCj6P4fT/n6A1rGV+Z0VdGXjfOhVUpkn6qVQONHGIFwmveGXyDs75+nr6FM8w==}
+ engines: {node: '>= 6'}
+
+ fs-extra@11.3.0:
+ resolution: {integrity: sha512-Z4XaCL6dUDHfP/jT25jJKMmtxvuwbkrD1vNSMFlo9lNLY2c5FHYSQgHPRZUjAB26TpDEoW9HCOgplrdbaPV/ew==}
+ engines: {node: '>=14.14'}
+
+ fsevents@2.3.3:
+ resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==}
+ engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
+ os: [darwin]
+
+ function-bind@1.1.2:
+ resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==}
+
+ gensync@1.0.0-beta.2:
+ resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==}
+ engines: {node: '>=6.9.0'}
+
+ get-intrinsic@1.3.0:
+ resolution: {integrity: sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==}
+ engines: {node: '>= 0.4'}
+
+ get-proto@1.0.1:
+ resolution: {integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==}
+ engines: {node: '>= 0.4'}
+
+ get-stream@9.0.1:
+ resolution: {integrity: sha512-kVCxPF3vQM/N0B1PmoqVUqgHP+EeVjmZSQn+1oCRPxd2P21P2F19lIgbR3HBosbB1PUhOAoctJnfEn2GbN2eZA==}
+ engines: {node: '>=18'}
+
+ glob-parent@5.1.2:
+ resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==}
+ engines: {node: '>= 6'}
+
+ glob-parent@6.0.2:
+ resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==}
+ engines: {node: '>=10.13.0'}
+
+ globals@11.12.0:
+ resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==}
+ engines: {node: '>=4'}
+
+ globals@14.0.0:
+ resolution: {integrity: sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==}
+ engines: {node: '>=18'}
+
+ gopd@1.2.0:
+ resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==}
+ engines: {node: '>= 0.4'}
+
+ graceful-fs@4.2.11:
+ resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==}
+
+ graphemer@1.4.0:
+ resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==}
+
+ has-flag@4.0.0:
+ resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==}
+ engines: {node: '>=8'}
+
+ has-symbols@1.1.0:
+ resolution: {integrity: sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==}
+ engines: {node: '>= 0.4'}
+
+ has-tostringtag@1.0.2:
+ resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==}
+ engines: {node: '>= 0.4'}
+
+ hasown@2.0.2:
+ resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==}
+ engines: {node: '>= 0.4'}
+
+ he@1.2.0:
+ resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==}
+ hasBin: true
+
+ hookable@5.5.3:
+ resolution: {integrity: sha512-Yc+BQe8SvoXH1643Qez1zqLRmbA5rCL+sSmk6TVos0LWVfNIB7PGncdlId77WzLGSIB5KaWgTaNTs2lNVEI6VQ==}
+
+ human-signals@8.0.0:
+ resolution: {integrity: sha512-/1/GPCpDUCCYwlERiYjxoczfP0zfvZMU/OWgQPMya9AbAE24vseigFdhAMObpc8Q4lc/kjutPfUddDYyAmejnA==}
+ engines: {node: '>=18.18.0'}
+
+ ignore@5.3.2:
+ resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==}
+ engines: {node: '>= 4'}
+
+ import-fresh@3.3.1:
+ resolution: {integrity: sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==}
+ engines: {node: '>=6'}
+
+ imurmurhash@0.1.4:
+ resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==}
+ engines: {node: '>=0.8.19'}
+
+ is-docker@3.0.0:
+ resolution: {integrity: sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+ hasBin: true
+
+ is-extglob@2.1.1:
+ resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==}
+ engines: {node: '>=0.10.0'}
+
+ is-glob@4.0.3:
+ resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==}
+ engines: {node: '>=0.10.0'}
+
+ is-inside-container@1.0.0:
+ resolution: {integrity: sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==}
+ engines: {node: '>=14.16'}
+ hasBin: true
+
+ is-number@7.0.0:
+ resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==}
+ engines: {node: '>=0.12.0'}
+
+ is-plain-obj@4.1.0:
+ resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==}
+ engines: {node: '>=12'}
+
+ is-stream@4.0.1:
+ resolution: {integrity: sha512-Dnz92NInDqYckGEUJv689RbRiTSEHCQ7wOVeALbkOz999YpqT46yMRIGtSNl2iCL1waAZSx40+h59NV/EwzV/A==}
+ engines: {node: '>=18'}
+
+ is-unicode-supported@2.1.0:
+ resolution: {integrity: sha512-mE00Gnza5EEB3Ds0HfMyllZzbBrmLOX3vfWoj9A9PEnTfratQ/BcaJOuMhnkhjXvb2+FkY3VuHqtAGpTPmglFQ==}
+ engines: {node: '>=18'}
+
+ is-what@4.1.16:
+ resolution: {integrity: sha512-ZhMwEosbFJkA0YhFnNDgTM4ZxDRsS6HqTo7qsZM08fehyRYIYa0yHu5R6mgo1n/8MgaPBXiPimPD77baVFYg+A==}
+ engines: {node: '>=12.13'}
+
+ is-wsl@3.1.0:
+ resolution: {integrity: sha512-UcVfVfaK4Sc4m7X3dUSoHoozQGBEFeDC+zVo06t98xe8CzHSZZBekNXH+tu0NalHolcJ/QAGqS46Hef7QXBIMw==}
+ engines: {node: '>=16'}
+
+ isexe@2.0.0:
+ resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==}
+
+ isexe@3.1.1:
+ resolution: {integrity: sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==}
+ engines: {node: '>=16'}
+
+ jiti@2.4.2:
+ resolution: {integrity: sha512-rg9zJN+G4n2nfJl5MW3BMygZX56zKPNVEYYqq7adpmMh4Jn2QNEwhvQlFy6jPVdcod7txZtKHWnyZiA3a0zP7A==}
+ hasBin: true
+
+ js-tokens@4.0.0:
+ resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==}
+
+ js-yaml@4.1.0:
+ resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==}
+ hasBin: true
+
+ jsesc@3.1.0:
+ resolution: {integrity: sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==}
+ engines: {node: '>=6'}
+ hasBin: true
+
+ json-buffer@3.0.1:
+ resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==}
+
+ json-parse-even-better-errors@4.0.0:
+ resolution: {integrity: sha512-lR4MXjGNgkJc7tkQ97kb2nuEMnNCyU//XYVH0MKTGcXEiSudQ5MKGKen3C5QubYy0vmq+JGitUg92uuywGEwIA==}
+ engines: {node: ^18.17.0 || >=20.5.0}
+
+ json-schema-traverse@0.4.1:
+ resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==}
+
+ json-stable-stringify-without-jsonify@1.0.1:
+ resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==}
+
+ json5@2.2.3:
+ resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==}
+ engines: {node: '>=6'}
+ hasBin: true
+
+ jsonfile@6.1.0:
+ resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==}
+
+ keyv@4.5.4:
+ resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==}
+
+ kolorist@1.8.0:
+ resolution: {integrity: sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ==}
+
+ levn@0.4.1:
+ resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==}
+ engines: {node: '>= 0.8.0'}
+
+ locate-path@6.0.0:
+ resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==}
+ engines: {node: '>=10'}
+
+ lodash-es@4.17.21:
+ resolution: {integrity: sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==}
+
+ lodash-unified@1.0.3:
+ resolution: {integrity: sha512-WK9qSozxXOD7ZJQlpSqOT+om2ZfcT4yO+03FuzAHD0wF6S0l0090LRPDx3vhTTLZ8cFKpBn+IOcVXK6qOcIlfQ==}
+ peerDependencies:
+ '@types/lodash-es': '*'
+ lodash: '*'
+ lodash-es: '*'
+
+ lodash.merge@4.6.2:
+ resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==}
+
+ lodash@4.17.21:
+ resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==}
+
+ lru-cache@5.1.1:
+ resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==}
+
+ magic-string@0.30.17:
+ resolution: {integrity: sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==}
+
+ math-intrinsics@1.1.0:
+ resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==}
+ engines: {node: '>= 0.4'}
+
+ memoize-one@6.0.0:
+ resolution: {integrity: sha512-rkpe71W0N0c0Xz6QD0eJETuWAJGnJ9afsl1srmwPrI+yBCkge5EycXXbYRyvL29zZVUWQCY7InPRCv3GDXuZNw==}
+
+ memorystream@0.3.1:
+ resolution: {integrity: sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==}
+ engines: {node: '>= 0.10.0'}
+
+ merge2@1.4.1:
+ resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==}
+ engines: {node: '>= 8'}
+
+ micromatch@4.0.8:
+ resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==}
+ engines: {node: '>=8.6'}
+
+ mime-db@1.52.0:
+ resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==}
+ engines: {node: '>= 0.6'}
+
+ mime-types@2.1.35:
+ resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==}
+ engines: {node: '>= 0.6'}
+
+ minimatch@3.1.2:
+ resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==}
+
+ minimatch@9.0.5:
+ resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==}
+ engines: {node: '>=16 || 14 >=14.17'}
+
+ mitt@3.0.1:
+ resolution: {integrity: sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==}
+
+ moment@2.30.1:
+ resolution: {integrity: sha512-uEmtNhbDOrWPFS+hdjFCBfy9f2YoyzRpwcl+DqpC6taX21FzsTLQVbMV/W7PzNSX6x/bhC1zA3c2UQ5NzH6how==}
+
+ mrmime@2.0.1:
+ resolution: {integrity: sha512-Y3wQdFg2Va6etvQ5I82yUhGdsKrcYox6p7FfL1LbK2J4V01F9TGlepTIhnK24t7koZibmg82KGglhA1XK5IsLQ==}
+ engines: {node: '>=10'}
+
+ ms@2.1.3:
+ resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==}
+
+ muggle-string@0.4.1:
+ resolution: {integrity: sha512-VNTrAak/KhO2i8dqqnqnAHOa3cYBwXEZe9h+D5h/1ZqFSTEFHdM65lR7RoIqq3tBBYavsOXV84NoHXZ0AkPyqQ==}
+
+ nanoid@3.3.10:
+ resolution: {integrity: sha512-vSJJTG+t/dIKAUhUDw/dLdZ9s//5OxcHqLaDWWrW4Cdq7o6tdLIczUkMXt2MBNmk6sJRZBZRXVixs7URY1CmIg==}
+ engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
+ hasBin: true
+
+ nanoid@5.1.4:
+ resolution: {integrity: sha512-GTFcMIDgR7tqji/LpSY8rtg464VnJl/j6ypoehYnuGb+Y8qZUdtKB8WVCXon0UEZgFDbuUxpIl//6FHLHgXSNA==}
+ engines: {node: ^18 || >=20}
+ hasBin: true
+
+ natural-compare@1.4.0:
+ resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==}
+
+ node-releases@2.0.19:
+ resolution: {integrity: sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==}
+
+ normalize-wheel-es@1.2.0:
+ resolution: {integrity: sha512-Wj7+EJQ8mSuXr2iWfnujrimU35R2W4FAErEyTmJoJ7ucwTn2hOUSsRehMb5RSYkxXGTM7Y9QpvPmp++w5ftoJw==}
+
+ npm-normalize-package-bin@4.0.0:
+ resolution: {integrity: sha512-TZKxPvItzai9kN9H/TkmCtx/ZN/hvr3vUycjlfmH0ootY9yFBzNOpiXAdIn1Iteqsvk4lQn6B5PTrt+n6h8k/w==}
+ engines: {node: ^18.17.0 || >=20.5.0}
+
+ npm-run-all2@7.0.2:
+ resolution: {integrity: sha512-7tXR+r9hzRNOPNTvXegM+QzCuMjzUIIq66VDunL6j60O4RrExx32XUhlrS7UK4VcdGw5/Wxzb3kfNcFix9JKDA==}
+ engines: {node: ^18.17.0 || >=20.5.0, npm: '>= 9'}
+ hasBin: true
+
+ npm-run-path@6.0.0:
+ resolution: {integrity: sha512-9qny7Z9DsQU8Ou39ERsPU4OZQlSTP47ShQzuKZ6PRXpYLtIFgl/DEBYEXKlvcEa+9tHVcK8CF81Y2V72qaZhWA==}
+ engines: {node: '>=18'}
+
+ nth-check@2.1.1:
+ resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==}
+
+ object-inspect@1.13.4:
+ resolution: {integrity: sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==}
+ engines: {node: '>= 0.4'}
+
+ open@10.1.0:
+ resolution: {integrity: sha512-mnkeQ1qP5Ue2wd+aivTD3NHd/lZ96Lu0jgf0pwktLPtx6cTZiH7tyeGRRHs0zX0rbrahXPnXlUnbeXyaBBuIaw==}
+ engines: {node: '>=18'}
+
+ optionator@0.9.4:
+ resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==}
+ engines: {node: '>= 0.8.0'}
+
+ p-limit@3.1.0:
+ resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==}
+ engines: {node: '>=10'}
+
+ p-locate@5.0.0:
+ resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==}
+ engines: {node: '>=10'}
+
+ parent-module@1.0.1:
+ resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==}
+ engines: {node: '>=6'}
+
+ parse-ms@4.0.0:
+ resolution: {integrity: sha512-TXfryirbmq34y8QBwgqCVLi+8oA3oWx2eAnSn62ITyEhEYaWRlVZ2DvMM9eZbMs/RfxPu/PK/aBLyGj4IrqMHw==}
+ engines: {node: '>=18'}
+
+ path-browserify@1.0.1:
+ resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==}
+
+ path-exists@4.0.0:
+ resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==}
+ engines: {node: '>=8'}
+
+ path-key@3.1.1:
+ resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==}
+ engines: {node: '>=8'}
+
+ path-key@4.0.0:
+ resolution: {integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==}
+ engines: {node: '>=12'}
+
+ pathe@2.0.3:
+ resolution: {integrity: sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==}
+
+ perfect-debounce@1.0.0:
+ resolution: {integrity: sha512-xCy9V055GLEqoFaHoC1SoLIaLmWctgCUaBaWxDZ7/Zx4CTyX7cJQLJOok/orfjZAh9kEYpjJa4d0KcJmCbctZA==}
+
+ picocolors@1.1.1:
+ resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==}
+
+ picomatch@2.3.1:
+ resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==}
+ engines: {node: '>=8.6'}
+
+ picomatch@4.0.2:
+ resolution: {integrity: sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==}
+ engines: {node: '>=12'}
+
+ pidtree@0.6.0:
+ resolution: {integrity: sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==}
+ engines: {node: '>=0.10'}
+ hasBin: true
+
+ pinia@3.0.1:
+ resolution: {integrity: sha512-WXglsDzztOTH6IfcJ99ltYZin2mY8XZCXujkYWVIJlBjqsP6ST7zw+Aarh63E1cDVYeyUcPCxPHzJpEOmzB6Wg==}
+ peerDependencies:
+ typescript: '>=4.4.4'
+ vue: ^2.7.0 || ^3.5.11
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ plus-pro-components@0.1.21:
+ resolution: {integrity: sha512-/0WdoMm9Dhs58T+gLzL1ZjvSEWicHEGy5dl5S4+h+k7eY/BznjH2R5bcmsoQ6HHomyw7RODwxarzD4On00sVWQ==}
+ peerDependencies:
+ element-plus: ^2.3.4
+ vue: ^3.2.0
+
+ postcss-selector-parser@6.1.2:
+ resolution: {integrity: sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==}
+ engines: {node: '>=4'}
+
+ postcss@8.5.3:
+ resolution: {integrity: sha512-dle9A3yYxlBSrt8Fu+IpjGT8SY8hN0mlaA6GY8t0P5PjIOZemULz/E2Bnm/2dcUOena75OTNkHI76uZBNUUq3A==}
+ engines: {node: ^10 || ^12 || >=14}
+
+ prelude-ls@1.2.1:
+ resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==}
+ engines: {node: '>= 0.8.0'}
+
+ prettier-linter-helpers@1.0.0:
+ resolution: {integrity: sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==}
+ engines: {node: '>=6.0.0'}
+
+ prettier@3.5.3:
+ resolution: {integrity: sha512-QQtaxnoDJeAkDvDKWCLiwIXkTgRhwYDEQCghU9Z6q03iyek/rxRh/2lC3HB7P8sWT2xC/y5JDctPLBIGzHKbhw==}
+ engines: {node: '>=14'}
+ hasBin: true
+
+ pretty-ms@9.2.0:
+ resolution: {integrity: sha512-4yf0QO/sllf/1zbZWYnvWw3NxCQwLXKzIj0G849LSufP15BXKM0rbD2Z3wVnkMfjdn/CB0Dpp444gYAACdsplg==}
+ engines: {node: '>=18'}
+
+ proxy-from-env@1.1.0:
+ resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==}
+
+ punycode@2.3.1:
+ resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==}
+ engines: {node: '>=6'}
+
+ qs@6.14.0:
+ resolution: {integrity: sha512-YWWTjgABSKcvs/nWBi9PycY/JiPJqOD4JA6o9Sej2AtvSGarXxKC3OQSk4pAarbdQlKAh5D4FCQkJNkW+GAn3w==}
+ engines: {node: '>=0.6'}
+
+ queue-microtask@1.2.3:
+ resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==}
+
+ read-package-json-fast@4.0.0:
+ resolution: {integrity: sha512-qpt8EwugBWDw2cgE2W+/3oxC+KTez2uSVR8JU9Q36TXPAGCaozfQUs59v4j4GFpWTaw0i6hAZSvOmu1J0uOEUg==}
+ engines: {node: ^18.17.0 || >=20.5.0}
+
+ resolve-from@4.0.0:
+ resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==}
+ engines: {node: '>=4'}
+
+ reusify@1.1.0:
+ resolution: {integrity: sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==}
+ engines: {iojs: '>=1.0.0', node: '>=0.10.0'}
+
+ rfdc@1.4.1:
+ resolution: {integrity: sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==}
+
+ rollup@4.35.0:
+ resolution: {integrity: sha512-kg6oI4g+vc41vePJyO6dHt/yl0Rz3Thv0kJeVQ3D1kS3E5XSuKbPc29G4IpT/Kv1KQwgHVcN+HtyS+HYLNSvQg==}
+ engines: {node: '>=18.0.0', npm: '>=8.0.0'}
+ hasBin: true
+
+ run-applescript@7.0.0:
+ resolution: {integrity: sha512-9by4Ij99JUr/MCFBUkDKLWK3G9HVXmabKz9U5MlIAIuvuzkiOicRYs8XJLxX+xahD+mLiiCYDqF9dKAgtzKP1A==}
+ engines: {node: '>=18'}
+
+ run-parallel@1.2.0:
+ resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==}
+
+ semver@6.3.1:
+ resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==}
+ hasBin: true
+
+ semver@7.7.1:
+ resolution: {integrity: sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==}
+ engines: {node: '>=10'}
+ hasBin: true
+
+ shebang-command@2.0.0:
+ resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==}
+ engines: {node: '>=8'}
+
+ shebang-regex@3.0.0:
+ resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==}
+ engines: {node: '>=8'}
+
+ shell-quote@1.8.2:
+ resolution: {integrity: sha512-AzqKpGKjrj7EM6rKVQEPpB288oCfnrEIuyoT9cyF4nmGa7V8Zk6f7RRqYisX8X9m+Q7bd632aZW4ky7EhbQztA==}
+ engines: {node: '>= 0.4'}
+
+ side-channel-list@1.0.0:
+ resolution: {integrity: sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==}
+ engines: {node: '>= 0.4'}
+
+ side-channel-map@1.0.1:
+ resolution: {integrity: sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==}
+ engines: {node: '>= 0.4'}
+
+ side-channel-weakmap@1.0.2:
+ resolution: {integrity: sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==}
+ engines: {node: '>= 0.4'}
+
+ side-channel@1.1.0:
+ resolution: {integrity: sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==}
+ engines: {node: '>= 0.4'}
+
+ signal-exit@4.1.0:
+ resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==}
+ engines: {node: '>=14'}
+
+ sirv@3.0.1:
+ resolution: {integrity: sha512-FoqMu0NCGBLCcAkS1qA+XJIQTR6/JHfQXl+uGteNCQ76T91DMUjPa9xfmeqMY3z80nLSg9yQmNjK0Px6RWsH/A==}
+ engines: {node: '>=18'}
+
+ sortablejs@1.15.6:
+ resolution: {integrity: sha512-aNfiuwMEpfBM/CN6LY0ibyhxPfPbyFeBTYJKCvzkJ2GkUpazIt3H+QIPAMHwqQ7tMKaHz1Qj+rJJCqljnf4p3A==}
+
+ source-map-js@1.2.1:
+ resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==}
+ engines: {node: '>=0.10.0'}
+
+ speakingurl@14.0.1:
+ resolution: {integrity: sha512-1POYv7uv2gXoyGFpBCmpDVSNV74IfsWlDW216UPjbWufNf+bSU6GdbDsxdcxtfwb4xlI3yxzOTKClUosxARYrQ==}
+ engines: {node: '>=0.10.0'}
+
+ strip-final-newline@4.0.0:
+ resolution: {integrity: sha512-aulFJcD6YK8V1G7iRB5tigAP4TsHBZZrOV8pjV++zdUwmeV8uzbY7yn6h9MswN62adStNZFuCIx4haBnRuMDaw==}
+ engines: {node: '>=18'}
+
+ strip-json-comments@3.1.1:
+ resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==}
+ engines: {node: '>=8'}
+
+ superjson@2.2.2:
+ resolution: {integrity: sha512-5JRxVqC8I8NuOUjzBbvVJAKNM8qoVuH0O77h4WInc/qC2q5IreqKxYwgkga3PfA22OayK2ikceb/B26dztPl+Q==}
+ engines: {node: '>=16'}
+
+ supports-color@7.2.0:
+ resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==}
+ engines: {node: '>=8'}
+
+ synckit@0.9.2:
+ resolution: {integrity: sha512-vrozgXDQwYO72vHjUb/HnFbQx1exDjoKzqx23aXEg2a9VIg2TSFZ8FmeZpTjUCFMYw7mpX4BE2SFu8wI7asYsw==}
+ engines: {node: ^14.18.0 || >=16.0.0}
+
+ to-regex-range@5.0.1:
+ resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==}
+ engines: {node: '>=8.0'}
+
+ totalist@3.0.1:
+ resolution: {integrity: sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==}
+ engines: {node: '>=6'}
+
+ ts-api-utils@2.0.1:
+ resolution: {integrity: sha512-dnlgjFSVetynI8nzgJ+qF62efpglpWRk8isUEWZGWlJYySCTD6aKvbUDu+zbPeDakk3bg5H4XpitHukgfL1m9w==}
+ engines: {node: '>=18.12'}
+ peerDependencies:
+ typescript: '>=4.8.4'
+
+ tslib@2.8.1:
+ resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==}
+
+ type-check@0.4.0:
+ resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==}
+ engines: {node: '>= 0.8.0'}
+
+ typescript-eslint@8.26.1:
+ resolution: {integrity: sha512-t/oIs9mYyrwZGRpDv3g+3K6nZ5uhKEMt2oNmAPwaY4/ye0+EH4nXIPYNtkYFS6QHm+1DFg34DbglYBz5P9Xysg==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ eslint: ^8.57.0 || ^9.0.0
+ typescript: '>=4.8.4 <5.9.0'
+
+ typescript@5.8.2:
+ resolution: {integrity: sha512-aJn6wq13/afZp/jT9QZmwEjDqqvSGp1VT5GVg+f/t6/oVyrgXM6BY1h9BRh/O5p3PlUPAe+WuiEZOmb/49RqoQ==}
+ engines: {node: '>=14.17'}
+ hasBin: true
+
+ undici-types@6.20.0:
+ resolution: {integrity: sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==}
+
+ unicorn-magic@0.3.0:
+ resolution: {integrity: sha512-+QBBXBCvifc56fsbuxZQ6Sic3wqqc3WWaqxs58gvJrcOuN83HGTCwz3oS5phzU9LthRNE9VrJCFCLUgHeeFnfA==}
+ engines: {node: '>=18'}
+
+ universalify@2.0.1:
+ resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==}
+ engines: {node: '>= 10.0.0'}
+
+ update-browserslist-db@1.1.3:
+ resolution: {integrity: sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==}
+ hasBin: true
+ peerDependencies:
+ browserslist: '>= 4.21.0'
+
+ uri-js@4.4.1:
+ resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==}
+
+ util-deprecate@1.0.2:
+ resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==}
+
+ vite-hot-client@0.2.4:
+ resolution: {integrity: sha512-a1nzURqO7DDmnXqabFOliz908FRmIppkBKsJthS8rbe8hBEXwEwe4C3Pp33Z1JoFCYfVL4kTOMLKk0ZZxREIeA==}
+ peerDependencies:
+ vite: ^2.6.0 || ^3.0.0 || ^4.0.0 || ^5.0.0-0 || ^6.0.0-0
+
+ vite-plugin-inspect@0.8.9:
+ resolution: {integrity: sha512-22/8qn+LYonzibb1VeFZmISdVao5kC22jmEKm24vfFE8siEn47EpVcCLYMv6iKOYMJfjSvSJfueOwcFCkUnV3A==}
+ engines: {node: '>=14'}
+ peerDependencies:
+ '@nuxt/kit': '*'
+ vite: ^3.1.0 || ^4.0.0 || ^5.0.0-0 || ^6.0.1
+ peerDependenciesMeta:
+ '@nuxt/kit':
+ optional: true
+
+ vite-plugin-vue-devtools@7.7.2:
+ resolution: {integrity: sha512-5V0UijQWiSBj32blkyPEqIbzc6HO9c1bwnBhx+ay2dzU0FakH+qMdNUT8nF9BvDE+i6I1U8CqCuJiO20vKEdQw==}
+ engines: {node: '>=v14.21.3'}
+ peerDependencies:
+ vite: ^3.1.0 || ^4.0.0-0 || ^5.0.0-0 || ^6.0.0-0
+
+ vite-plugin-vue-inspector@5.3.1:
+ resolution: {integrity: sha512-cBk172kZKTdvGpJuzCCLg8lJ909wopwsu3Ve9FsL1XsnLBiRT9U3MePcqrgGHgCX2ZgkqZmAGR8taxw+TV6s7A==}
+ peerDependencies:
+ vite: ^3.0.0-0 || ^4.0.0-0 || ^5.0.0-0 || ^6.0.0-0
+
+ vite@6.2.2:
+ resolution: {integrity: sha512-yW7PeMM+LkDzc7CgJuRLMW2Jz0FxMOsVJ8Lv3gpgW9WLcb9cTW+121UEr1hvmfR7w3SegR5ItvYyzVz1vxNJgQ==}
+ engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0}
+ hasBin: true
+ peerDependencies:
+ '@types/node': ^18.0.0 || ^20.0.0 || >=22.0.0
+ jiti: '>=1.21.0'
+ less: '*'
+ lightningcss: ^1.21.0
+ sass: '*'
+ sass-embedded: '*'
+ stylus: '*'
+ sugarss: '*'
+ terser: ^5.16.0
+ tsx: ^4.8.1
+ yaml: ^2.4.2
+ peerDependenciesMeta:
+ '@types/node':
+ optional: true
+ jiti:
+ optional: true
+ less:
+ optional: true
+ lightningcss:
+ optional: true
+ sass:
+ optional: true
+ sass-embedded:
+ optional: true
+ stylus:
+ optional: true
+ sugarss:
+ optional: true
+ terser:
+ optional: true
+ tsx:
+ optional: true
+ yaml:
+ optional: true
+
+ vscode-uri@3.1.0:
+ resolution: {integrity: sha512-/BpdSx+yCQGnCvecbyXdxHDkuk55/G3xwnC0GqY4gmQ3j+A+g8kzzgB4Nk/SINjqn6+waqw3EgbVF2QKExkRxQ==}
+
+ vue-demi@0.14.10:
+ resolution: {integrity: sha512-nMZBOwuzabUO0nLgIcc6rycZEebF6eeUfaiQx9+WSk8e29IbLvPU9feI6tqW4kTo3hvoYAJkMh8n8D0fuISphg==}
+ engines: {node: '>=12'}
+ hasBin: true
+ peerDependencies:
+ '@vue/composition-api': ^1.0.0-rc.1
+ vue: ^3.0.0-0 || ^2.6.0
+ peerDependenciesMeta:
+ '@vue/composition-api':
+ optional: true
+
+ vue-eslint-parser@10.1.1:
+ resolution: {integrity: sha512-bh2Z/Au5slro9QJ3neFYLanZtb1jH+W2bKqGHXAoYD4vZgNG3KeotL7JpPv5xzY4UXUXJl7TrIsnzECH63kd3Q==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ eslint: ^8.57.0 || ^9.0.0
+
+ vue-router@4.5.0:
+ resolution: {integrity: sha512-HDuk+PuH5monfNuY+ct49mNmkCRK4xJAV9Ts4z9UFc4rzdDnxQLyCMGGc8pKhZhHTVzfanpNwB/lwqevcBwI4w==}
+ peerDependencies:
+ vue: ^3.2.0
+
+ vue-tsc@2.2.8:
+ resolution: {integrity: sha512-jBYKBNFADTN+L+MdesNX/TB3XuDSyaWynKMDgR+yCSln0GQ9Tfb7JS2lr46s2LiFUT1WsmfWsSvIElyxzOPqcQ==}
+ hasBin: true
+ peerDependencies:
+ typescript: '>=5.0.0'
+
+ vue@3.5.13:
+ resolution: {integrity: sha512-wmeiSMxkZCSc+PM2w2VRsOYAZC8GdipNFRTsLSfodVqI9mbejKeXEGr8SckuLnrQPGe3oJN5c3K0vpoU9q/wCQ==}
+ peerDependencies:
+ typescript: '*'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ which@2.0.2:
+ resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==}
+ engines: {node: '>= 8'}
+ hasBin: true
+
+ which@5.0.0:
+ resolution: {integrity: sha512-JEdGzHwwkrbWoGOlIHqQ5gtprKGOenpDHpxE9zVR1bWbOtYRyPPHMe9FaP6x61CmNaTThSkb0DAJte5jD+DmzQ==}
+ engines: {node: ^18.17.0 || >=20.5.0}
+ hasBin: true
+
+ word-wrap@1.2.5:
+ resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==}
+ engines: {node: '>=0.10.0'}
+
+ xml-name-validator@4.0.0:
+ resolution: {integrity: sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==}
+ engines: {node: '>=12'}
+
+ yallist@3.1.1:
+ resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==}
+
+ yocto-queue@0.1.0:
+ resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==}
+ engines: {node: '>=10'}
+
+ yoctocolors@2.1.1:
+ resolution: {integrity: sha512-GQHQqAopRhwU8Kt1DDM8NjibDXHC8eoh1erhGAJPEyveY9qqVeXvVikNKrDz69sHowPMorbPUrH/mx8c50eiBQ==}
+ engines: {node: '>=18'}
+
+snapshots:
+
+ '@ampproject/remapping@2.3.0':
+ dependencies:
+ '@jridgewell/gen-mapping': 0.3.8
+ '@jridgewell/trace-mapping': 0.3.25
+
+ '@antfu/utils@0.7.10': {}
+
+ '@babel/code-frame@7.26.2':
+ dependencies:
+ '@babel/helper-validator-identifier': 7.25.9
+ js-tokens: 4.0.0
+ picocolors: 1.1.1
+
+ '@babel/compat-data@7.26.8': {}
+
+ '@babel/core@7.26.10':
+ dependencies:
+ '@ampproject/remapping': 2.3.0
+ '@babel/code-frame': 7.26.2
+ '@babel/generator': 7.26.10
+ '@babel/helper-compilation-targets': 7.26.5
+ '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.10)
+ '@babel/helpers': 7.26.10
+ '@babel/parser': 7.26.10
+ '@babel/template': 7.26.9
+ '@babel/traverse': 7.26.10
+ '@babel/types': 7.26.10
+ convert-source-map: 2.0.0
+ debug: 4.4.0
+ gensync: 1.0.0-beta.2
+ json5: 2.2.3
+ semver: 6.3.1
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/generator@7.26.10':
+ dependencies:
+ '@babel/parser': 7.26.10
+ '@babel/types': 7.26.10
+ '@jridgewell/gen-mapping': 0.3.8
+ '@jridgewell/trace-mapping': 0.3.25
+ jsesc: 3.1.0
+
+ '@babel/helper-annotate-as-pure@7.25.9':
+ dependencies:
+ '@babel/types': 7.26.10
+
+ '@babel/helper-compilation-targets@7.26.5':
+ dependencies:
+ '@babel/compat-data': 7.26.8
+ '@babel/helper-validator-option': 7.25.9
+ browserslist: 4.24.4
+ lru-cache: 5.1.1
+ semver: 6.3.1
+
+ '@babel/helper-create-class-features-plugin@7.26.9(@babel/core@7.26.10)':
+ dependencies:
+ '@babel/core': 7.26.10
+ '@babel/helper-annotate-as-pure': 7.25.9
+ '@babel/helper-member-expression-to-functions': 7.25.9
+ '@babel/helper-optimise-call-expression': 7.25.9
+ '@babel/helper-replace-supers': 7.26.5(@babel/core@7.26.10)
+ '@babel/helper-skip-transparent-expression-wrappers': 7.25.9
+ '@babel/traverse': 7.26.10
+ semver: 6.3.1
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/helper-member-expression-to-functions@7.25.9':
+ dependencies:
+ '@babel/traverse': 7.26.10
+ '@babel/types': 7.26.10
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/helper-module-imports@7.25.9':
+ dependencies:
+ '@babel/traverse': 7.26.10
+ '@babel/types': 7.26.10
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/helper-module-transforms@7.26.0(@babel/core@7.26.10)':
+ dependencies:
+ '@babel/core': 7.26.10
+ '@babel/helper-module-imports': 7.25.9
+ '@babel/helper-validator-identifier': 7.25.9
+ '@babel/traverse': 7.26.10
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/helper-optimise-call-expression@7.25.9':
+ dependencies:
+ '@babel/types': 7.26.10
+
+ '@babel/helper-plugin-utils@7.26.5': {}
+
+ '@babel/helper-replace-supers@7.26.5(@babel/core@7.26.10)':
+ dependencies:
+ '@babel/core': 7.26.10
+ '@babel/helper-member-expression-to-functions': 7.25.9
+ '@babel/helper-optimise-call-expression': 7.25.9
+ '@babel/traverse': 7.26.10
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/helper-skip-transparent-expression-wrappers@7.25.9':
+ dependencies:
+ '@babel/traverse': 7.26.10
+ '@babel/types': 7.26.10
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/helper-string-parser@7.25.9': {}
+
+ '@babel/helper-validator-identifier@7.25.9': {}
+
+ '@babel/helper-validator-option@7.25.9': {}
+
+ '@babel/helpers@7.26.10':
+ dependencies:
+ '@babel/template': 7.26.9
+ '@babel/types': 7.26.10
+
+ '@babel/parser@7.26.10':
+ dependencies:
+ '@babel/types': 7.26.10
+
+ '@babel/plugin-proposal-decorators@7.25.9(@babel/core@7.26.10)':
+ dependencies:
+ '@babel/core': 7.26.10
+ '@babel/helper-create-class-features-plugin': 7.26.9(@babel/core@7.26.10)
+ '@babel/helper-plugin-utils': 7.26.5
+ '@babel/plugin-syntax-decorators': 7.25.9(@babel/core@7.26.10)
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-syntax-decorators@7.25.9(@babel/core@7.26.10)':
+ dependencies:
+ '@babel/core': 7.26.10
+ '@babel/helper-plugin-utils': 7.26.5
+
+ '@babel/plugin-syntax-import-attributes@7.26.0(@babel/core@7.26.10)':
+ dependencies:
+ '@babel/core': 7.26.10
+ '@babel/helper-plugin-utils': 7.26.5
+
+ '@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.26.10)':
+ dependencies:
+ '@babel/core': 7.26.10
+ '@babel/helper-plugin-utils': 7.26.5
+
+ '@babel/plugin-syntax-jsx@7.25.9(@babel/core@7.26.10)':
+ dependencies:
+ '@babel/core': 7.26.10
+ '@babel/helper-plugin-utils': 7.26.5
+
+ '@babel/plugin-syntax-typescript@7.25.9(@babel/core@7.26.10)':
+ dependencies:
+ '@babel/core': 7.26.10
+ '@babel/helper-plugin-utils': 7.26.5
+
+ '@babel/plugin-transform-typescript@7.26.8(@babel/core@7.26.10)':
+ dependencies:
+ '@babel/core': 7.26.10
+ '@babel/helper-annotate-as-pure': 7.25.9
+ '@babel/helper-create-class-features-plugin': 7.26.9(@babel/core@7.26.10)
+ '@babel/helper-plugin-utils': 7.26.5
+ '@babel/helper-skip-transparent-expression-wrappers': 7.25.9
+ '@babel/plugin-syntax-typescript': 7.25.9(@babel/core@7.26.10)
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/template@7.26.9':
+ dependencies:
+ '@babel/code-frame': 7.26.2
+ '@babel/parser': 7.26.10
+ '@babel/types': 7.26.10
+
+ '@babel/traverse@7.26.10':
+ dependencies:
+ '@babel/code-frame': 7.26.2
+ '@babel/generator': 7.26.10
+ '@babel/parser': 7.26.10
+ '@babel/template': 7.26.9
+ '@babel/types': 7.26.10
+ debug: 4.4.0
+ globals: 11.12.0
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/types@7.26.10':
+ dependencies:
+ '@babel/helper-string-parser': 7.25.9
+ '@babel/helper-validator-identifier': 7.25.9
+
+ '@ctrl/tinycolor@3.6.1': {}
+
+ '@element-plus/icons-vue@2.3.1(vue@3.5.13(typescript@5.8.2))':
+ dependencies:
+ vue: 3.5.13(typescript@5.8.2)
+
+ '@esbuild/aix-ppc64@0.25.1':
+ optional: true
+
+ '@esbuild/android-arm64@0.25.1':
+ optional: true
+
+ '@esbuild/android-arm@0.25.1':
+ optional: true
+
+ '@esbuild/android-x64@0.25.1':
+ optional: true
+
+ '@esbuild/darwin-arm64@0.25.1':
+ optional: true
+
+ '@esbuild/darwin-x64@0.25.1':
+ optional: true
+
+ '@esbuild/freebsd-arm64@0.25.1':
+ optional: true
+
+ '@esbuild/freebsd-x64@0.25.1':
+ optional: true
+
+ '@esbuild/linux-arm64@0.25.1':
+ optional: true
+
+ '@esbuild/linux-arm@0.25.1':
+ optional: true
+
+ '@esbuild/linux-ia32@0.25.1':
+ optional: true
+
+ '@esbuild/linux-loong64@0.25.1':
+ optional: true
+
+ '@esbuild/linux-mips64el@0.25.1':
+ optional: true
+
+ '@esbuild/linux-ppc64@0.25.1':
+ optional: true
+
+ '@esbuild/linux-riscv64@0.25.1':
+ optional: true
+
+ '@esbuild/linux-s390x@0.25.1':
+ optional: true
+
+ '@esbuild/linux-x64@0.25.1':
+ optional: true
+
+ '@esbuild/netbsd-arm64@0.25.1':
+ optional: true
+
+ '@esbuild/netbsd-x64@0.25.1':
+ optional: true
+
+ '@esbuild/openbsd-arm64@0.25.1':
+ optional: true
+
+ '@esbuild/openbsd-x64@0.25.1':
+ optional: true
+
+ '@esbuild/sunos-x64@0.25.1':
+ optional: true
+
+ '@esbuild/win32-arm64@0.25.1':
+ optional: true
+
+ '@esbuild/win32-ia32@0.25.1':
+ optional: true
+
+ '@esbuild/win32-x64@0.25.1':
+ optional: true
+
+ '@eslint-community/eslint-utils@4.5.1(eslint@9.22.0(jiti@2.4.2))':
+ dependencies:
+ eslint: 9.22.0(jiti@2.4.2)
+ eslint-visitor-keys: 3.4.3
+
+ '@eslint-community/regexpp@4.12.1': {}
+
+ '@eslint/config-array@0.19.2':
+ dependencies:
+ '@eslint/object-schema': 2.1.6
+ debug: 4.4.0
+ minimatch: 3.1.2
+ transitivePeerDependencies:
+ - supports-color
+
+ '@eslint/config-helpers@0.1.0': {}
+
+ '@eslint/core@0.12.0':
+ dependencies:
+ '@types/json-schema': 7.0.15
+
+ '@eslint/eslintrc@3.3.0':
+ dependencies:
+ ajv: 6.12.6
+ debug: 4.4.0
+ espree: 10.3.0
+ globals: 14.0.0
+ ignore: 5.3.2
+ import-fresh: 3.3.1
+ js-yaml: 4.1.0
+ minimatch: 3.1.2
+ strip-json-comments: 3.1.1
+ transitivePeerDependencies:
+ - supports-color
+
+ '@eslint/js@9.22.0': {}
+
+ '@eslint/object-schema@2.1.6': {}
+
+ '@eslint/plugin-kit@0.2.7':
+ dependencies:
+ '@eslint/core': 0.12.0
+ levn: 0.4.1
+
+ '@floating-ui/core@1.6.9':
+ dependencies:
+ '@floating-ui/utils': 0.2.9
+
+ '@floating-ui/dom@1.6.13':
+ dependencies:
+ '@floating-ui/core': 1.6.9
+ '@floating-ui/utils': 0.2.9
+
+ '@floating-ui/utils@0.2.9': {}
+
+ '@humanfs/core@0.19.1': {}
+
+ '@humanfs/node@0.16.6':
+ dependencies:
+ '@humanfs/core': 0.19.1
+ '@humanwhocodes/retry': 0.3.1
+
+ '@humanwhocodes/module-importer@1.0.1': {}
+
+ '@humanwhocodes/retry@0.3.1': {}
+
+ '@humanwhocodes/retry@0.4.2': {}
+
+ '@jridgewell/gen-mapping@0.3.8':
+ dependencies:
+ '@jridgewell/set-array': 1.2.1
+ '@jridgewell/sourcemap-codec': 1.5.0
+ '@jridgewell/trace-mapping': 0.3.25
+
+ '@jridgewell/resolve-uri@3.1.2': {}
+
+ '@jridgewell/set-array@1.2.1': {}
+
+ '@jridgewell/sourcemap-codec@1.5.0': {}
+
+ '@jridgewell/trace-mapping@0.3.25':
+ dependencies:
+ '@jridgewell/resolve-uri': 3.1.2
+ '@jridgewell/sourcemap-codec': 1.5.0
+
+ '@nodelib/fs.scandir@2.1.5':
+ dependencies:
+ '@nodelib/fs.stat': 2.0.5
+ run-parallel: 1.2.0
+
+ '@nodelib/fs.stat@2.0.5': {}
+
+ '@nodelib/fs.walk@1.2.8':
+ dependencies:
+ '@nodelib/fs.scandir': 2.1.5
+ fastq: 1.19.1
+
+ '@pkgr/core@0.1.1': {}
+
+ '@polka/url@1.0.0-next.28': {}
+
+ '@rollup/pluginutils@5.1.4(rollup@4.35.0)':
+ dependencies:
+ '@types/estree': 1.0.6
+ estree-walker: 2.0.2
+ picomatch: 4.0.2
+ optionalDependencies:
+ rollup: 4.35.0
+
+ '@rollup/rollup-android-arm-eabi@4.35.0':
+ optional: true
+
+ '@rollup/rollup-android-arm64@4.35.0':
+ optional: true
+
+ '@rollup/rollup-darwin-arm64@4.35.0':
+ optional: true
+
+ '@rollup/rollup-darwin-x64@4.35.0':
+ optional: true
+
+ '@rollup/rollup-freebsd-arm64@4.35.0':
+ optional: true
+
+ '@rollup/rollup-freebsd-x64@4.35.0':
+ optional: true
+
+ '@rollup/rollup-linux-arm-gnueabihf@4.35.0':
+ optional: true
+
+ '@rollup/rollup-linux-arm-musleabihf@4.35.0':
+ optional: true
+
+ '@rollup/rollup-linux-arm64-gnu@4.35.0':
+ optional: true
+
+ '@rollup/rollup-linux-arm64-musl@4.35.0':
+ optional: true
+
+ '@rollup/rollup-linux-loongarch64-gnu@4.35.0':
+ optional: true
+
+ '@rollup/rollup-linux-powerpc64le-gnu@4.35.0':
+ optional: true
+
+ '@rollup/rollup-linux-riscv64-gnu@4.35.0':
+ optional: true
+
+ '@rollup/rollup-linux-s390x-gnu@4.35.0':
+ optional: true
+
+ '@rollup/rollup-linux-x64-gnu@4.35.0':
+ optional: true
+
+ '@rollup/rollup-linux-x64-musl@4.35.0':
+ optional: true
+
+ '@rollup/rollup-win32-arm64-msvc@4.35.0':
+ optional: true
+
+ '@rollup/rollup-win32-ia32-msvc@4.35.0':
+ optional: true
+
+ '@rollup/rollup-win32-x64-msvc@4.35.0':
+ optional: true
+
+ '@sec-ant/readable-stream@0.4.1': {}
+
+ '@sindresorhus/merge-streams@4.0.0': {}
+
+ '@sxzz/popperjs-es@2.11.7': {}
+
+ '@tsconfig/node22@22.0.0': {}
+
+ '@types/estree@1.0.6': {}
+
+ '@types/json-schema@7.0.15': {}
+
+ '@types/lodash-es@4.17.12':
+ dependencies:
+ '@types/lodash': 4.17.16
+
+ '@types/lodash@4.17.16': {}
+
+ '@types/node@22.13.10':
+ dependencies:
+ undici-types: 6.20.0
+
+ '@types/nprogress@0.2.3': {}
+
+ '@types/qs@6.9.18': {}
+
+ '@types/web-bluetooth@0.0.16': {}
+
+ '@typescript-eslint/eslint-plugin@8.26.1(@typescript-eslint/parser@8.26.1(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2))(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2)':
+ dependencies:
+ '@eslint-community/regexpp': 4.12.1
+ '@typescript-eslint/parser': 8.26.1(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2)
+ '@typescript-eslint/scope-manager': 8.26.1
+ '@typescript-eslint/type-utils': 8.26.1(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2)
+ '@typescript-eslint/utils': 8.26.1(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2)
+ '@typescript-eslint/visitor-keys': 8.26.1
+ eslint: 9.22.0(jiti@2.4.2)
+ graphemer: 1.4.0
+ ignore: 5.3.2
+ natural-compare: 1.4.0
+ ts-api-utils: 2.0.1(typescript@5.8.2)
+ typescript: 5.8.2
+ transitivePeerDependencies:
+ - supports-color
+
+ '@typescript-eslint/parser@8.26.1(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2)':
+ dependencies:
+ '@typescript-eslint/scope-manager': 8.26.1
+ '@typescript-eslint/types': 8.26.1
+ '@typescript-eslint/typescript-estree': 8.26.1(typescript@5.8.2)
+ '@typescript-eslint/visitor-keys': 8.26.1
+ debug: 4.4.0
+ eslint: 9.22.0(jiti@2.4.2)
+ typescript: 5.8.2
+ transitivePeerDependencies:
+ - supports-color
+
+ '@typescript-eslint/scope-manager@8.26.1':
+ dependencies:
+ '@typescript-eslint/types': 8.26.1
+ '@typescript-eslint/visitor-keys': 8.26.1
+
+ '@typescript-eslint/type-utils@8.26.1(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2)':
+ dependencies:
+ '@typescript-eslint/typescript-estree': 8.26.1(typescript@5.8.2)
+ '@typescript-eslint/utils': 8.26.1(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2)
+ debug: 4.4.0
+ eslint: 9.22.0(jiti@2.4.2)
+ ts-api-utils: 2.0.1(typescript@5.8.2)
+ typescript: 5.8.2
+ transitivePeerDependencies:
+ - supports-color
+
+ '@typescript-eslint/types@8.26.1': {}
+
+ '@typescript-eslint/typescript-estree@8.26.1(typescript@5.8.2)':
+ dependencies:
+ '@typescript-eslint/types': 8.26.1
+ '@typescript-eslint/visitor-keys': 8.26.1
+ debug: 4.4.0
+ fast-glob: 3.3.3
+ is-glob: 4.0.3
+ minimatch: 9.0.5
+ semver: 7.7.1
+ ts-api-utils: 2.0.1(typescript@5.8.2)
+ typescript: 5.8.2
+ transitivePeerDependencies:
+ - supports-color
+
+ '@typescript-eslint/utils@8.26.1(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2)':
+ dependencies:
+ '@eslint-community/eslint-utils': 4.5.1(eslint@9.22.0(jiti@2.4.2))
+ '@typescript-eslint/scope-manager': 8.26.1
+ '@typescript-eslint/types': 8.26.1
+ '@typescript-eslint/typescript-estree': 8.26.1(typescript@5.8.2)
+ eslint: 9.22.0(jiti@2.4.2)
+ typescript: 5.8.2
+ transitivePeerDependencies:
+ - supports-color
+
+ '@typescript-eslint/visitor-keys@8.26.1':
+ dependencies:
+ '@typescript-eslint/types': 8.26.1
+ eslint-visitor-keys: 4.2.0
+
+ '@vitejs/plugin-vue-jsx@4.1.2(vite@6.2.2(@types/node@22.13.10)(jiti@2.4.2))(vue@3.5.13(typescript@5.8.2))':
+ dependencies:
+ '@babel/core': 7.26.10
+ '@babel/plugin-transform-typescript': 7.26.8(@babel/core@7.26.10)
+ '@vue/babel-plugin-jsx': 1.4.0(@babel/core@7.26.10)
+ vite: 6.2.2(@types/node@22.13.10)(jiti@2.4.2)
+ vue: 3.5.13(typescript@5.8.2)
+ transitivePeerDependencies:
+ - supports-color
+
+ '@vitejs/plugin-vue@5.2.2(vite@6.2.2(@types/node@22.13.10)(jiti@2.4.2))(vue@3.5.13(typescript@5.8.2))':
+ dependencies:
+ vite: 6.2.2(@types/node@22.13.10)(jiti@2.4.2)
+ vue: 3.5.13(typescript@5.8.2)
+
+ '@volar/language-core@2.4.12':
+ dependencies:
+ '@volar/source-map': 2.4.12
+
+ '@volar/source-map@2.4.12': {}
+
+ '@volar/typescript@2.4.12':
+ dependencies:
+ '@volar/language-core': 2.4.12
+ path-browserify: 1.0.1
+ vscode-uri: 3.1.0
+
+ '@vue/babel-helper-vue-transform-on@1.4.0': {}
+
+ '@vue/babel-plugin-jsx@1.4.0(@babel/core@7.26.10)':
+ dependencies:
+ '@babel/helper-module-imports': 7.25.9
+ '@babel/helper-plugin-utils': 7.26.5
+ '@babel/plugin-syntax-jsx': 7.25.9(@babel/core@7.26.10)
+ '@babel/template': 7.26.9
+ '@babel/traverse': 7.26.10
+ '@babel/types': 7.26.10
+ '@vue/babel-helper-vue-transform-on': 1.4.0
+ '@vue/babel-plugin-resolve-type': 1.4.0(@babel/core@7.26.10)
+ '@vue/shared': 3.5.13
+ optionalDependencies:
+ '@babel/core': 7.26.10
+ transitivePeerDependencies:
+ - supports-color
+
+ '@vue/babel-plugin-resolve-type@1.4.0(@babel/core@7.26.10)':
+ dependencies:
+ '@babel/code-frame': 7.26.2
+ '@babel/core': 7.26.10
+ '@babel/helper-module-imports': 7.25.9
+ '@babel/helper-plugin-utils': 7.26.5
+ '@babel/parser': 7.26.10
+ '@vue/compiler-sfc': 3.5.13
+ transitivePeerDependencies:
+ - supports-color
+
+ '@vue/compiler-core@3.5.13':
+ dependencies:
+ '@babel/parser': 7.26.10
+ '@vue/shared': 3.5.13
+ entities: 4.5.0
+ estree-walker: 2.0.2
+ source-map-js: 1.2.1
+
+ '@vue/compiler-dom@3.5.13':
+ dependencies:
+ '@vue/compiler-core': 3.5.13
+ '@vue/shared': 3.5.13
+
+ '@vue/compiler-sfc@3.5.13':
+ dependencies:
+ '@babel/parser': 7.26.10
+ '@vue/compiler-core': 3.5.13
+ '@vue/compiler-dom': 3.5.13
+ '@vue/compiler-ssr': 3.5.13
+ '@vue/shared': 3.5.13
+ estree-walker: 2.0.2
+ magic-string: 0.30.17
+ postcss: 8.5.3
+ source-map-js: 1.2.1
+
+ '@vue/compiler-ssr@3.5.13':
+ dependencies:
+ '@vue/compiler-dom': 3.5.13
+ '@vue/shared': 3.5.13
+
+ '@vue/compiler-vue2@2.7.16':
+ dependencies:
+ de-indent: 1.0.2
+ he: 1.2.0
+
+ '@vue/devtools-api@6.6.4': {}
+
+ '@vue/devtools-api@7.7.2':
+ dependencies:
+ '@vue/devtools-kit': 7.7.2
+
+ '@vue/devtools-core@7.7.2(vite@6.2.2(@types/node@22.13.10)(jiti@2.4.2))(vue@3.5.13(typescript@5.8.2))':
+ dependencies:
+ '@vue/devtools-kit': 7.7.2
+ '@vue/devtools-shared': 7.7.2
+ mitt: 3.0.1
+ nanoid: 5.1.4
+ pathe: 2.0.3
+ vite-hot-client: 0.2.4(vite@6.2.2(@types/node@22.13.10)(jiti@2.4.2))
+ vue: 3.5.13(typescript@5.8.2)
+ transitivePeerDependencies:
+ - vite
+
+ '@vue/devtools-kit@7.7.2':
+ dependencies:
+ '@vue/devtools-shared': 7.7.2
+ birpc: 0.2.19
+ hookable: 5.5.3
+ mitt: 3.0.1
+ perfect-debounce: 1.0.0
+ speakingurl: 14.0.1
+ superjson: 2.2.2
+
+ '@vue/devtools-shared@7.7.2':
+ dependencies:
+ rfdc: 1.4.1
+
+ '@vue/eslint-config-prettier@10.2.0(eslint@9.22.0(jiti@2.4.2))(prettier@3.5.3)':
+ dependencies:
+ eslint: 9.22.0(jiti@2.4.2)
+ eslint-config-prettier: 10.1.1(eslint@9.22.0(jiti@2.4.2))
+ eslint-plugin-prettier: 5.2.3(eslint-config-prettier@10.1.1(eslint@9.22.0(jiti@2.4.2)))(eslint@9.22.0(jiti@2.4.2))(prettier@3.5.3)
+ prettier: 3.5.3
+ transitivePeerDependencies:
+ - '@types/eslint'
+
+ '@vue/eslint-config-typescript@14.5.0(eslint-plugin-vue@10.0.0(eslint@9.22.0(jiti@2.4.2))(vue-eslint-parser@10.1.1(eslint@9.22.0(jiti@2.4.2))))(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2)':
+ dependencies:
+ '@typescript-eslint/utils': 8.26.1(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2)
+ eslint: 9.22.0(jiti@2.4.2)
+ eslint-plugin-vue: 10.0.0(eslint@9.22.0(jiti@2.4.2))(vue-eslint-parser@10.1.1(eslint@9.22.0(jiti@2.4.2)))
+ fast-glob: 3.3.3
+ typescript-eslint: 8.26.1(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2)
+ vue-eslint-parser: 10.1.1(eslint@9.22.0(jiti@2.4.2))
+ optionalDependencies:
+ typescript: 5.8.2
+ transitivePeerDependencies:
+ - supports-color
+
+ '@vue/language-core@2.2.8(typescript@5.8.2)':
+ dependencies:
+ '@volar/language-core': 2.4.12
+ '@vue/compiler-dom': 3.5.13
+ '@vue/compiler-vue2': 2.7.16
+ '@vue/shared': 3.5.13
+ alien-signals: 1.0.4
+ minimatch: 9.0.5
+ muggle-string: 0.4.1
+ path-browserify: 1.0.1
+ optionalDependencies:
+ typescript: 5.8.2
+
+ '@vue/reactivity@3.5.13':
+ dependencies:
+ '@vue/shared': 3.5.13
+
+ '@vue/runtime-core@3.5.13':
+ dependencies:
+ '@vue/reactivity': 3.5.13
+ '@vue/shared': 3.5.13
+
+ '@vue/runtime-dom@3.5.13':
+ dependencies:
+ '@vue/reactivity': 3.5.13
+ '@vue/runtime-core': 3.5.13
+ '@vue/shared': 3.5.13
+ csstype: 3.1.3
+
+ '@vue/server-renderer@3.5.13(vue@3.5.13(typescript@5.8.2))':
+ dependencies:
+ '@vue/compiler-ssr': 3.5.13
+ '@vue/shared': 3.5.13
+ vue: 3.5.13(typescript@5.8.2)
+
+ '@vue/shared@3.5.13': {}
+
+ '@vue/tsconfig@0.7.0(typescript@5.8.2)(vue@3.5.13(typescript@5.8.2))':
+ optionalDependencies:
+ typescript: 5.8.2
+ vue: 3.5.13(typescript@5.8.2)
+
+ '@vueuse/core@9.13.0(vue@3.5.13(typescript@5.8.2))':
+ dependencies:
+ '@types/web-bluetooth': 0.0.16
+ '@vueuse/metadata': 9.13.0
+ '@vueuse/shared': 9.13.0(vue@3.5.13(typescript@5.8.2))
+ vue-demi: 0.14.10(vue@3.5.13(typescript@5.8.2))
+ transitivePeerDependencies:
+ - '@vue/composition-api'
+ - vue
+
+ '@vueuse/metadata@9.13.0': {}
+
+ '@vueuse/shared@9.13.0(vue@3.5.13(typescript@5.8.2))':
+ dependencies:
+ vue-demi: 0.14.10(vue@3.5.13(typescript@5.8.2))
+ transitivePeerDependencies:
+ - '@vue/composition-api'
+ - vue
+
+ acorn-jsx@5.3.2(acorn@8.14.1):
+ dependencies:
+ acorn: 8.14.1
+
+ acorn@8.14.1: {}
+
+ ajv@6.12.6:
+ dependencies:
+ fast-deep-equal: 3.1.3
+ fast-json-stable-stringify: 2.1.0
+ json-schema-traverse: 0.4.1
+ uri-js: 4.4.1
+
+ alien-signals@1.0.4: {}
+
+ ansi-styles@4.3.0:
+ dependencies:
+ color-convert: 2.0.1
+
+ ansi-styles@6.2.1: {}
+
+ argparse@2.0.1: {}
+
+ async-validator@4.2.5: {}
+
+ asynckit@0.4.0: {}
+
+ axios@1.8.3:
+ dependencies:
+ follow-redirects: 1.15.9
+ form-data: 4.0.2
+ proxy-from-env: 1.1.0
+ transitivePeerDependencies:
+ - debug
+
+ balanced-match@1.0.2: {}
+
+ birpc@0.2.19: {}
+
+ boolbase@1.0.0: {}
+
+ brace-expansion@1.1.11:
+ dependencies:
+ balanced-match: 1.0.2
+ concat-map: 0.0.1
+
+ brace-expansion@2.0.1:
+ dependencies:
+ balanced-match: 1.0.2
+
+ braces@3.0.3:
+ dependencies:
+ fill-range: 7.1.1
+
+ browserslist@4.24.4:
+ dependencies:
+ caniuse-lite: 1.0.30001705
+ electron-to-chromium: 1.5.119
+ node-releases: 2.0.19
+ update-browserslist-db: 1.1.3(browserslist@4.24.4)
+
+ bundle-name@4.1.0:
+ dependencies:
+ run-applescript: 7.0.0
+
+ call-bind-apply-helpers@1.0.2:
+ dependencies:
+ es-errors: 1.3.0
+ function-bind: 1.1.2
+
+ call-bound@1.0.4:
+ dependencies:
+ call-bind-apply-helpers: 1.0.2
+ get-intrinsic: 1.3.0
+
+ callsites@3.1.0: {}
+
+ caniuse-lite@1.0.30001705: {}
+
+ chalk@4.1.2:
+ dependencies:
+ ansi-styles: 4.3.0
+ supports-color: 7.2.0
+
+ color-convert@2.0.1:
+ dependencies:
+ color-name: 1.1.4
+
+ color-name@1.1.4: {}
+
+ combined-stream@1.0.8:
+ dependencies:
+ delayed-stream: 1.0.0
+
+ concat-map@0.0.1: {}
+
+ convert-source-map@2.0.0: {}
+
+ copy-anything@3.0.5:
+ dependencies:
+ is-what: 4.1.16
+
+ cross-spawn@7.0.6:
+ dependencies:
+ path-key: 3.1.1
+ shebang-command: 2.0.0
+ which: 2.0.2
+
+ cssesc@3.0.0: {}
+
+ csstype@3.1.3: {}
+
+ dayjs@1.11.13: {}
+
+ de-indent@1.0.2: {}
+
+ debug@4.4.0:
+ dependencies:
+ ms: 2.1.3
+
+ deep-is@0.1.4: {}
+
+ default-browser-id@5.0.0: {}
+
+ default-browser@5.2.1:
+ dependencies:
+ bundle-name: 4.1.0
+ default-browser-id: 5.0.0
+
+ define-lazy-prop@3.0.0: {}
+
+ delayed-stream@1.0.0: {}
+
+ dunder-proto@1.0.1:
+ dependencies:
+ call-bind-apply-helpers: 1.0.2
+ es-errors: 1.3.0
+ gopd: 1.2.0
+
+ electron-to-chromium@1.5.119: {}
+
+ element-plus@2.9.6(vue@3.5.13(typescript@5.8.2)):
+ dependencies:
+ '@ctrl/tinycolor': 3.6.1
+ '@element-plus/icons-vue': 2.3.1(vue@3.5.13(typescript@5.8.2))
+ '@floating-ui/dom': 1.6.13
+ '@popperjs/core': '@sxzz/popperjs-es@2.11.7'
+ '@types/lodash': 4.17.16
+ '@types/lodash-es': 4.17.12
+ '@vueuse/core': 9.13.0(vue@3.5.13(typescript@5.8.2))
+ async-validator: 4.2.5
+ dayjs: 1.11.13
+ escape-html: 1.0.3
+ lodash: 4.17.21
+ lodash-es: 4.17.21
+ lodash-unified: 1.0.3(@types/lodash-es@4.17.12)(lodash-es@4.17.21)(lodash@4.17.21)
+ memoize-one: 6.0.0
+ normalize-wheel-es: 1.2.0
+ vue: 3.5.13(typescript@5.8.2)
+ transitivePeerDependencies:
+ - '@vue/composition-api'
+
+ entities@4.5.0: {}
+
+ error-stack-parser-es@0.1.5: {}
+
+ es-define-property@1.0.1: {}
+
+ es-errors@1.3.0: {}
+
+ es-object-atoms@1.1.1:
+ dependencies:
+ es-errors: 1.3.0
+
+ es-set-tostringtag@2.1.0:
+ dependencies:
+ es-errors: 1.3.0
+ get-intrinsic: 1.3.0
+ has-tostringtag: 1.0.2
+ hasown: 2.0.2
+
+ esbuild@0.25.1:
+ optionalDependencies:
+ '@esbuild/aix-ppc64': 0.25.1
+ '@esbuild/android-arm': 0.25.1
+ '@esbuild/android-arm64': 0.25.1
+ '@esbuild/android-x64': 0.25.1
+ '@esbuild/darwin-arm64': 0.25.1
+ '@esbuild/darwin-x64': 0.25.1
+ '@esbuild/freebsd-arm64': 0.25.1
+ '@esbuild/freebsd-x64': 0.25.1
+ '@esbuild/linux-arm': 0.25.1
+ '@esbuild/linux-arm64': 0.25.1
+ '@esbuild/linux-ia32': 0.25.1
+ '@esbuild/linux-loong64': 0.25.1
+ '@esbuild/linux-mips64el': 0.25.1
+ '@esbuild/linux-ppc64': 0.25.1
+ '@esbuild/linux-riscv64': 0.25.1
+ '@esbuild/linux-s390x': 0.25.1
+ '@esbuild/linux-x64': 0.25.1
+ '@esbuild/netbsd-arm64': 0.25.1
+ '@esbuild/netbsd-x64': 0.25.1
+ '@esbuild/openbsd-arm64': 0.25.1
+ '@esbuild/openbsd-x64': 0.25.1
+ '@esbuild/sunos-x64': 0.25.1
+ '@esbuild/win32-arm64': 0.25.1
+ '@esbuild/win32-ia32': 0.25.1
+ '@esbuild/win32-x64': 0.25.1
+
+ escalade@3.2.0: {}
+
+ escape-html@1.0.3: {}
+
+ escape-string-regexp@4.0.0: {}
+
+ eslint-config-prettier@10.1.1(eslint@9.22.0(jiti@2.4.2)):
+ dependencies:
+ eslint: 9.22.0(jiti@2.4.2)
+
+ eslint-plugin-prettier@5.2.3(eslint-config-prettier@10.1.1(eslint@9.22.0(jiti@2.4.2)))(eslint@9.22.0(jiti@2.4.2))(prettier@3.5.3):
+ dependencies:
+ eslint: 9.22.0(jiti@2.4.2)
+ prettier: 3.5.3
+ prettier-linter-helpers: 1.0.0
+ synckit: 0.9.2
+ optionalDependencies:
+ eslint-config-prettier: 10.1.1(eslint@9.22.0(jiti@2.4.2))
+
+ eslint-plugin-vue@10.0.0(eslint@9.22.0(jiti@2.4.2))(vue-eslint-parser@10.1.1(eslint@9.22.0(jiti@2.4.2))):
+ dependencies:
+ '@eslint-community/eslint-utils': 4.5.1(eslint@9.22.0(jiti@2.4.2))
+ eslint: 9.22.0(jiti@2.4.2)
+ natural-compare: 1.4.0
+ nth-check: 2.1.1
+ postcss-selector-parser: 6.1.2
+ semver: 7.7.1
+ vue-eslint-parser: 10.1.1(eslint@9.22.0(jiti@2.4.2))
+ xml-name-validator: 4.0.0
+
+ eslint-scope@8.3.0:
+ dependencies:
+ esrecurse: 4.3.0
+ estraverse: 5.3.0
+
+ eslint-visitor-keys@3.4.3: {}
+
+ eslint-visitor-keys@4.2.0: {}
+
+ eslint@9.22.0(jiti@2.4.2):
+ dependencies:
+ '@eslint-community/eslint-utils': 4.5.1(eslint@9.22.0(jiti@2.4.2))
+ '@eslint-community/regexpp': 4.12.1
+ '@eslint/config-array': 0.19.2
+ '@eslint/config-helpers': 0.1.0
+ '@eslint/core': 0.12.0
+ '@eslint/eslintrc': 3.3.0
+ '@eslint/js': 9.22.0
+ '@eslint/plugin-kit': 0.2.7
+ '@humanfs/node': 0.16.6
+ '@humanwhocodes/module-importer': 1.0.1
+ '@humanwhocodes/retry': 0.4.2
+ '@types/estree': 1.0.6
+ '@types/json-schema': 7.0.15
+ ajv: 6.12.6
+ chalk: 4.1.2
+ cross-spawn: 7.0.6
+ debug: 4.4.0
+ escape-string-regexp: 4.0.0
+ eslint-scope: 8.3.0
+ eslint-visitor-keys: 4.2.0
+ espree: 10.3.0
+ esquery: 1.6.0
+ esutils: 2.0.3
+ fast-deep-equal: 3.1.3
+ file-entry-cache: 8.0.0
+ find-up: 5.0.0
+ glob-parent: 6.0.2
+ ignore: 5.3.2
+ imurmurhash: 0.1.4
+ is-glob: 4.0.3
+ json-stable-stringify-without-jsonify: 1.0.1
+ lodash.merge: 4.6.2
+ minimatch: 3.1.2
+ natural-compare: 1.4.0
+ optionator: 0.9.4
+ optionalDependencies:
+ jiti: 2.4.2
+ transitivePeerDependencies:
+ - supports-color
+
+ espree@10.3.0:
+ dependencies:
+ acorn: 8.14.1
+ acorn-jsx: 5.3.2(acorn@8.14.1)
+ eslint-visitor-keys: 4.2.0
+
+ esquery@1.6.0:
+ dependencies:
+ estraverse: 5.3.0
+
+ esrecurse@4.3.0:
+ dependencies:
+ estraverse: 5.3.0
+
+ estraverse@5.3.0: {}
+
+ estree-walker@2.0.2: {}
+
+ esutils@2.0.3: {}
+
+ execa@9.5.2:
+ dependencies:
+ '@sindresorhus/merge-streams': 4.0.0
+ cross-spawn: 7.0.6
+ figures: 6.1.0
+ get-stream: 9.0.1
+ human-signals: 8.0.0
+ is-plain-obj: 4.1.0
+ is-stream: 4.0.1
+ npm-run-path: 6.0.0
+ pretty-ms: 9.2.0
+ signal-exit: 4.1.0
+ strip-final-newline: 4.0.0
+ yoctocolors: 2.1.1
+
+ fast-deep-equal@3.1.3: {}
+
+ fast-diff@1.3.0: {}
+
+ fast-glob@3.3.3:
+ dependencies:
+ '@nodelib/fs.stat': 2.0.5
+ '@nodelib/fs.walk': 1.2.8
+ glob-parent: 5.1.2
+ merge2: 1.4.1
+ micromatch: 4.0.8
+
+ fast-json-stable-stringify@2.1.0: {}
+
+ fast-levenshtein@2.0.6: {}
+
+ fastq@1.19.1:
+ dependencies:
+ reusify: 1.1.0
+
+ figures@6.1.0:
+ dependencies:
+ is-unicode-supported: 2.1.0
+
+ file-entry-cache@8.0.0:
+ dependencies:
+ flat-cache: 4.0.1
+
+ fill-range@7.1.1:
+ dependencies:
+ to-regex-range: 5.0.1
+
+ find-up@5.0.0:
+ dependencies:
+ locate-path: 6.0.0
+ path-exists: 4.0.0
+
+ flat-cache@4.0.1:
+ dependencies:
+ flatted: 3.3.3
+ keyv: 4.5.4
+
+ flatted@3.3.3: {}
+
+ follow-redirects@1.15.9: {}
+
+ form-data@4.0.2:
+ dependencies:
+ asynckit: 0.4.0
+ combined-stream: 1.0.8
+ es-set-tostringtag: 2.1.0
+ mime-types: 2.1.35
+
+ fs-extra@11.3.0:
+ dependencies:
+ graceful-fs: 4.2.11
+ jsonfile: 6.1.0
+ universalify: 2.0.1
+
+ fsevents@2.3.3:
+ optional: true
+
+ function-bind@1.1.2: {}
+
+ gensync@1.0.0-beta.2: {}
+
+ get-intrinsic@1.3.0:
+ dependencies:
+ call-bind-apply-helpers: 1.0.2
+ es-define-property: 1.0.1
+ es-errors: 1.3.0
+ es-object-atoms: 1.1.1
+ function-bind: 1.1.2
+ get-proto: 1.0.1
+ gopd: 1.2.0
+ has-symbols: 1.1.0
+ hasown: 2.0.2
+ math-intrinsics: 1.1.0
+
+ get-proto@1.0.1:
+ dependencies:
+ dunder-proto: 1.0.1
+ es-object-atoms: 1.1.1
+
+ get-stream@9.0.1:
+ dependencies:
+ '@sec-ant/readable-stream': 0.4.1
+ is-stream: 4.0.1
+
+ glob-parent@5.1.2:
+ dependencies:
+ is-glob: 4.0.3
+
+ glob-parent@6.0.2:
+ dependencies:
+ is-glob: 4.0.3
+
+ globals@11.12.0: {}
+
+ globals@14.0.0: {}
+
+ gopd@1.2.0: {}
+
+ graceful-fs@4.2.11: {}
+
+ graphemer@1.4.0: {}
+
+ has-flag@4.0.0: {}
+
+ has-symbols@1.1.0: {}
+
+ has-tostringtag@1.0.2:
+ dependencies:
+ has-symbols: 1.1.0
+
+ hasown@2.0.2:
+ dependencies:
+ function-bind: 1.1.2
+
+ he@1.2.0: {}
+
+ hookable@5.5.3: {}
+
+ human-signals@8.0.0: {}
+
+ ignore@5.3.2: {}
+
+ import-fresh@3.3.1:
+ dependencies:
+ parent-module: 1.0.1
+ resolve-from: 4.0.0
+
+ imurmurhash@0.1.4: {}
+
+ is-docker@3.0.0: {}
+
+ is-extglob@2.1.1: {}
+
+ is-glob@4.0.3:
+ dependencies:
+ is-extglob: 2.1.1
+
+ is-inside-container@1.0.0:
+ dependencies:
+ is-docker: 3.0.0
+
+ is-number@7.0.0: {}
+
+ is-plain-obj@4.1.0: {}
+
+ is-stream@4.0.1: {}
+
+ is-unicode-supported@2.1.0: {}
+
+ is-what@4.1.16: {}
+
+ is-wsl@3.1.0:
+ dependencies:
+ is-inside-container: 1.0.0
+
+ isexe@2.0.0: {}
+
+ isexe@3.1.1: {}
+
+ jiti@2.4.2: {}
+
+ js-tokens@4.0.0: {}
+
+ js-yaml@4.1.0:
+ dependencies:
+ argparse: 2.0.1
+
+ jsesc@3.1.0: {}
+
+ json-buffer@3.0.1: {}
+
+ json-parse-even-better-errors@4.0.0: {}
+
+ json-schema-traverse@0.4.1: {}
+
+ json-stable-stringify-without-jsonify@1.0.1: {}
+
+ json5@2.2.3: {}
+
+ jsonfile@6.1.0:
+ dependencies:
+ universalify: 2.0.1
+ optionalDependencies:
+ graceful-fs: 4.2.11
+
+ keyv@4.5.4:
+ dependencies:
+ json-buffer: 3.0.1
+
+ kolorist@1.8.0: {}
+
+ levn@0.4.1:
+ dependencies:
+ prelude-ls: 1.2.1
+ type-check: 0.4.0
+
+ locate-path@6.0.0:
+ dependencies:
+ p-locate: 5.0.0
+
+ lodash-es@4.17.21: {}
+
+ lodash-unified@1.0.3(@types/lodash-es@4.17.12)(lodash-es@4.17.21)(lodash@4.17.21):
+ dependencies:
+ '@types/lodash-es': 4.17.12
+ lodash: 4.17.21
+ lodash-es: 4.17.21
+
+ lodash.merge@4.6.2: {}
+
+ lodash@4.17.21: {}
+
+ lru-cache@5.1.1:
+ dependencies:
+ yallist: 3.1.1
+
+ magic-string@0.30.17:
+ dependencies:
+ '@jridgewell/sourcemap-codec': 1.5.0
+
+ math-intrinsics@1.1.0: {}
+
+ memoize-one@6.0.0: {}
+
+ memorystream@0.3.1: {}
+
+ merge2@1.4.1: {}
+
+ micromatch@4.0.8:
+ dependencies:
+ braces: 3.0.3
+ picomatch: 2.3.1
+
+ mime-db@1.52.0: {}
+
+ mime-types@2.1.35:
+ dependencies:
+ mime-db: 1.52.0
+
+ minimatch@3.1.2:
+ dependencies:
+ brace-expansion: 1.1.11
+
+ minimatch@9.0.5:
+ dependencies:
+ brace-expansion: 2.0.1
+
+ mitt@3.0.1: {}
+
+ moment@2.30.1: {}
+
+ mrmime@2.0.1: {}
+
+ ms@2.1.3: {}
+
+ muggle-string@0.4.1: {}
+
+ nanoid@3.3.10: {}
+
+ nanoid@5.1.4: {}
+
+ natural-compare@1.4.0: {}
+
+ node-releases@2.0.19: {}
+
+ normalize-wheel-es@1.2.0: {}
+
+ npm-normalize-package-bin@4.0.0: {}
+
+ npm-run-all2@7.0.2:
+ dependencies:
+ ansi-styles: 6.2.1
+ cross-spawn: 7.0.6
+ memorystream: 0.3.1
+ minimatch: 9.0.5
+ pidtree: 0.6.0
+ read-package-json-fast: 4.0.0
+ shell-quote: 1.8.2
+ which: 5.0.0
+
+ npm-run-path@6.0.0:
+ dependencies:
+ path-key: 4.0.0
+ unicorn-magic: 0.3.0
+
+ nth-check@2.1.1:
+ dependencies:
+ boolbase: 1.0.0
+
+ object-inspect@1.13.4: {}
+
+ open@10.1.0:
+ dependencies:
+ default-browser: 5.2.1
+ define-lazy-prop: 3.0.0
+ is-inside-container: 1.0.0
+ is-wsl: 3.1.0
+
+ optionator@0.9.4:
+ dependencies:
+ deep-is: 0.1.4
+ fast-levenshtein: 2.0.6
+ levn: 0.4.1
+ prelude-ls: 1.2.1
+ type-check: 0.4.0
+ word-wrap: 1.2.5
+
+ p-limit@3.1.0:
+ dependencies:
+ yocto-queue: 0.1.0
+
+ p-locate@5.0.0:
+ dependencies:
+ p-limit: 3.1.0
+
+ parent-module@1.0.1:
+ dependencies:
+ callsites: 3.1.0
+
+ parse-ms@4.0.0: {}
+
+ path-browserify@1.0.1: {}
+
+ path-exists@4.0.0: {}
+
+ path-key@3.1.1: {}
+
+ path-key@4.0.0: {}
+
+ pathe@2.0.3: {}
+
+ perfect-debounce@1.0.0: {}
+
+ picocolors@1.1.1: {}
+
+ picomatch@2.3.1: {}
+
+ picomatch@4.0.2: {}
+
+ pidtree@0.6.0: {}
+
+ pinia@3.0.1(typescript@5.8.2)(vue@3.5.13(typescript@5.8.2)):
+ dependencies:
+ '@vue/devtools-api': 7.7.2
+ vue: 3.5.13(typescript@5.8.2)
+ optionalDependencies:
+ typescript: 5.8.2
+
+ plus-pro-components@0.1.21(element-plus@2.9.6(vue@3.5.13(typescript@5.8.2)))(vue@3.5.13(typescript@5.8.2)):
+ dependencies:
+ '@element-plus/icons-vue': 2.3.1(vue@3.5.13(typescript@5.8.2))
+ element-plus: 2.9.6(vue@3.5.13(typescript@5.8.2))
+ lodash-es: 4.17.21
+ sortablejs: 1.15.6
+ vue: 3.5.13(typescript@5.8.2)
+
+ postcss-selector-parser@6.1.2:
+ dependencies:
+ cssesc: 3.0.0
+ util-deprecate: 1.0.2
+
+ postcss@8.5.3:
+ dependencies:
+ nanoid: 3.3.10
+ picocolors: 1.1.1
+ source-map-js: 1.2.1
+
+ prelude-ls@1.2.1: {}
+
+ prettier-linter-helpers@1.0.0:
+ dependencies:
+ fast-diff: 1.3.0
+
+ prettier@3.5.3: {}
+
+ pretty-ms@9.2.0:
+ dependencies:
+ parse-ms: 4.0.0
+
+ proxy-from-env@1.1.0: {}
+
+ punycode@2.3.1: {}
+
+ qs@6.14.0:
+ dependencies:
+ side-channel: 1.1.0
+
+ queue-microtask@1.2.3: {}
+
+ read-package-json-fast@4.0.0:
+ dependencies:
+ json-parse-even-better-errors: 4.0.0
+ npm-normalize-package-bin: 4.0.0
+
+ resolve-from@4.0.0: {}
+
+ reusify@1.1.0: {}
+
+ rfdc@1.4.1: {}
+
+ rollup@4.35.0:
+ dependencies:
+ '@types/estree': 1.0.6
+ optionalDependencies:
+ '@rollup/rollup-android-arm-eabi': 4.35.0
+ '@rollup/rollup-android-arm64': 4.35.0
+ '@rollup/rollup-darwin-arm64': 4.35.0
+ '@rollup/rollup-darwin-x64': 4.35.0
+ '@rollup/rollup-freebsd-arm64': 4.35.0
+ '@rollup/rollup-freebsd-x64': 4.35.0
+ '@rollup/rollup-linux-arm-gnueabihf': 4.35.0
+ '@rollup/rollup-linux-arm-musleabihf': 4.35.0
+ '@rollup/rollup-linux-arm64-gnu': 4.35.0
+ '@rollup/rollup-linux-arm64-musl': 4.35.0
+ '@rollup/rollup-linux-loongarch64-gnu': 4.35.0
+ '@rollup/rollup-linux-powerpc64le-gnu': 4.35.0
+ '@rollup/rollup-linux-riscv64-gnu': 4.35.0
+ '@rollup/rollup-linux-s390x-gnu': 4.35.0
+ '@rollup/rollup-linux-x64-gnu': 4.35.0
+ '@rollup/rollup-linux-x64-musl': 4.35.0
+ '@rollup/rollup-win32-arm64-msvc': 4.35.0
+ '@rollup/rollup-win32-ia32-msvc': 4.35.0
+ '@rollup/rollup-win32-x64-msvc': 4.35.0
+ fsevents: 2.3.3
+
+ run-applescript@7.0.0: {}
+
+ run-parallel@1.2.0:
+ dependencies:
+ queue-microtask: 1.2.3
+
+ semver@6.3.1: {}
+
+ semver@7.7.1: {}
+
+ shebang-command@2.0.0:
+ dependencies:
+ shebang-regex: 3.0.0
+
+ shebang-regex@3.0.0: {}
+
+ shell-quote@1.8.2: {}
+
+ side-channel-list@1.0.0:
+ dependencies:
+ es-errors: 1.3.0
+ object-inspect: 1.13.4
+
+ side-channel-map@1.0.1:
+ dependencies:
+ call-bound: 1.0.4
+ es-errors: 1.3.0
+ get-intrinsic: 1.3.0
+ object-inspect: 1.13.4
+
+ side-channel-weakmap@1.0.2:
+ dependencies:
+ call-bound: 1.0.4
+ es-errors: 1.3.0
+ get-intrinsic: 1.3.0
+ object-inspect: 1.13.4
+ side-channel-map: 1.0.1
+
+ side-channel@1.1.0:
+ dependencies:
+ es-errors: 1.3.0
+ object-inspect: 1.13.4
+ side-channel-list: 1.0.0
+ side-channel-map: 1.0.1
+ side-channel-weakmap: 1.0.2
+
+ signal-exit@4.1.0: {}
+
+ sirv@3.0.1:
+ dependencies:
+ '@polka/url': 1.0.0-next.28
+ mrmime: 2.0.1
+ totalist: 3.0.1
+
+ sortablejs@1.15.6: {}
+
+ source-map-js@1.2.1: {}
+
+ speakingurl@14.0.1: {}
+
+ strip-final-newline@4.0.0: {}
+
+ strip-json-comments@3.1.1: {}
+
+ superjson@2.2.2:
+ dependencies:
+ copy-anything: 3.0.5
+
+ supports-color@7.2.0:
+ dependencies:
+ has-flag: 4.0.0
+
+ synckit@0.9.2:
+ dependencies:
+ '@pkgr/core': 0.1.1
+ tslib: 2.8.1
+
+ to-regex-range@5.0.1:
+ dependencies:
+ is-number: 7.0.0
+
+ totalist@3.0.1: {}
+
+ ts-api-utils@2.0.1(typescript@5.8.2):
+ dependencies:
+ typescript: 5.8.2
+
+ tslib@2.8.1: {}
+
+ type-check@0.4.0:
+ dependencies:
+ prelude-ls: 1.2.1
+
+ typescript-eslint@8.26.1(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2):
+ dependencies:
+ '@typescript-eslint/eslint-plugin': 8.26.1(@typescript-eslint/parser@8.26.1(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2))(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2)
+ '@typescript-eslint/parser': 8.26.1(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2)
+ '@typescript-eslint/utils': 8.26.1(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2)
+ eslint: 9.22.0(jiti@2.4.2)
+ typescript: 5.8.2
+ transitivePeerDependencies:
+ - supports-color
+
+ typescript@5.8.2: {}
+
+ undici-types@6.20.0: {}
+
+ unicorn-magic@0.3.0: {}
+
+ universalify@2.0.1: {}
+
+ update-browserslist-db@1.1.3(browserslist@4.24.4):
+ dependencies:
+ browserslist: 4.24.4
+ escalade: 3.2.0
+ picocolors: 1.1.1
+
+ uri-js@4.4.1:
+ dependencies:
+ punycode: 2.3.1
+
+ util-deprecate@1.0.2: {}
+
+ vite-hot-client@0.2.4(vite@6.2.2(@types/node@22.13.10)(jiti@2.4.2)):
+ dependencies:
+ vite: 6.2.2(@types/node@22.13.10)(jiti@2.4.2)
+
+ vite-plugin-inspect@0.8.9(rollup@4.35.0)(vite@6.2.2(@types/node@22.13.10)(jiti@2.4.2)):
+ dependencies:
+ '@antfu/utils': 0.7.10
+ '@rollup/pluginutils': 5.1.4(rollup@4.35.0)
+ debug: 4.4.0
+ error-stack-parser-es: 0.1.5
+ fs-extra: 11.3.0
+ open: 10.1.0
+ perfect-debounce: 1.0.0
+ picocolors: 1.1.1
+ sirv: 3.0.1
+ vite: 6.2.2(@types/node@22.13.10)(jiti@2.4.2)
+ transitivePeerDependencies:
+ - rollup
+ - supports-color
+
+ vite-plugin-vue-devtools@7.7.2(rollup@4.35.0)(vite@6.2.2(@types/node@22.13.10)(jiti@2.4.2))(vue@3.5.13(typescript@5.8.2)):
+ dependencies:
+ '@vue/devtools-core': 7.7.2(vite@6.2.2(@types/node@22.13.10)(jiti@2.4.2))(vue@3.5.13(typescript@5.8.2))
+ '@vue/devtools-kit': 7.7.2
+ '@vue/devtools-shared': 7.7.2
+ execa: 9.5.2
+ sirv: 3.0.1
+ vite: 6.2.2(@types/node@22.13.10)(jiti@2.4.2)
+ vite-plugin-inspect: 0.8.9(rollup@4.35.0)(vite@6.2.2(@types/node@22.13.10)(jiti@2.4.2))
+ vite-plugin-vue-inspector: 5.3.1(vite@6.2.2(@types/node@22.13.10)(jiti@2.4.2))
+ transitivePeerDependencies:
+ - '@nuxt/kit'
+ - rollup
+ - supports-color
+ - vue
+
+ vite-plugin-vue-inspector@5.3.1(vite@6.2.2(@types/node@22.13.10)(jiti@2.4.2)):
+ dependencies:
+ '@babel/core': 7.26.10
+ '@babel/plugin-proposal-decorators': 7.25.9(@babel/core@7.26.10)
+ '@babel/plugin-syntax-import-attributes': 7.26.0(@babel/core@7.26.10)
+ '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.26.10)
+ '@babel/plugin-transform-typescript': 7.26.8(@babel/core@7.26.10)
+ '@vue/babel-plugin-jsx': 1.4.0(@babel/core@7.26.10)
+ '@vue/compiler-dom': 3.5.13
+ kolorist: 1.8.0
+ magic-string: 0.30.17
+ vite: 6.2.2(@types/node@22.13.10)(jiti@2.4.2)
+ transitivePeerDependencies:
+ - supports-color
+
+ vite@6.2.2(@types/node@22.13.10)(jiti@2.4.2):
+ dependencies:
+ esbuild: 0.25.1
+ postcss: 8.5.3
+ rollup: 4.35.0
+ optionalDependencies:
+ '@types/node': 22.13.10
+ fsevents: 2.3.3
+ jiti: 2.4.2
+
+ vscode-uri@3.1.0: {}
+
+ vue-demi@0.14.10(vue@3.5.13(typescript@5.8.2)):
+ dependencies:
+ vue: 3.5.13(typescript@5.8.2)
+
+ vue-eslint-parser@10.1.1(eslint@9.22.0(jiti@2.4.2)):
+ dependencies:
+ debug: 4.4.0
+ eslint: 9.22.0(jiti@2.4.2)
+ eslint-scope: 8.3.0
+ eslint-visitor-keys: 4.2.0
+ espree: 10.3.0
+ esquery: 1.6.0
+ lodash: 4.17.21
+ semver: 7.7.1
+ transitivePeerDependencies:
+ - supports-color
+
+ vue-router@4.5.0(vue@3.5.13(typescript@5.8.2)):
+ dependencies:
+ '@vue/devtools-api': 6.6.4
+ vue: 3.5.13(typescript@5.8.2)
+
+ vue-tsc@2.2.8(typescript@5.8.2):
+ dependencies:
+ '@volar/typescript': 2.4.12
+ '@vue/language-core': 2.2.8(typescript@5.8.2)
+ typescript: 5.8.2
+
+ vue@3.5.13(typescript@5.8.2):
+ dependencies:
+ '@vue/compiler-dom': 3.5.13
+ '@vue/compiler-sfc': 3.5.13
+ '@vue/runtime-dom': 3.5.13
+ '@vue/server-renderer': 3.5.13(vue@3.5.13(typescript@5.8.2))
+ '@vue/shared': 3.5.13
+ optionalDependencies:
+ typescript: 5.8.2
+
+ which@2.0.2:
+ dependencies:
+ isexe: 2.0.0
+
+ which@5.0.0:
+ dependencies:
+ isexe: 3.1.1
+
+ word-wrap@1.2.5: {}
+
+ xml-name-validator@4.0.0: {}
+
+ yallist@3.1.1: {}
+
+ yocto-queue@0.1.0: {}
+
+ yoctocolors@2.1.1: {}
diff --git a/AdminwebPages/adminpageView/public/favicon.ico b/AdminwebPages/adminpageView/public/favicon.ico
new file mode 100644
index 0000000..df36fcf
--- /dev/null
+++ b/AdminwebPages/adminpageView/public/favicon.ico
Binary files differ
diff --git a/AdminwebPages/adminpageView/src/Api/EzApiBaseTypes.d.ts b/AdminwebPages/adminpageView/src/Api/EzApiBaseTypes.d.ts
new file mode 100644
index 0000000..ec229c3
--- /dev/null
+++ b/AdminwebPages/adminpageView/src/Api/EzApiBaseTypes.d.ts
@@ -0,0 +1,112 @@
+/*
+ * @FilePath: EzApiBaseTypes.d.ts
+ * @Author: 灏忛渚�
+ * @Date: 2024-04-15 15:31:08
+ * @LastEditors: Please set LastEditors
+ * @LastEditTime: 2025-02-06 12:53:28
+ * Copyright: 2024 MinTinge CO.,LTD. All Rights Reserved.
+ * @Descripttion: 鍐欏叆浣犵殑鎻忚堪
+ */
+/**
+ * 閫氱敤杩斿洖瀹氫箟
+ */
+export interface EzResult<T> {
+ /** 鎴怑zCoreResult鍔熺姸鎬� */
+ code: number;
+ /** 鏍囧噯鐘舵�� */
+ statusCode?: number | null;
+ /** 鏄惁鎴愬姛 */
+ success?: boolean;
+ data?: T | null;
+ /** 閿欒娑堟伅 */
+ error?: any | null;
+ /** 娑堟伅 */
+ message: string | null;
+ /** 闄勫姞鍊� */
+ extras?: any | null;
+ /** 鏃堕棿鎴� */
+ timestamp: number | null;
+}
+
+/**
+ * 绫诲瀷鍩虹锛屼富瑕佹槸瀹氫箟鍒涘缓浜哄垱寤烘椂闂翠慨鏀逛汉淇敼鏃堕棿锛屽凡缁忓垹闄ゆ爣蹇�
+ */
+export interface EzBaseModel {
+ /**
+ * 鍒涘缓浜�
+ */
+ createBy?: string | null;
+ /**
+ * 鍒涘缓鏃堕棿
+ */
+ createTime?: Date | null;
+ /**
+ * 淇敼鏃堕棿
+ */
+ upDataTime?: Date | null;
+ /**
+ * 淇敼浜�
+ */
+ upDataBy?: string | null;
+ /**
+ * 鍒犻櫎鏍囧織
+ */
+ isDeleted?: boolean;
+ /** 鏄惁鏈夋晥 */
+ isEN?: boolean;
+ /**
+ * 鎺掑簭
+ */
+ sort?: number | null;
+}
+
+/** 椤甸潰鎼滅储鍩虹被 */
+export interface EzPageModel {
+ /** 椤甸潰鍙�*/
+ pageIndex: number;
+ /** 姣忛〉琛屽ソ璁剧疆 */
+ pageSize: number;
+ /** 鎬昏鏁� */
+ totalCount?: number;
+}
+/**boolean绫诲瀷杩斿洖閫氱敤瀹氫箟 */
+export interface BoolResult extends EzResult<boolean> {}
+/**boolean绫诲瀷杩斿洖閫氱敤瀹氫箟 */
+export interface StringResult extends EzResult<string> {}
+/** 鍖哄煙鍧愭爣闆嗗悎 */
+export interface ZoneInfo {
+ /** 鍖哄煙鍧愭爣琛ㄩ泦鍚� */
+ coords: Array<GeoCoordinate>;
+ /** 涓績鐐瑰潗鏍� */
+ centrecoord?: GeoCoordinate;
+ /** 鍦板潃 */
+ address?: string;
+ /** id */
+ id?: string;
+}
+/** 缁忕含搴﹀潗鏍� */
+export interface GeoCoordinate {
+ /** 绾害 */
+ latitude: number;
+ /** 缁忓害 */
+ longitude: number;
+}
+
+/** 鏋氫妇灞炴�у垪琛ㄧ被鍨� */
+export interface EmunPrList {
+ /** key */
+ key?: string;
+ /** 鍊� */
+ value?: number;
+ /** 鎻忚堪 */
+ description?: string;
+}
+/**閫氱敤鏋氫妇杩斿洖灞炴�� */
+export interface EmunPrResult extends EzResult<EmunPrList[]> {}
+
+
+/** 鎺掑簭鏋氫妇 */
+export interface EzSort {
+ prop: string;
+ order: string; // 'asc' 鎴� 'desc'
+}
diff --git a/AdminwebPages/adminpageView/src/Api/apis.ts b/AdminwebPages/adminpageView/src/Api/apis.ts
new file mode 100644
index 0000000..e1fac99
--- /dev/null
+++ b/AdminwebPages/adminpageView/src/Api/apis.ts
@@ -0,0 +1,220 @@
+
+import type { EzResult } from "./EzApiBaseTypes";
+import axios from "axios";
+
+ /** 鑾峰彇DFlFunInfo鍒楄〃 */
+ export const GetTransferOrder=(data:Request) => {
+
+
+ return axios.post<EzResult<RetPageDataWeChatTransferOrder>>("https://yocaisim.51zhengcai.com/api/UserTransfer/GetTransferOrder", data);
+ };
+
+/**
+ * SSPageByWhereOrder锛屾牴鎹畐here鏌ヨ鏉′欢鍜宱rder鎺掑簭鑾峰彇鍒楄〃
+ */
+export interface Request {
+ order?: SSOrder;
+ page?: PageModel;
+ /**
+ * 鍒ゆ柇鏉′欢 蹇呴』鏄痡son鏍煎紡鐨勫瓧绗︿覆{xxx:ddd}
+ */
+ where?: object | string;
+}
+
+/**
+* SSOrder锛屾帓搴忔柟寮�
+*/
+export interface SSOrder {
+ des?: OrderByType;
+ /**
+ * 灞炴�у悕绉�
+ */
+ name?: null | string;
+}
+
+/**
+* OrderByType
+*/
+export enum OrderByType {
+ Asc = "Asc",
+ Desc = "Desc",
+}
+
+/**
+* PageModel
+*/
+export interface PageModel {
+ pageIndex?: number;
+ pageSize?: number;
+ totalCount?: number;
+}
+
+
+/**
+* RetPageData_WeChatTransferOrder锛岄�氱敤杩斿洖鍙傛暟
+*/
+export interface RetPageDataWeChatTransferOrder {
+ /**
+ * 鏁版嵁
+ */
+ data?: WeChatTransferOrder[] | null;
+ page?: PageModel;
+}
+
+/**
+* WeChatTransferOrder锛岃浆璐﹀崟璐︽ā鍨�
+*/
+export interface WeChatTransferOrder {
+ /**
+ * 閲嶆柊鏀粯璁㈠崟鍒楄〃
+ */
+ agWeChatTransferOrders?: WeChatTransferOrder[] | null;
+ /**
+ * 鑾峰彇鎴栬缃井淇℃壒娆″崟鍙枫��
+ */
+ batchId?: null | string;
+ /**
+ * 鑾峰彇鎴栬缃壒娆$殑鍚嶇О銆�
+ * 绀轰緥: "2019骞�1鏈堟繁鍦冲垎閮ㄦ姤閿�鍗�"
+ */
+ batchName?: null | string;
+ /**
+ * 鑾峰彇鎴栬缃壒娆$殑澶囨敞銆�
+ * 绀轰緥: "2019骞�1鏈堟繁鍦冲垎閮ㄦ姤閿�鍗�"
+ */
+ batchRemark?: null | string;
+ /**
+ * 鑾峰彇鎴栬缃壒娆$姸鎬併��
+ */
+ batchStatus?: null | string;
+ /**
+ * 鑾峰彇鎴栬缃叧闂壒娆$殑鍘熷洜銆�
+ * 绀轰緥: "OVERDUE_CLOSE"
+ */
+ closeReason?: null | string;
+ /**
+ * 鍒涘缓浜�
+ */
+ createBy?: null | string;
+ /**
+ * 鍒涘缓鏃堕棿
+ */
+ createTime?: Date | null;
+ /**
+ * 閿欒鏍囪瘑
+ */
+ errorCode?: null | string;
+
+ /**
+ * 閿欒娑堟伅
+ */
+ errorMsg?: null | string;
+ /**
+ * 鑾峰彇鎴栬缃壒娆′腑鐨勫け璐ユ�婚噾棰濄��
+ * 绀轰緥: 100000
+ */
+ failAmount?: number | null;
+ /**
+ * 鑾峰彇鎴栬缃壒娆′腑鐨勫け璐ラ」鐩暟銆�
+ * 绀轰緥: 1
+ */
+ failNum?: number | null;
+ /**
+ * ID
+ */
+ id?: number;
+ /**
+ * 鏄惁鍒犻櫎
+ */
+ isDeleted?: boolean;
+ /**
+ * 鏄惁鏈夋晥
+ */
+ isEn?: boolean;
+ /**
+ * 鏄惁宸茬粡瀹屾垚澶勭悊 榛樿鏈鐞�
+ */
+ isSetOK?: boolean;
+ /**
+ * 鑾峰彇鎴栬缃晢鎴锋壒娆″崟鍙枫��
+ */
+ outBatchNumber?: null | string;
+ /**
+ * 鏍囨敞
+ */
+ remake?: null | string;
+ /**
+ * 鍐嶆鍙戣捣鏃� 鐨勬弿杩�
+ */
+ remakeDes?: null | string;
+ /**
+ * 鎺掑簭
+ */
+ sort?: number | null;
+ /**
+ * 鑾峰彇鎴栬缃壒娆′腑鐨勬垚鍔熸�婚噾棰濄��
+ * 绀轰緥: 3900000
+ */
+ successAmount?: number | null;
+ /**
+ * 鑾峰彇鎴栬缃壒娆′腑鐨勬垚鍔熼」鐩暟銆�
+ * 绀轰緥: 199
+ */
+ successNum?: number | null;
+ /**
+ * 绉熸埛
+ */
+ tenantID?: number | null;
+ /**
+ * 鑾峰彇鎴栬缃壒娆′腑鐨勬�婚噾棰濄��
+ * 绀轰緥: 4000000
+ */
+ totalAmount?: number | null;
+ /**
+ * 鑾峰彇鎴栬缃壒娆′腑鐨勯」鐩�绘暟銆�
+ * 绀轰緥: 200
+ */
+ totalNum?: number | null;
+
+ /**
+ * 鑾峰彇鎴栬缃浆璐﹀満鏅爣璇嗙銆�
+ * 绀轰緥: "1000"
+ */
+ transferSceneId?: null | string;
+ /**
+ * 淇敼浜�
+ */
+ upDataBy?: null | string;
+ /**鏃堕棿绛涢�夋暟缁� */
+ DataTime?:Date[]|string;
+ /**
+ * 淇敼鏃堕棿
+ */
+ upDataTime?: string | null;
+
+ /**
+ * 鐢ㄦ埛ID銆�
+ */
+ userID?: number;
+ /**
+ * 鐢ㄦ埛韬唤璇�
+ */
+ userIDCode?: null | string;
+ /**
+ * 鍚嶅瓧
+ */
+ userName?: null | string;
+ /**
+ * 鏄惁閲嶆柊鍙戣捣鏀粯锛屽綋鏀粯澶辫触鍚庯紝瓒呭嚭閲嶆柊鐨勬敮浠樺崟澶辫触鍚庯紝闇�瑕侀噸鏂版洿鎹㈠崟鍙烽噸鏂板彂璧锋柊鐨勬敮浠樿姹傦紝閲嶆柊鍙戣捣鏀粯璇锋眰鍗�
+ */
+ weChatTransferOrderPrId?: number | null;
+
+ YiTiXianGz?:number
+
+ ZhongGz?:number
+ itCode?:string|null
+}
+
+
+
+
diff --git a/AdminwebPages/adminpageView/src/App.vue b/AdminwebPages/adminpageView/src/App.vue
new file mode 100644
index 0000000..a0dda38
--- /dev/null
+++ b/AdminwebPages/adminpageView/src/App.vue
@@ -0,0 +1,27 @@
+<!--
+ * @FilePath: App.vue
+ * @Author: 灏忛渚�
+ * @Date: 2025-03-17 09:36:48
+ * @LastEditors: Please set LastEditors
+ * @LastEditTime: 2025-03-18 10:33:24
+ * Copyright: 2025 MinTinge CO.,LTD. All Rights Reserved.
+ * @Descripttion: 鍐欏叆浣犵殑鎻忚堪
+-->
+<script setup lang="ts">
+import { RouterLink, RouterView } from 'vue-router'
+</script>
+
+<template>
+
+<div style="width: 100%; background-color: burlywood; height: 100%;">
+ <RouterView />
+</div>
+
+
+
+
+</template>
+
+<style lang="scss">
+
+</style>
diff --git a/AdminwebPages/adminpageView/src/assets/base.css b/AdminwebPages/adminpageView/src/assets/base.css
new file mode 100644
index 0000000..8816868
--- /dev/null
+++ b/AdminwebPages/adminpageView/src/assets/base.css
@@ -0,0 +1,86 @@
+/* color palette from <https://github.com/vuejs/theme> */
+:root {
+ --vt-c-white: #ffffff;
+ --vt-c-white-soft: #f8f8f8;
+ --vt-c-white-mute: #f2f2f2;
+
+ --vt-c-black: #181818;
+ --vt-c-black-soft: #222222;
+ --vt-c-black-mute: #282828;
+
+ --vt-c-indigo: #2c3e50;
+
+ --vt-c-divider-light-1: rgba(60, 60, 60, 0.29);
+ --vt-c-divider-light-2: rgba(60, 60, 60, 0.12);
+ --vt-c-divider-dark-1: rgba(84, 84, 84, 0.65);
+ --vt-c-divider-dark-2: rgba(84, 84, 84, 0.48);
+
+ --vt-c-text-light-1: var(--vt-c-indigo);
+ --vt-c-text-light-2: rgba(60, 60, 60, 0.66);
+ --vt-c-text-dark-1: var(--vt-c-white);
+ --vt-c-text-dark-2: rgba(235, 235, 235, 0.64);
+}
+
+/* semantic color variables for this project */
+:root {
+ --color-background: var(--vt-c-white);
+ --color-background-soft: var(--vt-c-white-soft);
+ --color-background-mute: var(--vt-c-white-mute);
+
+ --color-border: var(--vt-c-divider-light-2);
+ --color-border-hover: var(--vt-c-divider-light-1);
+
+ --color-heading: var(--vt-c-text-light-1);
+ --color-text: var(--vt-c-text-light-1);
+
+ --section-gap: 160px;
+}
+
+@media (prefers-color-scheme: dark) {
+ :root {
+ --color-background: var(--vt-c-black);
+ --color-background-soft: var(--vt-c-black-soft);
+ --color-background-mute: var(--vt-c-black-mute);
+
+ --color-border: var(--vt-c-divider-dark-2);
+ --color-border-hover: var(--vt-c-divider-dark-1);
+
+ --color-heading: var(--vt-c-text-dark-1);
+ --color-text: var(--vt-c-text-dark-2);
+ }
+}
+
+*,
+*::before,
+*::after {
+ box-sizing: border-box;
+ margin: 0;
+ font-weight: normal;
+}
+
+body {
+ min-height: 100vh;
+ color: var(--color-text);
+ background: var(--color-background);
+ transition:
+ color 0.5s,
+ background-color 0.5s;
+ line-height: 1.6;
+ font-family:
+ Inter,
+ -apple-system,
+ BlinkMacSystemFont,
+ 'Segoe UI',
+ Roboto,
+ Oxygen,
+ Ubuntu,
+ Cantarell,
+ 'Fira Sans',
+ 'Droid Sans',
+ 'Helvetica Neue',
+ sans-serif;
+ font-size: 15px;
+ text-rendering: optimizeLegibility;
+ -webkit-font-smoothing: antialiased;
+ -moz-osx-font-smoothing: grayscale;
+}
diff --git a/AdminwebPages/adminpageView/src/assets/logo.svg b/AdminwebPages/adminpageView/src/assets/logo.svg
new file mode 100644
index 0000000..7565660
--- /dev/null
+++ b/AdminwebPages/adminpageView/src/assets/logo.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 261.76 226.69"><path d="M161.096.001l-30.225 52.351L100.647.001H-.005l130.877 226.688L261.749.001z" fill="#41b883"/><path d="M161.096.001l-30.225 52.351L100.647.001H52.346l78.526 136.01L209.398.001z" fill="#34495e"/></svg>
diff --git a/AdminwebPages/adminpageView/src/assets/main.css b/AdminwebPages/adminpageView/src/assets/main.css
new file mode 100644
index 0000000..9af2a06
--- /dev/null
+++ b/AdminwebPages/adminpageView/src/assets/main.css
@@ -0,0 +1,16 @@
+@import './base.css';
+*{
+ margin: 0 ;
+ padding: 0;
+}
+#app {
+ width: 100vw;
+ height: 100vh;
+ margin: 10px 0px 0px 0px ;
+
+ padding: 2px;
+ font-weight: normal;
+}
+
+
+
diff --git a/AdminwebPages/adminpageView/src/components/HelloWorld.vue b/AdminwebPages/adminpageView/src/components/HelloWorld.vue
new file mode 100644
index 0000000..d174cf8
--- /dev/null
+++ b/AdminwebPages/adminpageView/src/components/HelloWorld.vue
@@ -0,0 +1,41 @@
+<script setup lang="ts">
+defineProps<{
+ msg: string
+}>()
+</script>
+
+<template>
+ <div class="greetings">
+ <h1 class="green">{{ msg }}</h1>
+ <h3>
+ You鈥檝e successfully created a project with
+ <a href="https://vite.dev/" target="_blank" rel="noopener">Vite</a> +
+ <a href="https://vuejs.org/" target="_blank" rel="noopener">Vue 3</a>. What's next?
+ </h3>
+ </div>
+</template>
+
+<style scoped>
+h1 {
+ font-weight: 500;
+ font-size: 2.6rem;
+ position: relative;
+ top: -10px;
+}
+
+h3 {
+ font-size: 1.2rem;
+}
+
+.greetings h1,
+.greetings h3 {
+ text-align: center;
+}
+
+@media (min-width: 1024px) {
+ .greetings h1,
+ .greetings h3 {
+ text-align: left;
+ }
+}
+</style>
diff --git a/AdminwebPages/adminpageView/src/components/TheWelcome.vue b/AdminwebPages/adminpageView/src/components/TheWelcome.vue
new file mode 100644
index 0000000..ae6eec3
--- /dev/null
+++ b/AdminwebPages/adminpageView/src/components/TheWelcome.vue
@@ -0,0 +1,94 @@
+<script setup lang="ts">
+import WelcomeItem from './WelcomeItem.vue'
+import DocumentationIcon from './icons/IconDocumentation.vue'
+import ToolingIcon from './icons/IconTooling.vue'
+import EcosystemIcon from './icons/IconEcosystem.vue'
+import CommunityIcon from './icons/IconCommunity.vue'
+import SupportIcon from './icons/IconSupport.vue'
+
+const openReadmeInEditor = () => fetch('/__open-in-editor?file=README.md')
+</script>
+
+<template>
+ <WelcomeItem>
+ <template #icon>
+ <DocumentationIcon />
+ </template>
+ <template #heading>Documentation</template>
+
+ Vue鈥檚
+ <a href="https://vuejs.org/" target="_blank" rel="noopener">official documentation</a>
+ provides you with all information you need to get started.
+ </WelcomeItem>
+
+ <WelcomeItem>
+ <template #icon>
+ <ToolingIcon />
+ </template>
+ <template #heading>Tooling</template>
+
+ This project is served and bundled with
+ <a href="https://vite.dev/guide/features.html" target="_blank" rel="noopener">Vite</a>. The
+ recommended IDE setup is
+ <a href="https://code.visualstudio.com/" target="_blank" rel="noopener">VSCode</a>
+ +
+ <a href="https://github.com/johnsoncodehk/volar" target="_blank" rel="noopener">Volar</a>. If
+ you need to test your components and web pages, check out
+ <a href="https://vitest.dev/" target="_blank" rel="noopener">Vitest</a>
+ and
+ <a href="https://www.cypress.io/" target="_blank" rel="noopener">Cypress</a>
+ /
+ <a href="https://playwright.dev/" target="_blank" rel="noopener">Playwright</a>.
+
+ <br />
+
+ More instructions are available in
+ <a href="javascript:void(0)" @click="openReadmeInEditor"><code>README.md</code></a
+ >.
+ </WelcomeItem>
+
+ <WelcomeItem>
+ <template #icon>
+ <EcosystemIcon />
+ </template>
+ <template #heading>Ecosystem</template>
+
+ Get official tools and libraries for your project:
+ <a href="https://pinia.vuejs.org/" target="_blank" rel="noopener">Pinia</a>,
+ <a href="https://router.vuejs.org/" target="_blank" rel="noopener">Vue Router</a>,
+ <a href="https://test-utils.vuejs.org/" target="_blank" rel="noopener">Vue Test Utils</a>, and
+ <a href="https://github.com/vuejs/devtools" target="_blank" rel="noopener">Vue Dev Tools</a>. If
+ you need more resources, we suggest paying
+ <a href="https://github.com/vuejs/awesome-vue" target="_blank" rel="noopener">Awesome Vue</a>
+ a visit.
+ </WelcomeItem>
+
+ <WelcomeItem>
+ <template #icon>
+ <CommunityIcon />
+ </template>
+ <template #heading>Community</template>
+
+ Got stuck? Ask your question on
+ <a href="https://chat.vuejs.org" target="_blank" rel="noopener">Vue Land</a>
+ (our official Discord server), or
+ <a href="https://stackoverflow.com/questions/tagged/vue.js" target="_blank" rel="noopener"
+ >StackOverflow</a
+ >. You should also follow the official
+ <a href="https://bsky.app/profile/vuejs.org" target="_blank" rel="noopener">@vuejs.org</a>
+ Bluesky account or the
+ <a href="https://x.com/vuejs" target="_blank" rel="noopener">@vuejs</a>
+ X account for latest news in the Vue world.
+ </WelcomeItem>
+
+ <WelcomeItem>
+ <template #icon>
+ <SupportIcon />
+ </template>
+ <template #heading>Support Vue</template>
+
+ As an independent project, Vue relies on community backing for its sustainability. You can help
+ us by
+ <a href="https://vuejs.org/sponsor/" target="_blank" rel="noopener">becoming a sponsor</a>.
+ </WelcomeItem>
+</template>
diff --git a/AdminwebPages/adminpageView/src/components/WelcomeItem.vue b/AdminwebPages/adminpageView/src/components/WelcomeItem.vue
new file mode 100644
index 0000000..6d7086a
--- /dev/null
+++ b/AdminwebPages/adminpageView/src/components/WelcomeItem.vue
@@ -0,0 +1,87 @@
+<template>
+ <div class="item">
+ <i>
+ <slot name="icon"></slot>
+ </i>
+ <div class="details">
+ <h3>
+ <slot name="heading"></slot>
+ </h3>
+ <slot></slot>
+ </div>
+ </div>
+</template>
+
+<style scoped>
+.item {
+ margin-top: 2rem;
+ display: flex;
+ position: relative;
+}
+
+.details {
+ flex: 1;
+ margin-left: 1rem;
+}
+
+i {
+ display: flex;
+ place-items: center;
+ place-content: center;
+ width: 32px;
+ height: 32px;
+
+ color: var(--color-text);
+}
+
+h3 {
+ font-size: 1.2rem;
+ font-weight: 500;
+ margin-bottom: 0.4rem;
+ color: var(--color-heading);
+}
+
+@media (min-width: 1024px) {
+ .item {
+ margin-top: 0;
+ padding: 0.4rem 0 1rem calc(var(--section-gap) / 2);
+ }
+
+ i {
+ top: calc(50% - 25px);
+ left: -26px;
+ position: absolute;
+ border: 1px solid var(--color-border);
+ background: var(--color-background);
+ border-radius: 8px;
+ width: 50px;
+ height: 50px;
+ }
+
+ .item:before {
+ content: ' ';
+ border-left: 1px solid var(--color-border);
+ position: absolute;
+ left: 0;
+ bottom: calc(50% + 25px);
+ height: calc(50% - 25px);
+ }
+
+ .item:after {
+ content: ' ';
+ border-left: 1px solid var(--color-border);
+ position: absolute;
+ left: 0;
+ top: calc(50% + 25px);
+ height: calc(50% - 25px);
+ }
+
+ .item:first-of-type:before {
+ display: none;
+ }
+
+ .item:last-of-type:after {
+ display: none;
+ }
+}
+</style>
diff --git a/AdminwebPages/adminpageView/src/components/icons/IconCommunity.vue b/AdminwebPages/adminpageView/src/components/icons/IconCommunity.vue
new file mode 100644
index 0000000..2dc8b05
--- /dev/null
+++ b/AdminwebPages/adminpageView/src/components/icons/IconCommunity.vue
@@ -0,0 +1,7 @@
+<template>
+ <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="currentColor">
+ <path
+ d="M15 4a1 1 0 1 0 0 2V4zm0 11v-1a1 1 0 0 0-1 1h1zm0 4l-.707.707A1 1 0 0 0 16 19h-1zm-4-4l.707-.707A1 1 0 0 0 11 14v1zm-4.707-1.293a1 1 0 0 0-1.414 1.414l1.414-1.414zm-.707.707l-.707-.707.707.707zM9 11v-1a1 1 0 0 0-.707.293L9 11zm-4 0h1a1 1 0 0 0-1-1v1zm0 4H4a1 1 0 0 0 1.707.707L5 15zm10-9h2V4h-2v2zm2 0a1 1 0 0 1 1 1h2a3 3 0 0 0-3-3v2zm1 1v6h2V7h-2zm0 6a1 1 0 0 1-1 1v2a3 3 0 0 0 3-3h-2zm-1 1h-2v2h2v-2zm-3 1v4h2v-4h-2zm1.707 3.293l-4-4-1.414 1.414 4 4 1.414-1.414zM11 14H7v2h4v-2zm-4 0c-.276 0-.525-.111-.707-.293l-1.414 1.414C5.42 15.663 6.172 16 7 16v-2zm-.707 1.121l3.414-3.414-1.414-1.414-3.414 3.414 1.414 1.414zM9 12h4v-2H9v2zm4 0a3 3 0 0 0 3-3h-2a1 1 0 0 1-1 1v2zm3-3V3h-2v6h2zm0-6a3 3 0 0 0-3-3v2a1 1 0 0 1 1 1h2zm-3-3H3v2h10V0zM3 0a3 3 0 0 0-3 3h2a1 1 0 0 1 1-1V0zM0 3v6h2V3H0zm0 6a3 3 0 0 0 3 3v-2a1 1 0 0 1-1-1H0zm3 3h2v-2H3v2zm1-1v4h2v-4H4zm1.707 4.707l.586-.586-1.414-1.414-.586.586 1.414 1.414z"
+ />
+ </svg>
+</template>
diff --git a/AdminwebPages/adminpageView/src/components/icons/IconDocumentation.vue b/AdminwebPages/adminpageView/src/components/icons/IconDocumentation.vue
new file mode 100644
index 0000000..6d4791c
--- /dev/null
+++ b/AdminwebPages/adminpageView/src/components/icons/IconDocumentation.vue
@@ -0,0 +1,7 @@
+<template>
+ <svg xmlns="http://www.w3.org/2000/svg" width="20" height="17" fill="currentColor">
+ <path
+ d="M11 2.253a1 1 0 1 0-2 0h2zm-2 13a1 1 0 1 0 2 0H9zm.447-12.167a1 1 0 1 0 1.107-1.666L9.447 3.086zM1 2.253L.447 1.42A1 1 0 0 0 0 2.253h1zm0 13H0a1 1 0 0 0 1.553.833L1 15.253zm8.447.833a1 1 0 1 0 1.107-1.666l-1.107 1.666zm0-14.666a1 1 0 1 0 1.107 1.666L9.447 1.42zM19 2.253h1a1 1 0 0 0-.447-.833L19 2.253zm0 13l-.553.833A1 1 0 0 0 20 15.253h-1zm-9.553-.833a1 1 0 1 0 1.107 1.666L9.447 14.42zM9 2.253v13h2v-13H9zm1.553-.833C9.203.523 7.42 0 5.5 0v2c1.572 0 2.961.431 3.947 1.086l1.107-1.666zM5.5 0C3.58 0 1.797.523.447 1.42l1.107 1.666C2.539 2.431 3.928 2 5.5 2V0zM0 2.253v13h2v-13H0zm1.553 13.833C2.539 15.431 3.928 15 5.5 15v-2c-1.92 0-3.703.523-5.053 1.42l1.107 1.666zM5.5 15c1.572 0 2.961.431 3.947 1.086l1.107-1.666C9.203 13.523 7.42 13 5.5 13v2zm5.053-11.914C11.539 2.431 12.928 2 14.5 2V0c-1.92 0-3.703.523-5.053 1.42l1.107 1.666zM14.5 2c1.573 0 2.961.431 3.947 1.086l1.107-1.666C18.203.523 16.421 0 14.5 0v2zm3.5.253v13h2v-13h-2zm1.553 12.167C18.203 13.523 16.421 13 14.5 13v2c1.573 0 2.961.431 3.947 1.086l1.107-1.666zM14.5 13c-1.92 0-3.703.523-5.053 1.42l1.107 1.666C11.539 15.431 12.928 15 14.5 15v-2z"
+ />
+ </svg>
+</template>
diff --git a/AdminwebPages/adminpageView/src/components/icons/IconEcosystem.vue b/AdminwebPages/adminpageView/src/components/icons/IconEcosystem.vue
new file mode 100644
index 0000000..c3a4f07
--- /dev/null
+++ b/AdminwebPages/adminpageView/src/components/icons/IconEcosystem.vue
@@ -0,0 +1,7 @@
+<template>
+ <svg xmlns="http://www.w3.org/2000/svg" width="18" height="20" fill="currentColor">
+ <path
+ d="M11.447 8.894a1 1 0 1 0-.894-1.789l.894 1.789zm-2.894-.789a1 1 0 1 0 .894 1.789l-.894-1.789zm0 1.789a1 1 0 1 0 .894-1.789l-.894 1.789zM7.447 7.106a1 1 0 1 0-.894 1.789l.894-1.789zM10 9a1 1 0 1 0-2 0h2zm-2 2.5a1 1 0 1 0 2 0H8zm9.447-5.606a1 1 0 1 0-.894-1.789l.894 1.789zm-2.894-.789a1 1 0 1 0 .894 1.789l-.894-1.789zm2 .789a1 1 0 1 0 .894-1.789l-.894 1.789zm-1.106-2.789a1 1 0 1 0-.894 1.789l.894-1.789zM18 5a1 1 0 1 0-2 0h2zm-2 2.5a1 1 0 1 0 2 0h-2zm-5.447-4.606a1 1 0 1 0 .894-1.789l-.894 1.789zM9 1l.447-.894a1 1 0 0 0-.894 0L9 1zm-2.447.106a1 1 0 1 0 .894 1.789l-.894-1.789zm-6 3a1 1 0 1 0 .894 1.789L.553 4.106zm2.894.789a1 1 0 1 0-.894-1.789l.894 1.789zm-2-.789a1 1 0 1 0-.894 1.789l.894-1.789zm1.106 2.789a1 1 0 1 0 .894-1.789l-.894 1.789zM2 5a1 1 0 1 0-2 0h2zM0 7.5a1 1 0 1 0 2 0H0zm8.553 12.394a1 1 0 1 0 .894-1.789l-.894 1.789zm-1.106-2.789a1 1 0 1 0-.894 1.789l.894-1.789zm1.106 1a1 1 0 1 0 .894 1.789l-.894-1.789zm2.894.789a1 1 0 1 0-.894-1.789l.894 1.789zM8 19a1 1 0 1 0 2 0H8zm2-2.5a1 1 0 1 0-2 0h2zm-7.447.394a1 1 0 1 0 .894-1.789l-.894 1.789zM1 15H0a1 1 0 0 0 .553.894L1 15zm1-2.5a1 1 0 1 0-2 0h2zm12.553 2.606a1 1 0 1 0 .894 1.789l-.894-1.789zM17 15l.447.894A1 1 0 0 0 18 15h-1zm1-2.5a1 1 0 1 0-2 0h2zm-7.447-5.394l-2 1 .894 1.789 2-1-.894-1.789zm-1.106 1l-2-1-.894 1.789 2 1 .894-1.789zM8 9v2.5h2V9H8zm8.553-4.894l-2 1 .894 1.789 2-1-.894-1.789zm.894 0l-2-1-.894 1.789 2 1 .894-1.789zM16 5v2.5h2V5h-2zm-4.553-3.894l-2-1-.894 1.789 2 1 .894-1.789zm-2.894-1l-2 1 .894 1.789 2-1L8.553.106zM1.447 5.894l2-1-.894-1.789-2 1 .894 1.789zm-.894 0l2 1 .894-1.789-2-1-.894 1.789zM0 5v2.5h2V5H0zm9.447 13.106l-2-1-.894 1.789 2 1 .894-1.789zm0 1.789l2-1-.894-1.789-2 1 .894 1.789zM10 19v-2.5H8V19h2zm-6.553-3.894l-2-1-.894 1.789 2 1 .894-1.789zM2 15v-2.5H0V15h2zm13.447 1.894l2-1-.894-1.789-2 1 .894 1.789zM18 15v-2.5h-2V15h2z"
+ />
+ </svg>
+</template>
diff --git a/AdminwebPages/adminpageView/src/components/icons/IconSupport.vue b/AdminwebPages/adminpageView/src/components/icons/IconSupport.vue
new file mode 100644
index 0000000..7452834
--- /dev/null
+++ b/AdminwebPages/adminpageView/src/components/icons/IconSupport.vue
@@ -0,0 +1,7 @@
+<template>
+ <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="currentColor">
+ <path
+ d="M10 3.22l-.61-.6a5.5 5.5 0 0 0-7.666.105 5.5 5.5 0 0 0-.114 7.665L10 18.78l8.39-8.4a5.5 5.5 0 0 0-.114-7.665 5.5 5.5 0 0 0-7.666-.105l-.61.61z"
+ />
+ </svg>
+</template>
diff --git a/AdminwebPages/adminpageView/src/components/icons/IconTooling.vue b/AdminwebPages/adminpageView/src/components/icons/IconTooling.vue
new file mode 100644
index 0000000..660598d
--- /dev/null
+++ b/AdminwebPages/adminpageView/src/components/icons/IconTooling.vue
@@ -0,0 +1,19 @@
+<!-- This icon is from <https://github.com/Templarian/MaterialDesign>, distributed under Apache 2.0 (https://www.apache.org/licenses/LICENSE-2.0) license-->
+<template>
+ <svg
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ aria-hidden="true"
+ role="img"
+ class="iconify iconify--mdi"
+ width="24"
+ height="24"
+ preserveAspectRatio="xMidYMid meet"
+ viewBox="0 0 24 24"
+ >
+ <path
+ d="M20 18v-4h-3v1h-2v-1H9v1H7v-1H4v4h16M6.33 8l-1.74 4H7v-1h2v1h6v-1h2v1h2.41l-1.74-4H6.33M9 5v1h6V5H9m12.84 7.61c.1.22.16.48.16.8V18c0 .53-.21 1-.6 1.41c-.4.4-.85.59-1.4.59H4c-.55 0-1-.19-1.4-.59C2.21 19 2 18.53 2 18v-4.59c0-.32.06-.58.16-.8L4.5 7.22C4.84 6.41 5.45 6 6.33 6H7V5c0-.55.18-1 .57-1.41C7.96 3.2 8.44 3 9 3h6c.56 0 1.04.2 1.43.59c.39.41.57.86.57 1.41v1h.67c.88 0 1.49.41 1.83 1.22l2.34 5.39z"
+ fill="currentColor"
+ ></path>
+ </svg>
+</template>
diff --git a/AdminwebPages/adminpageView/src/main.ts b/AdminwebPages/adminpageView/src/main.ts
new file mode 100644
index 0000000..772fd95
--- /dev/null
+++ b/AdminwebPages/adminpageView/src/main.ts
@@ -0,0 +1,35 @@
+/*
+ * @FilePath: main.ts
+ * @Author: 灏忛渚�
+ * @Date: 2025-03-17 09:36:48
+ * @LastEditors: Please set LastEditors
+ * @LastEditTime: 2025-03-18 11:55:41
+ * Copyright: 2025 MinTinge CO.,LTD. All Rights Reserved.
+ * @Descripttion: 鍐欏叆浣犵殑鎻忚堪
+ */
+import './assets/main.css'
+
+import { createApp } from 'vue'
+import { createPinia } from 'pinia'
+
+import App from './App.vue'
+import router from './router'
+import ElementPlus from 'element-plus'
+import 'element-plus/dist/index.css'
+import PlusProComponents from 'plus-pro-components'
+import 'plus-pro-components/index.css'
+
+import zhCn from 'element-plus/es/locale/lang/zh-cn'
+const app = createApp(App)
+app.use(ElementPlus,
+ {
+ locale: zhCn
+ }
+)
+app.use(PlusProComponents
+
+)
+app.use(createPinia())
+app.use(router)
+
+app.mount('#app')
diff --git a/AdminwebPages/adminpageView/src/router/index.ts b/AdminwebPages/adminpageView/src/router/index.ts
new file mode 100644
index 0000000..8858a6b
--- /dev/null
+++ b/AdminwebPages/adminpageView/src/router/index.ts
@@ -0,0 +1,37 @@
+/*
+ * @FilePath: index.ts
+ * @Author: 灏忛渚�
+ * @Date: 2025-03-17 09:36:48
+ * @LastEditors: Please set LastEditors
+ * @LastEditTime: 2025-03-18 10:10:00
+ * Copyright: 2025 MinTinge CO.,LTD. All Rights Reserved.
+ * @Descripttion: 鍐欏叆浣犵殑鎻忚堪
+ */
+import { createRouter, createWebHistory } from 'vue-router'
+import HomeView from '../views/HomeView.vue'
+
+const router = createRouter({
+ history: createWebHistory(import.meta.env.BASE_URL),
+ routes: [
+ {
+ path: '/',
+ name: 'home',
+ component: ()=>import('@/views/cylsgPayrollReport.vue'),
+ },
+ {
+ path: '/Report',
+ name: 'Report',
+ component: HomeView,
+ },
+ {
+ path: '/about',
+ name: 'about',
+ // route level code-splitting
+ // this generates a separate chunk (About.[hash].js) for this route
+ // which is lazy-loaded when the route is visited.
+ component: () => import('../views/AboutView.vue'),
+ },
+ ],
+})
+
+export default router
diff --git a/AdminwebPages/adminpageView/src/store/index.ts b/AdminwebPages/adminpageView/src/store/index.ts
new file mode 100644
index 0000000..a8dc752
--- /dev/null
+++ b/AdminwebPages/adminpageView/src/store/index.ts
@@ -0,0 +1,9 @@
+import type { App } from "vue";
+import { createPinia } from "pinia";
+const store = createPinia();
+
+export function setupStore(app: App<Element>) {
+ app.use(store);
+}
+
+export { store };
diff --git a/AdminwebPages/adminpageView/src/store/types.ts b/AdminwebPages/adminpageView/src/store/types.ts
new file mode 100644
index 0000000..ac79b05
--- /dev/null
+++ b/AdminwebPages/adminpageView/src/store/types.ts
@@ -0,0 +1,51 @@
+import type { RouteRecordName } from "vue-router";
+
+export type cacheType = {
+ mode: string;
+ name?: RouteRecordName;
+};
+
+export type positionType = {
+ startIndex?: number;
+ length?: number;
+};
+
+export type appType = {
+ sidebar: {
+ opened: boolean;
+ withoutAnimation: boolean;
+ // 鍒ゆ柇鏄惁鎵嬪姩鐐瑰嚮Collapse
+ isClickCollapse: boolean;
+ };
+ layout: string;
+ device: string;
+ isShowDouble: boolean;
+ viewportSize: { width: number; height: number };
+ sortSwap: boolean;
+};
+
+export type multiType = {
+ path: string;
+ name: string;
+ meta: any;
+ query?: object;
+ params?: object;
+};
+
+export type setType = {
+ title: string;
+ fixedHeader: boolean;
+ hiddenSideBar: boolean;
+};
+
+export type userType = {
+ avatar?: string;
+ username?: string;
+ nickname?: string;
+ roles?: Array<string>;
+ permissions?: Array<string>;
+ verifyCode?: string;
+ currentPage?: number;
+ isRemembered?: boolean;
+ loginDay?: number;
+};
diff --git a/AdminwebPages/adminpageView/src/stores/counter.ts b/AdminwebPages/adminpageView/src/stores/counter.ts
new file mode 100644
index 0000000..b6757ba
--- /dev/null
+++ b/AdminwebPages/adminpageView/src/stores/counter.ts
@@ -0,0 +1,12 @@
+import { ref, computed } from 'vue'
+import { defineStore } from 'pinia'
+
+export const useCounterStore = defineStore('counter', () => {
+ const count = ref(0)
+ const doubleCount = computed(() => count.value * 2)
+ function increment() {
+ count.value++
+ }
+
+ return { count, doubleCount, increment }
+})
diff --git a/AdminwebPages/adminpageView/src/views/AboutView.vue b/AdminwebPages/adminpageView/src/views/AboutView.vue
new file mode 100644
index 0000000..756ad2a
--- /dev/null
+++ b/AdminwebPages/adminpageView/src/views/AboutView.vue
@@ -0,0 +1,15 @@
+<template>
+ <div class="about">
+ <h1>This is an about page</h1>
+ </div>
+</template>
+
+<style>
+@media (min-width: 1024px) {
+ .about {
+ min-height: 100vh;
+ display: flex;
+ align-items: center;
+ }
+}
+</style>
diff --git a/AdminwebPages/adminpageView/src/views/HomeView.vue b/AdminwebPages/adminpageView/src/views/HomeView.vue
new file mode 100644
index 0000000..eeee65a
--- /dev/null
+++ b/AdminwebPages/adminpageView/src/views/HomeView.vue
@@ -0,0 +1,24 @@
+<!--
+ * @FilePath: HomeView.vue
+ * @Author: 灏忛渚�
+ * @Date: 2025-03-17 09:36:48
+ * @LastEditors: Please set LastEditors
+ * @LastEditTime: 2025-03-18 10:06:57
+ * Copyright: 2025 MinTinge CO.,LTD. All Rights Reserved.
+ * @Descripttion: 鍐欏叆浣犵殑鎻忚堪
+-->
+<script setup lang="ts">
+
+import TheWelcome from '../components/TheWelcome.vue'
+
+import reportview from '../views/cylsgPayrollReport.vue';
+
+
+
+</script>
+
+<template>
+
+ <reportview />
+
+</template>
diff --git a/AdminwebPages/adminpageView/src/views/cylsgPayrollReport.vue b/AdminwebPages/adminpageView/src/views/cylsgPayrollReport.vue
new file mode 100644
index 0000000..3cd37d6
--- /dev/null
+++ b/AdminwebPages/adminpageView/src/views/cylsgPayrollReport.vue
@@ -0,0 +1,282 @@
+<!--
+ * @FilePath: cylsgPayrollReport.vue
+ * @Author: 灏忛渚�
+ * @Date: 2025-03-17 09:45:10
+ * @LastEditors: Please set LastEditors
+ * @LastEditTime: 2025-03-19 11:33:32
+ * Copyright: 2025 MinTinge CO.,LTD. All Rights Reserved.
+ * @Descripttion: 鍐欏叆浣犵殑鎻忚堪
+-->
+<!-- -->
+<template>
+ <div>
+
+ <el-card>
+ <PlusForm v-model="formdata" :columns="FromColumns" :row-props="{ gutter: 100 }" :col-props="{
+ span: 4
+ }" @submit="mysubmit">
+ <template #footer="{ handleSubmit }">
+ <div style="margin: 0 auto">
+ <el-button type="primary" @click="handleSubmit">鎼滅储</el-button>
+
+
+ </div>
+ </template>
+ </PlusForm>
+ </el-card>
+ <PlusTable ref="plusTableInstance" :columns="tableConfig" :table-data="tableData" table-title="琛ㄦ牸" show-summary
+ :summary-method="getSummaries" :pagination="{ total, modelValue: pageInfo }"
+ @paginationChange="handlePaginationChange" adaptive />
+ </div>
+</template>
+<script setup lang='tsx'>
+import { GetTransferOrder, OrderByType, type WeChatTransferOrder } from '@/Api/apis';
+import moment from 'moment';
+import { valueEquals } from 'element-plus';
+import type { PlusColumn, PlusTableInstance, PageInfo } from 'plus-pro-components'
+import { useTable } from 'plus-pro-components'
+import { h, onMounted, ref, type VNode } from 'vue'
+const formdata = ref<WeChatTransferOrder>({
+ userName: null,
+ userIDCode: null,
+ DataTime: [],
+ itCode: null
+
+})
+
+const FromColumns: PlusColumn[] = [
+ {
+ label: '濮撳悕',
+ prop: 'userName',
+ tooltip: '鍚嶇О鏈�澶氭樉绀�6涓瓧绗�'
+ },
+ {
+ label: '韬唤璇佸彿鐮�',
+ labelWidth: 110,
+ width: 200,
+ prop: 'userIDCode',
+ tooltip: '鍚嶇О鏈�澶氭樉绀�6涓瓧绗�'
+ }
+ ,
+ {
+ label: '鐢佃瘽鍙风爜',
+ labelWidth: 110,
+ width: 200,
+ prop: 'itCode',
+ tooltip: '鍚嶇О鏈�澶氭樉绀�6涓瓧绗�'
+ },
+ {
+ label: '鏀粯鏃堕棿',
+ labelWidth: 110,
+ width: 400,
+ colProps: {
+ span: 8
+ },
+ prop: 'DataTime',
+ tooltip: '鏀粯鏃堕棿',
+ valueType: 'date-picker',
+ fieldProps: {
+ type: 'datetimerange',
+ startPlaceholder: '璇烽�夋嫨寮�濮嬫椂闂�',
+ endPlaceholder: '璇烽�夋嫨缁撴潫鏃堕棿',
+ rangeSeparator: '-',
+ valueFormat: 'YYYY-MM-DDTHH:mm:ss',
+
+ },
+
+
+
+ }
+]
+
+const tableConfig = ref<PlusColumn[]>(
+ [
+ {
+ label: '濮撳悕',
+ prop: 'userName',
+ width: 80
+ },
+ {
+ label: '韬唤璇�',
+ prop: 'userIDCode',
+ width: 170
+
+
+ },
+ {
+ label: '鐢佃瘽鍙风爜',
+ prop: 'itCode',
+ width: 120
+ },
+
+
+ {
+ width: 100,
+ label: '鎬婚搴�',
+ prop: 'totalAmount',
+ render: (value) => {
+
+ let formattedAmount = ((value ?? 0) / 100).toLocaleString('zh-CN', { style: 'currency', currency: 'CNY' });
+
+ return <span>{formattedAmount}鍏�</span>
+ }
+
+
+ },
+
+ {
+ width: 100,
+ label: '鎴愬姛棰濆害',
+ prop: 'successAmount',
+ sortable: true,
+ render: (value) => {
+
+ let formattedAmount = ((value ?? 0) / 100).toLocaleString('zh-CN', { style: 'currency', currency: 'CNY' });
+
+ return <span>{formattedAmount}鍏�</span>
+ }
+
+ },
+ {
+ width: 100,
+ label: '澶辫触棰濆害',
+ prop: 'failAmount',
+ sortable: true,
+ render: (value) => {
+
+ let formattedAmount = ((value ?? 0) / 100).toLocaleString('zh-CN', { style: 'currency', currency: 'CNY' });
+
+ return <span>{formattedAmount}鍏�</span>
+ }
+
+ },
+
+ {
+ width: 180,
+ label: '鎻愮幇鏃堕棿',
+ prop: 'upDataTime',
+ render: (value) => {
+ return <span>{moment(value).format('YYYY-MM-DD HH:mm:ss')}</span>
+ }
+
+ },
+ {
+
+ label: '鑵捐鍗曞彿',
+ prop: 'batchId'
+
+ },
+ {
+
+ label: '瀹㈡埛鍗曞彿',
+ prop: 'outBatchNumber'
+
+ },
+ {
+ width: 100,
+ label: '鎬诲伐璧�',
+ prop: 'zhongGz',
+ render: (value) => {
+
+ let formattedAmount = ((value ?? 0)).toLocaleString('zh-CN', { style: 'currency', currency: 'CNY' });
+
+ return <span>{formattedAmount}鍏�</span>
+ }
+
+ },
+ {
+ width: 100,
+ label: '宸叉彁宸ヨ祫',
+ prop: 'yiTiXianGz',
+ render: (value) => {
+ let formattedAmount = ((value ?? 0)).toLocaleString('zh-CN', { style: 'currency', currency: 'CNY' });
+
+ return <span>{formattedAmount}鍏�</span>
+ }
+
+ }
+
+ ]
+);
+
+const { tableData, pageInfo, total, loadingStatus } = useTable<WeChatTransferOrder[]>()
+
+onMounted(() => {
+ getList();
+})
+const getList = async () => {
+ loadingStatus.value = true
+ if (formdata.value.DataTime && Array.isArray(formdata.value.DataTime) && formdata.value.DataTime.length === 2) {
+ debugger
+ formdata.value.upDataTime = `${formdata.value.DataTime[0]}~${formdata.value.DataTime[1].toString()}`;
+ } else {
+
+ }
+ GetTransferOrder({
+ page: { pageIndex: pageInfo.value.page, pageSize: pageInfo.value.pageSize },
+ where: JSON.stringify(formdata.value),
+ order:{
+ name:"upDataTime",
+ des:OrderByType.Desc
+ }
+
+ }).then((res) => {
+
+ if (res.data.code == 1) {
+ tableData.value = res.data.data?.data as WeChatTransferOrder[];
+
+ total.value = res.data.data?.page?.totalCount as number;
+ }
+ }).finally(() => {
+ loadingStatus.value = false
+ })
+
+}
+
+
+const mysubmit = () => {
+ getList();
+}
+const getSummaries = (param: any) => {
+ const { columns, data } = param
+ const sums: (string | VNode)[] = []
+ columns.forEach((column: { property: string | number; }, index: number) => {
+ if (index === 0) {
+ sums[index] = h('div', { style: { textDecoration: 'underline' } }, [
+ '缁熻',
+ ])
+ return
+ }
+ if (column.property == "totalAmount") {
+ const values = data.map((x:any) => x.totalAmount);
+ let formattedAmount = (values.reduce((prev: any, cur: any) => prev + cur) / 100).toLocaleString('zh-CN', { style: 'currency', currency: 'CNY' });
+ sums[index] = formattedAmount
+ return
+ }
+
+
+ if (column.property == "successAmount") {
+ const values = data.map((x: { successAmount: any; }) => x.successAmount);
+ let formattedAmount = (values.reduce((prev: any, cur: any) => prev + cur) / 100).toLocaleString('zh-CN', { style: 'currency', currency: 'CNY' });
+ sums[index] = formattedAmount
+ return
+ }
+ if (column.property == "failAmount") {
+ const values = data.map((x: { failAmount: any; }) => x.failAmount);
+ let formattedAmount = (values.reduce((prev: any, cur: any) => prev + cur) / 100).toLocaleString('zh-CN', { style: 'currency', currency: 'CNY' });
+ sums[index] = formattedAmount
+ return
+ }
+ })
+
+
+
+ return sums
+}
+const handlePaginationChange = (_pageInfo: PageInfo): void => {
+ pageInfo.value = _pageInfo
+ getList()
+}
+
+</script>
+<style lang='scss' scoped></style>
\ No newline at end of file
diff --git a/AdminwebPages/adminpageView/tsconfig.app.json b/AdminwebPages/adminpageView/tsconfig.app.json
new file mode 100644
index 0000000..e089dbc
--- /dev/null
+++ b/AdminwebPages/adminpageView/tsconfig.app.json
@@ -0,0 +1,12 @@
+{
+ "extends": "@vue/tsconfig/tsconfig.dom.json",
+ "include": ["env.d.ts", "src/**/*", "src/**/*.vue"],
+ "exclude": ["src/**/__tests__/*"],
+ "compilerOptions": {
+
+
+ "paths": {
+ "@/*": ["./src/*"]
+ }
+ }
+}
diff --git a/AdminwebPages/adminpageView/tsconfig.json b/AdminwebPages/adminpageView/tsconfig.json
new file mode 100644
index 0000000..93040c6
--- /dev/null
+++ b/AdminwebPages/adminpageView/tsconfig.json
@@ -0,0 +1,14 @@
+{
+ "files": [],
+ "references": [
+ {
+ "path": "./tsconfig.node.json"
+ },
+ {
+ "path": "./tsconfig.app.json"
+ }
+ ],
+ "compilerOptions": {
+ "types": ["plus-pro-components/global"]
+ }
+}
diff --git a/AdminwebPages/adminpageView/tsconfig.node.json b/AdminwebPages/adminpageView/tsconfig.node.json
new file mode 100644
index 0000000..40273bc
--- /dev/null
+++ b/AdminwebPages/adminpageView/tsconfig.node.json
@@ -0,0 +1,19 @@
+{
+ "extends": "@tsconfig/node22/tsconfig.json",
+ "include": [
+ "vite.config.*",
+ "vitest.config.*",
+ "cypress.config.*",
+ "nightwatch.conf.*",
+ "playwright.config.*",
+ "eslint.config.*"
+ ],
+ "compilerOptions": {
+ "noEmit": true,
+
+
+ "module": "ESNext",
+ "moduleResolution": "Bundler",
+ "types": ["node"]
+ }
+}
diff --git a/AdminwebPages/adminpageView/vite.config.ts b/AdminwebPages/adminpageView/vite.config.ts
new file mode 100644
index 0000000..a6c7f49
--- /dev/null
+++ b/AdminwebPages/adminpageView/vite.config.ts
@@ -0,0 +1,52 @@
+/*
+ * @FilePath: vite.config.ts
+ * @Author: 灏忛渚�
+ * @Date: 2025-03-17 09:36:48
+ * @LastEditors: Please set LastEditors
+ * @LastEditTime: 2025-03-17 17:37:57
+ * Copyright: 2025 MinTinge CO.,LTD. All Rights Reserved.
+ * @Descripttion: 鍐欏叆浣犵殑鎻忚堪
+ */
+import { fileURLToPath, URL } from 'node:url'
+
+import { defineConfig } from 'vite'
+import vue from '@vitejs/plugin-vue'
+import vueJsx from '@vitejs/plugin-vue-jsx'
+import vueDevTools from 'vite-plugin-vue-devtools'
+
+// https://vite.dev/config/
+export default defineConfig({
+ plugins: [
+ vue(),
+ vueJsx(),
+ vueDevTools(),
+ ],
+ // // 鏈嶅姟绔覆鏌�
+ // server: {
+
+ // // 鏈湴璺ㄥ煙浠g悊 https://cn.vitejs.dev/config/server-options.html#server-proxy
+ // proxy: {
+ // "/api": {
+
+ // // 杩欓噷濉啓鍚庣鍦板潃
+ // target: "http://localhost:5000",
+ // changeOrigin: true,
+ // rewrite: path => path.replace(/^\/api/, "/api")
+ // },
+ // "/ws": {
+ // target: "https://apis.map.qq.com/",
+ // changeOrigin: true,
+ // rewrite: path => path.replace(/^\/ws/, "/ws")
+ // }
+ // },
+
+
+ // },
+
+ resolve: {
+ alias: {
+ '@': fileURLToPath(new URL('./src', import.meta.url))
+ },
+ },
+})
+
diff --git a/cylsg/ECTESTOA/OAServices.cs b/cylsg/ECTESTOA/OAServices.cs
index e0aca0c..9cab444 100644
--- a/cylsg/ECTESTOA/OAServices.cs
+++ b/cylsg/ECTESTOA/OAServices.cs
@@ -99,7 +99,7 @@
}
}
- _redisService.Add(ECTESTOAPermissionsKey + UserID, ret, 180);
+ _redisService.Add(ECTESTOAPermissionsKey + UserID, ret, 60);
}
diff --git a/cylsg/cylsg.Application/CyOS/CyOSSDriver.cs b/cylsg/cylsg.Application/CyOS/CyOSSDriver.cs
index 0c3e108..ddd0db6 100644
--- a/cylsg/cylsg.Application/CyOS/CyOSSDriver.cs
+++ b/cylsg/cylsg.Application/CyOS/CyOSSDriver.cs
@@ -3,6 +3,7 @@
using ECTESTOA;
using EzCoreNet.Redis;
using Furion.LinqBuilder;
+using Microsoft.AspNetCore.Http.HttpResults;
using Models;
using System;
using System.Collections.Generic;
@@ -43,7 +44,7 @@
throw Oops.Oh("娌℃湁鏉冮檺");
}
- Expression<Func<OA_DeliverPlan, bool>> SearchList = (x) => true;
+ Expression<Func<OA_DeliverPlanPaiche, bool>> SearchList = (x) => true;
SearchList = SearchList.And(x => x.FirmId == _oAServices.firmId);
SearchList = SearchList.And(x => x.DriverId == Permissions.KeyId);//鍙湅鑷繁
SearchList = SearchList.And(x => x.ShifouDelivery != 2);//杩囨护鏈夋晥
@@ -58,11 +59,11 @@
}
if (Param.TimeStart != null)
{
- SearchList = SearchList.And(x => x.CreateTime > Param.TimeStart);
+ SearchList = SearchList.And(x => x.DeliverTime >= Param.TimeStart.Value.Date);
}
if (Param.TimeEnd != null)
{
- SearchList = SearchList.And(x => x.CreateTime < Param.TimeEnd.Value.AddDays(1));
+ SearchList = SearchList.And(x => x.DeliverTime < Param.TimeEnd.Value.Date.AddDays(1));
}
if (Param.DeliveredState != null)
{
@@ -78,8 +79,8 @@
//寮哄埗澧炲姞鍛樺伐杩囨护
RefAsync<int> totle = 0;
- var data = await _client.Queryable<OA_DeliverPlan>().Includes(x=>x.SentStaff)
- .Where(SearchList).OrderByDescending(x => x.CreateTime.Value.Date).OrderBy(x => SqlFunc.Asc(x.Sort)).ToPageListAsync(Param.page.PageIndex, Param.page.PageSize, totle);
+ var data = await _client.Queryable<OA_DeliverPlanPaiche>().Includes(x=>x.Manager)
+ .Where(SearchList).OrderByDescending(x => x.DeliverTime.Value.Date).OrderBy(x => SqlFunc.Asc(x.Sort)).ToPageListAsync(Param.page.PageIndex, Param.page.PageSize, totle);
Param.page.TotalCount = totle;
@@ -99,14 +100,14 @@
/// </summary>
/// <param name="Param"></param>
/// <returns></returns>
- public async Task<OA_DeliverPlan> GetDeliverPlanInfo(Guid KeyId)
+ public async Task<OA_DeliverPlanPaiche> GetDeliverPlanInfo(Guid KeyId)
{
if (!await CheckRols())
{
throw Oops.Oh("娌℃湁鏉冮檺");
}
- return await _client.Queryable<OA_DeliverPlan>().Includes(x=>x.Attachments.Where(y=>y.AttachmentType==3).ToList()).Includes(x=>x.Manager).Includes(x=>x.SentStaff)
+ return await _client.Queryable<OA_DeliverPlanPaiche>().Includes(x=>x.Attachments).Includes(x=>x.Manager).Includes(x=>x.DeliverPlans)
.Where(x => x.DriverId == Permissions.KeyId && x.Keyid == KeyId&&x.ShifouDelivery!=2).FirstAsync();
}
@@ -124,7 +125,7 @@
{
throw Oops.Oh("娌℃湁鏉冮檺");
}
- var a= await _client.Queryable<OA_DeliverPlan>().Where(x => x.DriverId == Permissions.KeyId && x.Keyid == KeyId && x.ShifouDelivery != 2).FirstAsync();
+ var a= await _client.Queryable<OA_DeliverPlanPaiche>().Where(x => x.DriverId == Permissions.KeyId && x.Keyid == KeyId && x.ShifouDelivery != 2).FirstAsync();
if(a==null)
throw Oops.Oh("娌℃湁鏉冮檺");
if(a.Deliveredstatus!= DeliveredType.Undeliver)
@@ -146,7 +147,7 @@
/// </summary>
/// <param name="Param"></param>
/// <returns></returns>
- public async Task<bool> FinishDeliverPlan(OA_DeliverPlan Param)
+ public async Task<bool> FinishDeliverPlan(OA_DeliverPlanPaiche Param)
{
if(Param.Keyid==null)
throw Oops.Oh("ID閿欒");
@@ -157,12 +158,19 @@
{
throw Oops.Oh("娌℃湁鏉冮檺");
}
- var a = await _client.Queryable<OA_DeliverPlan>().Where(x => x.DriverId == Permissions.KeyId && x.Keyid == Param.Keyid && x.ShifouDelivery != 2).FirstAsync();
+ var a = await _client.Queryable<OA_DeliverPlanPaiche>().Includes(x=>x.DeliverPlans).Where(x => x.DriverId == Permissions.KeyId && x.Keyid == Param.Keyid && x.ShifouDelivery != 2).FirstAsync();
if (a == null)
throw Oops.Oh("娌℃湁鏉冮檺");
if (a.Deliveredstatus != DeliveredType.Deliver)
{
throw Oops.Oh("璁㈠崟鐘舵�佺粨鏉�");
+ }
+ foreach (var item in a.DeliverPlans)
+ {
+ //鍚屾 閫佽揣鍗曠姸鎬�
+ item.Updater = Permissions.MemberId;
+ item.LastUpdateTime = DateTime.Now;
+ item.Deliveredstatus= Param.Deliveredstatus;
}
foreach (var item in Param.Attachments)
{
@@ -200,14 +208,124 @@
a.Wentifankui = Param.Wentifankui;
a.Deliveredstatus= Param.Deliveredstatus;
a.Attachments = Param.Attachments;
+
return await _client.UpdateNav(a).Include(x=>x.Attachments,new SqlSugar.UpdateNavOptions()
{
OneToManyInsertOrUpdate = true,//閰嶇疆鍚敤 鎻掑叆銆佹洿鏂版垨鍒犻櫎妯″紡
- }).ExecuteCommandAsync();
+ }).Include(x=>x.DeliverPlans,new UpdateNavOptions()
+ {
+ OneToManyInsertOrUpdate=true,
+ }
+ ).ExecuteCommandAsync();
+
+ //await _client.AsTenant().BeginTranAsync();
+ //try
+ //{
+ // await _client.UpdateNav(a).Include(x => x.Attachments, new SqlSugar.UpdateNavOptions()
+ // {
+ // OneToManyInsertOrUpdate = true,//閰嶇疆鍚敤 鎻掑叆銆佹洿鏂版垨鍒犻櫎妯″紡
+ // }).ExecuteCommandAsync();
+ // if (a.DeliverPlans?.Count > 0)
+ // await _client.Updateable(a.DeliverPlans).ExecuteCommandAsync();
+ // await _client.AsTenant().CommitTranAsync();
+
+ //}
+ //catch (Exception)
+ //{
+ // await _client.AsTenant().RollbackTranAsync();
+ // throw;
+ //}
+
+ //return true;
+ }
+ /// <summary>
+ /// 鑾峰彇鎵撳崱璁板綍
+ /// </summary>
+ /// <param name="Param"></param>
+ /// <returns></returns>
+ [HttpPost]
+ public async Task<DeliverRecordPageRet> GetDriverRecords(DeliverRecordSearchParam Param)
+ {
+ if (!await CheckRols())
+ {
+ throw Oops.Oh("娌℃湁鏉冮檺");
+ }
+
+ Expression<Func<OA_DriverRecord, bool>> SearchList = (x) => true;
+ SearchList = SearchList.And(x => x.CreaterID == Permissions.MemberId);//鍙湅鑷繁
+ SearchList = SearchList.And(x => x.ClockType != DriverClockType.RoughDraft);//涓嶇湅鑽夌
+ if (Param.CarID != null)
+ {
+ SearchList = SearchList.And(x => x.CarID == Param.CarID);
+ }
+
+ if (Param.TimeStart != null)
+ {
+ SearchList = SearchList.And(x => x.CreatTime >= Param.TimeStart.Value.Date);
+ }
+ if (Param.TimeEnd != null)
+ {
+ SearchList = SearchList.And(x => x.CreatTime < Param.TimeEnd.Value.Date.AddDays(1));
+ }
+ if (Param.ClockType != null)
+ {
+
+ SearchList = SearchList.And(x => x.ClockType == Param.ClockType);
+
+ }
+
+ //寮哄埗澧炲姞鍛樺伐杩囨护
+ RefAsync<int> totle = 0;
+ var data = await _client.Queryable<OA_DriverRecord>().Includes(x => x.Car)
+ .Where(SearchList).OrderByDescending(x => x.CreatTime.Date).Mapper((x)=>
+ {
+ if (x.CreatTime.AddMinutes(30) < DateTime.Now)
+ x.CanEdit = true;
+ else
+ x.CanEdit = false;
+
+ })
+ .ToPageListAsync(Param.page.PageIndex, Param.page.PageSize, totle);
+
+ Param.page.TotalCount = totle;
+
+ var count = await _client.Queryable<OA_DriverRecord>().Where(x => x.CreatTime.Date == DateTime.Now.Date && x.ClockType != DriverClockType.RoughDraft&& x.CreaterID==Permissions.MemberId).CountAsync();
+ return new DeliverRecordPageRet
+
+ {
+ Data = data,
+ page = Param.page,
+ NextClockType= count switch
+ {
+ 1=> DriverClockType.Clockout,
+ 2=> DriverClockType.Unknown,
+ 0=> DriverClockType.ClockIn,
+ _=> DriverClockType.Unknown
+ }
+
+ };
}
+ /// <summary>
+ /// 鑾峰彇鑽夌璁板綍 娌℃湁浠h〃娌℃湁
+ /// </summary>
+ /// <returns></returns>
+
+ public async Task<OA_DriverRecord> GetClockRoughDraft()
+ {
+ if (!await CheckRols())
+ {
+ throw Oops.Oh("娌℃湁鏉冮檺");
+ }
+ return await _client.Queryable<OA_DriverRecord>()
+ .Where(x => x.CreaterID == Permissions.MemberId
+ && x.ClockType == DriverClockType.RoughDraft
+ && x.CreatTime.Date == DateTime.Now.Date).Includes(x=>x.Attachments).Includes(x=>x.CarConditionAttachments).FirstAsync();
+
+
+ }
/// <summary>
/// 涓婄彮鎵撳崱 涓婁笅鐝墦鍗¢兘璋冪敤涓�涓瓧娈�
/// </summary>
@@ -217,10 +335,44 @@
{
if (Param.ClockType == DriverClockType.Unknown)
throw Oops.Oh("绫诲瀷涓嶅彲涓烘湭鐭�");
- Param.Id = Guid.NewGuid();
- if (Param.Attachments!=null)
- foreach (var item in Param.Attachments)
+ if (!await CheckRols())
{
+ throw Oops.Oh("娌℃湁鏉冮檺");
+ }
+
+ if (Param.ClockType!= DriverClockType.RoughDraft)
+ {
+ var clockid= await _client.Queryable<OA_DriverRecord>().Where(x => x.CreaterID == Permissions.MemberId
+ && x.CreatTime.Date == DateTime.Now.Date
+ && x.ClockType == Param.ClockType
+ ).Select(x => x.Id).FirstAsync();
+ if(clockid!=null)
+ {
+ throw Oops.Oh("浠婂ぉ宸茬粡鎵撹繃璇ョ被鍨嬬殑鍗′簡");
+ }
+ }
+ var carId = await _client.Queryable<OA_CarManage>().Where(x => x.StaffID == Permissions.KeyId && x.MemberID == _oAServices.firmId).Select(x => x.Keyid).FirstAsync();
+ if(carId==null||carId==0)
+ {
+ throw Oops.Oh("璇ュ徃鏈烘湭鍒嗛厤杞﹁締锛屼笉闇�瑕佹墦鍗�");
+ }
+ OA_DriverRecord data = null;
+
+ data= await _client.Queryable<OA_DriverRecord>().Where(x =>
+ //x.Id == Param.Id&& 鏈�澶氭瘡澶╁彧鑳芥湁涓�涓崏绋�
+ x.CreatTime.Date == DateTime.Now.Date
+ && x.CreaterID == Permissions.MemberId
+ && x.ClockType == DriverClockType.RoughDraft).FirstAsync();
+
+
+
+
+
+
+ Param.CarID = carId;
+ if (Param.Attachments != null)
+ foreach (var item in Param.Attachments)
+ {
if (string.IsNullOrWhiteSpace(item.PlanAttachment))
{
throw Oops.Oh("鏈夐檮浠跺湴鍧�涓虹┖");
@@ -233,13 +385,14 @@
throw Oops.Oh("璇疯緭鍏ユ纭殑闄勪欢鍦板潃");
}
- item.AttachmentType =4;
+ item.AttachmentType = 4;
item.CreateTime = DateTime.Now;
item.Operator = Permissions.Name;
-
-
+
+
+
}
- if(Param.CarConditionAttachments!=null)
+ if (Param.CarConditionAttachments != null)
foreach (var item in Param.CarConditionAttachments)
{
if (string.IsNullOrWhiteSpace(item.PlanAttachment))
@@ -260,11 +413,147 @@
}
+ Param.EmptyCause = Param.EmptyCause ?? "";
+ Param.CarCondition = Param.CarCondition ?? "";
+ Param.Remark = Param.Remark ?? "";
Param.CreatTime = DateTime.Now;
Param.CreaterID = Permissions.MemberId;
Param.Creater = Permissions.Name;
- return await _client.InsertNav(Param).Include(x => x.Attachments).Include(x => x.Attachments).ExecuteCommandAsync();
+
+ if (data == null)
+ {
+ //娌℃湁鍗曞瓙
+
+ Param.Id = Guid.NewGuid();
+ if (!(carId > 0))
+ {
+
+ throw Oops.Oh("娌℃壘鍒板尮閰嶈溅杈�");
+ }
+
+ return await _client.InsertNav(Param).Include(x => x.Attachments).Include(x => x.CarConditionAttachments).ExecuteCommandAsync();
+ }
+
+
+ else
+ {
+ data.CarID = Param.CarID;
+ data.CreatTime= Param.CreatTime;
+
+ data.Attachments = Param.Attachments;//瀵艰埅鏇磋鍒嗙被鏉′欢涓嶈捣浣滅敤锛岃繖閲屾洿鏂板皢 杩欎袱涓悎骞舵搷浣�
+
+ data.CarCondition=Param.CarCondition;
+ data.CarConditionAttachments = Param.CarConditionAttachments;
+ if (data.CarConditionAttachments == null)
+ data.CarConditionAttachments = new List<OA_attachment>();
+ if (data.Attachments != null)
+ data.CarConditionAttachments.AddRange(data.Attachments);
+ data.ClockType = Param.ClockType;
+ data.EmptyCause = Param.EmptyCause;
+ return await _client.UpdateNav(data)
+ //鍒嗗紑瀵艰埅浼氫骇鐢熷啿绐佸簲璇qlsun鐨刡ug
+ // .Include(x => x.Attachments,new UpdateNavOptions
+ //{
+ // OneToManyInsertOrUpdate = true,
+ //})
+ .Include(x => x.CarConditionAttachments,new UpdateNavOptions
+ {
+ OneToManyInsertOrUpdate = true,
+ }).ExecuteCommandAsync();
+ }
+
+
+ }
+
+
+ /// <summary>
+ /// 淇敼鎵撳崱璁板綍 鏀寔鍗婂皬鏃跺唴淇敼璁板綍
+ /// </summary>
+ public async Task<bool > UpdataDriverRecord(OA_DriverRecord Param)
+ {
+ if (!await CheckRols())
+ {
+ throw Oops.Oh("娌℃湁鏉冮檺");
+ }
+
+ var data = await _client.Queryable<OA_DriverRecord>()
+ .Includes(x => x.Attachments)
+ .Includes(x => x.CarConditionAttachments)
+ .Where(x => x.CreaterID == Permissions.MemberId && x.Id == Param.Id).FirstAsync();
+ if (data != null)
+ throw Oops.Oh("娌℃湁鏉冮檺");
+
+ if(data.CreatTime.AddMinutes(30)<DateTime.Now)
+ {
+ throw Oops.Oh("鍙兘鍦ㄥ崐灏忔椂涔嬪唴淇敼");
+ }
+
+ if(Param.Attachments!=null)
+ {
+ foreach (var attachment in Param.Attachments)
+ {
+ if (attachment.Keyid > 0)
+ continue;
+ else
+ {
+ attachment.AttachmentType = 4;
+ attachment.CreateTime = DateTime.Now;
+ attachment.Operator = Permissions.Name;
+
+ }
+ }
+ }
+
+
+ if (Param.CarConditionAttachments != null)
+ {
+ foreach (var attachment in Param.CarConditionAttachments)
+ {
+ if (attachment.Keyid > 0)
+ continue;
+ else
+ {
+ attachment.AttachmentType = 5;
+ attachment.CreateTime = DateTime.Now;
+ attachment.Operator = Permissions.Name;
+
+ }
+ }
+ }
+
+ data.Attachments = Param.Attachments;
+ data.CarConditionAttachments = Param.CarConditionAttachments;
+ data.CarCondition = Param.CarCondition;
+ return await _client.UpdateNav(data).Include(x => x.Attachments, new UpdateNavOptions
+ {
+ OneToManyInsertOrUpdate = true,
+ }).Include(x => x.CarConditionAttachments, new UpdateNavOptions
+ {
+ OneToManyInsertOrUpdate = true,
+ }).ExecuteCommandAsync();
+
+ }
+
+ /// <summary>
+ /// 鎵撳崱璁板綍璇︽儏
+ /// </summary>
+ public async Task<OA_DriverRecord> GetDriverRecordInfo(Guid Id)
+ {
+
+ if (!await CheckRols())
+ {
+ throw Oops.Oh("娌℃湁鏉冮檺");
+ }
+
+ var data= await _client.Queryable<OA_DriverRecord>()
+ .Includes(x => x.Car)
+ .Includes(x=>x.Attachments)
+ .Includes(x=>x.CarConditionAttachments)
+ .Where(x => x.CreaterID == Permissions.MemberId&&x.Id== Id).FirstAsync();
+ if (data == null)
+ throw Oops.Oh("娌℃湁鏉冮檺");
+ return data;
}
/// <summary>
@@ -290,4 +579,59 @@
}
}
+ /// <summary>
+ /// 鍙告満鎵撳崱璁板綍鎼滅储閫夐」
+ /// </summary>
+ public class DeliverRecordSearchParam
+ {
+ /// <summary>
+ /// 璧峰鏃堕棿
+ /// </summary>
+ public DateTime? TimeStart { get; set; }
+ /// <summary>
+ /// 缁撴潫鏃堕棿
+ /// </summary>
+ public DateTime? TimeEnd { get; set; }
+
+ /// <summary>
+ /// 鍙告満KeyID
+ /// </summary>
+ public int? DeliverMemudID { get; set; }
+
+
+ /// <summary>
+ /// 杞﹁締ID
+ /// </summary>
+ public int? CarID { get; set; }
+
+ /// <summary>
+ /// 鎵撳崱 绫诲瀷
+ /// </summary>
+ public DriverClockType? ClockType { get; set; }
+ /// <summary>
+ /// 椤甸潰鍙傛暟
+ /// </summary>
+ public PageModel page { get; set; }
+ }
+
+ /// <summary>
+ /// 鎵撳崱璁板綍杈撳嚭
+ /// </summary>
+ public class DeliverRecordPageRet
+ {
+ /// <summary>
+ /// 鏁版嵁鍒楄〃
+ /// </summary>
+ public List<OA_DriverRecord> Data { get; set; }
+
+ /// <summary>
+ /// 椤甸潰鍙傛暟
+ /// </summary>
+ public PageModel page { get; set; }
+
+ /// <summary>
+ /// 涓嬩竴娆℃墦鍗$姸鎬� 涓虹┖鏃朵笉鏄剧ず鎸夐挳
+ /// </summary>
+ public DriverClockType? NextClockType { get; set; } = null;
+ }
}
diff --git a/cylsg/cylsg.Application/CyOS/CyOSSettingController.cs b/cylsg/cylsg.Application/CyOS/CyOSSettingController.cs
index 687476c..538fbb9 100644
--- a/cylsg/cylsg.Application/CyOS/CyOSSettingController.cs
+++ b/cylsg/cylsg.Application/CyOS/CyOSSettingController.cs
@@ -7,6 +7,7 @@
using System.Linq;
using System.Text;
using System.Threading.Tasks;
+using static SKIT.FlurlHttpClient.Wechat.Api.Models.ProductOfflineGetSameCityTemplateResponse.Types.Template.Types;
namespace cylsg.Application.CyOS
{
@@ -41,7 +42,7 @@
Name = x.Name,
Keyid = x.Keyid,
Remark = x.Remark,
- }).WithCache(3600).ToListAsync();
+ }).WithCache(60).ToListAsync();
}
/// <summary>
/// 鑾峰彇绉戠洰鍒楄〃
@@ -56,7 +57,7 @@
SubjectName = x.SubjectName,
Keyid = x.Keyid,
Remark = x.Remark,
- }).WithCache(3600).ToListAsync();
+ }).WithCache(60).ToListAsync();
}
/// <summary>
/// 鑾峰彇娴佹按鍙�
@@ -102,7 +103,7 @@
MemberId = x.MemberId,
Keyid = x.Keyid,
- }).WithCache(1800).ToListAsync();
+ }).WithCache(60).ToListAsync();
}
@@ -114,14 +115,15 @@
[AllowAnonymous]
public async Task<List<OaStaff>> GetDriversOfWithin7days()
{
- var list = await _client.Queryable<OA_DeliverPlan>().Where(x => SqlFunc.ToDate(x.DeliverTime) < DateTime.Now.AddDays(8).Date && SqlFunc.ToDate(x.DeliverTime) >= DateTime.Now.Date).GroupBy(x => x.DriverId).Select(x => x.DriverId).ToListAsync();
- return await _client.Queryable<OaStaff>().In(list).Where(x => x.Status == "鍦ㄨ亴" && x.FirmId == _oAServices.firmId && x.BF_IsDriver).Select(x => new OaStaff
+
+ var list = await _client.Queryable<OA_DeliverPlanPaiche>().Where(x =>( x.DeliverTime.Value.Date < DateTime.Now.AddDays(8).Date) && (x.DeliverTime.Value.Date >= DateTime.Now.Date)).Select(x => x.DriverId).ToListAsync();
+ return await _client.Queryable<OaStaff>().Where(x=>list.Contains(x.Keyid)).Where(x => x.Status == "鍦ㄨ亴" && x.FirmId == _oAServices.firmId && x.BF_IsDriver).Select(x => new OaStaff
{
Name = x.Name,
MemberId = x.MemberId,
Keyid = x.Keyid,
- }).WithCache(1800).ToListAsync();
+ }).WithCache(60).ToListAsync();
//// return await _client.Queryable<OA_DeliverPlan>()
////.LeftJoin<OaStaff>((dp, os) => dp.DriverId == os.Keyid)
////.Where((dp, os) => SqlFunc.ToDate(dp.DeliverTime) < DateTime.Now.AddDays(8).Date
diff --git a/cylsg/cylsg.Application/CyOS/CyOSStaffController.cs b/cylsg/cylsg.Application/CyOS/CyOSStaffController.cs
index f710ad4..d0249df 100644
--- a/cylsg/cylsg.Application/CyOS/CyOSStaffController.cs
+++ b/cylsg/cylsg.Application/CyOS/CyOSStaffController.cs
@@ -500,9 +500,9 @@
throw Oops.Oh("娌℃湁鏉冮檺");
}
- Expression<Func<OA_DeliverPlan, bool>> SearchList = (x) => true;
+ Expression<Func<OA_DeliverPlanPaiche, bool>> SearchList = (x) => true;
SearchList = SearchList.And(x => x.FirmId == _OAServices.firmId);
- SearchList = SearchList.And(x => x.Creater == Permissions.MemberId);//鍙湅鑷繁
+ SearchList = SearchList.And(x => x.BusinessManagerId == Permissions.KeyId);//鍙湅鑷繁 瀹㈡埛缁忕悊鏄嚜宸�
SearchList = SearchList.And(x => x.ShifouDelivery !=2);//杩囨护鏈夋晥
if (Param.DeliverKeyID!=null)
{
@@ -515,11 +515,11 @@
}
if (Param.TimeStart != null)
{
- SearchList = SearchList.And(x => x.CreateTime > Param.TimeStart);
+ SearchList = SearchList.And(x => x.DeliverTime >= Param.TimeStart.Value.Date);
}
if (Param.TimeEnd != null)
{
- SearchList = SearchList.And(x => x.CreateTime < Param.TimeEnd.Value.AddDays(1));
+ SearchList = SearchList.And(x => x.DeliverTime < Param.TimeEnd.Value.Date.AddDays(1));
}
if (Param.DeliveredState != null)
{
@@ -535,7 +535,7 @@
//寮哄埗澧炲姞鍛樺伐杩囨护
RefAsync<int> totle = 0;
- var data = await _SugarClient.Queryable<OA_DeliverPlan>().Includes(x => x.Driver)
+ var data = await _SugarClient.Queryable<OA_DeliverPlanPaiche>().Includes(x => x.Driver).Includes(x=>x.DeliverPlans)
.Where(SearchList).OrderByDescending(x => x.CreateTime.Value.Date).OrderBy(x=>SqlFunc.Asc(x.Sort)).ToPageListAsync(Param.page.PageIndex, Param.page.PageSize, totle);
Param.page.TotalCount = totle;
@@ -557,15 +557,15 @@
/// </summary>
/// <param name="KeyId"></param>
/// <returns></returns>
- public async Task<OA_DeliverPlan> GetDeliverPlanInfo(Guid KeyId)
+ public async Task<OA_DeliverPlanPaiche> GetDeliverPlanInfo(Guid KeyId)
{
if (!await CheckRols())
{
throw Oops.Oh("娌℃湁鏉冮檺");
}
- return await _SugarClient.Queryable<OA_DeliverPlan>().Includes(x => x.Attachments).Includes(x=>x.Driver).Includes(x=>x.Manager)
- .Where(x => x.Creater == Permissions.MemberId && x.Keyid == KeyId && x.ShifouDelivery != 2).FirstAsync();
+ return await _SugarClient.Queryable<OA_DeliverPlanPaiche>().Includes(x => x.Attachments).Includes(x=>x.Driver).Includes(x=>x.DeliverPlans)
+ .Where(x => x.BusinessManagerId == Permissions.KeyId && x.Keyid == KeyId && x.ShifouDelivery != 2).FirstAsync();
}
@@ -679,7 +679,7 @@
/// <summary>
/// 鏁版嵁鍒楄〃
/// </summary>
- public List<OA_DeliverPlan> Data { get; set; }
+ public List<OA_DeliverPlanPaiche> Data { get; set; }
/// <summary>
/// 椤甸潰鍙傛暟
diff --git a/cylsg/cylsg.Application/CyOS/CyOsDeliverManage.cs b/cylsg/cylsg.Application/CyOS/CyOsDeliverManage.cs
index b330891..2389bff 100644
--- a/cylsg/cylsg.Application/CyOS/CyOsDeliverManage.cs
+++ b/cylsg/cylsg.Application/CyOS/CyOsDeliverManage.cs
@@ -5,12 +5,14 @@
using EzCoreNet.Redis;
using Furion.LinqBuilder;
using Models;
+using StackExchange.Profiling;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Linq.Expressions;
using System.Text;
using System.Threading.Tasks;
+using TencentCloud.Iecp.V20210914.Models;
namespace cylsg.Application.CyOS
{
@@ -34,9 +36,29 @@
}
[HttpGet]
[AllowAnonymous]
- public async Task<string> testc()
+ public async Task<OA_DriverRecord> testc()
{
- return await CreatDeliverPlanSn();
+ OA_DriverRecord data = null;
+
+ data = await _client.Queryable<OA_DriverRecord>().Where(x =>
+ x.Id == new Guid("BE15D584-DFE3-438D-863B-705DB1AB14ED")
+ ).Includes(x=>x.Attachments).FirstAsync();
+
+ data.Attachments?.Add(new OA_attachment
+ {
+ PlanAttachment = "1111",
+ AttachmentType = 4,
+ Operator= "sdasd"
+ });
+ data.CarConditionAttachments = null;
+ await _client.UpdateNav(data).Include(x => x.CarConditionAttachments,new UpdateNavOptions
+ {
+ OneToManyInsertOrUpdate=true,
+
+ }).ExecuteCommandAsync();
+
+ return await _client.Queryable<OA_DriverRecord>().Where(x => x.Id == new Guid("BE15D584-DFE3-438D-863B-705DB1AB14ED")).Includes(x => x.Attachments).Includes(x => x.CarConditionAttachments).FirstAsync();
+
}
/// <summary>
@@ -114,12 +136,14 @@
}
/// <summary>
- /// 鍙楃悊
+ /// 鍙楃悊 寮冪敤锛岀敤 CreatDeliverPlan 浠f浛
/// </summary>
/// <param name="Param"></param>
/// <returns></returns>
+ [Obsolete]
public async Task<int> AcceptAppointmentDeliver(int KeiId)
{
+ throw Oops.Oh("宸茬粡鍚敤");
if (!(KeiId > 0))
throw Oops.Oh("Keyid涓嶈兘涓虹┖");
@@ -150,20 +174,41 @@
/// <param name="Param"> 鍙渶瑕佷紶閫�</param>
/// <returns></returns>
[HttpPost]
- public async Task<int> CreatDeliverPlan(OA_DeliverPlan Param)
+ public async Task<int> CreatDeliverPlan(OA_DeliverPlanPaiche Param)
{
- OA_CarManage car = null;
- if (Param.DriverId != null)
- car = await _client.Queryable<OA_CarManage>().Where(x => x.StaffID == Param.DriverId && x.MemberID == _oAServices.firmId).FirstAsync();
+
if (!await CheckRols())
{
throw Oops.Oh("娌℃湁鏉冮檺");
}
+ OA_DeliverTixing? tixing=null;
+ if(Param.DeliverTixingId>0)
+ {
+ //鏄彁閱掕鍗曪紝闇�瑕佹墽琛屾彁閱掑崟 鐘舵�佸共鐓�
+ tixing = await _client.Queryable<OA_DeliverTixing>().Where(x => x.Keyid == Param.DeliverTixingId).FirstAsync();
+ if(tixing == null)
+ {
+ throw Oops.Oh("鎻愰啋鍗曚笉瀛樺湪浜�");
+ }
+ if(tixing.Chulistatus != AppointmentDeliverState.unAccept)
+ throw Oops.Oh("鎻愰啋鍗曞凡缁忓鐞嗕簡");
+ tixing.Chulistatus= AppointmentDeliverState.Accept;
+ tixing.ChuliTime = DateTime.Now;
+ tixing.ChuliRen=Permissions.MemberId;
+ tixing.LastUpdateTime = DateTime.Now;
+ tixing.Updater = Permissions.MemberId;
+
+ }
+ OA_CarManage car = null;
+ if (Param.DriverId != null)
+ car = await _client.Queryable<OA_CarManage>().Where(x => x.StaffID == Param.DriverId && x.MemberID == _oAServices.firmId).FirstAsync();
+
+
OA_CorporateClients cor = null;
if (Param.BuyerId != null)
cor = await _client.Queryable<OA_CorporateClients>().Where(x => x.Keyid == Param.BuyerId).FirstAsync();
- OA_DeliverPlan DeliverPlan = new OA_DeliverPlan()
+ OA_DeliverPlanPaiche DeliverPlan = new OA_DeliverPlanPaiche()
{
Keyid = Guid.NewGuid(),
FirmId = _oAServices.firmId,
@@ -178,7 +223,7 @@
Transferstatus = 1,
- Sort = 1,
+ Sort = Param.Sort,
Creater = Param.Creater ?? Permissions.MemberId,
CreateTime = DateTime.Now,
DriverId = Param.DriverId,
@@ -192,7 +237,28 @@
Lianxiren = Param.Lianxiren,
Deliveredstatus = (int)DeliveredType.Undeliver,
CompanyName = Param.CompanyName,
- }; return await _client.Insertable(DeliverPlan).ExecuteCommandAsync();
+
+
+ };
+ try
+ {
+
+ if (tixing!=null)
+ {
+ tixing.DeliverPlanPaicheId = DeliverPlan.Keyid;
+ await _client.Updateable(tixing).ExecuteCommandAsync();
+ }
+
+ return await _client.Insertable(DeliverPlan).ExecuteCommandAsync();
+
+ }
+ catch (Exception)
+ {
+
+ throw;
+ }
+
+
}
@@ -210,7 +276,7 @@
throw Oops.Oh("娌℃湁鏉冮檺");
}
- Expression<Func<OA_DeliverPlan, bool>> SearchList = (x) => true;
+ Expression<Func<OA_DeliverPlanPaiche, bool>> SearchList = (x) => true;
SearchList = SearchList.And(x => x.FirmId == _oAServices.firmId);
//SearchList = SearchList.And(x => x.Creater == Permissions.MemberId);//鍙湅鑷繁
SearchList = SearchList.And(x => x.ShifouDelivery != 2);//杩囨护鏈夋晥
@@ -225,11 +291,11 @@
}
if (Param.TimeStart != null)
{
- SearchList = SearchList.And(x => x.DeliverTime > Param.TimeStart);
+ SearchList = SearchList.And(x => x.DeliverTime >= Param.TimeStart.Value.Date);
}
if (Param.TimeEnd != null)
{
- SearchList = SearchList.And(x => x.DeliverTime < Param.TimeEnd.Value.AddDays(1));
+ SearchList = SearchList.And(x => x.DeliverTime < Param.TimeEnd.Value.Date.AddDays(1));
}
if (Param.DeliveredState != null)
{
@@ -245,8 +311,8 @@
//寮哄埗澧炲姞鍛樺伐杩囨护
RefAsync<int> totle = 0;
- var data = await _client.Queryable<OA_DeliverPlan>().Includes(x => x.Driver).Includes(x => x.SentStaff)
- .Where(SearchList).OrderBy(x => x.Dizhi).OrderBy(x => x.Sort).ToPageListAsync(Param.page.PageIndex, Param.page.PageSize, totle);
+ var data = await _client.Queryable<OA_DeliverPlanPaiche>().Includes(x => x.Driver).Includes(x => x.SentStaff).Includes(x=>x.DeliverPlans)
+ .Where(SearchList).OrderBy(x => x.DeliverTime).OrderBy(x => x.Sort).ToPageListAsync(Param.page.PageIndex, Param.page.PageSize, totle);
Param.page.TotalCount = totle;
return new DeliverOderPageRet
@@ -265,7 +331,7 @@
/// </summary>
/// <param name="Param"></param>
/// <returns></returns>
- public async Task<bool> UpDataDeliverPlans(OA_DeliverPlan Param)
+ public async Task<bool> UpDataDeliverPlans(OA_DeliverPlanPaiche Param)
{
if (Param.Keyid == null)
@@ -274,16 +340,28 @@
{
throw Oops.Oh("娌℃湁鏉冮檺");
}
- var data = await _client.Queryable<OA_DeliverPlan>().Where(x => x.ShifouDelivery != 2 && x.Keyid == Param.Keyid).FirstAsync();
+ var data = await _client.Queryable<OA_DeliverPlanPaiche>().Includes(x=>x.DeliverPlans).Where(x => x.ShifouDelivery != 2 && x.Keyid == Param.Keyid).FirstAsync();
data.LastUpdateTime = DateTime.Now;
data.Updater = Permissions.MemberId;
+
if (data.DriverId != Param.DriverId)
{
data.DriverId = Param.DriverId;
var car = await _client.Queryable<OA_CarManage>().Where(x => x.StaffID == Param.DriverId && x.MemberID == _oAServices.firmId).FirstAsync();
data.CarId = car == null ? 0 : car.Keyid;
+
+ foreach (var item in data.DeliverPlans)
+ {
+ item.DriverId = Param.DriverId;
+ item.CarId = car == null ? 0 : car.Keyid;
+ item.Updater = Permissions.MemberId;
+ item.LastUpdateTime = DateTime.Now;
+ item.DeliverTime = Param.DeliverTime;
+
+ }
}
+
data.DeliverTime = Param.DeliverTime;
data.Remark = Param.Remark;
@@ -311,22 +389,91 @@
return await _client.UpdateNav(data).Include(x => x.Attachments, new UpdateNavOptions()
{
OneToManyInsertOrUpdate = true,
+ }).Include(x => x.DeliverPlans, new UpdateNavOptions()
+ {
+ OneToManyInsertOrUpdate = true,
}).ExecuteCommandAsync();
}
-
/// <summary>
- /// 淇敼璁㈠崟
+ /// 鎾ら攢璁㈠崟
+ /// </summary>
+ /// <param name="KeyId"></param>
+ /// <returns></returns>
+ public async Task<int > UndoDeliverPlans(Guid KeyId)
+ {
+ if (!await CheckRols())
+ {
+ throw Oops.Oh("娌℃湁鏉冮檺");
+ }
+ var data= await _client.Queryable<OA_DeliverPlanPaiche>().Includes(x=>x.DeliverPlans).Includes(x=>x.DelvceTiXing).Where(x=>x.Keyid == KeyId).FirstAsync();
+
+ if (data != null)
+ {
+ if (data.Deliveredstatus != DeliveredType.Delivered)
+ {
+ await _client.AsTenant().BeginTranAsync();
+ try
+ {
+ if (data.DelvceTiXing != null)
+ {
+ data.DelvceTiXing.Chulistatus = AppointmentDeliverState.unAccept;
+ data.DelvceTiXing.LastUpdateTime = DateTime.Now;
+ data.DelvceTiXing.Updater = Permissions.MemberId;
+ data.DelvceTiXing.ChuliTime = DateTime.Now;
+ data.DelvceTiXing.ChuliRen = Permissions.MemberId;
+ await _client.Updateable(data.DelvceTiXing).ExecuteCommandAsync();
+ }
+ if (data.DeliverPlans != null)
+ {
+ foreach (var item in data.DeliverPlans)
+ {
+ item.DriverId = 0;
+ item.DeliverPlanPaicheid = Guid.Empty;
+ item.Deliveredstatus = DeliveredType.Undeliver;
+ item.Updater = Permissions.MemberId;
+ item.LastUpdateTime = DateTime.Now;
+ }
+ await _client.Updateable(data.DeliverPlans).ExecuteCommandAsync();
+ }
+
+
+ var a = await _client.Deleteable(data).ExecuteCommandAsync();
+
+ await _client.AsTenant().CommitTranAsync();
+ return a;
+ }
+
+
+ catch (Exception)
+ {
+ await _client.AsTenant().RollbackTranAsync();
+ throw;
+ }
+ }
+ else
+
+ {
+ throw Oops.Oh("閰嶉�佸凡瀹屾垚锛屾棤娉曟挙閿�");
+ }
+
+ }
+ else
+ throw Oops.Oh("娌℃湁鎵惧埌璁㈠崟");
+ }
+ /// <summary>
+ /// 淇敼璁㈠崟 寮冪敤
/// </summary>
/// <param name="Param"></param>
/// <returns></returns>
+ [Obsolete]
public async Task<bool> SortDeliverPlans(SortPlanIn Param)
{
-
-
+ throw Oops.Oh("宸茬粡寮冪敤");
+
if (!await CheckRols())
{
@@ -349,15 +496,92 @@
/// </summary>
/// <param name="KeyId"></param>
/// <returns></returns>
- public async Task<OA_DeliverPlan> GetDeliverPlanInfo(Guid KeyId)
+ public async Task<OA_DeliverPlanPaiche> GetDeliverPlanInfo(Guid KeyId)
{
if (!await CheckRols())
{
throw Oops.Oh("娌℃湁鏉冮檺");
}
- return await _client.Queryable<OA_DeliverPlan>().Includes(x => x.SentStaff).Includes(x => x.Attachments).Includes(x => x.Driver).Includes(x => x.Manager)
+ return await _client.Queryable<OA_DeliverPlanPaiche>().Includes(x => x.Attachments).Includes(x => x.Driver).Includes(x => x.Manager).Includes(x=>x.DeliverPlans)
.Where(x => x.Keyid == KeyId && x.ShifouDelivery != 2).FirstAsync();
+
+ }
+
+
+ /// <summary>
+ /// 鎵撳崱璁板綍璇︽儏
+ /// </summary>
+ public async Task<OA_DriverRecord> GetDriverRecordInfo(Guid Id)
+ {
+
+ if (!await CheckRols())
+ {
+ throw Oops.Oh("娌℃湁鏉冮檺");
+ }
+
+ var data = await _client.Queryable<OA_DriverRecord>()
+ .Includes(x=>x.Car)
+ .Includes(x => x.Attachments)
+ .Includes(x => x.CarConditionAttachments)
+ .Where(x => x.Id == Id).FirstAsync();
+ if (data == null)
+ throw Oops.Oh("娌℃湁鏉冮檺");
+ return data;
+
+ }
+ /// <summary>
+ /// 鑾峰彇杞﹁締鎵撳崱璁板綍
+ /// </summary>
+ /// <param name="Param"></param>
+ /// <returns></returns>
+ [HttpPost]
+ public async Task<DeliverRecordPageRet> GetDriverRecords(DeliverRecordSearchParam Param)
+ {
+ if (!await CheckRols())
+ {
+ throw Oops.Oh("娌℃湁鏉冮檺");
+ }
+
+ Expression<Func<OA_DriverRecord, bool>> SearchList = (x) => true;
+ SearchList = SearchList.And(x => x.ClockType != DriverClockType.RoughDraft);//涓嶇湅鑽夌
+ if (Param.CarID != null)
+ {
+ SearchList = SearchList.And(x => x.CarID == Param.CarID);
+ }
+
+ if (Param.TimeStart != null)
+ {
+ SearchList = SearchList.And(x => x.CreatTime >= Param.TimeStart.Value.Date);
+ }
+ if (Param.TimeEnd != null)
+ {
+ SearchList = SearchList.And(x => x.CreatTime < Param.TimeEnd.Value.Date.AddDays(1));
+ }
+ if (Param.ClockType != null)
+ {
+
+ SearchList = SearchList.And(x => x.ClockType == Param.ClockType);
+
+ }
+
+ //寮哄埗澧炲姞鍛樺伐杩囨护
+ RefAsync<int> totle = 0;
+ var data = await _client.Queryable<OA_DriverRecord>().Includes(x=>x.Car)
+ .Where(SearchList).OrderByDescending(x => x.CreatTime.Date).ToPageListAsync(Param.page.PageIndex, Param.page.PageSize, totle);
+
+ Param.page.TotalCount = totle;
+ // var count = await _client.Queryable<OA_DriverRecord>().Where(x => x.CreatTime.Date == DateTime.Now.Date).CountAsync();
+
+ return new DeliverRecordPageRet
+
+ {
+ Data = data,
+ page = Param.page
+
+
+ };
+
}
/// <summary>
@@ -382,6 +606,8 @@
return false;
}
+
+
/// <summary>
/// 鐢熸垚sn鍙�
/// </summary>
@@ -390,7 +616,7 @@
{
// var sn = await _client.Queryable<OA_DeliverPlan>().Where(x => x.CreateTime >= DateTime.Now.Date && x.CreateTime < DateTime.Now.AddDays(1).Date).OrderByDescending(x => x.SellerOrderId).Select(x => x.SellerOrderId).FirstAsync();
- var sn = await _client.Queryable<OA_DeliverPlan>().Where(x => x.CreateTime.Value.Date == DateTime.Now.Date).OrderByDescending(x => x.SellerOrderId).Select(x => x.SellerOrderId).FirstAsync();
+ var sn = await _client.Queryable<OA_DeliverPlanPaiche>().Where(x => x.CreateTime.Value.Date == DateTime.Now.Date).OrderByDescending(x => x.SellerOrderId).Select(x => x.SellerOrderId).FirstAsync();
if (sn != null)
{
try
diff --git a/cylsg/cylsg.Application/Transfer/UserTransfer.cs b/cylsg/cylsg.Application/Transfer/UserTransfer.cs
index a464ff8..60a5fad 100644
--- a/cylsg/cylsg.Application/Transfer/UserTransfer.cs
+++ b/cylsg/cylsg.Application/Transfer/UserTransfer.cs
@@ -1,6 +1,7 @@
锘縰sing cylsg.Core;
using cylsg.Model.TransferOrder;
using cylsg.Model.UserModel;
+using cylsg.Model.utilityViewModel;
using cylsg.utility;
using cylsg.utility.Extend;
using Cylsg.Filter;
@@ -19,6 +20,7 @@
using System.Text;
using System.Threading.Tasks;
using TencentCloud.Ame.V20190916.Models;
+using TencentCloud.Domain.V20180808.Models;
using static SKIT.FlurlHttpClient.Wechat.Api.Models.ChannelsLeadsGetLeadsInfoByComponentIdResponse.Types;
namespace cylsg.Application.Transfer
@@ -285,7 +287,7 @@
SearchList = SearchList.And(x =>x.IsSetOK==param.IsSetOK);
}
if (param.HasSendOk == false)
- SearchList= SearchList.And(x =>( x.FailNum >0||x.BatchStatus!= "FINISHED")||(x.BatchStatus==null&&x.ErrorCode== "NOT_ENOUGH")); //NOT_ENOUGH 鏄处鎴锋病鏈夐挶
+ SearchList= SearchList.And(x =>( x.FailNum >0||x.BatchStatus!= "FINISHED")||(x.BatchStatus==null&&x.ErrorCode== "NOT_ENOUGH")||x.FailAmount>0); //NOT_ENOUGH 鏄处鎴锋病鏈夐挶
else
//鏈変竴绗斿ぇ浣�0 鐨勮涓哄け璐�
SearchList= SearchList.And(x => x.FailNum ==0&&x.BatchStatus=="FINISHED");
@@ -358,7 +360,7 @@
{
throw Oops.Oh("宸茬粡澶勭悊涓嶅啀澶勭悊");
}
- if(!((TOrder.ErrorCode== "INVALID_REQUEST"&&TOrder.ErrorMsg== "瀵瑰簲鍗曞彿宸茶秴鍑洪噸璇曟湡,璇锋煡鍗曠‘璁ゅ悗鍐冲畾鏄惁鎹㈠崟璇锋眰")|| (TOrder.ErrorCode == "NOT_ENOUGH")))
+ if(!((TOrder.ErrorCode== "INVALID_REQUEST"&&TOrder.ErrorMsg== "瀵瑰簲鍗曞彿宸茶秴鍑洪噸璇曟湡,璇锋煡鍗曠‘璁ゅ悗鍐冲畾鏄惁鎹㈠崟璇锋眰")|| (TOrder.ErrorCode == "NOT_ENOUGH")||(TOrder.FailAmount>0)))
{
//涓嶆弧瓒冲啿娲楁敮浠樿姹�
throw Oops.Oh("涓嶆弧瓒抽噸鏂版敮浠樿姹�");
@@ -883,9 +885,76 @@
}
+ /// <summary>
+ /// 鑾峰彇鍒楄〃璇︽儏
+ /// </summary>
+ /// <returns></returns>
+ [HttpPost]
+ [AllowAnonymous]
+ public async Task<RetPageData<WeChatTransferOrder>> GetTransferOrder(SSPageByWhereOrder Param)
+ {
+ if (Param.Page == null)
+ throw Oops.Oh("鍙傛暟閿欒");
+
+ Expression<Func<WeChatTransferOrder, bool>> where = null;
+
+
+ if (!string.IsNullOrEmpty( Param.Where as string))
+ {
+ //where = CommonHelper.FormatWhereExpression<WeChatTransferOrder>(Param.Where);
+ where = CommonHelper.FormatWhereExpression<WeChatTransferOrder>(Param.Where as string);
+
+ }
+ Expression<Func<WeChatTransferOrder, object>> order = null;
+ if (Param.Order?.Name!=null)
+ {
+ order = CommonHelper.FormatPropertyExpression<WeChatTransferOrder>(Param.Order.Name);
+
+ }
+ RefAsync<int> title = 0;
+ var BR = new BaseRepository<WeChatTransferOrder>();
+ var data= await BR.AsQueryable().Includes(x=>x.user,u=>u.Worek).Select(x=>new WeChatTransferOrder
+ {
+ UserIDCode= x.user.Worek.IdCode,
+ UserName=x.user.Worek.name,
+ TotalAmount=x.TotalAmount,
+ TotalNum=x.TotalNum,
+ BatchId=x.BatchId,
+ SuccessNum=x.SuccessNum,
+ OutBatchNumber=x.OutBatchNumber,
+ BatchName = x.BatchName,
+ BatchStatus=x.BatchStatus,
+ UserID= x.UserID,
+ UpDataTime=x.UpDataTime,
+ YiTiXianGz=x.user.Worek.YiTiXianJine,
+ ZhongGz=x.user.Worek.TiXianZonge,
+ ItCode=x.user.ItCode,
+ SuccessAmount= x.SuccessAmount,
+ FailAmount=x.FailAmount
+
+
+
+
+
+
+
+ }).MergeTable().WhereIF(where != null, where).OrderByIF(order!=null,order,Param.Order?.Des?? OrderByType.Asc).ToPageListAsync(Param.Page.PageIndex,Param.Page.PageSize, title);
+
+
+
+ Param.Page.TotalCount = title;
+
+ return new RetPageData<WeChatTransferOrder>()
+ {
+ data= data,
+ Page=Param.Page,
+ };
+; }
+
+
}
/// <summary>
- ///
+ /// 鏀剁储
/// </summary>
public class SearchTransferOder
{
@@ -961,4 +1030,7 @@
}
+
+
+
}
diff --git a/cylsg/cylsg.Model/ECTEModel/EC_DriverRecord.cs b/cylsg/cylsg.Model/ECTEModel/EC_DriverRecord.cs
index 01646a0..e316b0e 100644
--- a/cylsg/cylsg.Model/ECTEModel/EC_DriverRecord.cs
+++ b/cylsg/cylsg.Model/ECTEModel/EC_DriverRecord.cs
@@ -16,14 +16,17 @@
/// <summary>
/// id Key
/// </summary>
-
+ [SugarColumn(IsPrimaryKey =true)]
public Guid? Id { get; set; }
/// <summary>
/// 閲岀▼琛� 鍏噷
/// </summary>
public int Mileage { get; set; } = 0;
-
+ /// <summary>
+ /// 杞﹁締閲岀▼琛ㄥ浘鐗�
+ /// </summary>
+ public string? MileageImg { get; set; }
/// <summary>
/// 杞﹀喌
/// </summary>
@@ -56,12 +59,13 @@
/// <summary>
/// 鍒涘缓浜哄璞�
/// </summary>
- public OaStaff? Staff { get; set; }
+ [Navigate(NavigateType.OneToOne, nameof(OaStaff.MemberId), nameof(CreaterID))]
+ public OaStaff? CreaterStaff { get; set; }
/// <summary>
/// 杞﹁締
/// </summary>
-
+ [Navigate(NavigateType.OneToOne, nameof(CarID), nameof(OA_CarManage.Keyid))]
public OA_CarManage Car { get; set; }
/// <summary>
/// 鍒涘缓浜�
@@ -88,6 +92,15 @@
public DriverClockType ClockType { get; set; } = DriverClockType.Unknown;
+
+
+ /// <summary>
+ /// 鏄惁鍙互缂栬緫
+ /// </summary>
+ [SugarColumn(IsIgnore =true)]
+ public bool CanEdit { get; set; }=false;
+
+
}
/// <summary>
/// 鎵撳崱绫诲瀷
@@ -105,7 +118,11 @@
/// <summary>
/// 涓嬬彮鎵撳崱
/// </summary>
- Clockout
+ Clockout,
+ /// <summary>
+ /// 鑽夌
+ /// </summary>
+ RoughDraft
}
}
diff --git a/cylsg/cylsg.Model/ECTEModel/OA_DeliverPlan.cs b/cylsg/cylsg.Model/ECTEModel/OA_DeliverPlan.cs
index f8a3bbd..f06d5b9 100644
--- a/cylsg/cylsg.Model/ECTEModel/OA_DeliverPlan.cs
+++ b/cylsg/cylsg.Model/ECTEModel/OA_DeliverPlan.cs
@@ -186,7 +186,7 @@
/// <summary>
/// 澶� 娉�:
- /// 榛樿鍊�:
+ /// 榛樿鍊�: 瀹㈡埛缁忕悊
///</summary>
[SugarColumn(ColumnName="BusinessManagerId" ) ]
public int? BusinessManagerId { get; set; }
@@ -223,9 +223,25 @@
[SugarColumn(ColumnName="CompanyName" ) ]
public string? CompanyName { get; set; }
+ /// <summary>
+ /// 澶� 娉�:
+ /// 榛樿鍊�:
+ ///</summary>
+ [SugarColumn(ColumnName = "TransferType")]
+ public int? TransferType { get; set; }
/// <summary>
/// 澶� 娉�:
+ /// 榛樿鍊�:
+ ///</summary>
+ [SugarColumn(ColumnName = "TransferName")]
+ public string? TransferName { get; set; }
+ /// <summary>
+ /// 娲捐溅ID
+ /// </summary>
+ public Guid? DeliverPlanPaicheid { get; set; }
+ /// <summary>
+ /// 澶� 娉�:
/// 榛樿鍊�: 鏂板鐨勶紝涓嶅叧鑱斿叕鍙�
///</summary>
diff --git a/cylsg/cylsg.Model/ECTEModel/OA_DeliverPlanPaiche.cs b/cylsg/cylsg.Model/ECTEModel/OA_DeliverPlanPaiche.cs
new file mode 100644
index 0000000..6892bb0
--- /dev/null
+++ b/cylsg/cylsg.Model/ECTEModel/OA_DeliverPlanPaiche.cs
@@ -0,0 +1,278 @@
+锘縰sing System;
+using System.Collections.Generic;
+using System.Linq;
+using cylsg.Model.ECTEModel;
+using SqlSugar;
+namespace Models
+{
+ /// <summary>
+ /// 娲捐溅
+ ///</summary>
+ [SugarTable("OA_DeliverPlanPaiche")]
+ public class OA_DeliverPlanPaiche
+ {
+
+
+ /// <summary>
+ /// 澶� 娉�:
+ /// 榛樿鍊�:
+ ///</summary>
+ [SugarColumn(ColumnName = "Keyid", IsPrimaryKey = true)]
+ public Guid? Keyid { get; set; }
+
+ /// <summary>
+ /// 澶� 娉�:
+ /// 榛樿鍊�:
+ ///</summary>
+ [SugarColumn(ColumnName = "FirmId")]
+ public Guid? FirmId { get; set; }
+
+ /// <summary>
+ /// 澶� 娉�:瀹㈡埛id
+ /// 榛樿鍊�:
+ ///</summary>
+ [SugarColumn(ColumnName = "BuyerId")]
+ public Guid? BuyerId { get; set; }
+
+ /// <summary>
+ /// 澶� 娉�:瀹為檯鍒拌揪鏃堕棿
+ /// 榛樿鍊�:
+ ///</summary>
+ [SugarColumn(ColumnName = "DeliveredTime")]
+ public DateTime? DeliveredTime { get; set; }
+
+ /// <summary>
+ /// 澶� 娉�:
+ /// 榛樿鍊�:
+ ///</summary>
+ [SugarColumn(ColumnName = "DeliverTime")]
+ public DateTime? DeliverTime { get; set; }
+
+ /// <summary>
+ /// 澶� 娉�:娉ㄦ剰浜嬮」
+ /// 榛樿鍊�:
+ ///</summary>
+ [SugarColumn(ColumnName = "Zhuyishixiang")]
+ public string? Zhuyishixiang { get; set; }
+
+ /// <summary>
+ /// 澶� 娉�:宸ヤ綔鑰冭瘎
+ /// 榛樿鍊�:
+ ///</summary>
+ [SugarColumn(ColumnName = "Gongzuokaoping")]
+ public string? Gongzuokaoping { get; set; }
+
+ /// <summary>
+ /// 澶� 娉�:姹借溅id
+ /// 榛樿鍊�:
+ ///</summary>
+ [SugarColumn(ColumnName = "CarId")]
+ public int? CarId { get; set; }
+
+ /// <summary>
+ /// 澶� 娉�:鍙告満id
+ /// 榛樿鍊�:
+ ///</summary>
+ [SugarColumn(ColumnName = "DriverId")]
+ public int? DriverId { get; set; }
+
+ /// <summary>
+ /// 鍙告満
+ /// </summary>
+ [Navigate(NavigateType.OneToOne, nameof(DriverId), nameof(OaStaff.Keyid))]
+ public OaStaff? Driver { get; set; }
+ /// <summary>
+ /// 澶� 娉�:绉讳氦鐘舵�� 杩愯緭鐘舵�� 2绉讳氦 1 鏈Щ浜�
+ /// 榛樿鍊�:
+ ///</summary>
+ [SugarColumn(ColumnName = "Transferstatus")]
+ public int? Transferstatus { get; set; }
+
+ /// <summary>
+ /// 澶� 娉�:绉讳氦鏃堕棿
+ /// 榛樿鍊�:
+ ///</summary>
+ [SugarColumn(ColumnName = "TransfersTime")]
+ public DateTime? TransfersTime { get; set; }
+
+ /// <summary>
+ /// 澶� 娉�:
+ /// 榛樿鍊�:
+ ///</summary>
+ [SugarColumn(ColumnName = "Sort")]
+ public int? Sort { get; set; }
+
+ /// <summary>
+ /// 澶� 娉�:
+ /// 榛樿鍊�:
+ ///</summary>
+ [SugarColumn(ColumnName = "Creater")]
+ public Guid? Creater { get; set; }
+
+ /// <summary>
+ /// 鍛樺伐
+ /// </summary>
+ [Navigate(NavigateType.OneToOne, nameof(Creater), nameof(OaStaff.MemberId))]
+ public OaStaff? SentStaff { get; set; }
+ /// <summary>
+ /// 澶� 娉�:
+ /// 榛樿鍊�:
+ ///</summary>
+ [SugarColumn(ColumnName = "CreateTime")]
+ public DateTime? CreateTime { get; set; }
+
+ /// <summary>
+ /// 澶� 娉�:
+ /// 榛樿鍊�:
+ ///</summary>
+ [SugarColumn(ColumnName = "Updater")]
+ public Guid? Updater { get; set; }
+
+ /// <summary>
+ /// 澶� 娉�:
+ /// 榛樿鍊�:
+ ///</summary>
+ [SugarColumn(ColumnName = "LastUpdateTime")]
+ public DateTime? LastUpdateTime { get; set; }
+
+ /// <summary>
+ /// 澶� 娉�:鎰忚鍙嶉
+ /// 榛樿鍊�:
+ ///</summary>
+ [SugarColumn(ColumnName = "wentifankui")]
+ public string? Wentifankui { get; set; }
+
+ /// <summary>
+ /// 澶� 娉�:
+ /// 榛樿鍊�:
+ ///</summary>
+ [SugarColumn(ColumnName = "Yichangchuli")]
+ public string? Yichangchuli { get; set; }
+
+ /// <summary>
+ /// 澶� 娉�:
+ /// 榛樿鍊�:
+ ///</summary>
+ [SugarColumn(ColumnName = "Xingzhengzhuize")]
+ public string? Xingzhengzhuize { get; set; }
+
+ /// <summary>
+ /// 澶� 娉�:閫佽揣鍗曞彿
+ /// 榛樿鍊�:
+ ///</summary>
+ [SugarColumn(ColumnName = "SellerOrderId")]
+ public string? SellerOrderId { get; set; }
+
+ /// <summary>
+ /// 澶� 娉�:鐢佃瘽
+ /// 榛樿鍊�:
+ ///</summary>
+ [SugarColumn(ColumnName = "Dianhua")]
+ public string? Dianhua { get; set; }
+
+ /// <summary>
+ /// 澶� 娉�:鍦板潃
+ /// 榛樿鍊�:
+ ///</summary>
+ [SugarColumn(ColumnName = "Dizhi")]
+ public string? Dizhi { get; set; }
+
+ /// <summary>
+ /// 澶� 娉�:
+ /// 榛樿鍊�:
+ ///</summary>
+ [SugarColumn(ColumnName = "Remark")]
+ public string? Remark { get; set; }
+
+ /// <summary>
+ /// 澶� 娉�:椤圭洰缁忕悊 ID
+ /// 榛樿鍊�:
+ ///</summary>
+ [SugarColumn(ColumnName = "BusinessManagerId")]
+ public int? BusinessManagerId { get; set; }
+
+
+ /// <summary>
+ /// 瀹㈡埛缁忕悊
+ /// </summary>
+ [Navigate(NavigateType.OneToOne, nameof(BusinessManagerId), nameof(OaStaff.Keyid))]
+ public OaStaff? Manager { get; set; }
+ /// <summary>
+ /// 澶� 娉�:
+ /// 榛樿鍊�:
+ ///</summary>
+ [SugarColumn(ColumnName = "Biddingcompany")]
+ public int? Biddingcompany { get; set; }
+
+ /// <summary>
+ /// 澶� 娉�: 2蹇界暐
+ /// 榛樿鍊�:
+ ///</summary>
+ [SugarColumn(ColumnName = "shifouDelivery")]
+ public int? ShifouDelivery { get; set; }
+
+ /// <summary>
+ /// 澶� 娉�:鑱旂郴浜�
+ /// 榛樿鍊�:
+ ///</summary>
+ [SugarColumn(ColumnName = "Lianxiren")]
+ public string? Lianxiren { get; set; }
+
+ /// <summary>
+ /// 澶� 娉�:
+ /// 榛樿鍊�: 鏂板鐨勶紝涓嶅叧鑱斿叕鍙�
+ ///</summary>
+ [SugarColumn(ColumnName = "CompanyName")]
+ public string? CompanyName { get; set; }
+
+ /// <summary>
+ /// 澶� 娉�:
+ /// 榛樿鍊�:
+ ///</summary>
+ [SugarColumn(ColumnName = "TransferType")]
+ public int? TransferType { get; set; }
+
+ /// <summary>
+ /// 澶� 娉�:
+ /// 榛樿鍊�:
+ ///</summary>
+ [SugarColumn(ColumnName = "TransferName")]
+ public string? TransferName { get; set; }
+
+
+ /// <summary>
+ /// 鍏宠仈閰嶉�佸崟
+ /// </summary>
+ [Navigate(NavigateType.OneToMany, nameof(OA_DeliverPlan.DeliverPlanPaicheid), nameof(Keyid))]
+ public List<OA_DeliverPlan>? DeliverPlans { get; set; }
+
+
+ /// <summary>
+ /// 鍏宠仈璇锋眰鍗�
+ /// </summary>
+ [Navigate(NavigateType.OneToOne, nameof(Keyid),nameof(OA_DeliverTixing.DeliverPlanPaicheId))]
+ public OA_DeliverTixing? DelvceTiXing { get; set; }
+ /// <summary>
+ /// 澶� 娉�:
+ /// 榛樿鍊�: 鏂板鐨勶紝涓嶅叧鑱斿叕鍙�
+ ///</summary>
+
+ public DeliveredType? Deliveredstatus { get; set; } = DeliveredType.Undeliver;
+
+ /// <summary>
+ /// 闄勪欢鍒楄〃 3
+ /// </summary>
+ [Navigate(NavigateType.OneToMany, nameof(OA_attachment.OA_Id), nameof(Keyid), "AttachmentType=3")]
+ public List<OA_attachment> Attachments { get; set; }
+
+
+ /// <summary>
+ /// 鎻愰啋鐨刱eyID 鏄彁閱掍紶閫掕繃鏉ョ殑闇�瑕佷紶閫掓瀛楁锛屽惁鍒欎负绌�
+ /// </summary>
+ [SugarColumn(IsIgnore =true)]
+ public int? DeliverTixingId { get; set; }
+
+
+ }
+
+}
\ No newline at end of file
diff --git a/cylsg/cylsg.Model/ECTEModel/OA_DeliverTixing.cs b/cylsg/cylsg.Model/ECTEModel/OA_DeliverTixing.cs
index 1e9a2a9..704b946 100644
--- a/cylsg/cylsg.Model/ECTEModel/OA_DeliverTixing.cs
+++ b/cylsg/cylsg.Model/ECTEModel/OA_DeliverTixing.cs
@@ -29,7 +29,7 @@
/// <summary>
/// 鍛樺伐
/// </summary>
- [Navigate(NavigateType.OneToOne, nameof(FirmId), nameof(OaStaff.MemberId))]
+ [Navigate(NavigateType.OneToOne, nameof(Creater), nameof(OaStaff.MemberId))]
public OaStaff? SentStaff { get; set; }
/// <summary>
@@ -87,7 +87,19 @@
///</summary>
[SugarColumn(ColumnName="LastUpdateTime" ) ]
public DateTime? LastUpdateTime { get; set; }
-
+
+ /// <summary>
+ /// 娲捐溅ID
+ /// </summary>
+ public Guid? DeliverPlanPaicheId { get; set; }
+
+
+ /// <summary>
+ /// 娲捐溅鍗�
+ /// </summary>
+ [Navigate(NavigateType.OneToOne, nameof(DeliverPlanPaicheId), nameof(OA_DeliverPlanPaiche.Keyid))]
+ public OA_DeliverPlanPaiche? Paiche { get; set; }
+
}
/// <summary>
diff --git a/cylsg/cylsg.Model/TransferOrder/WeChartTransferOrder.cs b/cylsg/cylsg.Model/TransferOrder/WeChartTransferOrder.cs
index bec1437..b1bf166 100644
--- a/cylsg/cylsg.Model/TransferOrder/WeChartTransferOrder.cs
+++ b/cylsg/cylsg.Model/TransferOrder/WeChartTransferOrder.cs
@@ -180,6 +180,37 @@
[SugarColumn(ColumnDescription = "鏄惁宸茬粡瀹屾垚澶勭悊", DefaultValue ="0")]
public bool IsSetOK { get; set; }= false;
+ /// <summary>
+ /// 鍚嶅瓧
+ /// </summary>
+ [SugarColumn(IsIgnore = true)]
+ public string? UserName { get; set; }
+
+ /// <summary>
+ /// 鐢ㄦ埛韬唤璇�
+ /// </summary>
+ [SugarColumn(IsIgnore = true)]
+ public string? UserIDCode { get; set; }
+
+
+ /// <summary>
+ /// 宸叉彁鐜板伐璧�
+ /// </summary>
+ [SugarColumn(IsIgnore = true)]
+ public decimal? YiTiXianGz { get; set; }
+
+ /// <summary>
+ /// 鎬诲伐璧�
+ /// </summary>
+ [SugarColumn(IsIgnore = true)]
+ public decimal? ZhongGz { get; set; }
+
+ /// <summary>
+ /// 鐢佃瘽鍙风爜
+ /// </summary>
+ [SugarColumn(IsIgnore = true)]
+ public string? ItCode { get; set; }
+
}
diff --git a/cylsg/cylsg.Model/UserModel/User.cs b/cylsg/cylsg.Model/UserModel/User.cs
index 739353a..1c4d35b 100644
--- a/cylsg/cylsg.Model/UserModel/User.cs
+++ b/cylsg/cylsg.Model/UserModel/User.cs
@@ -43,7 +43,7 @@
/// <summary>
/// 鏄电О
/// </summary>
- [SugarColumn(ColumnDescription = "鐢ㄦ埛ID", ColumnDataType = "nvarchar(100)", IsNullable = true)]
+ [SugarColumn(ColumnDescription = "鐢ㄦ埛鏄电О", ColumnDataType = "nvarchar(100)", IsNullable = true)]
public string? Nickname { get; set; }
@@ -63,5 +63,12 @@
/// </summary>
[SugarColumn(ColumnDescription = "WxOpenId", ColumnDataType = "nvarchar(100)", IsNullable = true)]
public string? WxOpenId { get; set; }
+
+
+ /// <summary>
+ /// 鐢ㄦ埛琛ㄦ儏銆�
+ /// </summary>
+ [Navigate(NavigateType.OneToOne, nameof(Id),nameof(UserWorker.UserId))]
+ public UserWorker Worek { get; set; }
}
}
diff --git a/cylsg/cylsg.Model/utilityViewModel/ECTESTOAPermissions.cs b/cylsg/cylsg.Model/utilityViewModel/ECTESTOAPermissions.cs
index df66ddd..3f1ccde 100644
--- a/cylsg/cylsg.Model/utilityViewModel/ECTESTOAPermissions.cs
+++ b/cylsg/cylsg.Model/utilityViewModel/ECTESTOAPermissions.cs
@@ -75,4 +75,60 @@
}
+
+ /// <summary>
+ /// 鏍规嵁where鏌ヨ鏉′欢鍜宱rder鎺掑簭鑾峰彇鍒楄〃
+ /// </summary>
+ public class SSPageByWhereOrder
+ {
+ /// <summary>
+ /// 椤甸潰鍙傛暟
+ /// </summary>
+ public PageModel Page { get; set; }
+
+ /// <summary>
+ /// 鍒ゆ柇鏉′欢 蹇呴』鏄痡son鏍煎紡鐨勫瓧绗︿覆{xxx:ddd}
+ /// </summary>
+ public string? Where { get; set; }
+
+ /// <summary>
+ /// 鎺掑簭
+ /// </summary>
+
+ public SSOrder? Order { get; set; }
+
+ }
+
+ /// <summary>
+ /// 鎺掑簭鏂瑰紡
+ /// </summary>
+ public class SSOrder
+ {
+ /// <summary>
+ /// 灞炴�у悕绉�
+ /// </summary>
+ public string Name { get; set; }
+ /// <summary>
+ /// 鎺掑簭绫诲瀷
+ /// </summary>
+ public OrderByType Des { get; set; }
+ }
+ /// <summary>
+ /// 閫氱敤杩斿洖鍙傛暟
+ /// </summary>
+ /// <typeparam name="T"></typeparam>
+ public class RetPageData<T>
+ {
+ /// <summary>
+ /// 鏁版嵁
+ /// </summary>
+ public List<T> data { get; set; }
+ /// <summary>
+ /// 椤甸潰鍙傛暟
+ /// </summary>
+ public PageModel Page { get; set; }
+
+ }
+
+
}
diff --git a/cylsg/cylsg.utility/CommonHelper.cs b/cylsg/cylsg.utility/CommonHelper.cs
index 978d033..9ad189f 100644
--- a/cylsg/cylsg.utility/CommonHelper.cs
+++ b/cylsg/cylsg.utility/CommonHelper.cs
@@ -1,15 +1,22 @@
-锘縰sing System;
+锘縰sing cylsg.utility.Extend;
+using Newtonsoft.Json;
+using Newtonsoft.Json.Linq;
+using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.Globalization;
using System.Linq;
+using System.Linq.Expressions;
+using System.Net.Http.Json;
using System.Reflection;
using System.Runtime.Loader;
using System.Security.Cryptography;
using System.Text;
+using System.Text.Json.Serialization;
using System.Text.RegularExpressions;
using System.Threading.Tasks;
+using static cylsg.utility.untilityModels;
namespace cylsg.utility
{
@@ -818,12 +825,165 @@
#endregion
+ /// <summary>
+ /// 鏍规嵁json瀛楃绌垮鐞�
+ /// </summary>
+ /// <typeparam name="T"></typeparam>
+ /// <param name="jsonString"></param>
+ /// <param name="parameter"></param>
+ /// <returns></returns>
+ private static Expression<Func<T, bool>> CreateWhereExpressionRecursive<T>(string jsonString, ParameterExpression parameter)
+ {
+ var conditions = new List<Expression>();
+
+ JObject jsonObject = JObject.Parse(jsonString);
+
+ foreach (var property in jsonObject.Properties())
+ {
+ var propertyName = property.Name;
+ var propertyValue = property.Value.ToString();
+ if (propertyValue == "") //绌哄�间笉澶勭悊
+ continue;
+ var propertyInfo = typeof(T).GetProperty(propertyName);
+
+ if (propertyInfo == null)
+ {
+ propertyInfo = typeof(T).GetProperty(propertyName.FirstToCapitalize());
+ if (propertyInfo == null)
+ continue; // 濡傛灉灞炴�т笉瀛樺湪锛岃烦杩�
+ }
+
+ var propertyType = propertyInfo.PropertyType;
+ var TypeName = propertyType.GenericTypeArguments.Length > 0 ? propertyType.GenericTypeArguments[0].Name + "?" : propertyType.Name;
+ if (propertyType.IsClass && TypeName != "String")
+ {
+ // 閫掑綊澶勭悊宓屽妯″瀷
+ var nestedParameter = Expression.Parameter(propertyType, propertyName);
+ var nestedJsonString = property.Value.ToString();
+
+ // 浣跨敤 MakeGenericType 鍔ㄦ�佸垱寤烘硾鍨嬫柟娉�
+ var genericMethod = typeof(CommonHelper).GetMethod("CreateWhereExpressionRecursive", BindingFlags.Static | BindingFlags.NonPublic)
+ .MakeGenericMethod(propertyType);
+
+ // 璋冪敤娉涘瀷鏂规硶骞惰幏鍙栬繑鍥炵殑琛ㄨ揪寮�
+ var nestedConditions = (Expression<Func<object, bool>>)genericMethod.Invoke(null, new object[] { nestedJsonString, nestedParameter });
+
+ var propExpr = Expression.Property(parameter, propertyName);
+ var lambda = Expression.Lambda(nestedConditions.Body, nestedParameter);
+ var invoke = Expression.Invoke(lambda, propExpr);
+ conditions.Add(invoke);
+ }
+ else if (propertyType == typeof(string))
+ {
+ var propExpr = Expression.Property(parameter, propertyName);
+ var constant = Expression.Constant(propertyValue);
+
+ var containsMethod = typeof(string).GetMethod("Contains", new[] { typeof(string) });
+ var containsExpression = Expression.Call(propExpr, containsMethod, constant);
+ conditions.Add(containsExpression);
+ }
+ else if (TypeName.Contains( "DateTime")) //鍏煎DateTime锛�
+ {
+ var dateRange = propertyValue.Split('~');
+ if (dateRange.Length == 2)
+ {
+ var startDate = DateTime.Parse(dateRange[0]);
+ var endDate = DateTime.Parse(dateRange[1]);
+
+ var propExpr = Expression.Property(parameter, propertyName);
+ var startConstant = Expression.Constant(startDate);
+ var endConstant = Expression.Constant(endDate);
+ if (TypeName == "DateTime?")
+ // 灏嗗父閲忚〃杈惧紡杞崲涓� Nullable<DateTime>
+ {
+ var startNullableConstant = Expression.Convert(startConstant, typeof(DateTime?));
+ var endNullableConstant = Expression.Convert(endConstant, typeof(DateTime?));
+
+
+ var greaterThanOrEqual = Expression.GreaterThanOrEqual(propExpr, startNullableConstant);
+ var lessThanOrEqual = Expression.LessThanOrEqual(propExpr, endNullableConstant);
+
+
+ var andExpression = Expression.AndAlso(greaterThanOrEqual, lessThanOrEqual);
+ conditions.Add(andExpression);
+ }
+ else
+ {
+
+ var greaterThanOrEqual = Expression.GreaterThanOrEqual(propExpr, startConstant);
+ var lessThanOrEqual = Expression.LessThanOrEqual(propExpr, endConstant);
+
+
+ var andExpression = Expression.AndAlso(greaterThanOrEqual, lessThanOrEqual);
+ conditions.Add(andExpression);
+
+ }
+ }
+ else if (DateTime.TryParse(propertyValue, out var dateTime))
+ {
+ var propExpr = Expression.Property(parameter, propertyName);
+ var constant = Expression.Constant(dateTime);
+ var equalExpression = Expression.Equal(propExpr, constant);
+ conditions.Add(equalExpression);
+ }
+ }
+ else
+ {
+ var propExpr = Expression.Property(parameter, propertyName);
+ var constant = Expression.Constant(Convert.ChangeType(propertyValue, propertyType));
+ var equalExpression = Expression.Equal(propExpr, constant);
+ conditions.Add(equalExpression);
+ }
+ }
+
+ var body = conditions.Count > 1 ? conditions.Aggregate(Expression.AndAlso) : conditions.FirstOrDefault();
+ return Expression.Lambda<Func<T, bool>>(body ?? Expression.Constant(true), parameter);
+ }
+
+ /// <summary>
+ /// json鏍煎紡鍖栦负琛ㄨ揪寮忔爲
+ /// </summary>
+ /// <typeparam name="T"></typeparam>
+ /// <param name="jsonString"></param>
+ /// <returns></returns>
+ public static Expression<Func<T, bool>> FormatWhereExpression<T>(string jsonString)
+ {
+ var parameter = Expression.Parameter(typeof(T), "x");
+ return CreateWhereExpressionRecursive<T>(jsonString, parameter);
+ }
+
+ /// <summary>
+ /// 鏇村叿灞炴�у悕绉扮敓鎴愯〃杈惧紡鏍戯紝濡倄.id
+ /// </summary>
+ /// <typeparam name="T"></typeparam>
+ /// <param name="propertyName"></param>
+ /// <returns></returns>
+ public static Expression<Func<T, object>> FormatPropertyExpression<T>(string propertyName)
+ {
+ // 鑾峰彇鍙傛暟琛ㄨ揪寮�
+ var parameter = Expression.Parameter(typeof(T), "x");
+
+ // 鑾峰彇灞炴�ц〃杈惧紡
+ var propertyAccess = Expression.PropertyOrField(parameter, propertyName);
+ if (propertyAccess == null)
+ {
+ ///棣栧瓧姣嶈浆澶у啓
+ propertyAccess = Expression.PropertyOrField(parameter, propertyName.FirstToCapitalize());
+ }
+
+
+ // 鍒涘缓 Lambda 琛ㄨ揪寮忥紝骞跺湪杩斿洖鍊间腑杩涜绫诲瀷杞崲
+ return Expression.Lambda<Func<T, object>>(
+ Expression.Convert(propertyAccess, typeof(object)),
+ parameter);
+ }
+
+
+ }
-
- }
/// <summary>
/// 鏋氫妇椤瑰睘鎬�
@@ -847,4 +1007,9 @@
[Description("鏋氫妇椤瑰睘鎬�")]
public string? Description { get; set; }
}
+
+
+
+
+
}
diff --git a/cylsg/cylsg.utility/Extend/StringEx.cs b/cylsg/cylsg.utility/Extend/StringEx.cs
index d6e261a..095dbcc 100644
--- a/cylsg/cylsg.utility/Extend/StringEx.cs
+++ b/cylsg/cylsg.utility/Extend/StringEx.cs
@@ -232,5 +232,20 @@
}
#endregion
+ /// <summary>
+ /// 棣栧瓧姣嶈浆澶у啓
+ /// </summary>
+ /// <param name="input"></param>
+ /// <returns></returns>
+ public static string FirstToCapitalize(this string input)
+ {
+ if (string.IsNullOrEmpty(input))
+ {
+ return input;
+ }
+
+ TextInfo textInfo = new CultureInfo("en-US", false).TextInfo;
+ return textInfo.ToTitleCase(input.ToLower()).Substring(0, 1) + input.Substring(1);
+ }
}
}
diff --git a/cylsg/cylsg.utility/cylsg.utility.csproj b/cylsg/cylsg.utility/cylsg.utility.csproj
index 3cb2bf4..1dad6ca 100644
--- a/cylsg/cylsg.utility/cylsg.utility.csproj
+++ b/cylsg/cylsg.utility/cylsg.utility.csproj
@@ -8,6 +8,7 @@
<ItemGroup>
<PackageReference Include="Microsoft.Extensions.Primitives" Version="8.0.0" />
+ <PackageReference Include="Newtonsoft.Json" Version="13.0.3" />
</ItemGroup>
</Project>
diff --git a/cylsg/cylsg.utility/untilityModels.cs b/cylsg/cylsg.utility/untilityModels.cs
new file mode 100644
index 0000000..b1ab056
--- /dev/null
+++ b/cylsg/cylsg.utility/untilityModels.cs
@@ -0,0 +1,16 @@
+锘縰sing System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace cylsg.utility
+{
+ /// <summary>
+ /// 閫氱敤妯″瀷
+ /// </summary>
+ public class untilityModels
+ {
+
+ }
+}
--
Gitblit v1.9.1