LiuJ 5 luni în urmă
părinte
comite
93dafc8721
1 a modificat fișierele cu 110 adăugiri și 108 ștergeri
  1. 110 108
      app/JsonRpc/NewsService.php

+ 110 - 108
app/JsonRpc/NewsService.php

@@ -4981,18 +4981,18 @@ class NewsService implements NewsServiceInterface
     $data['address_arr_id'] = isset($data['address_arr_id']) ? json_encode(array_map('intval', $data['address_arr_id'])) : '';
     // 管理员-企业相关信息
     $company = [
-        // 'user_id' => $data['user_id']?? null,
-        'business_name' => isset($data['business_name']) && $data['business_name'] !== '' ? $data['business_name'] : null,
-        'company_hy_id' => isset($data['company_hy_id']) && $data['company_hy_id'] !== '' ? $data['company_hy_id'] : null,
-        'company_size' => isset($data['company_size']) && $data['company_size'] !== '' ? $data['company_size'] : null,
-        'company_nature' => isset($data['company_nature']) && $data['company_nature'] !== '' ? $data['company_nature'] : null,
-        'introduction' => isset($data['introduction']) && $data['introduction'] !== '' ? $data['introduction'] : null,
-        'real_name' => isset($data['real_name']) && $data['real_name'] !== '' ? $data['real_name'] : null,
-        'mobile' => isset($data['mobile']) && $data['mobile'] !== '' ? $data['mobile'] : null,
-        'company_url' => isset($data['company_url']) && $data['company_url'] !== '' ? $data['company_url'] : null,
-        'address_arr_id' => isset($data['address_arr_id']) && $data['address_arr_id'] !== '' ? $data['address_arr_id'] : null,
-        'address' => isset($data['address']) && $data['address'] !== '' ? $data['address'] : null,
-        'email' => isset($data['email']) && $data['email'] !== '' ? $data['email'] : null,
+      // 'user_id' => $data['user_id']?? null,
+      'business_name' => isset($data['business_name']) && $data['business_name'] !== '' ? $data['business_name'] : null,
+      'company_hy_id' => isset($data['company_hy_id']) && $data['company_hy_id'] !== '' ? $data['company_hy_id'] : null,
+      'company_size' => isset($data['company_size']) && $data['company_size'] !== '' ? $data['company_size'] : null,
+      'company_nature' => isset($data['company_nature']) && $data['company_nature'] !== '' ? $data['company_nature'] : null,
+      'introduction' => isset($data['introduction']) && $data['introduction'] !== '' ? $data['introduction'] : null,
+      'real_name' => isset($data['real_name']) && $data['real_name'] !== '' ? $data['real_name'] : null,
+      'mobile' => isset($data['mobile']) && $data['mobile'] !== '' ? $data['mobile'] : null,
+      'company_url' => isset($data['company_url']) && $data['company_url'] !== '' ? $data['company_url'] : null,
+      'address_arr_id' => isset($data['address_arr_id']) && $data['address_arr_id'] !== '' ? $data['address_arr_id'] : null,
+      'address' => isset($data['address']) && $data['address'] !== '' ? $data['address'] : null,
+      'email' => isset($data['email']) && $data['email'] !== '' ? $data['email'] : null,
     ];
     //去掉相关企业信息 
     $job = array_diff_key($data, array_flip(array_keys($company)));
@@ -5055,7 +5055,7 @@ class NewsService implements NewsServiceInterface
         'company_id' => $companyId,
       ];
       if (empty($result)) {
-          return Result::error("添加失败", 0);
+        return Result::error("添加失败", 0);
       }
       return Result::success($result);
     } catch (\Exception $e) {
@@ -5115,102 +5115,102 @@ class NewsService implements NewsServiceInterface
   /*
     * 修改招聘信息
     * */
-    public function upJobRecruiting(array $data): array
-    {
-        $job = JobRecruiting::where('job_recruiting.id', $data['id'])->first();
-        // return Result::success($job);
-        if(empty($job)){
-            return Result::error("招聘信息不存在", 0);
-        }
-        $user = User::where('id', $data['user_id'])->first();
-        // return Result::success($user);
-        if(empty($user) || $user['type_id']!= $data['user_type']){
-            return Result::error("用户不存在", 0);
-        }
-        if($user['type_id']==3 && $job['user_id']!= $user['id']){
-            return Result::error("用户暂无权限修改此招聘信息!", 0);
-        }
-        $data['cat_arr_id'] = array_values(array_unique($data['cat_arr_id']));
-        $data['city_arr_id'] = array_values(array_unique($data['city_arr_id']));
-        $data['cat_arr_id'] = isset($data['cat_arr_id'])? json_encode(array_map('intval', $data['cat_arr_id'])) : '';
-        $data['city_arr_id'] = isset($data['city_arr_id'])? json_encode(array_map('intval', $data['city_arr_id'])) : '';
-       
-        // 公司地址 管理员必填
-        $data['address_arr_id'] = array_values(array_unique($data['address_arr_id']));
-        $data['address_arr_id'] = isset($data['address_arr_id'])? json_encode(array_map('intval', $data['address_arr_id'])) : '';
-        //   管理员-企业相关信息
-        $company = [
-             // 'user_id' => $data['user_id']?? null,
-            'business_name' => isset($data['business_name']) && $data['business_name'] !== '' ? $data['business_name'] : null,
-            'company_hy_id' => isset($data['company_hy_id']) && $data['company_hy_id'] !== '' ? $data['company_hy_id'] : null,
-            'company_size' => isset($data['company_size']) && $data['company_size'] !== '' ? $data['company_size'] : null,
-            'company_nature' => isset($data['company_nature']) && $data['company_nature'] !== '' ? $data['company_nature'] : null,
-            'introduction' => isset($data['introduction']) && $data['introduction'] !== '' ? $data['introduction'] : null,
-            'real_name' => isset($data['real_name']) && $data['real_name'] !== '' ? $data['real_name'] : null,
-            'mobile' => isset($data['mobile']) && $data['mobile'] !== '' ? $data['mobile'] : null,
-            'company_url' => isset($data['company_url']) && $data['company_url'] !== '' ? $data['company_url'] : null,
-            'address_arr_id' => isset($data['address_arr_id']) && $data['address_arr_id'] !== '' ? $data['address_arr_id'] : null,
-            'address' => isset($data['address']) && $data['address'] !== '' ? $data['address'] : null,
-            'email' => isset($data['email']) && $data['email'] !== '' ? $data['email'] : null,
-        ];
-        //去掉相关企业信息 
-        $data = array_diff_key($data, array_flip(array_keys($company)));
-        $jobId = $data['id'];
-        $web = $data['website_id'];
-        $data['action_id'] = $data['user_id'];
-        unset($data['user_id']);
-        unset($data['user_type']);
-        unset($data['id']);
-        unset($data['website_id']);
-        // return Result::success($data);
-        Db::beginTransaction();
-        try {
-            // 管理员修改招聘信息
-            if($user['type_id'] == 10000){
-                $data['website_id'] = $web;
-                $company['website_id'] = $data['website_id'];
-                $data['status'] = 1;
-            }else{
-                $data['status'] = 0;
-            }
-            $data['experience'] = isset($data['experience']) && $data['experience'] !== '' ? $data['experience'] : null;
-            $data['salary'] = isset($data['salary']) && $data['salary'] !== '' ? $data['salary'] : null;
-            $data['number'] = isset($data['number']) && $data['number'] !== '' ? $data['number'] : null;
-            $data['language'] = isset($data['language']) && $data['language'] !== '' ? $data['language'] : null;
-            $data['level'] = isset($data['level']) && $data['level'] !== '' ? $data['level'] : null;
-            $data['job_level'] = isset($data['job_level']) && $data['job_level'] !== '' ? $data['job_level'] : null;
-            $data['educational'] = isset($data['educational']) && $data['educational'] !== '' ? $data['educational'] : null;
-            // return Result::success($job);
-            // Db::rollBack();
-            // return Result::success($company);
-            if ((isset($data['status']) && $data['status'] == 0) || !isset($data['status'])) {
-              $this->sendMessage([
-                'talk_type' => 500,
-                'title' => $data['title'],
-                'content' => '提交了审核',
-                'messageType' => 10,
-              ]);
-            }
-            $result['job'] = JobRecruiting::where('id', $jobId)->update($data);
-            if (empty($result['job'])) {
-                Db::rollBack();
-                return Result::error("修改招聘信息失败");
-            }
-            // 管理员修改企业相关信息
-            $result['company'] = JobCompany::where('job_id', $jobId)->update($company);
-            if (empty($result['company'])) {
-                Db::rollBack();
-                return Result::error("修改企业相关信息失败");
-            }
-            Db::commit();
-            // return Result::success($result);
-        } catch (\Exception $e) {
-            Db::rollBack();
-            return Result::error($e->getMessage(), 0); 
-        }
-        return Result::success($result);
+  public function upJobRecruiting(array $data): array
+  {
+    $job = JobRecruiting::where('job_recruiting.id', $data['id'])->first();
+    // return Result::success($job);
+    if (empty($job)) {
+      return Result::error("招聘信息不存在", 0);
     }
-    /*
+    $user = User::where('id', $data['user_id'])->first();
+    // return Result::success($user);
+    if (empty($user) || $user['type_id'] != $data['user_type']) {
+      return Result::error("用户不存在", 0);
+    }
+    if ($user['type_id'] == 3 && $job['user_id'] != $user['id']) {
+      return Result::error("用户暂无权限修改此招聘信息!", 0);
+    }
+    $data['cat_arr_id'] = array_values(array_unique($data['cat_arr_id']));
+    $data['city_arr_id'] = array_values(array_unique($data['city_arr_id']));
+    $data['cat_arr_id'] = isset($data['cat_arr_id']) ? json_encode(array_map('intval', $data['cat_arr_id'])) : '';
+    $data['city_arr_id'] = isset($data['city_arr_id']) ? json_encode(array_map('intval', $data['city_arr_id'])) : '';
+
+    // 公司地址 管理员必填
+    $data['address_arr_id'] = array_values(array_unique($data['address_arr_id']));
+    $data['address_arr_id'] = isset($data['address_arr_id']) ? json_encode(array_map('intval', $data['address_arr_id'])) : '';
+    //   管理员-企业相关信息
+    $company = [
+      // 'user_id' => $data['user_id']?? null,
+      'business_name' => isset($data['business_name']) && $data['business_name'] !== '' ? $data['business_name'] : null,
+      'company_hy_id' => isset($data['company_hy_id']) && $data['company_hy_id'] !== '' ? $data['company_hy_id'] : null,
+      'company_size' => isset($data['company_size']) && $data['company_size'] !== '' ? $data['company_size'] : null,
+      'company_nature' => isset($data['company_nature']) && $data['company_nature'] !== '' ? $data['company_nature'] : null,
+      'introduction' => isset($data['introduction']) && $data['introduction'] !== '' ? $data['introduction'] : null,
+      'real_name' => isset($data['real_name']) && $data['real_name'] !== '' ? $data['real_name'] : null,
+      'mobile' => isset($data['mobile']) && $data['mobile'] !== '' ? $data['mobile'] : null,
+      'company_url' => isset($data['company_url']) && $data['company_url'] !== '' ? $data['company_url'] : null,
+      'address_arr_id' => isset($data['address_arr_id']) && $data['address_arr_id'] !== '' ? $data['address_arr_id'] : null,
+      'address' => isset($data['address']) && $data['address'] !== '' ? $data['address'] : null,
+      'email' => isset($data['email']) && $data['email'] !== '' ? $data['email'] : null,
+    ];
+    //去掉相关企业信息 
+    $data = array_diff_key($data, array_flip(array_keys($company)));
+    $jobId = $data['id'];
+    $web = $data['website_id'];
+    $data['action_id'] = $data['user_id'];
+    unset($data['user_id']);
+    unset($data['user_type']);
+    unset($data['id']);
+    unset($data['website_id']);
+    // return Result::success($data);
+    Db::beginTransaction();
+    try {
+      // 管理员修改招聘信息
+      if ($user['type_id'] == 10000) {
+        $data['website_id'] = $web;
+        $company['website_id'] = $data['website_id'];
+        $data['status'] = 1;
+      } else {
+        $data['status'] = 0;
+      }
+      $data['experience'] = isset($data['experience']) && $data['experience'] !== '' ? $data['experience'] : null;
+      $data['salary'] = isset($data['salary']) && $data['salary'] !== '' ? $data['salary'] : null;
+      $data['number'] = isset($data['number']) && $data['number'] !== '' ? $data['number'] : null;
+      $data['language'] = isset($data['language']) && $data['language'] !== '' ? $data['language'] : null;
+      $data['level'] = isset($data['level']) && $data['level'] !== '' ? $data['level'] : null;
+      $data['job_level'] = isset($data['job_level']) && $data['job_level'] !== '' ? $data['job_level'] : null;
+      $data['educational'] = isset($data['educational']) && $data['educational'] !== '' ? $data['educational'] : null;
+      // return Result::success($job);
+      // Db::rollBack();
+      // return Result::success($company);
+      if ((isset($data['status']) && $data['status'] == 0) || !isset($data['status'])) {
+        $this->sendMessage([
+          'talk_type' => 500,
+          'title' => $data['title'],
+          'content' => '提交了审核',
+          'messageType' => 10,
+        ]);
+      }
+      $result['job'] = JobRecruiting::where('id', $jobId)->update($data);
+      if (empty($result['job'])) {
+        Db::rollBack();
+        return Result::error("修改招聘信息失败");
+      }
+      // 管理员修改企业相关信息
+      $result['company'] = JobCompany::where('job_id', $jobId)->update($company);
+      if (empty($result['company'])) {
+        Db::rollBack();
+        return Result::error("修改企业相关信息失败");
+      }
+      Db::commit();
+      // return Result::success($result);
+    } catch (\Exception $e) {
+      Db::rollBack();
+      return Result::error($e->getMessage(), 0);
+    }
+    return Result::success($result);
+  }
+  /*
     * 招聘信息删除
     * */
   public function delJobRecruiting(array $data): array
@@ -7240,6 +7240,7 @@ class NewsService implements NewsServiceInterface
           $query->whereJsonDoesntContain('read_id', $user_id)
             ->orWhereNull('read_id');
         })
+        ->orderBy('updated_at', 'desc')
         ->get();
       $complaint_unread = Complaint::where('status', 2)
         ->whereJsonContains('re_user_ids', $user_id)
@@ -7248,6 +7249,7 @@ class NewsService implements NewsServiceInterface
           $query->whereJsonDoesntContain('read_id', $user_id)
             ->orWhereNull('read_id');
         })
+        ->orderBy('updated_at', 'desc')
         ->get();