获取商品数据-分页

This commit is contained in:
2023-08-07 17:32:04 +08:00
parent 397db7dfa1
commit 00937e9154
5 changed files with 107 additions and 1 deletions
+33
View File
@@ -159,6 +159,39 @@ class Product extends Model
return $data;
}
/**
* 获取列表-分页
* @param array $params 条件
* @param string $keyword 搜索条件
* @param array $fields 字段
* @param int|null $page 页码
* @param int|null $per_page 每页个数
* @return array
*/
public static function getWithAmountPage(array $params,string $keyword, array $fields = ["*"], int $page = null, ?int $per_page = 10): array
{
$raw = self::with([
'ProductPlatformAmount:amount_id,product_platform_id,stock'
])
->when($keyword, function ($query, $keyword) {
$query->where(function ($query) use ($keyword) {
$query->orwhere("product_name", 'like', '%' . $keyword . '%');
$query->orwhere("common_name", 'like', '%' . $keyword . '%');
$query->orwhere("mnemonic_code", 'like', '%' . $keyword . '%');
});
})
->where($params)->paginate($per_page, $fields, "page", $page);
$data = array();
$data['current_page'] = $raw->currentPage();// 当前页码
$data['total'] = $raw->total();//数据总数
$data['data'] = $raw->items();//数据
$data['per_page'] = $raw->perPage();//每页个数
$data['last_page'] = $raw->lastPage();//最后一页
return $data;
}
/**
* 新增
* @param array $data