瀏覽代碼

修改b端接口:添加招聘信息、修改招聘信息

15313670163 5 月之前
父節點
當前提交
0569a47847
共有 1 個文件被更改,包括 76 次插入75 次删除
  1. 76 75
      app/JsonRpc/NewsService.php

+ 76 - 75
app/JsonRpc/NewsService.php

@@ -1136,100 +1136,97 @@ class NewsService implements NewsServiceInterface
             return Result::error("网站不存在", 0);
         }
         // return Result::success($user);
-        $data['action_id'] = $data['user_id'];
-        $data['user_type'] = $user['type_id'];
-        $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['action_id'] = $data['user_id'] ?? null;
+        $data['user_type'] = $user['type_id'] ?? null;
+        $data['cat_arr_id'] = isset($data['cat_arr_id']) && !empty($data['cat_arr_id']) ? array_values(array_unique($data['cat_arr_id'])) : null;
+        $data['city_arr_id'] = isset($data['city_arr_id']) && !empty($data['city_arr_id']) ? array_values(array_unique($data['city_arr_id'])) : null;
+        $data['cat_arr_id'] = isset($data['cat_arr_id']) && !empty($data['cat_arr_id']) ? json_encode(array_map('intval', $data['cat_arr_id'])) : null;
+        $data['city_arr_id'] = isset($data['city_arr_id']) && !empty($data['city_arr_id']) ? json_encode(array_map('intval', $data['city_arr_id'])) : null;
          // 公司地址 管理员必填
-        $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'])) : '';
+        $data['address_arr_id'] = isset($data['address_arr_id']) && !empty($data['address_arr_id']) ? array_values(array_unique($data['address_arr_id'])) : null;
+        $data['address_arr_id'] = isset($data['address_arr_id']) && !empty($data['address_arr_id']) ? json_encode(array_map('intval', $data['address_arr_id'])) : null;
         // 管理员-企业相关信息
         $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,
+            '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)));
         Db::beginTransaction();
         try {
-            // 先添加职位相关信息
+        //     // 先添加职位相关信息
             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;
+            // return Result::success($job);
             $jobId = JobRecruiting::insertGetId($job);
             if (empty($jobId)) {
-                Db::rollBack();
+                // Db::rollBack();
                 return Result::error("添加失败");
             }
+            
             // 添加公司信息
-            $company['user_id'] = $data['user_id']?? null;
+            $company['user_id'] = $data['user_id'] ?? null;
             $company['job_id'] = $jobId;
-            $company['user_type'] = $user['type_id']?? null;
-            $company['website_id'] = $data['website_id']?? null;
+            $company['user_type'] = $user['type_id'] ?? null;
+            $company['website_id'] = $data['website_id'] ?? null;
             if($user['type_id'] == 10000){
                 // 管理员添加企业信息
-                //    return Result::success($company);
                $companyId = JobCompany::insertGetId($company);
                if (empty($companyId)) {
                    Db::rollBack();
                    return Result::error("添加失败");
                }
            }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();
+                    // Db::rollBack();
                     return Result::error("添加失败");
                 }
-                // return Result::success($company);
            }
             Db::commit();
+            $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);
+        // $result = [
+        //     'job_id' => $jobId,
+        //     'company_id' => $companyId,
+        // ];
+        // if (empty($result)) {
+        //     return Result::error("添加失败", 0);
+        // }
+        // return Result::success($result);
     }
      /*
     * 获取招聘信息详情
@@ -1306,17 +1303,18 @@ class NewsService implements NewsServiceInterface
         $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,
+             // '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)));
@@ -1338,11 +1336,14 @@ class NewsService implements NewsServiceInterface
             }else{
                 $data['status'] = 0;
             }
-            if(empty($data['experience']) || $data['experience'] == ''){
-                $job['experience'] = null;
-            }else{
-                $job['experience'] = $data['experience'];
-            }
+            $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);
             $result['job'] = JobRecruiting::where('id', $jobId)->update($data);