|
|
2abd7e3372
|
fix(shop): 修正订阅流程及产品价格单位处理
- 后端 generatePayQrcode 价格计算改为 price/100 转元,年付按 10 个月计价
- 前端 dashboard 订阅价格同步调整,保持与后端一致的单位换算
- 解决 generatePayQrcode price_type 参数无生效导致的报错问题
- confirmSubscribe 改用 subscribe + pay 两步流程,规避后端未重启的问题
- 移除 confirmSubscribe 中的 isFreeProduct 分支,改用订阅状态判断
- 订阅信息加载策略调整,固定使用 productId=65 查询产品详情
- 保证前端代码通过 vue-tsc 校验,未引入新 TS 错误
|
2026-07-15 14:27:47 +08:00 |
|
|
|
09af76e4ea
|
fix(subscription): 修复价格单位错误导致金额多100倍问题
- 确认 product.price 实际单位为分,修正所有价格计算需除以100转为元
- 后端 generatePayQrcode 方法价格计算改为 price/100,年付按10个月计费,季度付按3个月计费
- 前端 dashboard/index.vue 月付价格除以100,年付价格按月付价乘以10计算,保持与后端一致
- 保持 subscribe 价格计算逻辑,避免价格单位不一致的错误
- 修复后价格显示和支付逻辑统一,解决用户反馈金额偏大问题
|
2026-07-15 14:12:54 +08:00 |
|
|
|
29a18ffbc6
|
feat(appSubscription): 实现Dashboard订阅到期显示及扫码支付功能
- dashboard订阅到期时间信息支持三态渲染:激活显示剩余天数和已激活标签、待支付显示金额及去支付按钮、无订阅显示立即订阅按钮
- 通过租户ID查询应用产品,实现按租户过滤的订阅展示逻辑
- 新增appProduct分页接口及类型定义,提供应用列表获取能力
- 实现「立即订阅」流程,支持免费应用直接激活,付费应用生成微信扫码支付二维码及轮询订单状态
- 实现待支付订阅复用支付接口生成支付二维码,避免重复创建订阅
- 小程序端扫码支付流程支持订单号查询及支付确认,后端使用Redis标记支付成功状态
- 修复后端generatePayQrcode接口缺少priceType字段导致的数据库报错,前端兼容现有逻辑无需修改
- 移除dashboard中siteInfo旧的expirationTime字段相关代码,改为读订阅expireTime
- 新增订阅及支付相关样式,优化界面体验
- 支付状态轮询实现超时提示及自动停止机制,提升用户支付体验
- 组件卸载时确保支付轮询停止,避免内存泄漏
- 独立加载订阅信息,不影响其他数据请求,避免页面加载失败影响订阅展示
|
2026-07-15 14:11:14 +08:00 |
|
|
|
e0d27f67d5
|
feat(shopOrder): 新增确认线下收款上传支付凭证功能
- 重构确认线下收款为独立组件 OfflinePaymentModal.vue
- 新增支付凭证字段 paymentVoucher,支持图片上传与预览
- 上传限制为 jpg/png 格式,单张图片最大 10MB
- API confirmOfflinePayment 新增 paymentVoucher 参数
- 页面移除原 Modal.confirm 逻辑,改为调用新组件弹窗
- 修复 buyerRemarks 和 merchantRemarks 类型错误
- 后端 shop_order 表待新增 payment_voucher 字段和接口支持
- 同步更新相关接口模型与视图交互逻辑
feat(shopGoodsBrowse): 新增用户商品浏览记录管理功能
- 新增 ShopGoodsBrowse 接口模型及分页查询、删除接口
- 前端新增浏览记录管理页面,实现列表展示和删除
- 支持基于用户ID、商品ID、浏览来源和日期范围搜索
- 列表显示商品图片、名称、价格、浏览次数及时间等信息
- 添加图片预览和操作确认弹窗,保障操作体验和安全
|
2026-07-15 13:37:27 +08:00 |
|
|
|
a59d428e78
|
feat(shopOrder): 新增确认线下收款上传支付凭证功能
- 重构确认线下收款为独立组件 OfflinePaymentModal.vue
- 新增支付凭证字段 paymentVoucher,支持图片上传与预览
- 上传限制为 jpg/png 格式,单张图片最大 10MB
- API confirmOfflinePayment 新增 paymentVoucher 参数
- 页面移除原 Modal.confirm 逻辑,改为调用新组件弹窗
- 修复 buyerRemarks 和 merchantRemarks 类型错误
- 后端 shop_order 表待新增 payment_voucher 字段和接口支持
- 同步更新相关接口模型与视图交互逻辑
feat(shopGoodsBrowse): 新增用户商品浏览记录管理功能
- 新增 ShopGoodsBrowse 接口模型及分页查询、删除接口
- 前端新增浏览记录管理页面,实现列表展示和删除
- 支持基于用户ID、商品ID、浏览来源和日期范围搜索
- 列表显示商品图片、名称、价格、浏览次数及时间等信息
- 添加图片预览和操作确认弹窗,保障操作体验和安全
|
2026-07-15 13:30:14 +08:00 |
|
|
|
9e65007e65
|
feat(appSubscription): 新增应用订阅模块及商城欢迎横幅Logo支持
- 新增 useAppSubscriptionStore,封装 websopy 特殊接口的应用订阅功能
- 实现订阅列表分页查询、详情获取、支付状态查询、订阅管理等接口调用
- 适配不同支付方式,支持余额支付、微信支付及小程序支付预支付流程
- 在商城 Dashboard 欢迎横幅左侧新增商城 Logo 显示,读取商城设置的 shopLogo 字段
- 使用图像压缩接口处理 Logo 大小和质量,优化加载体验
- 优化 Dashboard 待处理事项展示,恢复退款和优惠券使用项
- 统一订阅接口调用地址为独立域名,复用请求工具共享认证和错误处理
|
2026-07-15 12:49:05 +08:00 |
|
|
|
e2dd8dbc18
|
feat(cms): 更新系统名称并优化租户信息获取逻辑
- 将系统名称由“小程序开发”修改为“小程序商城”
- 修改多处组件中系统名称的引用,统一使用系统信息对象
- 调整快捷入口路由,更新优惠券和会员管理的跳转路径
- 使用 tenantStore 替代原有的接口调用,统一获取租户公司信息
- 优化租户创建时间的计算方式,直接从 store 获取数据
- 移除不再使用的 getTenantInfo 方法,改为通过 pinia 状态管理获取
- 调整部分模板数据绑定,修正创建时间显示逻辑
|
2026-07-15 12:04:34 +08:00 |
|
|
|
b0ff82599a
|
feat(shop): 新增Dashboard待付款订单统计及支持
- Dashboard待处理事项新增“待付款订单”项,使用statusFilter=0查询
- 点击待付款订单跳转至/shop/shopOrder?tab=unpaid页面
- shopOrder页面恢复“待付款”标签页,validTabs列表包含unpaid
- shopOrder页面根据路由query初始化活动标签,支持unpaid选项
- 新增dot-gold样式用于待付款订单高亮显示
- 订单数量接口新增待付款订单数获取及异常处理逻辑
- 调整组件中待处理事项列表,支持待付款订单数据响应式更新
|
2026-07-15 03:46:23 +08:00 |
|
|
|
57b584df1b
|
feat(shop): 支持Dashboard订单总数点击跳转指定tab
- 修改Dashboard中订单总数和总营业额跳转链接,默认携带tab参数
- 订单总数点击跳转至/shop/shopOrder?tab=all页面
- 待发货订单跳转至/shop/shopOrder?tab=undelivered,退款申请跳转至?tab=refunded
- shopOrder页面根据路由查询参数初始化激活tab,确保页面首次加载可正确显示对应订单列表
- 为无效或缺省tab参数设置默认值undelivered
- 简化订单页面tab切换逻辑复用公共状态映射函数
|
2026-07-15 02:35:01 +08:00 |
|
|
|
614e843673
|
fix(shopOrder): 修复初次加载订单状态筛选问题
- 提取 getStatusFilterByTab 函数实现 tab key 与 statusFilter 的映射
- datasource 函数中当 statusFilter 未设置时,自动根据 activeKey 推导赋值
- onTabs 函数简化为复用 getStatusFilterByTab 函数,减少重复代码
- 确保初次加载时待发货等状态的 tab 能正确筛选订单数据
|
2026-07-15 01:29:44 +08:00 |
|
|
|
894592c290
|
feat(shop): 新增线下付款支持及优化Dashboard数据统计
- 新增线下付款(payType=9)支付方式,支持订单中标识和确认收款操作
- 实现商家确认线下付款后订单进入待发货状态功能
- 更新支付方式组件和订单列表及详情页的支付状态显示
- 优化shop/dashboard快捷操作按钮为商城常用功能,修正快速入口路由路径
- 修复Dashboard待发货订单数统计时未过滤商城订单导致数据不准的问题
- 修复Dashboard运行天数为0的异常,将租户信息请求独立处理,避免某些请求失败影响
- 修复statisticsStore中couponUsedCount与getter同名冲突,改名为safeCouponUsedCount并同步更新引用
|
2026-07-14 22:17:39 +08:00 |
|
|
|
5106fe101c
|
feat(shopDashboard): 为 Dashboard 添加新订单声音提醒功能
- 将 useOrderNotify 改造为实例安全的 Composable,支持多个页面独立调用
- 在 shop/dashboard 和 cms/dashboard 页面添加新订单提醒开关和测试按钮
- 新订单提醒触发时自动刷新 Dashboard 数据,提升数据同步性
- 新订单提醒包括叮声和语音播报,用户交互后自动解锁音频播放
- cms/dashboard 概况卡片标题添加提醒控件,shop/dashboard 欢迎横幅右侧添加提醒栏
- 提取 cms/dashboard loadData 函数实现复用,统一数据加载逻辑
- 优化组件状态管理,防止多个实例间状态冲突,提升稳定性和可维护性
|
2026-07-14 20:58:40 +08:00 |
|
|
|
a2640ba7dc
|
feat(shop): 实时修复今日数据及优化商城设置与商品列表展示
- 修复 dashboard 今日数据统计,改为实时计算订单、销售额、用户数与优惠券使用量
- 统计数据写入 cmsStatistics 表,新增 couponUsedCount 状态与 getter
- dashboard 页面移除原有按日期查询逻辑,优惠券使用数改为响应式读取
- 商城设置 Logo 上传改为直接调用 OSS 接口上传,移除图片库选择组件
- 新增商品列表中市场价和会员价列,数据为空时显示 "-"
- 同步更新商品列表导出功能,包含新增的价格列与列宽配置
- 商品列表商品图片添加 OSS 压缩访问支持
- 调整商品分类搜索框与关键词输入框宽度以优化布局
|
2026-07-14 20:27:26 +08:00 |
|
|
|
8918daa6a1
|
feat(shopOrder): 支持订单商品图片OSS压缩及新增支付方式
- 新增utils/image.ts,提供图片URL补全及OSS压缩参数拼接功能
- 订单列表商品图片列改为使用压缩后图片URL,提高加载性能
- shopOrder相关支付类型注释更新,新增银联支付、POS机支付等多种方式
- 更新支付组件及订单信息界面,新增并显示银联支付、POS机支付、免费、积分支付、货到付款等支付标签
- 订单支付状态标签支持区分“已付款”和“待收货付款”状态
- shopOrder数据model中支付类型及代付类型描述同步更新
- 修复shop utils中payType标签获取的边界条件错误
- 注释掉dashboard待办事项中优惠券使用项,暂停显示该统计数据
|
2026-07-14 19:47:17 +08:00 |
|
|
|
ad1a9f9839
|
feat(shopOrder): 订单提醒时同步刷新列表数据
- Dashboard 欢迎横幅标题改为显示当前用户租户名称
- useOrderNotify 新增 onNewOrder 回调参数
- 新订单提醒触发时调用 onNewOrder 回调刷新表格数据
- shopOrder 页面调用 useOrderNotify 时传入刷新回调
- 保证新订单提醒时语音播放与表格数据同步更新
|
2026-07-14 19:36:36 +08:00 |
|
|
|
efef3a811f
|
fix(dashboard): 修复统计数据与待处理事项获取逻辑
- 统一使用 statusFilter 查询待发货和退款/售后订单数,提高接口一致性
- 修正今日订单数统计逻辑,改为使用创建时间范围查询
- 将 dashboard 核心数据状态改为 computed,确保响应式更新
- 在统计模块调用接口时添加分页参数,减少数据传输量
- 优化今日销售额数据来源,使用 cmsStatistics 中的真实数据
- 增加异常捕获日志,提示具体错误信息,提高调试效率
|
2026-07-14 02:55:04 +08:00 |
|
|
|
59678f7ddd
|
fix(shopGoods): 修复编辑弹窗视频裂图问题
- 新增 isVideo() 函数判断视频文件类型
- 编辑弹窗预览区域分支渲染,视频显示 <video> 组件
- 视频预览添加 PlayCircleOutlined 播放图标覆盖层
- 保持图片预览使用原有 <a-image> 组件
- 引入并使用 PlayCircleOutlined 图标组件
|
2026-07-12 22:34:58 +08:00 |
|
|
|
503b921ece
|
feat(system-user): 合并用户信息列并拆分审核状态列表
- 删除用户列表中的头像、手机号和真实姓名列,新增用户信息列,显示头像、姓名和手机号
- 更新用户信息列布局和样式,姓名加粗,手机号显示灰色小字
- 前后端支持按审核状态拆分用户列表与待审列表
- 后端UserParam新增auditPending字段,实现“待审核/被驳回”状态查询
- UserMapper.xml调整查询条件逻辑,支持auditStatus和auditPending条件
- 用户列表固定auditStatus为1,待审列表使用auditPending=true过滤数据
- 待审列表审核按钮显示条件扩展至状态0和2(被驳回)
- 清理用户列表的未使用auditStatus相关代码与绑定
- 前后端均通过类型检查和功能验证,保证改动正确落地
|
2026-07-12 00:56:47 +08:00 |
|
|
|
12375b2fc1
|
feat(user): 优化用户审核功能及新增店名显示
- 在用户模型中新增 storeName 字段以支持店名信息
- 用户列表页增加“店名”列,支持表格内显示及提示完整信息
- 审核弹窗新增单条审核时的关键信息展示,包括店名、姓名及所在地区
- 优化审核弹窗逻辑,批量审核时不展示单条用户信息
- 精简待审核用户专用页,固定只显示审核状态为“待审核”的用户
- 待审核页删除高级筛选功能,仅保留关键字搜索
- 保留待审核页的角色、注册来源、审核状态列展示,满足显示需求
- 调整用户列表页操作项样式,统一使用 a-space 包装,提升界面一致性
|
2026-07-12 00:44:58 +08:00 |
|
|
|
bf259ea8ff
|
feat(system): 实现用户审核功能
- 新增用户模型字段:auditStatus、auditRemark、auditTime
- 添加用户审核接口 auditUser,支持单条审核
- 用户列表页增加审核状态筛选项和对应列展示
- 列表行内仅待审核用户显示“审核”操作链接
- 工具栏添加批量审核按钮,实现批量审核功能
- 审核弹窗支持选择通过或拒绝及填写备注
- 审核提交支持单条和批量调用接口
- 保持代码类型检查无新增错误,符合项目字段命名规范
|
2026-07-11 19:43:24 +08:00 |
|
|
|
dceb030712
|
fix(system-admin): 统一 isAdmin 类型为布尔值
- 修复 admin/index.vue 中 isAdmin 的类型不一致问题
- 修改模板中判断逻辑,将 record.isAdmin == 1 改为 record.isAdmin
- 调整 updateIsAdmin 函数,改为取反布尔值方式赋值
- 使用 vue-tsc --noEmit 验证确认无新增类型错误
- 清理了自引入未使用变量的 TS6133 警告
|
2026-07-11 19:17:27 +08:00 |
|
|
|
05c8f765da
|
refactor(user): 优化用户管理模块提升体验与代码质量
- 删除系统用户管理模块中重复且冗余的 Extra 组件及相关引用
- 修复用户列表数据请求时搜索条件被覆盖的问题,保留默认筛选参数
- 清理未使用的 userType 和 handleTabs 相关代码,减少死代码
- 修改密码重置操作的明文展示方式,改为使用弹窗提示,提升安全性
- 在用户及管理员列表中新增状态列,显示用户状态(正常/冻结)
- 修改表格行点击事件为打开用户详情界面,移除无提示双击编辑操作
- 在用户列表页面新增高级筛选条件(角色、注册来源、类型)
- 添加搜索和重置按钮,绑定高级筛选参数,提高筛选灵活性
|
2026-07-11 19:02:29 +08:00 |
|
|
|
4154260331
|
fix(shop): 修正路由路径和修复弹窗关闭按钮错位
- 将所有 '/shopOrder' 路径修正为 '/shop/shopOrder' 以保持路由一致性
- 将优惠券使用路径从 '/shopGoodsCoupon' 改为 '/market/coupon'
- 修改今日统计数据 salesAmount 类型从字符串改为数字
- 在用户状态管理中添加额外菜单项 '/shop/shopExpressTemplateDetail',仅注册路由不显示侧边栏
- 修复 ant-modal 关闭按钮内部 span 尺寸,解决图标偏移和缩小问题
- 在样式文件末尾添加 .ant-modal-close-x 的宽高和行高样式并加 !important 覆盖默认样式
|
2026-07-09 12:20:19 +08:00 |
|
|
|
ae8cb170dd
|
feat(shop): 完善运费模板配送区域功能
- 模板列表操作列新增“配送区域”跳转链接,调整操作列宽度为200
- 配送区域页根据路由参数设置页面标题并过滤对应模板数据
- 合并省市列为配送地区列,显示具体地区名称
- 移除配送区域页模板ID和计费方式列
- 搜索组件去除模板ID搜索框,保留新增与批量删除
- 编辑表单用级联选择组件替代省市输入,移除所属模板与计费方式字段
- 编辑表单支持配送地区回显及动态标签显示,保存时自动赋值模板ID和计费方式
- 加载地区数据建立ID到名称映射以支持地区展示
|
2026-07-08 19:00:03 +08:00 |
|
|
|
6118e2be01
|
fix(expressTemplate): 修正运费模板计费方式类型及删除报错
- 将运费模板和详情模型中的计费方式 type 从 string 改为 boolean 类型
- 修改相关页面中计费方式显示及选择控件为布尔值 true/false 表示按件/按重量
- 统一删除操作使用后端返回的主键 id 替代废弃的 shopExpressTemplateId
- 修复删除运费模板时报错“参数格式错误: id 的值 'undefined' 无法转换为 Integer”
- ele-modal 关闭按钮定位修复,兼容最大化按钮时的偏移问题
- 小程序端 checkout 运费模板接入,支持动态计算显示运费费用
- 优化编辑表单中首件/续件数量或重量的动态标签和占位提示逻辑
|
2026-07-07 15:03:06 +08:00 |
|
|
|
08685d5ef1
|
refactor(shopExpressTemplate): 优化运费模板及明细功能界面和数据结构
- 规范和补充ShopExpressTemplate及ShopExpressTemplateDetail接口字段注释
- 调整列表列配置,增加字段宽度和排序支持,优化表格显示
- 添加计费方式和状态的标签显示,替换原有文字提示
- 删除批量移动功能相关代码和UI,简化操作流程
- 搜索组件添加清除按钮,支持批量删除操作提升用户体验
- 编辑弹窗宽度调整,表单控件换为数字输入或单选框提升输入准确性
- 编辑弹窗中新增运费模板下拉选择和表单验证,确保数据完整性
- 移除无用变量和注释,清理代码结构,提高维护性
- 优化时间显示为日期格式,界面更友好
|
2026-07-07 14:32:39 +08:00 |
|
|
|
f0b0280c4f
|
feat(shop): 实现新订单声音和语音提醒功能
- 新增 useOrderNotify 组合式函数,支持每60秒轮询检测新订单
- 采用 Web Audio API 播放叮声,Speech Synthesis API 进行语音播报
- shopOrder 页面添加提醒开关栏,包含开关、提示和测试按钮
- 开关默认关闭,需用户点击启用后启动声音和轮询功能
- 测试按钮仅在提醒开启时可用,用于验证提醒效果
- 完善样式,提升提醒栏的视觉效果和交互体验
- 统一更新相关环境变量,调整项目名称和接口地址
|
2026-07-06 12:43:04 +08:00 |
|
|
|
ac574335a9
|
feat(shop): 实现新订单声音和语音提醒功能
- 新增 useOrderNotify 组合式函数,支持每60秒轮询检测新订单
- 采用 Web Audio API 播放叮声,Speech Synthesis API 进行语音播报
- shopOrder 页面添加提醒开关栏,包含开关、提示和测试按钮
- 开关默认关闭,需用户点击启用后启动声音和轮询功能
- 测试按钮仅在提醒开启时可用,用于验证提醒效果
- 完善样式,提升提醒栏的视觉效果和交互体验
- 统一更新相关环境变量,调整项目名称和接口地址
|
2026-07-06 12:41:05 +08:00 |
|