浏览代码

对接接口

linwu 4 月之前
父节点
当前提交
cb251ef319

+ 6 - 0
app/Http/Controllers/Mobile/Active/Spring1Controller.php

@@ -101,6 +101,12 @@ class Spring1Controller extends MobileBaseController
 
     public function uploadfile(Request $request)
     {
+        $res['status'] = 1;
+        $res['filename'] = '1.xls';
+        $res['path'] = "/storage/1.xls";
+
+        return response()->json($res);
+
         $file = $request->file('files');
         if($file ->isValid()) { //判断文件是否存在
             //获取文件的扩展名

+ 121 - 13
app/Http/Controllers/Mobile/Health/RecruitController.php

@@ -4,6 +4,9 @@ namespace App\Http\Controllers\Mobile\Health;
 
 use App\Http\Controllers\Mobile\MobileBaseController;
 use App\Models\Jobs;
+use App\Models\JyyxAppoint;
+use App\Models\PostAppoint;
+use App\Models\QjwjAppoint;
 use App\Services\Common\CategoryService;
 use App\Services\Company\JobsService;
 use Illuminate\Http\Request;
@@ -31,15 +34,15 @@ class RecruitController extends MobileBaseController
     public function list(Request $request)
     {
         //获取分类
-        $filter_where   = [
+        $filter_where = [
             'AIX_education'  => 100,
             'AIX_experience' => 100,
             'AIX_wage'       => 100,
         ];
-        $categories     = $this->categoryService->getCategories($filter_where);     //过滤条件信息
+        $categories   = $this->categoryService->getCategories($filter_where);     //过滤条件信息
 
         //默认参数
-        $param_array = ['keyword', 'wage', 'experience','education'];
+        $param_array = ['health_type', 'keyword', 'wage', 'experience', 'education'];
         $params      = [];
         if ($request->all()) {
             foreach ($request->all() as $k => $v) {
@@ -50,8 +53,8 @@ class RecruitController extends MobileBaseController
         }
 
         //查询条件
-        $size    = 10;
-        $where   = [
+        $size  = 10;
+        $where = [
             ['is_health', '=', 1],
         ];
         if (!empty($params['keyword'])) {
@@ -66,6 +69,12 @@ class RecruitController extends MobileBaseController
         if (!empty($params['education'])) {
             $where[] = ['education', '=', $params['education']];
         }
+        if (!empty($params['health_type'])) {
+            $where[] = ['health_type', '=', $params['health_type']];
+        } else {
+            $where[]               = ['health_type', '=', 1];
+            $params['health_type'] = 1;
+        }
 
         $list = Jobs::where($where)->orderBy('updated_at', 'desc')->paginate($size);
         if ($list->total() > 0) {
@@ -102,33 +111,132 @@ class RecruitController extends MobileBaseController
         return view('mobile.app.health.recruit.will');
     }
 
+    public function willSave(Request $request)
+    {
+        $field = ['realname' => '姓名', 'sex' => '性别', 'mobile' => '联系方式', 'attachment' => '简历', 'remark' => '求职意向'];
+        $data  = $request->only(array_keys($field));
+        foreach ($field as $k => $v) {
+            if (empty($data[$k])) {
+                return response()->json(['status' => 0, 'msg' => $v . '不能为空']);
+            }
+        }
+
+        $check = JyyxAppoint::where('mobile', $data['mobile'])->first();
+        if (!empty($check)) {
+            return response()->json(['status' => 0, 'msg' => '您已提交过,请勿重复提交']);
+        }
+
+        JyyxAppoint::create($data);
+
+        return response()->json(['status' => 1]);
+    }
+
+
     public function quanji()
     {
-        return view('mobile.app.health.recruit.quanji');
+        $district = $this->categoryService->getDefaultDistrict();
+        return view('mobile.app.health.recruit.quanji', [
+            'defaultCity' => $district->defaultCity,
+        ]);
+    }
+
+    public function quanjiSave(Request $request)
+    {
+        $field = [
+            'realname'     => '姓名',
+            'sex'          => '性别',
+            'mobile'       => '联系方式',
+            'birthday'     => '出生年份',
+            'native_place' => '籍贯',
+            'education'    => '学历',
+            'school'       => '毕业学校',
+            'dep'          => '院系',
+            'pro_type'     => '专业',
+            'pro_text'     => '具体专业',
+            'title'        => '在校任职',
+            'attachment'   => '简历',
+            'remark'       => '求职意向',
+        ];
+        $data  = $request->only(array_keys($field));
+        foreach ($field as $k => $v) {
+            if (empty($data[$k])) {
+                return response()->json(['status' => 0, 'msg' => $v . '不能为空']);
+            }
+        }
+
+        $check = QjwjAppoint::where('mobile', $data['mobile'])->first();
+        if (!empty($check)) {
+            return response()->json(['status' => 0, 'msg' => '您已提交过,请勿重复提交']);
+        }
+
+        QjwjAppoint::create($data);
+
+        return response()->json(['status' => 1]);
     }
 
     public function show(Request $request)
     {
-        $job_id = $request->input('id');
-        $job_rst = $this->jobsService->getJobInfo(array('id'=>$job_id));    //获取job信息
+        $job_id  = $request->input('id');
+        $job_rst = $this->jobsService->getJobInfo(['id' => $job_id]);    //获取job信息
         if ($job_rst['status'] == 0) {
             $back_url = \Illuminate\Support\Facades\URL::previous();
             return $this->showMessage($job_rst['error'], $back_url, true, '上一页', '3');
         }
         $job_info = $job_rst['job'];
 
-        $return_data = array(
-            'info'             => $job_info,
-        );
+        $return_data = [
+            'info' => $job_info,
+        ];
 
-        return view('mobile.app.health.recruit.show',$return_data);
+        return view('mobile.app.health.recruit.show', $return_data);
     }
 
-    public function apply()
+    public function apply(Request $request)
     {
+        $job_id  = $request->input('id');
+        $job_rst = $this->jobsService->getJobInfo(['id' => $job_id]);    //获取job信息
+        if ($job_rst['status'] == 0) {
+            $back_url = \Illuminate\Support\Facades\URL::previous();
+            return $this->showMessage($job_rst['error'], $back_url, true, '上一页', '3');
+        }
+        $job_info = $job_rst['job'];
+
         $district = $this->categoryService->getDefaultDistrict();
+
         return view('mobile.app.health.recruit.apply', [
             'defaultCity' => $district->defaultCity,
+            'info'        => $job_info,
         ]);
     }
+
+    public function applySave(Request $request)
+    {
+        $field = [
+            'realname'     => '姓名',
+            'sex'          => '性别',
+            'mobile'       => '联系方式',
+            'birthday'     => '出生年份',
+            'native_place' => '籍贯',
+            'education'    => '学历',
+            'attachment'   => '简历',
+            'remark'       => '求职意向',
+            'job_id'       => '岗位',
+            'company_id'   => '公司',
+        ];
+        $data  = $request->only(array_keys($field));
+        foreach ($field as $k => $v) {
+            if (empty($data[$k])) {
+                return response()->json(['status' => 0, 'msg' => $v . '不能为空']);
+            }
+        }
+
+        $check = PostAppoint::where('job_id', $data['job_id'])->where('mobile', $data['mobile'])->first();
+        if (!empty($check)) {
+            return response()->json(['status' => 0, 'msg' => '您已提交过,请勿重复提交']);
+        }
+
+        PostAppoint::create($data);
+
+        return response()->json(['status' => 1]);
+    }
 }

+ 7 - 2
app/Http/Controllers/Mobile/Health/TeachController.php

@@ -52,8 +52,13 @@ class TeachController extends MobileBaseController
 
     public function save(PresentationAppointValidatorRequest $request)
     {
-        $data = $request->only('pid', 'avatar', 'realname', 'sex', 'mobile', 'birthday', 'native_place', 'fresh', 'education', 'school', 'dep', 'pro_type', 'pro_text', 'attachment');
-
+        $field = ['pid', 'avatar', 'realname', 'sex', 'mobile', 'birthday', 'native_place', 'fresh', 'education', 'school', 'dep', 'pro_type', 'pro_text', 'attachment'];
+        $data  = $request->only($field);
+        foreach ($field as $k => $v) {
+            if (empty($data[$k])) {
+                return response()->json(['status' => 0, 'msg' => $v . '不能为空']);
+            }
+        }
         $check = PresentationAppoint::where('pid', $data['pid'])->where('mobile', $data['mobile'])->first();
         if (!empty($check)) {
             return response()->json(['status' => 0, 'msg' => '您已提交过,请勿重复提交']);

+ 1 - 1
public/themes/default/views/mobile/app/health/gongzhonghao/index.blade.php

@@ -24,7 +24,7 @@
         <div class="headernav font18">
             <div class="title">
                 <div class="n-tit-box">
-                    晋资讯
+                    晋资讯
                 </div>
                 <div class="return js-back for-event" data-href="{{route('mobile.health.index')}}"></div>
             </div>

+ 5 - 5
public/themes/default/views/mobile/app/health/index.blade.php

@@ -72,17 +72,17 @@
         <a href="{{route('mobile.health.recruit.index')}}" class="nav yellow">招聘列表</a>
         <a href="{{route('mobile.health.teach.index')}}" class="nav purple">宣讲会/招聘会报名</a>
         <a href="https://lw_test.jinjianghc.com/mobile/jfm/policy1.html" class="nav green">政策服务</a>
-        <a href="{{route('mobile.health.recruit.quanji')}}" class="nav black">泉籍卫计人员</a>
+        <a href="{{route('mobile.health.recruit.quanji')}}" class="nav black">泉籍卫计人员</a>
     </div>
 
 <!--新闻-->
 <div class="module">
     <div class="module-title font14">
-        <a href="javascript:;" class="module-title-nav font14 active f-left" data-id="emergency">引才动态</a>
-        <a href="javascript:;" class="module-title-nav font14 f-left" data-id="gongzhonghao">晋卫资讯</a>
+        <a href="javascript:;" class="module-title-nav font14 active f-left" data-id="gongzhonghao">晋江资讯</a>
+        <a href="javascript:;" class="module-title-nav font14 f-left" data-id="emergency">引才动态</a>
         <div class="clear"></div>
     </div>
-    <div class="mobile_index_news module-box" id="emergency">
+    <div class="mobile_index_news module-box" id="emergency" style="display: none;">
         <ul>
             <li>
                 @foreach($attract_list as $v)
@@ -92,7 +92,7 @@
         <div onclick="window.location='{{route("mobile.health.attract.index")}}';" style="text-align:center;height:.8rem;line-height:.8rem;background:#fff;">查看更多</div>
         </ul>
     </div>
-    <div class="mobile_index_news module-box" id="gongzhonghao" style="display: none;">
+    <div class="mobile_index_news module-box" id="gongzhonghao">
         <ul>
             <li>
                 @foreach($gongzhonghao_list as $v)

+ 139 - 214
public/themes/default/views/mobile/app/health/recruit/apply.blade.php

@@ -31,206 +31,121 @@
         </div>
     </div>
 
-    <div class="list_height plist-txt qs-relative">
-        <div class="pic"></div>
-        <div class="tit font14">简历照片</div>
-        <div class="describe font13">
-            <div class="avatar">
-                <img id="avatars" src="{{asset('themes/default/assets/mobile/images/no_photo_male.png')}}">
+    <form action="" id="form">
+        <input type="hidden" name="job_id" value="{{$info->id}}">
+        <input type="hidden" name="company_id" value="{{$info->company_id}}">
+        <div class="list_height plist-txt notarrow">
+            <div class="pic"></div>
+            <div class="tit font14">姓名<span class="font_red_light">*</span></div>
+            <div class="describe font13">
+                <input type="text" id="realname" name="realname" placeholder="请输入姓名" value="">
             </div>
+            <div class="arrow"></div>
+            <div class="clear"></div>
         </div>
-        <div class="arrow"></div>
-        <div class="clear"></div>
-        <input type="file" id="browseFile" class="browseFile">
-    </div>
-    <div class="list_height plist-txt notarrow">
-        <div class="pic"></div>
-        <div class="tit font14">姓名<span class="font_red_light">*</span></div>
-        <div class="describe font13">
-            <input type="text" id="fullname" placeholder="请输入姓名" value="">
-        </div>
-        <div class="arrow"></div>
-        <div class="clear"></div>
-    </div>
-    <div class="list_height plist-txt notarrow">
-        <div class="pic"></div>
-        <div class="tit font14">性别<span class="font_red_light">*</span></div>
-        <div id="sex" class="describe font13">
-            <div class="radio-group x2">
-                <div class="radio-cell">
-                    <label for="radio4">男</label>
-                    <input id="radio4" name="sex" type="radio" value="1" title="男" checked="checked">
-                </div>
-                <div class="radio-cell">
-                    <label for="radio5">女</label>
-                    <input id="radio5" name="sex" type="radio" value="2" title="女">
+        <div class="list_height plist-txt notarrow">
+            <div class="pic"></div>
+            <div class="tit font14">性别<span class="font_red_light">*</span></div>
+            <div id="sex" class="describe font13">
+                <div class="radio-group x2">
+                    <div class="radio-cell">
+                        <label for="radio4">男</label>
+                        <input id="radio4" name="sex" type="radio" value="1" title="男" checked="checked">
+                    </div>
+                    <div class="radio-cell">
+                        <label for="radio5">女</label>
+                        <input id="radio5" name="sex" type="radio" value="0" title="女">
+                    </div>
+                    <div class="clear"></div>
                 </div>
-                <div class="clear"></div>
             </div>
+            <div class="arrow"></div>
+            <div class="clear"></div>
         </div>
-        <div class="arrow"></div>
-        <div class="clear"></div>
-    </div>
-    <div class="list_height plist-txt notarrow">
-        <div class="pic"></div>
-        <div class="tit font14">联系方式<span class="font_red_light">*</span></div>
-        <div class="describe font13">
-            <input type="text" id="mobile" name="mobile" placeholder="请输入联系方式"  value="">
-        </div>
-        <div class="arrow"></div>
-        <div class="clear"></div>
-    </div>
-    <div class="list_height plist-txt">
-        <div class="pic"></div>
-        <div class="tit font14">出生年份<span class="font_red_light">*</span></div>
-        <div class="describe font13">
-            <span class="for-select"></span>
-            <select id="birthdate" name="birthdate">
-                <option value="">请选择</option>
-                <option value="2003">2003年</option>
-                <option value="2001年">2001年</option>
-                <option value="2000年">2000年</option>
-                <option value="1999年">1999年</option>
-                <option value="1998年">1998年</option>
-                <option value="1997年">1997年</option>
-                <option value="1996年">1996年</option>
-                <option value="1995年">1995年</option>
-                <option value="1994年">1994年</option>
-                <option value="1993年">1993年</option>
-                <option value="1992年">1992年</option>
-                <option value="1991年">1991年</option>
-            </select>
+        <div class="list_height plist-txt notarrow">
+            <div class="pic"></div>
+            <div class="tit font14">联系方式<span class="font_red_light">*</span></div>
+            <div class="describe font13">
+                <input type="text" id="mobile" name="mobile" placeholder="请输入联系方式"  value="">
+            </div>
+            <div class="arrow"></div>
+            <div class="clear"></div>
         </div>
-        <div class="arrow"></div>
-        <div class="clear"></div>
-    </div>
-
-    <div class="list_height plist-txt js-actionParent">
-        <div class="pic"></div>
-        <div class="tit font14">籍贯<span class="font_red_light">*</span></div>
-        <div class="describe font13 qs-temp js-showActionSheet" data-type="city2" data-base="QS_city_parent" data-source="QS_city" data-multiple="false" data-num="0" data-link="false" data-level="3" data-addjob="true">
-            <span class="qs-temp-txt-city2" data-otxt="">请选择</span>
-            <input class="qs-temp-code-city2" name="householdaddress" id="householdaddress" type="hidden" value="">
+        <div class="list_height plist-txt notarrow">
+            <div class="pic"></div>
+            <div class="tit font14">出生年份<span class="font_red_light">*</span></div>
+            <div class="describe font13">
+                <input readonly required id="birthday" name="birthday" type="text" placeholder="请选择年月日" value="">
+            </div>
+            <div class="arrow"></div>
+            <div class="clear"></div>
         </div>
-        <div class="arrow"></div>
-        <div class="clear"></div>
-        <!--BEGIN actionSheet-->
-        <div>
-            <div class="qs-mask" style="display: none"></div>
-            <div class="qs-actionsheet js-actionsheet">
-                <div class="qs-actionsheet-menu">
-                    <div class="con-filter">
-                        <div class="f-selected-group f-selected-group-city2">
-                            <div class="s-bar">
-                                <div class="qs-btn qs-btn-inline qs-btn-small qs-btn-border-gray qs-left js-cancelActionSheet">取消</div>
-                                <div class="clear"></div>
+        <div class="list_height plist-txt js-actionParent">
+            <div class="pic"></div>
+            <div class="tit font14">籍贯<span class="font_red_light">*</span></div>
+            <div class="describe font13 qs-temp js-showActionSheet" data-type="city2" data-base="QS_city_parent" data-source="QS_city" data-multiple="false" data-num="0" data-link="false" data-level="3" data-addjob="true">
+                <span class="qs-temp-txt-city2" data-otxt="">请选择</span>
+                <input class="qs-temp-code-city2" name="native_place" id="native_place" type="hidden" value="">
+            </div>
+            <div class="arrow"></div>
+            <div class="clear"></div>
+            <!--BEGIN actionSheet-->
+            <div>
+                <div class="qs-mask" style="display: none"></div>
+                <div class="qs-actionsheet js-actionsheet">
+                    <div class="qs-actionsheet-menu">
+                        <div class="con-filter">
+                            <div class="f-selected-group f-selected-group-city2">
+                                <div class="s-bar">
+                                    <div class="qs-btn qs-btn-inline qs-btn-small qs-btn-border-gray qs-left js-cancelActionSheet">取消</div>
+                                    <div class="clear"></div>
+                                </div>
+                                <div class="s-list qs-hidden"></div>
                             </div>
-                            <div class="s-list qs-hidden"></div>
+                            <div class="f-box f-box-city2"></div>
                         </div>
-                        <div class="f-box f-box-city2"></div>
                     </div>
                 </div>
             </div>
         </div>
-    </div>
-    <div class="list_height plist-txt">
-        <div class="pic"></div>
-        <div class="tit font14">是否应届<span class="font_red_light">*</span></div>
-        <div class="describe font13">
-            <span class="for-select"></span>
-            <select id="birthdate" name="birthdate">
-                <option value="">请选择</option>
-                <option value="1">是</option>
-                <option value="2">否</option>
-            </select>
-        </div>
-        <div class="arrow"></div>
-        <div class="clear"></div>
-    </div>
-    <div class="list_height plist-txt">
-        <div class="pic"></div>
-        <div class="tit font14">当前学历<span class="font_red_light">*</span></div>
-        <div class="describe font13">
-            <span class="for-select"></span>
-            <select id="education" name="education">
-                <option value="">请选择</option>
-                @foreach($category['other']['AIX_education'] as $key => $val )
-                    <option value="{{ explode(',',$val)[0] }}" >{{ explode(',',$val)[1] }}</option>
-                @endforeach
-            </select>
-        </div>
-        <div class="arrow"></div>
-        <div class="clear"></div>
-    </div>
-    <div class="list_height plist-txt notarrow">
-        <div class="pic"></div>
-        <div class="tit font14">毕业学校<span class="font_red_light">*</span></div>
-        <div class="describe font13">
-            <input type="text" id="school" name="school" placeholder="请输入毕业学校"  value="">
-        </div>
-        <div class="arrow"></div>
-        <div class="clear"></div>
-    </div>
-    <div class="list_height plist-txt notarrow">
-        <div class="pic"></div>
-        <div class="tit font14">院系<span class="font_red_light">*</span></div>
-        <div class="describe font13">
-            <input type="text" id="xi" name="xi" placeholder="请输入院系"  value="">
-        </div>
-        <div class="arrow"></div>
-        <div class="clear"></div>
-    </div>
-    <div class="list_height plist-txt js-actionParent">
-        <div class="pic"></div>
-        <div class="tit font14">专业</div>
-        <div class="describe font13 qs-temp-level-major js-showActionSheet" data-type="major" data-base="QS_major_parent" data-source="QS_major" data-multiple="false" data-num="0" data-link="false">
-            <span class="qs-temp-txt-major" data-otxt="请选择">请选择</span>
-            <input class="qs-temp-code-major" name="major" id="major" type="hidden" value="" />
+        <div class="list_height plist-txt">
+            <div class="pic"></div>
+            <div class="tit font14">学历<span class="font_red_light">*</span></div>
+            <div class="describe font13">
+                <span class="for-select"></span>
+                <select id="education" name="education">
+                    <option value="">请选择</option>
+                    @foreach($category['other']['AIX_education'] as $key => $val )
+                        <option value="{{ explode(',',$val)[0] }}" >{{ explode(',',$val)[1] }}</option>
+                    @endforeach
+                </select>
+            </div>
+            <div class="arrow"></div>
+            <div class="clear"></div>
         </div>
-        <div class="arrow"></div>
-        <div class="clear"></div>
-        <!--BEGIN actionSheet-->
-        <div>
-            <div class="qs-mask" style="display: none"></div>
-            <div class="qs-actionsheet js-actionsheet">
-                <div class="qs-actionsheet-menu">
-                    <div class="con-filter">
-                        <div class="f-selected-group f-selected-group-major">
-                            <div class="s-bar">
-                                <div class="qs-btn qs-btn-inline qs-btn-small qs-btn-border-gray qs-left js-cancelActionSheet">取消</div>
-                                <div class="clear"></div>
-                            </div>
-                            <div class="s-list qs-hidden"></div>
-                        </div>
-                        <div class="f-box f-box-major"></div>
-                    </div>
-                </div>
+        <div class="list_height form-item">
+            <div class="pic"></div>
+            <div class="tit font14">简历<span class="font_red_light">*</span></div>
+            <div class="describe font13">
+                <span id="uploadPicButton">双击上传文件</span>
+                <input type="file" id="uploadFile" accept="application/msword,application/vnd.openxmlformats-officedocument.wordprocessingml.document,application/vnd.ms-excel,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,application/vnd.ms-powerpoint,application/vnd.openxmlformats-officedocument.presentationml.presentation,text/plain,application/pdf" style="display: none;">
             </div>
+            <div class="arrow"></div>
+            <div class="clear"></div>
+            <input type="hidden" id="attachment" name="attachment" value="">
         </div>
-    </div>
-    <div class="list_height plist-txt notarrow">
-        <div class="pic"></div>
-        <div class="tit font14">具体专业<span class="font_red_light">*</span></div>
-        <div class="describe font13">
-            <input type="text" id="ye" name="ye" placeholder="请输入具体专业"  value="">
+        <div class="split-block"></div>
+        <div class="textarea-txt">
+            <textarea id="remark" name="remark" placeholder="请简述一下你的求职意向,可使用人单位对你了解更多!" class="font13"></textarea>
         </div>
-        <div class="arrow"></div>
-        <div class="clear"></div>
-    </div>
-    <div class="list_height form-item">
-        <div class="pic"></div>
-        <div class="tit font14">简历</div>
-        <div class="describe font13">
-            <span id="uploadPicButton">双击上传文件</span>
-            <input type="file" id="uploadFile" accept="application/msword,application/vnd.openxmlformats-officedocument.wordprocessingml.document,application/vnd.ms-excel,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,application/vnd.ms-powerpoint,application/vnd.openxmlformats-officedocument.presentationml.presentation,text/plain,application/pdf" style="display: none;">
+        <div class="bottom_txt font12">
+            <div class="llt">最多可输入1000字</div>
+            <div class="rlt clear-content">清空</div>
         </div>
-        <div class="arrow"></div>
-        <div class="clear"></div>
-        <input type="hidden" id="attachment" name="attachment" value="">
-    </div>
-    <div class="btn-spacing">
-        <a id="btnSave" class="qs-btn qs-btn-blue qs-btn-linear-orange bd4 font16 b-big">保存</a>
-    </div>
+        <div class="btn-spacing">
+            <button type="submit" class="qs-btn qs-btn-blue qs-btn-linear-orange bd4 font16 b-big">保存</button>
+        </div>
+    </form>
 @endsection
 
 @section('script')
@@ -238,7 +153,16 @@
     <script src="{{ theme_asset('mobile/js/qsCategory.js') }}"></script>
     <script src="{{ theme_asset('mobile/js/LocalResizeIMG.js') }}"></script>
     <script src="{{ theme_asset('mobile/js/nprogress.js') }}"></script>
+    <script src="{{ theme_asset('mobile/js/rolldate.min.js') }}"></script>
     <script>
+        new Rolldate({
+            el: '#birthday',
+            format: 'YYYY-MM-DD',
+            beginYear: 1900,
+            endYear: 2100,
+            value: "",
+        })
+
         var default_district = '<?php echo $defaultCity;?>';
         var str_major = '<?php echo json_encode($category['major']['first']);?>';
         var QS_major_parent = eval(str_major);
@@ -292,35 +216,6 @@
                 }
             });
         });
-        $('#browseFile').localResizeIMG({
-            width: 400,
-            quality: 1,
-            success: function (result) {
-                var submitData={
-                    pic1:result.clearBase64,
-                };
-                NProgress.start();
-                $.ajax({
-                    headers: {'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')},
-                    type: "POST",
-                    url: "{{ route($sub_site.'mobile.person.upload.head') }}",
-                    data: submitData,
-                    dataType:"json",
-                    success: function(result){
-                        if(result.status == 1){
-                            $('#avatars').attr('src','/storage/'+result.data);
-                        }else{
-                            qsToast({type:2,context:'上传失败!'});
-                        }
-                        NProgress.done();
-                    },
-                    complete :function(XMLHttpRequest, textStatus){},
-                    error:function(XMLHttpRequest, textStatus, errorThrown){ //上传失败
-                        qsToast({type:2,context: '头像上传失败!'});
-                    }
-                });
-            }
-        });
 
         $('#uploadPicButton').click(function(){
             $('#uploadFile').click();
@@ -350,9 +245,39 @@
             });
         });
 
-        $('#btnSave').click(function() {
-            alert('投递成功');
-            location.href = "{{route('mobile.health.index')}}";
+        $('.clear-content').on('click',function(){
+            $('#remark').val('');
+        });
+        $('#form').on('submit', function() {
+            var data = $(this).serialize();
+            $.ajax({
+                headers: {'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')},
+                url: "{{ route('mobile.health.recruit.apply.save') }}",
+                type: 'POST',
+                dataType: 'json',
+                data: data,
+                success : function(result){
+                    if (result.status == 1) {
+                        alert('提交成功');
+                        location.href = "{{route('mobile.health.index')}}";
+                    } else {
+                        qsToast({type:2,context: result.msg});
+                    }
+                },
+                error: function (errorData) {
+                    if (errorData.status==422) {//验证错误
+                        $.each(JSON.parse(errorData.response).errors,function (key,val) {
+                            qsToast({type:2,context: val[0]});
+                            return false;
+                        });
+                    }
+                    else if(errorData.status==400) {//业务错误
+                        qsToast({type:2,context: JSON.parse(errorData.response).message});
+                        return false;
+                    }
+                }
+            })
+            return false;
         });
     </script>
 @endsection

+ 4 - 4
public/themes/default/views/mobile/app/health/recruit/index.blade.php

@@ -45,10 +45,10 @@
     </div>
     {{--    导航按钮--}}
     <div class="nav-list">
-        <a href="{{route('mobile.health.recruit.list')}}" class="nav purple">高层次人才</a>
-        <a href="{{route('mobile.health.recruit.list')}}" class="nav blue">紧缺急需</a>
-        <a href="{{route('mobile.health.recruit.list')}}" class="nav red">统招</a>
-        <a href="{{route('mobile.health.recruit.list')}}" class="nav yellow">编外</a>
+        <a href="{{route('mobile.health.recruit.list')}}?health_type=1" class="nav purple">高层次人才</a>
+        <a href="{{route('mobile.health.recruit.list')}}?health_type=2" class="nav blue">紧缺急需</a>
+        <a href="{{route('mobile.health.recruit.list')}}?health_type=3" class="nav red">统招</a>
+        <a href="{{route('mobile.health.recruit.list')}}?health_type=4" class="nav yellow">编外</a>
     </div>
     <div class="cate_img">
         <a href="{{route('mobile.health.recruit.will')}}">

+ 2 - 1
public/themes/default/views/mobile/app/health/recruit/list.blade.php

@@ -105,6 +105,7 @@
                 <input type="hidden" class="f-normal-code-wage" name="wage" value="{{$params['wage'] or ''}}">
                 <input type="hidden" class="f-normal-code-experience" name="experience" value="{{$params['experience'] or ''}}">
                 <input type="hidden" class="f-more-l-code-education" name="education" value="{{$params['education'] or ''}}">
+                <input type="hidden" class="f-more-l-code-education" name="health_type" value="{{$params['health_type'] or 1}}">
             </form>
         </div>
         <div class="con-filter">
@@ -331,7 +332,7 @@
         $('#J_submit').click(function(){
             var keyword = $('#J_soinput').val();
             var key_name = $('#key_name').val();
-            location.href = '{{route('mobile.health.recruit.list')}}?key_name=' + key_name + '&keyword=' + keyword;
+            location.href = '{{route('mobile.health.recruit.list')}}?health_type={{$params['health_type']}}&key_name=' + key_name + '&keyword=' + keyword;
         });
 
         $(function(){

+ 311 - 79
public/themes/default/views/mobile/app/health/recruit/quanji.blade.php

@@ -6,6 +6,12 @@
 @push('css')
     <link href="{{ theme_asset('mobile/css/personal.css') }}" rel="stylesheet">
     <link href="{{ theme_asset('mobile/css/nprogress.css') }}" rel="stylesheet">
+    <style>
+        .form-item{width:100%;background-color:#FFFFFF;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;-khtml-user-select:none;user-select:none;}
+        .form-item .pic{float:left;height:100%;border-bottom:1px  #FFFFFF solid;width:.4rem;}
+        .form-item .tit{float:left;height:100%;border-bottom:1px  #F2F2F2 solid;width:2.44rem;font-weight:700}
+        .form-item .describe{position:relative;float:left;height:100%;border-bottom:1px #F2F2F2 solid;width:3.9rem;text-align:right;color:#999999;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;}
+    </style>
 @endpush
 
 @push('js')
@@ -18,96 +24,322 @@
         <div class="headernav font18">
             <div class="title">
                 <div class="n-tit-box">
-                    泉籍卫技人员
+                    泉籍卫技人员
                 </div>
                 <div class="return js-back for-event" data-href="{{route('mobile.health.index')}}"></div>
             </div>
         </div>
     </div>
-    <div class="list_height plist-txt notarrow">
-        <div class="pic"></div>
-        <div class="tit font14">姓名<span class="font_red_light">*</span></div>
-        <div class="describe font13">
-            <input type="text" id="name" placeholder="请输入姓名" value="">
-        </div>
-        <div class="arrow"></div>
-        <div class="clear"></div>
-    </div>
-    <div class="list_height plist-txt notarrow">
-        <div class="pic"></div>
-        <div class="tit font14">户籍<span class="font_red_light">*</span></div>
-        <div class="describe font13">
-            <input type="text" id="domicile" placeholder="请输入户籍" value="">
-        </div>
-        <div class="arrow"></div>
-        <div class="clear"></div>
-    </div>
-    <div class="list_height plist-txt notarrow">
-        <div class="pic"></div>
-        <div class="tit font14">院校<span class="font_red_light">*</span></div>
-        <div class="describe font13">
-            <input type="text" id="school" placeholder="请输入院校" value="">
-        </div>
-        <div class="arrow"></div>
-        <div class="clear"></div>
-    </div>
-    <div class="list_height plist-txt notarrow">
-        <div class="pic"></div>
-        <div class="tit font14">学历<span class="font_red_light">*</span></div>
-        <div class="describe font13">
-            <input type="text" id="education" placeholder="请输入学历" value="">
-        </div>
-        <div class="arrow"></div>
-        <div class="clear"></div>
-    </div>
-    <div class="list_height plist-txt notarrow">
-        <div class="pic"></div>
-        <div class="tit font14">在校任职<span class="font_red_light">*</span></div>
-        <div class="describe font13">
-            <input type="text" id="job" placeholder="请输入在校任职" value="">
-        </div>
-        <div class="arrow"></div>
-        <div class="clear"></div>
-    </div>
-    <div class="list_height plist-txt notarrow">
-        <div class="pic"></div>
-        <div class="tit font14">专业<span class="font_red_light">*</span></div>
-        <div class="describe font13">
-            <input type="text" id="mojor" placeholder="请输入专业" value="">
-        </div>
-        <div class="arrow"></div>
-        <div class="clear"></div>
-    </div>
-    <div class="list_height plist-txt notarrow">
-        <div class="pic"></div>
-        <div class="tit font14">联系方式<span class="font_red_light">*</span></div>
-        <div class="describe font13">
-            <input type="text" id="mobile" name="mobile" placeholder="请输入联系方式"  value="">
-        </div>
-        <div class="arrow"></div>
-        <div class="clear"></div>
-    </div>
-    <div class="split-block"></div>
-    <div class="textarea-txt">
-        <textarea id="achievements" name="achievements" placeholder="请简述一下你的求职意向,可使用人单位对你了解更多!" class="font13"></textarea>
-    </div>
-    <div class="bottom_txt font12">
-        <div class="llt">最多可输入1000字</div>
-        <div class="rlt clear-content">清空</div>
-    </div>
-    <div class="btn-spacing">
-        <a id="btnSave" class="qs-btn qs-btn-blue qs-btn-linear-orange bd4 font16 b-big">保存</a>
-    </div>
+
+    <form action="" id="form">
+        <div class="list_height plist-txt notarrow">
+            <div class="pic"></div>
+            <div class="tit font14">姓名<span class="font_red_light">*</span></div>
+            <div class="describe font13">
+                <input type="text" id="realname" name="realname" placeholder="请输入姓名" value="">
+            </div>
+            <div class="arrow"></div>
+            <div class="clear"></div>
+        </div>
+        <div class="list_height plist-txt notarrow">
+            <div class="pic"></div>
+            <div class="tit font14">性别<span class="font_red_light">*</span></div>
+            <div id="sex" class="describe font13">
+                <div class="radio-group x2">
+                    <div class="radio-cell">
+                        <label for="radio4">男</label>
+                        <input id="radio4" name="sex" type="radio" value="1" title="男" checked="checked">
+                    </div>
+                    <div class="radio-cell">
+                        <label for="radio5">女</label>
+                        <input id="radio5" name="sex" type="radio" value="0" title="女">
+                    </div>
+                    <div class="clear"></div>
+                </div>
+            </div>
+            <div class="arrow"></div>
+            <div class="clear"></div>
+        </div>
+        <div class="list_height plist-txt notarrow">
+            <div class="pic"></div>
+            <div class="tit font14">联系方式<span class="font_red_light">*</span></div>
+            <div class="describe font13">
+                <input type="text" id="mobile" name="mobile" placeholder="请输入联系方式"  value="">
+            </div>
+            <div class="arrow"></div>
+            <div class="clear"></div>
+        </div>
+        <div class="list_height plist-txt notarrow">
+            <div class="pic"></div>
+            <div class="tit font14">出生年份<span class="font_red_light">*</span></div>
+            <div class="describe font13">
+                <input readonly required id="birthday" name="birthday" type="text" placeholder="请选择年月日" value="">
+            </div>
+            <div class="arrow"></div>
+            <div class="clear"></div>
+        </div>
+        <div class="list_height plist-txt js-actionParent">
+            <div class="pic"></div>
+            <div class="tit font14">籍贯<span class="font_red_light">*</span></div>
+            <div class="describe font13 qs-temp js-showActionSheet" data-type="city2" data-base="QS_city_parent" data-source="QS_city" data-multiple="false" data-num="0" data-link="false" data-level="3" data-addjob="true">
+                <span class="qs-temp-txt-city2" data-otxt="">请选择</span>
+                <input class="qs-temp-code-city2" name="native_place" id="native_place" type="hidden" value="">
+            </div>
+            <div class="arrow"></div>
+            <div class="clear"></div>
+            <!--BEGIN actionSheet-->
+            <div>
+                <div class="qs-mask" style="display: none"></div>
+                <div class="qs-actionsheet js-actionsheet">
+                    <div class="qs-actionsheet-menu">
+                        <div class="con-filter">
+                            <div class="f-selected-group f-selected-group-city2">
+                                <div class="s-bar">
+                                    <div class="qs-btn qs-btn-inline qs-btn-small qs-btn-border-gray qs-left js-cancelActionSheet">取消</div>
+                                    <div class="clear"></div>
+                                </div>
+                                <div class="s-list qs-hidden"></div>
+                            </div>
+                            <div class="f-box f-box-city2"></div>
+                        </div>
+                    </div>
+                </div>
+            </div>
+        </div>
+        <div class="list_height plist-txt">
+            <div class="pic"></div>
+            <div class="tit font14">学历<span class="font_red_light">*</span></div>
+            <div class="describe font13">
+                <span class="for-select"></span>
+                <select id="education" name="education">
+                    <option value="">请选择</option>
+                    @foreach($category['other']['AIX_education'] as $key => $val )
+                        <option value="{{ explode(',',$val)[0] }}" >{{ explode(',',$val)[1] }}</option>
+                    @endforeach
+                </select>
+            </div>
+            <div class="arrow"></div>
+            <div class="clear"></div>
+        </div>
+        <div class="list_height plist-txt notarrow">
+            <div class="pic"></div>
+            <div class="tit font14">毕业学校<span class="font_red_light">*</span></div>
+            <div class="describe font13">
+                <input type="text" id="school" name="school" placeholder="请输入毕业学校"  value="">
+            </div>
+            <div class="arrow"></div>
+            <div class="clear"></div>
+        </div>
+        <div class="list_height plist-txt notarrow">
+            <div class="pic"></div>
+            <div class="tit font14">院系<span class="font_red_light">*</span></div>
+            <div class="describe font13">
+                <input type="text" id="dep" name="dep" placeholder="请输入院系"  value="">
+            </div>
+            <div class="arrow"></div>
+            <div class="clear"></div>
+        </div>
+        <div class="list_height plist-txt js-actionParent">
+            <div class="pic"></div>
+            <div class="tit font14">专业<span class="font_red_light">*</span></div>
+            <div class="describe font13 qs-temp-level-major js-showActionSheet" data-type="major" data-base="QS_major_parent" data-source="QS_major" data-multiple="false" data-num="0" data-link="false">
+                <span class="qs-temp-txt-major" data-otxt="请选择">请选择</span>
+                <input class="qs-temp-code-major" name="pro_type" id="pro_type" type="hidden" value="" />
+            </div>
+            <div class="arrow"></div>
+            <div class="clear"></div>
+            <!--BEGIN actionSheet-->
+            <div>
+                <div class="qs-mask" style="display: none"></div>
+                <div class="qs-actionsheet js-actionsheet">
+                    <div class="qs-actionsheet-menu">
+                        <div class="con-filter">
+                            <div class="f-selected-group f-selected-group-major">
+                                <div class="s-bar">
+                                    <div class="qs-btn qs-btn-inline qs-btn-small qs-btn-border-gray qs-left js-cancelActionSheet">取消</div>
+                                    <div class="clear"></div>
+                                </div>
+                                <div class="s-list qs-hidden"></div>
+                            </div>
+                            <div class="f-box f-box-major"></div>
+                        </div>
+                    </div>
+                </div>
+            </div>
+        </div>
+        <div class="list_height plist-txt notarrow">
+            <div class="pic"></div>
+            <div class="tit font14">具体专业<span class="font_red_light">*</span></div>
+            <div class="describe font13">
+                <input type="text" id="pro_text" name="pro_text" placeholder="请输入具体专业"  value="">
+            </div>
+            <div class="arrow"></div>
+            <div class="clear"></div>
+        </div>
+        <div class="list_height plist-txt notarrow">
+            <div class="pic"></div>
+            <div class="tit font14">在校任职<span class="font_red_light">*</span></div>
+            <div class="describe font13">
+                <input type="text" id="title" name="title" placeholder="请输入在校担任职务" value="">
+            </div>
+            <div class="arrow"></div>
+            <div class="clear"></div>
+        </div>
+        <div class="list_height form-item">
+            <div class="pic"></div>
+            <div class="tit font14">简历<span class="font_red_light">*</span></div>
+            <div class="describe font13">
+                <span id="uploadPicButton">双击上传文件</span>
+                <input type="file" id="uploadFile" accept="application/msword,application/vnd.openxmlformats-officedocument.wordprocessingml.document,application/vnd.ms-excel,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,application/vnd.ms-powerpoint,application/vnd.openxmlformats-officedocument.presentationml.presentation,text/plain,application/pdf" style="display: none;">
+            </div>
+            <div class="arrow"></div>
+            <div class="clear"></div>
+            <input type="hidden" id="attachment" name="attachment" value="">
+        </div>
+        <div class="split-block"></div>
+        <div class="textarea-txt">
+            <textarea id="remark" name="remark" placeholder="请简述一下你的求职意向,可使用人单位对你了解更多!" class="font13"></textarea>
+        </div>
+        <div class="bottom_txt font12">
+            <div class="llt">最多可输入1000字</div>
+            <div class="rlt clear-content">清空</div>
+        </div>
+        <div class="btn-spacing">
+            <button type="submit" class="qs-btn qs-btn-blue qs-btn-linear-orange bd4 font16 b-big">保存</button>
+        </div>
+    </form>
 @endsection
 
 @section('script')
+    <script src="{{ theme_asset('mobile/js/mobileBUGFix.mini.js') }}"></script>
+    <script src="{{ theme_asset('mobile/js/qsCategory.js') }}"></script>
+    <script src="{{ theme_asset('mobile/js/LocalResizeIMG.js') }}"></script>
+    <script src="{{ theme_asset('mobile/js/nprogress.js') }}"></script>
+    <script src="{{ theme_asset('mobile/js/rolldate.min.js') }}"></script>
     <script>
+        new Rolldate({
+            el: '#birthday',
+            format: 'YYYY-MM-DD',
+            beginYear: 1900,
+            endYear: 2100,
+            value: "",
+        })
+
+        var default_district = '<?php echo $defaultCity;?>';
+        var str_major = '<?php echo json_encode($category['major']['first']);?>';
+        var QS_major_parent = eval(str_major);
+        for(var i = 0;i <QS_major_parent.length;i ++){
+            QS_major_parent[i].step_size = 0;
+        }
+        var major = '<?php echo json_encode($category['major']['sec']);?>';
+        var QS_major = eval('('+major+')');
+        for(var i = 0;i <QS_major.length;i ++){
+            QS_major[i].step_size = 0;
+        }
+        var str = '<?php echo json_encode($category['jobs']['first']);?>';
+        var QS_jobs_parent = eval(str);
+        for(var i = 0;i <QS_jobs_parent.length;i ++){
+            QS_jobs_parent[i].step_size = 0;
+        }
+        var jobs = '<?php echo json_encode($category['jobs']['sec']);?>';
+        var QS_jobs = eval('('+jobs+')');
+        for(var i = 0;i <QS_jobs.length;i ++){
+            QS_jobs[i].step_size = 0;
+        }
+
+        var district = '<?php echo json_encode($category['district']['first']);?>';
+        var QS_city_parent = eval(district);
+        for(var i = 0;i <QS_city_parent.length;i ++){
+            QS_city_parent[i].step_size = 0;
+        }
+        var districts = '<?php echo json_encode($category['district']['person']);?>';
+        var QS_city = eval('('+districts+')');
+        for(var i = 0;i <QS_city.length;i ++){
+            QS_city[i].step_size = 0;
+        }
+        var other = '<?php echo json_encode($category['other']['AIX_trade']);?>';
+        var QS_trade = eval(other);
+        for(var i = 0;i <QS_trade.length;i ++){
+            QS_trade[i].step_size = 0;
+        }
+        $(function(){
+            $(".js-showActionSheet").on("click", function(){
+                var $iosActionsheet = $(this).closest('.js-actionParent').find('.js-actionsheet');
+                var $iosMask = $(this).closest('.js-actionParent').find('.qs-mask');
+                $iosActionsheet.removeClass('qs-actionsheet-toggle');
+                $iosActionsheet.addClass('qs-actionsheet-toggle');
+                $iosMask.fadeIn(200);
+                $iosMask.on('click', hideActionSheet);
+                $(this).closest('.js-actionParent').find('.js-cancelActionSheet').on('click', hideActionSheet);
+                $(this).closest('.js-actionParent').find('.qs-actionsheet-cell').on('click', hideActionSheet);
+                function hideActionSheet() {
+                    $(this).closest('.js-actionParent').find('.js-actionsheet').removeClass('qs-actionsheet-toggle');
+                    $(this).closest('.js-actionParent').find('.qs-mask').fadeOut(200);
+                }
+            });
+        });
+
         $('.clear-content').on('click',function(){
-            $('#achievements').val('');
+            $('#remark').val('');
+        });
+        $('#form').on('submit', function() {
+            var data = $(this).serialize();
+            $.ajax({
+                headers: {'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')},
+                url: "{{ route('mobile.health.recruit.quanji.save') }}",
+                type: 'POST',
+                dataType: 'json',
+                data: data,
+                success : function(result){
+                    if (result.status == 1) {
+                        alert('提交成功');
+                        location.href = "{{route('mobile.health.index')}}";
+                    } else {
+                        qsToast({type:2,context: result.msg});
+                    }
+                },
+                error: function (errorData) {
+                    if (errorData.status==422) {//验证错误
+                        $.each(JSON.parse(errorData.response).errors,function (key,val) {
+                            qsToast({type:2,context: val[0]});
+                            return false;
+                        });
+                    }
+                    else if(errorData.status==400) {//业务错误
+                        qsToast({type:2,context: JSON.parse(errorData.response).message});
+                        return false;
+                    }
+                }
+            })
+            return false;
+        });
+
+        $('#uploadPicButton').click(function(){
+            $('#uploadFile').click();
         });
-        $('#btnSave').click(function() {
-            alert('提交成功');
-            location.href = "{{route('mobile.health.recruit.index')}}";
+        $('#uploadFile').on('change',function(event) {
+            $('#uploadPicButton').html('正在上传文件中');
+            let file = this.files[0];
+            let formData = new FormData();
+            formData.append('files',file);
+            $.ajax({
+                url: "{{route('mobile.spring.uploadfile')}}",
+                type: 'POST',
+                data: formData,
+                async: true,
+                cache: false,
+                contentType: false,
+                processData: false,
+                success: function(data) {
+                    if (data.status == 0) {
+                        alert(data.msg);
+                        $('#uploadPicButton').html('上传失败,重新选择');
+                    } else {
+                        $('#uploadPicButton').html(data.filename);
+                        $('#attachment').val(data.path);
+                    }
+                }
+            });
         });
     </script>
 @endsection

+ 1 - 1
public/themes/default/views/mobile/app/health/recruit/show.blade.php

@@ -164,7 +164,7 @@
     }
 
     $('.apply_jobs').click(function(){
-        location.href = "{{route('mobile.health.recruit.apply')}}"
+        location.href = "{{route('mobile.health.recruit.apply')}}?id={{$info->id}}"
     });
 </script>
 @endsection

+ 101 - 7
public/themes/default/views/mobile/app/health/recruit/will.blade.php

@@ -6,6 +6,12 @@
 @push('css')
     <link href="{{ theme_asset('mobile/css/personal.css') }}" rel="stylesheet">
     <link href="{{ theme_asset('mobile/css/nprogress.css') }}" rel="stylesheet">
+    <style>
+        .form-item{width:100%;background-color:#FFFFFF;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;-khtml-user-select:none;user-select:none;}
+        .form-item .pic{float:left;height:100%;border-bottom:1px  #FFFFFF solid;width:.4rem;}
+        .form-item .tit{float:left;height:100%;border-bottom:1px  #F2F2F2 solid;width:2.44rem;font-weight:700}
+        .form-item .describe{position:relative;float:left;height:100%;border-bottom:1px #F2F2F2 solid;width:3.9rem;text-align:right;color:#999999;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;}
+    </style>
 @endpush
 
 @push('js')
@@ -24,11 +30,32 @@
             </div>
         </div>
     </div>
+    <form action="" id="form">
     <div class="list_height plist-txt notarrow">
         <div class="pic"></div>
         <div class="tit font14">姓名<span class="font_red_light">*</span></div>
         <div class="describe font13">
-            <input type="text" id="fullname" placeholder="请输入姓名" value="">
+            <input type="text" id="realname" name="realname" placeholder="请输入姓名" value="">
+        </div>
+        <div class="arrow"></div>
+        <div class="clear"></div>
+    </div>
+
+    <div class="list_height plist-txt notarrow">
+        <div class="pic"></div>
+        <div class="tit font14">性别<span class="font_red_light">*</span></div>
+        <div id="sex" class="describe font13">
+            <div class="radio-group x2">
+                <div class="radio-cell">
+                    <label for="radio4">男</label>
+                    <input id="radio4" name="sex" type="radio" value="1" title="男" checked="checked">
+                </div>
+                <div class="radio-cell">
+                    <label for="radio5">女</label>
+                    <input id="radio5" name="sex" type="radio" value="0" title="女">
+                </div>
+                <div class="clear"></div>
+            </div>
         </div>
         <div class="arrow"></div>
         <div class="clear"></div>
@@ -42,27 +69,94 @@
         <div class="arrow"></div>
         <div class="clear"></div>
     </div>
+    <div class="list_height form-item">
+        <div class="pic"></div>
+        <div class="tit font14">简历<span class="font_red_light">*</span></div>
+        <div class="describe font13">
+            <span id="uploadPicButton">双击上传文件</span>
+            <input type="file" id="uploadFile" accept="application/msword,application/vnd.openxmlformats-officedocument.wordprocessingml.document,application/vnd.ms-excel,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,application/vnd.ms-powerpoint,application/vnd.openxmlformats-officedocument.presentationml.presentation,text/plain,application/pdf" style="display: none;">
+        </div>
+        <div class="arrow"></div>
+        <div class="clear"></div>
+        <input type="hidden" id="attachment" name="attachment" value="">
+    </div>
     <div class="split-block"></div>
     <div class="textarea-txt">
-        <textarea id="achievements" name="achievements" placeholder="请简述一下岗位职责和工作业绩,可使用人单位对你了解更多!" class="font13">{{ $workEdu->achievements or '' }}</textarea>
+        <textarea id="remark" name="remark" placeholder="求职意向,请简述一下岗位职责和工作业绩,可使用人单位对你了解更多!" class="font13">{{ $workEdu->achievements or '' }}</textarea>
     </div>
     <div class="bottom_txt font12">
         <div class="llt">最多可输入1000字</div>
         <div class="rlt clear-content">清空</div>
     </div>
     <div class="btn-spacing">
-        <a id="btnSave" class="qs-btn qs-btn-blue qs-btn-linear-orange bd4 font16 b-big">保存</a>
+        <button type="submit" class="qs-btn qs-btn-blue qs-btn-linear-orange bd4 font16 b-big">保存</button>
     </div>
+    </form>
 @endsection
 
 @section('script')
     <script>
         $('.clear-content').on('click',function(){
-            $('#achievements').val('');
+            $('#remark').val('');
+        });
+        $('#form').on('submit', function() {
+            var data = $(this).serialize();
+            $.ajax({
+                headers: {'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')},
+                url: "{{ route('mobile.health.recruit.will.save') }}",
+                type: 'POST',
+                dataType: 'json',
+                data: data,
+                success : function(result){
+                    if (result.status == 1) {
+                        alert('提交成功');
+                        location.href = "{{route('mobile.health.recruit.index')}}";
+                    } else {
+                        qsToast({type:2,context: result.msg});
+                    }
+                },
+                error: function (errorData) {
+                    if (errorData.status==422) {//验证错误
+                        $.each(JSON.parse(errorData.response).errors,function (key,val) {
+                            qsToast({type:2,context: val[0]});
+                            return false;
+                        });
+                    }
+                    else if(errorData.status==400) {//业务错误
+                        qsToast({type:2,context: JSON.parse(errorData.response).message});
+                        return false;
+                    }
+                }
+            })
+            return false;
+        });
+
+        $('#uploadPicButton').click(function(){
+            $('#uploadFile').click();
         });
-        $('#btnSave').click(function() {
-            alert('提交成功');
-            location.href = "{{route('mobile.health.recruit.index')}}";
+        $('#uploadFile').on('change',function(event) {
+            $('#uploadPicButton').html('正在上传文件中');
+            let file = this.files[0];
+            let formData = new FormData();
+            formData.append('files',file);
+            $.ajax({
+                url: "{{route('mobile.spring.uploadfile')}}",
+                type: 'POST',
+                data: formData,
+                async: true,
+                cache: false,
+                contentType: false,
+                processData: false,
+                success: function(data) {
+                    if (data.status == 0) {
+                        alert(data.msg);
+                        $('#uploadPicButton').html('上传失败,重新选择');
+                    } else {
+                        $('#uploadPicButton').html(data.filename);
+                        $('#attachment').val(data.path);
+                    }
+                }
+            });
         });
     </script>
 @endsection

+ 1 - 1
public/themes/default/views/mobile/app/health/teach/index.blade.php

@@ -221,7 +221,7 @@
         </div>
         <div class="list_height form-item">
             <div class="pic"></div>
-            <div class="tit font14">简历</div>
+            <div class="tit font14">简历<span class="font_red_light">*</span></div>
             <div class="describe font13">
                 <span id="uploadPicButton">双击上传文件</span>
                 <input type="file" id="uploadFile" accept="application/msword,application/vnd.openxmlformats-officedocument.wordprocessingml.document,application/vnd.ms-excel,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,application/vnd.ms-powerpoint,application/vnd.openxmlformats-officedocument.presentationml.presentation,text/plain,application/pdf" style="display: none;">

+ 3 - 0
routes/mobile.php

@@ -630,10 +630,13 @@ Route::group([
     $router->get('/attract/show', 'Mobile\Health\AttractController@show')->name('mobile.health.attract.show');
     $router->get('/recruit', 'Mobile\Health\RecruitController@index')->name('mobile.health.recruit.index');
     $router->get('/recruit/will', 'Mobile\Health\RecruitController@will')->name('mobile.health.recruit.will');
+    $router->post('/recruit/will/save', 'Mobile\Health\RecruitController@willSave')->name('mobile.health.recruit.will.save');
     $router->get('/recruit/quanji', 'Mobile\Health\RecruitController@quanji')->name('mobile.health.recruit.quanji');
+    $router->post('/recruit/quanji/save', 'Mobile\Health\RecruitController@quanjiSave')->name('mobile.health.recruit.quanji.save');
     $router->get('/recruit/list', 'Mobile\Health\RecruitController@list')->name('mobile.health.recruit.list');
     $router->get('/recruit/show', 'Mobile\Health\RecruitController@show')->name('mobile.health.recruit.show');
     $router->get('/recruit/apply', 'Mobile\Health\RecruitController@apply')->name('mobile.health.recruit.apply');
+    $router->post('/recruit/apply/save', 'Mobile\Health\RecruitController@applySave')->name('mobile.health.recruit.apply.save');
 });
 
 /*集成电路*/