Sfoglia il codice sorgente

Merge branch '20250522_diywebfr'

15313670163 5 giorni fa
parent
commit
c6ff562c71
1 ha cambiato i file con 98 aggiunte e 41 eliminazioni
  1. 98 41
      app/JsonRpc/PublicRpcService.php

+ 98 - 41
app/JsonRpc/PublicRpcService.php

@@ -1296,6 +1296,10 @@ class PublicRpcService implements PublicRpcServiceInterface
         if(!empty($component_id)){
             return Result::error('组件编号已存在!');
         }
+        $component_type = ComponentType::where('id',$data['type_id'])->first();
+        if(empty($component_type)){
+            return Result::error('组件分类不存在!');
+        }
         // 组件分类:1:资讯-头条组件;2:资讯-轮播组件;3:资讯-推荐图类组件;4:资讯-最新类组件;5:资讯-推荐类;6:资讯-热点类组件;
         // 7:资讯-栏目类组件;8:列表类组件;9:详情类组件;10:二级导航栏类组件;11:广告类;12:静态资源类;13:底部导航类;
         $data['type_id'] = intval($data['type_id']);
@@ -1308,23 +1312,32 @@ class PublicRpcService implements PublicRpcServiceInterface
             'component_height' => $data['component_height'],
             'type_id' => intval($data['type_id']),
             'component_keyword' => $data['component_keyword'],
+            'component_column' => $component_type['com_code'],
         ];
         switch($data['type_id']){
-        //    组件分类:1:资讯-头条组件;2:资讯-轮播组件;3:资讯-推荐图类组件;4:资讯-最新类组件;5:资讯-推荐类;6:资讯-热点类组件;
-        //    7:资讯-栏目类组件;8:列表类组件;9:详情类组件;10:二级导航栏类组件;11:广告类;12:静态资源类;13:底部导航类;
-        // 14:广告资讯混合类;
             case 1:                         //1:资讯-头条组件;
-                 $add_arr['level'] = 1;
             case 2:                         //2:资讯-轮播组件;
-                $add_arr['level'] = 2;
             case 3:                         //3:资讯-推荐图类组件;
-                $add_arr['level'] = 3;
             case 4:                         //4:资讯-最新类组件;
-                $add_arr['level'] = 4;
             case 5:                        //5:资讯-推荐类组件;
-                $add_arr['level'] = 5;
             case 6:                        //6:资讯-热点类组件;
-                $add_arr['level'] = 6;
+                $add_arr['level'] = $data['type_id'];
+                $add_arr['img_num'] = intval($data['img_num']);
+                $add_arr['text_num'] = intval($data['text_num']);
+                $add_arr['child_imgnum'] = intval($data['child_imgnum'] ?? null);
+                $add_arr['child_textnum'] = intval($data['child_textnum'] ?? null);
+                $component_data['componentData'] = [
+                    'category_id' => '',
+                    'level' => $add_arr['level'],
+                    'imgSize' => $data['img_num'] ?? '',
+                    'textSize' => $data['text_num'] ?? '',
+                    'child' => [
+                        'id' => '',
+                        'imgSize' => $data['child_imgnum'] ?? '',
+                        'textSize' => $data['child_textnum'] ?? '',
+                    ]
+                ];
+                break;
             case 14:
                 $add_arr['ad_width'] = intval($data['ad_width']);
                 $add_arr['ad_height'] = intval($data['ad_height']);
@@ -1332,14 +1345,30 @@ class PublicRpcService implements PublicRpcServiceInterface
                 $add_arr['component_height'] = intval($data['ad_height']);
                 $add_arr['ad_type'] = intval($data['ad_type']);
                 $add_arr['ad_img'] = $data['ad_img'];
-             case 7:                        //7:资讯-栏目类组件;
                 $add_arr['img_num'] = intval($data['img_num']);
                 $add_arr['text_num'] = intval($data['text_num']);
                 $add_arr['child_imgnum'] = intval($data['child_imgnum'] ?? null);
                 $add_arr['child_textnum'] = intval($data['child_textnum'] ?? null);
                 $component_data['componentData'] = [
                     'category_id' => '',
-                    'level' => $add_arr['level'] ?? '',
+                    'level' => '',
+                    'imgSize' => $data['img_num'] ?? '',
+                    'textSize' => $data['text_num'] ?? '',
+                    'child' => [
+                        'id' => '',
+                        'imgSize' => $data['child_imgnum'] ?? '',
+                        'textSize' => $data['child_textnum'] ?? '',
+                    ]
+                ];
+                break;
+            case 7:                        //7:资讯-栏目类组件;
+                $add_arr['img_num'] = intval($data['img_num']);
+                $add_arr['text_num'] = intval($data['text_num']);
+                $add_arr['child_imgnum'] = intval($data['child_imgnum'] ?? null);
+                $add_arr['child_textnum'] = intval($data['child_textnum'] ?? null);
+                $component_data['componentData'] = [
+                    'category_id' => '',
+                    'level' => '',
                     'imgSize' => $add_arr['img_num'] ?? '',
                     'textSize' => $add_arr['text_num'] ?? '',
                     'child' => [
@@ -1369,6 +1398,17 @@ class PublicRpcService implements PublicRpcServiceInterface
                     'fcat_id' => '',
                 ];
                 break;
+            case 11:                     //11:广告类;
+                $add_arr['ad_width'] = intval($data['ad_width']);
+                $add_arr['ad_height'] = intval($data['ad_height']);
+                $add_arr['component_width'] = intval($data['ad_width']);
+                $add_arr['component_height'] = intval($data['ad_height']);
+                $add_arr['ad_type'] = intval($data['ad_type']);
+                $add_arr['ad_img'] = $data['ad_img'];
+                break;
+            case 12:                     //12:静态资源类;
+                $component_data['componentData'] = [];
+                break; 
             case 13:                     //13:底部导航类;
                 $add_arr['cate_place'] = 0;
                 $add_arr['pageSize'] = intval($data['pageSize']);
@@ -1378,15 +1418,6 @@ class PublicRpcService implements PublicRpcServiceInterface
                     'num' => $add_arr['pageSize'],
                 ];
                 break;
-            case 11:                     //11:广告类;
-                $add_arr['ad_width'] = intval($data['ad_width']);
-                $add_arr['ad_height'] = intval($data['ad_height']);
-                $add_arr['component_width'] = intval($data['ad_width']);
-                $add_arr['component_height'] = intval($data['ad_height']);
-                $add_arr['ad_type'] = intval($data['ad_type']);
-                $add_arr['ad_img'] = $data['ad_img'];
-                break;
-
             default:
                 break;
         }
@@ -1395,10 +1426,7 @@ class PublicRpcService implements PublicRpcServiceInterface
             'type_id' => $add_arr['type_id'],
             'component_name' => $add_arr['component_name'],
         ];
-        if(isset($data['listType']) && !empty($data['listType']) && is_array($data['listType'])){
-            $list_type['listType'] = $data['listType'];
-            $add_arr['component_column'] = json_encode($list_type,true);
-        }
+        $add_arr['component_column'] = $component_type['com_code'];
         if(isset($component_head_code) && !empty($component_head_code) && is_array($component_head_code)){
             $add_arr['component_code'] = json_encode($component_head_code,true);
         }
@@ -1449,10 +1477,12 @@ class PublicRpcService implements PublicRpcServiceInterface
         if(!empty($component_id) || $component_id != null){
             return Result::error('组件编号已存在!');
         }
-        // return Result::success($component_id);
-        // return Result::success($component_place);
-        //    组件分类:1:资讯-头条组件;2:资讯-轮播组件;3:资讯-推荐图类组件;4:资讯-最新类组件;5:资讯-推荐类;6:资讯-热点类组件;
-        //    7:资讯-栏目类组件;8:列表类组件;9:详情类组件;10:二级导航栏类组件;11:广告类;12:静态资源类;13:底部导航类;
+        $component_type = ComponentType::where('id',$data['type_id'])->first();
+        if(empty($component_type)){
+            return Result::error('组件分类不存在!');
+        }
+        // 组件分类:1:资讯-头条组件;2:资讯-轮播组件;3:资讯-推荐图类组件;4:资讯-最新类组件;5:资讯-推荐类;6:资讯-热点类组件;
+        // 7:资讯-栏目类组件;8:列表类组件;9:详情类组件;10:二级导航栏类组件;11:广告类;12:静态资源类;13:底部导航类;
         $data['type_id'] = intval($data['type_id']);
         $add_arr = [
             // 'template_id' => intval($data['template_id']),
@@ -1463,21 +1493,32 @@ class PublicRpcService implements PublicRpcServiceInterface
             'component_height' => $data['component_height'],
             'type_id' => intval($data['type_id']),
             'component_keyword' => $data['component_keyword'],
-        ];
-        
+            'component_column' => $component_type['com_code'],
+        ];        
         switch($data['type_id']){
             case 1:                         //1:资讯-头条组件;
-                 $add_arr['level'] = 1;
             case 2:                         //2:资讯-轮播组件;
-                $add_arr['level'] = 2;
             case 3:                         //3:资讯-推荐图类组件;
-                $add_arr['level'] = 3;
             case 4:                         //4:资讯-最新类组件;
-                $add_arr['level'] = 4;
             case 5:                        //5:资讯-推荐类组件;
-                $add_arr['level'] = 5;
             case 6:                        //6:资讯-热点类组件;
-                $add_arr['level'] = 6;
+                $add_arr['level'] = $data['type_id'];
+                $add_arr['img_num'] = intval($data['img_num']);
+                $add_arr['text_num'] = intval($data['text_num']);
+                $add_arr['child_imgnum'] = intval($data['child_imgnum'] ?? null);
+                $add_arr['child_textnum'] = intval($data['child_textnum'] ?? null);
+                $component_data['componentData'] = [
+                    'category_id' => '',
+                    'level' => $add_arr['level'],
+                    'imgSize' => $data['img_num'] ?? '',
+                    'textSize' => $data['text_num'] ?? '',
+                    'child' => [
+                        'id' => '',
+                        'imgSize' => $data['child_imgnum'] ?? '',
+                        'textSize' => $data['child_textnum'] ?? '',
+                    ]
+                ];
+                break;
             case 14:
                 $add_arr['ad_width'] = intval($data['ad_width']);
                 $add_arr['ad_height'] = intval($data['ad_height']);
@@ -1485,6 +1526,22 @@ class PublicRpcService implements PublicRpcServiceInterface
                 $add_arr['component_height'] = intval($data['ad_height']);
                 $add_arr['ad_type'] = intval($data['ad_type']);
                 $add_arr['ad_img'] = $data['ad_img'];
+                $add_arr['img_num'] = intval($data['img_num']);
+                $add_arr['text_num'] = intval($data['text_num']);
+                $add_arr['child_imgnum'] = intval($data['child_imgnum'] ?? null);
+                $add_arr['child_textnum'] = intval($data['child_textnum'] ?? null);
+                $component_data['componentData'] = [
+                    'category_id' => '',
+                    'level' => '',
+                    'imgSize' => $data['img_num'] ?? '',
+                    'textSize' => $data['text_num'] ?? '',
+                    'child' => [
+                        'id' => '',
+                        'imgSize' => $data['child_imgnum'] ?? '',
+                        'textSize' => $data['child_textnum'] ?? '',
+                    ]
+                ];
+                break;
             case 7:                        //7:资讯-栏目类组件;
                 $add_arr['img_num'] = intval($data['img_num']);
                 $add_arr['text_num'] = intval($data['text_num']);
@@ -1522,7 +1579,7 @@ class PublicRpcService implements PublicRpcServiceInterface
                     'fcat_id' => '',
                 ];
                 break;
-             case 11:                     //11:广告类;
+            case 11:                     //11:广告类;
                 $add_arr['ad_width'] = intval($data['ad_width']);
                 $add_arr['ad_height'] = intval($data['ad_height']);
                 $add_arr['component_width'] = intval($data['ad_width']);
@@ -1530,6 +1587,9 @@ class PublicRpcService implements PublicRpcServiceInterface
                 $add_arr['ad_type'] = intval($data['ad_type']);
                 $add_arr['ad_img'] = $data['ad_img'];
                 break;
+            case 12:                     //12:静态资源类;
+                $component_data['componentData'] = [];
+                break; 
             case 13:                     //13:底部导航类;
                 $add_arr['cate_place'] = 0;
                 $add_arr['pageSize'] = intval($data['pageSize']);
@@ -1547,10 +1607,7 @@ class PublicRpcService implements PublicRpcServiceInterface
             'type_id' => $add_arr['type_id'],
             'component_name' => $add_arr['component_name'],
         ];
-        if(isset($data['listType']) && !empty($data['listType']) && is_array($data['listType'])){
-            $list_type['listType'] = $data['listType'];
-            $add_arr['component_column'] = json_encode($list_type,true);
-        }
+        $add_arr['component_column'] = $component_type['com_code'];
         if(isset($component_head_code) && !empty($component_head_code) && is_array($component_head_code)){
             $add_arr['component_code'] = json_encode($component_head_code,true);
         }