Prechádzať zdrojové kódy

Merge branch 'master' of http://git.bjzxtw.org.cn:3000/zxt/news_producer

LiuJ 5 mesiacov pred
rodič
commit
97a70096b2
1 zmenil súbory, kde vykonal 127 pridanie a 133 odobranie
  1. 127 133
      app/JsonRpc/NewsService.php

+ 127 - 133
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' => $data['business_name'] ?? null,
-      'company_hy_id' => $data['company_hy_id'] ?? null,
-      'company_size' => $data['company_size'] ?? null,
-      'company_nature' => $data['company_nature'] ?? null,
-      'introduction' => $data['introduction'] ?? null,
-      'real_name' => $data['real_name'] ?? null,
-      'mobile' => $data['mobile'] ?? null,
-      'company_url' => $data['company_url'] ?? null,
-      'address_arr_id' => $data['address_arr_id'] ?? null,
-      'address' => $data['address'] ?? null,
-      '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)));
@@ -5002,11 +5002,13 @@ class NewsService implements NewsServiceInterface
       if ($user['type_id'] == 10000) {
         $job['status'] = 1;
       }
-      if (empty($data['experience']) || $data['experience'] == '') {
-        $job['experience'] = null;
-      } else {
-        $job['experience'] = $data['experience'];
-      }
+      $job['experience'] = isset($data['experience']) && $data['experience'] !== '' ? $data['experience'] : null;
+      $job['salary'] = isset($data['salary']) && $data['salary'] !== '' ? $data['salary'] : null;
+      $job['number'] = isset($data['number']) && $data['number'] !== '' ? $data['number'] : null;
+      $job['language'] = isset($data['language']) && $data['language'] !== '' ? $data['language'] : null;
+      $job['level'] = isset($data['level']) && $data['level'] !== '' ? $data['level'] : null;
+      $job['job_level'] = isset($data['job_level']) && $data['job_level'] !== '' ? $data['job_level'] : null;
+      $job['educational'] = isset($data['educational']) && $data['educational'] !== '' ? $data['educational'] : null;
       if ((isset($data['status']) && $data['status'] == 0) || !isset($data['status'])) {
         $this->sendMessage([
           'talk_type' => 500,
@@ -5035,23 +5037,10 @@ class NewsService implements NewsServiceInterface
         }
       } else {
         // 企业会员添加企业信息
-        $company = [
-          'user_id' => $data['user_id'] ?? null,
-          'business_name' => $user['business_name'] ?? null,
-          'company_hy_id' => $user['company_hy_id'] ?? null,
-          'company_size' => $user['company_size'] ?? null,
-          'company_nature' => $user['company_nature'] ?? null,
-          'introduction' => $user['introduction'] ?? null,
-          'real_name' => $user['real_name'] ?? null,
-          'mobile' => $user['mobile'] ?? null,
-          'company_url' => $user['company_url'] ?? null,
-          'address_arr_id' => $user['address_arr_id'] ?? null,
-          'address' => $user['address'] ?? null,
-          'email' => $user['email'] ?? null,
-          'website_id' => $data['website_id'] ?? null,
-          'user_type' => $user['type_id'] ?? null,
-          'job_id' => $jobId,
-        ];
+        $company['user_id'] = isset($data['user_id']) && $data['user_id'] !== '' ? $data['user_id'] : null;
+        $company['website_id'] = isset($data['website_id']) && $data['website_id'] !== '' ? $data['website_id'] : null;
+        $company['user_type'] = isset($data['user_type']) && $data['user_type'] !== '' ? $data['user_type'] : null;
+        $company['job_id'] = $jobId;
         $companyId = JobCompany::insertGetId($company);
         if (empty($companyId)) {
           Db::rollBack();
@@ -5060,18 +5049,19 @@ class NewsService implements NewsServiceInterface
         // return Result::success($company);
       }
       Db::commit();
+      $companyId = JobCompany::insertGetId($company);
+      $result = [
+        'job_id' => $jobId,
+        'company_id' => $companyId,
+      ];
+      if (empty($result)) {
+          return Result::error("添加失败", 0);
+      }
+      return Result::success($result);
     } catch (\Exception $e) {
       Db::rollBack();
       return Result::error($e->getMessage(), 0);
     }
-    $result = [
-      'job_id' => $jobId,
-      'company_id' => $companyId,
-    ];
-    if (empty($result)) {
-      return Result::error("添加失败", 0);
-    }
-    return Result::success($result);
   }
   /*
     * 获取招聘信息详情
@@ -5125,98 +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 = [
-      'business_name' => $data['business_name'] ?? null,
-      'company_hy_id' => $data['hy_id'] ?? null,
-      'company_size' => $data['company_size'] ?? null,
-      'company_nature' => $data['company_nature'] ?? null,
-      'introduction' => $data['introduction'] ?? null,
-      'real_name' => $data['real_name'] ?? null,
-      'mobile' => $data['mobile'] ?? null,
-      'company_url' => $data['company_url'] ?? null,
-      'address_arr_id' => $data['address_arr_id'] ?? null,
-      'address' => $data['address'] ?? null,
-      '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;
-      }
-      if (empty($data['experience']) || $data['experience'] == '') {
-        $job['experience'] = null;
-      } else {
-        $job['experience'] = $data['experience'];
-      }
-      // 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);
+    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);
     }
-    return Result::success($result);
-  }
-  /*
+    /*
     * 招聘信息删除
     * */
   public function delJobRecruiting(array $data): array