request->get(); $res = \Yii::$app->services->validate->validate($get, [ [['group_status'], 'integer'], ]); if ($res === false) return $this->error(\Yii::$app->services->validate->getErrorMessage()); $params['where'] = [ ['=', 'mall_id', $this->mall_id], ['=', 'user_id', $this->user_id], ['=', 'status', StatusEnum::ENABLED], // ['=', 'is_pay', LuckyGroupEnum::IS_PAY_1], ]; if (isset($get['group_status'])&&$get['group_status']!=='') { $params['where'][] = ['=', 'group_status', $get['group_status']]; } $params['select'] = 'id,goods_id,group_status,goods_attr_id,total_pay_price,buy_nums'; $params['order'] = 'created_at desc'; $params['with'] = ['goods', 'goodsAttr']; $params['limit'] = 10; $order_list = LuckyGroupOrder::listPage($params); if (!$order_list) return $this->error(LuckyGroupOrder::getStaticError()); if ($order_list['list']) { foreach ($order_list['list'] as $k => &$v) { $v['group_status_text'] = DefaultModel::getGroupText($this->mall_id, $v['group_status']); } } return $this->success('success', $order_list); } /** * 拼团订单详情 * @Author xiucun * @DateTime 2021-04-20 14:48:47 * @return void * @copyright: Copyright (c) 2020 广东七件事集团 */ public function actionGroupOrderDetail() { $get = \Yii::$app->request->get(); $res = \Yii::$app->services->validate->validate($get, [ [['id'], 'integer'], ]); if ($res === false) return $this->error(\Yii::$app->services->validate->getErrorMessage()); $select = 'id,order_no,goods_id,goods_attr_id,group_status,attend_type,address_id,money,buy_nums,win_time,win_nums,payment_type,pay_at,remark,total_pay_price,total_price,shipping_money,created_at,updated_at'; $order_info = LuckyGroupOrder::getOne([['id' => $get['id']]], true, ['goods', 'address', 'goodsAttr', 'orderMarketing'], 'id desc', $select); if (!$order_info) return $this->error(LuckyGroupOrder::getStaticError()); $order_info['status_text'] = DefaultModel::getAttendTypeArr($this->mall_id, $order_info['attend_type']); $order_info['group_status_text'] = DefaultModel::getGroupText($this->mall_id, $order_info['group_status']); $pay_type = PayTypeEnum::getMap(); $order_info['payment_type_status'] = $pay_type[$order_info['payment_type']]; return $this->success('success', $order_info); } /** * 拼中公示 * User: wniu * Date: 2022/4/6 * Time: 9:45 上午 * */ public function actionWinList() { $params = \Yii::$app->request->get(); $params['select'] = '*'; $params['order'] = 'number desc'; $params['with'] = ['user']; $params['group'] ='number'; $params['where'] = [['mall_id' => $this->mall_id, 'activity_id' => $params['activity_id'], 'goods_id' => $params['goods_id']]]; $list = LuckyGroupLotteryPeriod::listPage($params); $win_order_ids = []; if($list['list']){ foreach ($list['list'] as $k=>$v){ $v['win_order_ids'] = explode(',',$v['win_order_ids']); $win_order_ids = array_merge($win_order_ids,$v['win_order_ids']); } $order_list = LuckyGroupOrder::lists(['where'=>[['id'=>$win_order_ids]],'select'=>'id,user_id','index'=>'id']); $user_ids = array_column($order_list,'user_id'); $user_list = User::lists(['where'=>[['id'=>$user_ids]],'select'=>'id,avatar_url','index'=>'id']); foreach ($list['list'] as &$v){ $win_order_ids = explode(',',$v['win_order_ids']); $v['win_avatar_url'] = []; foreach ($win_order_ids as $order_id){ if(!empty($order_list[$order_id])&&!empty($user_list[$order_list[$order_id]['user_id']])){ $v['win_avatar_url'][] = $user_list[$order_list[$order_id]['user_id']]['avatar_url']; } } } } return $this->success('success', $list); } }