userId]; if (isset($this->params['type']) && $this->params['type'] != '') { $where[] = ['order_status', '=', $this->params['type']]; } return $where; } /** * @notes 积分商品列表 * @return array * @throws \think\db\exception\DataNotFoundException * @throws \think\db\exception\DbException * @throws \think\db\exception\ModelNotFoundException * @author 段誉 * @date 2022/3/31 9:40 */ public function lists(): array { $field = [ 'id', 'sn', 'order_status', 'pay_status', 'express_status', 'express_price', 'delivery_way', 'order_amount', 'total_num', 'order_integral', 'goods_snap', 'create_time', 'refund_status', 'pay_way' ]; $lists = IntegralOrder::where($this->setSearch()) ->field($field) ->limit($this->limitOffset, $this->limitLength) ->order('id desc') ->append(['btns', 'order_status_desc']) ->select()->toArray(); foreach ($lists as &$item) { $goods = $item['goods_snap']; $item['goods'] = [ 'image' => FileService::getFileUrl($goods['image']), 'name' => $goods['name'], 'need_integral' => $goods['need_integral'], 'need_money' => $goods['need_money'], 'exchange_way' => $goods['exchange_way'], ]; unset($item['goods_snap']); } return $lists; } /** * @notes 积分商品数量 * @return int * @author 段誉 * @date 2022/3/31 9:40 */ public function count(): int { return IntegralOrder::where($this->setSearch())->count(); } }