ソースを参照

更新招考系统加分逻辑

sandm 1 年間 前
コミット
8ba5464fbe

+ 2 - 1
app/Admin/Controllers/Recruit/RecruitController.php

@@ -2331,7 +2331,7 @@ class RecruitController extends Controller
                 $header = ['姓名','性别','生日','头像','民族','籍贯','报考岗位','政治面貌','入党时间','职称或职业资格','现工作单位及职务','户籍所在地','学历','学校','学位','所学专业','通信地址','身份证号码','联系电话','电子邮箱','紧急联系人','紧急联系电话'];
             }
             if(in_array('expand_special',explode(',', $recruit->forms))){
-                $special = ['是否申请加分','符合哪一项加分条件','加分佐证材料'];
+                $special = ['是否申请加分','加分条件','累计加分值','加分佐证材料'];
                 $header = array_merge($header,$special);
             }
             if(in_array('detail',explode(',', $recruit->forms)) || in_array('internship',explode(',', $recruit->forms))){
@@ -2498,6 +2498,7 @@ class RecruitController extends Controller
                     $special = [
                         $v->point_apply == 0 ? '否' : '是',
                         $v->condition,
+                        $v->point,
                         implode("\r\n", $materials)
                     ];
                     $item = array_merge($item, $special);

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

@@ -943,61 +943,66 @@ class IndexController extends WebBaseController
             }
         }
 
-        if(!empty($post_info['limit']) && json_decode($post_info['limit'])){
-            //岗位限制条件的判断
-            $post_limit = json_decode($post_info['limit'],true);
-            if(is_array($post_limit)){
-                foreach($post_limit as $k => $v){
-                    if($k == 'birthday'){
-                        $value = str_replace('-','',$data[$k]);
-                    }else{
-                        $value = $data[$k];
-                    }
-                    switch ($v['op']){
-                        case '=':
-                            if($value != $v['value']){
-                                return response()->json(['status' => 0,'msg' => $v['msg']]);
-                            }
-                            break;
-                        case '>':
-                            if($value <= $v['value']){
-                                return response()->json(['status' => 0,'msg' => $v['msg']]);
-                            }
-                            break;
-                        case '>=':
-                            if($value < $v['value']){
-                                return response()->json(['status' => 0,'msg' => $v['msg']]);
-                            }
-                            break;
-                        case '<':
-                            if($value >= $v['value']){
-                                return response()->json(['status' => 0,'msg' => $v['msg']]);
-                            }
-                            break;
-                        case '<=':
-                            if($value > $v['value']){
-                                return response()->json(['status' => 0,'msg' => $v['msg']]);
-                            }
-                            break;
-                        case '!=':
-                            if($value == $v['value']){
-                                return response()->json(['status' => 0,'msg' => $v['msg']]);
-                            }
-                            break;
-                        case 'like':
-                            if(strpos($value,$v['value']) === false){
-                                return response()->json(['status' => 0,'msg' => $v['msg']]);
-                            }
-                            break;
-                        case 'in':
-                            if(strpos($v['value'],$value) === false){
-                                return response()->json(['status' => 0,'msg' => $v['msg']]);
-                            }
-                            break;
+        try{
+            if(!empty($post_info['limit']) && json_decode($post_info['limit'])){
+                //岗位限制条件的判断
+                $post_limit = json_decode($post_info['limit'],true);
+                if(is_array($post_limit)){
+                    foreach($post_limit as $k => $v){
+                        if($k == 'birthday'){
+                            $value = str_replace('-','',$data[$k]);
+                        }else{
+                            $value = $data[$k];
+                        }
+                        switch ($v['op']){
+                            case '=':
+                                if($value != $v['value']){
+                                    return response()->json(['status' => 0,'msg' => $v['msg']]);
+                                }
+                                break;
+                            case '>':
+                                if($value <= $v['value']){
+                                    return response()->json(['status' => 0,'msg' => $v['msg']]);
+                                }
+                                break;
+                            case '>=':
+                                if($value < $v['value']){
+                                    return response()->json(['status' => 0,'msg' => $v['msg']]);
+                                }
+                                break;
+                            case '<':
+                                if($value >= $v['value']){
+                                    return response()->json(['status' => 0,'msg' => $v['msg']]);
+                                }
+                                break;
+                            case '<=':
+                                if($value > $v['value']){
+                                    return response()->json(['status' => 0,'msg' => $v['msg']]);
+                                }
+                                break;
+                            case '!=':
+                                if($value == $v['value']){
+                                    return response()->json(['status' => 0,'msg' => $v['msg']]);
+                                }
+                                break;
+                            case 'like':
+                                if(strpos($value,$v['value']) === false){
+                                    return response()->json(['status' => 0,'msg' => $v['msg']]);
+                                }
+                                break;
+                            case 'in':
+                                if(strpos($v['value'],$value) === false){
+                                    return response()->json(['status' => 0,'msg' => $v['msg']]);
+                                }
+                                break;
+                        }
                     }
                 }
             }
+        }catch (\Exception $e){
+            return ['status' => 0, 'msg' => '数据有误,请联系客服'];
         }
+
         //前置审核 判断完成,先将数据入报名信息基础表
         //解析家庭成员数据
         $familys = $request->input('family');