where(['pid'=>0,'is_del'=>0])->get(); $smallClass=[]; if(!empty($searchInfo['bigClass'])) { $smallClass = DB::table('s_check_item_class')->where(['pid'=>$searchInfo['bigClass'],'is_del'=>0])->get(); } return \Yz::Return(true, '查询成功', ['bigClass'=>$bigClass,'smallClass'=>$smallClass]); } //获取检查项目列表 public function GetItemList($searchInfo,$page,$pageSize){ $where=['s_check_item.is_del'=>0]; $small_id=[]; $list=DB::table('s_check_item'); if(empty($searchInfo['bigClass'])!==true and empty($searchInfo['smallClass'])===true){ $small_id= DB::table('s_check_item_class')->where(['pid'=>$searchInfo['bigClass'],'is_del'=>0])->pluck('id')->toArray(); $list= $list->whereIn('item_class_id',$small_id); } if(!empty($searchInfo['smallClass'])){ $small_id[0]=$searchInfo['smallClass']; $list= $list->whereIn('item_class_id',$small_id); } if(!empty($searchInfo['name'])){ $where[]=['item_name','like','%'.$searchInfo['name'].'%']; } $count= $list->where($where)->count(); $list= $list ->leftJoin('s_appointment_type', 's_check_item.reservation_method', '=', 's_appointment_type.id') ->select('s_check_item.*','s_appointment_type.name as reservation_method_name') ->where($where)->skip(($page-1)*$pageSize) // 跳过前9999条记录 ->take($pageSize)->get(); //查询出所有的预约渠道 $qudaoList=DB::table('s_appointment_type')->get(); foreach ($list as $k=>$v){ $qudao_names=[]; $qudao_ids = explode(",", $v->reservation_method); foreach ($qudaoList as $k1=>$v1){ foreach ($qudao_ids as $k2=>$v2){ if($v1->id==$v2){ $qudao_names[]=$v1->name; } } } $list[$k]->reservation_method= array_map('intval', $qudao_ids); $list[$k]->reservation_method_name=$qudao_names; $list[$k]->devicesInfo=DB::table('s_check_item_device') ->join('s_devices', 's_check_item_device.device_id', '=', 's_devices.id') ->select('s_devices.*') ->where('item_id',$v->id)->get(); } return \Yz::Return(true, '查询成功', ['list'=>$list,'count'=>$count]); } //绑定设备 public function BindDevice($item_id,$device_ids){ $data=[]; foreach ($device_ids as $k=>$v){ $data[$k]['item_id']=$item_id; $data[$k]['device_id']=$v; } DB::beginTransaction(); DB::table('s_check_item_device')->where('item_id',$item_id)->delete(); $i= DB::table('s_check_item_device')->insert($data); if($i>0){ DB::commit(); return \Yz::Return(true, '绑定成功', []); }else{ DB::rollBack(); return \Yz::Return(false, '绑定失败'); } } public function Save($Info){ if(!empty($Info['id'])){ $Info['reservation_method']=implode(',', $Info['reservation_method']); $res=DB::table('s_check_item')->where('id',$Info['id'])->update($Info); if($res){ return \Yz::Return(true, '修改成功'); }else{ return \Yz::Return(false, '修改失败'); } }else{ return \Yz::Return(false, 'id不能为空'); } } }