From 258a769f6790f832d1c67839d59be04a118767e5 Mon Sep 17 00:00:00 2001
From: yangys <y_ys79@sina.com>
Date: 星期日, 28 四月 2024 10:50:48 +0800
Subject: [PATCH] 用时分析代码整理+注释整理

---
 smart-man-boot/src/main/java/com/qianwen/smartman/modules/cps/service/impl/InitServiceImpl.java |  199 +++++++++++++++++++++----------------------------
 1 files changed, 84 insertions(+), 115 deletions(-)

diff --git a/smart-man-boot/src/main/java/com/qianwen/smartman/modules/cps/service/impl/InitServiceImpl.java b/smart-man-boot/src/main/java/com/qianwen/smartman/modules/cps/service/impl/InitServiceImpl.java
index 2413ad1..b640884 100644
--- a/smart-man-boot/src/main/java/com/qianwen/smartman/modules/cps/service/impl/InitServiceImpl.java
+++ b/smart-man-boot/src/main/java/com/qianwen/smartman/modules/cps/service/impl/InitServiceImpl.java
@@ -1,14 +1,7 @@
 package com.qianwen.smartman.modules.cps.service.impl;
 
-import cn.hutool.core.io.IoUtil;
-import com.alibaba.fastjson.JSONObject;
-import com.aliyuncs.utils.StringUtils;
-import com.baomidou.mybatisplus.core.conditions.Wrapper;
-import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
-import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import java.io.File;
 import java.io.FileReader;
-import java.lang.invoke.SerializedLambda;
 import java.sql.Connection;
 import java.util.ArrayList;
 import java.util.Collection;
@@ -16,7 +9,9 @@
 import java.util.concurrent.Future;
 import java.util.concurrent.TimeUnit;
 import java.util.stream.Collectors;
+
 import javax.sql.DataSource;
+
 import org.apache.commons.io.FileUtils;
 import org.apache.ibatis.jdbc.ScriptRunner;
 import org.slf4j.Logger;
@@ -24,14 +19,25 @@
 import org.smartboot.license.client.License;
 import org.smartboot.license.client.LicenseEntity;
 import org.smartboot.license.client.LicenseException;
+import org.springframework.core.env.Environment;
+import org.springframework.core.io.ClassPathResource;
+import org.springframework.data.redis.connection.RedisConnection;
+import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import com.alibaba.fastjson.JSONObject;
+import com.aliyuncs.utils.StringUtils;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.qianwen.core.log.exception.ServiceException;
+import com.qianwen.core.redis.cache.BladeRedis;
+import com.qianwen.core.tool.api.ResultCode;
+import com.qianwen.core.tool.utils.DigestUtil;
+import com.qianwen.core.tool.utils.Func;
 import com.qianwen.smartman.common.constant.CommonConstant;
 import com.qianwen.smartman.common.constant.FmsConstant;
 import com.qianwen.smartman.common.utils.LicenseUtil;
 import com.qianwen.smartman.common.utils.MessageUtils;
-import com.qianwen.core.log.exception.ServiceException;
-import com.qianwen.core.redis.cache.BladeRedis;
-import com.qianwen.core.tool.utils.DigestUtil;
-import com.qianwen.core.tool.utils.Func;
 import com.qianwen.smartman.modules.cps.enums.AppEnum;
 import com.qianwen.smartman.modules.cps.mapper.InitMapper;
 import com.qianwen.smartman.modules.cps.mapper.TdengineMapper;
@@ -42,18 +48,14 @@
 import com.qianwen.smartman.modules.cps.vo.ConfigVO;
 import com.qianwen.smartman.modules.cps.vo.InitSettingVO;
 import com.qianwen.smartman.modules.system.dto.LicenseDetailDTO;
+import com.qianwen.smartman.modules.system.entity.Application;
 import com.qianwen.smartman.modules.system.service.IApplicationService;
 import com.qianwen.smartman.modules.visual.entity.VisualConfig;
 import com.qianwen.smartman.modules.visual.service.IVisualConfigService;
-import org.springframework.core.env.Environment;
-import org.springframework.core.io.ClassPathResource;
-import org.springframework.data.redis.connection.RedisConnection;
-import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
-import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
+
+import cn.hutool.core.io.IoUtil;
 
 @Service
-/* loaded from: blade-api.jar:BOOT-INF/classes/org/springblade/modules/cps/service/impl/InitServiceImpl.class */
 public class InitServiceImpl implements IInitService {
     private static final Logger log = LoggerFactory.getLogger(InitServiceImpl.class);
     private final InitMapper initMapper;
@@ -67,46 +69,6 @@
     private final ThreadPoolTaskExecutor taskExecutor;
     private final Environment environment;
 
-    private static /* synthetic */ Object $deserializeLambda$(SerializedLambda lambda) {
-        String implMethodName = lambda.getImplMethodName();
-        boolean z = true;
-        switch (implMethodName.hashCode()) {
-            case -75622813:
-                if (implMethodName.equals("getCode")) {
-                    z = true;
-                    break;
-                }
-                break;
-            case 643007317:
-                if (implMethodName.equals("getDomainUrl")) {
-                    z = false;
-                    break;
-                }
-                break;
-        }
-        switch (z) {
-            case false:
-                if (lambda.getImplMethodKind() == 5 && lambda.getFunctionalInterfaceClass().equals("com/baomidou/mybatisplus/core/toolkit/support/SFunction") && lambda.getFunctionalInterfaceMethodName().equals("apply") && lambda.getFunctionalInterfaceMethodSignature().equals("(Ljava/lang/Object;)Ljava/lang/Object;") && lambda.getImplClass().equals("org/springblade/modules/system/entity/Application") && lambda.getImplMethodSignature().equals("()Ljava/lang/String;")) {
-                    return (v0) -> {
-                        return v0.getDomainUrl();
-                    };
-                }
-                break;
-            case true:
-                if (lambda.getImplMethodKind() == 5 && lambda.getFunctionalInterfaceClass().equals("com/baomidou/mybatisplus/core/toolkit/support/SFunction") && lambda.getFunctionalInterfaceMethodName().equals("apply") && lambda.getFunctionalInterfaceMethodSignature().equals("(Ljava/lang/Object;)Ljava/lang/Object;") && lambda.getImplClass().equals("org/springblade/modules/system/entity/Application") && lambda.getImplMethodSignature().equals("()Ljava/lang/String;")) {
-                    return (v0) -> {
-                        return v0.getCode();
-                    };
-                }
-                if (lambda.getImplMethodKind() == 5 && lambda.getFunctionalInterfaceClass().equals("com/baomidou/mybatisplus/core/toolkit/support/SFunction") && lambda.getFunctionalInterfaceMethodName().equals("apply") && lambda.getFunctionalInterfaceMethodSignature().equals("(Ljava/lang/Object;)Ljava/lang/Object;") && lambda.getImplClass().equals("org/springblade/modules/system/entity/Application") && lambda.getImplMethodSignature().equals("()Ljava/lang/String;")) {
-                    return (v0) -> {
-                        return v0.getCode();
-                    };
-                }
-                break;
-        }
-        throw new IllegalArgumentException("Invalid lambda deserialization");
-    }
 
     public InitServiceImpl(final InitMapper initMapper, final ConfigVO configVO, final TdengineMapper tdengineMapper, final DataSource dataSource, final IInitBusinessService initBusinessService, final BladeRedis bladeRedis, final IVisualConfigService visualConfigService, final IApplicationService applicationService, final ThreadPoolTaskExecutor taskExecutor, final Environment environment) {
         this.initMapper = initMapper;
@@ -121,17 +83,17 @@
         this.environment = environment;
     }
 
-    @Override // org.springblade.modules.cps.service.IInitService
+    @Override
     public Boolean checkIsNeedInit() {
-        return Boolean.valueOf(this.initMapper.checkIsNeedInit(this.configVO.getDatabase(), this.configVO.getType()).intValue() <= 0);
+        return this.initMapper.checkIsNeedInit(this.configVO.getDatabase(), this.configVO.getType()) <= 0;
     }
 
-    @Override // org.springblade.modules.cps.service.IInitService
+    @Override
     public ConfigVO getConfig() {
         return this.configVO;
     }
 
-    @Override // org.springblade.modules.cps.service.IInitService
+    @Override
     public List<AppVO> getApp() {
         List<AppVO> result = new ArrayList<>();
         AppEnum[] values = AppEnum.values();
@@ -148,54 +110,59 @@
         return result;
     }
 
-    @Override // org.springblade.modules.cps.service.IInitService
+    @Override
     @Transactional(rollbackFor = {Exception.class})
     public Boolean initSystem(InitSettingVO initSettingVO) {
-        if (!initSettingVO.getPassword().equals(initSettingVO.getConfirmPassword())) {
-            throw new ServiceException(MessageUtils.message("init.system.inconsistent.password", new Object[0]));
-        }
-        initSettingVO.setPassword(DigestUtil.encrypt(initSettingVO.getPassword()));
-        Connection conn = this.dataSource.getConnection();
-        ScriptRunner runner = new ScriptRunner(conn);
-        runner.setStopOnError(true);
-        File file = new File(System.getProperty("java.io.tmpdir") + File.separator + "common.sql");
-        FileUtils.copyToFile(new ClassPathResource("sql" + File.separator + this.configVO.getType() + File.separator + "common.sql").getInputStream(), file);
-        runner.runScript(new FileReader(file));
-        FileUtils.copyToFile(new ClassPathResource("sql" + File.separator + this.configVO.getType() + File.separator + "xxl_job.sql").getInputStream(), file);
-        runner.runScript(new FileReader(file));
-        List<Integer> appIds = (List) initSettingVO.getAppList().stream().sorted().collect(Collectors.toList());
-        for (Integer appId : appIds) {
-            Future<?> asyncResult = this.taskExecutor.submit(() -> {
-                try {
-                    this.initBusinessService.initApp(appId, this.configVO);
-                } catch (Exception e) {
-                    throw new ServiceException(e.getMessage());
-                }
-            });
-            while (!asyncResult.isDone()) {
-                TimeUnit.NANOSECONDS.sleep(2L);
-            }
-        }
-        initAdapter(initSettingVO, this.configVO.getUrl(), this.configVO.getType());
-        replaceJumuUrl();
-        this.initMapper.replaceUrlJiMu(initSettingVO);
-        if (CommonConstant.ORACLE.equals(this.configVO.getType()) && Func.isNotEmpty(initSettingVO.getAppList()) && initSettingVO.getAppList().contains(AppEnum.VISUAL.getCode())) {
-            try {
-                VisualConfig visualConfig = new VisualConfig();
-                visualConfig.setId(1510135236368261122L);
-                visualConfig.setVisualId(1510135236343095298L);
-                visualConfig.setDetail(FileUtil.getFileString(new ClassPathResource("constant" + File.separator + "VisualDetail.txt")));
-                visualConfig.setComponent(FileUtil.getFileString(new ClassPathResource("constant" + File.separator + "VisualComponent.txt")));
-                this.visualConfigService.save(visualConfig);
-            } catch (Exception e) {
-                throw new ServiceException(e.getMessage());
-            }
-        }
-        IoUtil.close(conn);
-        return true;
+    	try {
+	        if (!initSettingVO.getPassword().equals(initSettingVO.getConfirmPassword())) {
+	            throw new ServiceException(MessageUtils.message("init.system.inconsistent.password", new Object[0]));
+	        }
+	        initSettingVO.setPassword(DigestUtil.encrypt(initSettingVO.getPassword()));
+	        Connection conn = this.dataSource.getConnection();
+	        ScriptRunner runner = new ScriptRunner(conn);
+	        runner.setStopOnError(true);
+	        File file = new File(System.getProperty("java.io.tmpdir") + File.separator + "common.sql");
+	        FileUtils.copyToFile(new ClassPathResource("sql" + File.separator + this.configVO.getType() + File.separator + "common.sql").getInputStream(), file);
+	        runner.runScript(new FileReader(file));
+	        FileUtils.copyToFile(new ClassPathResource("sql" + File.separator + this.configVO.getType() + File.separator + "xxl_job.sql").getInputStream(), file);
+	        runner.runScript(new FileReader(file));
+	        List<Integer> appIds = initSettingVO.getAppList().stream().sorted().collect(Collectors.toList());
+	        for (Integer appId : appIds) {
+	            Future<?> asyncResult = this.taskExecutor.submit(() -> {
+	                try {
+	                    this.initBusinessService.initApp(appId, this.configVO);
+	                } catch (Exception e) {
+	                    throw new ServiceException(e.getMessage());
+	                }
+	            });
+	            while (!asyncResult.isDone()) {
+	                TimeUnit.NANOSECONDS.sleep(2L);
+	            }
+	        }
+	        initAdapter(initSettingVO, this.configVO.getUrl(), this.configVO.getType());
+	        replaceJumuUrl();
+	        this.initMapper.replaceUrlJiMu(initSettingVO);
+	        if (CommonConstant.ORACLE.equals(this.configVO.getType()) && Func.isNotEmpty(initSettingVO.getAppList()) && initSettingVO.getAppList().contains(AppEnum.VISUAL.getCode())) {
+	            try {
+	                VisualConfig visualConfig = new VisualConfig();
+	                visualConfig.setId(1510135236368261122L);
+	                visualConfig.setVisualId(1510135236343095298L);
+	                visualConfig.setDetail(FileUtil.getFileString(new ClassPathResource("constant" + File.separator + "VisualDetail.txt")));
+	                visualConfig.setComponent(FileUtil.getFileString(new ClassPathResource("constant" + File.separator + "VisualComponent.txt")));
+	                this.visualConfigService.save(visualConfig);
+	            } catch (Exception e) {
+	                throw new ServiceException(e.getMessage());
+	            }
+	        }
+	        IoUtil.close(conn);
+	        return true;
+    	}catch(Exception ex) {
+    		log.error("鍒濆鍖栫郴缁熷け璐�",ex);
+    		throw new ServiceException(ResultCode.FAILURE,ex);
+    	}
     }
 
-    @Override // org.springblade.modules.cps.service.IInitService
+    @Override
     public Boolean init(InitSettingVO initSettingVO) {
         if (!checkIsNeedInit().booleanValue()) {
             throw new ServiceException(MessageUtils.message("system.has.been.initialized", new Object[0]));
@@ -224,32 +191,34 @@
             List<String> list = new ArrayList<>();
             list.addAll(applicationCodes);
             list.add("HMI");
+            
+            this.applicationService.remove(Wrappers.<Application>lambdaQuery().notIn(Application::getCode, list));
+            /*
             this.applicationService.remove((Wrapper) Wrappers.lambdaQuery().notIn((v0) -> {
                 return v0.getCode();
             }, list));
-            initSettingVO.getApplicationList().forEach(k, v -> {
-                this.applicationService.update((Wrapper) ((LambdaUpdateWrapper) Wrappers.lambdaUpdate().set((v0) -> {
-                    return v0.getDomainUrl();
-                }, v)).eq((v0) -> {
-                    return v0.getCode();
-                }, k));
+            Application::getDomainUrl
+            */
+            initSettingVO.getApplicationList().forEach((k, v) -> {
+                this.applicationService.update(Wrappers.<Application>lambdaUpdate().set(Application::getDomainUrl, v).eq(Application::getCode, k));
             });
         }
         System.setProperty("blade.system.need_init", FmsConstant.MANUAL);
         return true;
     }
 
-    @Override // org.springblade.modules.cps.service.IInitService
+    @Override
     public LicenseDetailDTO licenseDetail() {
         try {
             Boolean needInit = checkIsNeedInit();
-            String text = needInit.booleanValue() ? LicenseUtil.getLicenseMap().get("000000") : LicenseUtil.getEncryptCode("000000");
+            String text = needInit ? LicenseUtil.getLicenseMap().get("000000") : LicenseUtil.getEncryptCode("000000");
             if (StringUtils.isEmpty(text)) {
                 return null;
             }
             LicenseEntity licenseEntity = new License().loadLicense(text);
-            return (LicenseDetailDTO) JSONObject.parseObject(new String(licenseEntity.getData()), LicenseDetailDTO.class);
+            return JSONObject.parseObject(new String(licenseEntity.getData()), LicenseDetailDTO.class);
         } catch (LicenseException e) {
+        	log.error("鍔犺浇licenseDetail閿欒",e);
             return null;
         }
     }

--
Gitblit v1.9.3