success('获取成功',$url); } /** * @Apidoc\Title("获取商品导入后的商品信息") * @Apidoc\Desc("获取审批流程") * @Apidoc\Method("GET") * @Apidoc\Author("HG") * @Apidoc\Tag("") * @Apidoc\Query("url", type="string", desc="导入文件上传后的路径") * @Apidoc\Returned("", type="string", desc="模板链接地址") */ public function goods_info() { $url = input('url'); if(empty($url)){ $this->error('参数错误'); } $file_name = explode('/',$url); $import_path = $_SERVER['DOCUMENT_ROOT'].'/upload/excel/'.end($file_name); $objReader =\PHPExcel_IOFactory::createReader('Excel2007'); $objExcel = $objReader->load($import_path); $list = $objExcel->getActiveSheet()->toArray(); if(empty($list)){ $this->error('暂无数据'); } $data = array(); foreach ($list as $k=>$v){ if($k > 0 && $v[0]){ //判断分类是否有 $old_cate_one_id = $cate_one_id = Db::name('goods_cate')->where('title',$v[1])->value('id'); $old_cate_two_id = $cate_two_id = Db::name('goods_cate')->where('title',$v[2])->value('id'); if(empty($cate_one_id)){ $cate_one_id = Db::name('goods_cate')->getLastInsID(array('title'=>$v[0])); $cate_one_id = Db::name('goods_cate')->getLastInsID(array('title'=>$v[1],'level'=>2,'pid'=>$cate_one_id)); } if(empty($cate_two_id)){ $cate_two_id = Db::name('goods_cate')->getLastInsID(array('title'=>$v[1],'level'=>2,'pid'=>$cate_one_id)); var_dump($cate_two_id);exit(); } $goods_id = Db::name('store_goods')->where('name',$v[4])->value('id'); if(empty($old_cate_one_id) || empty($old_cate_two_id) || empty($goods_id)){ $goods_id = Db::name('store_goods')->getLastInsID( array( 'name'=>$v[4], 'brand'=>$v[3], 'first_classify'=>$cate_one_id, 'second_classify'=>$cate_two_id, 'user_id'=>$this->user_id ) ); } $specification_name_arr = explode(',',$v[5]); $specification_value_arr = explode(',',$v[6]); if(count($specification_name_arr) != count($specification_value_arr)){ $this->error('规格信息有误'); } foreach ($specification_name_arr as $sk=>$sv){ $specification = $sv.'::'.$specification_value_arr[$sk]; $goods_item_id = Db::name('store_goods_item')->where('goods_id',$goods_id)->where('goods_spec',$specification)->value('id'); if(empty($goods_item_id)){ $goods_item_id = Db::name('store_goods_item')->getLastInsID(array('goods_id'=>$goods_id, 'goods_spec'=>$specification, 'goods_no'=>$v[0])); } $data[] = array('name'=>$v[4],'specification'=>$sv.';'.$specification_value_arr[$sk],'num'=>$v[7],'price'=>$v[8],'goods_item_id'=>$goods_item_id); } } } $this->success('导入成功',$data); } }