소스 검색

调整站点信息

tsurumure 5 달 전
부모
커밋
4c0ce5ab14

+ 4 - 2
db/cms_site_info.sql

@@ -8,6 +8,7 @@ DROP TABLE IF EXISTS `cms_site_info`;
 CREATE TABLE `cms_site_info` (
     PRIMARY KEY (`id`),
     `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT 'ID',
+    `language` VARCHAR(10) NOT NULL COMMENT '语种',
     `name` VARCHAR(20) NOT NULL COMMENT '网站名称',
     `meta_keyword` VARCHAR(255) COMMENT 'SEO-Keyword',
     `meta_description` VARCHAR(500) COMMENT 'SEO-Description',
@@ -18,8 +19,9 @@ CREATE TABLE `cms_site_info` (
     `update_time` DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间'
 ) ENGINE=INNODB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COMMENT='系统信息表';
 
-INSERT INTO cms_site_info(name, meta_keyword, meta_description, copyright, icp ) VALUES
-    ('示例网站', '示例网站, 网页设计, 网络技术, 用户体验', '这是一个示例网站,专注于网页设计和网络技术,致力于提供优质的用户体验。欢迎来到示例网站,探索我们的服务和创意。', 'Copyright © 2024 示例网站. 保留所有权利.', '备案号: 京ICP备12345678号')
+INSERT INTO cms_site_info(language, name, meta_keyword, meta_description, copyright, icp ) VALUES
+    ('zh', '示例网站', '示例网站, 网页设计, 网络技术, 用户体验', '这是一个示例网站,专注于网页设计和网络技术,致力于提供优质的用户体验。欢迎来到示例网站,探索我们的服务和创意。', 'Copyright © 2024 示例网站. 保留所有权利.', '备案号: 京ICP备12345678号'),
+    ('en', 'Example Website', 'Example Website, Web Design, Web Technology, User Experience', 'This is an example website, focusing on web design and web technology. We are committed to providing a high-quality user experience. Welcome to Example Website, explore our services and creativity.', 'Copyright © 2024 Example Website. All rights reserved.', 'Record number: Beijing ICP No. 12345678')
 ;
 
 

+ 2 - 0
src/main/java/com/backendsys/modules/cms/siteinfo/entity/SiteInfo.java

@@ -18,6 +18,8 @@ public class SiteInfo {
     @TableId(type = IdType.AUTO)
     private Long id;
 
+    private String language;
+
     @NotEmpty(message="网站名称不能为空", groups = { Update.class })
     @Size(min = 2, max = 50, message = "网站名称长度在 {min}-{max} 字符", groups = { Update.class })
     private String name;

+ 16 - 1
src/main/java/com/backendsys/modules/cms/siteinfo/service/impl/SiteInfoServiceImpl.java

@@ -1,8 +1,13 @@
 package com.backendsys.modules.cms.siteinfo.service.impl;
 
+import cn.hutool.core.util.StrUtil;
 import com.backendsys.modules.cms.siteinfo.dao.SiteInfoDao;
 import com.backendsys.modules.cms.siteinfo.entity.SiteInfo;
 import com.backendsys.modules.cms.siteinfo.service.SiteInfoService;
+import com.backendsys.modules.common.config.security.utils.HttpRequestUtil;
+import com.backendsys.modules.common.utils.CookieUtil;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import jakarta.servlet.http.HttpServletRequest;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
@@ -11,6 +16,9 @@ import java.util.Map;
 @Service
 public class SiteInfoServiceImpl implements SiteInfoService {
 
+    @Autowired
+    private HttpRequestUtil httpRequestUtil;
+
     @Autowired
     private SiteInfoDao siteInfoDao;
 
@@ -19,7 +27,14 @@ public class SiteInfoServiceImpl implements SiteInfoService {
      */
     @Override
     public SiteInfo selectSiteInfo() {
-        return siteInfoDao.selectById(1L);
+
+        HttpServletRequest request = httpRequestUtil.getRequest();
+        String lang = CookieUtil.getCookie("lang", request);
+        if (StrUtil.isEmpty(lang)) lang = "zh";
+
+        LambdaQueryWrapper<SiteInfo> wrapper = new LambdaQueryWrapper();
+        wrapper.eq(SiteInfo::getLanguage, lang);
+        return siteInfoDao.selectOne(wrapper);
     }
 
     /**

+ 0 - 1
src/main/java/com/backendsys/modules/cms/template/ArticleViewController.java

@@ -61,7 +61,6 @@ public class ArticleViewController {
         articleCategory.setLang(lang);
         articleCategory.setStatus(1);
         List<ArticleCategory> articleCategoryList = articleCategoryService.selectArticleCategory(articleCategory);
-        System.out.println(articleCategoryList);
         model.addAttribute("articleCategoryList", articleCategoryList);
 
         // 参数暴露

+ 4 - 0
src/main/resources/application.yml

@@ -78,6 +78,10 @@ server:
     context-path: /
     encoding:
       charset: UTF-8
+  # 启用 Gzip 压缩
+  compression:
+    enabled: true
+    mime-types: text/html,text/xml,text/plain,text/css,application/javascript
 #  tomcat:
 #    threads:
 #      max: 200

+ 1 - 0
src/main/resources/i18n/locale_en.properties

@@ -1,3 +1,4 @@
+all = All
 more = More
 settop = Top
 viewdetail = Detail

+ 1 - 0
src/main/resources/i18n/locale_zh.properties

@@ -1,3 +1,4 @@
+all = 全部
 more = 更多
 settop = 置顶
 viewdetail = 查看详情

+ 3 - 1
src/main/resources/templates/article.html

@@ -60,7 +60,9 @@
         <div class="sub-section-sider-content">
           <div class="article-category horizontal">
             <ul id="category-bar">
-              <li class="mb-4"><a href="/article/list" th:classappend="${parameters.category_id == null ? 'active' : ''}">全部</a></li>
+              <li class="mb-4">
+                <a href="/article/list" th:classappend="${parameters.category_id == null ? 'active' : ''}" th:text="#{all}"></a>
+              </li>
               <li th:each="item, itemStat : ${articleCategoryList}">
                 <a th:href="@{'/article/list?category_id=' + ${item.article_category_id}}" th:text="${item.category_name}" th:data-category-id="${item.article_category_id}"
                    th:classappend="(${item.article_category_id} == ${parameters.category_id} ? 'active' : '')"></a>