Преглед изворни кода

Merge branch '20250605_company_fr'

15313670163 пре 7 месеци
родитељ
комит
95c85b0cfd
1 измењених фајлова са 53 додато и 21 уклоњено
  1. 53 21
      app/JsonRpc/PublicRpcService.php

+ 53 - 21
app/JsonRpc/PublicRpcService.php

@@ -31,6 +31,8 @@ use function Hyperf\Support\retry;
 use App\Model\Company;
 use Hyperf\Paginator\Paginator;
 use App\Model\User;
+use Fukuball\Jieba\Jieba;
+use Fukuball\Jieba\Finalseg;
 #[RpcService(name: "PublicRpcService", protocol: "jsonrpc-http", server: "jsonrpc-http")]
 class PublicRpcService implements PublicRpcServiceInterface
 {
@@ -1321,6 +1323,29 @@ class PublicRpcService implements PublicRpcServiceInterface
     {
         $data['category_id'] = isset($data['cat_arr_id']) ? end($data['cat_arr_id']) : '';
         $data['cat_arr_id'] = isset($data['cat_arr_id']) ? json_encode($data['cat_arr_id']) : '';
+        if ($data['imgurl'] == '') {
+            //content中提取图片第一个图,正则提取
+            $reg = '/<img.*?src=[\"|\']?(.*?)[\"|\']?\s.*?>/i';
+            preg_match_all($reg, $data['content'], $matches);
+            if (isset($matches[1][0])) {
+                //截取varchar240
+                $data['imgurl'] = substr($matches[1][0], 0, 240);
+            } 
+        }
+        if ($data['keyword'] == '') {
+            //提取标题+内容中的关键词
+            $data['keyword'] = $data['title'];
+            //  . substr(str_replace(' ', '', strip_tags($data['content'])), 0, 20);
+            Jieba::init(); // 初始化 jieba-php
+            Finalseg::init();
+            $segList = Jieba::cut($data['keyword']);
+            $segList1 = array_slice($segList, 0, 8);
+            $data['keyword'] = implode(',', $segList1);
+        }
+        if ($data['introduce'] == '') {
+            //提取内容中的描述
+            $data['introduce'] = substr(str_replace(' ', '', strip_tags($data['content'])), 0, 100);
+        }
         $user = User::where('id', $data['user_id'])->first();
         if(empty($user)){
             return Result::error('用户不存在!');
@@ -1344,6 +1369,29 @@ class PublicRpcService implements PublicRpcServiceInterface
     {
         $data['category_id'] = isset($data['cat_arr_id']) ? end($data['cat_arr_id']) : '';
         $data['cat_arr_id'] = isset($data['cat_arr_id']) ? json_encode($data['cat_arr_id']) : '';
+        if ($data['imgurl'] == '') {
+            //content中提取图片第一个图,正则提取
+            $reg = '/<img.*?src=[\"|\']?(.*?)[\"|\']?\s.*?>/i';
+            preg_match_all($reg, $data['content'], $matches);
+            if (isset($matches[1][0])) {
+                //截取varchar240
+                $data['imgurl'] = substr($matches[1][0], 0, 240);
+            } 
+        }
+        if ($data['keyword'] == '') {
+            //提取标题+内容中的关键词
+            $data['keyword'] = $data['title'];
+            //  . substr(str_replace(' ', '', strip_tags($data['content'])), 0, 20);
+            Jieba::init(); // 初始化 jieba-php
+            Finalseg::init();
+            $segList = Jieba::cut($data['keyword']);
+            $segList1 = array_slice($segList, 0, 8);
+            $data['keyword'] = implode(',', $segList1);
+        }
+        if ($data['introduce'] == '') {
+            //提取内容中的描述
+            $data['introduce'] = substr(str_replace(' ', '', strip_tags($data['content'])), 0, 100);
+        }
         $user = User::where('id', $data['user_id'])->first();
         if(empty($user)){
             return Result::error('用户不存在!');
@@ -1385,37 +1433,21 @@ class PublicRpcService implements PublicRpcServiceInterface
         if(empty($user)){
             return Result::error('用户不存在!');
         }
-        if($user['type_id'] != 10000){
-            return Result::error('用户权限不足!');
-        }
         $company = Company::where('id', $data['id'])->first();
         if(empty($company)){
             return Result::error('企业不存在!');
         }
         // 状态:0:未审核 1:已审核 2:已拒绝
-        if($company['status'] == 0){
-            switch ($data['status']) {
-                case 0:
-                    return Result::error('请选择审核状态!');
-                    break;
-                case 1:
-                    $result = Company::where('id', $data['id'])->update(['status' => $data['status']]);
-                    break;
-                case 2:
-                    $result = Company::where('id', $data['id'])->update(['status' => $data['status'],'reject_reason'=> $data['reject_reason']]);
-                    break;
-                default:
-                    return Result::error('请选择审核状态!');
-                    break;
-            }
+        if($company['status'] == 0 || $company['status'] == 1){
+            $result = Company::where('id', $data['id'])->update(['status' => $data['status']]);
         }else{
-            return Result::error('企业已审核!');
+            $result = Company::where('id', $data['id'])->update(['status' => $data['status'],'reject_reason'=> $data['reject_reason']]);
         }
         if(empty($result)){
             return Result::error('审核失败!');
         }else{
             return Result::success($result);
-        } 
+        }
     }
     /**
      * 获取企业信息
@@ -1427,7 +1459,7 @@ class PublicRpcService implements PublicRpcServiceInterface
         $result = Company::where('id', $data['id'])->first();
         if(empty($result)){
             return Result::error('企业不存在!');
-        }else{  
+        }else{
             return Result::success($result);
         }
     }