From 1072fa672e85986973ebefb02452c366fba67015 Mon Sep 17 00:00:00 2001 From: liuguijing <123456> Date: Tue, 9 Jan 2024 21:15:35 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A1=A5=E5=9B=BE=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/DyLevelController.java | 6 +- .../controller/UpPhotoController.java | 57 +++++++++++++++++++ .../src/main/resources/application-test.yml | 6 +- .../bean/MultipartConfig.java | 2 +- .../dto/TerminalsAndStatusDto.java | 2 + .../xymanager_common/entity/Terminals.java | 4 ++ .../xymanager_dao/dao/TerminalPhotoDao.java | 6 -- .../resources/mappers/TerminalPhotoDao.xml | 3 + .../main/resources/mappers/TerminalsDao.xml | 9 +++ .../impl/TerminalPhotoServiceImpl.java | 54 ++++++++++++++++++ .../service/TerminalPhotoService.java | 15 +++++ 11 files changed, 151 insertions(+), 13 deletions(-) create mode 100644 xymanager_admin/src/main/java/com/shxy/xymanager_admin/controller/UpPhotoController.java diff --git a/xymanager_admin/src/main/java/com/shxy/xymanager_admin/controller/DyLevelController.java b/xymanager_admin/src/main/java/com/shxy/xymanager_admin/controller/DyLevelController.java index 4480e35..a9d80d3 100644 --- a/xymanager_admin/src/main/java/com/shxy/xymanager_admin/controller/DyLevelController.java +++ b/xymanager_admin/src/main/java/com/shxy/xymanager_admin/controller/DyLevelController.java @@ -46,13 +46,13 @@ public class DyLevelController extends BaseController { } } -//143 + @ApiOperation(value = "郑州测试获取电压等级树状列表接口", notes = "郑州测试获取电压等级树状列表接口", httpMethod = "POST") @ApiResponses({@ApiResponse(code = 200, message = "请求成功"), @ApiResponse(code = 400, message = "请求参数没填好"), @ApiResponse(code = 404, message = "请求路径没有或页面跳转路径不对")}) @RequestMapping("/getzzdyTreeList") @Log(title = "获取电压等级树状列表接口", type = "查询") - public ResponseReult getzzdyTreeList(@Param("type") Integer type) { - ServiceBody serviceBody = dyLevelService.getdyTreeList(type,143); + public ResponseReult getzzdyTreeList(@Param("type") Integer type,@Param("lineid") Integer lineid) { + ServiceBody serviceBody = dyLevelService.getdyTreeList(type,lineid); if (serviceBody.getCode() == ServiceStatus.SUCCESS) { return ResponseReult.success(serviceBody.getData()); } else { diff --git a/xymanager_admin/src/main/java/com/shxy/xymanager_admin/controller/UpPhotoController.java b/xymanager_admin/src/main/java/com/shxy/xymanager_admin/controller/UpPhotoController.java new file mode 100644 index 0000000..c615b63 --- /dev/null +++ b/xymanager_admin/src/main/java/com/shxy/xymanager_admin/controller/UpPhotoController.java @@ -0,0 +1,57 @@ +package com.shxy.xymanager_admin.controller; + +import com.shxy.xymanager_common.base.BaseController; +import com.shxy.xymanager_common.base.ResponseReult; +import com.shxy.xymanager_common.bean.ServiceBody; +import com.shxy.xymanager_common.bean.ServiceStatus; +import com.shxy.xymanager_service.service.TerminalPhotoService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; + +import java.math.BigInteger; +import java.util.Date; + + +@Api(value = "补图片", tags = "补图片相关") +@RestController +@Slf4j +public class UpPhotoController extends BaseController { + + @Autowired + TerminalPhotoService terminalPhotoService; + + @PostMapping("upload") + @ApiOperation("处理icd文件") + public ResponseReult upload(@RequestParam("file") MultipartFile file, + @RequestParam(value = "termid",required = false) Integer termid, + @RequestParam(value = "cmdid",required = false) String cmdid, + @RequestParam(value = "channel",required = false) Integer channel, + @RequestParam(value = "phototime",required = false) BigInteger phototime) throws Exception { +// if (files != null && files.length > 0) { +// for (MultipartFile file : files) { +// if (StrUtil.isNotBlank(file.getOriginalFilename())) { +// int lastIndexOf = file.getOriginalFilename().lastIndexOf("."); +// String originalName = file.getOriginalFilename(); +// String newName = System.currentTimeMillis() + file.getOriginalFilename().substring(lastIndexOf); +// String relativePath = "/sampleRecord/" + DateUtil.format(new Date(), "yyyyMMdd") + '/'; +// fileService.uploadSampleAttachment(weblogid, originalName, relativePath, newName, +// file.getInputStream(), tid); +// } +// } +// } + //保存在服务器中 + ServiceBody serviceBody = terminalPhotoService.uploadPhoto(file, termid, cmdid, channel, phototime); + if (serviceBody.getCode() == ServiceStatus.SUCCESS) { + return ResponseReult.success(serviceBody.getData()); + } else { + return ResponseReult.error(serviceBody.getCode(), serviceBody.getMsg()); + } + } + + + +} diff --git a/xymanager_admin/src/main/resources/application-test.yml b/xymanager_admin/src/main/resources/application-test.yml index c17658e..52aa9d8 100644 --- a/xymanager_admin/src/main/resources/application-test.yml +++ b/xymanager_admin/src/main/resources/application-test.yml @@ -9,7 +9,7 @@ spring: servlet: multipart: # 指定自定义上传目录 - location: http://47.96.238.157/usr/local/home/manager/temp/ + location: /usr/local/home/manager/temp/ #spring: # # 数据源配置 # datasource: @@ -175,8 +175,8 @@ cma: clientid: 10 scheduletype: 202 upload: - # path: file:/usr/local/home/manager/download/ - path: http://47.96.238.157/usr/local/home/manager/download/ + path: file:/usr/local/home/manager/download/ +# path: http://47.96.238.157/usr/local/home/manager/download/ photo: address: /photos/ video: diff --git a/xymanager_common/src/main/java/com/shxy/xymanager_common/bean/MultipartConfig.java b/xymanager_common/src/main/java/com/shxy/xymanager_common/bean/MultipartConfig.java index dedec8e..b9c675c 100644 --- a/xymanager_common/src/main/java/com/shxy/xymanager_common/bean/MultipartConfig.java +++ b/xymanager_common/src/main/java/com/shxy/xymanager_common/bean/MultipartConfig.java @@ -19,7 +19,7 @@ public class MultipartConfig { String os = System.getProperty("os.name"); // 兼容windows if(os.toLowerCase().startsWith("win")){ - fileTempDir = "C:" + fileTempDir; + fileTempDir = "D:" + fileTempDir; } log.info("fileTempDir:{}", fileTempDir); MultipartConfigFactory factory = new MultipartConfigFactory(); diff --git a/xymanager_common/src/main/java/com/shxy/xymanager_common/dto/TerminalsAndStatusDto.java b/xymanager_common/src/main/java/com/shxy/xymanager_common/dto/TerminalsAndStatusDto.java index 7d74b0b..f3497b5 100644 --- a/xymanager_common/src/main/java/com/shxy/xymanager_common/dto/TerminalsAndStatusDto.java +++ b/xymanager_common/src/main/java/com/shxy/xymanager_common/dto/TerminalsAndStatusDto.java @@ -62,6 +62,8 @@ public class TerminalsAndStatusDto implements Serializable { private String phase; + private String address; + private String equipmentType; private static final long serialVersionUID = 1L; diff --git a/xymanager_common/src/main/java/com/shxy/xymanager_common/entity/Terminals.java b/xymanager_common/src/main/java/com/shxy/xymanager_common/entity/Terminals.java index cb2910f..044bc64 100644 --- a/xymanager_common/src/main/java/com/shxy/xymanager_common/entity/Terminals.java +++ b/xymanager_common/src/main/java/com/shxy/xymanager_common/entity/Terminals.java @@ -52,6 +52,10 @@ public class Terminals implements Serializable { private Integer netType; + private Integer status; + + + private Integer protocol; /*展示名字 等价与displayname 用于方便*/ diff --git a/xymanager_dao/src/main/java/com/shxy/xymanager_dao/dao/TerminalPhotoDao.java b/xymanager_dao/src/main/java/com/shxy/xymanager_dao/dao/TerminalPhotoDao.java index 7141cbb..fd56617 100644 --- a/xymanager_dao/src/main/java/com/shxy/xymanager_dao/dao/TerminalPhotoDao.java +++ b/xymanager_dao/src/main/java/com/shxy/xymanager_dao/dao/TerminalPhotoDao.java @@ -50,14 +50,11 @@ public interface TerminalPhotoDao { String selectCmdIdById(Integer termId); - Integer updateOrInsertParams(PhotoParamsVo vo); BigInteger getLatestPhotoParam(Integer termId); - void deleteByMarkId(@Param("markId") Integer markId); - Integer addPhotoMark(PhotoMarkVo vo); Integer addPhotoMarkPath(@Param("list") List list, @Param("markId") Integer id); @@ -65,9 +62,6 @@ public interface TerminalPhotoDao { void updatePhotoMark(PhotoMarkVo vo); - void updatePhotoMarkId(PhotoMarkVo vo); - - PhotoMarkDto selectPhotoMark(MarkReqVo vo); PhotoMarkDto selectPhotoWithoutPic(MarkReqVo vo); diff --git a/xymanager_dao/src/main/resources/mappers/TerminalPhotoDao.xml b/xymanager_dao/src/main/resources/mappers/TerminalPhotoDao.xml index 2adc569..beacfda 100644 --- a/xymanager_dao/src/main/resources/mappers/TerminalPhotoDao.xml +++ b/xymanager_dao/src/main/resources/mappers/TerminalPhotoDao.xml @@ -551,4 +551,7 @@ + + + \ No newline at end of file diff --git a/xymanager_dao/src/main/resources/mappers/TerminalsDao.xml b/xymanager_dao/src/main/resources/mappers/TerminalsDao.xml index 951beea..885e0af 100644 --- a/xymanager_dao/src/main/resources/mappers/TerminalsDao.xml +++ b/xymanager_dao/src/main/resources/mappers/TerminalsDao.xml @@ -654,4 +654,13 @@ set cmdid = #{newCmdId,jdbcType=VARCHAR} where cmdid = #{cmdId,jdbcType=VARCHAR} + + + update terminals + set isfavor = #{status} + where id in + + #{item} + + \ No newline at end of file diff --git a/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/TerminalPhotoServiceImpl.java b/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/TerminalPhotoServiceImpl.java index 2808c74..4712ae9 100644 --- a/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/TerminalPhotoServiceImpl.java +++ b/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/TerminalPhotoServiceImpl.java @@ -3,6 +3,8 @@ package com.shxy.xymanager_service.impl; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.date.DateTime; +import cn.hutool.core.lang.UUID; +import cn.hutool.core.util.RandomUtil; import cn.hutool.core.util.StrUtil; import com.alibaba.fastjson.JSONObject; import com.github.pagehelper.PageInfo; @@ -27,7 +29,10 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.web.multipart.MultipartFile; +import java.io.File; +import java.io.IOException; import java.math.BigInteger; import java.util.*; @@ -71,6 +76,8 @@ public class TerminalPhotoServiceImpl implements TerminalPhotoService { @Autowired CacheService cacheService; + //服务器中的位置 + private static final String C_PATH = "/home/xymp/photos/"; /** * 根据装置id和通道id获取图片 * @@ -717,4 +724,51 @@ public class TerminalPhotoServiceImpl implements TerminalPhotoService { } } + @Override + public ServiceBody uploadPhoto(MultipartFile file, Integer termid, String cmdid, Integer channel, BigInteger phototime) throws IOException{ + DateTime date = MyDateUtils.date(phototime.longValue()); + int year = date.year(); + String mon = ""; + int month = date.monthBaseOne(); + if (month<10) { + mon = "0" + month; + } + String daystr = ""; + int day = date.dayOfMonth(); + if (day<10) { + daystr = "0" + day; + } +// List split = StrUtil.split(cmdid, "_"); + String sub = StrUtil.sub(cmdid, cmdid.length() - 2, cmdid.length()); +// String location = C_PATH+year+"/"+ month+"/"+day+"/"+sub+"/" + file.getOriginalFilename(); + String location = C_PATH+year+"/"+ mon+"/"+daystr+"/"+sub; + File saveFile = new File(location); + if (!saveFile.exists()) { + boolean mkdirs = saveFile.mkdirs(); + System.out.println("日期文件夹" + (mkdirs ? "创建成功" : "创建失败")); + } + File file1 = new File(saveFile.getAbsoluteFile()+"/"+file.getOriginalFilename()); + file.transferTo(file1); + TerminalPhoto record = new TerminalPhoto(); + record.setTermId(termid); + record.setPhotoTime((BigInteger.valueOf(MyDateUtils.TimeMillSecond2Second(date)))); + record.setChannelId(channel); + record.setOrginalId(BigInteger.valueOf(RandomUtil.randomLong())); + record.setPath(year+"/"+ mon+"/"+daystr+"/"+sub+"/" + file.getOriginalFilename()); + record.setRecvTime(BigInteger.valueOf(MyDateUtils.TimeMillSecond2Second(date))); + record.setCreateTime(new Date()); + record.setChannelId(channel); + record.setMediaType(0); + record.setPresetId(255); + int i = terminalPhotoDao.insertSelective(record); + if (i != 0) { + return Asserts.success("上传成功"); + } else { + return Asserts.error("上传失败"); + } + } + + + + } diff --git a/xymanager_service/src/main/java/com/shxy/xymanager_service/service/TerminalPhotoService.java b/xymanager_service/src/main/java/com/shxy/xymanager_service/service/TerminalPhotoService.java index 830482a..e37c09e 100644 --- a/xymanager_service/src/main/java/com/shxy/xymanager_service/service/TerminalPhotoService.java +++ b/xymanager_service/src/main/java/com/shxy/xymanager_service/service/TerminalPhotoService.java @@ -3,7 +3,10 @@ package com.shxy.xymanager_service.service; import com.shxy.xymanager_common.bean.ServiceBody; import com.shxy.xymanager_common.model.*; import com.shxy.xymanager_common.vo.*; +import org.springframework.web.multipart.MultipartFile; +import java.io.IOException; +import java.math.BigInteger; import java.util.Date; /** @@ -93,4 +96,16 @@ public interface TerminalPhotoService { * @return */ ServiceBody deletePicList(DeletePicVo vo); + + + /** + * 图片上传 + * @param file + * @param termid + * @param cmdid + * @param phototime + * @return + */ + + ServiceBody uploadPhoto(MultipartFile file, Integer termid, String cmdid, Integer channel, BigInteger phototime) throws IOException; }