init: 项目初始代码
This commit is contained in:
133
app/api/model/GoodsCategory.php
Normal file
133
app/api/model/GoodsCategory.php
Normal file
@@ -0,0 +1,133 @@
|
||||
<?php
|
||||
declare(strict_types=1);
|
||||
namespace app\api\model;
|
||||
|
||||
/**
|
||||
* 商品分类
|
||||
* @mixin \think\Model
|
||||
*/
|
||||
class GoodsCategory extends BaseModel
|
||||
{
|
||||
protected $schema = [
|
||||
'id' =>'int',
|
||||
'platform_id' =>'int',
|
||||
'language_id' =>'int',
|
||||
'site_id' =>'int',
|
||||
'name' =>'int',
|
||||
'desc' =>'int',
|
||||
'pid' =>'int',
|
||||
'icon' =>'int',
|
||||
'sort' =>'int',
|
||||
'status' =>'int',
|
||||
'create_time' =>'int',
|
||||
'update_time' =>'int',
|
||||
];
|
||||
|
||||
/**
|
||||
* 分类 商品数据
|
||||
* @return array
|
||||
* @throws \think\db\exception\DataNotFoundException
|
||||
* @throws \think\db\exception\DbException
|
||||
* @throws \think\db\exception\ModelNotFoundException
|
||||
*/
|
||||
public function getGategoryListData($data)
|
||||
{
|
||||
return (new Goods())->where(['goods_category_id'=>$data['goods_category_id'],'status'=>0])->select()->toArray();
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 分类 商品明细数据
|
||||
* @return array
|
||||
* @throws \think\db\exception\DataNotFoundException
|
||||
* @throws \think\db\exception\DbException
|
||||
* @throws \think\db\exception\ModelNotFoundException
|
||||
*/
|
||||
public function getGategoryListDataInfo($data)
|
||||
{
|
||||
if (isset($data['id']) && $data['id'] != 0) {
|
||||
$result = GoodsConnect::where('goods_id',$data['id'])->find();
|
||||
return $result ? $result->toArray() : [] ;
|
||||
}
|
||||
return [];
|
||||
}
|
||||
|
||||
/**
|
||||
* 启用禁用
|
||||
* @param $data
|
||||
* @param bool $type
|
||||
* @return bool
|
||||
* @throws \think\db\exception\DataNotFoundException
|
||||
* @throws \think\db\exception\DbException
|
||||
* @throws \think\db\exception\ModelNotFoundException
|
||||
*/
|
||||
public function changeStatus($data,bool $type = false):bool
|
||||
{
|
||||
if (!$type) {
|
||||
$result = $this->find($data['id']);
|
||||
//正常更新
|
||||
if ($result) {
|
||||
return $result->save($data);
|
||||
}
|
||||
} else {
|
||||
$ret = $this->saveAll($data);
|
||||
return (bool) $ret;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 获取详情
|
||||
* @param array $data
|
||||
* @return array
|
||||
* @throws \think\db\exception\DataNotFoundException
|
||||
* @throws \think\db\exception\DbException
|
||||
* @throws \think\db\exception\ModelNotFoundException
|
||||
*/
|
||||
public function getInfo(array $data):array
|
||||
{
|
||||
$allCategory = $this->select()->toArray();
|
||||
$result = $this->find($data['id']);
|
||||
$newPid = [];
|
||||
if (!empty($allCategory)) {
|
||||
if ($result['pid'] != 0) {
|
||||
$newPid = category_to_all_pid($allCategory,$result['pid']);
|
||||
} else {
|
||||
$newPid = [0];
|
||||
}
|
||||
}
|
||||
$result['pid'] = $newPid;
|
||||
return $result->toArray();
|
||||
}
|
||||
|
||||
/**
|
||||
* 查找所有子项
|
||||
* @param $data
|
||||
* @return array
|
||||
* @throws \think\db\exception\DataNotFoundException
|
||||
* @throws \think\db\exception\DbException
|
||||
* @throws \think\db\exception\ModelNotFoundException
|
||||
*/
|
||||
public function getAllSonCategory($data):array
|
||||
{
|
||||
$newData = $this->select()->toArray();
|
||||
if (!empty($newData)) {
|
||||
return category_to_all_children_id($newData,$data['id']);
|
||||
}
|
||||
return [];
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询当前分类下是否在商品
|
||||
* @param $data
|
||||
* @return array|\think\Model|null
|
||||
* @throws \think\db\exception\DataNotFoundException
|
||||
* @throws \think\db\exception\DbException
|
||||
* @throws \think\db\exception\ModelNotFoundException
|
||||
*/
|
||||
public function hasGoodsOnCategory($data)
|
||||
{
|
||||
return Goods::where('goods_category_id',$data['id'])->find();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user