From 8a5b6b092754685b4da940d2a35a855832f92465 Mon Sep 17 00:00:00 2001
From: zhanzhiqin <895896009@qq.com>
Date: 星期五, 22 四月 2022 16:10:46 +0800
Subject: [PATCH] fix

---
 ximon-admin/src/main/java/com/sandu/ximon/admin/service/XiXunPlayerService.java |   69 ++++++++++++++++++++++++++++++----
 1 files changed, 61 insertions(+), 8 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 9ec7c6f..cde80d1 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
@@ -1,7 +1,8 @@
 package com.sandu.ximon.admin.service;
 
-import com.alibaba.fastjson.JSON;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.google.gson.Gson;
 import com.google.gson.GsonBuilder;
 import com.sandu.common.execption.BusinessException;
@@ -13,13 +14,18 @@
 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.dao.domain.LedSFile;
 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.springframework.stereotype.Service;
 
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.List;
+import java.util.UUID;
 
 /**
  * 鐔欒鑺傜洰
@@ -33,7 +39,32 @@
     private final LightemitUtils lightemitUtils;
     private final RealtimeServerBean realtimeServerBean;
     private final PoleLightemitService poleLightemitService;
+    private final ClientService clientService;
+    private final LedSFileService xiXunFileService;
 
+    //鐔欒鑺傜洰鍒楄〃
+    public LambdaQueryWrapper<PoleXixunPlayerEntity> XixunPlayerList(String keyword) {
+        if (SecurityUtils.getClientId() == null) {
+            if (keyword != null && keyword.isEmpty()) {
+                return Wrappers.lambdaQuery(PoleXixunPlayerEntity.class);
+            } else {
+                return Wrappers.lambdaQuery(PoleXixunPlayerEntity.class).like(PoleXixunPlayerEntity::getProgramName, keyword);
+            }
+
+        } else {
+            if (keyword != null && keyword.isEmpty()) {
+                return Wrappers.lambdaQuery(PoleXixunPlayerEntity.class).eq(PoleXixunPlayerEntity::getCreateUserId, SecurityUtils.getUserId())
+                        .or(w -> {
+                            w.eq(PoleXixunPlayerEntity::getClientId, SecurityUtils.getClientId());
+                        });
+            } else {
+                return Wrappers.lambdaQuery(PoleXixunPlayerEntity.class).eq(PoleXixunPlayerEntity::getCreateUserId, SecurityUtils.getUserId())
+                        .or(w -> {
+                            w.eq(PoleXixunPlayerEntity::getClientId, SecurityUtils.getClientId());
+                        }).like(PoleXixunPlayerEntity::getProgramName, keyword);
+            }
+        }
+    }
 
     public boolean insert(ProgramPro programPro) {
         String json = JsonUtil.jsonObj2Sting(programPro);
@@ -43,12 +74,19 @@
         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.getClientId());
-
+        poleXixunPlayer.setCreateUserId(SecurityUtils.getUserId());
+        if (SecurityUtils.getClientId() != null) {
+            poleXixunPlayer.setCreateUserId(SecurityUtils.getUserId());
+            if (clientService.findClientId()) {
+                poleXixunPlayer.setClientId(clientService.getClientId());
+            }
+        }
         return this.save(poleXixunPlayer);
     }
 
@@ -62,6 +100,8 @@
 
     public Object getByPid(Long pid) {
         PoleXixunPlayerEntity byId = getById(pid);
+        List<Long> fileIds = new ArrayList<>();
+        List<LedSFile> file = new ArrayList<>();
         if (byId == null) {
             throw new BusinessException("鏈壘鍒拌鑺傜洰");
         }
@@ -70,14 +110,27 @@
         try {
             programPro = JsonUtil.convertJsonStringToObject(json, ProgramPro.class);
             programPro.setProgramId(pid);
+            programPro.setScreenShot(byId.getScreenShot());
+            programPro.getLayers().forEach(
+                    layerPro -> {
+                        layerPro.getSources().forEach(
+                                sourcePro -> {
+                                    long fileId = Long.parseLong(sourcePro.getId());
+                                    file.add(xiXunFileService.getById(fileId));
+                                }
+                        );
+                    }
+            );
+            programPro.setFileList(file);
         } catch (Exception e) {
             e.printStackTrace();
         }
-        return  programPro;
+        return programPro;
     }
 
     /**
      * 鎺ㄩ�佽妭鐩�
+     *
      * @param programId
      * @param lightemitIds
      */
@@ -127,12 +180,12 @@
 
         Collection<PoleLightemitEntity> poleLightemitEntities = poleLightemitService.listByIds(lightemitIds);
 
-        if(poleLightemitEntities != null){
-            for (PoleLightemitEntity entity: poleLightemitEntities) {
+        if (poleLightemitEntities != null) {
+            for (PoleLightemitEntity entity : poleLightemitEntities) {
                 lightemitUtils.clear(entity.getLightemitControlCode());
                 poleLightemitService.updateRequestBody(entity.getLightemitControlCode(), jsondata);
                 String post = lightemitUtils.post(realtimeServerBean.getCommand() + entity.getLightemitControlCode(), jsondata);
-                LogUtils.error("缁撴灉:"+post);
+                LogUtils.error("缁撴灉:" + post);
             }
         }
     }

--
Gitblit v1.9.3