فهرست منبع

去除yudao相关内容,补充.env .env.local文件

uncledong 2 ماه پیش
والد
کامیت
77df0ac795
100فایلهای تغییر یافته به همراه152 افزوده شده و 215 حذف شده
  1. BIN
      .image/Java监控.jpg
  2. BIN
      .image/MySQL.jpg
  3. BIN
      .image/OA请假-列表.jpg
  4. BIN
      .image/OA请假-发起.jpg
  5. BIN
      .image/OA请假-详情.jpg
  6. BIN
      .image/Redis.jpg
  7. BIN
      .image/admin-uniapp/01.png
  8. BIN
      .image/admin-uniapp/02.png
  9. BIN
      .image/admin-uniapp/03.png
  10. BIN
      .image/admin-uniapp/04.png
  11. BIN
      .image/admin-uniapp/05.png
  12. BIN
      .image/admin-uniapp/06.png
  13. BIN
      .image/admin-uniapp/07.png
  14. BIN
      .image/admin-uniapp/08.png
  15. BIN
      .image/admin-uniapp/09.png
  16. BIN
      .image/common/ai-feature.png
  17. BIN
      .image/common/ai-preview.gif
  18. BIN
      .image/common/bpm-feature.png
  19. BIN
      .image/common/crm-feature.png
  20. BIN
      .image/common/erp-feature.png
  21. BIN
      .image/common/infra-feature.png
  22. BIN
      .image/common/mall-feature.png
  23. BIN
      .image/common/mall-preview.png
  24. BIN
      .image/common/project-vs.png
  25. BIN
      .image/common/ruoyi-vue-pro-architecture.png
  26. BIN
      .image/common/ruoyi-vue-pro-biz.png
  27. BIN
      .image/common/system-feature.png
  28. BIN
      .image/common/yudao-cloud-architecture.png
  29. BIN
      .image/common/yudao-roadmap.png
  30. BIN
      .image/demo/vue3-ep.png
  31. BIN
      .image/个人中心.jpg
  32. BIN
      .image/代码生成.jpg
  33. BIN
      .image/令牌管理.jpg
  34. BIN
      .image/任务列表-审批.jpg
  35. BIN
      .image/任务列表-已办.jpg
  36. BIN
      .image/任务列表-待办.jpg
  37. BIN
      .image/任务日志.jpg
  38. BIN
      .image/商户信息.jpg
  39. BIN
      .image/在线用户.jpg
  40. BIN
      .image/大屏设计器-列表.jpg
  41. BIN
      .image/大屏设计器-编辑.jpg
  42. BIN
      .image/大屏设计器-预览.jpg
  43. BIN
      .image/字典数据.jpg
  44. BIN
      .image/字典类型.jpg
  45. BIN
      .image/定时任务.jpg
  46. BIN
      .image/岗位管理.jpg
  47. BIN
      .image/工作流设计器-bpmn.jpg
  48. BIN
      .image/工作流设计器-simple.jpg
  49. BIN
      .image/应用信息-列表.jpg
  50. BIN
      .image/应用信息-编辑.jpg
  51. BIN
      .image/应用管理.jpg
  52. BIN
      .image/我的流程-列表.jpg
  53. BIN
      .image/我的流程-发起.jpg
  54. BIN
      .image/我的流程-详情.jpg
  55. BIN
      .image/报表设计器-图形报表.jpg
  56. BIN
      .image/报表设计器-打印设计.jpg
  57. BIN
      .image/报表设计器-数据报表.jpg
  58. BIN
      .image/操作日志.jpg
  59. BIN
      .image/支付订单.jpg
  60. BIN
      .image/敏感词.jpg
  61. BIN
      .image/数据库文档.jpg
  62. BIN
      .image/文件管理.jpg
  63. BIN
      .image/文件管理2.jpg
  64. BIN
      .image/文件配置.jpg
  65. BIN
      .image/日志中心.jpg
  66. BIN
      .image/流程模型-列表.jpg
  67. BIN
      .image/流程模型-定义.jpg
  68. BIN
      .image/流程模型-设计.jpg
  69. BIN
      .image/流程表单.jpg
  70. BIN
      .image/生成效果.jpg
  71. BIN
      .image/用户分组.jpg
  72. BIN
      .image/用户管理.jpg
  73. BIN
      .image/登录.jpg
  74. BIN
      .image/登录日志.jpg
  75. BIN
      .image/短信日志.jpg
  76. BIN
      .image/短信模板.jpg
  77. BIN
      .image/短信渠道.jpg
  78. BIN
      .image/租户套餐.png
  79. BIN
      .image/租户管理.jpg
  80. BIN
      .image/系统接口.jpg
  81. BIN
      .image/菜单管理.jpg
  82. BIN
      .image/表单构建.jpg
  83. BIN
      .image/角色管理.jpg
  84. BIN
      .image/访问日志.jpg
  85. BIN
      .image/退款订单.jpg
  86. BIN
      .image/通知公告.jpg
  87. BIN
      .image/部门管理.jpg
  88. BIN
      .image/配置管理.jpg
  89. BIN
      .image/链路追踪.jpg
  90. BIN
      .image/错误日志.jpg
  91. BIN
      .image/错误码管理.jpg
  92. BIN
      .image/首页.jpg
  93. 137 0
      AGENTS.md
  94. 15 0
      grep.exe.stackdump
  95. 0 37
      src/api/mall/market/banner/index.ts
  96. 0 61
      src/api/mall/product/brand.ts
  97. 0 56
      src/api/mall/product/category.ts
  98. 0 49
      src/api/mall/product/comment.ts
  99. 0 12
      src/api/mall/product/favorite.ts
  100. 0 0
      src/api/mall/product/history.ts

BIN
.image/Java监控.jpg


BIN
.image/MySQL.jpg


BIN
.image/OA请假-列表.jpg


BIN
.image/OA请假-发起.jpg


BIN
.image/OA请假-详情.jpg


BIN
.image/Redis.jpg


BIN
.image/admin-uniapp/01.png


BIN
.image/admin-uniapp/02.png


BIN
.image/admin-uniapp/03.png


BIN
.image/admin-uniapp/04.png


BIN
.image/admin-uniapp/05.png


BIN
.image/admin-uniapp/06.png


BIN
.image/admin-uniapp/07.png


BIN
.image/admin-uniapp/08.png


BIN
.image/admin-uniapp/09.png


BIN
.image/common/ai-feature.png


BIN
.image/common/ai-preview.gif


BIN
.image/common/bpm-feature.png


BIN
.image/common/crm-feature.png


BIN
.image/common/erp-feature.png


BIN
.image/common/infra-feature.png


BIN
.image/common/mall-feature.png


BIN
.image/common/mall-preview.png


BIN
.image/common/project-vs.png


BIN
.image/common/ruoyi-vue-pro-architecture.png


BIN
.image/common/ruoyi-vue-pro-biz.png


BIN
.image/common/system-feature.png


BIN
.image/common/yudao-cloud-architecture.png


BIN
.image/common/yudao-roadmap.png


BIN
.image/demo/vue3-ep.png


BIN
.image/个人中心.jpg


BIN
.image/代码生成.jpg


BIN
.image/令牌管理.jpg


BIN
.image/任务列表-审批.jpg


BIN
.image/任务列表-已办.jpg


BIN
.image/任务列表-待办.jpg


BIN
.image/任务日志.jpg


BIN
.image/商户信息.jpg


BIN
.image/在线用户.jpg


BIN
.image/大屏设计器-列表.jpg


BIN
.image/大屏设计器-编辑.jpg


BIN
.image/大屏设计器-预览.jpg


BIN
.image/字典数据.jpg


BIN
.image/字典类型.jpg


BIN
.image/定时任务.jpg


BIN
.image/岗位管理.jpg


BIN
.image/工作流设计器-bpmn.jpg


BIN
.image/工作流设计器-simple.jpg


BIN
.image/应用信息-列表.jpg


BIN
.image/应用信息-编辑.jpg


BIN
.image/应用管理.jpg


BIN
.image/我的流程-列表.jpg


BIN
.image/我的流程-发起.jpg


BIN
.image/我的流程-详情.jpg


BIN
.image/报表设计器-图形报表.jpg


BIN
.image/报表设计器-打印设计.jpg


BIN
.image/报表设计器-数据报表.jpg


BIN
.image/操作日志.jpg


BIN
.image/支付订单.jpg


BIN
.image/敏感词.jpg


BIN
.image/数据库文档.jpg


BIN
.image/文件管理.jpg


BIN
.image/文件管理2.jpg


BIN
.image/文件配置.jpg


BIN
.image/日志中心.jpg


BIN
.image/流程模型-列表.jpg


BIN
.image/流程模型-定义.jpg


BIN
.image/流程模型-设计.jpg


BIN
.image/流程表单.jpg


BIN
.image/生成效果.jpg


BIN
.image/用户分组.jpg


BIN
.image/用户管理.jpg


BIN
.image/登录.jpg


BIN
.image/登录日志.jpg


BIN
.image/短信日志.jpg


BIN
.image/短信模板.jpg


BIN
.image/短信渠道.jpg


BIN
.image/租户套餐.png


BIN
.image/租户管理.jpg


BIN
.image/系统接口.jpg


BIN
.image/菜单管理.jpg


BIN
.image/表单构建.jpg


BIN
.image/角色管理.jpg


BIN
.image/访问日志.jpg


BIN
.image/退款订单.jpg


BIN
.image/通知公告.jpg


BIN
.image/部门管理.jpg


BIN
.image/配置管理.jpg


BIN
.image/链路追踪.jpg


BIN
.image/错误日志.jpg


BIN
.image/错误码管理.jpg


BIN
.image/首页.jpg


+ 137 - 0
AGENTS.md

@@ -0,0 +1,137 @@
+## 全局规则概览
+- 这是面向 agentic coding agents 的工作指引,覆盖构建、质量、风格、流程与协作。
+- 文件应保持最新,优先在仓库根目录维护。
+- 如遇新工具/工作流,应扩展本文件并在 PR 中同步讨论。 
+
+## 构建/ lint/ 测试
+- 常用命令:
+  - 构建: `npm run build` / `pnpm build` / `yarn build`
+  - 静态检查: `npm run lint` / `pnpm lint` / `yarn lint`
+  - 单元测试: `npm test` 或 `npm run test`,可用 `-t` 指定测试名称
+  - 集成测试: `npm run test:integration`(若存在)
+  - 生成报告: `npm run build -- --report`
+- 单个测试定位与执行
+  - 按关键字定位:`npm test -- -t "<testName>"`
+  - 指定文件:`npx vitest run path/to/file.test.ts -t "<testName>"`,Jest: `npm test -- path/to/file.test.ts -t "<testName>"`
+  - PNPM/Yarn 资源:`pnpm test -- -t "<testName>"` / `yarn test -- -t "<testName>"`
+  - Vitest 的完整 CLI:`npx vitest run -t "<testName>"` 或 `npx vitest run path/to/file.test.ts`
+- 运行快速片段测试
+  - 通过关键字快速定位:`npm test -- -t "keyword"`
+- 持续集成与日志
+  - CI 应锚定一次完整测试:测试完成后再进行打包与部署
+  - 日志输出应明确包含:时间戳、测试名称、通过/失败、覆盖率(如有)
+- 提交与钩子
+  - 本地执行前请确保已安装依赖,`node_modules` 不应缺失
+  - 使用 lint/test 流程,确保提交前通过静态检查与测试
+
+## 代码风格指南
+- 导入与模块组织
+  - 外部依赖放在顶部,内部/本地导入放在后
+  - 使用路径别名时,优先正式路径,避免跨根引用
+  - 未使用的导入应清理,静态分析应通过
+  - 使用 `import type` 显式标注类型导入以减少运行时开销
+- 格式化与排版
+  - 统一使用 2 空格缩进
+  - 语句结尾使用分号,除非项目规定不使用
+  - 行宽约 80-120 字符,超出时换行
+  - 尾随逗号可在导入/对象字面量中使用,便于 diff
+- TypeScript 类型
+  - 首选 interface,联合类型使用判别性联合
+  - 使用 readonly 保护不可变数据
+  - 避免 any;若必要,尽量用 unknown,逐步收窄
+  - 函数参数与返回值提供明确的类型签名
+- 命名与风格
+  - 变量与函数采用 camelCase
+  - 类型/类使用 PascalCase,常量使用 UPPER_SNAKE
+  - 避免无意义缩写,含义清晰
+- 错误处理
+  - 不吞错,抛出有意义的错误信息
+  - 自定义错误类型,提供上下文
+  - 保留原始堆栈便于调试
+  - catch 中避免抛出模糊错误
+- 异常与边界
+  - 输入要严格校验,错误信息要具备帮助性
+  - 未覆盖的分支显式抛出未实现错误
+- 日志与追踪
+  - 生产环境应统一日志组件,避免裸 console.log
+  - 日志包含时间戳、级别、信息、上下文
+- 测试友好性
+  - 测试应可重复、可预测,避免随机性
+  - 覆盖边界的测试用例命名应描述性
+  - fixtures 放在 test/fixtures,测试后清理
+- 依赖与版本
+  - 锁定版本,避免不可预测更新
+  - 使用 lock 文件管理依赖
+- 代码审查与提交
+  - 提交前本地执行 lint/test,确保通过
+  - 提交信息遵循一致的风格,可通过 Conventional Commits 风格
+  - 合并冲突后给出清晰的上下文注释
+- 结构与可维护性
+  - 遵循单一职责原则,模块职责清晰
+  - 设计对扩展友好,遵循开闭原则
+  - 重要逻辑应有文档注释
+- 安全性
+  - 不将敏感信息提交到仓库
+  - 使用环境变量来管理机密
+- 性能意识
+  - 延迟加载、按需初始化
+  - 缓存可重复计算结果
+  - 避免在渲染周期执行昂贵计算
+- 兼容性
+  - 兼容主流运行环境,必要时使用 polyfill
+- 可访问性
+  - 考虑无障碍与测试性
+- 组合与模块化
+  - 目录结构应清晰,循环依赖最小化
+  - 模块通过接口通信,隐藏实现细节
+- 注释与文档
+  - 关键逻辑提供 JSDoc / TSDoc
+  - 重要行为描述清晰,避免歧义
+- 测试约定
+  - 测试名称具描述性,覆盖边界
+  - fixtures 放 test/fixtures
+  - 使用 setup/teardown 钩子清理环境
+- 运行环境与依赖
+  - 锁定版本,使用 lock 文件
+  - 构建/测试所需的依赖要在 package.json 中明确
+- 代码审查与协作
+  - 提交前本地运行 lint/test,确保通过
+  - 处理冲突时提供可追踪的复核信息
+
+## 项目结构与约定
+- 代码分层
+  - api/ 数据接入接口
+  - store/ 全局状态管理
+  - components/ 可复用 UI 组件
+  - hooks/ 自定义 Hook
+  - views/ 业务页面
+  - plugins/ 插件封装
+  - types/ 公共类型定义
+- 命名约定
+  - 文件/目录使用小写+连字符命名
+  - 变量、函数遵循 camelCase
+  - 类型/类遵循 PascalCase
+- 导出与导入
+  - 默认导出尽量少,命名导出优先
+  - 按功能模块导出,避免跨模块耦合
+- 测试结构
+  - 单元测试靠近实现、集成测试覆盖路由/接口
+  - 端到端测试放在 test/e2e
+
+## Cursor 规则
+- 如存在 Cursor 规则,请放在 .cursor/rules/,并在此处合并引用
+- 当前仓库未发现实际 Cursor 规则文件,将在发现后集成
+
+## Copilot 规则
+- 如存在 Copilot 规则,请放在 .github/copilot-instructions.md,合并引用
+- 当前仓库未发现 Copilot 指令文件,将在发现后集成
+
+## 质量信号与改进计划
+- 发现的常见信号:console/log 调试信息、TODO/FIXME、any 的使用、@ts-ignore、未使用变量
+- 针对这些信号,提出逐步改进计划(以 PR 形式提出)
+- 成功落地后标记该任务为已完成,更新计划
+
+## 维护与更新
+- 定期回顾 AGENTS.md 的适用性
+- 新工具/新框架出现时,更新本文件的版本兼容性条款
+- 提交变更时附带简短的变更说明,方便团队理解

+ 15 - 0
grep.exe.stackdump

@@ -0,0 +1,15 @@
+Stack trace:
+Frame        Function    Args
+000FFFFBD00  00210062F57 (000FFFFBF08, 00000000002, 00000000002, 000FFFFDE50)
+00000000000  00210065045 (000FFFFC6B0, 00000000000, 000000001A8, 00000000000)
+000FFFFC410  0021013AB68 (00000000000, 00000000000, 00000000000, 00000000000)
+000000000C1  0021013619B (00000000000, 00000000000, 00000000000, 00000000000)
+000FFFFC7D8  002101365A5 (000000001A4, 00800000488, 000000000B5, 000000000B5)
+000FFFFC7D8  0021021D708 (00200000000, 00000000000, 00000000000, 000000015E8)
+000FFFFC7D8  0010042A1E5 (000FFFFCC20, 00000000001, 002101CA624, 00800000488)
+000FFFFCB10  00100404B7C (0000000001D, 0021032F000, 0021023A000, 00000000000)
+000FFFFCB10  00100429678 (00000000000, 000FFFFCD30, 00210371AC0, 000FFFFCDF0)
+000FFFFCD30  00210049B91 (00000000000, 00000000000, 00000000000, 00000000000)
+000FFFFFFF0  00210047716 (00000000000, 00000000000, 00000000000, 00000000000)
+000FFFFFFF0  002100477C4 (00000000000, 00000000000, 00000000000, 00000000000)
+End of stack trace

+ 0 - 37
src/api/mall/market/banner/index.ts

@@ -1,37 +0,0 @@
-import request from '@/config/axios'
-
-export interface BannerVO {
-  id: number
-  title: string
-  picUrl: string
-  status: number
-  url: string
-  position: number
-  sort: number
-  memo: string
-}
-
-// 查询Banner管理列表
-export const getBannerPage = async (params) => {
-  return await request.get({ url: `/promotion/banner/page`, params })
-}
-
-// 查询Banner管理详情
-export const getBanner = async (id: number) => {
-  return await request.get({ url: `/promotion/banner/get?id=` + id })
-}
-
-// 新增Banner管理
-export const createBanner = async (data: BannerVO) => {
-  return await request.post({ url: `/promotion/banner/create`, data })
-}
-
-// 修改Banner管理
-export const updateBanner = async (data: BannerVO) => {
-  return await request.put({ url: `/promotion/banner/update`, data })
-}
-
-// 删除Banner管理
-export const deleteBanner = async (id: number) => {
-  return await request.delete({ url: `/promotion/banner/delete?id=` + id })
-}

+ 0 - 61
src/api/mall/product/brand.ts

@@ -1,61 +0,0 @@
-import request from '@/config/axios'
-
-/**
- * 商品品牌
- */
-export interface BrandVO {
-  /**
-   * 品牌编号
-   */
-  id?: number
-  /**
-   * 品牌名称
-   */
-  name: string
-  /**
-   * 品牌图片
-   */
-  picUrl: string
-  /**
-   * 品牌排序
-   */
-  sort?: number
-  /**
-   * 品牌描述
-   */
-  description?: string
-  /**
-   * 开启状态
-   */
-  status: number
-}
-
-// 创建商品品牌
-export const createBrand = (data: BrandVO) => {
-  return request.post({ url: '/product/brand/create', data })
-}
-
-// 更新商品品牌
-export const updateBrand = (data: BrandVO) => {
-  return request.put({ url: '/product/brand/update', data })
-}
-
-// 删除商品品牌
-export const deleteBrand = (id: number) => {
-  return request.delete({ url: `/product/brand/delete?id=${id}` })
-}
-
-// 获得商品品牌
-export const getBrand = (id: number) => {
-  return request.get({ url: `/product/brand/get?id=${id}` })
-}
-
-// 获得商品品牌列表
-export const getBrandParam = (params: PageParam) => {
-  return request.get({ url: '/product/brand/page', params })
-}
-
-// 获得商品品牌精简信息列表
-export const getSimpleBrandList = () => {
-  return request.get({ url: '/product/brand/list-all-simple' })
-}

+ 0 - 56
src/api/mall/product/category.ts

@@ -1,56 +0,0 @@
-import request from '@/config/axios'
-
-/**
- * 产品分类
- */
-export interface CategoryVO {
-  /**
-   * 分类编号
-   */
-  id?: number
-  /**
-   * 父分类编号
-   */
-  parentId?: number
-  /**
-   * 分类名称
-   */
-  name: string
-  /**
-   * 移动端分类图
-   */
-  picUrl: string
-  /**
-   * 分类排序
-   */
-  sort: number
-  /**
-   * 开启状态
-   */
-  status: number
-}
-
-// 创建商品分类
-export const createCategory = (data: CategoryVO) => {
-  return request.post({ url: '/product/category/create', data })
-}
-
-// 更新商品分类
-export const updateCategory = (data: CategoryVO) => {
-  return request.put({ url: '/product/category/update', data })
-}
-
-// 删除商品分类
-export const deleteCategory = (id: number) => {
-  return request.delete({ url: `/product/category/delete?id=${id}` })
-}
-
-// 获得商品分类
-export const getCategory = (id: number) => {
-  return request.get({ url: `/product/category/get?id=${id}` })
-}
-
-// 获得商品分类列表
-export const getCategoryList = (params: any) => {
-  return request.get({ url: '/product/category/list', params })
-}

+ 0 - 49
src/api/mall/product/comment.ts

@@ -1,49 +0,0 @@
-import request from '@/config/axios'
-
-export interface CommentVO {
-  id: number
-  userId: number
-  userNickname: string
-  userAvatar: string
-  anonymous: boolean
-  orderId: number
-  orderItemId: number
-  spuId: number
-  spuName: string
-  skuId: number
-  visible: boolean
-  scores: number
-  descriptionScores: number
-  benefitScores: number
-  content: string
-  picUrls: string
-  replyStatus: boolean
-  replyUserId: number
-  replyContent: string
-  replyTime: Date
-}
-
-// 查询商品评论列表
-export const getCommentPage = async (params) => {
-  return await request.get({ url: `/product/comment/page`, params })
-}
-
-// 查询商品评论详情
-export const getComment = async (id: number) => {
-  return await request.get({ url: `/product/comment/get?id=` + id })
-}
-
-// 添加自评
-export const createComment = async (data: CommentVO) => {
-  return await request.post({ url: `/product/comment/create`, data })
-}
-
-// 显示 / 隐藏评论
-export const updateCommentVisible = async (data: any) => {
-  return await request.put({ url: `/product/comment/update-visible`, data })
-}
-
-// 商家回复
-export const replyComment = async (data: any) => {
-  return await request.put({ url: `/product/comment/reply`, data })
-}

+ 0 - 12
src/api/mall/product/favorite.ts

@@ -1,12 +0,0 @@
-import request from '@/config/axios'
-
-export interface Favorite {
-  id?: number
-  userId?: string // 用户编号
-  spuId?: number | null // 商品 SPU 编号
-}
-
-// 获得 ProductFavorite 列表
-export const getFavoritePage = (params: PageParam) => {
-  return request.get({ url: '/product/favorite/page', params })
-}

+ 0 - 0
src/api/mall/product/history.ts


برخی فایل ها در این مقایسه diff نمایش داده نمی شوند زیرا تعداد فایل ها بسیار زیاد است