소스 검색

1.风控
———— by qlm

qlm 4 년 전
부모
커밋
5f8c7e9a5a
2개의 변경된 파일74개의 추가작업 그리고 5개의 파일을 삭제
  1. 20 5
      src/main/java/com/xc/controller/RiskController.java
  2. 54 0
      src/main/java/com/xc/utils/HttpRequest.java

+ 20 - 5
src/main/java/com/xc/controller/RiskController.java

@@ -5,6 +5,7 @@ import com.jfinal.plugin.activerecord.Db;
 import com.jfinal.plugin.activerecord.Record;
 import com.xc.common.ServerResponse;
 import com.xc.service.RiskService;
+import com.xc.utils.DateUtils;
 import com.xc.utils.HttpRequest;
 import com.xc.utils.PropertiesUtil;
 import org.slf4j.Logger;
@@ -39,11 +40,15 @@ public class RiskController {
     @RequestMapping({"delete.do"})
     @ResponseBody
     public ServerResponse delete(String id) {
-        String data1 = Db.use("data").queryStr("select code from risk_control_formula where id = ? ", id);
+        Record data1 = Db.use("data").findFirst("select code,status,tocode from risk_control_formula where id = ? ", id);
         int data = Db.use("data").update("delete  from  risk_control_formula  where id = ? ", id);
+
+        if("1".equals(data1.get("data1"))){  // 如果关闭了
+            Db.use("data").update("UPDATE risk_control_formula_history SET `endTime` = ?   WHERE `tocode` = ?  and (endTime is null or endTime ='' ) ", System.currentTimeMillis(), data1.get("tocode"));
+        }
         try {
             String url = PropertiesUtil.getProperty("httpdata.url");
-            HttpRequest.doGet(url+"remMap?key="+data1,"");
+            HttpRequest.sendGet(url+"remMap?key="+data1.get("code"),"");
         } catch (Exception e) {
             e.printStackTrace();
         }
@@ -57,14 +62,19 @@ public class RiskController {
                        String minimumFluctuation,    // 最小波动
                        String riskControl,    // 风控参数(+-*/)
                        String status,    // 状态,0启动、1关闭
-                       String tocode    // 新币/股 code (GTC)
+                       String tocode,    // 新币/股 code (GTC)
+                       String multiples    // 倍数
     ) {
 
         int data = Db.use("data").update("insert into risk_control_formula(code,codeName,minimumFluctuation,riskControl,status,tocode) " +
                 "values('" + code + "', '" + codeName + "','" + minimumFluctuation + "','" + riskControl + "','" + status + "','" + tocode + "')");
         try {
             String url = PropertiesUtil.getProperty("httpdata.url");
-            HttpRequest.doGet(url+"remMap?key="+code,"");
+            if("0".equals(status)){  // 启动
+                 Db.use("data").update("INSERT INTO `stock_data_huobi`.`risk_control_formula_history`( `code`, `minimumFluctuation`, `riskControl`, `status`, `startTime`, `endTime`, `tocode`, `multiples`) " +
+                         " VALUES ( '" + code + "', '"+minimumFluctuation+"', '"+riskControl+"', "+status+", '"+ System.currentTimeMillis() +"', '', '"+tocode+"', "+multiples+")  " );
+            }
+            HttpRequest.sendGet(url+"remMap?key="+code,"");
         } catch (Exception e) {
             e.printStackTrace();
         }
@@ -85,9 +95,14 @@ public class RiskController {
 
         int data = Db.use("data").update("UPDATE risk_control_formula SET `code` = ? , `minimumFluctuation` = ?, `riskControl` = ?, " +
                 "`status` = ?, `codeName` = ?, `tocode` = ?  WHERE `id` = ? ", code, minimumFluctuation, riskControl, status, codeName, tocode, id);
+
+        if("1".equals(status)){  // 如果关闭了
+            Db.use("data").update("UPDATE risk_control_formula_history SET `endTime` = ?   WHERE `tocode` = ?  and (endTime is null or endTime ='' ) ", System.currentTimeMillis(), tocode);
+        }
+
         String url = PropertiesUtil.getProperty("httpdata.url");
         try {
-            HttpRequest.doGet(url+"remMap?key="+code,"");
+            HttpRequest.sendGet(url+"remMap?key="+code,"");
         } catch (Exception e) {
             e.printStackTrace();
         }

+ 54 - 0
src/main/java/com/xc/utils/HttpRequest.java

@@ -10,6 +10,8 @@ import java.net.URLConnection;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
+
+import org.apache.commons.lang3.StringUtils;
 import org.apache.http.HttpEntity;
 import org.apache.http.HttpResponse;
 import org.apache.http.NameValuePair;
@@ -88,6 +90,58 @@ public class HttpRequest {
     }
 
 
+    public static String sendGet(String url, String param) {
+        String result = "";
+        BufferedReader in = null;
+        try {
+            String urlNameString = "";
+            if(StringUtils.isNoneEmpty(param)) {
+                urlNameString = url + param;
+            }else {
+                urlNameString =url;
+            }
+
+            URL realUrl = new URL(urlNameString);
+            // 打开和URL之间的连接
+            URLConnection connection = realUrl.openConnection();
+            // 设置通用的请求属性
+            connection.setRequestProperty("accept", "*/*");
+            connection.setRequestProperty("connection", "Keep-Alive");
+            connection.setRequestProperty("user-agent",
+                    "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)");
+            // 建立实际的连接
+            connection.connect();
+            // 获取所有响应头字段
+            Map<String, List<String>> map = connection.getHeaderFields();
+            // 遍历所有的响应头字段
+            for (String key : map.keySet()) {
+                System.out.println(key + "--->" + map.get(key));
+            }
+            // 定义 BufferedReader输入流来读取URL的响应
+            in = new BufferedReader(new InputStreamReader(
+                    connection.getInputStream()));
+            String line;
+            while ((line = in.readLine()) != null) {
+                result += line;
+            }
+        } catch (Exception e) {
+            System.out.println("发送GET请求出现异常!" + e);
+            e.printStackTrace();
+        }
+        // 使用finally块来关闭输入流
+        finally {
+            try {
+                if (in != null) {
+                    in.close();
+                }
+            } catch (Exception e2) {
+                e2.printStackTrace();
+            }
+        }
+        return result;
+    }
+
+
     public static void main(String[] args) {
         String url = "";
         String ips = "183.32.208.138";