diff --git a/app/admin/controller/v1/BannerItem.php b/app/admin/controller/v1/BannerItem.php index 7844309e..7c4c3625 100644 --- a/app/admin/controller/v1/BannerItem.php +++ b/app/admin/controller/v1/BannerItem.php @@ -187,10 +187,7 @@ class BannerItem // 更新关联的产品分类 if (!empty($put['rel_prod_cate_id'])) { - $ok = SysBannerProdCateMappingModel::where('banner_item_id', '=', $id)->delete(); - if (!$ok) { - throw new InvalidOperateException('更新横幅与产品分类关联失败'); - } + SysBannerProdCateMappingModel::where('banner_item_id', '=', $id)->delete(); $mapping = SysBannerProdCateMappingModel::create([ 'banner_item_id' => $id, 'product_category_id' => $put['rel_prod_cate_id'] diff --git a/app/index/controller/Faq.php b/app/index/controller/Faq.php index c9b3a6eb..b6c380ff 100644 --- a/app/index/controller/Faq.php +++ b/app/index/controller/Faq.php @@ -29,6 +29,7 @@ class Faq extends Common 'at_platform' => request()->from ]) ->type('image') + ->enabled() ->visible(['id', 'title', 'image', 'link']) ->find(); View::assign('banner', $banner); diff --git a/app/index/controller/Product.php b/app/index/controller/Product.php index 609e5d33..a8291e2e 100644 --- a/app/index/controller/Product.php +++ b/app/index/controller/Product.php @@ -479,6 +479,7 @@ class Product extends Common ->where('status', '=', 1) ->order(['sort' => 'asc', 'id' => 'desc']); }]) + ->atPlatform(request()->from) ->uniqueLabel(['BANNER_680dd7ceaa529']) ->language($this->lang_id) ->enabled(true) diff --git a/app/index/controller/TopicNas.php b/app/index/controller/TopicNas.php index a96d0649..e5bccc4d 100644 --- a/app/index/controller/TopicNas.php +++ b/app/index/controller/TopicNas.php @@ -66,7 +66,8 @@ class TopicNas extends Common // 获取banner数据 $banners = SysBannerModel::with(['items' => function($query) { $query->withoutField(['sort', 'created_at', 'updated_at', 'deleted_at']) - ->order(['sort' => 'asc', 'id' => 'desc']); + ->order(['sort' => 'asc', 'id' => 'desc']) + ->enabled(true); }]) ->atPlatform(request()->from) ->uniqueLabel([ @@ -110,8 +111,9 @@ class TopicNas extends Common $trial_instructions = []; // 获取banner数据 $banners = SysBannerModel::with(['items' => function($query) { - $query->withoutField(['sort', 'created_at', 'updated_at', 'deleted_at']); + $query->withoutField(['sort', 'created_at', 'updated_at', 'deleted_at'])->enabled(true); }]) + ->atPlatform(request()->from) ->uniqueLabel([ 'BANNER_68103aaebe4c4', 'BANNER_68103acd1a8b9', @@ -148,8 +150,9 @@ class TopicNas extends Common $cooperation_cotacts = []; // 获取banner数据 $banners = SysBannerModel::with(['items' => function($query) { - $query->withoutField(['sort', 'created_at', 'updated_at', 'deleted_at']); + $query->withoutField(['sort', 'created_at', 'updated_at', 'deleted_at'])->enabled(true); }]) + ->atPlatform(request()->from) ->uniqueLabel([ 'BANNER_6810670b8ef17', 'BANNER_681067451b78f', @@ -202,8 +205,9 @@ class TopicNas extends Common $contacts = []; // 获取banner数据 $banners = SysBannerModel::with(['items' => function ($query) { - $query->withoutField(['sort', 'created_at', 'updated_at', 'deleted_at']); + $query->withoutField(['sort', 'created_at', 'updated_at', 'deleted_at'])->enabled(true); }]) + ->atPlatform(request()->from) ->uniqueLabel(['BANNER_6819754be2dc6']) ->language($this->lang_id) ->enabled(true) @@ -278,8 +282,9 @@ class TopicNas extends Common $data = []; // 获取banner数据 $banners = SysBannerModel::with(['items' => function($query) { - $query->withoutField(['sort', 'created_at', 'updated_at', 'deleted_at']); + $query->withoutField(['sort', 'created_at', 'updated_at', 'deleted_at'])->enabled(true); }]) + ->atPlatform(request()->from) ->uniqueLabel([ 'BANNER_6810798e6e828', 'BANNER_68107a0a63910', diff --git a/app/index/lang/en-us/mobile.php b/app/index/lang/en-us/mobile.php index 6bc8a5f1..5594b6b1 100644 --- a/app/index/lang/en-us/mobile.php +++ b/app/index/lang/en-us/mobile.php @@ -178,4 +178,25 @@ return [ '网络存储解决方案' => 'Network Storage Solutions', '配套软件' => 'Software', ], + + // nas主题 - 帮助页 + 'topicnas/help' => [ + '帮助中心' => 'Quick Start Guide', + '请输入搜索关键字,如安装赛博云空间,影视库' => 'What are you looking for?', + '取消' => 'Cancel', + '使用教程' => 'User\' s Guide', + '查看更多' => 'Click to view more', + '联系我们' => 'Contact US', + '目录' => 'Content' + ], + + // nas主题 - 帮助详情页 + 'topicnas/helpdetail' => [ + '帮助中心' => 'Quick Start Guide', + '请输入搜索关键字,如安装赛博云空间,影视库' => 'What are you looking for?', + '取消' => 'Cancel', + '使用教程' => 'User\' s Guide', + '联系我们' => 'Contact US', + '目录' => 'Content' + ], ]; \ No newline at end of file diff --git a/app/index/view/mobile/topic_nas/help.html b/app/index/view/mobile/topic_nas/help.html new file mode 100644 index 00000000..11be7fc6 --- /dev/null +++ b/app/index/view/mobile/topic_nas/help.html @@ -0,0 +1,132 @@ +{extend name="public/base" /} +{block name="style"} + +{/block} +{block name="header"} + +{/block} +{block name="main"} +
+
+
+ + + + +
+ + + + {notempty name="article_categorys"} +

{:lang_i18n('使用教程')}

+ {volist name="article_categorys" id="vo" key="idx"} +
+
+ {$vo.name} +
+
+ {volist name="vo.article" id="va"} + +
+ {$va.title} + +
+ {/volist} + {if condition="count($vo.article) >= 3"} + +
{:lang_i18n('查看更多')}
+
+ {/if} +
+
+ {/volist} + {/notempty} + + {notempty name="contacts"} +

{:lang_i18n('联系我们')}

+
+
+ {volist name="contacts" id="co" key="idx" offset="0" length="4"} + + + $co.title_txt_color])}>{$co.title} + {notempty name="co.desc"} + $co.desc_txt_color])}>{$co.desc|raw} + {/notempty} + + {/volist} +
+
+ {volist name="contacts" id="co" key="idx" offset="4"} + + + $co.title_txt_color])}>{$co.title}
+
+ {/volist} +
+
+ {/notempty} + + +
+
+{/block} +{block name="script"} + +{/block} \ No newline at end of file diff --git a/app/index/view/mobile/topic_nas/help_detail.html b/app/index/view/mobile/topic_nas/help_detail.html new file mode 100644 index 00000000..8359e7c5 --- /dev/null +++ b/app/index/view/mobile/topic_nas/help_detail.html @@ -0,0 +1,143 @@ +{extend name="public/base" /} +{block name="title"} +{notempty name="article.seo_title"}{$article.seo_title}{else /}{__BLOCK__}{/notempty} +{/block} +{block name="seo"} +{notempty name="article.seo_keywords"} + + +{else /} +{__BLOCK__} +{/notempty} +{/block} +{block name="style"} + +{/block} +{block name="header"} + +{/block} +{block name="main"} +
+
+
+ + + +
+ + +
+
+ +
+ {$article.content|raw|default=''} +
+ + + + +
+
+{/block} +{block name="script"} + +{/block} \ No newline at end of file diff --git a/public/static/index/mobile/css/topic_nas_help-detail.css b/public/static/index/mobile/css/topic_nas_help-detail.css new file mode 100644 index 00000000..2206a374 --- /dev/null +++ b/public/static/index/mobile/css/topic_nas_help-detail.css @@ -0,0 +1,216 @@ +.icon-menu-svg, +.icon-search-svg, +.icon-lag-svg { + color: #000 !important; +} + +.narshelpCenterdetail-app { + width: 100%; + display: flex; + flex-direction: column; +} + +.narshelpCenterdetail-app .headtop { + width: 100%; + left: 0; + right: 0; + margin: 0 auto; + display: flex; + position: fixed; + top: 0; + display: flex; + padding: 1.25rem 0; + align-items: center; + flex-direction: row; + justify-content: space-between; + background: #fff; +} + +.narshelpCenterdetail-app .headtop .logoicoimg { + width: auto; + margin-left: 1.875rem; +} + +.narshelpCenterdetail-app .headtop .ssicoimg { + width: 1.875rem; + height: 1.875rem; + margin-right: 15px; +} + +.narshelpCenterdetail-app .nhlp-app-content { + margin: 1.25rem; + height: 100%; + margin-top: 9.2vh; +} + +.narshelpCenterdetail-app #rendered-content img { + max-width: 100%; +} + +.narshelpCenterdetail-app .nhlpapp-search { + position: fixed; + z-index: 2; + top: 0; + height: 100vh; + display: flex; + width: 100%; + background: #fff; + flex-direction: column; + display: none; +} + +.narshelpCenterdetail-app .nhlpapp-search .nhlpappshtop { + display: flex; + flex-direction: row; + align-items: center; + justify-content: center; +} + +.narshelpCenterdetail-app .nhlpapp-search .nhlpappshtop .closetx { + font-size: 16px; + margin-right: 8%; +} + +.narshelpCenterdetail-app .nhlpapp-search .nhlpapp-shdiv { + margin: 1rem 20px; + height: 2.5rem; + display: flex; + flex-direction: row; + align-items: center; + border: 1px solid #cdcedb; + border-radius: 1.5625rem; + flex: 1; +} + +.narshelpCenterdetail-app .nhlpapp-search .nhlpapp-shdiv input { + font-size: 16px; + padding: 0 20px; + flex: 1; + border: none; + margin-left: 2px; + outline: none; +} + +.narshelpCenterdetail-app .nhlpapp-search .nhlpapp-shdiv input::placeholder { + color: #8f9099; + font-size: 14px; +} + +.narshelpCenterdetail-app .nhlpapp-search .nhlpapp-shdiv .searchimg { + width: 1.25rem; + height: 1.25rem; + margin-left: 1%; + margin-right: 5%; +} + +.narshelpCenterdetail-app .nhlpapp-search .dropdown { + height: 90vh; + overflow-y: auto; + margin: 1.25rem; +} + +.narshelpCenterdetail-app .nhlpapp-search .dropdown li { + margin-bottom: 0.75rem; + font-size: 0.9rem; + font-weight: 400; + width: 100%; + white-space: nowrap; + /* 禁止文本换行 */ + overflow: hidden; + /* 隐藏超出容器的内容 */ + text-overflow: ellipsis; + /* 超出部分用省略号表示 */ +} + +.narshelpCenterdetail-app .nhlpapp-search .dropdown .search-item { + color: #202734; +} + +.narshelpCenterdetail-app .nhlpapp-search .nhlpappline { + width: 100%; + height: 1px; + background: #cdcedb; +} + +.narshelpCenterdetail-app .nhlpapp-pagescate { + position: absolute; + margin-top: 8.7vh; + height: 92.3vh; + display: flex; + width: 100%; + flex-direction: column; + display: none; + background: #fff; + overflow-y: auto; +} + +.narshelpCenterdetail-app .nhlpapp-pagescate .nars-hlpdt-ml { + overflow-y: auto; + margin: 0 0.625rem; +} + +.narshelpCenterdetail-app .nhlpapp-pagescate .nars-hlpdt-ml .nav-tree { + overflow-y: auto; +} + +.narshelpCenterdetail-app .nhlpapp-pagescate .nars-hlpdt-ml .categoryhelp { + margin-bottom: 5px; +} + +.narshelpCenterdetail-app .nhlpapp-pagescate .nars-hlpdt-ml .categoryhelp-title { + display: block; + padding: 10px; + cursor: pointer; + position: relative; + display: flex; + flex-direction: row; + align-items: center; + font-size: 1rem; + font-weight: bold; + margin-left: 10px; + color: #1f2635; +} + +.narshelpCenterdetail-app .nhlpapp-pagescate .nars-hlpdt-ml .arrow { + margin-right: 0.125rem; + transform: rotate(0deg); + display: flex; + justify-content: center; +} + +.narshelpCenterdetail-app .nhlpapp-pagescate .nars-hlpdt-ml .arrow .nars-jt { + width: 16px; + height: 16px; +} + +.narshelpCenterdetail-app .nhlpapp-pagescate .nars-hlpdt-ml .rotate { + transform: rotate(90deg); +} + +.narshelpCenterdetail-app .nhlpapp-pagescate .nars-hlpdt-ml .sub-list { + display: none; + list-style: none; + padding: 0; + margin: 0; +} + +.narshelpCenterdetail-app .nhlpapp-pagescate .nars-hlpdt-ml .sub-list li a { + width: fit-content; + display: block; + margin: 0 10px; + padding-top: 22px; + text-decoration: none; + color: #333; + margin-left: 41px; + font-size: 0.875rem; + color: #8f9099; +} + +.narshelpCenterdetail-app .nhlpapp-pagescate .nars-hlpdt-ml .sub-list li:first a { + padding-top: 0; +} + +.narshelpCenterdetail-app .nhlpapp-pagescate .nars-hlpdt-ml .sub-list li a:hover { + color: #1f2635; + border-bottom: 1px solid #1f2635; +} \ No newline at end of file diff --git a/public/static/index/mobile/css/topic_nas_help.css b/public/static/index/mobile/css/topic_nas_help.css new file mode 100644 index 00000000..523e1d1f --- /dev/null +++ b/public/static/index/mobile/css/topic_nas_help.css @@ -0,0 +1,265 @@ +.icon-menu-svg, +.icon-search-svg, +.icon-lag-svg { + color: #000 !important; +} + +.narshelpCenterPc-app { + width: 100%; + display: flex; + flex-direction: column; +} + +.narshelpCenterPc-app .nhlpapp-search { + position: fixed; + z-index: 2; + top: 0; + height: 100vh; + display: flex; + width: 100%; + background: #fff; + flex-direction: column; + display: none; +} + +.narshelpCenterPc-app .nhlpapp-search .nhlpappshtop { + display: flex; + flex-direction: row; + align-items: center; + justify-content: center; +} + +.narshelpCenterPc-app .nhlpapp-search .nhlpappshtop .closetx { + font-size: 14px; + margin-right: 8%; +} + +.narshelpCenterPc-app .nhlpapp-search .nhlpapp-shdiv { + margin: 1rem 20px; + height: 2.5rem; + display: flex; + flex-direction: row; + align-items: center; + border: 1px solid #cdcedb; + border-radius: 1.5625rem; + flex: 1; +} + +.narshelpCenterPc-app .nhlpapp-search .nhlpapp-shdiv input { + font-size: 0.8125rem; + padding: 0 20px; + flex: 1; + border: none; + margin-left: 2px; + outline: none; +} + +.narshelpCenterPc-app .nhlpapp-search .nhlpapp-shdiv input::placeholder { + color: #8f9099; + font-size: 14px; +} + +.narshelpCenterPc-app .nhlpapp-search .nhlpapp-shdiv .searchimg { + width: 1.25rem; + height: 1.25rem; + margin-left: 1%; + margin-right: 5%; +} + +.narshelpCenterPc-app .nhlpapp-search .dropdown { + height: 90vh; + overflow-y: auto; + margin: 1.25rem; +} + +.narshelpCenterPc-app .nhlpapp-search .dropdown li { + margin-bottom: 0.75rem; + font-size: 0.9rem; + font-weight: 400; + width: 100%; + white-space: nowrap; + /* 禁止文本换行 */ + overflow: hidden; + /* 隐藏超出容器的内容 */ + text-overflow: ellipsis; + /* 超出部分用省略号表示 */ +} + +.narshelpCenterPc-app .nhlpapp-search .dropdown .search-item { + color: #202734; +} + +.narshelpCenterPc-app .nhlpapp-search .nhlpappline { + width: 100%; + height: 1px; + background: #cdcedb; +} + +.narshelpCenterPc-app .headtop { + width: 100%; + left: 0; + right: 0; + margin: 0 auto; + display: flex; + position: fixed; + top: 0; + display: flex; + padding: 1.25rem 0; + align-items: center; + flex-direction: row; + justify-content: space-between; + background: #fff; +} + +.narshelpCenterPc-app .headtop .logoicoimg { + width: auto; + margin-left: 1.875rem; +} + +.narshelpCenterPc-app .headtop .ssicoimg { + width: 1.875rem; + height: 1.875rem; + margin-right: 1.875rem; +} + +.narshelpCenterPc-app .nhlpbner { + width: 100%; + margin-top: 4.75rem; +} + +.narshelpCenterPc-app .nhlpapp-title { + margin: 0 auto; + text-align: center; + font-size: 1.5rem; + margin: 2rem 0; +} + +.narshelpCenterPc-app .nhlpappit { + margin: 0 auto; + padding: 1.875rem; + background: #fafafa; + border-radius: 1rem; + color: #202734; + font-size: 1rem; + margin-bottom: 1.25rem; + width: 74%; +} + +.narshelpCenterPc-app .nhlpappit .nhlptl { + display: flex; + flex-direction: row; + align-items: center; + font-size: 1.5rem; + font-weight: bold; + padding-bottom: 1.25rem; +} + +.narshelpCenterPc-app .nhlpappit .nhlptl .bhlpicoimg { + width: 36px; + height: 36px; + margin-right: 10px; +} + +.narshelpCenterPc-app .nhlpappit .nhlp-tx-list { + display: flex; + flex-direction: column; +} + +.narshelpCenterPc-app .nhlpappit .nhlp-tx-list .txrow { + display: flex; + flex-direction: row; + align-items: center; + margin-bottom: 1rem; + cursor: pointer; +} + +.narshelpCenterPc-app .nhlpappit .nhlp-tx-list .txrow .nhlp-point { + width: 0.3125rem; + height: 0.3125rem; + background: #202734; + border-radius: 0.1875rem; + margin: 0 0.625rem; + margin-left: 0.25rem; +} + +.narshelpCenterPc-app .nhlpappit .nhlp-tx-list .txrow .nhlpsp { + flex: 1; + color: #1f2635; + font-size: 1rem; +} + +.narshelpCenterPc-app .nhlpappit .nhlp-tx-list .ckgdbt { + background: #fff; + width: fit-content; + color: #bfbfc4; + font-size: 0.9375rem; + border: 0.0625rem solid #bfbfc4; + padding: 0.4375rem 1.125rem; + margin-top: 1rem; + cursor: pointer; + border-radius: 1.5rem; + display: flex; + flex-direction: row; + align-items: center; +} + +.narshelpCenterPc-app .nhlpapp-row { + margin-bottom: 80px; +} + +.narshelpCenterPc-app .nhlpapp-row > div { + display: flex; + flex-direction: row; + justify-content: space-between; + width: 90%; + margin: 0 auto; + flex-wrap: wrap; +} + +.narshelpCenterPc-app .nhlpapp-row .nhlplxwmit { + width: 48.3%; + padding: 1.5rem 0; + background: #f9f9f9; + margin-bottom: 0.75rem; + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; + border-radius: 1rem; + cursor: pointer; + margin-right: 0.75rem; +} + +.narshelpCenterPc-app .nhlpapp-row .sec-1 .nhlplxwmit:nth-child(even), +.narshelpCenterPc-app .nhlpapp-row .sec-2 .nhlplxwmit:last-child { + margin-right: 0; +} + +.narshelpCenterPc-app .nhlpapp-row .nhlplxwmit .lximg { + width: 2.5rem; + height: 2.5rem; + margin-bottom: 0.75rem; +} + +.narshelpCenterPc-app .nhlpapp-row .nhlplxwmit .lxewmimg { + width: 4rem; + width: 4rem; + margin-bottom: 1.25rem; + display: none; +} + +.narshelpCenterPc-app .nhlpapp-row .nhlplxwmit .t1 { + text-align: center; + font-size: 0.875rem; + padding-bottom: 0.375rem; + color: #1f2635; +} + +.narshelpCenterPc-app .nhlpapp-row .nhlplxwmit .t2 { + font-size: 0.75rem; + color: #1f2635; +} + +.narshelpCenterPc-app .nhlpapp-row .nhlplxwmit-w1 { + width: 31%; +} \ No newline at end of file diff --git a/public/static/index/mobile/images/fenlei.png b/public/static/index/mobile/images/fenlei.png new file mode 100755 index 00000000..8af36ce2 Binary files /dev/null and b/public/static/index/mobile/images/fenlei.png differ diff --git a/public/static/index/mobile/images/nars-jt.png b/public/static/index/mobile/images/nars-jt.png new file mode 100644 index 00000000..3f780f21 Binary files /dev/null and b/public/static/index/mobile/images/nars-jt.png differ diff --git a/public/static/index/mobile/images/nhlpapp-banner.webp b/public/static/index/mobile/images/nhlpapp-banner.webp new file mode 100644 index 00000000..c4fc2b35 Binary files /dev/null and b/public/static/index/mobile/images/nhlpapp-banner.webp differ diff --git a/public/static/index/mobile/images/sousuo.png b/public/static/index/mobile/images/sousuo.png new file mode 100755 index 00000000..5922d0fa Binary files /dev/null and b/public/static/index/mobile/images/sousuo.png differ