Files
guilixu-admin/.workbuddy/memory/MEMORY.md
T
gxwebsoft 3bc856fc95 feat(shopGoods): 优化商品列表加载及封面图性能
- image.ts 中 getCompressedImageUrl 增加缓存,避免列表重渲染时重复计算压缩 URL
- shopGoods 页面用原生 img 标签替换 antdv a-image,支持浏览器懒加载减少首屏网络压力
- shopGoods 页面数据加载流程优化,取消表格自动首屏加载,改为手动触发,合并请求避免重复调用
- 首屏分类数据延迟加载,不阻塞首屏渲染,提升页面响应速度
- search.vue 中用 onMounted 替代 watch immediate,防止首次入场重复触发请求
- 新增商品封面图样式,保证图片大小固定且样式统一
2026-08-06 17:19:15 +08:00

3.1 KiB
Raw Blame History

项目长期记忆

项目结构

关键项目路径

  • 管理后台/Users/gxwebsoft/VUE/guilixu-adminVue3 + Ant Design Vue
  • 用户端小程序/Users/gxwebsoft/VUE/guilixu-taroTaro + React
  • 商家端小程序/Users/gxwebsoft/VUE/xinlong-shop-taroTaro + React

⚠️ 跨项目教训(重要)

  • 商家端发货/门店/订单相关功能在 xinlong-shop-taro,不要改到 guilixu-taro
  • 用户端订单详情等功能在 guilixu-taro
  • 跨项目改动前,先用 grep/glob 在多个候选项目里确认"哪个项目有该功能源码",再动手
  • 已发生两次误改 guilixu-taro 的教训(useClerk 全局上下文、订单详情 deliveryType 修复)

业务约定

deliveryType 配送方式枚举

  • 0 = 快递配送
  • 1 = 无需发货 / 自提
  • 2 = 商家送货

来源:管理后台 src/views/shop/shopOrder/components/deliveryModal.vue

Java 后端架构(重要)

双后端 / MODULES_API_URL 模式(2026-07-25 分析结论)

  • mp-java/Users/gxwebsoft/JAVA/mp-java)= 独立的「modules 服务」,用 modules 库;cms(235类)、shop 等业务模块都在它这里,持续高频开发。
  • guilixu-java/Users/gxwebsoft/JAVA/guilixu-java= 桂礼序主后端,用 db_guilixu 库;是 mp-java 的「子集分叉」。
  • guilixu-admin 前端已预设双基地址SERVER_API_URL(主后端) + MODULES_API_URL(localStorage ApiUrl / VITE_API_URL)。shop 商户/优惠券、cms 全部接口都已走 MODULES_API_URL,即前端本就假定 cms/shop 由 mp-java(modules 服务)提供。
  • 结论(仅限 cms 模块):guilixu-java 里的 cms 包(152类)是 mp-java cms 的旧分叉子集、且前端并不调它(前端调 modules 服务),属重复/死代码,应删除而非复制或扩展。
  • 复制「整个 cms 到 guilixu-java」不可行:mp-java 完整 cms 的 CmsApp/CmsWebsiteService 依赖 project 模块(guilixu-java 没有),会编译失败。
  • 注意:mp-java 与 guilixu-java 是独立 git 仓库(git.websoft.top/gxwebsoft/mp-java.gitguilixu-java.git),各自独立部署、独立库。

⚠️ 双后端改动同步规则(2026-08-05 修正)

  • cms 模块改动:仅 mp-javaguilixu-java 的 cms 是死代码)。
  • shop 等共享业务模块(如 ShopGoodsController / Service / Mapper / task):mp-java 与 guilixu-java 都有活代码且结构一致(同 com.gxwebsoft.shop 包),用户确认改动要两端同步(例:2026-08-05 shopGoods /data 统计优化,两端各改 6 处)。
  • 改动前先 grep 两端确认文件是否存在,避免只改一处导致另一端行为不一致。

shopGoods status 字段(上架/下架)

  • 0 = 已上架 / 上架
  • 1 = 待上架 / 下架
  • 2 = 待审核,3 = 审核不通过
  • 编辑表单「状态」radio 绑定 form.status0=上架、1=下架。
  • 一键上下架、批量上下架均通过 updateShopGoods({ ...record, status }) 直接改 status 实现(不额外用 isShow 字段)。
  • 列表 tag 仍显示:0=已上架、1=待上架、2=待审核、3=审核不通过。