| 
					
				 | 
			
			
				@@ -409,6 +409,105 @@ class TicketJob implements ShouldQueue 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     RecruitAppointInfo::where('id',$v['id'])->update($update); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            case 'computer': 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if(!$recruit->computer_ticket_content){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    return; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if(!array_key_exists('ex_start',$this->data) || !array_key_exists('ex_end',$this->data) || empty($this->data['ex_start']) || empty($this->data['ex_end'])){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    $computer_start = date("Y-m-d H:i:s",strtotime("+1 days",strtotime(date("Y-m-d",time())))); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    $computer_end = date("Y-m-d H:i:s",strtotime("+5 days",strtotime(date("Y-m-d",time())))); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                }else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    $computer_start = $this->data['ex_start']; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    $computer_end = $this->data['ex_end']; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                switch ($this->data['type']){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    case '0'://不需要额外数据 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        $list = RecruitAppointInfo::where('recruit_id',$this->recruit_id)->where('audit',3)->where('computer_ticket_status',-1)->where(function($query){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            $query->where('pen_audit',1) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                ->orWhere('pen_audit',3); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        })->orderBy('post_id','asc')->orderBy('created_at','asc')->get()->toArray(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        $post_data = RecruitPost::where('recruit_id',$this->recruit_id)->where('status',1)->selectRaw('id, CONCAT(code," ",name) as post')->pluck('post', 'id'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        if($list){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            foreach ($list as $k => $v){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                $item = [ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    'appoint_id' => $v['id'], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    'ex_type' => 3, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    'realname' => $v['realname'], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    'ex_title' => '', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    'card' => $v['card'], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    'ex_time' => '', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    'ex_address' => '', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    'post' => $post_data[$v['post_id']], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                ]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                $ticket = [ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    'appoint_id' => $v['id'], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    'ex_type' => 3, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    'ex_status' => 0, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    'ex_start' => $computer_start, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    'ex_end' => $computer_end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                ]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                RecruitTicket::create($ticket); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                $this->fetch($item,$recruit->computer_ticket_content, 'computer', $recruit); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    case '2': 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        $ticket_data_list = $this->data['list']; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        $list = RecruitAppointInfo::where('recruit_id',$this->recruit_id) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            ->where('audit',3) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            ->where('computer_audit',-1) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            ->where(function($query){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                $query->where('recruit_appoint_info.pen_audit',1) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    ->orWhere('recruit_appoint_info.pen_audit',3); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            ->orderBy('post_id','asc')->orderBy('created_at','asc')->get()->toArray(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        $post_data = RecruitPost::where('recruit_id',$this->recruit_id)->where('status',1)->selectRaw('id, CONCAT(code," ",name) as post')->pluck('post', 'id'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        foreach ($list as $k => $v){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            if(!array_key_exists($v['card'],$ticket_data_list)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                echo "{$v['realname']}_{$v['card']}_{$post_data[$v['post_id']]} 不在准考名单内\r\n"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                continue; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            $item = [ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                'realname' => $v['realname'], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                'ex_number' => array_key_exists('ex_number',$ticket_data_list[$v['card']]) ? $ticket_data_list[$v['card']]['ex_number'] : '', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                'card' => $v['card'], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                'post' => $post_data[$v['post_id']], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                'ex_address' => array_key_exists('ex_address',$ticket_data_list[$v['card']]) ? $ticket_data_list[$v['card']]['ex_address'] : '', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                'ex_time' => array_key_exists('ex_time',$ticket_data_list[$v['card']]) ? $ticket_data_list[$v['card']]['ex_time'] : '', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                'ex_subject' => array_key_exists('ex_subject',$ticket_data_list[$v['card']]) ? $ticket_data_list[$v['card']]['ex_subject'] : '', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                'ex_room' => array_key_exists('ex_room',$ticket_data_list[$v['card']]) ? $ticket_data_list[$v['card']]['ex_room'] : '', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                'ex_seat' => array_key_exists('ex_seat',$ticket_data_list[$v['card']]) ? $ticket_data_list[$v['card']]['ex_seat'] : '', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                'ex_ready_time' => array_key_exists('ex_ready_time',$ticket_data_list[$v['card']]) ? $ticket_data_list[$v['card']]['ex_ready_time'] : '', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                'extra1' => array_key_exists('extra1',$ticket_data_list[$v['card']]) ? $ticket_data_list[$v['card']]['extra1'] : '', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                'extra2' => array_key_exists('extra2',$ticket_data_list[$v['card']]) ? $ticket_data_list[$v['card']]['extra2'] : '', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                'extra3' => array_key_exists('extra3',$ticket_data_list[$v['card']]) ? $ticket_data_list[$v['card']]['extra3'] : '', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                'avatar' => $v['avatar'] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            ]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            $ticket = [ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                'appoint_id' => $v['id'], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                'ex_type' => 3, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                'ex_number' => $item['ex_number'], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                'ex_address' => array_key_exists('ex_address',$ticket_data_list[$v['card']]) ? $ticket_data_list[$v['card']]['ex_address'] : '', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                'ex_time' => array_key_exists('ex_time',$ticket_data_list[$v['card']]) ? $ticket_data_list[$v['card']]['ex_time'] : '', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                'ex_seat' => $item['ex_seat'], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                'ex_room' => $item['ex_room'], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                'ex_subject' => array_key_exists('ex_subject',$ticket_data_list[$v['card']]) ? $ticket_data_list[$v['card']]['ex_subject'] : '', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                'ex_status' => 0, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                'ex_start' => $computer_start, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                'ex_end' => $computer_end 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            ]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            RecruitTicket::create($ticket); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            $this->fetch($item,$recruit->computer_ticket_content, 'face', $recruit); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        //$this->pdf('pen',$recruit); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        Recruit::where('id',$this->recruit_id)->update(['computer_ticket_status' => 2]); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 |