Commit 97ec0eba by cwy

导出

parent 20a05623
...@@ -75,7 +75,7 @@ class ExcelFile extends BaseController ...@@ -75,7 +75,7 @@ class ExcelFile extends BaseController
} }
} }
public function exportFile() public function exportFile1()
{ {
try{ try{
$data = $this->importFile(); $data = $this->importFile();
...@@ -133,6 +133,10 @@ class ExcelFile extends BaseController ...@@ -133,6 +133,10 @@ class ExcelFile extends BaseController
} }
} }
/**
* @return void
* 导出任务
*/
public function taskExportFile() public function taskExportFile()
{ {
try{ try{
...@@ -142,6 +146,8 @@ class ExcelFile extends BaseController ...@@ -142,6 +146,8 @@ class ExcelFile extends BaseController
foreach ($norm as $value){ foreach ($norm as $value){
$sheet = ['total'=>0,'data'=>[]]; $sheet = ['total'=>0,'data'=>[]];
$normList = Db::table('norm_list')->where('norm_id', $value['id'])->select(); $normList = Db::table('norm_list')->where('norm_id', $value['id'])->select();
$longest = 0;
$total = 0;
foreach ($normList as $index=> $val){ foreach ($normList as $index=> $val){
$total = 0; $total = 0;
$normCollects = Db::table('norm_collects')->where('norm_list_id', $val['id'])->find(); $normCollects = Db::table('norm_collects')->where('norm_list_id', $val['id'])->find();
...@@ -166,41 +172,136 @@ class ExcelFile extends BaseController ...@@ -166,41 +172,136 @@ class ExcelFile extends BaseController
$normCollectsId = $normCollects['id']; $normCollectsId = $normCollects['id'];
} }
$data = [ $data = [
$index, 'number'=>$index,
$val['name'], 'name'=>$val['name'],
$val['level'], 'level'=>$val['level'],
$val['refer'], 'refer'=>$val['refer'],
$val['price'], 'price'=>$val['price'],
$value['guide'], 'guide'=>$value['guide'],
$value['sort'], 'sort'=>$value['sort'],
$remark, 'remark'=>$remark,
$referType, 'referType'=>$referType,
'admin'=>[],
'user'=>[],
'imgPath'=>$imgPath
]; ];
$normListExtend = Db::table('norm_list_extend')->where('norm_list_id', $val['id'])->select(); $normListExtend = Db::table('norm_list_extend')->where('norm_list_id', $val['id'])->select();
// 添加展示端 // 添加展示端
foreach ($normListExtend as $extendValue){ foreach ($normListExtend as $extendValue){
$total +=1; $total +=1;
array_push($data,$extendValue['extend_name']); $arr = ['name'=>$extendValue['extend_name'],'value'=>$extendValue['extend_value']];
array_push($data,$extendValue['extend_value']); array_push($data['admin'],$arr);
} }
// 添加用户端 // 添加用户端
if($normCollectsId){ if($normCollectsId){
$collectsInfo = Db::table('norm_collects_extend')->where('norm_collects_id', $normCollectsId)->select(); $collectsInfo = Db::table('norm_collects_extend')->where('norm_collects_id', $normCollectsId)->select();
foreach ($collectsInfo as $collectsValue){ foreach ($collectsInfo as $collectsValue){
$total +=1; $total +=1;
array_push($data,$collectsValue['extend_name']); $arr = ['name'=>$collectsValue['extend_name'],'value'=>$collectsValue['extend_value']];
array_push($data,$collectsValue['extend_value']); array_push($data['user'],$arr);
} }
} }
// 添加图片信息 // 添加图片信息
array_push($data,$imgPath); array_push($data,$imgPath);
// 记录表头自定义个数
if ($total>$longest){
$longest = $total;
}
$sheet['total'] = $longest;
// 添加第一条指标信息 // 添加第一条指标信息
$sheet['total'] = $total;
array_push($sheet['data'],$data); array_push($sheet['data'],$data);
} }
array_push($list,$sheet); array_push($list,$sheet);
} }
dump($list); $this->exportFile($list[1]);
}catch (\Exception $e){
var_dump($e->getMessage());
}
}
public function exportFile($data)
{
try{
// 创建一个新的 Spreadsheet 对象
$spreadsheet = new Spreadsheet();
$sheet = $spreadsheet->getActiveSheet();
$title = [
'序号',
'指标名称',
'难度等级',
'参考信源',
'单价',
'参考指南',
'优先级',
'收集指南',
'信源类型',
];
$arr = [];
foreach ($data['data'] as $index=> $value) {
foreach ($value['admin'] as $inx=>$val){
if (!in_array($val['name'],$arr)){
array_push($arr,$val['name']);
}
}
foreach ($value['user'] as $inx=>$val){
if (!in_array($val['name'],$arr)){
array_push($arr,$val['name']);
}
}
}
$title = array_merge($title,$arr);
$column = ['A','B','C','D','E'.'F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'];
$row = 1;
// 遍历标题数组,设置每个单元格的值
foreach ($title as $columns => $val) {
// 使用列的数字来定位列,例如 'A', 'B', 'C', ...
$columnLetter = chr(65 + $columns);
$cell = $columnLetter . $row;
// 设置单元格的值
$sheet->setCellValue($cell, $val);
}
$num = 0;
$row = 2;
foreach ($data['data'] as $index=> $value) {
$sheet = $spreadsheet->getActiveSheet();
$sheet->setCellValue($column[$num].$row, isset($value['number'])?$value['number']:'无');
// 设置一些数据到单元格中
$sheet->setCellValue($column[$num+1].$row, isset($value['name'])?$value['name']:'无');
$sheet->setCellValue($column[$num+2].$row, isset($value['level'])?$value['level']:'无');
// $sheet->setCellValue($column[$num+2].$index, isset($value['refer'])?$value['refer']:'无');
// $sheet->setCellValue($column[$num+3].$index, isset($value['price'])?$value['price']:'无');
// $sheet->setCellValue($column[$num+4].$index, isset($value['guide'])?$value['guide']:'无');
// $sheet->setCellValue($column[$num+5].$index, isset($value['sort'])?$value['sort']:'无');
// $sheet->setCellValue($column[$num+6].$index, isset($value['remark'])?$value['remark']:'无');
// $sheet->setCellValue($column[$num+7].$index, isset($value['referType'])?$value['referType']:'无');
// $sheet->setCellValue('K'.$index, $value[10]);
// $sheet->setCellValue('L'.$index,$value[11]);
// $sheet->setCellValue('M'.$index, $value[12]);
// $sheet->setCellValue('N'.$index, $value[13]);
// $sheet->getRowDimension(0)->setRowHeight(50); // 设置第一行的高度为30
//// $sheet->getRowDimension(1)->setWidth(130); // 设置第一行的高度为30
// $sheet->getColumnDimension('A')->setWidth(25); // 设置A列的宽度为20
// $sheet->getRowDimension($index+1)->setRowHeight(50); // 设置第一行的高度为30
//// $sheet->getRowDimension(1)->setWidth(130); // 设置第一行的高度为30
// $sheet->getColumnDimension('B')->setWidth(25); // 设置A列的宽度为20
// if($value[13] != "无"){
// var_dump($value[14]);
// // 创建一个 Drawing 对象,并设置图片的路径
// $drawing = new Drawing();
// $drawing->setName('Sample Image');
// $drawing->setDescription('Sample Image');
// $drawing->setPath($value[13]); // 图片路径
// $drawing->setCoordinates('N'.$index); // 图片放置的单元格位置
// $drawing->setWorksheet($sheet); // 关联到工作表
// // 调整图片大小以适应单元格(可选)
// $drawing->setHeight(80); // 图片高度,单位为磅
// $drawing->setWidth(80); // 图片宽度,单位为磅
// }
$row++;
}
// 保存 ExcelFile 文件
$writer = new Xlsx($spreadsheet);
$writer->save('import.xlsx');
}catch (\Exception $e){ }catch (\Exception $e){
var_dump($e->getMessage()); var_dump($e->getMessage());
} }
......
<?php
$PORT = 8086; //端口号请查看博文:*3.2.2 程序执行*。设置有效端口:
$client = socket_create(AF_INET, SOCK_STREAM, SOL_TCP); //创建socket/参数1:代表IPV4/参数2:流传输/参数3:TCP/
$result = socket_connect($client, "192.168.10.168", $PORT); //向指定地址/端口发出连接请求,连接结果返回到resule
if($result == false){ //这里我们简单的对连接结果进行响应/为了Debug方便
echo "ERROR CONNECT\n";
die();
} else {
echo "CONNECTED\n";
}
$data = "Hello World\n"; //建立将要发送的消息
socket_write($client, $data); //将消息发送出去
socket_close($client); //关闭socket
\ No newline at end of file
227 红牛1
226 饮料
225 矿泉水
224 测试问题1
222 测试问题
221 我要去拜访某某企业,请问怎么进去呢?
220 你真的太气人了,不想跟你废话了
219 你说的,我不理解
218 我是一名设计师,你呢?
217 你的名字是?
216 你住在哪里?
215 你好自恋哦
214 你今天感觉如何
213 你从事什么工作?
212 你好棒哦
211 我饿了
210 今天天气怎样?
209 我自己一个人,好无聊
208 谢谢你帮了我
207 嗨,你好呀
206 我喜欢跟你聊天
205 晚安
204 我的核酸是48H,为什么不让我进
203 早上好呀
202 我前天做了核酸,为什么不让我进
201 你的上级是谁?
200 我喜欢唱歌,你呢?
199 你的行为好可爱哦
198 节日快乐
197 你有另一半吗?
196 你好呀
195 你认识我吗?
194 你是男生还是女生
193 我说什么你都不知道,好无趣
192 我好开心哦
191 你漂亮吗?
190 我是住在这个小区,为什么不让进
189 你为什么不回答我的问题
188 我好无聊哦
187 你可以闭嘴了
186 你好会聊天哦
185 你现在感觉如何?
184 我前天出差了,也不是中高风险地区,为什么不让我进
183 你有女朋友吗?
182 你是机器人吗?
181 可以介绍一下你自己吗?
180 为什么被赋了黄码,我要怎么才能变绿码我被赋了红码,我该怎么办
179 谢谢你
178 你好傻
177 你在吗?
176 我上两天做了核酸,为什么不让进
175 你好搞笑
174 对不起
173 我喜欢你
172 你会什么技能?
171 你今年多少岁了?
170 很高兴认识你
169 我想你了
168 你今年多大了?
167 我在外地做了核酸,为什么不让进
166 我今天好快乐
165 你会做什么?
164 你为什么不智能呢?
163 可以抱一下吗?
162 你长的有点丑哎
161 你怎么说跟上次一样的话
160 你真的太无趣了
159 你在干嘛
158 机器人在不
157 拜拜
156 你从哪里来?
155 我今天好累
154 你做的真棒
153 你的主人是谁?
152 你有什么爱好?
151 好想哭
5 北科
4 北科1
2 无24小时内核酸阴性报告怎么办?
1 测试问题521
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 to comment