Commit 0e324bd1 by 朱继来

添加工具尺导出

parent 8a959239
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
use App\Model\UserSampleApplyModel;
use App\Model\UserSampleInviteModel;
use DB;
use Excel;
Class ExportController extends Controller
{
// 统一入口
public function entrance(Request $request, $id)
{
return $this->$id($request);
}
// 导出会员
public function selfSampleExport($request)
{
$UserSampleApplyModel = new UserSampleApplyModel();
$UserSampleInviteModel = new UserSampleInviteModel();
$data = $UserSampleApplyModel->lists($request, 1);
foreach ($data as $k=>$v) {
$cellData[$k]['user_id'] = $v['user_id'];
$cellData[$k]['account'] = $v['account'];
$cellData[$k]['invite_count'] = $v['invite_count'];
$cellData[$k]['apply_num_total'] = $v['apply_num_total'];
$cellData[$k]['apply_count'] = $v['apply_count'];
$cellData[$k]['order_id'] = $v['order_id'];
$cellData[$k]['order_sn'] = $v['order_sn'];
$cellData[$k]['goods_id'] = $v['goods_id'];
$cellData[$k]['goods_name'] = $v['goods_name'];
$invite = $UserSampleInviteModel->where('user_id', $v['user_id'])->select('invitee_mobile')->get()->toArray();
if (!empty($invite)) {
$cellData[$k]['invitee'] = implode(',', array_column($invite, 'invitee_mobile'));
} else {
$cellData[$k]['invitee'] = '';
}
$cellData[$k]['create_time'] = $v['create_time'];
}
$headerCell = ['用户ID', '用户账户', '邀请人数', '已申请样片数', '剩余领取次数', '订单ID', '订单编号', '样片ID', '样片名称', '邀请用户', '最近一次领取时间'];
$fileName ='自营样片领取记录导出'.date('_YmdHis');
$sheetName = '自营样片';
$this->commonFunc($cellData, $headerCell, $fileName, $sheetName);
}
/**
* 导出
* @param [type] $cellData [导出数据]
* @param [type] $headerCell [菜单项]
* @param [type] $fileName [文件名]
* @param string $sheetName [sheet名]
* @return [type] [description]
*/
public function commonFunc($cellData, $headerCell, $fileName, $sheetName='')
{
$sheetName = $sheetName ? $sheetName : '导出';
array_unshift($cellData, $headerCell);
Excel::create($fileName, function($excel) use ($cellData, $sheetName){
$excel->sheet($sheetName, function($sheet) use ($cellData){
$sheet->rows($cellData);
});
})->export('xls');
}
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
use App\Model\UserSampleApplyModel;
use App\Model\UserSampleInviteModel;
use DB;
use Excel;
Class ExportController extends Controller
{
// 统一入口
public function entrance(Request $request, $id)
{
return $this->$id($request);
}
// 导出会员
public function selfSampleExport($request)
{
$UserSampleApplyModel = new UserSampleApplyModel();
$UserSampleInviteModel = new UserSampleInviteModel();
$data = $UserSampleApplyModel->lists($request, 1);
foreach ($data as $k=>$v) {
$cellData[$k]['user_id'] = $v['user_id'];
$cellData[$k]['account'] = $v['account'];
$cellData[$k]['invite_count'] = $v['invite_count'];
$cellData[$k]['apply_num_total'] = $v['apply_num_total'];
$cellData[$k]['apply_count'] = $v['apply_count'];
$cellData[$k]['order_id'] = $v['order_id'];
$cellData[$k]['order_sn'] = $v['order_sn'];
$cellData[$k]['goods_id'] = $v['goods_id'];
$cellData[$k]['goods_name'] = $v['goods_name'];
$invite = $UserSampleInviteModel->where('user_id', $v['user_id'])->select('invitee_mobile')->get()->toArray();
if (!empty($invite)) {
$cellData[$k]['invitee'] = implode(',', array_column($invite, 'invitee_mobile'));
} else {
$cellData[$k]['invitee'] = '';
}
$cellData[$k]['create_time'] = $v['create_time'];
}
$headerCell = ['用户ID', '用户账户', '邀请人数', '已申请样片数', '剩余领取次数', '订单ID', '订单编号', '样片ID', '样片名称', '邀请用户', '最近一次领取时间'];
$fileName ='自营样片领取记录导出'.date('_YmdHis');
$sheetName = '自营样片';
$this->commonFunc($cellData, $headerCell, $fileName, $sheetName);
}
// 工具尺邀约记录导出
public function rulesInviteExport($request)
{
$UserSampleInviteModel = new UserSampleInviteModel();
$data = $UserSampleInviteModel->where('type', 2)->get()->toArray();
foreach ($data as $k=>$v) {
$cellData[$k]['invite_id'] = $v['invite_id'];
$cellData[$k]['user_id'] = $v['user_id'];
$cellData[$k]['account'] = $v['account'];
$cellData[$k]['invitee_uid'] = $v['invitee_uid'];
$cellData[$k]['invitee_mobile'] = $v['invitee_mobile'];
$cellData[$k]['is_expire'] = $v['is_expire'] == 1 ? '是' : '否';
$cellData[$k]['create_time'] = $v['create_time'];
}
$headerCell = ['邀请ID', '用户ID', '用户账户', '受邀者ID', '受邀者账号', '是否有效', '受邀者注册时间'];
$fileName ='工具尺邀请记录导出'.date('_YmdHis');
$sheetName = '工具尺邀请';
$this->commonFunc($cellData, $headerCell, $fileName, $sheetName);
}
/**
* 导出
* @param [type] $cellData [导出数据]
* @param [type] $headerCell [菜单项]
* @param [type] $fileName [文件名]
* @param string $sheetName [sheet名]
* @return [type] [description]
*/
public function commonFunc($cellData, $headerCell, $fileName, $sheetName='')
{
$sheetName = $sheetName ? $sheetName : '导出';
array_unshift($cellData, $headerCell);
Excel::create($fileName, function($excel) use ($cellData, $sheetName){
$excel->sheet($sheetName, function($sheet) use ($cellData){
$sheet->rows($cellData);
});
})->export('xls');
}
}
\ No newline at end of file
......@@ -74,5 +74,19 @@ layui.use(['form', 'table', 'laydate'], function(){
});
})
// 工具尺邀约记录导出
$('.invite_export').click(function() {
var url = '/export/rulesInviteExport';
layer.confirm('确定导出数据吗?', {
title: '导出数据'
,btn: ['确定', '取消']
}, function(){
layer.closeAll('dialog'); // 确定时关闭弹框
window.location.href = url;
});
})
});
\ No newline at end of file
......@@ -37,6 +37,7 @@
<div class="layui-btn-container" style="text-align: center; margin-top: 10px;">
<button lay-submit lay-filter="load" class="layui-btn" data-type="search">搜索</button>
<button type="button" class="layui-btn layui-btn-normal export">导出</button>
<button type="button" class="layui-btn layui-btn-normal invite_export" style="float:right;">工具尺邀约记录导出</button>
</div>
</div>
</form>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment