From e405b861b9521f5ea38c5402203a5b05988f9de2 Mon Sep 17 00:00:00 2001
From: ludc
Date: 星期三, 04 十二月 2024 10:47:05 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/OsLinkTypeController.java |  180 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 178 insertions(+), 2 deletions(-)

diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/OsLinkTypeController.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/OsLinkTypeController.java
index 1780a4c..319c7cf 100644
--- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/OsLinkTypeController.java
+++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/OsLinkTypeController.java
@@ -5,15 +5,23 @@
 import com.vci.pagemodel.OsBtmTypeAttributeVO;
 import com.vci.pagemodel.OsLinkTypeAttributeVO;
 import com.vci.pagemodel.OsLinkTypeVO;
+import com.vci.starter.web.exception.VciBaseException;
 import com.vci.starter.web.pagemodel.BaseQueryObject;
 import com.vci.starter.web.pagemodel.BaseResult;
 import com.vci.starter.web.pagemodel.DataGrid;
+import com.vci.starter.web.util.VciBaseUtil;
 import com.vci.web.service.OsLinkTypeServiceI;
 import org.apache.commons.lang3.StringUtils;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.util.CollectionUtils;
 import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
 
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
+import java.text.ParseException;
 import java.util.Arrays;
 import java.util.List;
 import java.util.stream.Collectors;
@@ -34,6 +42,11 @@
     private OsLinkTypeServiceI linkTypeService;
 
     /**
+     * 鏃ュ織
+     */
+    private Logger logger = LoggerFactory.getLogger(getClass());
+
+    /**
      * 閾炬帴绫诲瀷鐨勫垪琛�
      * @param baseQueryObject 鏌ヨ瀵硅薄
      * @return 閾炬帴绫诲瀷鐨勬樉绀哄璞�
@@ -41,6 +54,22 @@
     @GetMapping("/gridLinkType")
     public DataGrid<OsLinkTypeVO> gridLinkType(BaseQueryObject baseQueryObject){
         return linkTypeService.gridLinkType(baseQueryObject);
+    }
+
+    /**
+     * 鏌ヨ鎵�鏈夌殑閾炬帴绫诲瀷鍚嶇О锛屽彲鐢ㄤ簬灞炴�ф睜鐨勮繛鎺ョ被鍨嬮�夋嫨鏃剁殑瀵硅瘽妗�
+     * @return 閾炬帴绫诲瀷鐨勬樉绀哄璞�
+     */
+    @GetMapping("/getAllLtName")
+    public BaseResult getAllLtName(){
+        try {
+            return BaseResult.dataList(linkTypeService.getAllLtName());
+        }catch (Exception e) {
+            e.printStackTrace();
+            String exceptionMessage = "閾炬帴绫诲瀷鍒楄〃鏌ヨ鏃跺嚭鐜伴敊璇紝鍘熷洜锛�" + VciBaseUtil.getExceptionMessage(e);
+            logger.error(exceptionMessage);
+            return BaseResult.fail(exceptionMessage);
+        }
     }
 
     /**
@@ -57,7 +86,15 @@
         String attrId = baseQueryObject.getConditionMap().containsKey("name")?baseQueryObject.getConditionMap().get("name").replace("*",""):"";
         String attrName = baseQueryObject.getConditionMap().containsKey("label") ? baseQueryObject.getConditionMap().get("label").replace("*","") : "";
         OsLinkTypeVO linkTypeVO = linkTypeService.selectByOid(linkTypeOid);
-        List<OsLinkTypeAttributeVO> boAttrs = linkTypeService.listAttributeByLinkId(linkTypeVO.getId());
+        List<OsLinkTypeAttributeVO> boAttrs = null;
+        try {
+            boAttrs = linkTypeService.listAttributeByLinkId(linkTypeVO.getId());
+        }catch (Exception e){
+            e.printStackTrace();
+            String errorLog = "鏌ヨ閾炬帴绫诲瀷鍏宠仈鐨勫睘鎬ф椂鍑虹幇閿欒锛屽師鍥狅細"+VciBaseUtil.getExceptionMessage(e);
+            logger.error(errorLog);
+            throw new VciBaseException(errorLog);
+        }
         List<OsLinkTypeAttributeVO> attrList = boAttrs.stream().filter(s->{
             boolean usedFlag = true;
             if(StringUtils.isNotBlank(attrId) && !s.getId().contains(attrId)){
@@ -72,6 +109,27 @@
         dataGrid.setTotal(attrList.size());;
         dataGrid.setData(attrList);
         return dataGrid;
+    }
+
+    /**
+     * 鑾峰彇閾炬帴绫诲瀷鍖呭惈鐨勫睘鎬�
+     * @param name 閾炬帴绫诲瀷鐨勭紪鍙�
+     * @return 灞炴�х殑淇℃伅
+     */
+    @GetMapping("/getAllAttributeByLink")
+    public BaseResult<List<OsLinkTypeAttributeVO>> getAllAttributeByLink(String name){
+
+        try {
+            List<OsLinkTypeAttributeVO> osLinkTypeAttributeVOS = linkTypeService.getAllAttributeByLink(name);
+            return BaseResult.dataList(osLinkTypeAttributeVOS);
+        } catch (PLException e) {
+            BaseResult objectBaseResult = new BaseResult<>();
+            objectBaseResult.setCode(Integer.parseInt(e.code));
+            objectBaseResult.setMsg(Arrays.toString(e.messages));
+            return objectBaseResult;
+        } catch (ParseException e) {
+            throw new RuntimeException(e);
+        }
     }
 
     /**
@@ -118,7 +176,7 @@
      * addFlag 鏄惁涓烘柊澧� true鏂板锛宖alse淇敼
      * @return 淇濆瓨缁撴灉
      */
-    @GetMapping("/addAndEditLink")
+    @PostMapping("/addAndEditLink")
     public BaseResult addAndEditLink(@RequestBody LinkType linkType, Boolean addFlag){
         try {
             return linkTypeService.addAndEditLink(linkType, addFlag);
@@ -129,4 +187,122 @@
             return objectBaseResult;
         }
     }
+    /**
+     * 閾炬帴绫诲瀷鍒犻櫎
+     * linkType 閾炬帴绫诲瀷瀵硅薄
+     * @return 鍒犻櫎缁撴灉
+     */
+    @DeleteMapping("/deleteLink")
+    public BaseResult deleteLink(@RequestBody LinkType linkType){
+        try {
+            return linkTypeService.deleteLink(linkType);
+        } catch (PLException e) {
+            BaseResult objectBaseResult = new BaseResult<>();
+            objectBaseResult.setCode(Integer.parseInt(e.code));
+            objectBaseResult.setMsg(Arrays.toString(e.messages));
+            return objectBaseResult;
+        }
+    }
+
+    /**
+     * 涓�鑷存�ф鏌�
+     * @return 鍒犻櫎缁撴灉
+     */
+    @GetMapping("/checkLinkType")
+    public BaseResult checkLinkType(){
+        try {
+            return linkTypeService.checkLinkType();
+        } catch (PLException e) {
+            BaseResult objectBaseResult = new BaseResult<>();
+            objectBaseResult.setCode(Integer.parseInt(e.code));
+            objectBaseResult.setMsg(Arrays.toString(e.messages));
+            return objectBaseResult;
+        }
+    }
+
+    /**
+     * 涓�鑷存�ф鏌ヤ慨澶嶆暟鎹簱琛�
+     * repairData 闇�瑕佷慨澶嶇殑鏁版嵁
+     * @return 淇缁撴灉
+     */
+    @PostMapping("/repairTable")
+    public BaseResult repairTable(@RequestBody String repairData){
+        try {
+            return linkTypeService.repairTable(repairData);
+        } catch (PLException e) {
+            BaseResult objectBaseResult = new BaseResult<>();
+            objectBaseResult.setCode(Integer.parseInt(e.code));
+            objectBaseResult.setMsg(Arrays.toString(e.messages));
+            return objectBaseResult;
+        } catch (IOException e) {
+            BaseResult objectBaseResult = new BaseResult<>();
+            objectBaseResult.setCode(500);
+            objectBaseResult.setMsg(e.getMessage());
+            return objectBaseResult;
+        }
+    }
+
+    /**
+     * 鍒涘缓瑙嗗浘
+     * @return 鍒涘缓缁撴灉
+     */
+    @PostMapping("/createView")
+    public BaseResult createView(){
+        try {
+            return linkTypeService.createView();
+        } catch (PLException e) {
+            BaseResult objectBaseResult = new BaseResult<>();
+            objectBaseResult.setCode(Integer.parseInt(e.code));
+            objectBaseResult.setMsg(Arrays.toString(e.messages));
+            return objectBaseResult;
+        }
+    }
+
+    /**
+     * 瀵煎嚭閾炬帴绫诲瀷
+     * name 閾炬帴绫诲瀷鍚嶇О
+     * @return
+     */
+    @GetMapping("/expData")
+    public void expData(String name,HttpServletResponse response) throws PLException, IOException {
+        linkTypeService.expData(name, response);
+    }
+
+    /**
+     * 瀵煎叆閾炬帴绫诲瀷
+     * @param file 涓婁紶鐨勬枃浠�
+     * @return
+     */
+    @PostMapping("/impData")
+    public BaseResult impData(MultipartFile file){
+        try {
+             return linkTypeService.impData(file);
+        }catch (Throwable e) {
+            throw new VciBaseException(VciBaseUtil.getExceptionMessage(e),new String[0],e);
+        }
+    }
+
+
+    /**
+     * 鑾峰彇璁剧疆鎺掑簭瀛楁鐨勬帓搴忓瓧娈�
+     * @param linkType 閾炬帴绫诲瀷鐨勭紪鍙�
+     * @param btmType 涓氬姟绫诲瀷鐨勭紪鍙�
+     * @param direction 姝�/鍙嶅悜
+     * @return 灞炴�х殑淇℃伅
+     */
+    @GetMapping("/getAllOrderbyAttributeByLink")
+    public BaseResult<List<String>> getAllOrderbyAttributeByLink(String linkType, String btmType, String direction){
+
+        try {
+            List<String> osLinkTypeAttributes = linkTypeService.getAllOrderbyAttributeByLink(linkType, btmType, direction);
+            return BaseResult.dataList(osLinkTypeAttributes);
+        } catch (PLException e) {
+            BaseResult objectBaseResult = new BaseResult<>();
+            objectBaseResult.setCode(Integer.parseInt(e.code));
+            objectBaseResult.setMsg(Arrays.toString(e.messages));
+            return objectBaseResult;
+        } catch (ParseException e) {
+            throw new RuntimeException(e);
+        }
+    }
 }

--
Gitblit v1.9.3