فهرست منبع

1、bug修复

clevercsc 5 سال پیش
والد
کامیت
4698dc4789

+ 8 - 9
src/main/java/cn/clevercsc/niuniutool/service/NiuniuService.java

@@ -13,7 +13,6 @@ import com.alibaba.fastjson.serializer.SerializerFeature;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.StringUtils;
 import org.jsoup.Connection;
-import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.scheduling.annotation.Scheduled;
 import org.springframework.stereotype.Component;
 
@@ -33,9 +32,6 @@ import java.util.Map;
 @Slf4j
 public class NiuniuService {
 
-    @Autowired
-    private DashboardWs dashboardWs;
-
     public String accessToken;
 
     public PinTuanDto lastPintuanDto;
@@ -112,7 +108,7 @@ public class NiuniuService {
         }
     }
 
-    @Scheduled(cron = "12 0/2 * * * ? ")
+    @Scheduled(cron = "12 0/1 * * * ? ")
     public void updatePinTuan() {
         userInfo();
         HttpResult httpResult =  pinTuan();
@@ -126,18 +122,21 @@ public class NiuniuService {
         if (dashboardDto==null){
             dashboardDto= new DashboardDto();
         }
-        dashboardDto.setPinTuanDto(pinTuanDto);
+
         if (!pinTuanDto.getAlready_pinzhong().equals(lastPintuanDto.getAlready_pinzhong())){
             log.info("你拼中了  {}  个商品,请尽快处理",(pinTuanDto.getAlready_pinzhong()-lastPintuanDto.getAlready_pinzhong()));
-            lastPintuanDto=pinTuanDto;
             dashboardDto.setChange(pinTuanDto.getAlready_pinzhong()-lastPintuanDto.getAlready_pinzhong());
+        }else {
+            dashboardDto.setChange(0);
         }
+        dashboardDto.setPinTuanDto(pinTuanDto);
+        lastPintuanDto=pinTuanDto;
     }
 
-    @Scheduled(cron = "0/5 * * * * ? ")
+    @Scheduled(cron = "15 0/1 * * * ? ")
     public void sendDashboardWs() {
         if (dashboardDto!=null){
-            dashboardWs.send(JSONObject.toJSONString(dashboardDto, SerializerFeature.DisableCircularReferenceDetect));
+            DashboardWs.send(JSONObject.toJSONString(dashboardDto, SerializerFeature.DisableCircularReferenceDetect));
         }
     }
 }

+ 2 - 0
src/main/java/cn/clevercsc/niuniutool/util/ConnectUtils.java

@@ -24,6 +24,7 @@ public class ConnectUtils {
                     .timeout(TIME_OUT)
                     .data(params)
                     .requestBody(json)
+                    .header("User-Agent"," Mozilla/5.0 (Linux; Android 7.1.2; SM-G973N Build/PPR1.190810.011; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/75.0.3770.143 Mobile Safari/537.36 uni-app Html5Plus/1.0 (Immersed/24.0)")
                     .header("X-Requested-With", UrlConstant.X_Requested_With_URL)
                     .header("Content-Type", "application/json; charset=UTF-8")
                     .header("Origin",UrlConstant.Origin_URL)
@@ -46,6 +47,7 @@ public class ConnectUtils {
                     .header("X-Requested-With", UrlConstant.X_Requested_With_URL)
                     .header("Origin",UrlConstant.Origin_URL)
                     .header("Content-Type", "application/json; charset=UTF-8")
+                    .header("User-Agent"," Mozilla/5.0 (Linux; Android 7.1.2; SM-G973N Build/PPR1.190810.011; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/75.0.3770.143 Mobile Safari/537.36 uni-app Html5Plus/1.0 (Immersed/24.0)")
                     .method(method)
                     .execute();
             return JSONObject.parseObject(response.body(), HttpResult.class);

+ 3 - 4
src/main/java/cn/clevercsc/niuniutool/ws/DashboardWs.java

@@ -18,12 +18,11 @@ import java.io.IOException;
 @Component
 @ServerEndpoint("/ws/dashboard")
 public class DashboardWs {
-    private  static Session session;
+    private static Session session;
 
     @OnOpen
     public void onOpen(Session session) {
         DashboardWs.session = session;
-        send("ok");
     }
 
     @OnClose
@@ -31,9 +30,9 @@ public class DashboardWs {
         session.close();
     }
 
-    public  void send(String data) {
+    public static void send(String data) {
         try {
-            if (session!= null) {
+            if (session != null && session.isOpen()) {
                 session.getAsyncRemote().sendText(data);
             }
         } catch (Exception ignored) {