Browse Source

复试准考证打印

sandm 3 years ago
parent
commit
d06355c102

+ 56 - 0
app/Http/Controllers/Web/Recruit/IndexController.php

@@ -111,6 +111,15 @@ class IndexController extends WebBaseController
             }else{
                 $appoint_info->face_ticket = 0;
             }
+
+            //复试
+            $reexamine_ticket = RecruitTicket::where('appoint_id',$appoint_info->id)->where('ex_type',4)->first();
+
+            if($reexamine_ticket && $appoint_info->reexamine_audit == -1){
+                $appoint_info->reexamine_ticket = 1;
+            }else{
+                $appoint_info->reexamine_ticket = 0;
+            }
         }else{
             $appoint_info = new \stdClass();
             $appoint_info->pen_audit = 0;
@@ -1255,4 +1264,51 @@ class IndexController extends WebBaseController
         }
     }
 
+    public function reexamine_ticket(Request $request)
+    {
+        $user = $this->getUser();
+        if (!empty($user)) {
+            $uid = $user->id;
+        } else {
+            return $this->showMessage('请登录!', route('home'), true, '上一页', '3');
+        }
+        $recruit_id = $request->input('recruit_id');
+        $appoint_info = RecruitAppointInfo::where('uid',$uid)->where('recruit_id',$recruit_id)->first();
+        if($appoint_info){
+            $reexamine_ticket = RecruitTicket::where('appoint_id',$appoint_info->id)->where('ex_type',4)->first();
+            if($reexamine_ticket){
+                $time = time();
+                if(strtotime($reexamine_ticket->ex_start) < $time && strtotime($reexamine_ticket->ex_end) > $time){
+                    RecruitTicket::where('id',$reexamine_ticket->id)->update(['ex_status' => 1]);
+                    $recruit = Recruit::where('id',$recruit_id)->first();
+                    $post_data = RecruitPost::where('recruit_id',$recruit_id)->where('status',1)->selectRaw('id, CONCAT(code," ",name) as post')->pluck('post', 'id');
+                    $name = $recruit->name_en;
+                    $date = date("Y-m-d",strtotime($recruit->created_at));
+                    $filename = $date . '_' . $appoint_info->realname . '_' . $appoint_info->card . '_' . $post_data[$appoint_info->post_id].'_create';
+                    $file = base_path() . "/storage/app/public/recruit/ticket/pdf/{$date}/{$name}/face/" . $filename . '.pdf';
+                    if(file_exists($file)){
+                        header('Content-Description: File Transfer');
+                        header('Content-Type: application/octet-stream');
+                        header('Content-Disposition: attachment; filename='.basename($file));
+                        header('Content-Transfer-Encoding: binary');
+                        header('Expires: 0');
+                        header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
+                        header('Pragma: public');
+                        header('Content-Length: ' . filesize($file));
+                        ob_clean();   //重要的就是这个函数的调用, 清空但不关闭输出缓存, 否则下载的文件头两个字符会是0a
+                        flush();
+                        readfile($file);
+                    }
+                }else{
+                    return $this->showMessage('非打印时间!', route('home'), true, '上一页', '3');
+                }
+            }else{
+                return $this->showMessage('暂无准考证可以打印!', route('home'), true, '上一页', '3');
+            }
+
+        }else{
+            return $this->showMessage('暂无准考证可以打印!', route('home'), true, '上一页', '3');
+        }
+    }
+
 }

+ 65 - 2
public/themes/default/views/app/recruit/show.blade.php

@@ -179,7 +179,7 @@
                 <strong><span style="font-family: 微软雅黑;letter-spacing: 0;font-size: 16px">本人承诺:</span></strong><span style="font-family: 微软雅黑;letter-spacing: 0;font-size: 16px">如因隐瞒或虚假填报引起检疫传染病传播或者有传播严重危险而影响公共安全的后果,本人将承担相应的法律责任,自愿接受《中华人民共和国刑法》《治安管理处罚法》《传染病防治法》和《关于依法惩治妨害新型冠状病毒感染肺炎疫情防控违法犯罪的意见》等法律法规的处罚和制裁。</span>
             </p>
             <p style="margin-top:8px;margin-left:0;text-indent:0;text-autospace:ideograph-numeric;text-align:center;line-height:37px">
-                <span style="font-family: 微软雅黑;letter-spacing: 0;font-size: 18px"><input type="checkbox" class="agree_commit" /> 我已知晓上述内容并承诺遵守</span>
+                <span style="font-family: 微软雅黑;letter-spacing: 0;font-size: 18px"><input type="checkbox" class="agree_commit_normal" /> 我已知晓上述内容并承诺遵守</span>
             </p>
             {{--            <p style="margin-top:8px;margin-left:0;text-indent:0;text-autospace:ideograph-numeric;text-align:center;line-height:37px">--}}
             {{--                <button class="print" disabled="disabled">打印准考证</button>--}}
@@ -763,7 +763,7 @@
                             border: false,
                             btns: ['打印准考证','取消'],
                             yes: function(){
-                                if($($(".agree_commit0")[1]).prop('checked')){
+                                if($($(".agree_commit_normal")[1]).prop('checked')){
                                     window.location.href = "{!! route('recruit.face_ticket',['recruit_id'=>$recruit->id]) !!}";
                                 }else{
                                     alert('请阅读并承诺遵守《安全考试承诺书》');
@@ -800,6 +800,69 @@
                 }
             });
 
+            //复试通知书
+            $("#reexamine_ticket").click(function (){
+                var isVisitor = "{{$uid}}";
+                var post_id = "{{$appoint_info->post_id}}";
+                var isVisitorutype = "{{$utype}}"; //判断是企业还是个人
+                var reexamine_ticket = "{{$appoint_info->reexamine_ticket}}";
+                if ((isVisitor > 0)) {
+                    if (isApply != 1) {
+                        disapperTooltip("remind", "抱歉,您没有报名!");
+                        return false;
+                    }
+                    if(reexamine_ticket == 0){
+                        disapperTooltip("remind", "您暂无可打印的准考证!");
+                        return false;
+                    }
+
+                    if (isVisitorutype == '1') {
+                        disapperTooltip("remind", "只有登录个人会员才可打印!");
+                        return false;
+                    } else {
+                        var qsDialog = $(this).dialog({
+                            loading: true,
+                            header: false,
+                            border: false,
+                            btns: ['打印准考证','取消'],
+                            yes: function(){
+                                if($($(".agree_commit_normal")[1]).prop('checked')){
+                                    window.location.href = "{!! route('recruit.reexamine_ticket',['recruit_id'=>$recruit->id]) !!}";
+                                }else{
+                                    alert('请阅读并承诺遵守《安全考试承诺书》');
+                                }
+                            }
+                        });
+                        qsDialog.setContent($('#commit0').html());
+
+                    }
+                } else {
+                    var qsDialog = $(this).dialog({
+                        loading: true,
+                        footer: false,
+                        header: false,
+                        border: false,
+                        backdrop: false
+                    });
+                    var loginUrl = "{{route('loginDig')}}";
+                    $.post(loginUrl, {_token:"{{csrf_token()}}",type:'per','redirect_url':"{{ route('recruit.index.show',['id'=>$recruit->id]) }}"},function(result){
+                        if(result.status==1){
+                            qsDialog.hide();
+                            var qsDialogSon = $(this).dialog({
+                                title: '会员登录',
+                                content: result.html,
+                                footer: false,
+                                border: false
+                            });
+                            qsDialogSon.setInnerPadding(false);
+                        } else {
+                            qsDialog.hide();
+                            disapperTooltip('remind','操作失败');
+                        }
+                    });
+                }
+            });
+
         });
 
         $(".right_nav ul li a").click(function () {

+ 1 - 0
routes/web.php

@@ -91,6 +91,7 @@ Route::group([
     $router->get('pen_ticket','Web\Recruit\IndexController@pen_ticket')->name('recruit.pen_ticket');
     $router->get('check_ticket','Web\Recruit\IndexController@check_ticket')->name('recruit.check_ticket');
     $router->get('face_ticket','Web\Recruit\IndexController@face_ticket')->name('recruit.face_ticket');
+    $router->get('reexamine_ticket','Web\Recruit\IndexController@reexamine_ticket')->name('recruit.reexamine_ticket');
 
     $router->post('check_user_basic_info','Web\Recruit\IndexController@checkUserBasicInfo')->name('recruit.check_user_basic_info');
     //招考招聘