Parcourir la source

返回格式微调

duqinya il y a 6 ans
Parent
commit
4c249de9d2
1 fichiers modifiés avec 23 ajouts et 18 suppressions
  1. 23 18
      app/Repositories/CmsContentTemplateSetRepository.php

+ 23 - 18
app/Repositories/CmsContentTemplateSetRepository.php

@@ -100,7 +100,7 @@ class CmsContentTemplateSetRepository {
      * banner配置
      */
     public function bannerSet($request)
-    {var_dump($request);die;
+    {
         $banner_id = $request['id'] ?? '';
         $rules = $request['rule'];
         if (is_array($rules)) {
@@ -119,6 +119,7 @@ class CmsContentTemplateSetRepository {
                 $old_subject_id = $this->cmsContentTemplateSet->select('rule')->find($banner_id);
                 $subject_id_array = json_decode($old_subject_id['rule'], true);
                 $request_rule = $request['rule'];
+                if (count($request_rule)>0){
                     foreach ($request_rule as $k => $v) {
                         if (isset($v['link_type']) && $v['link_type'] == 1) {
                             $templates = $this->cmsSubject->where('id', intval($v['link_url']))->first();
@@ -126,30 +127,32 @@ class CmsContentTemplateSetRepository {
                             $templates->save();
                         }
                     }
-
-                foreach ($subject_id_array as $val) {
-                    if (isset($val['link_type']) && $val['link_type'] == 1) {
-                        $templates = $this->cmsSubject->where('id', intval($val['link_url']))->first();
-                        $update_template = [
-                            $templates->used_count -= 1
-                        ];
-                        $templates->update($update_template);
+                }
+                if (count($subject_id_array)>0) {
+                    foreach ($subject_id_array as $val) {
+                        if (isset($val['link_type']) && $val['link_type'] == 1) {
+                            $templates = $this->cmsSubject->where('id', intval($val['link_url']))->first();
+                            $update_template = [
+                                $templates->used_count -= 1
+                            ];
+                            $templates->update($update_template);
+                        }
                     }
                 }
-
                 $banners = $this->cmsContentTemplateSet->where('id', $banner_id)->update($subject);
                 if (!$banners) {
                     throw new HttpException(500, '更新失败');
                 }
             } else {
-                foreach ($request['rule'] as $v) {
-                    if (isset($v['link_type']) && $v['link_type'] == 1) {
-                        $templates = $this->cmsSubject->where('id', intval($v['link_url']))->first();
-                        $templates->used_count += 1;
-                        $templates->save();
+                if (count($request['rule'])>0) {
+                    foreach ($request['rule'] as $v) {
+                        if (isset($v['link_type']) && $v['link_type'] == 1) {
+                            $templates = $this->cmsSubject->where('id', intval($v['link_url']))->first();
+                            $templates->used_count += 1;
+                            $templates->save();
+                        }
                     }
                 }
-
                 if (!$this->cmsContentTemplateSet->create($subject)) {
                     throw new HttpException(500, '添加失败');
                 }
@@ -377,8 +380,10 @@ class CmsContentTemplateSetRepository {
         $banner_rule = $this->cmsContentTemplateSet->select('id','rule')->where(['tpl_id'=>$request['tpl_id'],'area_type'=>0])->orderBy('id', 'desc')->limit(1)->get();
         $new_rule = [];
         foreach ($banner_rule->toArray() as $k=>$v){
-            $new_rule[$k]['id'] = $v['id'];
-            $new_rule[$k]['rule'] = json_decode($v['rule'],true);
+            if (count(json_decode($v['rule']))>0){
+                $new_rule[$k]['id'] = $v['id'];
+                $new_rule[$k]['rule'] = json_decode($v['rule'],true);
+            }
         }
         $group_array['content'][0]['rule'] = $new_rule;
         $group_array['content'][1]['area_type'] = 1;