From c305b09fbd20849a39631ddd43980cb09e1805e9 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Mon, 04 Jul 2022 17:10:45 +0800
Subject: [PATCH] fix seeColumnInfo

---
 src/main/java/com/xcong/farmer/cms/modules/system/controller/AdminColumnController.java    |    4 ++
 src/main/java/com/xcong/farmer/cms/modules/system/service/Impl/CmsTemplateServiceImpl.java |   33 ++++++++++++++++
 src/main/java/com/xcong/farmer/cms/common/utils/FileUtils.java                             |    7 +++
 src/main/java/com/xcong/farmer/cms/modules/system/service/Impl/ColumnServiceImpl.java      |    6 +++
 src/main/java/com/xcong/farmer/cms/common/exception/GlobalException.java                   |   17 ++++++++
 src/main/java/com/xcong/farmer/cms/modules/system/controller/CmsTemplateController.java    |    4 +-
 src/main/java/com/xcong/farmer/cms/modules/system/vo/AdminSeeColumnInfoVo.java             |   19 +++++++++
 7 files changed, 87 insertions(+), 3 deletions(-)

diff --git a/src/main/java/com/xcong/farmer/cms/common/exception/GlobalException.java b/src/main/java/com/xcong/farmer/cms/common/exception/GlobalException.java
new file mode 100644
index 0000000..938cd36
--- /dev/null
+++ b/src/main/java/com/xcong/farmer/cms/common/exception/GlobalException.java
@@ -0,0 +1,17 @@
+package com.xcong.excoin.common.exception;
+
+import lombok.Getter;
+
+/**
+ * 统一异常处理
+ *
+ * @author wzy
+ * @date 2020-05-18
+ **/
+@Getter
+public class GlobalException extends RuntimeException {
+
+    public GlobalException(String msg) {
+        super(msg);
+    }
+}
diff --git a/src/main/java/com/xcong/farmer/cms/common/utils/FileUtils.java b/src/main/java/com/xcong/farmer/cms/common/utils/FileUtils.java
new file mode 100644
index 0000000..005a65c
--- /dev/null
+++ b/src/main/java/com/xcong/farmer/cms/common/utils/FileUtils.java
@@ -0,0 +1,7 @@
+package com.xcong.farmer.cms.common.utils;/**
+*
+* @author wzy
+* @date 2022-07-04
+**/
+public class FileUtils {
+}
diff --git a/src/main/java/com/xcong/farmer/cms/modules/system/controller/AdminColumnController.java b/src/main/java/com/xcong/farmer/cms/modules/system/controller/AdminColumnController.java
index 87e5534..27779ea 100644
--- a/src/main/java/com/xcong/farmer/cms/modules/system/controller/AdminColumnController.java
+++ b/src/main/java/com/xcong/farmer/cms/modules/system/controller/AdminColumnController.java
@@ -4,6 +4,7 @@
 import com.xcong.farmer.cms.modules.system.dto.*;
 import com.xcong.farmer.cms.modules.system.service.IColumnService;
 import com.xcong.farmer.cms.modules.system.vo.AdminColumnVo;
+import com.xcong.farmer.cms.modules.system.vo.AdminSeeColumnInfoVo;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiResponse;
@@ -44,6 +45,9 @@
     }
 
     @ApiOperation(value = "查看栏目", notes = "查看栏目")
+    @ApiResponses({
+            @ApiResponse(code = 200, message = "success", response = AdminSeeColumnInfoVo.class)
+    })
     @GetMapping(value = "/seeColumnInfo/{id}")
     public Result seeColumnInfo(@PathVariable(value = "id") Long id) {
         return iColumnService.seeColumnInfo(id);
diff --git a/src/main/java/com/xcong/farmer/cms/modules/system/controller/CmsTemplateController.java b/src/main/java/com/xcong/farmer/cms/modules/system/controller/CmsTemplateController.java
index 8b0dcea..92e3559 100644
--- a/src/main/java/com/xcong/farmer/cms/modules/system/controller/CmsTemplateController.java
+++ b/src/main/java/com/xcong/farmer/cms/modules/system/controller/CmsTemplateController.java
@@ -18,7 +18,7 @@
  * @date 2022-07-04
  **/
 @RestController
-@RequestMapping(value = "/api/template")
+@RequestMapping(value = "/cms/template")
 @Api(value = "CmsTemplateController", tags = "模板接口类")
 public class CmsTemplateController {
 
@@ -28,7 +28,7 @@
     @ApiOperation(value = "上传模板", notes = "上传模板接口")
     @PostMapping(value = "/uploadTemplate")
     public Result uploadTemplate(MultipartFile file) {
-
+        cmsTemplateService.updateTemplate(file);
         return Result.ok("上传成功");
     }
 
diff --git a/src/main/java/com/xcong/farmer/cms/modules/system/service/Impl/CmsTemplateServiceImpl.java b/src/main/java/com/xcong/farmer/cms/modules/system/service/Impl/CmsTemplateServiceImpl.java
index f1795c0..f1e072f 100644
--- a/src/main/java/com/xcong/farmer/cms/modules/system/service/Impl/CmsTemplateServiceImpl.java
+++ b/src/main/java/com/xcong/farmer/cms/modules/system/service/Impl/CmsTemplateServiceImpl.java
@@ -4,6 +4,9 @@
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.xcong.farmer.cms.common.exception.GlobalException;
+import com.xcong.farmer.cms.common.utils.FileUtils;
+import com.xcong.farmer.cms.configurations.GlobalExceptionHandler;
 import com.xcong.farmer.cms.core.template.TemplateConfiguration;
 import com.xcong.farmer.cms.modules.system.dto.TemplateListDto;
 import com.xcong.farmer.cms.modules.system.entity.CmsTemplateEntity;
@@ -13,6 +16,12 @@
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.web.multipart.MultipartFile;
+
+import java.io.File;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
 
 /**
  * @author wzy
@@ -24,10 +33,32 @@
     @Autowired
     private TemplateConfiguration cfg;
 
+    private List<String> fileSuffix = Arrays.asList(".zip", ".html");
+
     @Override
-    public void updateTemplate(MultipartFile file) {
+    public void updateTemplate(MultipartFile upload) {
         String templatePath = cfg.templatePath;
         String staticPath = cfg.staticPath;
+
+        String filename = upload.getOriginalFilename();
+        String suffix = filename.substring(filename.lastIndexOf("."));
+
+        if (!fileSuffix.contains(suffix)) {
+            throw new GlobalException("请上传正确格式文件");
+        }
+
+        try {
+            if (".zip".equals(suffix)) {
+                String path = FileUtils.path(templatePath, filename);
+                System.out.println(path);
+                File file = new File(path);
+                upload.transferTo(file);
+                FileUtils.zipUpload(file, templatePath, staticPath);
+            }
+        } catch (IOException e) {
+            e.printStackTrace();
+        }
+        System.out.println(suffix);
     }
 
     @Override
diff --git a/src/main/java/com/xcong/farmer/cms/modules/system/service/Impl/ColumnServiceImpl.java b/src/main/java/com/xcong/farmer/cms/modules/system/service/Impl/ColumnServiceImpl.java
index fceaedb..838c215 100644
--- a/src/main/java/com/xcong/farmer/cms/modules/system/service/Impl/ColumnServiceImpl.java
+++ b/src/main/java/com/xcong/farmer/cms/modules/system/service/Impl/ColumnServiceImpl.java
@@ -144,6 +144,12 @@
         adminSeeColumnInfoVo.setParentId(columnEntity.getParentId());
         adminSeeColumnInfoVo.setOrderNum(columnEntity.getOrderNum());
         adminSeeColumnInfoVo.setPic(columnEntity.getPic());
+        adminSeeColumnInfoVo.setListTemplate(columnEntity.getListTemplate());
+        adminSeeColumnInfoVo.setArticleTemplate(columnEntity.getArticleTemplate());
+        adminSeeColumnInfoVo.setIsNav(columnEntity.getIsNav());
+        adminSeeColumnInfoVo.setType(columnEntity.getType());
+        adminSeeColumnInfoVo.setTargetType(columnEntity.getTargetType());
+        adminSeeColumnInfoVo.setTargetUrl(columnEntity.getTargetUrl());
         return Result.ok(adminSeeColumnInfoVo);
     }
 
diff --git a/src/main/java/com/xcong/farmer/cms/modules/system/vo/AdminSeeColumnInfoVo.java b/src/main/java/com/xcong/farmer/cms/modules/system/vo/AdminSeeColumnInfoVo.java
index 57df2a8..e136125 100644
--- a/src/main/java/com/xcong/farmer/cms/modules/system/vo/AdminSeeColumnInfoVo.java
+++ b/src/main/java/com/xcong/farmer/cms/modules/system/vo/AdminSeeColumnInfoVo.java
@@ -27,4 +27,23 @@
 
     @ApiModelProperty(value = "上级类目ID")
     private Long parentId;
+
+    @ApiModelProperty(value = "列表页模板")
+    private String listTemplate;
+
+    @ApiModelProperty(value = "文章页模板")
+    private String articleTemplate;
+
+    @ApiModelProperty(value = "栏目类型 1-普通栏目 2-标题栏目")
+    private Integer type;
+
+    @ApiModelProperty(value = "若栏目类型为标题类型 1-链接到内容 2-链接到栏目 3-外部地址")
+    private Integer targetType;
+
+    @ApiModelProperty(value = "目标地址")
+    private String targetUrl;
+
+    @ApiModelProperty(value = "是否为导航 1-是 2-否")
+    private Integer isNav;
+
 }

--
Gitblit v1.9.1