params), ['name', 'status', 'goods_type', 'discount']); } /** * @notes 折扣商品列表 * @return array * @author cjhao * @date 2022/5/5 12:09 */ public function lists(): array { $lists = Goods::alias('G') ->leftJoin('discount_goods dg', 'G.id = dg.goods_id') ->withSearch($this->setSearch(), $this->params) ->field('G.id,image,name,type,status,spec_type,min_price,max_price,total_stock,sales_num+virtual_click_num as sales_num,is_discount') ->limit($this->limitOffset, $this->limitLength) ->order('id desc') ->select()->toArray(); foreach ($lists as $key => $goods) { $lists[$key]['status_desc'] = GoodsEnum::getStatusDesc($goods['status']); $lists[$key]['price'] = $goods['min_price']; if ($goods['min_price'] != $goods['max_price']) { $lists[$key]['price'] = $goods['min_price'] . '~' . $goods['max_price']; } if (null == $goods['is_discount']) { $lists[$key]['is_discount'] = 0; } } return $lists; } /** * @notes 折扣商品统计 * @return int * @author cjhao * @date 2022/5/5 12:09 */ public function count(): int { return Goods::alias('G') ->leftJoin('discount_goods dg', 'G.id = dg.goods_id') ->withSearch($this->setSearch(), $this->params) ->count(); } }