比如设置商品库存为2000
![](https://box.kancloud.cn/999011f1a1000660978183d9b028961e_793x267.png)
但在商品列表还是显示为售罄
![](https://box.kancloud.cn/b4c4ff52d44cb781f55a5d10a889b15f_1068x366.png)
这就是你的weiphp在安装过程中增加触发器失败导致。在商城中有三个库存量:可用库存,物理库存,锁定库存,它们的关系是:
可用库存 = 物理库存 - 锁定库存
锁定库存是指用户下单时锁定一个商品,如果30分钟内完成支付那它就转销售量,否则它就要释放回可用库存中,供下一个用户下单。
而是否售罄是由可用库存决定的,它的值由数据库触发器来更新,因此如果触发器有问题,它就有问题。
解决方案:手工增加触发器,方法是在数据库中执行以下SQL语句:
```
DROP TRIGGER IF EXISTS `add`;
delimiter ;;
CREATE TRIGGER `add` BEFORE INSERT ON `wp_shop_goods_stock` FOR EACH ROW set new.stock_active = new.stock - new.lock_count
;;
delimiter ;
DROP TRIGGER IF EXISTS `save`;
delimiter ;;
CREATE TRIGGER `save` BEFORE UPDATE ON `wp_shop_goods_stock` FOR EACH ROW set new.stock_active = new.stock - new.lock_count
;;
delimiter ;
```
- 序言
- 安装
- composer安装
- git安装
- 下载源码安装
- 初始化数据库
- 增加定时任务
- 问题反馈
- 快速入门
- 系统框架图
- 系统功能清单
- 目录结构
- 数据库字典
- 插件开发
- 插件介绍
- 插件管理
- 创建插件
- 插件库
- 免费插件安装
- 付费插件安装
- 插件部署安装
- 数据模型
- 模型介绍
- 创建模型
- 模型管理
- 菜单配置
- 菜单介绍
- 增加菜单
- 公众号开发
- 公众号配置
- 快递接口配置
- 小程序开发
- 案例说明
- 小程序配置
- 自动获取用户信息
- 短信验证码
- 上传图片
- 生成小程序事件二维码
- 小程序支付
- 微信平台支付配置
- 小程序微信支付配置
- 小程序调用支付功能
- 异步接收支付结果
- 模板消息
- 消息模板配置
- 支付后发模板消息
- 提交表单后发模板消息
- 客服
- mpvue开发
- 项目打包
- 插件安装编译
- 部署
- Liunx服务器部署
- Window集成包部署
- 常见问题
- 上传图片失败
- PATHINFO配置
- 该公众号提供的服务出现故障
- 调试工具postman安装
- 商城商品有库存但显示已售罄