|
@@ -0,0 +1,120 @@
|
|
|
+<?php
|
|
|
+/**
|
|
|
+ * Created by PhpStorm.
|
|
|
+ * User: PHP
|
|
|
+ * Date: 2016/11/28
|
|
|
+ * Time: 16:20
|
|
|
+ */
|
|
|
+class Excel1Service extends Service
|
|
|
+{
|
|
|
+
|
|
|
+
|
|
|
+ /**
|
|
|
+ * @param $data 数据
|
|
|
+ * @param string $name 导出的excel名称
|
|
|
+ * @param $export 导出的类型 execute_export 执行订单汇总 order订单明细 tech保洁师明细
|
|
|
+ */
|
|
|
+ public function push($data) {
|
|
|
+ error_reporting(E_ALL);
|
|
|
+ date_default_timezone_set('Asia/Shanghai');
|
|
|
+ $channel_option = ROrder::$channel_option;
|
|
|
+ $objPHPExcel = new PHPExcel();
|
|
|
+ /*以下是一些设置 ,什么作者 标题啊之类的*/
|
|
|
+ $objPHPExcel->getProperties()->setCreator("north")
|
|
|
+ ->setLastModifiedBy("north")
|
|
|
+ ->setTitle("数据EXCEL导出")
|
|
|
+ ->setSubject("数据EXCEL导出")
|
|
|
+ ->setDescription("备份数据")
|
|
|
+ ->setKeywords("excel")
|
|
|
+ ->setCategory("result file");
|
|
|
+ /*以下就是对处理Excel里的数据, 横着取数据,主要是这一步,其他基本都不要改*/
|
|
|
+ $num = 1;
|
|
|
+ $objPHPExcel->setActiveSheetIndex(0)
|
|
|
+ //Excel的第A列,uid是你查出数组的键值,下面以此类推
|
|
|
+ ->setCellValue('A' . $num, '姓名')//$user_name
|
|
|
+ ->setCellValue('B' . $num, '手机号')//$mobile
|
|
|
+ ->setCellValue('C' . $num, '服务地址')//$address
|
|
|
+ ->setCellValue('D' . $num, '服务类型')//$type
|
|
|
+ ->setCellValue('E' . $num, '服务形式')//$cart
|
|
|
+ ->setCellValue('F' . $num, '服务时间开始时间')//$server_start_time
|
|
|
+ ->setCellValue('G' . $num, '服务时间结束时间')//$server_end_time
|
|
|
+ ->setCellValue('H' . $num, '服务技能')//$skill
|
|
|
+ ->setCellValue('I' . $num, '预产期')//$yc_time
|
|
|
+ ->setCellValue('J' . $num, '年龄')//$age
|
|
|
+ ->setCellValue('K'.$num,'备注')//$desc
|
|
|
+ ->setCellValue('L'.$num,'状态')//$status
|
|
|
+ ->setCellValue('M'.$num,'预约日期')//$status_time
|
|
|
+ ->setCellValue('N'.$num,'服务人员')//$tech
|
|
|
+ ->setCellValue('O'.$num,'服务人员手机号')//$tech_mobile
|
|
|
+ ->setCellValue('P'.$num,'签约状态')//$contract
|
|
|
+ ->setCellValue('Q'.$num,'创建时间')//$time
|
|
|
+ ->setCellValue('R'.$num,'取消原因')//$cancel_cause
|
|
|
+ ->setCellValue('S'.$num,'门店ID')//$store_id
|
|
|
+ ;
|
|
|
+ $num += 1;
|
|
|
+ foreach($data as $key => $value){
|
|
|
+ if ($value['type'] == 1) {
|
|
|
+ $server_start_time = date('H:i:s',$value['server_start_time']);
|
|
|
+ $server_end_time = date('H:i:s',$value['server_end_time']);
|
|
|
+ } else {
|
|
|
+ $server_start_time = date('Y-m-d H:i:s',$value['server_start_time']);
|
|
|
+ $server_end_time = date('Y-m-d H:i:s',$value['server_end_time']);
|
|
|
+ }
|
|
|
+ $yc_time = date('Y-m-d H:i:s',$value['yc_time']);
|
|
|
+ $status_time = date('Y-m-d H:i:s',$value['status_time']);
|
|
|
+ $time = date('Y-m-d H:i:s',$value['time']);
|
|
|
+
|
|
|
+
|
|
|
+ $type = '';
|
|
|
+
|
|
|
+ $type = HouseKeeping::$type_option[intval($value['type'])];
|
|
|
+ $cart = HouseKeeping::$type_option[intval($value['cart'])];
|
|
|
+ //$cart = '';
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ $skill = '';
|
|
|
+ foreach ($value['skill'] as $v) {
|
|
|
+ $skill .= JGEmploye::$skill_options[intval($v)]['name']." ";
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ $objPHPExcel->setActiveSheetIndex(0)
|
|
|
+ //Excel的第A列,uid是你查出数组的键值,下面以此类推
|
|
|
+ ->setCellValue('A' . $num, $value['user_name'])
|
|
|
+ ->setCellValue('B' . $num, $value['mobile'])
|
|
|
+ ->setCellValue('C' . $num, $value['address'])
|
|
|
+ ->setCellValue('D' . $num, $type)
|
|
|
+ ->setCellValue('E' . $num, $cart)
|
|
|
+ ->setCellValue('F' . $num, $server_start_time)
|
|
|
+ ->setCellValue('G' . $num, $server_end_time)
|
|
|
+ ->setCellValue('H' . $num, $skill)
|
|
|
+ ->setCellValue('I' . $num, $yc_time)
|
|
|
+ ->setCellValue('J' . $num, $value['age'])
|
|
|
+ ->setCellValue('K'.$num,$value['desc'])
|
|
|
+ ->setCellValue('L'.$num,HouseKeeping::$status_option[intval($value['status'])])
|
|
|
+ ->setCellValue('M'.$num,$status_time)
|
|
|
+ ->setCellValue('N'.$num,$value['tech'])
|
|
|
+ ->setCellValue('O'.$num,$value['tech_mobile'])
|
|
|
+ ->setCellValue('P'.$num,$value['contract'])
|
|
|
+ ->setCellValue('Q'.$num,$time)
|
|
|
+ ->setCellValue('R'.$num,$value['cancel_cause'])
|
|
|
+ ->setCellValue('S'.$num,$value['store_id'])
|
|
|
+ ;
|
|
|
+ $num += 1;
|
|
|
+ }
|
|
|
+
|
|
|
+ $objPHPExcel->getActiveSheet()->setTitle('User');
|
|
|
+ $objPHPExcel->setActiveSheetIndex(0);
|
|
|
+ header('Content-Type: application/vnd.ms-excel');
|
|
|
+ $name = '家政管理-预约管理';
|
|
|
+ header('Content-Disposition: attachment;filename="' . $name . '.xls"');
|
|
|
+ header('Cache-Control: max-age=0');
|
|
|
+ $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
|
|
|
+ $objWriter->save('php://output');
|
|
|
+ exit;
|
|
|
+ }
|
|
|
+
|
|
|
+}
|