From f89c8d19d96fdbff3081ba4ac48ea3e72168bc59 Mon Sep 17 00:00:00 2001
From: liuhaonan <31457034@qq.com>
Date: 星期五, 20 五月 2022 15:52:44 +0800
Subject: [PATCH] 日志

---
 ximon-admin/src/main/java/com/sandu/ximon/admin/service/XiXunPlayerService.java |  130 +++++++++++++++++++++++++++++++++++++++----
 1 files changed, 118 insertions(+), 12 deletions(-)

diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/XiXunPlayerService.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/XiXunPlayerService.java
index a21f1b9..2086795 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/XiXunPlayerService.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/XiXunPlayerService.java
@@ -10,22 +10,24 @@
 import com.sandu.ximon.admin.config.RealtimeServerBean;
 import com.sandu.ximon.admin.config.XiXunConfig;
 import com.sandu.ximon.admin.entity.*;
+import com.sandu.ximon.admin.manager.iot.frame.inner.report.A5AtmosphereHeartbeatReportInnerFrame;
 import com.sandu.ximon.admin.security.SecurityUtils;
 import com.sandu.ximon.admin.utils.JsonUtil;
 import com.sandu.ximon.admin.utils.LightemitUtils;
 import com.sandu.ximon.admin.utils.LogUtils;
-import com.sandu.ximon.dao.domain.LEDProgram;
+import com.sandu.ximon.admin.utils.StoreOperationRecordsUtils;
+import com.sandu.ximon.admin.utils.request.SubTitleSet;
 import com.sandu.ximon.dao.domain.LedSFile;
+import com.sandu.ximon.dao.domain.Pole;
 import com.sandu.ximon.dao.domain.PoleLightemitEntity;
 import com.sandu.ximon.dao.domain.PoleXixunPlayerEntity;
 import com.sandu.ximon.dao.mapper.PoleXixunPlayerEntityMapper;
 import lombok.AllArgsConstructor;
+import org.apache.commons.lang.StringUtils;
+import org.springframework.scheduling.annotation.Async;
 import org.springframework.stereotype.Service;
 
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.List;
-import java.util.UUID;
+import java.util.*;
 
 /**
  * 鐔欒鑺傜洰
@@ -74,20 +76,27 @@
         poleXixunPlayer.setHeight(programPro.getHeight());
         poleXixunPlayer.setWidth(programPro.getWidth());
         poleXixunPlayer.setTotalSize((float) programPro.getTotalSize() / 1000000 + "MB");
-//        poleXixunPlayer.setTotalSize( Long.parseLong(programPro.getTotalSize()) / 1000000 + "MB");
-//        programPro.setProgramId(poleXixunPlayer.getProgramId());
-//        System.out.println(poleXixunPlayer.getProgramId());
         poleXixunPlayer.setRequestBody(json);
         poleXixunPlayer.setScreenShot(programPro.getScreenShot());
-        //  poleXixunPlayer.setCreatTime(sdf.format(date));
-        poleXixunPlayer.setCreateUserId(SecurityUtils.getUserId());
         if (SecurityUtils.getClientId() != null) {
             poleXixunPlayer.setCreateUserId(SecurityUtils.getUserId());
             if (clientService.findClientId()) {
                 poleXixunPlayer.setClientId(clientService.getClientId());
             }
         }
-        return this.save(poleXixunPlayer);
+        boolean save = this.save(poleXixunPlayer);
+        /**
+         * 鐔欐睕鑺傜洰鏂板鏃ュ織璁板綍寮�濮�
+         */
+        String content = "{鑺傜洰id锛�" + poleXixunPlayer.getProgramId()
+                + "锛� 鑺傜洰鍚嶇О锛�" + poleXixunPlayer.getProgramName()
+                + "锛� 鑺傜洰鍐呭锛�" + json
+                + " }";
+        StoreOperationRecordsUtils.storeOperationData(null, null, "鐔欐睕鑺傜洰鏇存敼", content);
+        /**
+         * 鐔欐睕鑺傜洰鏂板鏃ュ織璁板綍缁撴潫
+         */
+        return save;
     }
 
     public boolean deleteProgram(Long pid) {
@@ -95,6 +104,16 @@
         if (byId == null) {
             throw new BusinessException("鏈壘鍒拌鑺傜洰");
         }
+        /**
+         * 鐔欐睕鑺傜洰鍒犻櫎鏃ュ織璁板綍寮�濮�
+         */
+        String content = "{鍒犻櫎鐨勮妭鐩甶d锛�" + byId.getProgramId()
+                + "锛� 鍒犻櫎鐨勮妭鐩悕绉帮細" + byId.getProgramName()
+                + " }";
+        StoreOperationRecordsUtils.storeOperationData(null, null, "鐔欐睕鑺傜洰鍒犻櫎", content);
+        /**
+         * 鐔欐睕鑺傜洰鍒犻櫎鏃ュ織璁板綍缁撴潫
+         */
         return removeById(pid);
     }
 
@@ -127,7 +146,6 @@
         }
         return programPro;
     }
-
 
 
 //    public Object getProgram(String json) {
@@ -220,7 +238,95 @@
                 LogUtils.error("缁撴灉:" + post);
             }
         }
+
+
+        /**
+         * 鐔欐睕鑺傜洰鎺ㄩ�佹棩蹇楄褰曞紑濮�
+         */
+        List<String> listCode = new ArrayList<>();
+        for (PoleLightemitEntity bean : poleLightemitEntities) {
+            listCode.add(bean.getLightemitControlCode());
+        }
+        String content = "{鑺傜洰id锛�" + programId
+                + "锛� 鑺傜洰鍚嶇О锛�" + poleXixunPlayerEntity.getProgramName()
+                + "锛� 鑺傜洰鍐呭锛�" + json
+                + " }";
+        StoreOperationRecordsUtils.storeOperationData(listCode, null, "鐔欐睕鑺傜洰鎺ㄩ��", content);
+        /**
+         * 鐔欐睕鑺傜洰鎺ㄩ�佹棩蹇楄褰曠粨鏉�
+         */
     }
 
 
+    /**
+     * 鎺ㄩ�佸ぇ姘旀暟鎹埌鐔欒LED
+     */
+    @Async("taskExecutor")
+    public Boolean pushWeather(String lightemitControlCode, A5AtmosphereHeartbeatReportInnerFrame.HeartBeatDataPackage sensorEntity, Pole streetlightEntity) {
+        if (StringUtils.isBlank(lightemitControlCode)) {
+            return Boolean.valueOf(false);
+        }
+        Integer screenHeight = Integer.parseInt(lightemitUtils.getScreenHeight(lightemitControlCode));
+        String size = String.valueOf(screenHeight / 18);
+        //瀛楀箷涓讳綋鎷兼帴
+        String body =
+                "<head><style type=\"text/css\">body{background-color:#000;}</style></head>" +
+                        "<p style=\"font-size:" + size + "px;line-height:17px;color:#fff\">" +
+                        (streetlightEntity == null || streetlightEntity.getCity() == null ? "" : streetlightEntity.getCity().replace("甯�", "")) + "<br/>" +
+                        "娓╁害锛�" + (sensorEntity == null || sensorEntity.getTemperature() == null ? "   -" : sensorEntity.getTemperature()) + "鈩�<br/>" +
+                        "婀垮害锛�" + (sensorEntity == null || sensorEntity.getHumidity() == null ? "-" : sensorEntity.getHumidity()) + "%RH<br/>" +
+                        "浜害锛�" + (sensorEntity == null || sensorEntity.getLightIntensity() == null ? "-" : sensorEntity.getLightIntensity()) + "lux<br/>" +
+                        "椋庨�燂細" + (sensorEntity == null || sensorEntity.getWindSpeed() == null ? "-" : sensorEntity.getWindSpeed()) + "m/s<br/>" +
+                        "CO2锛�" + (sensorEntity == null || sensorEntity.getCo2() == null ? "-" : sensorEntity.getCo2()) + "ppm<br/>" +
+                        "鐢查啗锛�" + (sensorEntity == null || sensorEntity.getEch2o() == null ? "-" : sensorEntity.getEch2o()) + "mg/m鲁<br/>" +
+                        "TVOC锛�" + (sensorEntity == null || sensorEntity.getTvoc() == null ? "-" : sensorEntity.getTvoc()) + "mg/m鲁<br/>" +
+                        "PM25锛�" + (sensorEntity == null || sensorEntity.getPm25() == null ? "-" : sensorEntity.getPm25()) + "mg/m鲁<br/>" +
+                        "PM10锛�" + (sensorEntity == null || sensorEntity.getPm10() == null ? "-" : sensorEntity.getPm10()) + "mg/m鲁<br/>";
+
+        //缁勮璇锋眰鍙傛暟
+        SubTitleSet subTitleSet = new SubTitleSet();
+        subTitleSet.html = body;
+        subTitleSet.num = 1;
+
+        //娓呭睆鎿嶄綔
+        lightemitUtils.clear(lightemitControlCode);
+        //娓呴櫎鎾斁鍒楄〃
+        lightemitUtils.clearVideoPlay(lightemitControlCode);
+        //娓呴櫎鑺傜洰鍒楄〃
+        lightemitUtils.clearPlayerTask(lightemitControlCode);
+        try {
+            lightemitUtils.subTitleSet(subTitleSet, lightemitControlCode, false);
+            return true;
+        } catch (Exception e) {
+            return false;
+        } finally {
+            //涓�鍒嗛挓鍚庢竻闄ゅ睆骞�
+            new Timer().schedule(new TimerTask() {
+                @Override
+                public void run() {
+                    lightemitUtils.clear(lightemitControlCode);
+                    //娓呴櫎鎾斁鍒楄〃
+                    lightemitUtils.clearVideoPlay(lightemitControlCode);
+                    //娓呴櫎鑺傜洰鍒楄〃
+                    lightemitUtils.clearPlayerTask(lightemitControlCode);
+                    //鎺ㄩ�佹渶鍚庡懡浠�
+                    lightemitUtils.sendLastCommand(lightemitControlCode);
+
+                    /**
+                     * 鐔欐睕澶ф皵鏁版嵁鎺ㄩ�佹棩蹇楄褰曞紑濮�
+//                     */
+//                    String content = "{璁惧code锛�" + lightemitControlCode
+//                            + "锛� 鎺ㄩ�佸唴瀹癸細" + body
+//                            + " }";
+//                    List<String> listCode = new ArrayList<>();
+//                    listCode.add(lightemitControlCode);
+//                    StoreOperationRecordsUtils.storeOperationData(listCode, null, "鐔欐睕澶ф皵鏁版嵁鎺ㄩ��", content);
+                    /**
+                     * 鐔欐睕澶ф皵鏁版嵁鎺ㄩ�佹棩蹇楄褰曠粨鏉�
+                     */
+                }
+            }, 60 * 1000);
+        }
+    }
+
 }

--
Gitblit v1.9.3