admin/addon/giftcard/model/CardStock.php

89 lines
2.5 KiB
PHP

<?php
/**
* ThinkShop商城系统 - 团队十年电商经验汇集巨献!
* =========================================================
* Copy right 2019-2029 成都云之牛科技有限公司, 保留所有权利。
* ----------------------------------------------
* 官方网址: https://www.cdcloudshop.com
* =========================================================
*/
namespace addon\giftcard\model;
use app\model\BaseModel;
use think\facade\Db;
/**
* 库存 销量
*/
class CardStock extends BaseModel
{
/**
* 增加库存 减少销量
* @param $param
*/
public function incStock($param)
{
$condition = array (
[ "id", "=", $param[ "card_id" ] ]
);
$num = $param[ "num" ];
$card_info = model("giftcard")->getInfo($condition, "id,card_count,card_name");
if (empty($card_info))
return $this->error(-1, $card_info[ "card_name" ] . "不存在!");
//编辑库存 销量
model("giftcard")->setInc($condition, "card_count", $num);
model("giftcard")->setDec($condition, "sale_num", $num);
return $this->success();
}
/**
* 判断库存
* @param $param
*/
public function checkStock($param)
{
$num = $param[ "num" ];
$condition = array (
[ "id", "=", $param[ "card_id" ] ]
);
$card_info = Db::name("giftcard")->where($condition)->field("id,card_count,card_name")->lock(true)->find();
if (empty($card_info)) {
return $this->error();
}
if ($card_info[ "card_count" ] < $num) {
return $this->error('', $card_info[ "card_name" ] . "库存不足!");
}
return $this->success();
}
/**
* 减少库存
* @param $param
*/
public function decStock($param)
{
$num = $param[ "num" ];
$condition = array (
[ "id", "=", $param[ "card_id" ] ]
);
$card_info = Db::name("giftcard")->where($condition)->field("id,card_count,card_name")->lock(true)->find();
if (empty($card_info)) {
return $this->error();
}
if ($card_info[ "card_count" ] < $num) {
return $this->error('', $card_info[ "card_name" ] . "库存不足!");
}
//编辑库存 销量
model("giftcard")->setDec($condition, "card_count", $num);
model("giftcard")->setInc($condition, "sale_num", $num);
return $this->success();
}
}