|
@@ -9,6 +9,7 @@ use app\api\model\department\DepartmentModel;
|
|
|
use app\api\model\doctor\DoctorModel;
|
|
|
use app\api\model\dr\DrModel;
|
|
|
use app\api\model\exam\ExamModel;
|
|
|
+use app\api\model\institution\InstitutionModel;
|
|
|
use app\api\model\rcontact\RcontactModel;
|
|
|
use app\api\model\rcost\RcostModel;
|
|
|
use app\api\model\remote\RemoteModel;
|
|
@@ -88,118 +89,9 @@ class TestController extends Controller
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- public function outSheet()
|
|
|
- {
|
|
|
- set_time_limit(0);
|
|
|
- $objPHPExcel = new \PHPExcel();
|
|
|
- $allData = Db::table('exams')->where('institution_id','43600001')->group('device_name')->cache('43600001',3600)->column('device_name,count(*) as c');
|
|
|
- $device = array_keys($allData);
|
|
|
- $month = date('Y-m-01 00:00:00');
|
|
|
- $monthData = Db::table('exams')->where('institution_id','43600001')->where("createdAt > '$month'")->group('device_name')->cache('43600001_month',3600)->column('device_name,count(*) as c');
|
|
|
- $today = date('Y-m-d 00:00:00');
|
|
|
- $todayData = Db::table('exams')->where('institution_id','43600001')->where("createdAt > '$today'")->group('device_name')->cache('43600001_today',3600)->column('device_name,count(*) as c');
|
|
|
- $objPHPExcel->getActiveSheet()->setTitle('设备检查人次统计');
|
|
|
- $objPHPExcel->getActiveSheet()->setCellValue('A1', '设备名称');
|
|
|
- $objPHPExcel->getActiveSheet()->setCellValue('B1', '检查人次(今日)');
|
|
|
- $objPHPExcel->getActiveSheet()->setCellValue('C1', '检查人次(本月)');
|
|
|
- $objPHPExcel->getActiveSheet()->setCellValue('D1', '检查人次(总计)');
|
|
|
- $objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(30);
|
|
|
- $objPHPExcel->getActiveSheet()->getColumnDimension('B')->setWidth(30);
|
|
|
- $objPHPExcel->getActiveSheet()->getColumnDimension('C')->setWidth(30);
|
|
|
- $objPHPExcel->getActiveSheet()->getColumnDimension('D')->setWidth(30);
|
|
|
- $i = 2;
|
|
|
- foreach ($allData as $k=>$v)
|
|
|
- {
|
|
|
- if(empty($k))
|
|
|
- {
|
|
|
- continue;
|
|
|
- }
|
|
|
- $objPHPExcel->getActiveSheet()->setCellValue('A'.$i, $k);
|
|
|
- $objPHPExcel->getActiveSheet()->setCellValue('B'.$i, $todayData[$k] ?? 0);
|
|
|
- $objPHPExcel->getActiveSheet()->setCellValue('C'.$i, $monthData[$k] ?? 0);
|
|
|
- $objPHPExcel->getActiveSheet()->setCellValue('D'.$i, $v);
|
|
|
- $i++;
|
|
|
- }
|
|
|
-
|
|
|
- $allBodyData = Db::table('exams')->where('institution_id','43600001')->group('exam_project')->cache('43600001_body',3600)->column('exam_project,count(*) as c');
|
|
|
- $monthBodyData = Db::table('exams')->where('institution_id','43600001')->where("createdAt > '$month'")->group('exam_project')->cache('43600001_month_body',3600)->column('exam_project,count(*) as c');
|
|
|
- $todayBodyData = Db::table('exams')->where('institution_id','43600001')->where("createdAt > '$today'")->group('exam_project')->cache('43600001_today_body',3600)->column('exam_project,count(*) as c');
|
|
|
- // 添加Worksheet2
|
|
|
- $sheet = 1;
|
|
|
- $objPHPExcel->createSheet();
|
|
|
- $objPHPExcel->setActiveSheetIndex($sheet);
|
|
|
- $objPHPExcel->getActiveSheet()->setTitle('检查部位统计');
|
|
|
- $objPHPExcel->getActiveSheet()->setCellValue('A1', '设备名称');
|
|
|
- $objPHPExcel->getActiveSheet()->setCellValue('B1', '今日');
|
|
|
- $objPHPExcel->getActiveSheet()->setCellValue('C1', '本月');
|
|
|
- $objPHPExcel->getActiveSheet()->setCellValue('D1', '总计');
|
|
|
- $objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(80);
|
|
|
- $i = 2;
|
|
|
- foreach ($allBodyData as $k=>$v)
|
|
|
- {
|
|
|
- if(empty($k))
|
|
|
- {
|
|
|
- continue;
|
|
|
- }
|
|
|
- $objPHPExcel->getActiveSheet()->setCellValue('A'.$i, $k);
|
|
|
- $objPHPExcel->getActiveSheet()->setCellValue('B'.$i, $todayBodyData[$k] ?? 0);
|
|
|
- $objPHPExcel->getActiveSheet()->setCellValue('C'.$i, $monthBodyData[$k] ?? 0);
|
|
|
- $objPHPExcel->getActiveSheet()->setCellValue('D'.$i, $v);
|
|
|
- $i++;
|
|
|
- }
|
|
|
- foreach ($device as $v)
|
|
|
- {
|
|
|
- if(empty($v))
|
|
|
- {
|
|
|
- continue;
|
|
|
- }
|
|
|
- $allDeviceData = Db::table('exams')->where('institution_id','43600001')->where('device_name',$v)->group('exam_project')->where('exam_project != ""')->cache('43600001_device_'.$v,3600)->column('exam_project,count(*) as c');
|
|
|
- if(empty($allDeviceData))
|
|
|
- {
|
|
|
- continue;
|
|
|
- }
|
|
|
- $monthDeviceData = Db::table('exams')->where('institution_id','43600001')->where('device_name',$v)->where("createdAt > '$month'")->group('exam_project')->cache('43600001_month_device_'.$v,3600)->column('exam_project,count(*) as c');
|
|
|
- $todayDeviceData = Db::table('exams')->where('institution_id','43600001')->where('device_name',$v)->where("createdAt > '$today'")->group('exam_project')->cache('43600001_today_device_'.$v,3600)->column('exam_project,count(*) as c');
|
|
|
- $objPHPExcel->createSheet();
|
|
|
- $sheet++;
|
|
|
- $objPHPExcel->setActiveSheetIndex($sheet);
|
|
|
- try {
|
|
|
- $objPHPExcel->getActiveSheet()->setTitle($v.'检查统计');
|
|
|
- }catch (\PHPExcel_Exception $e)
|
|
|
- {
|
|
|
- preg_match_all("/[\x{4e00}-\x{9fa5}a-zA-Z0-9]+/u","$v",$arr);
|
|
|
- $title = (join('',$arr[0]));
|
|
|
- $objPHPExcel->getActiveSheet()->setTitle($title);
|
|
|
- }
|
|
|
- $objPHPExcel->getActiveSheet()->setCellValue('A1', '设备名称');
|
|
|
- $objPHPExcel->getActiveSheet()->setCellValue('B1', '今日');
|
|
|
- $objPHPExcel->getActiveSheet()->setCellValue('C1', '本月');
|
|
|
- $objPHPExcel->getActiveSheet()->setCellValue('D1', '总计');
|
|
|
- $objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(80);
|
|
|
- $i = 2;
|
|
|
- foreach ($allDeviceData as $k=>$value)
|
|
|
- {
|
|
|
- if(empty($k))
|
|
|
- {
|
|
|
- continue;
|
|
|
- }
|
|
|
- $objPHPExcel->getActiveSheet()->setCellValue('A'.$i, $k);
|
|
|
- $objPHPExcel->getActiveSheet()->setCellValue('B'.$i, $todayDeviceData[$k] ?? 0);
|
|
|
- $objPHPExcel->getActiveSheet()->setCellValue('C'.$i, $monthDeviceData[$k] ?? 0);
|
|
|
- $objPHPExcel->getActiveSheet()->setCellValue('D'.$i, $value);
|
|
|
- $i++;
|
|
|
- }
|
|
|
- }
|
|
|
- header('Content-Type: application/vnd.ms-excel');
|
|
|
- header('Content-Disposition: attachment;filename="' . time() . '.xls');
|
|
|
- header('Cache-Control: max-age=1');
|
|
|
- $objWriter = \PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
|
|
|
- $objWriter->save('php://output');
|
|
|
- }
|
|
|
-
|
|
|
|
|
|
public function testOne(TestService $test) {
|
|
|
- $a = (ExamModel::where('patient_num','PT20250221001')->find());
|
|
|
+ $a = (InstitutionModel::find());
|
|
|
var_dump($a);
|
|
|
die;
|
|
|
$a = 'mGcripTrD+kUDwhjHsB8TfDeo4obPs4vDFVeTR/iHGFMfYqiBktDQ7BXrxMjQJUz/wUHnfZcKH2JjfffOVzfzAatupwpiGFqsnTyhxJ7kJYxMu8Wv5v6twocWPx6Eqb7';
|