LiveMonitorRoomServiceImpl.java
2.91 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
package com.wondertek.service.impl;
import java.time.LocalDateTime;
import java.util.List;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.wondertek.dto.CrpDataVo;
import com.wondertek.dto.LMRoomDto;
import com.wondertek.dto.LMRoomParam;
import com.wondertek.entity.LiveMonitorRoom;
import com.wondertek.entity.StreamTask;
import com.wondertek.mapper.LiveMonitorRoomMapper;
import com.wondertek.service.LiveMonitorRoomService;
import com.wondertek.service.StreamTaskService;
import com.wondertek.util.PageBean;
import com.wondertek.util.ResultBean;
import com.wondertek.vo.LMRoomListVo;
import jakarta.annotation.Resource;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
@Service
public class LiveMonitorRoomServiceImpl extends ServiceImpl<LiveMonitorRoomMapper, LiveMonitorRoom> implements LiveMonitorRoomService {
@Resource
private LiveMonitorRoomMapper liveMonitorRoomMapper;
@Resource
private StreamTaskService monitorMarkService;
@Override
public PageBean queryPage(LMRoomDto lmRoomDto) {
Page<LMRoomListVo> page = new Page<>(lmRoomDto.getPage(), lmRoomDto.getSize());
IPage<LMRoomListVo> resultPage = liveMonitorRoomMapper.findPageList(page, lmRoomDto);
return new PageBean(Integer.parseInt(String.valueOf(resultPage.getPages())),resultPage.getTotal(),resultPage.getRecords());
}
@Override
public PageBean editPage(LMRoomDto lmRoomDto) {
return null;
}
@Override
public ResultBean create(LMRoomParam lmRoomParam) {
//审片间信息
LiveMonitorRoom liveMonitorRoom = new LiveMonitorRoom();
liveMonitorRoom.setName(lmRoomParam.getName());
liveMonitorRoom.setRoomStatus("0");
liveMonitorRoom.setCreatedBy("");
liveMonitorRoom.setCreatedTime(LocalDateTime.now());
liveMonitorRoom.setLiveName(lmRoomParam.getLiveName());
boolean b = saveOrUpdate(liveMonitorRoom);
Long roomId = liveMonitorRoom.getId();
List<CrpDataVo> dataList = lmRoomParam.getDataList();
//初始化子任务信息
if(!CollectionUtils.isEmpty(dataList)){
List<StreamTask> taskList = dataList.stream().map(crpDataVo -> {
StreamTask streamTask = new StreamTask();
streamTask.setTaskId(crpDataVo.getTaskId());
streamTask.setChannelId(crpDataVo.getChannelId());
streamTask.setRoomId(roomId);
streamTask.setTaskType(crpDataVo.getTaskType());
streamTask.setCreatedBy("");
streamTask.setCreatedTime(LocalDateTime.now());
return streamTask;
}).toList();
monitorMarkService.saveOrUpdateBatch(taskList);
}
return ResultBean.ok("创建成功");
}
}