From d260a61c6fefd0e8b60380afdb469a0592a4eb09 Mon Sep 17 00:00:00 2001
From: 13693261870 <252740454@qq.com>
Date: 星期三, 21 十二月 2022 11:18:01 +0800
Subject: [PATCH] 1

---
 src/main/java/com/lf/server/controller/all/BaseQueryController.java |   55 ++++++++++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 52 insertions(+), 3 deletions(-)

diff --git a/src/main/java/com/lf/server/controller/all/BaseQueryController.java b/src/main/java/com/lf/server/controller/all/BaseQueryController.java
index 596f4b7..6ccf2c7 100644
--- a/src/main/java/com/lf/server/controller/all/BaseQueryController.java
+++ b/src/main/java/com/lf/server/controller/all/BaseQueryController.java
@@ -6,26 +6,31 @@
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.lf.server.annotation.SysLog;
 import com.lf.server.entity.all.ResponseMsg;
+import com.lf.server.entity.ctrl.DownloadReqEntity;
 import com.lf.server.entity.ctrl.IdNameEntity;
 import com.lf.server.entity.ctrl.TabEntity;
 import com.lf.server.entity.data.DictEntity;
 import com.lf.server.entity.data.DomainEntity;
 import com.lf.server.entity.sys.AttachEntity;
+import com.lf.server.entity.sys.UserEntity;
 import com.lf.server.helper.AesHelper;
 import com.lf.server.helper.ClassHelper;
 import com.lf.server.helper.StringHelper;
 import com.lf.server.mapper.all.BasicMapper;
 import com.lf.server.mapper.all.GeomBaseMapper;
 import com.lf.server.service.all.BaseQueryService;
+import com.lf.server.service.data.DownloadService;
+import com.lf.server.service.show.DataLibService;
 import com.lf.server.service.sys.AttachService;
+import com.lf.server.service.sys.TokenService;
 import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiImplicitParams;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.*;
 
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
 import java.util.List;
 
 /**
@@ -35,6 +40,15 @@
 public class BaseQueryController extends BaseController {
     @Autowired
     AttachService attachService;
+
+    @Autowired
+    TokenService tokenService;
+
+    @Autowired
+    DataLibService dataLibService;
+
+    @Autowired
+    DownloadService downloadService;
 
     @Autowired
     BaseQueryService baseQueryService;
@@ -304,4 +318,39 @@
             return fail(ex.getMessage(), 0);
         }
     }
+
+    @SysLog()
+    @ApiOperation(value = "璇锋眰DB鏁版嵁涓嬭浇")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "reqEntity", value = "璇锋眰涓嬭浇瀹炰綋", dataType = "DownloadReqEntity", paramType = "body")
+    })
+    @ResponseBody
+    @PostMapping(value = "/downloadDbReq")
+    public ResponseMsg<Object> downloadDbReq(@RequestBody DownloadReqEntity reqEntity, HttpServletRequest req, HttpServletResponse res) {
+        try {
+            if (null == reqEntity || StringHelper.isEmpty(reqEntity.getPwd())) {
+                return fail("瀵嗙爜涓嶈兘涓虹┖");
+            }
+            if (null == reqEntity.getEntities() || reqEntity.getEntities().isEmpty()) {
+                return fail("璇烽�夋嫨瑕佷笅杞界殑瀹炰綋鍚�");
+            }
+            reqEntity.setWkt(AesHelper.decrypt(reqEntity.getWkt()));
+            if (StringHelper.isEmpty(reqEntity.getWkt())) {
+                return fail("璇烽�夋嫨瑕佷笅杞界殑WKT鑼冨洿");
+            }
+            if (!downloadService.decryptPwd(reqEntity)) {
+                return fail("瀵嗙爜瑙e瘑澶辫触", null);
+            }
+            if (!StringHelper.checkPwdValid(reqEntity.getPwd())) {
+                return fail("瀵嗙爜涓嶇鍚堣姹�");
+            }
+
+            UserEntity ue = tokenService.getCurrentUser(req);
+            String guid = dataLibService.createZipFile(ue, reqEntity.getEntities(), reqEntity.getWkt(), reqEntity.getPwd());
+
+            return success(guid);
+        } catch (Exception ex) {
+            return fail(ex.getMessage(), null);
+        }
+    }
 }
\ No newline at end of file

--
Gitblit v1.9.3