permdata(); if (!empty($permdata)) { $Map['addman']=$permdata; } $Count= $UserVIew->where($Map)->count();// 查询满足要求的总记录数 $List = $UserVIew->field("id,deviceid,`host`,circuit,point,hcp,desc,addman,addtime,contactman,contactphone")->where($Map)->order('addtime desc') ->limit($Page,$GetSize)->select(); $Info = array( 'totalRow' => $Count, //'pageSize' => $count,//分页时不传 'list' => $List, ); echo json_encode($Info); } else { $this->display(); } } public function add(){ if (IS_POST) { $Tab=M('userinfo_point'); // $rules = array( // array('phone','','电话号码重复!',0,'unique'), // ); // if (!$Tab->validate($rules)->create()) // { // // echo json_encode(array('statusCode'=>'300','message'=> $menu->getError())); // $this->mtReturn(300,$Tab->getError()); // } // else // { $Data=I(); if(empty($Data['deviceid'])){ $this->mtReturn(300,'请填写完整的设备id'); } if(strlen($Data['host']) < 1){ $this->mtReturn(300,'请填写完整的主机号'); } if(strlen($Data['circuit']) < 1){ $this->mtReturn(300,'请填写完整的回路号'); } if(strlen($Data['point']) < 1){ $this->mtReturn(300,'请填写完整的设备号'); } if(empty($Data['desc'])){ $this->mtReturn(300,'请填写完整描述信息'); } $Data['addtime']=date('Y-m-d H:i:s'); $Data['addman']=session('zt_username'); $Data['hcp']="主机号:".$Data['host']." 回路号:".$Data['circuit']." 设备号:".$Data['point']; $res = $Tab->add($Data); if($res) $this->mtReturn(200,'新增成功'); else $this->mtReturn(300,'新增失败'); // } } else { $this->assign('action','/home/Dianwei/add'); if ($_SESSION['zt_username']=='admin'){ $owner_code=M()->query("SELECT owner_code FROM sp_owner WHERE dwtype=1"); $this->assign('owner_code',$owner_code); }else{ $owner_code=M()->query("SELECT owner_code FROM sp_owner WHERE dwtype=1 AND company IN( SELECT owner_code FROM sp_owner_weibao WHERE agentid='".$_SESSION['zt_username']."')"); $this->assign('owner_code',$owner_code); } $this->display(); } } public function edit(){ $Data=I(); $Tab=M('userinfo_point'); if (session('power')==2){ $this->mtReturn(300,'本账号没有该权限,如需开通请联系管理员',1); }else { if(IS_POST) { $this->logcs(print_r($Data,ture)); $Data['hcp']="主机号:".$Data['host']." 回路号:".$Data['circuit']." 设备号:".$Data['point']; $res=$Tab->save($Data); if($res) $this->mtReturn(200,'编辑成功'); else $this->mtReturn(300,'编辑失败'); } else { $ResData = $Tab->field("id,deviceid,`host`,circuit,point,hcp,desc,addman,addtime,contactman,contactphone")->where(array('id'=>$Data['id']))->select(); $this->assign('ResData',$ResData[0]); if ($_SESSION['zt_username']=='admin'){ $owner_code=M()->query("SELECT owner_code FROM sp_owner WHERE dwtype=1"); $this->assign('owner_code',$owner_code); }else{ $owner_code=M()->query("SELECT owner_code FROM sp_owner WHERE dwtype=1 AND company IN( SELECT owner_code FROM sp_owner_weibao WHERE agentid='".$_SESSION['zt_username']."')"); $this->assign('owner_code',$owner_code); } $this->assign('action','/home/Dianwei/edit'); $this->display(); } } } public function deldata(){ $Model=M('userinfo_point'); $Data=I(); if (session('power')==2){ $this->mtReturn(300,'本账号没有该权限,如需开通请联系管理员',1); }else { $res=$Model->where('id='.$Data['id'])->delete(); if($res) $this->mtReturn(200,'删除成功'.$Data['id']); else $this->mtReturn(300,'删除失败'); } } public function downdata(){//导出Excel $Data=I(); $UserVIew=M("userinfo_point"); $Map=array(); if(!empty($Data['deviceid'])){ $Map['deviceid']=$Data['deviceid']; } if(!empty($Data['phone'])){ $Map['phone']=$Data['phone']; } $permdata=$this->permdata(); if (!empty($permdata)) { $Map['addman']=$permdata; } //$Count= $UserVIew->where($Map)->count();// 查询满足要求的总记录数 ,contactman,contactphone $expTableData = $UserVIew->field("deviceid,`host`,circuit,point,desc")->where($Map)->order('addtime desc')->select(); $expCellName=array('设备id','主机号','回路号','设备号','描述'); $expTitle='点位信息'; $this->exportExcel($expTitle,$expCellName,$expTableData); // echo json_encode($expTableData); } public function upfile(){ $data=I(); if(isset($data['upfile'])){ if($_FILES['dianfile']['name'] != '') { if ($_FILES["dianfile"]["error"] > 0){ echo json_encode(array('statusCode'=>300,'message'=> $_FILES["dianfile"]["error"] )); }else{ //echo "Upload: " . $_FILES["dianfile"]["name"] . "
"; //echo "Type: " . $_FILES["dianfile"]["type"] . "
"; //echo "Size: " . ($_FILES["dianfile"]["size"] / 1024) . " Kb
";. $_FILES["dianfile"]["name"] //echo "Stored in: " . $_FILES["dianfile"]["name"]. "aaaa
"; $files=$_FILES["dianfile"]["name"]; $ftypes=strtolower(substr(strrchr($files,'.'),1)); if ($ftypes!="xls"){ echo json_encode(array('statusCode'=>300,'message'=>'格式不对,请上传.xls结尾的文件' )); }else{ $filetrue=move_uploaded_file($_FILES["dianfile"]["tmp_name"],"/var/www/html/jdxf/admin1/knowfile/Dianwei.xls" ); if ($filetrue) { $this->xlsin("/var/www/html/jdxf/admin1/knowfile//Dianwei.xls"); }else{ echo json_encode(array('statusCode'=>300,'message'=>'上传失败' )); } } } }else{ echo json_encode(array('statusCode'=>300,'message'=>'没有文件!' )); } }else{ // $group=M('know_type'); // $list = $group->field('id,name,parent')->select(); // $this->assign('knowlist',$list); $this->display('upfile'); } } private function xlsin($filename){//导入 //导入PHPExcel类库,因为PHPExcel没有用命名空间,只能inport导入 import("Org.Util_it.PHPExcel"); //要导入的xls文件,位于根目录下的Public文件夹 //$filename="/var/www/html/spcrm/admin/sp_customer.xls"; //创建PHPExcel对象,注意,不能少了\ $PHPExcel=new \PHPExcel(); //如果excel文件后缀名为.xls,导入这个类 import("Org.Util_it.PHPExcel.Reader.Excel5"); //如果excel文件后缀名为.xlsx,导入这下类 //import("Org.Util.PHPExcel.Reader.Excel2007"); //$PHPReader=new \PHPExcel_Reader_Excel2007(); $PHPReader=new \PHPExcel_Reader_Excel5(); //载入文件 $PHPExcel=$PHPReader->load($filename); //获取表中的第一个工作表,如果要获取第二个,把0改为1,依次类推 $currentSheet=$PHPExcel->getSheet(0); //获取总列数 $highestColumn=$currentSheet->getHighestColumn(); //获取总行数 $highestRow=$currentSheet->getHighestRow(); //循环获取表中的数据,$currentRow表示当前行,从哪行开始读取数据,索引值从0开始 $arr = array(1=>'A',2=>'B',3=>'C',4=>'D',5=>'E',6=>'F',7=>'G',8=>'H',9=>'I',10=>'J',11=>'K',12=>'L',13=>'M', 14=>'N',15=>'O',16=>'P',17=>'Q',18=>'R',19=>'S',20=>'T',21=>'U',22=>'V',23=>'W',24=>'X',25=>'Y',26=>'Z'); //echo $highestRow.$highestColumn; // 一次读取一列 //$type=M('know_type')->field('id')->where('name="'.$types.'"')->select(); $customer=M('userinfo_point'); $downnum=0; $obtasksql="insert into sp_userinfo_point(deviceid,host,circuit,point,hcp,`desc`,addman,addtime,contactman,contactphone) values "; for ($row = 2; $row <= $highestRow; $row++) {//行 // for ($column = 0; $arr[$column] != $highestColumn; $column++) {//列 // $val = $currentSheet->getCellByColumnAndRow($column, $row)->getValue(); // echo $val; // } $val0 = $currentSheet->getCellByColumnAndRow(0, $row)->getValue(); $val1 = $currentSheet->getCellByColumnAndRow(1, $row)->getValue(); $val2 = $currentSheet->getCellByColumnAndRow(2, $row)->getValue(); $val3 = $currentSheet->getCellByColumnAndRow(3, $row)->getValue(); $val4 = $currentSheet->getCellByColumnAndRow(4, $row)->getValue(); //$val5 = $currentSheet->getCellByColumnAndRow(5, $row)->getValue(); //$val6 = $currentSheet->getCellByColumnAndRow(6, $row)->getValue(); //$val7 = $currentSheet->getCellByColumnAndRow(7, $row)->getValue(); // $val8 = $currentSheet->getCellByColumnAndRow(8, $row)->getValue(); // $val9 = $currentSheet->getCellByColumnAndRow(9, $row)->getValue(); // $val10 = $currentSheet->getCellByColumnAndRow(10, $row)->getValue(); // $val11 = $currentSheet->getCellByColumnAndRow(11, $row)->getValue(); // $val12 = $currentSheet->getCellByColumnAndRow(12, $row)->getValue(); // $val13 = $currentSheet->getCellByColumnAndRow(13, $row)->getValue(); // $val14 = $currentSheet->getCellByColumnAndRow(14, $row)->getValue(); // $val15 = $currentSheet->getCellByColumnAndRow(15, $row)->getValue(); // $val16 = $currentSheet->getCellByColumnAndRow(16, $row)->getValue(); // $val17 = $currentSheet->getCellByColumnAndRow(17, $row)->getValue(); // $val18 = $currentSheet->getCellByColumnAndRow(18, $row)->getValue(); // $val19 = $currentSheet->getCellByColumnAndRow(19, $row)->getValue(); //$customer->add($data); $hcp="主机号:".$val1." 回路号:".$val2." 设备号:".$val3; $obtasksql.="('".$val0."','".$val1."','".$val2."','".$val3."','".$hcp."','".$val4."','".$_SESSION['zt_username']."',now(),'',''),"; $downnum++; } $obtasksql = substr($obtasksql,0,strlen($obtasksql)-1); $addall=$customer->execute($obtasksql); unlink('/var/www/html/'.CRM.'/admin1/KnowBasexls.xls'); //删除重复 //$delnum=$customer->execute("DELETE FROM sp_customer WHERE phone in(SELECT phone FROM(SELECT phone FROM sp_customer GROUP BY phone HAVING COUNT(phone) >1) a) AND id NOT IN (SELECT id FROM(SELECT MIN(id) as id FROM sp_customer GROUP BY phone HAVING COUNT(phone) >1) b)"); $res='共'.$downnum.'条,成功导入'.$addall.'条。'; echo json_encode(array('statusCode'=>200,'message'=>'导入成功:'.$res)); //.'时间:'.$stra.','.$strb } //水压设备列表 public function WaterGage(){ $Data=I(); if(isset($Data['list'])){ $GetPage=$Data['pageCurrent'];//第几页 $GetSize=$Data['pageSize'];//每页条数 $Page=($GetPage-1)*$GetSize; $Map=array(); $Map['dwtype']= 2; //大类型水压设备 $Map['owner_xh']= '36,1'; //大类型水压设备 if(!empty($Data['device_code'])){ $Map['device_code']=$Data['device_code']; } if(!empty($Data['status'])){ $Map['phone']=$Data['status']; } $permdata=$this->permdata(); if (!empty($permdata)) { $Map['addman']=$permdata; } //明天 連貫操作sp_owner $Count=M('owner as a')->join('left join sp_water_gage_info as b on a.owner_code = b.device_code')-> where($Map)->count() ; $List=M('owner as a')->join('left join sp_water_gage_info as b on a.owner_code = b.device_code')-> where($Map)-> limit($Page,$GetSize)-> field('a.owner_code,b.max,b.min,b.status,b.update_time')-> select(); $list2 =array(); foreach ($List as $key=>$value){ $list2[$key]['time'] = date('Y-m-d H:i:s',$value['update_time']); $list2[$key]['min'] = $value['min']; $list2[$key]['max'] = $value['max']; $list2[$key]['owner_code'] = $value['owner_code']; $list2[$key]['status'] = ($value['status']==1)?'未更新':'已更新'; } $Info = array( 'totalRow' => $Count, 'list' => $list2, ); echo json_encode($Info); } else { $this->display(); } } public function water_edit(){ $Data=I(); $Tab=M('water_gage_info'); if(IS_POST) { $save['min'] = $Data['min']; $save['max'] = $Data['max']; $save['update_time'] = time(); $save['status'] = 2; $where['device_code'] = $Data['code']; $info = $Tab->where($where)->find(); if($info){ $res=$Tab->where($where)->save($save); }else{ $save['create_time'] = time(); $save['update_time'] = time(); $save['device_code'] = $Data['code']; $res = $Tab->add($save); } if($res) $this->mtReturn(200,'编辑成功'); else $this->mtReturn(300,'编辑失败'); }else{ $where['device_code'] = $Data['code']; $info = $Tab->where($where)->find(); $this->assign('info',$info); $this->assign('code',$Data['code']); $this->assign('action','/home/Dianwei/water_edit'); $this->display(); } } }