瀏覽代碼

Merge remote-tracking branch 'origin/master'

zmw 7 月之前
父節點
當前提交
4e0f731a34

+ 1 - 0
app/Admin/Controllers/Company/JobsController.php

@@ -571,6 +571,7 @@ ETO;
                 $form->radio('experience', '工作经验')->options($experience);
                 $form->radio('sex', '性别要求')->options([0=>'不限',1=>'男',2=>'女']);
                 $form->radio('is_deformity', '是否接受残疾人')->options([1=>'是',2=>'否']);
+                $form->radio('is_soldier', '是否接受退役军人')->options([1=>'是',2=>'否']);
 
                 $form->number('min_age', '最低年龄')->default(isset($jobsData['age'][0])?$jobsData['age'][0]:'')->min(16)->max(65)->help('最低年龄不能低于国家规定用工年龄');
                 $form->number('max_age', '最高年龄')->default(isset($jobsData['age'][1])?$jobsData['age'][1]:'')->min(16)->max(65)->help('最高年龄不能高于65周岁');

+ 89 - 0
app/Http/Controllers/Api/Soldier/JobController.php

@@ -0,0 +1,89 @@
+<?php
+
+namespace App\Http\Controllers\Api\Soldier;
+
+use App\Http\Controllers\Api\ApiBaseController;
+use App\Models\Category;
+use App\Models\CategoryJobs;
+use App\Models\Jobs;
+use App\Models\JobsContact;
+use Illuminate\Http\Request;
+
+class JobController extends ApiBaseController
+{
+
+    public function getSoldierJobList(Request $request)
+    {
+        $page      = $request->input('page', 1);
+        $limit     = $request->input('limit', 10);
+        $update_at = $request->input('update_time', '');
+
+        $where = [
+            ['valid', '=', 1],
+            ['company_audit', '=', 1],
+            ['audit', '=', 1],
+            ['display', '=', 1],
+            ['is_soldier', '=', 1],
+        ];
+        if (!empty($update_at)) {
+            $where[] = ['updated_at', '>', $update_at];
+        }
+
+        $list = Jobs::select('id', 'jobs_name', 'company_name', 'nature', 'sex', 'age', 'amount', 'topclass', 'category', 'subclass', 'trade', 'scale', 'tag', 'education', 'experience', 'wage', 'wage_max', 'negotiable', 'wage_min', 'wage_str', 'jobs_content', 'department', 'created_at', 'updated_at')
+            ->where($where)
+            ->offset(($page - 1) * $limit)
+            ->limit($limit)
+            ->get()
+            ->toArray();
+
+        $ids          = [];
+        $category     = [];
+        $category_job = [];
+        $tag          = [];
+        foreach ($list as $v) {
+            $ids[]          = $v['id'];
+            $category[]     = $v['nature'];
+            $category_job[] = $v['topclass'];
+            $category_job[] = $v['category'];
+            $category_job[] = $v['subclass'];
+            $category[]     = $v['trade'];
+            $category[]     = $v['scale'];
+            if (!empty($v['tag'][0])) {
+                $tag = array_merge($tag, $v['tag']);
+            }
+            $category[] = $v['education'];
+            $category[] = $v['experience'];
+        }
+
+        $category          = array_merge($category, $tag);
+        $contact_list      = JobsContact::select('job_id', 'contact', 'telephone', 'email', 'address')->whereIn('job_id', $ids)->get()->keyBy('job_id')->toArray();
+        $category_list     = Category::whereIn('id', array_unique($category))->pluck('demand', 'id')->toArray();
+        $category_job_list = CategoryJobs::whereIn('id', array_unique($category_job))->pluck('name', 'id')->toArray();
+
+        foreach ($list as $k => $v) {
+            $list[$k]['contact_name']         = $contact_list[$v['id']]['contact'];
+            $list[$k]['contact_telephone']    = $contact_list[$v['id']]['telephone'];
+            $list[$k]['contact_email']        = $contact_list[$v['id']]['email'];
+            $list[$k]['contact_address']      = $contact_list[$v['id']]['address'];
+            $list[$k]['nature']               = empty($category_list[$v['nature']]) ? '' : $category_list[$v['nature']];
+            $list[$k]['topclass']             = empty($category_job_list[$v['topclass']]) ? '' : $category_job_list[$v['topclass']];
+            $list[$k]['category']             = empty($category_job_list[$v['category']]) ? '' : $category_job_list[$v['category']];
+            $list[$k]['subclass']             = empty($category_job_list[$v['subclass']]) ? '' : $category_job_list[$v['subclass']];
+            $list[$k]['trade']                = empty($category_list[$v['trade']]) ? '' : $category_list[$v['trade']];
+            $list[$k]['scale']                = empty($category_list[$v['scale']]) ? '' : $category_list[$v['scale']];
+            $tags                             = [];
+            foreach ($v['tag'] as $tag) {
+                if (!empty($category_list[$tag])) {
+                    $tags[] = $category_list[$tag];
+                }
+            }
+            $list[$k]['tag']        = $tags;
+            $list[$k]['education']  = empty($category_list[$v['education']]) ? '' : $category_list[$v['education']];
+            $list[$k]['experience'] = empty($category_list[$v['experience']]) ? '' : $category_list[$v['experience']];
+            $list[$k]['experience'] = empty($category_list[$v['experience']]) ? '' : $category_list[$v['experience']];
+        }
+
+        return response()->json($list);
+    }
+
+}

+ 15 - 1
public/themes/default/views/app/jobs/jobs_add.blade.php

@@ -76,6 +76,18 @@
                         </div>
                         <div class="clear"></div>
                     </div>
+                    <div class="mb16">
+                        <div class="modKey"><span></span>是否接受退役军人:</div>
+                        <div class="modVal">
+                            <div class="radio_list fl J_radioitme_parent">
+                                <div class="rli @if(isset($jobsInfo) && $jobsInfo->is_soldier == 1) checked @endif  J_radioitme"  data-code="1">是</div>
+                                <div class="rli  @if(isset($jobsInfo) && $jobsInfo->is_soldier == 2) checked @endif  J_radioitme" data-code="2">否</div>
+                                <input class="J_radioitme_code" name="nature" id="is_soldier" type="hidden"
+                                       value="@if(isset($jobsInfo)){{ $jobsInfo->is_soldier }}@else{{ 2 }}@endif">
+                            </div>
+                        </div>
+                        <div class="clear"></div>
+                    </div>
                     @if(!is_null($subsites))
                         <div class="mb16">
                             <div class="modKey">同步站点:</div>
@@ -926,6 +938,7 @@
             var map_x = $('#map_x').val();
             var map_y = $('#map_y').val();
             var is_deformity = $("#is_deformity").val();
+            var is_soldier = $("#is_soldier").val();
 
 
             $("input[name='did[]']:checked").each(function () {
@@ -1123,7 +1136,8 @@
                 wage_max: wage_max,
                 map_x: map_x,
                 map_y: map_y,
-                is_deformity:is_deformity
+                is_deformity:is_deformity,
+                is_soldier:is_soldier,
             }
             $.ajax({
                 url: "{{ route('jobs.save') }}",

+ 7 - 0
routes/api.php

@@ -133,3 +133,10 @@ Route::group([
     $router->any('data', 'Api\Third\ScrmController@pullData')->name('api.third.scrm.data');
     $router->any('test', 'Api\Third\ScrmController@test')->name('api.third.scrm.test');
 });
+
+/*退役军人*/
+Route::group([
+    'prefix' => '/soldier'
+], function (Router $router) {
+    $router->post('job/getSoldierJobList', 'Api\Soldier\JobController@getSoldierJobList')->name('api.soldier.job.get_soldier_job_list');
+});