12345678910111213141516171819202122232425262728293031323334353637 |
- <?php
- declare (strict_types = 1);
- namespace app\admin\model;
- use think\Model;
- /**
- * @mixin \think\Model
- */
- class GoodStock extends Model
- {
- protected $createTime="addtime";
- protected $updateTime="updatetime";
-
- public function WsmInfo(){
- return $this->belongsTo(WarehouseInfo::class,"wsm_code","wsm_code")->bind(["wsm_name"=>"name","wsm_supplierNo"=>"supplierNo","wsm_supplierName"=>"supplierName"]);
- }
-
- //组合商品占用 库存 0 库存返回 1 库存占用
- public function stockSub($spuCode,$num,$flag =1){
- $row =$this->withJoin(['wsminfo'],'left')
- ->field('good_stock.id,usable_stock')
- ->where(['spuCode' => $spuCode, 'warehouse_info.wsm_type'=>[2,5]])
- ->findOrEmpty();
- if($row->isEmpty()) throw new \Exception('未找到对应子商品库存信息');
- if($flag==1){
- if($row->usable_stock < $num)throw new \Exception('对应子商品库存数不足');
- $row->usabel_stock = bcsub($row->usabel_stock,$num);
- }else{
- $row->usabel_stock = bcadd($row->usabel_stock,$num);
- }
- $sa=$row->save();
- if($sa==false) throw new \Exception('对应子商品库存更新失败');
- }
- }
|