Commit 49fe701b968202e21c4fe0c83074e918c1b2a8ca

Authored by teemitop
2 parents 66b7bc5e b697a496

sss

... ... @@ -900,7 +900,7 @@ class Seller extends Common
$facturer = Db::query("SELECT * FROM `xt-member-two-LINE`.xt_dc_dz_facturer");
if(Request::isAjax()){
$data = Request::except('file');
set_time_limit(0);
$time = $data['time'] ? explode(' - ', $data['time']) : '';
$data['stime'] = $time ? strtotime(date($time[0],time())) : strtotime(date('Y-m-d 00:00:00',time()));
$data['etime'] = $time ? strtotime(date($time[1],time())) : strtotime(date('Y-m-d 23:59:59',time()));
... ... @@ -909,8 +909,6 @@ class Seller extends Common
$data['sdtime'] = $dtime ? strtotime(date($dtime[0],time())) : '';
$data['edtime'] = $dtime ? strtotime(date($dtime[1],time())) : '';
//$parame = '&offset='.$data["page"].'&limit='.$data["limit"].'&sellername='.@$sellername.'&stime='.@$stime.'&etime='.@$etime.'&channel='.@$data['channel'].'&id='.$id.'&status='.@$data['status'].'&sdtime='.$sdtime.'&edtime='.$edtime;
////////////////////////////////
$arr = array();
$where = '';
... ... @@ -965,14 +963,25 @@ class Seller extends Common
$where .= $data['status']==2 ? ' AND r.cdate <= UNIX_TIMESTAMP(date_add(NOW(), interval -5 minute)) AND r.cdate BETWEEN '.$data['stime'].' AND '.$data['etime'] : ' AND r.cdate BETWEEN '.$data['stime'].' AND '.$data['etime'];
}
$data['channel'] = $data['channel'] ? $data['channel'] : 1;
$where .= $data['channel'] == -1 ? '' : ' AND re.type_id = '.$data['channel'];
$data['channel'] = $data['channel'] ? implode(',',$data['channel']) : 1;
$where .= $data['channel'] == -1 ? '' : ' AND re.type_id in ('.$data['channel'].')';
#key
$where .= $data['key'] ? ' AND s.sellername like "%'.$data['key'].'%"' : ''; //商家名称
#ID
$where .= $data['nokey'] ? ' AND r.id ='.$data['nokey'] : ''; //商家ID
$offset = ($data['page']-1)*$data['limit'];
$limit = " LIMIT $offset,".$data['limit'];
//导出操作
if($data['export']){
$limit = "";
}else{
$limit = " LIMIT $offset,".$data['limit'];
}
$rs = Db::query("SELECT
dv.type,
r.tid,
... ... @@ -1160,6 +1169,81 @@ class Seller extends Common
}
}**/
}
//excel 导出
if($data['export']){
return $result = [
'code'=>0,'msg'=>'获取成功!',
'data'=>$arr['list'],
'count'=>$arr['total'],
'rel'=>1
];
//加载PHPExcle类库
$DOCUMENT_ROOT = str_replace('public','',$_SERVER['DOCUMENT_ROOT']);
require_once $DOCUMENT_ROOT.'vendor/Classes/PHPExcel.php';
require_once $DOCUMENT_ROOT.'vendor/Classes/PHPExcel/IOFactory.php';
//实例化PHPExcel类
$objPHPExcel = new \PHPExcel();
//激活当前的sheet表
$objPHPExcel->setActiveSheetIndex(0);
//设置表格头(即excel表格的第一行)
$objPHPExcel->setActiveSheetIndex(0)
->setCellValue('A1', '订单编号')
->setCellValue('B1', '所属商家')
->setCellValue('C1', '商家电话')
->setCellValue('D1', '到店时间')
->setCellValue('E1', '包间名称')
->setCellValue('F1', '包间需求')
->setCellValue('G1', '客户信息')
->setCellValue('H1', '备注')
->setCellValue('I1', '下单时间')
->setCellValue('J1', '商家设备')
->setCellValue('K1', '消息送达时间')
->setCellValue('L1', '处理时间')
->setCellValue('M1', '状态');
//设置A列水平居中
$objPHPExcel->setActiveSheetIndex(0)->getStyle('A1')->getAlignment()
->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
//设置单元格宽度
//循环刚取出来的数组,将数据逐一添加到excel表格。
$objPHPExcel->setActiveSheetIndex(0)->getColumnDimension('B')->setWidth(10);
$objPHPExcel->setActiveSheetIndex(0)->getColumnDimension('C')->setWidth(20);
$objPHPExcel->setActiveSheetIndex(0)->getColumnDimension('E')->setWidth(20);
$objPHPExcel->setActiveSheetIndex(0)->getColumnDimension('F')->setWidth(30);
for($i=0;$i<count($arr['list']);$i++){
$objPHPExcel->getActiveSheet()->setCellValue('A'.($i+2),$list[$i]['id']);//订单编号
$objPHPExcel->getActiveSheet()->setCellValue('B'.($i+2),$list[$i]['sellername']);//所属商家
$objPHPExcel->getActiveSheet()->setCellValue('C'.($i+2),$list[$i]['seller_tel']);//商家电话
$objPHPExcel->getActiveSheet()->setCellValue('D'.($i+2),$list[$i]['ddate']);//到店时间
$objPHPExcel->getActiveSheet()->setCellValue('E'.($i+2),$list[$i]['tablename']);//包间名称
$objPHPExcel->getActiveSheet()->setCellValue('F'.($i+2),$list[$i]['room_demand']);//包间需求
$objPHPExcel->getActiveSheet()->setCellValue('G'.($i+2),$list[$i]['rname']);//客户信息
$objPHPExcel->getActiveSheet()->setCellValue('H'.($i+2),$list[$i]['cusdem']);//备注
$objPHPExcel->getActiveSheet()->setCellValue('I'.($i+2),$list[$i]['cdate']);//下单时间
$objPHPExcel->getActiveSheet()->setCellValue('J'.($i+2),$list[$i]['dv']);//商家设备
$objPHPExcel->getActiveSheet()->setCellValue('K'.($i+2),$list[$i]['rec_date']);//消息送达时间
$objPHPExcel->getActiveSheet()->setCellValue('L'.($i+2),$list[$i]['handle_time']);//处理时间
$objPHPExcel->getActiveSheet()->setCellValue('M'.($i+2),$list[$i]['sta']);//状态
}
//设置保存的Excel表格名称
$filename = '预定订单数据'.date('ymd',time()).'.xls';
//8.设置当前激活的sheet表格名称;
$objPHPExcel->getActiveSheet()->setTitle('订单内容');
//设置浏览器窗口下载表格
header("Content-Type: application/force-download");
header("Content-Type: application/octet-stream");
header("Content-Type: application/download");
header('Content-Disposition:inline;filename="'.$filename.'"');
header("Pragma: no-cache");
//生成excel文件
$objWriter = \PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
//下载文件在浏览器窗口
$objWriter->save('php://output');
exit;
}
//print_r($arr['list']);die;
return $result = [
'code'=>0,'msg'=>'获取成功!',
'data'=>$arr['list'],
... ... @@ -1396,4 +1480,70 @@ class Seller extends Common
}
return view();
}
/*
* 商家短信充值查询
*/
public function getsellersmslist(){
if(Request::isAjax()){
$data = Request::except('file');
$time = (isset($data['time']) && !empty($data['time'])) ? explode(' - ',$data['time']) : (strtotime(date("Y-m-d 00:00:00")).'-'.strtotime(date("Y-m-d 23:59:59")));
$newtime = is_array($time) ? (strtotime(date($time[0])).'-'.strtotime(date($time[1]))) : $time;
$channel = (!isset($data['time'])) ? 1 : $data['channel'];
$name = (!isset($data['time'])) ? '' : $data['key'];
$url= ON_LINE.'App.Seller.QuerySelllerSmsList&offset='.$data['page'].'&size='.$data['limit'].'&time='.$newtime.'&channel='.$channel.'&name='.$name;
$list = $this->curl_get($url);
$array = json_decode($list,TRUE);
if($array){
foreach ($array['data']['list'] as $key => $value) {
$array['data']['list'][$key]['bdate'] = date("Y年m月d日 H时i分s秒",$value['bdate']);
$array['data']['list'][$key]['paystatus'] = $value['paystatus']==1 ? '成功' : '失败';
$array['data']['list'][$key]['channel'] = $value['channel']==NULL ? '小程序' : $value['channel'];
$array['data']['list'][$key]['package_name'] = $value['package_name']=='other' ? '其他' : $value['package_name'];
}
return $result = [
'code'=>0,'msg'=>'获取成功!',
'data'=>$array['data']['list'],
'count'=>$array['data']['total'],
'rel'=>1
];
}else{
$result['code'] = 0;
$result['msg'] = '请求错误!';
}
return $result;
}
return view();
}
$this->assign ( 'title','商家短信日志查询');
return view();
}
/**
* post
*/
public function curl_get($url)
{
$info = curl_init();
curl_setopt($info,CURLOPT_RETURNTRANSFER,true);
curl_setopt($info,CURLOPT_HEADER,0);
curl_setopt($info,CURLOPT_NOBODY,0);
curl_setopt($info,CURLOPT_SSL_VERIFYPEER,false);
curl_setopt($info,CURLOPT_SSL_VERIFYPEER,false);
curl_setopt($info,CURLOPT_SSL_VERIFYHOST,false);
curl_setopt($info,CURLOPT_URL,$url);
$output = curl_exec($info);
curl_close($info);
return $output;
}
}
... ...
... ... @@ -33,6 +33,7 @@
</select>
</div>
</div>
<!--
商家来源:
<div class="layui-input-inline layui-form">
<div class="layui-input-8">
... ... @@ -43,7 +44,13 @@
<option value="3">测试</option>
</select>
</div>
</div>-->
商家来源:<div class="layui-input-inline layui-form">
<div class="layui-input-8">
<span class="" id="channel"></span>
</div>
</div>
订单类型:
<div class="layui-input-inline layui-form">
<div class="layui-input-8">
... ... @@ -54,7 +61,9 @@
</select>
</div>
</div>
<button class="layui-btn" id="search" data-type="reload">查询统计</button>
<!--<button class="layui-btn" id="export" data-type="reload">查询导出</button>-->
</div>
<br>
<blockquote class="layui-elem-quote layui-text">
... ... @@ -65,11 +74,6 @@
</table>
</div>
<!--<script type="text/html" id="toolbarDemo">
<span>订单总数:<i id="count">X</i>单</span>
<span>未处理订单总数:<i id="untreated">Y</i>单</span>
<span>超时订单总数:<i id="overtime">Z</i>单</span>
</script>-->
<script type="text/html" id="action">
{{#if(d.status==0){}}
... ... @@ -112,15 +116,105 @@
{align: 'center',title: '操作', toolbar: '#action'}
]],
done: function(res, curr, count){
$('#count').html(res.countReserve);
$('#untreated').html(res.countSms);
$('#overtime').html(res.inviteeCount);
}
,id: 'testReload'
,page: true
,limit:15
,limit:10
,limits:[10,20,40,90,500,1000,10000,50000]
});
/************** 下拉框多选 ****************/
var tagData = [{"id":1,"name":"合作"},{"id":2,"name":"推广"},{"id":3,"name":"测试"}];
layui.config({
base : '../'
}).extend({
//selectN: '../static/plugins/layui/layui_extends/selectN',
selectM: '../static/plugins/layui/layui_extends/selectM',
}).use(['selectM'],function(){
$ = layui.jquery;
var form = layui.form
,selectN = layui.selectN
,selectM = layui.selectM
//多选标签-基本配置
var tagIns1 = selectM({
//元素容器【必填】
elem: '#channel'
//候选数据【必填】
,data: tagData
//最大可选
,max:3
//宽度
,width:240
//默认值
,selected: [1]
//添加验证
,verify:'required'
});
//搜索
$('#search').on('click', function() {
//ID
var nokey = $('#nokey').val();
//关键字
var key = $('#key').val();
var time = $('#time').val();
console.log(time);
var dtime = $('#dtime').val();
//商家来源
var channel = tagIns1.values;
console.log(channel);
//筛选条件:订单状态
var status = $('#status').val();
console.log(status);
//筛选条件:订单类型
var order = $('#order').val();
//传参
tableIn.reload({
page: {page: 1},
where: {nokey: nokey,key: key,status: status,time: time,dtime:dtime,channel: channel,order: order}
});
});
//导出
/*$('#export').on('click', function() {
//ID
var nokey = $('#nokey').val();
var key = $('#key').val();
var time = $('#time').val();
var dtime = $('#dtime').val();
var channel = tagIns1.values;
var status = $('#status').val();
var order = $('#order').val();
$.ajax({
url:'{:url("GetReserveList")}',
data:{
nokey: nokey,
key: key,
status: status,
time: time,
dtime:dtime,
channel: channel,
order: order,
export: 1
},
type:"Post",
dataType:"json",
success:function(data){
table.exportFile(tableIn.config.id,data.data, 'xls');
layer.msg(data.msg);
},
error:function(data){
$.messager.alert('错误',data.msg);
}
});
});*/
});
/************** 下拉框多选 ****************/
//监听行双击事件
table.on('rowDouble(list)', function(obj){
//table.on('row(list)', function(obj){ 双击事件
... ... @@ -155,30 +249,6 @@
,range: true
});
//搜索
$('#search').on('click', function() {
//ID
var nokey = $('#nokey').val();
//关键字
var key = $('#key').val();
var time = $('#time').val();
console.log(time);
var dtime = $('#dtime').val();
//商家来源
var channel = $('#channel').val();
console.log(channel);
//筛选条件:订单状态
var status = $('#status').val();
console.log(status);
//筛选条件:订单类型
var order = $('#order').val();
//传参
tableIn.reload({ page: {page: 1},where: {nokey: nokey,key: key,status: status,time: time,dtime:dtime,channel: channel,order: order}});
});
var $ = layui.$, active = {
reload: function(){
var nokey = $('#nokey');
... ...