// +---------------------------------------------------------------------- declare (strict_types=1); namespace app\common\model; use cores\BaseModel; use app\common\model\Goods; /** * 商品与分类关系模型 * Class GoodsCategoryRel * @package app\common\model */ class GoodsCategoryRel extends BaseModel { // 定义表名 protected $name = 'goods_category_rel'; // 定义主键 protected $pk = 'id'; protected $updateTime = false; /** * 批量写入商品分类记录 * @param int $goodsId 商品ID * @param array $categoryIds 分类ID集 * @param int|null $storeId 商城ID * @return array|false */ public static function increased(int $goodsId, array $categoryIds, int $storeId = null) { $dataset = []; foreach ($categoryIds as $categoryId) { $dataset[] = [ 'category_id' => $categoryId ?? 0, 'goods_id' => $goodsId, 'store_id' => $storeId ?: self::$storeId ]; } return (new static)->addAll($dataset); } public static function getcategory(int $storeId = null,int $merchantId = null) { $where = [ 'b.store_id' => $storeId, ]; if (!empty($merchantId)) { $where['a.merchant_id'] = $merchantId; } $list = Goods::alias('a') ->rightjoin('goods_category_rel b', 'a.goods_id = b.goods_id') ->where($where)->group('category_id') ->select(); return $list; } }