2021与蓝度共同重构项目,服务端
zhanzhiqin
2022-03-22 c42bbac189958358b2c8ae4e163d55158d6750fc
ximon-admin/src/main/java/com/sandu/ximon/admin/service/IpVolumeMissionService.java
@@ -14,10 +14,7 @@
import com.sandu.ximon.admin.vo.TaskTerminalVO;
import com.sandu.ximon.admin.vo.TaskVO;
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.domain.*;
import com.sandu.ximon.dao.mapper.IpVolumeMissionMapper;
import lombok.AllArgsConstructor;
import org.springframework.beans.BeanUtils;
@@ -39,6 +36,7 @@
public class IpVolumeMissionService extends BaseServiceImpl<IpVolumeMissionMapper, IpVolumeMission> {
    private final IpVolumeMissionMapper ipVolumeMissionMapper;
    private final ClientService clientService;
    private final IpVolumeService ipVolumeService;
    private final IpVolumeFileService ipVolumeFileService;
    private final BroadcastV2TaskFileService broadcastV2TaskFileService;
    private final BroadcastV2TaskTerminalService broadcastV2TaskTerminalService;
@@ -92,8 +90,8 @@
            taskFileEntity.setFileId(fileId);
            IpVolumeFile fileEntity = ipVolumeFileService.getById(fileId);
            if(fileEntity==null){
                throw new BusinessException("fileId为"+fileId+"的文件不存在");
            if (fileEntity == null) {
                throw new BusinessException("fileId为" + fileId + "的文件不存在");
            }
//            String absolutePath = MinIoConstant.getAbsolutePath(
//                    MinIoConstant.BROADCAST_FILE.getBucketName() + fileEntity.getUserId(),
@@ -141,9 +139,8 @@
                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("----------------------------------------------------------");
@@ -160,18 +157,11 @@
                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.deleteByTaskId(taskId);
//            broadcastV2TaskTerminalService.removeById(taskId);
            broadcastV2TaskTerminalService.saveTaskTerminal(taskTerminalEntityList);
            broadcastV2TaskFileService.saveBatch(taskFileEntityList);
//            broadcastV2TaskTerminalService.saveBatch(taskTerminalEntityList);
//            broadcastV2TaskTerminalService.insertTaskTerminal(taskTerminalEntityList);
            return true;
        } else {
            return false;
@@ -373,9 +363,56 @@
        if (byId == null) {
            throw new BusinessException("本地未找到该任务");
        }
        if (SecurityUtils.getClientId() != null) {
            if (clientService.findClientId()) {
                if (byId.getUserId() != SecurityUtils.getUserId()) {
                    throw new BusinessException("任务归属错误");
                }
            } else {
                if (byId.getClientId() != SecurityUtils.getUserId()) {
                    throw new BusinessException("任务归属错误");
                }
            }
        }
        byId.setWeeks("0" + Integer.toBinaryString(byId.getWeek()));
//        IpVolumeMissionBo bo = new IpVolumeMissionBo();
        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()||taskTerminals.isEmpty()){
//            throw new BusinessException("");
//        }
        if(!taskFiles.isEmpty()){
               taskFiles.forEach(
                       fileId->{
//                           IpVolumeFile volumeFile = ipVolumeFileService.getById(fileId.getFileId());
//                           if(volumeFile==null){
//                               throw new BusinessException("任务文件不存在");
//                           }
                           byId.getFileIds().add(fileId.getFileId());
                       }
               );
        }
        if(!taskTerminals.isEmpty()){
            taskTerminals.forEach(
                    terminalId->{
//                        BroadcastTerminalV2Entity v2Entity = ipVolumeService.getById(terminalId.getTerminalId());
//                        if(v2Entity==null){
//                            throw new BusinessException("该任务暂无设备使用");
//                        }
                        byId.getTerminalIds().add(terminalId.getTerminalId());
                    }
            );
        }
        return byId;