|
|
@@ -1,6 +1,9 @@
|
|
|
<?php
|
|
|
namespace app\admin\controller;
|
|
|
|
|
|
+use think\Loader;
|
|
|
+use think\Controller;
|
|
|
+
|
|
|
/**
|
|
|
* 智能问答类
|
|
|
*/
|
|
|
@@ -175,4 +178,49 @@ class Robot extends Base
|
|
|
|
|
|
return $operate;
|
|
|
}
|
|
|
+
|
|
|
+ //导入智能问答
|
|
|
+ function inserExcel()
|
|
|
+ {
|
|
|
+ Loader::import('PHPExcel.PHPExcel');
|
|
|
+ Loader::import('PHPExcel.PHPExcel.PHPExcel_IOFactory');
|
|
|
+ Loader::import('PHPExcel.PHPExcel.PHPExcel_Cell');
|
|
|
+ //获取表单上传文件
|
|
|
+ $file = request()->file('excel');
|
|
|
+ $info = $file->validate(['ext' => 'xlsx'])->move(ROOT_PATH . 'public' . DS . 'uploads');
|
|
|
+ //上传验证后缀名,以及上传之后移动的地址
|
|
|
+ if ($info) {
|
|
|
+// echo $info->getFilename();
|
|
|
+ $exclePath = $info->getSaveName(); //获取文件名
|
|
|
+ $file_name = ROOT_PATH . 'public' . DS . 'uploads' . DS . $exclePath; //上传文件的地址
|
|
|
+ $objReader = \PHPExcel_IOFactory::createReader('Excel2007');
|
|
|
+ $obj_PHPExcel = $objReader->load($file_name, $encode = 'utf-8'); //加载文件内容,编码utf-8
|
|
|
+ $excel_array = $obj_PHPExcel->getsheet(0)->toArray(); //转换为数组格式
|
|
|
+ array_shift($excel_array); //删除第一个数组(标题);
|
|
|
+ $info = [];
|
|
|
+ foreach ($excel_array as $k => $v) {
|
|
|
+ $info[$k]['robot_name'] = $v[0];
|
|
|
+ $info[$k]['robot_content'] = $v[1];
|
|
|
+ $info[$k]['robot_status'] = $v[2];
|
|
|
+ $info[$k]['robot_host'] = $v[3];
|
|
|
+ $info[$k]['groups_id'] = 1;
|
|
|
+ $info[$k]['robotgroups_id'] = 1;
|
|
|
+ $info[$k]['robot_addTime'] = date('Y-m-d H:m:s',time());
|
|
|
+ $info[$k]['robot_updateTime'] = date('Y-m-d H:m:s',time());
|
|
|
+ $info[$k]['admin_id'] = session('user_id');
|
|
|
+ }
|
|
|
+ $robot = db('robot')->select();
|
|
|
+ for($i=0;$i<count($info);$i++){
|
|
|
+ for($j=0;$j<count($robot);$j++){
|
|
|
+ if($info[$i]['robot_name'] == $robot[$j]['robot_name']){
|
|
|
+ return json(['code' => -1, 'data' => url('robot/index'), 'msg' => 'excel表第'.($i+1).'行智能问答问题已存在']);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ db('robot')->insertAll($info); //批量插入数据
|
|
|
+ return json(['code' => 1, 'data' => $this->redirect('robot/index'), 'msg' => '插入智能问答数据成功']);
|
|
|
+ } else {
|
|
|
+ return json(['code' => -2, 'data' => url('robot/index'), 'msg' => '插入智能问答数据失败']);
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|