From dda268997ca8f8a364f7c19b45d7a43a50a98efe Mon Sep 17 00:00:00 2001
From: liuhaonan <31457034@qq.com>
Date: 星期二, 25 十月 2022 18:00:11 +0800
Subject: [PATCH] changes

---
 ximon-admin/src/main/java/com/sandu/ximon/admin/service/LedPlayerEntityService.java |  202 ++++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 194 insertions(+), 8 deletions(-)

diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/LedPlayerEntityService.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/LedPlayerEntityService.java
index 826bcbd..c81b710 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/LedPlayerEntityService.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/LedPlayerEntityService.java
@@ -1,11 +1,25 @@
 package com.sandu.ximon.admin.service;
 
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.github.pagehelper.PageHelper;
+import com.sandu.common.execption.BusinessException;
+import com.sandu.common.object.BaseConditionVO;
 import com.sandu.common.service.impl.BaseServiceImpl;
+import com.sandu.common.util.SpringContextHolder;
+import com.sandu.ximon.admin.security.SecurityUtils;
+import com.sandu.ximon.admin.utils.StoreOperationRecordsUtils;
+import com.sandu.ximon.admin.utils.VnnoxAPIUtil;
+import com.sandu.ximon.admin.vo.EquipmentInfomation;
+import com.sandu.ximon.dao.bo.LEDNovaGroupListBo;
 import com.sandu.ximon.dao.domain.LedPlayerEntity;
+import com.sandu.ximon.dao.enums.OrderByEnums;
 import com.sandu.ximon.dao.mapper.LedPlayerEntityMapper;
 import lombok.AllArgsConstructor;
 import org.springframework.stereotype.Service;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
 
 /**
  * @Author liuhaonan
@@ -17,21 +31,193 @@
 @AllArgsConstructor
 public class LedPlayerEntityService extends BaseServiceImpl<LedPlayerEntityMapper, LedPlayerEntity> {
     private final LedPlayerEntityMapper ledPlayerEntityMapper;
+    private VnnoxAPIUtil vnnoxAPIUtil;
 
-    public LedPlayerEntity getBySn(String sn){
+    public LedPlayerEntity getBySn(String sn) {
         return getOne(Wrappers.lambdaQuery(LedPlayerEntity.class).eq(LedPlayerEntity::getSn, sn));
     }
-    public LedPlayerEntity getByPlayerId(String playerId){
-        return getOne(Wrappers.lambdaQuery(LedPlayerEntity.class).eq(LedPlayerEntity::getPlayerId,playerId));
+
+    public LedPlayerEntity getByPlayerId(String playerId) {
+        return getOne(Wrappers.lambdaQuery(LedPlayerEntity.class).eq(LedPlayerEntity::getPlayerId, playerId));
     }
 
-    public boolean saveLed(LedPlayerEntity ledPlayerEntity){
-        return ledPlayerEntityMapper.saveLed(ledPlayerEntity);
+    /**
+     * 璇虹摝璁惧鏂板
+     *
+     * @param ledPlayerEntity
+     * @return
+     */
+    public boolean saveLed(LedPlayerEntity ledPlayerEntity) {
+        boolean b = ledPlayerEntityMapper.saveLed(ledPlayerEntity);
+        /**
+         * 璇虹摝璁惧鏂板 鏃ュ織璁板綍寮�濮�
+         */
+        List<String> listCode = new ArrayList<>(1);
+        listCode.add(ledPlayerEntity.getSn());
+        String content = "{ 璁惧id:" + ledPlayerEntity.getId() + "璁惧code锛�" + ledPlayerEntity.getSn() + "璇虹摝playId:" + ledPlayerEntity.getPlayerId() + "璇虹摝璁惧鍚嶇О:" + ledPlayerEntity.getName() + "}";
+
+        StoreOperationRecordsUtils.storeOperationData(listCode, null, "璇虹摝璁惧鏂板", content);
+        /**
+         * 璇虹摝璁惧鏂板 鏃ュ織璁板綍缁撴潫
+         */
+        return b;
     }
 
 
-  /*  public void listLed(String keyWord){
+    /**
+     * 璇虹摝纭欢璁惧
+     */
+    public LedPlayerEntity getBySnAndPlayerSn(String sn) {
+        LedPlayerEntity one = getOne(Wrappers.lambdaQuery(LedPlayerEntity.class).eq(LedPlayerEntity::getSn, sn));
+        if (one == null) {
+            throw new BusinessException("璇虹摝璁惧涓嶅瓨鍦�");
+        }
+        List list = new ArrayList();
+        list.add(one);
+        List<LedPlayerEntity> led = vnnoxAPIUtil.syncCurrentInfo(list);
+        Map<String, String> screenShotUrl = SpringContextHolder.getBean(VnnoxService.class).getScreenShotUrl(one.getId().intValue());
+        if (screenShotUrl.get("code").equals("200")) {
+            one.setScreenShotUrl(screenShotUrl.get("url"));
+        } else {
+            one.setScreenShotUrl("缂╃暐鍥捐幏鍙栧け璐�");
+        }
+        return one;
+    }
 
-        Wrappers.lambdaQuery(LedPlayerEntity.class).eq(LedPlayerEntity::get)
-    }*/
+    /**
+     * 棣栭〉鐏潌缁戝畾淇℃伅
+     */
+    public EquipmentInfomation getBySnAndPlayerSnInfo(String sn) {
+        EquipmentInfomation equipmentInfo = new EquipmentInfomation();
+        equipmentInfo.setEquipmentType("NLED");
+        if (sn == null || sn.trim().length() == 0) {
+            return equipmentInfo;
+        }
+
+        LedPlayerEntity one = getOne(Wrappers.lambdaQuery(LedPlayerEntity.class).eq(LedPlayerEntity::getSn, sn));
+        if (one == null) {
+            return equipmentInfo;
+        }
+        List<LedPlayerEntity> list = new ArrayList<>();
+        list.add(one);
+        List<LedPlayerEntity> ledPlayerEntities = vnnoxAPIUtil.syncCurrentInfo(list);
+        Integer onlineStatus = ledPlayerEntities.get(0).getOnlineStatus();
+        if (one != null) {
+            equipmentInfo.setEquipmentMac(one.getSn());
+            equipmentInfo.setEquipmentName(one.getName());
+            if (onlineStatus == 0) {
+                equipmentInfo.setEquipmentState("鍦ㄧ嚎");
+            } else {
+                equipmentInfo.setEquipmentState("绂荤嚎");
+            }
+        }
+
+        return equipmentInfo;
+    }
+
+
+    /**
+     * 璇虹摝鍒楄〃
+     *
+     * @param baseConditionVO
+     * @param keyword
+     * @param order
+     * @param seq
+     * @return
+     */
+    public List<LedPlayerEntity> ledPlayerEntityList(BaseConditionVO baseConditionVO, String keyword, Integer order, Integer seq, Long groupId) {
+        //鎺掑簭瀛楁
+        String orderByResult = OrderByEnums.VNNOX_ID.getCode();
+        //姝e簭銆佸�掑彊
+        String orderBySeq = OrderByEnums.ASC.getCode();
+        if (order != null) {
+            switch (order) {
+                case 1:
+                    orderByResult = OrderByEnums.VNNOX_POLE_NAME.getCode();
+                    break;
+                case 2:
+                    orderByResult = OrderByEnums.VNNOX_CREATE_TIMESTAMP.getCode();
+                    break;
+                default:
+            }
+        }
+        if (seq != null) {
+            switch (seq) {
+                case 1:
+                    orderBySeq = OrderByEnums.ASC.getCode();
+                    break;
+                case 2:
+                    orderBySeq = OrderByEnums.DESC.getCode();
+                    break;
+                default:
+                    break;
+            }
+        }
+        //鎺掑簭鏂瑰紡
+        String orderBy = orderByResult + " " + orderBySeq;
+
+
+        if (baseConditionVO != null) {
+            PageHelper.startPage(baseConditionVO.getPageNo(), baseConditionVO.getPageSize(), orderBy);
+        }
+        List<LedPlayerEntity> list;
+        //瓒呯
+        if (SecurityUtils.getClientId() == null) {
+            list = ledPlayerEntityMapper.ledListByGroupId(keyword, null, groupId);
+        } else {
+            list = ledPlayerEntityMapper.ledListByGroupId(keyword, SecurityUtils.getUserId(), groupId);
+        }
+        return SpringContextHolder.getBean(VnnoxService.class).setCacheInfo(vnnoxAPIUtil.syncCurrentInfo(list));
+    }
+
+    /**
+     * 璇虹摝鍒楄〃锛堢敤浜庨椤垫暟鎹粺璁★級
+     *
+     * @return
+     */
+    public List<LedPlayerEntity> ledPlayerEntityListOnHome() {
+        List<LedPlayerEntity> list;
+        //瓒呯
+        if (SecurityUtils.getClientId() == null) {
+            list = ledPlayerEntityMapper.ledPlayerEntityList(null, null);
+        } else {
+            list = ledPlayerEntityMapper.ledPlayerEntityList(null, SecurityUtils.getUserId());
+        }
+        return list == null ? new ArrayList<>() : list;
+    }
+
+    /**
+     * 璇虹摝鍒楄〃锛堢敤浜庣粦瀹氾級
+     *
+     * @param keyword
+     * @return
+     */
+    public List<LedPlayerEntity> ledPlayerEntityListOnBinding(String keyword) {
+
+        List<LedPlayerEntity> list;
+        //瓒呯
+        if (SecurityUtils.getClientId() == null) {
+            list = ledPlayerEntityMapper.ledPlayerEntityListOnBinding(keyword, null);
+        } else {
+            list = ledPlayerEntityMapper.ledPlayerEntityListOnBinding(keyword, SecurityUtils.getUserId());
+        }
+        return SpringContextHolder.getBean(VnnoxService.class).setCacheInfo(vnnoxAPIUtil.syncCurrentInfo(list));
+    }
+
+    /**
+     * 鑾峰彇鏁寸粍鐨勫睆骞�
+     *
+     * @param groupId
+     */
+    public List<LEDNovaGroupListBo> getListByGroupId(Long groupId) {
+        List<LEDNovaGroupListBo> listByGroupId = baseMapper.getListByGroupId(groupId, SecurityUtils.getClientId());
+        listByGroupId.forEach(
+                bo -> {
+                    if (bo.getName() == null || bo.getName().equals("")) {
+                        bo.setName(bo.getPlayerName());
+                    }
+                }
+        );
+        return listByGroupId;
+    }
 }

--
Gitblit v1.9.3