Ver Fonte

Merge remote-tracking branch 'origin/master'

# Conflicts:
#	app/Jobs/TicketJob.php
sandm há 2 dias atrás
pai
commit
9b393befc8

+ 27 - 1
app/Http/Controllers/Web/HomeController.php

@@ -286,12 +286,37 @@ class HomeController extends WebBaseController
 //        $rcinfos = $this->policyService->getRcInfosByIndex();
 
         //招考系统
-        $recruit = Recruit::where([['status', '=', 1]])->where('id','<>',126)->orderBy('ordid','desc')->orderBy(DB::raw('field(current,1,2,3,4,5,6,7,8,9,0)'))->orderBy('updated_at','desc')->limit(4)->get();
+        $recruit = Recruit::where([['status', '=', 1]])->where('id', '<>', 126)->orderBy('ordid', 'desc')->orderBy(DB::raw('field(current,1,2,3,4,5,6,7,8,9,0)'))->orderBy('updated_at', 'desc')->limit(8)->get();
         if (!$recruit->isEmpty()) {
             foreach ($recruit as $k => $v) {
                 $recruit[$k] = Recruit::parse_index($v);
             }
         }
+        $recruit_statistics['week']         = Recruit::where([
+            ['status', '=', 1],
+            ['id', '<>', 126],
+            ['created_at', '>=', date('Y-m-d', strtotime("-1 week"))],
+        ])->count();
+        $recruit_statistics['registration'] = Recruit::where([
+            ['status', '=', 1],
+            ['id', '<>', 126],
+            ['current', '=', 1],
+        ])->count();
+        $recruit_statistics['pen'] = Recruit::where([
+            ['status', '=', 1],
+            ['id', '<>', 126],
+            ['current', '=', 3],
+        ])->count();
+        $recruit_statistics['face'] = Recruit::where([
+            ['status', '=', 1],
+            ['id', '<>', 126],
+            ['current', '=', 5],
+        ])->count();
+        $recruit_statistics['total'] = Recruit::where([
+            ['status', '=', 1],
+            ['id', '<>', 126],
+        ])->count();
+
 
         $return_data = [
             'links_logo'              => $links_logo,
@@ -320,6 +345,7 @@ class HomeController extends WebBaseController
             //            'rcinfos'                 => $rcinfos,
             'recuperate_category_arr' => $Recuperatecategory_arr,
             'recruit'                 => $recruit,
+            'recruit_statistics'      => $recruit_statistics,
         ];
         //获取分站模板信息
         if ($subsite_id > 0) {

+ 1 - 1
app/Http/Controllers/Web/Recruit/IndexController.php

@@ -1061,7 +1061,7 @@ class IndexController extends WebBaseController
                 }
             }
         } catch (\Exception $e) {
-            error_log(serialize($data), 3, '/data/wwwroot/jucai/sms');
+            //error_log(serialize($data), 3, '/data/wwwroot/jucai/sms');
             return ['status' => 0, 'msg' => '数据有误,请联系客服'];
         }
 

+ 6 - 6
app/Jobs/TicketJob.php

@@ -566,7 +566,7 @@ class TicketJob implements ShouldQueue
             $date = date("Y-m-d",time());
         }
 
-        if(!is_dir("/data/www/wwwroot/jucai/storage/app/public/recruit/ticket/word/{$date}/{$name}/{$type}")){
+        if(!is_dir(base_path() . "/storage/app/public/recruit/ticket/word/{$date}/{$name}/{$type}")){
             Storage::makeDirectory("public/recruit/ticket/word/{$date}/{$name}/{$type}");
         }
 //        if(!is_dir(base_path() . "/storage/app/public/recruit/ticket/pdf/{$date}/{$name}/{$type}" )){
@@ -574,7 +574,7 @@ class TicketJob implements ShouldQueue
 //        }
 
         $filename = sha1($date . '_' . $data['realname'] . '_' . $data['card'] . '_' . $data['post']);
-        $word_url = "/data/www/wwwroot/jucai/storage/app/public/recruit/ticket/word/{$date}/{$name}/{$type}/" . $filename . '.docx';
+        $word_url = base_path() . "/storage/app/public/recruit/ticket/word/{$date}/{$name}/{$type}/" . $filename . '.docx';
         $templateProcessor->saveAs($word_url);//另存为
 //        $pdf_url = base_path() . "/storage/app/public/recruit/ticket/pdf/{$date}/{$name}/{$type}";
 //        shell_exec('export DISPLAY=:0.0');
@@ -591,7 +591,7 @@ class TicketJob implements ShouldQueue
             $date = date("Y-m-d",time());
         }
         $filename = $date . '_' . $data['realname'] . '_' . $data['card'] . '_' . $data['post'];
-        if(file_exists("/data/www/wwwroot/jucai/storage/app/public/recruit/ticket/word/{$date}/{$name}/{$type}/" . $filename . '.docx')){
+        if(file_exists(base_path() . "/storage/app/public/recruit/ticket/word/{$date}/{$name}/{$type}/" . $filename . '.docx')){
             echo $filename . "跳过\r\n";
             return true;
         }else{
@@ -608,11 +608,11 @@ class TicketJob implements ShouldQueue
             $name = uniqid();
             $date = date("Y-m-d",time());
         }
-        if(!is_dir("/data/www/wwwroot/jucai/storage/app/public/recruit/ticket/pdf/{$date}/{$name}/{$type}" )){
+        if(!is_dir(base_path() . "/storage/app/public/recruit/ticket/pdf/{$date}/{$name}/{$type}" )){
             Storage::makeDirectory("public/recruit/ticket/pdf/{$date}/{$name}/{$type}");
         }
-        $word_url = "/data/www/wwwroot/jucai/storage/app/public/recruit/ticket/word/{$date}/{$name}/{$type}/*.docx";
-        $pdf_url = "/data/www/wwwroot/jucai/storage/app/public/recruit/ticket/pdf/{$date}/{$name}/{$type}";
+        $word_url = base_path() . "/storage/app/public/recruit/ticket/word/{$date}/{$name}/{$type}/*.docx";
+        $pdf_url = base_path() . "/storage/app/public/recruit/ticket/pdf/{$date}/{$name}/{$type}";
         shell_exec('export DISPLAY=:0.0 && export HOME=/data/wwwroot &&libreoffice --headless --convert-to pdf:writer_pdf_Export ' . $word_url . ' --outdir ' . $pdf_url);
     }
 }

+ 0 - 1
app/Wechat/Official/Event/SubscribeEvent.php

@@ -24,7 +24,6 @@ class SubscribeEvent implements EventInterface
      */
     public function handle(array $wechatUser, $user, array $payload)
     {
-        file_put_contents('/data/wwwroot/jucai/public/test.log',json_encode($payload));
         if (isset($payload['EventKey']) && Str::contains($payload['EventKey'], 'qrscene_')) {
             $key=str_replace("qrscene_", "", $payload['EventKey']);
             if ($key == 'LoginEvent') {

+ 144 - 7
public/themes/default/assets/app/css/index_new2.css

@@ -59,11 +59,10 @@ body{
     min-width:1200px;
 }
 .home_logo_nav .logobox{
-    padding-top:16px;
     float:left;
 }
 .home_logo_nav .logobox img{
-    height:58px;
+    height:90px;
 }
 
 .home_logo_nav .home_navlist{
@@ -741,6 +740,12 @@ body{
 .home_jucai_trends .lw-news-box .lw-news {
     width: 915px;
 }
+.home_jucai_trends .recruit-box{
+    display: flex;
+    align-items: center;
+    justify-content: space-between;
+    flex-wrap: wrap;
+}
 .home_jucai_trends .recruit-box .box_item{
     width:275px;
     height: 130px;
@@ -750,9 +755,6 @@ body{
     box-sizing:border-box;
     padding: 5px 10px;
 }
-.home_jucai_trends .recruit-box .box_item:first-child{
-    margin-top:0;
-}
 .home_jucai_trends .recruit-box .box_item .news_title {
     overflow: hidden;
     text-overflow: ellipsis;
@@ -762,7 +764,7 @@ body{
     -webkit-box-orient: vertical;
 }
 .home_jucai_trends .recruit-box .box_item.begin {
-    border: 2px solid #DD4250;
+    border: 2px solid #E0E0E0;
 }
 .home_jucai_trends .recruit-box .box_item .news_title a{
     font-size:16px;
@@ -833,7 +835,142 @@ body{
     /*color:#bc2c34;*/
 /*}*/
 
-
+/*新版新闻2*/
+.home_jucai_trends .lw-news-title-box {
+    display: flex;
+    align-items: center;
+    justify-content: space-between;
+}
+.home_jucai_trends .lw-news-title {
+    color:#dd4250;
+    font-size: 20px;
+    font-weight: bold;
+}
+.home_jucai_trends .lw-news-more {
+    color:#dd4250;
+    font-size: 16px;
+    font-weight: bold;
+}
+.home_jucai_trends .lw-new-title-line {
+    background:#979797;
+    width: 100%;
+    height: 2px;
+    margin-top: 5px;
+}
+.lw-news-statistics {
+    border: 1px solid #c0c0c0;
+    border-radius: 10px;
+    padding: 10px 20px;
+    margin-top: 10px;
+}
+.lw-news-statistics .statistics-list {
+    display: flex;
+    align-items: center;
+    justify-content: space-between;
+    margin-top: 20px;
+}
+.lw-news-statistics .statistics-list .statistics-item {
+    text-align: center;
+    flex: 1;
+}
+.lw-news-statistics .statistics-list .statistics-item .statistics-num {
+    font-size: 40px;
+    font-weight: bold;
+}
+.statistics-num.yellow {
+    color:#F5BA4A;
+}
+.statistics-num.red {
+    color:#dd4250;
+}
+.statistics-num.green {
+    color:#88D293;
+}
+.statistics-num.blue {
+    color:#77C0F6;
+}
+.lw-news-statistics .statistics-circle-box {
+    display: flex;
+    align-items: center;
+    justify-content: center;
+    margin-top: 10px;
+}
+.lw-news-statistics .statistics-circle-box .statistics-circle {
+    border-radius: 50%;
+    width: 10px;
+    height: 10px;
+    margin:0 2px;
+}
+.statistics-circle.gray {
+    background: gray;
+}
+.statistics-circle.yellow {
+    background:#F5BA4A;
+}
+.statistics-circle.red {
+    background:#dd4250;
+}
+.statistics-circle.green {
+    background:#88D293;
+}
+.statistics-circle.blue {
+    background:#77C0F6;
+}
+.lw-news-statistics .show-more {
+    margin-top:30px;
+    display: flex;
+}
+.lw-news-statistics .show-more .show-more-btn {
+    width: 1100px;
+    height: 40px;
+    line-height: 40px;
+    background: #dd4250;
+    text-align: center;
+    color: white;
+    font-size: 20px;
+    letter-spacing: 10px;
+}
+.lw-news-statistics .show-more .show-more-line-first {
+    width: 6px;
+    height: 40px;
+    background: #dd4250;
+    margin-left: 15px;
+}
+.lw-news-statistics .show-more .show-more-line {
+    width: 6px;
+    height: 40px;
+    background: #dd4250;
+    margin-left: 6px;
+}
+.mt20 {
+    margin-top:20px;
+}
+.lw-news-list {
+    display: flex;
+    justify-content: space-between;
+    flex-wrap: wrap;
+}
+.lw-news-list .news-item {
+    width: 580px;
+    display: flex;
+    align-items: center;
+    justify-content: space-between;
+    margin-top: 20px;
+}
+.lw-news-list .news-item:hover {
+    text-decoration: underline;
+    color: #dd4250;
+}
+.lw-news-list .news-item .news-title {
+    flex:1;
+    overflow: hidden;
+    text-overflow: ellipsis;
+    white-space: nowrap;
+}
+.lw-news-list .news-item .news-time {
+    width: 80px;
+    text-align: right;
+}
     /*人才活动*/
 .home_actives_part{
     background:#fff;

BIN
public/themes/default/assets/app/images/index_logo.png


+ 116 - 81
public/themes/default/views/app/index.blade.php

@@ -118,7 +118,7 @@
         <div class="wide">
             <div class="logobox">
                 <a href="/">
-                    <img src="{{theme_asset('app/images/index_logo.png')}}" border="0"/>
+                    <img src="{{theme_asset('app/images/index_logo.png')}}?v=1" border="0"/>
                 </a>
             </div>
             <!-- 导航 -->
@@ -354,8 +354,122 @@
             @endif
         </div>
 
-        <!--聚才动态-->
+        <!--聚才动态-->
         <div class="home_jucai_trends">
+            <div class="home_title">
+                <div class="title_ch">事业单位国企招考</div>
+                <div class="title_en">RECRUIT&nbsp;INFORMATION</div>
+            </div>
+            <div class="lw-news-title">
+                招考统计
+            </div>
+            <div class="lw-news-statistics">
+                <div class="statistics-list">
+                    <div class="statistics-item">
+                        <div class="statistics-num yellow">{{$recruit_statistics['week']}}+</div>
+                        <div class="statistics-desc">一周内</div>
+                        <div class="statistics-circle-box">
+                            <div class="statistics-circle yellow"></div>
+                            <div class="statistics-circle gray"></div>
+                            <div class="statistics-circle gray"></div>
+                        </div>
+                    </div>
+                    <div class="statistics-item">
+                        <div class="statistics-num red">{{$recruit_statistics['registration']}}+</div>
+                        <div class="statistics-desc">报名中</div>
+                        <div class="statistics-circle-box">
+                            <div class="statistics-circle gray"></div>
+                            <div class="statistics-circle red"></div>
+                            <div class="statistics-circle gray"></div>
+                        </div>
+                    </div>
+                    <div class="statistics-item">
+                        <div class="statistics-num green">{{$recruit_statistics['pen']}}+</div>
+                        <div class="statistics-desc">笔试中</div>
+                        <div class="statistics-circle-box">
+                            <div class="statistics-circle gray"></div>
+                            <div class="statistics-circle green"></div>
+                            <div class="statistics-circle gray"></div>
+                        </div>
+                    </div>
+                    <div class="statistics-item">
+                        <div class="statistics-num red">{{$recruit_statistics['face']}}+</div>
+                        <div class="statistics-desc">面试中</div>
+                        <div class="statistics-circle-box">
+                            <div class="statistics-circle gray"></div>
+                            <div class="statistics-circle red"></div>
+                            <div class="statistics-circle gray"></div>
+                        </div>
+                    </div>
+                    <div class="statistics-item">
+                        <div class="statistics-num blue">{{$recruit_statistics['total']}}+</div>
+                        <div class="statistics-desc">招聘岗位总计</div>
+                        <div class="statistics-circle-box">
+                            <div class="statistics-circle gray"></div>
+                            <div class="statistics-circle blue"></div>
+                            <div class="statistics-circle gray"></div>
+                        </div>
+                    </div>
+                </div>
+                <a class="show-more" href="{{route('recruit.index.list')}}">
+                    <div class="show-more-btn">点击查看更多招聘讯息</div>
+                    <div class="show-more-line-first"></div>
+                    <div class="show-more-line"></div>
+                    <div class="show-more-line"></div>
+                    <div class="show-more-line"></div>
+                </a>
+            </div>
+            <div class="lw-news-title-box mt20">
+                <div class="lw-news-title">
+                    招考列表
+                </div>
+                <a class="lw-news-more" href="{{route('recruit.index.list')}}">更多+</a>
+            </div>
+            <div class="lw-new-title-line"></div>
+            <div class="recruit-list">
+                <div class="recruit-box">
+                    @if(!$recruit->isEmpty())
+                        @foreach($recruit as $k=>$v)
+                            <div class="box_item @if($v->current > 0) begin @endif">
+                                <div class="news_info">
+                                    <div class="news_title"><a href="{{route('recruit.index.show',['id'=>$v->id])}}"
+                                                               target="_blank" rel="nofollow noopener noreferrer">{{$v->name}}</a></div>
+                                    <div class="news_content">
+                                        <p style="color:#bc2c34;">状态:{{$v->current_text}}</p>
+                                        <p>时间:{{$v->current_time}}</p>
+                                        <p>流程:{{$v->step_text}}</p>
+                                    </div>
+                                </div>
+                            </div>
+                        @endforeach
+                    @else
+                        <div style="line-height:190px;text-align:center;font-size:16px;">暂无招考</div>
+                    @endif
+                </div>
+            </div>
+            <div class="lw-news-title-box mt20">
+                <div class="lw-news-title">
+                    招考资讯
+                </div>
+                <a class="lw-news-more" href="{{route('news.list',['id'=>57])}}">更多+</a>
+            </div>
+            <div class="lw-new-title-line"></div>
+            <div class="lw-news-list">
+                @if(!$ad_pic3->isEmpty())
+                    @foreach($ad_pic3 as $k=>$v)
+                        <a class="news-item" href="{{route('news.show',['id'=>$v->id])}}">
+                            <div class="news-title">{{$v->title}}</div>
+                            <div class="news-time">{{date('Y-m-d',strtotime($v->created_at))}}</div>
+                        </a>
+                    @endforeach
+                @else
+                    <div style="line-height:190px;text-align:center;font-size:16px;">暂无新闻</div>
+                @endif
+            </div>
+        </div>
+
+        <!--聚才动态-->
+        {{--<div class="home_jucai_trends">
             <div class="home_title">
                 <div class="title_ch">招聘资讯</div>
                 <div class="title_en">RECRUIT&nbsp;INFORMATION</div>
@@ -409,15 +523,10 @@
                                             @endif
                                         </div>
                                         <div class="news_content">
-{{--                                            <p style="text-indent:2em;">{!!  cut_str(strip_tags(htmlspecialchars_decode($v->content,ENT_QUOTES)),'32',0,'...') !!}</p>--}}
                                             <p style="text-align:right;">{{date('Y-m-d',strtotime($v->created_at))}}</p>
                                         </div>
                                     </div>
                                 </div>
-                                {{--<div class="news-item">--}}
-                                    {{--<div><a href="{{route('news.show',['id'=>$v->id])}}">{{$v->title}}</a></div>--}}
-                                    {{--<p>{{date('Y-m-d',strtotime($v->created_at))}}</p>--}}
-                                {{--</div>--}}
                             @endforeach
                         @else
                             <div style="line-height:190px;text-align:center;font-size:16px;">暂无新闻</div>
@@ -425,80 +534,6 @@
                     </div>
                 </div>
             </div>
-
-            {{--<div class="trends_box">
-                <div class="home_pic_news">
-                    @if($ad_pic1 && count($ad_pic1)>0)
-                        @foreach($ad_pic1 as $k=>$v)
-
-
-                            <div class="pic_box"><img src="{{upload_asset($v->small_img)}}" alt="" border="0"/></div>
-                            <div class="news_info">
-                                <div class="news_title">{{$v->title}}</div>
-                                <div class="title_line"></div>
-                                <div class="news_content">{!!  cut_str(strip_tags(htmlspecialchars_decode($v->content,ENT_QUOTES)),'60',0,'...') !!}</div>
-                                <a href="
-                                @if(empty($v->is_url))
-                                    {{route('news.show',['id'=>$v->id])}}
-                                @else
-                                    {{$v->is_url}}
-                                @endif
-                                        " target="_blank" rel="nofollow noopener noreferrer" class="news_more"></a>
-                            </div>
-                        @endforeach
-                    @else
-                        <div style="line-height:190px;text-align:center;">暂无新闻</div>
-                    @endif
-                </div>
-                <div class="home_news_list">
-                    @foreach($ad_pic3 as $k=>$v)
-                        <div class="home_news_item">
-                            <div class="news_time">
-                                <div class="news_day">{{date('d',strtotime($v->created_at))}}</div>
-                                <div class="news_year">{{date('Y/m月',strtotime($v->created_at))}}</div>
-                            </div>
-                            <div class="news_info">
-                                @if(empty($v->is_url))
-                                    <a href="{{route('news.show',['id'=>$v->id])}}" target="_blank" rel="nofollow noopener noreferrer"
-                                       class="news_title substring" title="{{$v->title}}">{{$v->title}}</a>
-                                    <div class="news_content">{!!  cut_str(strip_tags(htmlspecialchars_decode($v->content,ENT_QUOTES)),'80',0,'...') !!}</div>
-                                @else
-                                    <a href="{{$v->is_url}}" target="_blank" rel="nofollow noopener noreferrer"
-                                       class="news_title substring" title="{{$v->title}}">{{$v->title}}</a>
-                                    <div class="news_content">{!!  cut_str(strip_tags(htmlspecialchars_decode($v->content,ENT_QUOTES)),'80',0,'...') !!}</div>
-                                @endif
-                            </div>
-                            <div class="clear"></div>
-                        </div>
-                    @endforeach
-                </div>
-                <div class="clear"></div>
-                <a href="{{route('news.list',['id'=>57])}}" class="box_more" target="_blank" rel="nofollow noopener noreferrer">查看更多&gt;</a>
-            </div>
-            <div class="trends_box">
-                @if(!$recruit->isEmpty())
-                    @foreach($recruit as $k=>$v)
-                        <div class="box_item">
-                            <div class="pic_box"><img src="{{$v->small_img ?: theme_asset('app/images/index/recruit_index.jpg')}}" alt="" border="0"/>
-                            </div>
-                            <div class="news_info">
-                                <div class="news_title"><a href="{{route('recruit.index.show',['id'=>$v->id])}}"
-                                                                     target="_blank" rel="nofollow noopener noreferrer">{{$v->name}}</a></div>
-                                <div class="news_content">
-                                    <p style="color:#bc2c34;">状态:{{$v->current_text}}</p>
-                                    <p>时间:{{$v->current_time}}</p>
-                                    <p>流程:{{$v->step_text}}</p>
-                                </div>
-                            </div>
-                        </div>
-                    @endforeach
-                    <div class="clear"></div>
-                    <a href="{{route('recruit.index.list')}}" class="box_more" target="_blank" rel="nofollow noopener noreferrer">查看更多&gt;</a>
-                @else
-                    <div style="line-height:190px;text-align:center;font-size:16px;">暂无招考</div>
-                @endif
-            </div>
-            <div class="clear"></div>
         </div>--}}
     </div>
 

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

@@ -182,6 +182,11 @@
                     <img src="https://www.jucai.gov.cn/storage/ueditor/uploads/image/2025/08/05/75a044648abdc456530189fd8b393ca1.png" width="100%" />
                 </a>
             </div>
+            <div class="swiper-slide">
+                <a href="https://mp.weixin.qq.com/s/y3kT1PBijkr6FUgpbSL8EA">
+                    <img src="https://www.jucai.gov.cn/storage/admin/images/G1pTgUnWiBS20GkrsZGYflXzvM1SGaJE5J8sQNam.jpeg" width="100%" />
+                </a>
+            </div>
         </div>
         <div class="swiper-pagination"></div>
     </div>

+ 1 - 0
public/themes/default/views/module/section/html_end.blade.php

@@ -4,6 +4,7 @@
     {!! config('aix.system.site.site.site_statistics') !!}
 
 </div>
+<script type="text/javascript">document.write(unescape("%3Cspan id='_ideConac' %3E%3C/span%3E%3Cscript src='https://dcs.conac.cn/js/14/218/0763/41490412/CA142180763414904120001.js' type='text/javascript'%3E%3C/script%3E"));</script>
 
 </body>
 <!-- Matomo -->