智慧保安后台管理-外网项目备份
zhongrj
2023-02-21 7069c80e28f86bca44bcd060b865f8e719ad634e
src/main/java/org/springblade/modules/system/service/MyAsyncService.java
@@ -1,8 +1,10 @@
package org.springblade.modules.system.service;
import net.sf.json.JSONObject;
import org.springblade.common.config.DataSyncConfig;
import org.springblade.common.utils.HttpClientUtils;
import org.springblade.modules.FTP.FtpUtil;
import org.springblade.modules.dataSync.MysqlCenlint;
import org.springblade.modules.system.dto.UserDTO;
import org.springblade.modules.system.entity.User;
import org.springframework.scheduling.annotation.Async;
@@ -158,4 +160,53 @@
         }
      }
   }
   /**
    * 数据同步
    * @param sql
    */
   @Async
   public void dataSync(String sql) {
      if (DataSyncConfig.enable.equals("start")) {
         //判断同步类型
         //sql 直连处理
         if (DataSyncConfig.type.equals("sql")) {
            sqlDataHandler(sql);
         }
         //ftp 连接同步
         if (DataSyncConfig.type.equals("ftp")) {
            FTP(sql);
         }
      }
   }
   /**
    *  sql 直连处理
    * @param sql sql
    */
   @Async
   public void sqlDataHandler(String sql) {
      //以逗号分割
      String[] split = sql.split(";");
      if (null!=split && split.length>0) {
         for (String sqls : split) {
            //判断是否是新增,删除,修改
            String substring = sqls.substring(0, 2);
            //新增
            if (substring.equals("in")) {
               //运行sql语句
               MysqlCenlint.inster(sqls);
            }
            //修改
            else if (substring.equals("up")) {
               MysqlCenlint.update(sqls);
            }
            //删除
            else {
               MysqlCenlint.delete(sqls);
            }
         }
      }
   }
}