Files
BrunoGaoandClaude 56e98f26d7 feat: 实现删除租户/部门的级联检查和确认机制
✨ 新增功能:
- 创建DeleteConfirmDialog组件,提供详细的删除影响分析
- 实现租户删除级联检查,分析影响的部门、用户和设备
- 实现部门删除级联检查,确保数据完整性
- 添加API接口支持删除前置检查和级联删除操作
- 租户删除时同步删除t_customer_config对应记录

🔧 技术改进:
- 后端增加DepartmentDeletePreCheckDTO结构化数据传输
- 前端添加TypeScript类型定义支持级联删除功能
- 集成级联删除逻辑到组织管理和租户配置页面
- 实现事务性删除,确保操作的原子性

🎯 用户体验:
- 删除前显示详细的影响摘要和风险提醒
- 区分安全删除和级联删除操作
- 提供清晰的确认界面,防止误操作
- 支持单个和批量删除操作

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <[email protected]>
2025-09-17 23:54:28 +08:00

111 lines
3.4 KiB
JSON

{
"name": "ljwx-admin",
"type": "module",
"version": "1.0.11",
"packageManager": "[email protected]",
"description": "灵境万象系统前端管理界面 - 基于 Vue3、Vite5、TypeScript、NaiveUI 和 UnoCSS 构建的现代化健康监测管理系统",
"author": {
"name": "paynezhuang",
"email": "[email protected]",
"url": "https://github.com/paynezhuang"
},
"license": "Apache-2.0",
"homepage": "https://github.com/BrunoGao/yunxiang.git",
"repository": {
"url": "https://github.com/BrunoGao/yunxiang.git"
},
"bugs": {
"url": "https://github.com/BrunoGao/yunxiang/issues"
},
"keywords": ["Vue3 admin ", "vue-admin-template", "Vite5", "TypeScript", "naive-ui", "naive-ui-admin", "ant-design-vue v4", "UnoCSS"],
"engines": {
"node": ">=18.12.0",
"pnpm": ">=8.7.0"
},
"scripts": {
"build": "vite build",
"build:test": "vite build --mode test",
"build:vercel": "cross-env VITE_VERCEL=Y vite build",
"cleanup": "sa cleanup",
"commit": "sa git-commit",
"dev": "vite --mode test --host 0.0.0.0 --port 3333",
"dev:local": "vite --mode test --host 0.0.0.0 --port 3333",
"dev:prod": "vite --mode production --host 0.0.0.0 --port 3333",
"gen-route": "sa gen-route",
"lint": "eslint . --fix",
"preview": "vite preview",
"release": "sa release",
"typecheck": "vue-tsc --noEmit --skipLibCheck",
"update-pkg": "sa update-pkg"
},
"dependencies": {
"@amap/amap-jsapi-loader": "^1.0.1",
"@better-scroll/core": "2.5.1",
"@iconify/vue": "4.2.0",
"@sa/axios": "workspace:*",
"@sa/color": "workspace:*",
"@sa/hooks": "workspace:*",
"@sa/materials": "workspace:*",
"@sa/utils": "workspace:*",
"@types/amap-js-api": "^1.4.16",
"@types/xlsx": "^0.0.36",
"@vicons/ionicons5": "^0.13.0",
"@vueuse/core": "12.0.0",
"chart.js": "^4.5.0",
"clipboard": "2.0.11",
"dayjs": "1.11.13",
"defu": "6.1.4",
"echarts": "5.5.1",
"json5": "2.2.3",
"naive-ui": "2.40.3",
"nprogress": "0.2.0",
"pinia": "2.3.0",
"tailwind-merge": "2.5.5",
"vue": "3.5.13",
"vue-draggable-plus": "0.6.0",
"vue-i18n": "10.0.5",
"vue-router": "4.5.0",
"xlsx": "^0.18.5"
},
"devDependencies": {
"@elegant-router/vue": "0.3.8",
"@iconify/json": "2.2.283",
"@sa/scripts": "workspace:*",
"@sa/uno-preset": "workspace:*",
"@soybeanjs/eslint-config": "1.4.4",
"@types/node": "22.10.2",
"@types/nprogress": "0.2.3",
"@unocss/eslint-config": "0.65.1",
"@unocss/preset-icons": "0.65.1",
"@unocss/preset-uno": "0.65.1",
"@unocss/transformer-directives": "0.65.1",
"@unocss/transformer-variant-group": "0.65.1",
"@unocss/vite": "0.65.1",
"@vitejs/plugin-vue": "5.2.1",
"@vitejs/plugin-vue-jsx": "4.1.1",
"eslint": "9.17.0",
"eslint-plugin-vue": "9.32.0",
"lint-staged": "15.2.11",
"sass": "1.83.0",
"simple-git-hooks": "2.11.1",
"tsx": "4.19.2",
"typescript": "5.7.2",
"unplugin-icons": "0.21.0",
"unplugin-vue-components": "0.28.0",
"vite": "6.0.3",
"vite-plugin-progress": "0.0.7",
"vite-plugin-svg-icons": "2.0.1",
"vite-plugin-vue-devtools": "7.6.8",
"vue-eslint-parser": "9.4.3",
"vue-tsc": "2.1.10"
},
"simple-git-hooks": {
"commit-msg": "pnpm sa git-commit-verify",
"pre-commit": "pnpm typecheck && pnpm lint-staged"
},
"lint-staged": {
"*": "eslint --fix"
},
"website": "https://admin.soybeanjs.cn"
}