//pos模板
public function posmb(){
ini_set(‘memory_limit’,‘1024M’);
if (!empty($_FILES)) {
$config = array(
‘exts’ => array(‘xlsx’,‘xls’),
‘maxSize’ => 3145728000,
‘rootPath’ =>"./Public/",
‘savePath’ => ‘Uploads/’,
‘subName’ => array(‘date’,‘Ymd’),
);
KaTeX parse error: Expected 'EOF', got '\Think' at position 14: upload = new \̲T̲h̲i̲n̲k̲\Upload(config);
if (!$info = $upload->upload()) {
$this->error($upload->getError());
}
vendor("PHPExcel.PHPExcel");
$file_name=$upload->rootPath.$info['photo']['savepath'].$info['photo']['savename'];
$extension = strtolower(pathinfo($file_name, PATHINFO_EXTENSION));//判断导入表格后缀格式
// print_r($extension);die;
if ($extension == 'xlsx') {
$objReader =\PHPExcel_IOFactory::createReader('Excel2007');
$objPHPExcel =$objReader->load($file_name, $encode = 'utf-8');
} else if ($extension == 'xls'){
$objReader =\PHPExcel_IOFactory::createReader('Excel5');
$objPHPExcel =$objReader->load($file_name, $encode = 'utf-8');
}
$sheet =$objPHPExcel->getSheet(0);
$highestRow = $sheet->getHighestRow();//取得总行数
$highestColumn =$sheet->getHighestColumn(); //取得总列数
//导入 //ip flag description
$a=0;
$b=0;
$c=0;
$d=0;
$e=0;
$f=0;
$g=0;
$h=0;
$j=0;
$fdata = array();//记录他的错误信息
for ($i = 2; $i <= $highestRow; $i++) {//for循环
//看这里看这里,前面小写的a是表中的字段名,后面的大写A是excel中位置
$data['pos_id'] =$objPHPExcel->getActiveSheet()->getCell("A" . $i)->getValue();
$data['type'] =$objPHPExcel->getActiveSheet()->getCell("B" .$i)->getValue();
$data['brand_id'] =$objPHPExcel->getActiveSheet()->getCell("C" .$i)->getValue();
$data['imei'] =$objPHPExcel->getActiveSheet()->getCell("D" .$i)->getValue();
$data['pos_en'] =$objPHPExcel->getActiveSheet()->getCell("E" .$i)->getValue();
$data['status'] =$objPHPExcel->getActiveSheet()->getCell("F" .$i)->getValue();
$data['business'] =$objPHPExcel->getActiveSheet()->getCell("G" .$i)->getValue();
$data['price'] =$objPHPExcel->getActiveSheet()->getCell("H" .$i)->getValue();
$data['add_time'] =$objPHPExcel->getActiveSheet()->getCell("I" .$i)->getValue();
$data['consignee'] =$objPHPExcel->getActiveSheet()->getCell("J" .$i)->getValue();
$data['remark'] =$objPHPExcel->getActiveSheet()->getCell("K" .$i)->getValue();
$data1=$data['pos_id'];//设备id
$data2=$data['type'];//类型
$data3=$data['brand_id'];//品牌
$data4=$data['imei'];//imet
$data5=$data['pos_en'];//唯一标识号
$data6=$data['status'];//机具
$data7=$data['business'];//
$data8=$data['price'];//价格
$data9=$data['add_time'];//机具号
$data10=$data['consignee'];//收货人
$data11=$data['remark'];//备注
$aid = $this->getnextcode("zzk_tpos",11);//orclar自增id
$pos = M("zzk_tpos");
//添加失败信息
if($data1==''){
// $this->error("设备ID不能为空!");
$a++;
$res=false;
$fdata[] = $data;
continue;
}
if($data3=='')
{
$b++;
$res=false;
$fdata[] = $data;
continue;
// $this->error("POS品牌不能为空!");
}
if($data4=='')
{
$c++;
$res=false;
$fdata[] = $data;
continue;
// $this->error('IMEI不能为空!');
}
if($data5=='')
{
$d++;
$res=false;
$fdata[] = $data;
continue;
// $this->error('pos唯一标识不能为空!');
}
if($data8=='')
{
$e++;
$res=false;
$fdata[] = $data;
continue;
// $this->error("POS价格不能为空!");
}
if($data10=='')
{
$f++;
$res=false;
$fdata[] = $data;
continue;
// $this->error('收货人不能为空!');
}
$sql="insert into zzk_tpos(aid,pos_id,type,brand_id,imei,pos_en,status,business,price,add_time,consignee,remark) values
('".$aid."','".$data1."','".$data2."','".$data3."','".$data4."','".$data5."','".$data6."','".$data7."','".$data8."','".$data9."','".$data10."','".$data11."')";//sql添加数据
//插入数据库
$res = $pos->execute($sql);
}
// print_r($fdata);die;
$count=$a+$b+$c+$d+$e+$f+$g+$h;
//判断是否存在失败数据
if($res){
$j++;
$this->success('添加成功'.'成功'.$j.'条'.'失败'.$count.'条',U("Machines/poscontrol"));
}else{//导出
$fdata[] = $data;
$strlist = 'pos_id,type,brand_id,imei,pos_en,status,business,price,add_time,consignee,remark';
$strlist.="\n";
foreach ( $fdata as $key => $val) {
$strlist.=$val['pos_id']."\t,".$val['type']."\t,".$val['brand_id']."\t,".$val['imei']."\t,".$val['pos_en']."\t,".$val['status']."\t,".$val['business'];
$strlist.=','.$val['price']."\t,".$val['add_time']."\t,".$val['consignee']."\t,".$val['remark']."\n";
}
$filename ='pos配置报表'.date('YmdHis',time());
// $filename=iconv('utf-8','utf-8',$filename);
// continue ;
$this->load_csv($strlist,$filename);die;
}
} else {
$this->error("请选择上传的文件");
}
}