mirror of
https://github.com/crmeb/CRMEB.git
synced 2025-12-23 19:32:33 +00:00
62 lines
1.6 KiB
PHP
62 lines
1.6 KiB
PHP
<?php
|
|
|
|
namespace app\models\store;
|
|
|
|
use crmeb\basic\BaseModel;
|
|
use crmeb\traits\ModelTrait;
|
|
|
|
/**
|
|
* 商品规则
|
|
* @mixin think\Model
|
|
*/
|
|
class StoreProductRule extends BaseModel
|
|
{
|
|
/**
|
|
* 模型名称
|
|
* @var string
|
|
*/
|
|
protected $name = 'store_product_rule';
|
|
|
|
use ModelTrait;
|
|
|
|
/**
|
|
* 列表
|
|
* @param $where
|
|
* @return array
|
|
*/
|
|
public static function sysPage($where)
|
|
{
|
|
$model = new self;
|
|
if ($where['rule_name']) $model = $model->where('rule_name', 'LIKE', '%' . $where['rule_name'] . '%');
|
|
$model = $model->order('id desc');
|
|
$count = $model->count();
|
|
$list = $model->page((int)$where['page'], (int)$where['limit'])
|
|
->select()
|
|
->each(function ($item) {
|
|
if ($item['rule_value']) {
|
|
$specs = json_decode($item['rule_value'], true);
|
|
foreach ($specs as $key => $value) {
|
|
$attr_name[] = $value['value'];
|
|
$attr_value[] = implode(',', $value['detail']);
|
|
}
|
|
$item['attr_name'] = implode(',', $attr_name);
|
|
$item['attr_value'] = $attr_value;
|
|
}
|
|
});
|
|
$data = count($list) ? $list->toArray() : [];
|
|
return compact('count', 'data');
|
|
}
|
|
|
|
/**
|
|
* 详情
|
|
* @param $id
|
|
* @return array
|
|
*/
|
|
public static function sysInfo($id)
|
|
{
|
|
$info = self::get($id);
|
|
$info['rule_value'] = json_decode($info['rule_value'], true);
|
|
return $info;
|
|
}
|
|
}
|