pageSize = 10; $this->set = Setting::get('plugin.single_return'); } /** * @return mixed|string * @throws \Throwable */ public function index() { if (!\YunShop::plugin()->get('team-dividend')) { return $this->message('未安装或未开启经销商管理', Url::absoluteWeb('index.index')); } $search = \YunShop::request()->get('search'); $list = ShareholderDividendModel::getDividendog($search)->orderBy('id', 'desc')->whereHas('hasOneMember')->paginate($this->pageSize); $pager = PaginationHelper::show($list->total(), $list->currentPage(), $list->perPage()); if (!$search['time']) { $search['time']['start'] = date("Y-m-d H:i:s", time()); $search['time']['end'] = date("Y-m-d H:i:s", time()); $search['is_time'] = 0; } $level = TeamDividendLevelModel::getList()->get(); return view('Yunshop\ShareholderDividend::admin.dividend-log', [ 'list' => $list->toarray(), 'pager' => $pager, 'search' => $search, 'level' => $level, 'set' => $this->set, ])->render(); } public function export() { $file_name = date('Ymdhis', time()) . '股东分红记录导出'; $search = \YunShop::request()->get('search'); $list = ShareholderDividendModel::getDividendog($search)->orderBy('id', 'desc') ->whereHas('hasOneMember'); $export_page = request()->export_page ? request()->export_page : 1; $export_model = new ExportService($list, $export_page); if (!$export_model->builder_model->isEmpty()) { $export_data[0] = [ 'ID', '时间', '会员', '商城销售总额', '分红比例', '团队等级', '同等级团队人数', '返现金额' ]; foreach ($export_model->builder_model->toArray() as $key => $item) { $export_data[$key + 1] = [ $item['id'], $item['created_at'], $item['has_one_member']['nickname'], $item['order_amount'], $item['rate'].'%', $item['team_level_name'], $item['level_num'], $item['amount'] ]; } $export_model->export($file_name, $export_data, 'plugin.shareholder-dividend.admin.dividend-log.index'); } } public function count() { $this->set = Setting::get('plugin.shareholder'); $orderAmount = \Yunshop\ShareholderDividend\services\CycleAmounyService::getCycleAmount($this->set['culate_cycle'], $this->set['culate_method']); echo '统计金额:'.$orderAmount; } }