|
@@ -2,8 +2,15 @@ package com.sooka.sponest.data.system.attach.controller;
|
|
|
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
import com.alibaba.fastjson.JSONObject;
|
|
import com.ruoyi.common.core.domain.R;
|
|
import com.ruoyi.common.core.domain.R;
|
|
|
|
+import com.ruoyi.common.core.utils.DateUtils;
|
|
|
|
+import com.ruoyi.common.core.utils.SpringUtils;
|
|
|
|
+import com.ruoyi.common.core.utils.file.FilePrefixUtils;
|
|
import com.ruoyi.common.core.web.controller.BaseController;
|
|
import com.ruoyi.common.core.web.controller.BaseController;
|
|
import com.ruoyi.common.core.web.domain.AjaxResult;
|
|
import com.ruoyi.common.core.web.domain.AjaxResult;
|
|
|
|
+import com.ruoyi.common.redis.service.RedisService;
|
|
|
|
+import com.ruoyi.system.api.RemoteConfigService;
|
|
|
|
+import com.ruoyi.system.api.RemoteFileService;
|
|
|
|
+import com.ruoyi.system.api.domain.SysFile;
|
|
import com.sooka.sponest.data.system.attach.domain.CenterdataTAttach;
|
|
import com.sooka.sponest.data.system.attach.domain.CenterdataTAttach;
|
|
import com.sooka.sponest.data.system.attach.mapper.CenterdataTAttachMapper;
|
|
import com.sooka.sponest.data.system.attach.mapper.CenterdataTAttachMapper;
|
|
import com.sooka.sponest.data.system.attach.service.ICenterdataTAttachService;
|
|
import com.sooka.sponest.data.system.attach.service.ICenterdataTAttachService;
|
|
@@ -11,10 +18,13 @@ import io.swagger.annotations.Api;
|
|
import io.swagger.annotations.ApiImplicitParam;
|
|
import io.swagger.annotations.ApiImplicitParam;
|
|
import io.swagger.annotations.ApiImplicitParams;
|
|
import io.swagger.annotations.ApiImplicitParams;
|
|
import io.swagger.annotations.ApiOperation;
|
|
import io.swagger.annotations.ApiOperation;
|
|
|
|
+import org.apache.commons.collections4.MapUtils;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.web.bind.annotation.*;
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
|
+import org.springframework.web.multipart.MultipartFile;
|
|
import springfox.documentation.annotations.ApiIgnore;
|
|
import springfox.documentation.annotations.ApiIgnore;
|
|
|
|
|
|
|
|
+import java.util.Arrays;
|
|
import java.util.List;
|
|
import java.util.List;
|
|
import java.util.Map;
|
|
import java.util.Map;
|
|
|
|
|
|
@@ -35,6 +45,16 @@ public class CenterdataTAttachController extends BaseController {
|
|
@Autowired
|
|
@Autowired
|
|
private CenterdataTAttachMapper centerdataTAttachMapper;
|
|
private CenterdataTAttachMapper centerdataTAttachMapper;
|
|
|
|
|
|
|
|
+ @Autowired
|
|
|
|
+ private RedisService redisService;
|
|
|
|
+
|
|
|
|
+ // 文件前缀
|
|
|
|
+ public static final String FILE_PREFIX_LOCAL = "fileUrl";
|
|
|
|
+ public static final String FILE_PREFIX_HIK1 = "HIK_1";
|
|
|
|
+ public static final String FILE_PREFIX_HIK2 = "HIK_2";
|
|
|
|
+ public static final String FILE_PREFIX_DH1 = "DH_1";
|
|
|
|
+ public static final String FILE_PREFIX_DH2 = "DH_2";
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* 数据中心远端调用附件表查询列表
|
|
* 数据中心远端调用附件表查询列表
|
|
* 手机模块远程调用 应急作废
|
|
* 手机模块远程调用 应急作废
|
|
@@ -135,4 +155,33 @@ public class CenterdataTAttachController extends BaseController {
|
|
centerdataTAttachService.deleteCenterdataTAttachByBusId(attaches.get(0).getBusId());
|
|
centerdataTAttachService.deleteCenterdataTAttachByBusId(attaches.get(0).getBusId());
|
|
return R.ok(centerdataTAttachService.insertListCenterdataTAttach(attaches));
|
|
return R.ok(centerdataTAttachService.insertListCenterdataTAttach(attaches));
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ //每周的周日晚上8点开始运行
|
|
|
|
+// @Scheduled(cron = "0 0 20 ? * 1")
|
|
|
|
+ @GetMapping("/urlToMultipartFile")
|
|
|
|
+ public void urlToMultipartFile() {
|
|
|
|
+ Map<String, String> paramMap = SpringUtils.getBean(RemoteConfigService.class).remotegetConfigMap(Arrays.asList(FILE_PREFIX_LOCAL, FILE_PREFIX_HIK1, FILE_PREFIX_HIK2, FILE_PREFIX_DH1, FILE_PREFIX_DH2)).getData();
|
|
|
|
+ List<Map<String, Object>> attaches = centerdataTAttachService.selectFailUpattah();
|
|
|
|
+ for (Map<String, Object> item : attaches) {
|
|
|
|
+ paramMap.put("token", redisService.getCacheObject("DH_TOKEN"));// 大华token
|
|
|
|
+ String url = "";
|
|
|
|
+ if ("DH_1".equals(item.get("BusSource"))) {
|
|
|
|
+ url = FilePrefixUtils.getUrlPrefix(item.get("BusSource").toString(), paramMap) + item.get("url") + "?token=" + MapUtils.getString(paramMap, "token");
|
|
|
|
+ } else {
|
|
|
|
+ url = FilePrefixUtils.getUrlPrefix(item.get("BusSource").toString(), paramMap) + item.get("url");
|
|
|
|
+ }
|
|
|
|
+ MultipartFile multipartFile = FilePrefixUtils.urlToMultipartFile(url, System.currentTimeMillis() + ".jpg");
|
|
|
|
+ if (null != multipartFile) {
|
|
|
|
+ SysFile sysFile = SpringUtils.getBean(RemoteFileService.class).upload(multipartFile).getData();
|
|
|
|
+ try {
|
|
|
|
+ Thread.sleep(30000);
|
|
|
|
+ } catch (InterruptedException e) {
|
|
|
|
+ logger.error(e.getMessage());
|
|
|
|
+ Thread.currentThread().interrupt();
|
|
|
|
+ }
|
|
|
|
+ centerdataTAttachService.updateEventAttachSchedule(item, sysFile);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ logger.info(DateUtils.getDate() + "处理异常数据:" + attaches.size());
|
|
|
|
+ }
|
|
}
|
|
}
|