package com.fdkankan.project.tieta.controller; import cn.hutool.core.io.FileUtil; import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.fdkankan.project.tieta.bean.ResultData; import com.fdkankan.project.tieta.constant.Constant; import com.fdkankan.project.tieta.dto.ScenePushDTO; import com.fdkankan.project.tieta.dto.SendConvertDTO; import com.fdkankan.project.tieta.entity.FullphotoFileindex; import com.fdkankan.project.tieta.service.FullphotoFileindexService; import com.fdkankan.project.tieta.service.IConvertService; import com.fdkankan.project.tieta.utils.FdfsUtil; import com.fdkankan.redis.util.RedisClient; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import java.io.File; import java.util.HashSet; import java.util.List; import java.util.Map; import java.util.Set; @RestController @RequestMapping("/convert") public class ConvertController { @Autowired private IConvertService convertService; @Resource private RedisClient redisClient; @PostMapping("/sendConvert") public ResultData sendConvert(@RequestBody @Validated SendConvertDTO dto){ convertService.sendConvert(dto); return ResultData.ok(); } @PostMapping("/push") public ResultData push(@RequestBody @Validated ScenePushDTO dto){ return convertService.scenePush(dto, "api"); } @GetMapping("/pushHistory") public ResultData pushHistory(){ convertService.scenePushHistory(); return ResultData.ok(); } @Autowired FullphotoFileindexService fullphotoFileindexService; @GetMapping("/pushHistory2") public ResultData pushHistory2(){ // List fullphotoFileindices = null; // long current = 1; // int size = 1; // Page fullphotoFileindexPage = null; // do { // fullphotoFileindexPage = fullphotoFileindexService.pageStationCodeAndEntityId(current, size); // fullphotoFileindices = fullphotoFileindexPage.getRecords(); // }while (fullphotoFileindexPage.hasNext()); // // return ResultData.ok(); IPage page = fullphotoFileindexService.page(new Page<>(1, 100)); return ResultData.ok(); } @GetMapping("/deleteRedisKey") public ResultData deleteRedisKey(){ redisClient.del("scene:convert:history:41012201000233_000102050000000002520351"); redisClient.del("scene:convert:history:110106908000001067_001102050200000038732428"); redisClient.del("scene:convert:history:110115908000001104_000102050000000000079651"); redisClient.del("scene:convert:history:111104500010001366_500102050000000000216719"); redisClient.del("scene:convert:history:111401500010001724_500102050000000000285799"); redisClient.del("scene:convert:history:410100908000000130_004102050200000038765224"); redisClient.del("scene:convert:history:410100908000000218_004102050200000038758205"); redisClient.del("scene:convert:history:410183908000000694_000102050000000000751059"); return ResultData.ok(); } @GetMapping("/redisStringAdd") public ResultData redisStringAdd(){ redisClient.add("123123_123123_test", "123123123"); return ResultData.ok(); } @GetMapping("/redisStringGet") public ResultData redisStringGet(){ return ResultData.ok(redisClient.get("123123_123123_test")); } @GetMapping("/pushDemo") public ResultData pushDemo(){ String path = "D:\\test\\tieta\\50个全景制品数据包\\"; List files = FileUtil.loopFiles(path); Set stationCodeRoomIdSet = new HashSet<>(); for (File file : files) { String absolutePath = file.getAbsolutePath(); String replace = absolutePath.replace(path, ""); String substring = replace.substring(0, replace.indexOf("\\")); stationCodeRoomIdSet.add(substring); } for (String item : stationCodeRoomIdSet) { String[] split = item.split("_"); String stationCode = split[0]; String entityId = split[1]; List files1 = FileUtil.loopFiles(path + item); for (File file : files1) { String fileAbsolutePath = file.getAbsolutePath(); String fileType = null; if(!file.isDirectory()){ if(fileAbsolutePath.contains("vision.txt")){ fileType = "7"; } if(fileAbsolutePath.contains("512")){ fileType = "1"; } if(fileAbsolutePath.contains("4k")){ fileType = "2"; } if(fileAbsolutePath.contains("8k")){ fileType = "3"; } if(fileAbsolutePath.contains("mesh.obj")){ fileType = "11"; } if(fileAbsolutePath.contains("floorplan.json")){ fileType = "5"; } if(fileAbsolutePath.contains("scene.json")){ fileType = "12"; } if(StrUtil.isNotEmpty(fileType)){ Map stringStringMap = fdfsUtil.uploadFile(file.getAbsolutePath()); String fileId = stringStringMap.get("file_id"); String httpUrl = stringStringMap.get("http_url"); FullphotoFileindex fullphotoFileindex = new FullphotoFileindex(); fullphotoFileindex.setStationCode(stationCode); fullphotoFileindex.setEntityId(entityId); fullphotoFileindex.setFileid(fileId); fullphotoFileindex.setFileUrl(httpUrl); fullphotoFileindex.setFileName(file.getName()); fullphotoFileindex.setStatus("1"); fullphotoFileindex.setFileType(fileType); fullphotoFileindexService.save(fullphotoFileindex); } } } } return ResultData.ok(); } @Autowired private FdfsUtil fdfsUtil; public static void main(String[] args) { } }