|
@@ -72,6 +72,107 @@ class Worker extends Controller {
|
|
|
|
|
|
return json_encode($res_r, 320);
|
|
|
}
|
|
|
+ /**
|
|
|
+ * 在职导出
|
|
|
+ *
|
|
|
+ * @return void
|
|
|
+ * @author wj
|
|
|
+ * @date 2025-03-14
|
|
|
+ */
|
|
|
+ public function getallworkerbycid_export() {
|
|
|
+ $queryinfo = request()->param();
|
|
|
+ $pagenum = $queryinfo['pageNum'];
|
|
|
+ $pagesize = $queryinfo['pageSize'];
|
|
|
+ $workerlogic = new workermanger();
|
|
|
+ $w_list = [];
|
|
|
+ if (isset($queryinfo['companyid']) && !empty($queryinfo['companyid'])) {
|
|
|
+ $cid = $queryinfo['companyid'];
|
|
|
+ $w_list = $workerlogic->getallworkerlistbycid($pagenum, $pagesize, $cid);
|
|
|
+ }
|
|
|
+
|
|
|
+ if (isset($queryinfo['wname']) && !empty($queryinfo['wname'])) {
|
|
|
+ $wname = $queryinfo['wname'];
|
|
|
+ $w_list = $workerlogic->getworkerinfobyname($queryinfo);
|
|
|
+ }
|
|
|
+ if (empty($w_list)) {
|
|
|
+ $this->error("无列表信息");
|
|
|
+ }
|
|
|
+
|
|
|
+ //wname 用户姓名 pname 所在工地 shengfengid 身份证号 dayprice 日工资 workclass 工种 telno 手机号 wage 年龄 cardno 银行卡
|
|
|
+ vendor('PHPExcel.PHPExcel');
|
|
|
+ $objPHPExcel = new \PHPExcel();
|
|
|
+ $pageindex = 0;
|
|
|
+ $objPHPExcel->setActiveSheetIndex($pageindex);
|
|
|
+ //5.设置表格头(即excel表格的第一行)
|
|
|
+ $objPHPExcel->setActiveSheetIndex($pageindex)
|
|
|
+ ->setCellValue('A1', '用户姓名')
|
|
|
+ ->setCellValue('B1', '所在工地')
|
|
|
+ ->setCellValue('C1', '身份证号')
|
|
|
+ ->setCellValue('D1', '日工资')
|
|
|
+ ->setCellValue('E1', '工种')
|
|
|
+ ->setCellValue('F1', '手机号')
|
|
|
+ ->setCellValue('G1', '年龄')
|
|
|
+ ->setCellValue('H1', '银行卡');
|
|
|
+ $objPHPExcel->setActiveSheetIndex($pageindex)->getStyle('A')->getAlignment()
|
|
|
+ ->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
|
|
|
+ $objPHPExcel->setActiveSheetIndex($pageindex)->getStyle('B')->getAlignment()
|
|
|
+ ->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
|
|
|
+ $objPHPExcel->setActiveSheetIndex($pageindex)->getStyle('C')->getAlignment()
|
|
|
+ ->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
|
|
|
+ $objPHPExcel->setActiveSheetIndex($pageindex)->getStyle('D')->getAlignment()
|
|
|
+ ->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
|
|
|
+ $objPHPExcel->setActiveSheetIndex($pageindex)->getStyle('E')->getAlignment()
|
|
|
+ ->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
|
|
|
+ $objPHPExcel->setActiveSheetIndex($pageindex)->getStyle('F')->getAlignment()
|
|
|
+ ->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
|
|
|
+ $objPHPExcel->setActiveSheetIndex($pageindex)->getStyle('G')->getAlignment()
|
|
|
+ ->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
|
|
|
+ $objPHPExcel->setActiveSheetIndex($pageindex)->getStyle('H')->getAlignment()
|
|
|
+ ->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
|
|
|
+ $objPHPExcel->setActiveSheetIndex($pageindex)->getColumnDimension('A')->setWidth(20);
|
|
|
+ $objPHPExcel->setActiveSheetIndex($pageindex)->getColumnDimension('B')->setWidth(50);
|
|
|
+ $objPHPExcel->setActiveSheetIndex($pageindex)->getColumnDimension('C')->setWidth(50);
|
|
|
+ $objPHPExcel->setActiveSheetIndex($pageindex)->getColumnDimension('D')->setWidth(20);
|
|
|
+ $objPHPExcel->setActiveSheetIndex($pageindex)->getColumnDimension('E')->setWidth(20);
|
|
|
+ $objPHPExcel->setActiveSheetIndex($pageindex)->getColumnDimension('F')->setWidth(50);
|
|
|
+ $objPHPExcel->setActiveSheetIndex($pageindex)->getColumnDimension('G')->setWidth(20);
|
|
|
+ $objPHPExcel->setActiveSheetIndex($pageindex)->getColumnDimension('H')->setWidth(50);
|
|
|
+ $rowindex = 2;
|
|
|
+ foreach ($w_list as $key => $value) {
|
|
|
+ $wname = $value['wname'];
|
|
|
+ $pname = isset($value['pname']) ? $value['pname'] : "";
|
|
|
+ $shengfengid = " " . $value['shengfengid'];
|
|
|
+ $dayprice = $value['dayprice'];
|
|
|
+ $workclass = $value['workclass'];
|
|
|
+ $telno = $value['telno'];
|
|
|
+ $wage = $value['wage'];
|
|
|
+ $cardno = " " . $value['cardno'];
|
|
|
+ $objPHPExcel->getActiveSheet()->setCellValue('A' . $rowindex, $wname);
|
|
|
+ $objPHPExcel->getActiveSheet()->setCellValue('B' . $rowindex, $pname);
|
|
|
+ $objPHPExcel->getActiveSheet()->setCellValue('C' . $rowindex, $shengfengid);
|
|
|
+ $objPHPExcel->getActiveSheet()->setCellValue('D' . $rowindex, $dayprice);
|
|
|
+ $objPHPExcel->getActiveSheet()->setCellValue('E' . $rowindex, $workclass);
|
|
|
+ $objPHPExcel->getActiveSheet()->setCellValue('F' . $rowindex, $telno);
|
|
|
+ $objPHPExcel->getActiveSheet()->setCellValue('G' . $rowindex, $wage);
|
|
|
+ $objPHPExcel->getActiveSheet()->setCellValue('H' . $rowindex, $cardno);
|
|
|
+ $rowindex += 1;
|
|
|
+ }
|
|
|
+ $title = '在职员工';
|
|
|
+ $objPHPExcel->getActiveSheet()->setTitle($title);
|
|
|
+ $filename = $title . "_" . date('ymd', time()) . '.xls';
|
|
|
+ $filename = urlencode($filename);
|
|
|
+
|
|
|
+ //9.设置浏览器窗口下载表格
|
|
|
+ header("Content-Type: application/force-download");
|
|
|
+ header("Content-Type: application/octet-stream");
|
|
|
+ header("Content-Type: application/download");
|
|
|
+ header('Content-Type: text/html; charset=utf-8');
|
|
|
+ header('Content-Disposition:inline;filename="' . $filename . '"');
|
|
|
+ //生成excel文件
|
|
|
+ $objWriter = \PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
|
|
|
+ //下载文件在浏览器窗口
|
|
|
+ $objWriter->save('php://output');
|
|
|
+ }
|
|
|
/**
|
|
|
* 查询已不在公司项目的历史工作人员
|
|
|
* 仅限于森一人员使用
|