123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126 |
- <?php
- namespace App\Http\Controllers\Manage\Finance;
- use App\Modules\Finance\Services\WithdrawCashService;
- use Illuminate\Http\Request;
- class FinanceController extends BaseController
- {
-
- public function getWithdrawCashStatus(Request $request) {
- $result = WithdrawCashService::getWithdrawCashStatusList(20);
- return response()->success($result);
- }
- public function outPayMerchantData(Request $request) {
- $start_time = $request->has('start_time') && !empty($request->input('start_time')) ? date('Ymd',strtotime($request->input('start_time'))) : '';
- $start_time = self::getMinDay($start_time);
- $end_time = $request->has('end_time') && !empty($request->input('end_time')) ? date('Ymd',strtotime($request->input('end_time'))) : '';
- $end_time = self::getMaxDay($end_time);
- $channel_ids = $request->has('channel_ids') ? $request->input('channel_ids') : '';
- $idsArray = [];
- if($channel_ids && count(explode(',', $channel_ids)) > 0) {
- $ids = explode(',', $channel_ids);
- foreach ($ids as $id) {
- if(is_numeric($id)) {
- $idsArray[] = $id;
- }
- }
- }
- $sql = '';
- if($start_time && $end_time && count($idsArray) > 0) {
- if( date('Y-m-d H:i:s', strtotime($start_time)) == $start_time && date('Y-m-d H:i:s', strtotime($end_time)) == $end_time) {
- $idsStr = implode(",", $idsArray);
-
- $sql = 'SELECT distribution_channel_id, DATE(created_at) as createDate, SUM(price) as price, pay_merchant_id FROM orders ';
- $sql = $sql.' WHERE distribution_channel_id in (' .$idsStr. ')';
- $sql = $sql.' AND `status` = "PAID"';
- $sql = $sql.' AND pay_merchant_id in (' .env('not_in_pay_merchant_id').')';
- $sql = $sql.' AND `status` = "PAID"';
- $sql = $sql.' AND created_at >= "'.$start_time .'"';
- $sql = $sql.' AND created_at <= "'.$end_time.'"';
- $sql = $sql.' GROUP BY DATE(created_at), distribution_channel_id';
- }
- }
- if($sql) {
-
- $result = \DB::select($sql);
-
-
- header("Content-type:application/vnd.ms-excel");
- header("Content-Disposition:attachment;filename=" . "渠道外部充值" . date("YmdHis") . ".csv");
- echo iconv("UTF-8","GBK","\"渠道ID\",\"日期\",\"外部总金额\",\"外部支付通道\"\r\n");
- if($result)
- {
- foreach($result as $item)
- {
- echo("\"" . $item->distribution_channel_id . "\",");
- echo("\"" . iconv("UTF-8","GBK",trim($item->createDate)) . "\",");
- echo("\"" . iconv("UTF-8","GBK",trim($item->price)) . "\",");
- echo("\"" . iconv("UTF-8","GBK",trim($item->pay_merchant_id)) . "\"\r\n");
- }
- }
- exit();
- } else {
- echo("输入条件错误");
- exit();
- }
- }
- }
|