From 0af78b53f3e2b272ea2ec6ff923abe3b9815b19f Mon Sep 17 00:00:00 2001
From: liuhaonan <konodioda2333@vip.qq.com>
Date: 星期五, 31 十二月 2021 14:28:02 +0800
Subject: [PATCH] 功能完善
---
dao/src/main/resources/mapper/IpVolumeMissionMapper.xml | 57 +++-
dao/src/main/java/com/sandu/ximon/dao/mapper/IpVolumeMissionMapper.java | 8
dao/src/main/resources/mapper/IpVolumeFileMapper.xml | 6
ximon-admin/src/main/java/com/sandu/ximon/admin/param/IpVolumeFileParam.java | 4
ximon-admin/src/main/java/com/sandu/ximon/admin/controller/IpVolumeMissionController.java | 59 ++++
ximon-admin/src/main/java/com/sandu/ximon/admin/param/IpVolumeMissionParam.java | 141 ++++++++---
dao/src/main/java/com/sandu/ximon/dao/domain/IpVolumeFile.java | 4
ximon-admin/src/main/java/com/sandu/ximon/admin/service/IpVolumeFileService.java | 4
ximon-admin/src/main/resources/application-dev.yml | 2
ximon-admin/src/main/java/com/sandu/ximon/admin/service/IpVolumeMissionService.java | 323 +++++++++++++++++++++++---
dao/src/main/java/com/sandu/ximon/dao/domain/IpVolumeMission.java | 63 ++---
11 files changed, 523 insertions(+), 148 deletions(-)
diff --git a/dao/src/main/java/com/sandu/ximon/dao/domain/IpVolumeFile.java b/dao/src/main/java/com/sandu/ximon/dao/domain/IpVolumeFile.java
index 8453e23..1b53378 100644
--- a/dao/src/main/java/com/sandu/ximon/dao/domain/IpVolumeFile.java
+++ b/dao/src/main/java/com/sandu/ximon/dao/domain/IpVolumeFile.java
@@ -44,12 +44,12 @@
/**
* 鏂囦欢澶у皬
*/
- private String fileSize;
+ private Double fileSize;
/**
*
*/
- private String fileUrl;
+ private Long originSize;
/**
* 鍒涘缓鏃堕棿
diff --git a/dao/src/main/java/com/sandu/ximon/dao/domain/IpVolumeMission.java b/dao/src/main/java/com/sandu/ximon/dao/domain/IpVolumeMission.java
index 61320d9..a3bc99a 100644
--- a/dao/src/main/java/com/sandu/ximon/dao/domain/IpVolumeMission.java
+++ b/dao/src/main/java/com/sandu/ximon/dao/domain/IpVolumeMission.java
@@ -4,36 +4,42 @@
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
-import java.io.Serializable;
-import java.time.LocalDateTime;
-import com.sandu.common.mybatis.JsonIntegerArrayTypeHandler;
+import java.io.Serializable;
+import java.math.BigInteger;
+import java.time.LocalDateTime;
+import java.util.List;
+
+import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.Data;
/**
* ip闊虫煴浠诲姟
+ *
* @TableName ip_volume_mission
*/
-@TableName(value ="ip_volume_mission")
+@TableName(value = "ip_volume_mission")
@Data
public class IpVolumeMission implements Serializable {
/**
- *
+ *
*/
@TableId
- private Long id;
+ private Integer taskId;
/**
- *
+ *
*/
private Long userId;
/**
- *
+ *
*/
private String userName;
-
+ /**
+ *
+ */
private Long clientId;
/**
@@ -42,24 +48,14 @@
private String missionName;
/**
- * 鎾斁鏂囦欢
+ * 鏂囦欢url
*/
- private String missionFileName;
-
- /**
- * 鎾斁鏂囦欢id
- */
- private Long missionFileId;
+ private String missionFileUrl;
/**
* 鎾斁缁堢鏁伴噺
*/
private Integer numberInPlay;
-
- /**
- * 鍦ㄧ嚎鐘舵��
- */
- private Integer onLineState;
/**
* 鍒涘缓鏃堕棿
@@ -69,33 +65,28 @@
/**
* 寮�濮嬫棩鏈�
*/
- private String onDate;
+ private BigInteger onDate;
/**
* 缁撴潫鏃ユ湡
*/
- private String offDate;
+ private BigInteger offDate;
/**
* 鏄熸湡鑼冨洿
*/
- @TableField(typeHandler = JsonIntegerArrayTypeHandler.class)
- private String weeksRange;
-
- /**
- * 寮�濮嬫椂鍒�
- */
- private String onTime;
-
- /**
- * 缁撴潫鏃跺埢
- */
- private String offTime;
+ private Integer week;
/**
* 浠诲姟闊抽噺
*/
- private String missionVolume;
+ private Integer missionVolume;
+
+ /*@TableField
+ private List<IpVolumeFile> files;*/
+
+ /*@TableField
+ private List<String> fileNames;*/
@TableField(exist = false)
private static final long serialVersionUID = 1L;
diff --git a/dao/src/main/java/com/sandu/ximon/dao/mapper/IpVolumeMissionMapper.java b/dao/src/main/java/com/sandu/ximon/dao/mapper/IpVolumeMissionMapper.java
index 661a801..6c6564c 100644
--- a/dao/src/main/java/com/sandu/ximon/dao/mapper/IpVolumeMissionMapper.java
+++ b/dao/src/main/java/com/sandu/ximon/dao/mapper/IpVolumeMissionMapper.java
@@ -1,8 +1,11 @@
package com.sandu.ximon.dao.mapper;
-import com.sandu.ximon.dao.domain.IpVolumeMission;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.sandu.ximon.dao.bo.IpVolumeMissionBo;
+import com.sandu.ximon.dao.domain.IpVolumeMission;
import org.apache.ibatis.annotations.Mapper;
+
+import java.util.List;
/**
* @Entity com.sandu.ximon.dao.domain.IpVolumeMission
@@ -10,6 +13,9 @@
@Mapper
public interface IpVolumeMissionMapper extends BaseMapper<IpVolumeMission> {
+
+ List<IpVolumeMissionBo> listAllByClientId();
+
}
diff --git a/dao/src/main/resources/mapper/IpVolumeFileMapper.xml b/dao/src/main/resources/mapper/IpVolumeFileMapper.xml
index f8740bc..562589f 100644
--- a/dao/src/main/resources/mapper/IpVolumeFileMapper.xml
+++ b/dao/src/main/resources/mapper/IpVolumeFileMapper.xml
@@ -10,14 +10,14 @@
<result property="userName" column="user_name" jdbcType="VARCHAR"/>
<result property="clientId" column="client_id" jdbcType="BIGINT"/>
<result property="fileName" column="file_name" jdbcType="VARCHAR"/>
- <result property="fileSize" column="file_size" jdbcType="VARCHAR"/>
- <result property="fileUrl" column="file_url" jdbcType="VARCHAR"/>
+ <result property="fileSize" column="file_size" jdbcType="DOUBLE"/>
+ <result property="originSize" column="origin_size" jdbcType="BIGINT"/>
<result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
</resultMap>
<sql id="Base_Column_List">
id,user_id,user_name,
client_id,file_name,file_size,
- file_url,create_time
+ origin_size,create_time
</sql>
</mapper>
diff --git a/dao/src/main/resources/mapper/IpVolumeMissionMapper.xml b/dao/src/main/resources/mapper/IpVolumeMissionMapper.xml
index 298d69a..bd0b533 100644
--- a/dao/src/main/resources/mapper/IpVolumeMissionMapper.xml
+++ b/dao/src/main/resources/mapper/IpVolumeMissionMapper.xml
@@ -5,31 +5,56 @@
<mapper namespace="com.sandu.ximon.dao.mapper.IpVolumeMissionMapper">
<resultMap id="BaseResultMap" type="com.sandu.ximon.dao.domain.IpVolumeMission">
- <id property="id" column="id" jdbcType="BIGINT"/>
+ <id property="taskId" column="task_id" jdbcType="INTEGER"/>
<result property="userId" column="user_id" jdbcType="BIGINT"/>
<result property="userName" column="user_name" jdbcType="VARCHAR"/>
<result property="clientId" column="client_id" jdbcType="BIGINT"/>
<result property="missionName" column="mission_name" jdbcType="VARCHAR"/>
- <result property="missionFileName" column="mission_file_name" jdbcType="VARCHAR"/>
- <result property="missionFileId" column="mission_file_id" jdbcType="BIGINT"/>
+ <result property="missionFileUrl" column="mission_file_url" jdbcType="VARCHAR"/>
<result property="numberInPlay" column="number_in_play" jdbcType="INTEGER"/>
- <result property="onLineState" column="on_line_state" jdbcType="INTEGER"/>
<result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
- <result property="onDate" column="on_date" jdbcType="VARCHAR"/>
- <result property="offDate" column="off_date" jdbcType="VARCHAR"/>
- <result property="weeksRange" column="weeks_ range"
- typeHandler="com.sandu.common.mybatis.JsonStringArrayTypeHandler"/>
- <result property="onTime" column="on_time" jdbcType="VARCHAR"/>
- <result property="offTime" column="off_time" jdbcType="VARCHAR"/>
- <result property="missionVolume" column="mission_volume" jdbcType="VARCHAR"/>
+ <result property="onDate" column="on_date" jdbcType="BIGINT"/>
+ <result property="offDate" column="off_date" jdbcType="BIGINT"/>
+ <result property="week" column="week" jdbcType="INTEGER"/>
+ <result property="missionVolume" column="mission_volume" jdbcType="INTEGER"/>
+ <result property="fileName" column="file_name" jdbcType="VARCHAR"/>
+
</resultMap>
+
<sql id="Base_Column_List">
- id
+ task_id
,user_id,user_name,
- mission_name,mission_file_name,mission_file_id,
- number_in_play,on_line_state,create_time,
- on_date,off_date,weeks_ range,
- on_time,off_time,mission_volume
+ client_id,mission_name,mission_file_url,
+ number_in_play,create_time,on_date,
+ off_date,week,mission_volume
</sql>
+ <select id="listAllByClientId" resultType="com.sandu.ximon.dao.bo.IpVolumeMissionBo">
+ SELECT
+ t1.task_id,
+ t1.mission_name,
+ t1.number_in_play,
+ t1.create_time,
+ t1.user_name
+ FROM
+ ip_volume_mission t1
+ JOIN ip_volume_file t2
+ JOIN broadcast_v2_task_file t3 ON t1.task_id = t3.task_id
+ AND t2.id = t3.file_id group by task_id
+ </select>
+
+
+ <!-- SELECT
+ t1.task_id,
+ t1.mission_name,
+ t1.number_in_play,
+ t1.create_time,
+ t1.user_name,
+ t2.file_name
+ FROM
+ ip_volume_mission t1
+ JOIN ip_volume_file t2
+ JOIN broadcast_v2_task_file t3 ON t1.task_id = t3.task_id
+ AND t2.id = t3.file_id-->
+
</mapper>
diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/IpVolumeMissionController.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/IpVolumeMissionController.java
index 6ae49bb..50f1d33 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/IpVolumeMissionController.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/IpVolumeMissionController.java
@@ -19,28 +19,71 @@
private final IpVolumeMissionService ipVolumeMissionService;
+ /**
+ *
+ * @param missionParam
+ * @return
+ */
@PostMapping("/add")
public ResponseVO<Object> addMission(@RequestBody IpVolumeMissionParam missionParam) {
return ResponseUtil.success(ipVolumeMissionService.addMission(missionParam));
}
- @GetMapping("/update/{id}")
- public ResponseVO<Object> updateMission(@PathVariable Long id, @RequestBody IpVolumeMissionParam missionParam) {
- return ResponseUtil.success(ipVolumeMissionService.updateMission(id, missionParam));
+ /**
+ *
+ * @param taskId
+ * @param missionParam
+ * @return 0锛氭垚鍔� 1锛氭湇鍔″櫒鏃犺浠诲姟 2锛氫换鍔℃鍦ㄦ墽琛岋紝鏃犳硶淇敼 3锛氭湇鍔″櫒淇敼澶辫触
+ * 4锛氫换鍔″悕绉颁笉鍙负绌� 5锛氭枃浠跺垪琛ㄤ笉鍙负绌� 6锛氱粓绔垪琛ㄤ笉鍙负绌�
+ */
+ @PostMapping("/update/{taskId}")
+ public ResponseVO<Object> updateMission(@PathVariable Integer taskId, @RequestBody IpVolumeMissionParam missionParam) {
+ Integer result = ipVolumeMissionService.updateMission(taskId, missionParam);
+ if(result == 0){
+ return ResponseUtil.success("淇敼鎴愬姛");
+ }else if(result == 1){
+ return ResponseUtil.fail("鏈嶅姟鍣ㄦ棤璇ヤ换鍔�");
+ }else if(result == 2){
+ return ResponseUtil.fail("浠诲姟姝e湪鎵ц锛屾棤娉曚慨鏀�");
+ }else if(result == 3){
+ return ResponseUtil.fail("鏈嶅姟鍣ㄤ慨鏀瑰け璐�");
+ }else if(result == 4){
+ return ResponseUtil.fail("浠诲姟鍚嶇О涓嶅彲涓虹┖");
+ }else if(result == 5){
+ return ResponseUtil.fail("鏂囦欢鍒楄〃涓嶅彲涓虹┖");
+ }else if(result == 6){
+ return ResponseUtil.fail("缁堢鍒楄〃涓嶅彲涓虹┖");
+ }else {
+ return ResponseUtil.fail("鏈煡閿欒");
+ }
+
}
- @GetMapping("/delete/{id}")
- public ResponseVO<Object> deleteMission(@PathVariable Long id) {
- return ResponseUtil.success(ipVolumeMissionService.deleteMission(id));
+ @PostMapping("/delete/{taskId}")
+ public ResponseVO<Object> deleteMission(@PathVariable Integer taskId) {
+ // 0锛氭垚鍔� 1锛氫换鍔′笉澶勪簬绌洪棽鐘舵�� 2:鏈嶅姟鍣ㄥ垹闄ゅけ璐�
+ Integer result = ipVolumeMissionService.deleteMission(taskId);
+ if(result == 0) {
+ return ResponseUtil.success("鍒犻櫎鎴愬姛");
+ }else if(result == 1){
+ return ResponseUtil.fail("浠诲姟姝e湪鎵ц涓�");
+ }else if(result == 2){
+ return ResponseUtil.fail("鏈嶅姟鍣ㄥ垹闄ゅけ璐�");
+ }else if(result==-1){
+ return ResponseUtil.success("鏈嶅姟鍣ㄥ垹闄ゆ垚鍔�,鏁版嵁搴撴湭鎵惧埌璇ヤ换鍔�");
+ } else{
+ return ResponseUtil.fail("鏈煡閿欒");
+ }
}
// @AnonymousAccess
- @PostMapping("/list")
+ @GetMapping("/list")
public ResponseVO<Object> listMission() {
//List<LampPost> list = lampPostService.list();
// return ResponseUtil.success(list);
- return ResponseUtil.success(ipVolumeMissionService.list());
+ // return ResponseUtil.success(ipVolumeMissionService.list());
// todo
+ return ResponseUtil.success(ipVolumeMissionService.missionList());
}
}
diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/param/IpVolumeFileParam.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/param/IpVolumeFileParam.java
index aac2c83..b78fbb6 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/param/IpVolumeFileParam.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/param/IpVolumeFileParam.java
@@ -12,8 +12,10 @@
public class IpVolumeFileParam {
private String fileName;
- private String fileSize;
+ private String fileSize;//LCD鐢�
+ private Double fileSizeIp;//ip闊虫煴鐢�
private String fileUrl;
+ private Long originSize;//ip闊虫煴鐢�
private String fileType;
}
diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/param/IpVolumeMissionParam.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/param/IpVolumeMissionParam.java
index a6ba8ae..013f541 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/param/IpVolumeMissionParam.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/param/IpVolumeMissionParam.java
@@ -2,9 +2,14 @@
import com.baomidou.mybatisplus.annotation.TableField;
import com.sandu.common.mybatis.JsonIntegerArrayTypeHandler;
+import com.sandu.ximon.admin.vo.TaskMediaFileVO;
+import com.sandu.ximon.admin.vo.TaskRunTimeVO;
+import com.sandu.ximon.admin.vo.TaskTerminalVO;
import lombok.Data;
+import java.math.BigInteger;
import java.time.LocalDateTime;
+import java.util.List;
/**
* @Author liuhaonan
@@ -14,47 +19,109 @@
@Data
public class IpVolumeMissionParam {
+
+ /**
+ * 闊虫煴浠诲姟鍚嶇О
+ */
private String missionName;
-
- /**
- * 鎾斁鏂囦欢
- */
- private String missionFileName;
-
- /**
- * 鎾斁鏂囦欢id
- */
- private Long missionFileId;
-
- /**
- * 寮�濮嬫棩鏈�
- */
- private String onDate;
-
- /**
- * 缁撴潫鏃ユ湡
- */
- private String offDate;
-
- /**
- * 鏄熸湡鑼冨洿
- */
- @TableField(typeHandler = JsonIntegerArrayTypeHandler.class)
- private String weeksRange;
-
- /**
- * 寮�濮嬫椂鍒�
- */
- private String onTime;
-
- /**
- * 缁撴潫鏃跺埢
- */
- private String offTime;
/**
* 浠诲姟闊抽噺
*/
- private String missionVolume;
+ private Integer missionVolume;
+
+
+ /**
+ * 寮�濮嬫棩鏈�
+ */
+ private BigInteger onDate;
+
+ /**
+ * 缁撴潫鏃ユ湡
+ */
+ private BigInteger offDate;
+
+ /**
+ * 鏄熸湡鑼冨洿
+ */
+ private String week;
+
+
+
+ TaskMediaFileVO[] files;
+
+ TaskTerminalVO[] terminals;
+
+ private List<Integer> terminalIds;
+ private List<Integer> fileIds;
+
+ TaskRunTimeVO[] exec;
+
+/*
+
+ */
+/**
+ * 闊虫煴浠诲姟鍚嶇О
+ *//*
+
+ private String missionName;
+
+ */
+/**
+ * 鎾斁鏂囦欢
+ *//*
+
+ private String missionFileName;
+
+ */
+/**
+ * 鎾斁鏂囦欢id
+ *//*
+
+ private Long missionFileId;
+
+
+ */
+/**
+ * 寮�濮嬫棩鏈�
+ *//*
+
+ private String onDate;
+
+ */
+/**
+ * 缁撴潫鏃ユ湡
+ *//*
+
+ private String offDate;
+
+ */
+/**
+ * 鏄熸湡鑼冨洿
+ *//*
+
+ private String week;
+
+ */
+/**
+ * 寮�濮嬫椂鍒�
+ *//*
+
+ private Integer onTime;
+
+ */
+/**
+ * 缁撴潫鏃跺埢
+ *//*
+
+ private Integer offTime;
+
+ */
+/**
+ * 浠诲姟闊抽噺
+ *//*
+
+ private Integer missionVolume;
+*/
}
diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/IpVolumeFileService.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/IpVolumeFileService.java
index 8053284..f8bcee9 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/IpVolumeFileService.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/IpVolumeFileService.java
@@ -35,8 +35,8 @@
file.setClientId(clientService.getClientId());
}
file.setFileName(fileParam.getFileName());
- file.setFileSize(fileParam.getFileSize());
- file.setFileUrl(fileParam.getFileUrl());
+ file.setFileSize(fileParam.getFileSizeIp());
+ file.setOriginSize(fileParam.getOriginSize());
return save(file);
}
diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/IpVolumeMissionService.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/IpVolumeMissionService.java
index 3b4ae18..1e0c7b3 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/IpVolumeMissionService.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/IpVolumeMissionService.java
@@ -1,18 +1,28 @@
package com.sandu.ximon.admin.service;
-import cn.hutool.http.HttpUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.sandu.common.execption.BusinessException;
import com.sandu.common.service.impl.BaseServiceImpl;
+import com.sandu.ximon.admin.config.MinIoConstant;
import com.sandu.ximon.admin.param.IpVolumeMissionParam;
import com.sandu.ximon.admin.param.ReceiveParam;
import com.sandu.ximon.admin.security.SecurityUtils;
+import com.sandu.ximon.admin.utils.TaskAPIUtils;
+import com.sandu.ximon.admin.vo.TaskMediaFileVO;
+import com.sandu.ximon.admin.vo.TaskTerminalVO;
+import com.sandu.ximon.dao.bo.IpVolumeMissionBo;
+import com.sandu.ximon.dao.domain.BroadcastV2TaskFile;
+import com.sandu.ximon.dao.domain.BroadcastV2TaskTerminal;
+import com.sandu.ximon.dao.domain.IpVolumeFile;
import com.sandu.ximon.dao.domain.IpVolumeMission;
import com.sandu.ximon.dao.mapper.IpVolumeMissionMapper;
import lombok.AllArgsConstructor;
import org.springframework.stereotype.Service;
+import java.math.BigInteger;
+import java.util.ArrayList;
+import java.util.HashSet;
import java.util.List;
/**
@@ -25,57 +35,277 @@
public class IpVolumeMissionService extends BaseServiceImpl<IpVolumeMissionMapper, IpVolumeMission> {
private final IpVolumeMissionMapper ipVolumeMissionMapper;
private final ClientService clientService;
+ private final IpVolumeFileService ipVolumeFileService;
+ private final BroadcastV2TaskFileService broadcastV2TaskFileService;
+ private final BroadcastV2TaskTerminalService broadcastV2TaskTerminalService;
public boolean addMission(IpVolumeMissionParam missionparam) {
- IpVolumeMission mission = new IpVolumeMission();
- mission.setUserId(SecurityUtils.getUserId());
- mission.setUserName(SecurityUtils.getUsername());
- mission.setClientId(clientService.getClientId());
- mission.setMissionName(missionparam.getMissionName());
- mission.setMissionFileId(missionparam.getMissionFileId());
- mission.setMissionFileName(missionparam.getMissionFileName());
- mission.setOnDate(missionparam.getOnDate());
- mission.setOffDate(missionparam.getOffDate());
- mission.setWeeksRange(missionparam.getWeeksRange());
- mission.setOnTime(missionparam.getOnTime());
- mission.setOffTime(missionparam.getOffTime());
- mission.setMissionVolume(missionparam.getMissionVolume());
+ String taskName = missionparam.getMissionName();
- return save(mission);
+ if (null == taskName || "".equals(taskName)) {
+ throw new BusinessException("浠诲姟鍚嶇О涓嶅彲涓虹┖");
+ //return 1;
+ }
+
+ if (missionparam.getFileIds().size() <= 0) {
+ throw new BusinessException("鎾斁鏂囦欢涓嶅彲涓虹┖");
+ //return 2;
+ }
+
+ if (missionparam.getTerminalIds().size() <= 0) {
+ throw new BusinessException("鎾斁缁堢涓嶅彲涓虹┖");
+ // return 3;
+ }
+
+ // 灏佽鎾斁缁堢
+ List<TaskTerminalVO> taskTerminalVOList = new ArrayList<>();
+ // 灏佽鏁版嵁搴撲腑浠诲姟缁堢缁戝畾
+ List<BroadcastV2TaskTerminal> taskTerminalEntityList = new ArrayList<>();
+ for(Integer id: new HashSet<>(missionparam.getTerminalIds())) {
+ TaskTerminalVO taskTerminalVO = new TaskTerminalVO();
+ BroadcastV2TaskTerminal taskTerminalEntity = new BroadcastV2TaskTerminal();
+
+ taskTerminalVO.setI(id);
+ taskTerminalEntity.setTerminalId(id);
+
+ taskTerminalVOList.add(taskTerminalVO);
+ taskTerminalEntityList.add(taskTerminalEntity);
+ }
+
+ // 灏佽鎾斁鏂囦欢鍒楄〃
+ List<TaskMediaFileVO> taskMediaFileVOS = new ArrayList<>();
+ List<BroadcastV2TaskFile> taskFileEntityList = new ArrayList<>();
+ int i = 1;
+ for(Integer fileId: new HashSet<>(missionparam.getFileIds())) {
+ TaskMediaFileVO taskMediaFileVO = new TaskMediaFileVO();
+ BroadcastV2TaskFile taskFileEntity = new BroadcastV2TaskFile();
+
+ taskFileEntity.setFileId(fileId);
+
+ IpVolumeFile fileEntity = ipVolumeFileService.getById(fileId);
+ String absolutePath = MinIoConstant.getAbsolutePath(
+ MinIoConstant.BROADCAST_FILE.getBucketName() + fileEntity.getUserId(),
+ fileEntity.getFileName()
+ );
+
+ taskMediaFileVO.setI(i);
+ i++;
+ taskMediaFileVO.setT(0);
+ taskMediaFileVO.setN(absolutePath);
+ taskMediaFileVO.setS(BigInteger.valueOf(fileEntity.getOriginSize()));
+
+ taskMediaFileVOS.add(taskMediaFileVO);
+ taskFileEntityList.add(taskFileEntity);
+ }
+
+
+ missionparam.setFiles(taskMediaFileVOS.toArray(new TaskMediaFileVO[taskMediaFileVOS.size()]));
+ missionparam.setTerminals(taskTerminalVOList.toArray(new TaskTerminalVO[taskTerminalVOList.size()]));
+ System.out.println("---------------------------");
+ // 鍚慖P闊虫煴鏈嶅姟鍣ㄦ坊鍔犱换鍔�
+ Integer taskId = TaskAPIUtils.addTask(missionparam);
+ // System.out.println("---------------------------");
+ //Integer taskId = 1111;
+
+ if (null != taskId && taskId != 0) {
+ IpVolumeMission byId = getById(taskId);
+ for (BroadcastV2TaskTerminal v2TaskTerminal: taskTerminalEntityList) {
+ v2TaskTerminal.setTaskId(taskId);
+ }
+ for (BroadcastV2TaskFile v2TaskFile :taskFileEntityList) {
+ v2TaskFile.setTaskId(taskId);
+ }
+ if (null == byId) {
+ // 鍚戞暟鎹簱娣诲姞璇ヤ换鍔¤褰�
+
+ IpVolumeMission mission = new IpVolumeMission();
+ mission.setTaskId(taskId);
+ mission.setUserId(SecurityUtils.getClientId());
+ if (SecurityUtils.getClientId() != null) {
+ mission.setUserName(SecurityUtils.getUsername());
+ }
+ mission.setClientId(clientService.getClientId());
+ mission.setMissionName(missionparam.getMissionName());
+ mission.setOnDate(missionparam.getOnDate());
+ mission.setOffDate(missionparam.getOffDate());
+ mission.setWeek(Integer.parseInt(missionparam.getWeek(), 2));//鏃堕棿鐢变簩杩涘埗瀛楃涓茶浆鎹负鍗佽繘鍒�
+ mission.setMissionVolume(missionparam.getMissionVolume());
+ //mission.setMissionFileUrl(missionparam.getFiles().toString());
+ mission.setNumberInPlay(missionparam.getTerminals().length);
+ /*TaskTerminalVO[] terminals = missionparam.getTerminals();*/
+
+ System.out.println(save(mission));
+ System.out.println("----------------------------------------------------------");
+
+
+ } else {//[Lcom.sandu.ximon.admin.vo.TaskMediaFileVO;@b5558c3
+
+ IpVolumeMission mission = new IpVolumeMission();
+ mission.setTaskId(taskId);
+ mission.setMissionName(missionparam.getMissionName());
+ mission.setOnDate(missionparam.getOnDate());
+ mission.setOffDate(missionparam.getOffDate());
+ mission.setWeek(Integer.parseInt(missionparam.getWeek(), 2));//鏃堕棿鐢变簩杩涘埗瀛楃涓茶浆鎹负鍗佽繘鍒�
+ mission.setMissionVolume(missionparam.getMissionVolume());
+ mission.setMissionFileUrl(missionparam.getFiles().toString());
+ mission.setNumberInPlay(missionparam.getTerminals().length);
+ System.out.println(updateById(mission));
+ System.out.println("----------------------------------------------------------");
+ }
+ broadcastV2TaskFileService.deleteByTaskId(taskId);
+ broadcastV2TaskTerminalService.deleteByTaskId(taskId);
+ broadcastV2TaskTerminalService.saveBatch(taskTerminalEntityList);
+ broadcastV2TaskFileService.saveBatch(taskFileEntityList);
+
+ return true;
+ } else {
+ return false;
+ }
+
}
- public boolean updateMission(Long missionId, IpVolumeMissionParam missionparam) {
- IpVolumeMission byId = getById(missionId);
- if (byId == null) {
- throw new BusinessException("鏈壘鍒拌浠诲姟");
+ public Integer updateMission(Integer taskId, IpVolumeMissionParam missionparam) {
+
+ String taskName = missionparam.getMissionName();
+
+ if(null == taskName || "".equals(taskName)) {
+ return 4;
}
- IpVolumeMission mission = new IpVolumeMission();
- mission.setId(missionId);
- /* mission.setUserId(SecurityUtils.getUserId());
- mission.setUserName(SecurityUtils.getUsername());
- mission.setClientId(clientService.getClientId());*/
- mission.setMissionName(missionparam.getMissionName());
- mission.setMissionFileId(missionparam.getMissionFileId());
- mission.setMissionFileName(missionparam.getMissionFileName());
- mission.setOnDate(missionparam.getOnDate());
- mission.setOffDate(missionparam.getOffDate());
- mission.setWeeksRange(missionparam.getWeeksRange());
- mission.setOnTime(missionparam.getOnTime());
- mission.setOffTime(missionparam.getOffTime());
- mission.setMissionVolume(missionparam.getMissionVolume());
- HttpUtil.post("123", String.valueOf(mission));
+ if(missionparam.getFileIds().size()<=0){
+ return 5;
+ }
- return updateById(mission);
+ if(missionparam.getTerminalIds().size()<=0){
+ return 6;
+ }
+
+
+ // 灏佽鎾斁缁堢
+ List<TaskTerminalVO> taskTerminalVOList = new ArrayList<>();
+ // 灏佽鏁版嵁搴撲腑浠诲姟缁堢缁戝畾
+ List<BroadcastV2TaskTerminal> taskTerminalEntityList = new ArrayList<>();
+ for(Integer id: new HashSet<>(missionparam.getTerminalIds())) {
+ TaskTerminalVO taskTerminalVO = new TaskTerminalVO();
+ BroadcastV2TaskTerminal taskTerminalEntity = new BroadcastV2TaskTerminal();
+
+ taskTerminalVO.setI(id);
+ taskTerminalEntity.setTerminalId(id);
+
+ taskTerminalVOList.add(taskTerminalVO);
+ taskTerminalEntityList.add(taskTerminalEntity);
+ }
+
+ // 灏佽鎾斁鏂囦欢鍒楄〃
+ List<TaskMediaFileVO> taskMediaFileVOS = new ArrayList<>();
+ List<BroadcastV2TaskFile> taskFileEntityList = new ArrayList<>();
+ int i = 1;
+ for(Integer fileId: new HashSet<>(missionparam.getFileIds())) {
+ TaskMediaFileVO taskMediaFileVO = new TaskMediaFileVO();
+ BroadcastV2TaskFile taskFileEntity = new BroadcastV2TaskFile();
+
+ taskFileEntity.setFileId(fileId);
+
+ IpVolumeFile fileEntity = ipVolumeFileService.getById(fileId);
+ String absolutePath = MinIoConstant.getAbsolutePath(
+ MinIoConstant.BROADCAST_FILE.getBucketName() + fileEntity.getUserId(),
+ fileEntity.getFileName()
+ );
+
+ taskMediaFileVO.setI(i);
+ i++;
+ taskMediaFileVO.setT(0);
+ taskMediaFileVO.setN(absolutePath);
+ taskMediaFileVO.setS(BigInteger.valueOf(fileEntity.getOriginSize()));
+
+ taskMediaFileVOS.add(taskMediaFileVO);
+ taskFileEntityList.add(taskFileEntity);
+ }
+
+
+ missionparam.setFiles(taskMediaFileVOS.toArray(new TaskMediaFileVO[taskMediaFileVOS.size()]));
+ missionparam.setTerminals(taskTerminalVOList.toArray(new TaskTerminalVO[taskTerminalVOList.size()]));
+ System.out.println("---------------------------");
+
+ // 鍚慖P闊虫煴鏈嶅姟鍣ㄦ洿鏂颁换鍔�
+ Integer result = TaskAPIUtils.updateTask(taskId, missionparam);
+
+ if(result==0){
+ IpVolumeMission byId = getById(taskId);
+ for (BroadcastV2TaskTerminal v2TaskTerminal: taskTerminalEntityList) {
+ v2TaskTerminal.setTaskId(taskId);
+ }
+ for (BroadcastV2TaskFile v2TaskFile :taskFileEntityList) {
+ v2TaskFile.setTaskId(taskId);
+ }
+ if (null == byId) {
+ // 鍚戞暟鎹簱娣诲姞璇ヤ换鍔¤褰�
+
+ IpVolumeMission mission = new IpVolumeMission();
+ mission.setTaskId(taskId);
+ mission.setUserId(SecurityUtils.getUserId());
+ if (SecurityUtils.getUserId() != null) {
+ mission.setUserName(SecurityUtils.getUsername());
+ }
+ mission.setClientId(clientService.getClientId());
+ mission.setMissionName(missionparam.getMissionName());
+ mission.setOnDate(missionparam.getOnDate());
+ mission.setOffDate(missionparam.getOffDate());
+ mission.setWeek(Integer.parseInt(missionparam.getWeek(), 2));//鏃堕棿鐢变簩杩涘埗瀛楃涓茶浆鎹负鍗佽繘鍒�
+ mission.setMissionVolume(missionparam.getMissionVolume());
+ // mission.setMissionFileUrl(missionparam.getFiles().toString());
+ mission.setNumberInPlay(missionparam.getTerminals().length);
+ /*TaskTerminalVO[] terminals = missionparam.getTerminals();*/
+
+ System.out.println(save(mission));
+ System.out.println("----------------------------------------------------------");
+ } else {//[Lcom.sandu.ximon.admin.vo.TaskMediaFileVO;@b5558c3
+
+ IpVolumeMission mission = new IpVolumeMission();
+ mission.setTaskId(taskId);
+ mission.setMissionName(missionparam.getMissionName());
+ mission.setOnDate(missionparam.getOnDate());
+ mission.setOffDate(missionparam.getOffDate());
+ mission.setWeek(Integer.parseInt(missionparam.getWeek(), 2));//鏃堕棿鐢变簩杩涘埗瀛楃涓茶浆鎹负鍗佽繘鍒�
+ mission.setMissionVolume(missionparam.getMissionVolume());
+ // mission.setMissionFileUrl(missionparam.getFiles().toString());
+ mission.setNumberInPlay(missionparam.getTerminals().length);
+ System.out.println(updateById(mission));
+ System.out.println("----------------------------------------------------------");
+ }
+ broadcastV2TaskFileService.deleteByTaskId(taskId);
+ broadcastV2TaskTerminalService.deleteByTaskId(taskId);
+ broadcastV2TaskTerminalService.saveBatch(taskTerminalEntityList);
+ broadcastV2TaskFileService.saveBatch(taskFileEntityList);
+ return 0;
+
+ }else {
+ return result;
+ }
}
- public boolean deleteMission(Long missionId) {
- IpVolumeMission byId = getById(missionId);
- if (byId == null) {
- throw new BusinessException("鏈壘鍒拌浠诲姟");
+ /**
+ * 鍒犻櫎浠诲姟
+ * @param taskId
+ * @return0锛氭垚鍔� 1锛氫换鍔′笉澶勪簬绌洪棽鐘舵�� 2:鏈嶅姟鍣ㄥ垹闄ゅけ璐�
+ */
+ public Integer deleteMission(Integer taskId) {
+ Integer del = TaskAPIUtils.delTask(taskId);
+ if(del==0){
+ IpVolumeMission byId = getById(taskId);
+ if (byId == null) {
+ return -1;
+ }
+ removeById(taskId);
+ broadcastV2TaskFileService.removeById(taskId);
+ broadcastV2TaskTerminalService.removeById(taskId);
+ return 0;
}
- return removeById(missionId);
+ else {
+ return del;
+ }
+
}
public List<IpVolumeMission> listMission(ReceiveParam receiveParam) {
@@ -85,8 +315,19 @@
return list(wrapper);
}
+ public List<IpVolumeMissionBo> missionList() {
+ List<IpVolumeMissionBo> ipVolumeMissionBos = ipVolumeMissionMapper.listAllByClientId();
- public void setMissionToData(Long missionId,List<Long> dateIds){
+ for (IpVolumeMissionBo missionBo: ipVolumeMissionBos) {
+ missionBo.setFileNames(broadcastV2TaskFileService.findByTaskid(missionBo.getTaskId()));
+
+ }
+
+ return ipVolumeMissionBos;
+ //return new ArrayList<>();
+ }
+
+ public void setMissionToData(Long missionId, List<Long> dateIds) {
// tudo
diff --git a/ximon-admin/src/main/resources/application-dev.yml b/ximon-admin/src/main/resources/application-dev.yml
index a415311..444a387 100644
--- a/ximon-admin/src/main/resources/application-dev.yml
+++ b/ximon-admin/src/main/resources/application-dev.yml
@@ -14,7 +14,7 @@
password: chenjiantian1992 # Redis鏈嶅姟鍣ㄨ繛鎺ュ瘑鐮侊紙榛樿涓虹┖锛�
timeout: 300ms # 杩炴帴瓒呮椂鏃堕棿锛堟绉掞級
server:
- port: 20017
+ port: 8080
sandu:
jwt:
header: Authorization
--
Gitblit v1.9.3