| | |
| | | import com.sandu.common.execption.BusinessException; |
| | | import com.sandu.common.object.BaseConditionVO; |
| | | import com.sandu.common.service.impl.BaseServiceImpl; |
| | | import com.sandu.ximon.admin.minio.entity.MinIoConstant; |
| | | import com.sandu.ximon.admin.param.IpVolumeMissionParam; |
| | | import com.sandu.ximon.admin.security.SecurityUtils; |
| | | import com.sandu.ximon.admin.utils.TaskAPIUtils; |
| | |
| | | // 封装播放文件列表 |
| | | List<TaskMediaFileVO> taskMediaFileVOS = new ArrayList<>(); |
| | | List<BroadcastV2TaskFile> taskFileEntityList = new ArrayList<>(); |
| | | int i = 6666; |
| | | int i = 1; |
| | | for (Integer fileId : new HashSet<>(missionparam.getFileIds())) { |
| | | TaskMediaFileVO taskMediaFileVO = new TaskMediaFileVO(); |
| | | BroadcastV2TaskFile taskFileEntity = new BroadcastV2TaskFile(); |
| | |
| | | if (fileEntity == null) { |
| | | throw new BusinessException("fileId为" + fileId + "的文件不存在"); |
| | | } |
| | | // String absolutePath = MinIoConstant.getAbsolutePath( |
| | | // MinIoConstant.BROADCAST_FILE.getBucketName() + fileEntity.getUserId(), |
| | | // fileEntity.getFileName() |
| | | // ); |
| | | |
| | | if (fileEntity.getUserId() == null && fileEntity.getClientId() != null) { |
| | | fileEntity.setUserId(fileEntity.getClientId()); |
| | | } |
| | | String absolutePath; |
| | | absolutePath = MinIoConstant.getAbsolutePath( |
| | | MinIoConstant.BROADCAST_FILE.getBucketName() + fileEntity.getUserId(), |
| | | fileEntity.getFileName() |
| | | ); |
| | | if (fileEntity.getUserId() == null && fileEntity.getClientId() == null) { |
| | | absolutePath = MinIoConstant.getAbsolutePath( |
| | | MinIoConstant.ADMIN_BROADCAST_FILE.getBucketName(), |
| | | fileEntity.getFileName() |
| | | ); |
| | | } |
| | | taskMediaFileVO.setI(i); |
| | | i++; |
| | | taskMediaFileVO.setT(0); |
| | | taskMediaFileVO.setN(fileEntity.getFileUrl()); |
| | | taskMediaFileVO.setN(absolutePath); |
| | | taskMediaFileVO.setS(BigInteger.valueOf(fileEntity.getOriginSize())); |
| | | |
| | | taskMediaFileVOS.add(taskMediaFileVO); |
| | |
| | | taskFileEntity.setFileId(fileId); |
| | | |
| | | IpVolumeFile fileEntity = ipVolumeFileService.getById(fileId); |
| | | // String absolutePath = MinIoConstant.getAbsolutePath( |
| | | // MinIoConstant.BROADCAST_FILE.getBucketName() + fileEntity.getUserId(), |
| | | // fileEntity.getFileName() |
| | | // ); |
| | | String absolutePath; |
| | | absolutePath = MinIoConstant.getAbsolutePath( |
| | | MinIoConstant.BROADCAST_FILE.getBucketName() + fileEntity.getUserId(), |
| | | fileEntity.getFileName() |
| | | ); |
| | | if (fileEntity.getUserId() == null && fileEntity.getClientId() == null) { |
| | | absolutePath = MinIoConstant.getAbsolutePath( |
| | | MinIoConstant.ADMIN_BROADCAST_FILE.getBucketName(), |
| | | fileEntity.getFileName() |
| | | ); |
| | | } |
| | | |
| | | taskMediaFileVO.setI(i); |
| | | i++; |
| | | taskMediaFileVO.setT(0); |
| | | taskMediaFileVO.setN(fileEntity.getFileUrl()); |
| | | taskMediaFileVO.setN(absolutePath); |
| | | taskMediaFileVO.setS(BigInteger.valueOf(fileEntity.getOriginSize())); |
| | | |
| | | taskMediaFileVOS.add(taskMediaFileVO); |
| | |
| | | |
| | | missionparam.setFiles(taskMediaFileVOS.toArray(new TaskMediaFileVO[taskMediaFileVOS.size()])); |
| | | missionparam.setTerminals(taskTerminalVOList.toArray(new TaskTerminalVO[taskTerminalVOList.size()])); |
| | | System.out.println("---------------------------"); |
| | | |
| | | // 向IP音柱服务器更新任务 |
| | | Integer result = TaskAPIUtils.updateTask(taskId, missionparam); |
| | |
| | | |
| | | |
| | | public List<IpVolumeMissionBo> missionList(BaseConditionVO baseConditionVO, String keyword) { |
| | | // PageHelper.startPage(baseConditionVO.getPageNo(),baseConditionVO.getPageSize()); |
| | | boolean r = clientService.findClientId(); //ture代表有上级客户 查询通过userID |
| | | PageHelper.startPage(baseConditionVO.getPageNo(), baseConditionVO.getPageSize()); |
| | | |
| | | List<IpVolumeMissionBo> ipVolumeMissionBos = new ArrayList<>(); |
| | | LambdaQueryWrapper<IpVolumeMission> eq = new LambdaQueryWrapper<>(); |
| | | LambdaQueryWrapper<IpVolumeMission> eq = Wrappers.lambdaQuery(IpVolumeMission.class); |
| | | |
| | | PageHelper.startPage(baseConditionVO.getPageNo(), baseConditionVO.getPageSize()); |
| | | if (r) { |
| | | eq = Wrappers.lambdaQuery(IpVolumeMission.class).eq(IpVolumeMission::getUserId, SecurityUtils.getUserId()); |
| | | } else { |
| | | eq = Wrappers.lambdaQuery(IpVolumeMission.class).eq(IpVolumeMission::getClientId, SecurityUtils.getUserId()); |
| | | //不是超管 |
| | | if (SecurityUtils.getClientId() != null) { |
| | | eq = eq.eq(IpVolumeMission::getUserId, SecurityUtils.getUserId()).or(w -> { |
| | | w.eq(IpVolumeMission::getClientId, SecurityUtils.getUserId()); |
| | | }); |
| | | } |
| | | if (!keyword.isEmpty()) { |
| | | eq.like(IpVolumeMission::getMissionName, keyword); |
| | | } |
| | | List<IpVolumeMission> list = list(eq); |
| | | |
| | | |
| | | // ipVolumeMissionBos = ipVolumeMissionMapper.listAllByClientId(); |
| | | |
| | | for (IpVolumeMission mission : list) { |
| | | List<String> fileName = broadcastV2TaskFileService.findByTaskid(mission.getTaskId()); |
| | |
| | | BeanUtils.copyProperties(mission, bo); |
| | | bo.setFileNames(fileName); |
| | | ipVolumeMissionBos.add(bo); |
| | | |
| | | } |
| | | |
| | | // for (IpVolumeMissionBo missionBo: ipVolumeMissionBos) { |
| | | // missionBo.setFileNames(broadcastV2TaskFileService.findByTaskid(missionBo.getTaskId())); |
| | | // |
| | | // } |
| | | |
| | | return ipVolumeMissionBos; |
| | | //return new ArrayList<>(); |
| | | } |
| | | |
| | | public TaskVO getByTaskId(Integer taskId) { |
| | |
| | | } |
| | | if (SecurityUtils.getClientId() != null) { |
| | | if (clientService.findClientId()) { |
| | | if (byId.getUserId() != SecurityUtils.getUserId()) { |
| | | if (byId.getUserId().equals(SecurityUtils.getUserId())) { |
| | | throw new BusinessException("任务归属错误"); |
| | | } |
| | | |
| | | } else { |
| | | if (byId.getClientId() != SecurityUtils.getUserId()) { |
| | | if (byId.getClientId().equals(SecurityUtils.getUserId())) { |
| | | throw new BusinessException("任务归属错误"); |
| | | } |
| | | } |
| | | |
| | | |
| | | } |
| | | task.setWeeks("0" + Integer.toBinaryString(byId.getWeek())); |
| | | task.setWeeks("0" + Integer.toBinaryString(task.getWeek())); |
| | | // byId.setWeeks("0" + Integer.toBinaryString(byId.getWeek())); |
| | | |
| | | List<BroadcastV2TaskFile> taskFiles = broadcastV2TaskFileService.list(Wrappers.lambdaQuery(BroadcastV2TaskFile.class) |
| | | .eq(BroadcastV2TaskFile::getTaskId, taskId)); |
| | | List<BroadcastV2TaskTerminal> taskTerminals = broadcastV2TaskTerminalService.list(Wrappers.lambdaQuery(BroadcastV2TaskTerminal.class) |
| | | .eq(BroadcastV2TaskTerminal::getTaskId, taskId)); |
| | | |
| | | |
| | | if (!taskFiles.isEmpty()) { |
| | | taskFiles.forEach( |
| | |
| | | ); |
| | | } |
| | | |
| | | // Map map=new HashMap(); |
| | | // map.put("本地",byId); |
| | | // map.put("服务器",task); |
| | | |
| | | System.out.println(JSON.toJSONString(task)); |
| | | System.out.println(task); |
| | |
| | | |
| | | } |
| | | |
| | | /** |
| | | * 推送 |
| | | * |
| | | * @param taskId |
| | | * @return |
| | | */ |
| | | public boolean playTask(Integer taskId) { |
| | | return TaskAPIUtils.playTask(taskId); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 停止 |
| | | * |
| | | * @param taskId |
| | | * @return |
| | | */ |
| | | public boolean stopTask(Integer taskId) { |
| | | return TaskAPIUtils.stopTask(taskId); |
| | | } |
| | | |
| | | /** |
| | | * 暂停 |
| | | * |
| | | * @param taskId |
| | | * @return |
| | | */ |
| | | public boolean pauseTask(Integer taskId) { |
| | | return TaskAPIUtils.pauseTask(taskId); |
| | | } |
| | | |
| | | /** |
| | | * 继续 |
| | | * |
| | | * @param taskId |
| | | * @return |
| | | */ |
| | | public boolean continueTask(Integer taskId) { |
| | | return TaskAPIUtils.continueTask(taskId); |
| | | } |
| | | } |