瀏覽代碼

硕博界面初始化

sandm 3 年之前
父節點
當前提交
2131f0e55f

+ 32 - 0
app/Http/Controllers/Web/Talent/ShuoboController.php

@@ -0,0 +1,32 @@
+<?php
+
+namespace App\Http\Controllers\Web\Talent;
+
+use App\Http\Controllers\Web\WebBaseController;
+use App\Services\Common\SmsService;
+use App\Models\Member;
+use Illuminate\Http\Request;
+
+class ShuoboController extends WebBaseController
+{
+
+    private $smsService;
+    public function __construct(SmsService $smsService)
+    {
+        $this->smsService = $smsService;
+    }
+
+    public function talent()
+    {
+
+        return view('app.shuobo.talent');
+    }
+
+    public function getTalentData(Request $request)
+    {
+        $keyword = $request->input('keyword');
+        $page = $request->input('page');
+
+        return json_encode([]);
+    }
+}

+ 19 - 2
app/Models/MemberShuobo.php

@@ -2,12 +2,13 @@
 
 namespace App\Models;
 
+use App\Search\Traits\ShuoboSearchable;
 use Illuminate\Database\Eloquent\SoftDeletes;
 use Illuminate\Database\Eloquent\Model;
 
 class MemberShuobo extends Model
 {
-    use SoftDeletes;
+    use SoftDeletes,ShuoboSearchable;
     protected $table = 'members_shuobo';
     protected $guarded = [];
 
@@ -21,5 +22,21 @@ class MemberShuobo extends Model
         return $this->belongsTo(Member::class, 'uid');
     }
 
-
+    public function toSearchableArray()
+    {
+        return [
+            'realname' => $this->realname,
+            'mobile' => $this->mobile,
+            'email' => $this->email,
+            'education' => $this->education,
+            'school' => $this->school,
+            'pro' => $this->pro,
+            'address' => $this->address,
+            'country' => $this->country,
+            'company' => $this->company,
+            'job' => $this->job,
+            'trade_type' => $this->trade_type,
+            'speciality' => $this->speciality
+        ];
+    }
 }

+ 11 - 0
app/Search/Traits/ShuoboSearchable.php

@@ -0,0 +1,11 @@
+<?php
+namespace App\Search\Traits;
+
+trait ShuoboSearchable
+{
+    use ElasticsearchSearchable;
+
+
+    protected $search_index = 'shuobo';
+
+}

+ 320 - 0
public/themes/default/views/app/shuobo/talent.blade.php

@@ -0,0 +1,320 @@
+@extends('module.layouts.content')
+@push('meta')
+
+@endpush
+
+@push('css')
+    <link href="{{ theme_asset('app/css/common.css') }}" rel="stylesheet">
+    <link rel="stylesheet" href="{{ theme_asset('app/css/element.css') }}">
+    <link href="{{theme_asset('app/css/resume/resume.css')}}" rel="stylesheet"/>
+    <style>
+        .container{
+            width:1182px;
+            margin:0 auto;
+        }
+        .enterce{
+            text-align: center;
+        }
+        .search{
+            text-align: center;
+            margin-top: 20px;
+        }
+        .talent-list{
+            border: 1px #EEEEEE solid;
+            margin-top: 10px;
+        }
+        .talent-list .talent-item{
+            border-bottom: 1px #EEEEEE solid;
+            padding-top: 18px;
+            padding-bottom: 18px;
+            background-color: #FFFFFF;
+        }
+        .talent-list .talent-item .photo {
+            width: 140px;
+            float: left;
+            margin-left: 20px;
+        }
+        .talent-list .talent-item .tcent {
+            float: left;
+            width: 420px;
+        }
+        .talent-list .talent-item .tcent .txt {
+            font-size: 16px;
+            color: #333333;
+            line-height: 40px;
+        }
+        .talent-list .talent-item .tcent .txt span {
+            color: #999999;
+            padding-left: 3px;
+            padding-right: 3px;
+            font-size: 10px;
+        }
+        .talent-list .talent-item .rbtn {
+            float: right;
+            width: 145px;
+            position: relative;
+            margin-top: 15px;
+        }
+        .talent-list .talent-item .rbtn .btn {
+            width: 80px;
+            height: 38px;
+            line-height: 38px;
+            color: #3b87f7;
+            border: 1px #3b87f7 solid;
+            border-radius: 6px;
+            cursor: pointer;
+            padding: 0 20px;
+            font-size: 15px;
+            margin-top: 2px;
+            text-align: center;
+        }
+
+        .talent-list .talent-item .rbtn:before {
+            position: absolute;
+            content: "";
+            width: 1px;
+            height: 78px;
+            background: #e0e0e0;
+            left: -28px;
+            bottom: 5px;
+        }
+        .page{
+            margin-top: 20px;
+            text-align: center;
+        }
+    </style>
+
+@endpush
+@push('js')
+
+@endpush
+@section('content')
+    <div id="app">
+        <div class="banner">
+            <h1 style="text-align: center;line-height: 300px;font-size: 60px;">
+                硕博专场
+            </h1>
+        </div>
+        <div class="container">
+            <div class="enterce">
+                <el-radio v-model="enter" label="1" border>人才端</el-radio>
+                <el-radio v-model="enter" label="2" border>企业端</el-radio>
+            </div>
+            <div class="search">
+                <el-form :inline="true"  class="demo-form-inline" >
+                    <el-form-item style="margin-bottom: 0"  >
+                        <el-input placeholder="职位/技能/专业/证书/公司名" v-model="keyword" style="width: 300px"></el-input>
+                    </el-form-item>
+                    <el-form-item style="margin-bottom: 0">
+                        <el-button type="primary">查询</el-button>
+                    </el-form-item>
+                </el-form>
+            </div>
+
+            <div class="talent-list">
+                <div class="talent-item">
+                    <div class="photo">
+                        <img src="{{theme_asset('app/images/08.png')}}" >
+                    </div>
+                    <div class="tcent">
+                        <div class="txt font_gray6">徐博士<span>|</span>男<span>|</span>35岁<span>|</span>博士</div>
+                        <div class="dlabs">
+                            <div class="dl">毕业学校:厦门大学</div>
+                            <div class="dl">专业:天体物理</div>
+                            <div class="dl">行业领域:科研院所、党政单位</div>
+                            <div class="dl">核心技术或专长:主要研究方向为涉台研究</div>
+                            <div class="clear"></div>
+                        </div>
+                    </div>
+
+                    <div class="rbtn">
+                        <div class="btn" data-batch="false" data-url="" style="margin-bottom: 10px">查看详情</div>
+                        <div class="btn" data-batch="false" data-url="">收藏</div>
+                    </div>
+                    <div class="clear"></div>
+                </div>
+                <div class="talent-item">
+                    <div class="photo">
+                        <img src="{{theme_asset('app/images/08.png')}}" >
+                    </div>
+                    <div class="tcent">
+                        <div class="txt font_gray6">徐博士<span>|</span>男<span>|</span>35岁<span>|</span>博士</div>
+                        <div class="dlabs">
+                            <div class="dl">毕业学校:厦门大学</div>
+                            <div class="dl">专业:天体物理</div>
+                            <div class="dl">行业领域:科研院所、党政单位</div>
+                            <div class="dl">核心技术或专长:主要研究方向为涉台研究</div>
+                            <div class="clear"></div>
+                        </div>
+                    </div>
+
+                    <div class="rbtn">
+                        <div class="btn" data-batch="false" data-url="" style="margin-bottom: 10px">查看详情</div>
+                        <div class="btn" data-batch="false" data-url="">收藏</div>
+                    </div>
+                    <div class="clear"></div>
+                </div>
+                <div class="talent-item">
+                    <div class="photo">
+                        <img src="{{theme_asset('app/images/08.png')}}" >
+                    </div>
+                    <div class="tcent">
+                        <div class="txt font_gray6">徐博士<span>|</span>男<span>|</span>35岁<span>|</span>博士</div>
+                        <div class="dlabs">
+                            <div class="dl">毕业学校:厦门大学</div>
+                            <div class="dl">专业:天体物理</div>
+                            <div class="dl">行业领域:科研院所、党政单位</div>
+                            <div class="dl">核心技术或专长:主要研究方向为涉台研究</div>
+                            <div class="clear"></div>
+                        </div>
+                    </div>
+
+                    <div class="rbtn">
+                        <div class="btn" data-batch="false" data-url="" style="margin-bottom: 10px">查看详情</div>
+                        <div class="btn" data-batch="false" data-url="">收藏</div>
+                    </div>
+                    <div class="clear"></div>
+                </div>
+                <div class="talent-item">
+                    <div class="photo">
+                        <img src="{{theme_asset('app/images/08.png')}}" >
+                    </div>
+                    <div class="tcent">
+                        <div class="txt font_gray6">徐博士<span>|</span>男<span>|</span>35岁<span>|</span>博士</div>
+                        <div class="dlabs">
+                            <div class="dl">毕业学校:厦门大学</div>
+                            <div class="dl">专业:天体物理</div>
+                            <div class="dl">行业领域:科研院所、党政单位</div>
+                            <div class="dl">核心技术或专长:主要研究方向为涉台研究</div>
+                            <div class="clear"></div>
+                        </div>
+                    </div>
+
+                    <div class="rbtn">
+                        <div class="btn" data-batch="false" data-url="" style="margin-bottom: 10px">查看详情</div>
+                        <div class="btn" data-batch="false" data-url="">收藏</div>
+                    </div>
+                    <div class="clear"></div>
+                </div><div class="talent-item">
+                    <div class="photo">
+                        <img src="{{theme_asset('app/images/08.png')}}" >
+                    </div>
+                    <div class="tcent">
+                        <div class="txt font_gray6">徐博士<span>|</span>男<span>|</span>35岁<span>|</span>博士</div>
+                        <div class="dlabs">
+                            <div class="dl">毕业学校:厦门大学</div>
+                            <div class="dl">专业:天体物理</div>
+                            <div class="dl">行业领域:科研院所、党政单位</div>
+                            <div class="dl">核心技术或专长:主要研究方向为涉台研究</div>
+                            <div class="clear"></div>
+                        </div>
+                    </div>
+
+                    <div class="rbtn">
+                        <div class="btn" data-batch="false" data-url="" style="margin-bottom: 10px">查看详情</div>
+                        <div class="btn" data-batch="false" data-url="">收藏</div>
+                    </div>
+                    <div class="clear"></div>
+                </div>
+                <div class="talent-item">
+                    <div class="photo">
+                        <img src="{{theme_asset('app/images/08.png')}}" >
+                    </div>
+                    <div class="tcent">
+                        <div class="txt font_gray6">徐博士<span>|</span>男<span>|</span>35岁<span>|</span>博士</div>
+                        <div class="dlabs">
+                            <div class="dl">毕业学校:厦门大学</div>
+                            <div class="dl">专业:天体物理</div>
+                            <div class="dl">行业领域:科研院所、党政单位</div>
+                            <div class="dl">核心技术或专长:主要研究方向为涉台研究</div>
+                            <div class="clear"></div>
+                        </div>
+                    </div>
+
+                    <div class="rbtn">
+                        <div class="btn" data-batch="false" data-url="" style="margin-bottom: 10px">查看详情</div>
+                        <div class="btn" data-batch="false" data-url="">收藏</div>
+                    </div>
+                    <div class="clear"></div>
+                </div>
+
+                <div class="talent-item">
+                    <div class="photo">
+                        <img src="{{theme_asset('app/images/08.png')}}" >
+                    </div>
+                    <div class="tcent">
+                        <div class="txt font_gray6">徐博士<span>|</span>男<span>|</span>35岁<span>|</span>博士</div>
+                        <div class="dlabs">
+                            <div class="dl">毕业学校:厦门大学</div>
+                            <div class="dl">专业:天体物理</div>
+                            <div class="dl">行业领域:科研院所、党政单位</div>
+                            <div class="dl">核心技术或专长:主要研究方向为涉台研究</div>
+                            <div class="clear"></div>
+                        </div>
+                    </div>
+
+                    <div class="rbtn">
+                        <div class="btn" data-batch="false" data-url="" style="margin-bottom: 10px">查看详情</div>
+                        <div class="btn" data-batch="false" data-url="">收藏</div>
+                    </div>
+                    <div class="clear"></div>
+                </div>
+
+
+
+
+            </div>
+            <div class="page">
+                <el-pagination
+                        background
+                        layout="prev, pager, next"
+                        :total="1000"
+                        @current-change="page_change">
+                </el-pagination>
+            </div>
+
+        </div>
+
+
+
+
+
+    </div>
+
+@endsection
+@section('script')
+    <script src="{{theme_asset('app/js/vue.min.js')}}"></script>
+    <script src="{{theme_asset('app/js/axios.js')}}"></script>
+    <script src="{{theme_asset('app/js/element.js')}}"></script>
+    <script>
+        new Vue({
+            el: '#app',
+            data() {
+                return {
+                    enter: '1',
+                    loading:true,
+                    keyword:'',
+                    page_current:1,
+
+                };
+            },
+            methods: {
+                getData(page){
+                    axios.post("/shuobo/getTalentData",{keyword:this.keyword,page:page}).then(response => {
+                        this.loading = false;
+                        this.share_list = response.data.data;
+                        this.page_total = response.data.total;
+                    });
+                },
+                page_change(page){
+                    this.getData(page);
+                }
+            },
+            created(){
+                this.getData(1);
+            }
+        })
+
+    </script>
+
+@endsection

+ 7 - 0
routes/web.php

@@ -891,3 +891,10 @@ Route::group([
 ], function (Router $router){
     $router->get('/test', 'Web\Talent\JjhcController@test')->name('talent.jjhc.test');
 });
+
+Route::group([
+    'prefix' => '/shuobo'
+], function (Router $router){
+    $router->get('/talent','Web\Talent\ShuoboController@talent')->name('shuobo.talent');
+    $router->any('/getTalentData','Web\Talent\ShuoboController@getTalentData')->name('shuobo.getTalentData');
+});