|
@@ -260,7 +260,7 @@ class TicketJob implements ShouldQueue
|
|
|
'ex_subject' => array_key_exists('ex_subject',$ticket_data_list[$v['card']]) ? $ticket_data_list[$v['card']]['ex_subject'] : '',
|
|
|
'ex_status' => 0,
|
|
|
'ex_start' => $interview_start,
|
|
|
- 'ex_end' => $interview_start
|
|
|
+ 'ex_end' => $interview_end
|
|
|
];
|
|
|
RecruitTicket::create($ticket);
|
|
|
$this->fetch($item,$recruit->face_ticket_content, 'face', $recruit);
|
|
@@ -268,7 +268,105 @@ class TicketJob implements ShouldQueue
|
|
|
|
|
|
}
|
|
|
//$this->pdf('pen',$recruit);
|
|
|
- Recruit::where('id',$this->recruit_id)->update(['pen_ticket_status' => 2]);
|
|
|
+ Recruit::where('id',$this->recruit_id)->update(['face_ticket_status' => 2]);
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ break;
|
|
|
+ case 'reexamine':
|
|
|
+ if(!$recruit->reexamine_ticket_content){
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ if(empty($recruit->reexamine_start)){
|
|
|
+ $reexamine_start = $this->data['ex_start'];
|
|
|
+ $reexamine_end = $this->data['ex_end'];
|
|
|
+ }else{
|
|
|
+ $reexamine_start = $recruit->reexamine_start;
|
|
|
+ $reexamine_end = $recruit->reexamine_end;
|
|
|
+ }
|
|
|
+ switch ($this->data['type']){
|
|
|
+ case '0'://不需要额外数据
|
|
|
+ $list = RecruitAppointInfo::where('recruit_id',$this->recruit_id)->where('audit',3)->where('reexamine_audit',-1)->where(function($query){
|
|
|
+ $query->where('face_audit',1)
|
|
|
+ ->orWhere('face_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' => $reexamine_start,
|
|
|
+ 'ex_end' => $reexamine_end
|
|
|
+ ];
|
|
|
+ RecruitTicket::create($ticket);
|
|
|
+ $this->fetch($item,$recruit->reexamine_ticket_content, 'reexamine_audit', $recruit);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ break;
|
|
|
+ case '2':
|
|
|
+ $ticket_data_list = $this->data['list'];
|
|
|
+ $list = RecruitAppointInfo::where('recruit_id',$this->recruit_id)
|
|
|
+ ->where('audit',3)
|
|
|
+ ->where('reexamine_audit',-1)
|
|
|
+ ->where(function($query){
|
|
|
+ $query->where('recruit_appoint_info.face_audit',1)
|
|
|
+ ->orWhere('recruit_appoint_info.face_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' => $reexamine_start,
|
|
|
+ 'ex_end' => $reexamine_end
|
|
|
+ ];
|
|
|
+ RecruitTicket::create($ticket);
|
|
|
+ $this->fetch($item,$recruit->reexamine_ticket_content, 'reexamine_audit', $recruit);
|
|
|
+
|
|
|
+ }
|
|
|
+ //$this->pdf('pen',$recruit);
|
|
|
+ Recruit::where('id',$this->recruit_id)->update(['reexamine_ticket_status' => 2]);
|
|
|
break;
|
|
|
}
|
|
|
break;
|
|
@@ -337,7 +435,7 @@ class TicketJob implements ShouldQueue
|
|
|
// Storage::makeDirectory("public/recruit/ticket/pdf/{$date}/{$name}/{$type}");
|
|
|
// }
|
|
|
|
|
|
- $filename = $date . '_' . $data['realname'] . '_' . $data['card'] . '_' . $data['post'];
|
|
|
+ $filename = sha1($date . '_' . $data['realname'] . '_' . $data['card'] . '_' . $data['post']);
|
|
|
$word_url = base_path() . "/storage/app/public/recruit/ticket/word/{$date}/{$name}/{$type}/" . $filename . '.docx';
|
|
|
$templateProcessor->saveAs($word_url);//另存为
|
|
|
// $pdf_url = base_path() . "/storage/app/public/recruit/ticket/pdf/{$date}/{$name}/{$type}";
|