From c00a73b74e67dbeb508865c3da4ed8d57c8631db Mon Sep 17 00:00:00 2001
From: zhanzhiqin <895896009@qq.com>
Date: 星期三, 20 四月 2022 14:16:12 +0800
Subject: [PATCH] fix admin LIST
---
ximon-admin/src/main/java/com/sandu/ximon/admin/service/XiXunPlayerService.java | 150 ++++++++++++++++++++++++++++++++++++++++---------
1 files changed, 121 insertions(+), 29 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 4b05920..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,53 +1,140 @@
package com.sandu.ximon.admin.service;
+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;
import com.sandu.common.service.impl.BaseServiceImpl;
+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.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.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.text.SimpleDateFormat;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.List;
+import java.util.UUID;
+/**
+ * 鐔欒鑺傜洰
+ */
@Service
@AllArgsConstructor
public class XiXunPlayerService extends BaseServiceImpl<PoleXixunPlayerEntityMapper, PoleXixunPlayerEntity> {
private final PoleXixunPlayerEntityMapper poleXixunPlayerEntityMapper;
private final XiXunConfig config;
+ 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);
+ }
- public void insert(ProgramPro programPro, Long userId) {
- SimpleDateFormat sdf=new SimpleDateFormat("yy-MM-dd HH:mm:ss");
- Date date = new Date();
-// Program program = new Program();
-// try {
-// program = JsonUtil.convertJsonStringToObject(json,Program.class);
-// } catch (Exception e) {
-// e.printStackTrace();
-// }
+ } 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);
PoleXixunPlayerEntity poleXixunPlayer = new PoleXixunPlayerEntity();
poleXixunPlayer.setProgramCode(programPro.get_id());
poleXixunPlayer.setProgramName(programPro.getName());
poleXixunPlayer.setHeight(programPro.getHeight());
poleXixunPlayer.setWidth(programPro.getWidth());
- poleXixunPlayer.setTotalSize((float) programPro.getTotalSize()/1000000+"MB");
+ 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.setCreatTime(sdf.format(date));
- poleXixunPlayer.setCreateUserId(SecurityUtils.getClientId());
-
- this.save(poleXixunPlayer);
+ 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);
}
- public void videoXixunPlayer(long programId,Long[] lightemitIds) {
+ public boolean deleteProgram(Long pid) {
+ PoleXixunPlayerEntity byId = getById(pid);
+ if (byId == null) {
+ throw new BusinessException("鏈壘鍒拌鑺傜洰");
+ }
+ return removeById(pid);
+ }
+
+ 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("鏈壘鍒拌鑺傜洰");
+ }
+ String json = byId.getRequestBody();
+ ProgramPro programPro = new ProgramPro();
+ 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;
+ }
+
+ /**
+ * 鎺ㄩ�佽妭鐩�
+ *
+ * @param programId
+ * @param lightemitIds
+ */
+ public void videoXixunPlayer(long programId, List<Long> lightemitIds) {
ProgramPro pro = new ProgramPro();
ItemPro items = new ItemPro();
@@ -57,9 +144,12 @@
PoleXixunPlayerEntity poleXixunPlayerEntity = new PoleXixunPlayerEntity();
items.set_id(UUID.randomUUID().toString());
QueryWrapper<PoleXixunPlayerEntity> queryWrapper = new QueryWrapper<>();
- queryWrapper.eq("program_id",programId);
+ queryWrapper.eq("program_id", programId);
poleXixunPlayerEntity = this.getOne(queryWrapper);
String json = poleXixunPlayerEntity.getRequestBody();
+
+// System.out.println( JSON.parseArray(json, ProgramPro.class));
+
try {
pro = JsonUtil.convertJsonStringToObject(json, ProgramPro.class);
} catch (Exception e) {
@@ -70,33 +160,35 @@
items.setSchedulePros(null);//瀹氭椂娈碉紝涓嶅仛瀹氭椂鍙负null
taskPro.set_id(UUID.randomUUID().toString());
taskPro.setName(poleXixunPlayerEntity.getProgramName());
- List<ItemPro> list2=new ArrayList<ItemPro>();
+ List<ItemPro> list2 = new ArrayList<>();
list2.add(items);
taskPro.setItems(list2);
command.setId(UUID.randomUUID().toString());
//杩欓噷鏄笅鏂圭殑post鍥炶皟鍦板潃锛岄渶瑕佷慨鏀笽P鍦板潃
command.setNotificationURL("http://" + config.getIp() + ":" + config.getPort() + "/machine-fast/serv/download/getJSON");
//璧勬簮涓嬭浇閾炬帴鐨勮姹傚ご
-// command.setPreDownloadURL("http://" + config.getIp() + ":" + config.getPort() + "/machine-fast/serv/download/downliadFileById/");
-// command.setTask(taskPro);
-// xixun.set_id(UUID.randomUUID().toString());
-// xixun.setCommand(command);
-// xixun.setType("commandXixunPlayer"); //鍛戒护鍥哄畾绫诲瀷锛屼笉鍙洿鏀�
+ command.setPreDownloadURL("http://" + config.getIp() + ":" + config.getPort() + "/machine-fast/serv/download/downliadFileById/");
+ command.setTask(taskPro);
+ xixun.set_id(UUID.randomUUID().toString());
+ xixun.setCommand(command);
+ xixun.setType("commandXixunPlayer"); //鍛戒护鍥哄畾绫诲瀷锛屼笉鍙洿鏀�
Gson gson = new GsonBuilder().disableHtmlEscaping().create();
// String jsondata = JSON.toJSONString(xixun);
String jsondata = gson.toJson(xixun);
- /* Collection<PoleLightemitEntity> poleLightemitEntities = poleLightemitService.listByIds(Arrays.asList(lightemitIds));
+ 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);
- lightemitUtils.post(realtimeServerBean.getCommand() + entity.getLightemitControlCode(), jsondata);
+ String post = lightemitUtils.post(realtimeServerBean.getCommand() + entity.getLightemitControlCode(), jsondata);
+ LogUtils.error("缁撴灉:" + post);
}
- }*/
+ }
}
+
}
--
Gitblit v1.9.3