From e4cadfadfab518969ae83ef5b1db1cc12caed5e7 Mon Sep 17 00:00:00 2001 From: DYL <Dn1332079466> Date: 星期六, 08 二月 2025 17:23:45 +0800 Subject: [PATCH] 组态图配置 --- zhitan-common/src/main/java/com/zhitan/common/config/BaseConfig.java | 4 zhitan-system/src/main/java/com/zhitan/basicSetup/service/impl/SysEquipmentfileServiceImpl.java | 49 +++++++++ zhitan-admin/src/main/java/com/zhitan/web/controller/basicSetup/SysEquipmentfileController.java | 88 +++++++++++++++++ zhitan-system/src/main/java/com/zhitan/basicSetup/mapper/SysEquipmentfileMapper.java | 24 ++++ zhitan-system/src/main/java/com/zhitan/basicSetup/service/ISysEquipmentfileService.java | 33 ++++++ zhitan-system/src/main/resources/mapper/basicSetup/SysEquipmentfileMapper.xml | 50 ++++++++++ 6 files changed, 248 insertions(+), 0 deletions(-) diff --git a/zhitan-admin/src/main/java/com/zhitan/web/controller/basicSetup/SysEquipmentfileController.java b/zhitan-admin/src/main/java/com/zhitan/web/controller/basicSetup/SysEquipmentfileController.java new file mode 100644 index 0000000..8fa8bb2 --- /dev/null +++ b/zhitan-admin/src/main/java/com/zhitan/web/controller/basicSetup/SysEquipmentfileController.java @@ -0,0 +1,88 @@ +package com.zhitan.web.controller.basicSetup; + +import com.zhitan.basicSetup.service.ISysEquipmentfileService; +import com.zhitan.common.annotation.Log; +import com.zhitan.common.config.BaseConfig; +import com.zhitan.common.core.controller.BaseController; +import com.zhitan.common.core.domain.AjaxResult; +import com.zhitan.common.enums.BusinessType; +import com.zhitan.common.utils.file.FileUploadUtils; +import com.zhitan.common.utils.uuid.UUID; +import com.zhitan.realtimedata.domain.SysEquipmentFile; +import com.zhitan.realtimedata.domain.SysSvgInfo; +import org.apache.commons.lang3.StringUtils; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; + +import java.io.IOException; +import java.util.List; + + +/** + * 缁勬�佸浘Controller + * + * @author sys + * @date 2020-02-24 + */ +@RestController +@RequestMapping("/basicSetup/equipmentfile") +public class SysEquipmentfileController extends BaseController { + + private final ISysEquipmentfileService sysEquipmentfileService; + + public SysEquipmentfileController( + ISysEquipmentfileService sysEquipmentfileService) { + this.sysEquipmentfileService = sysEquipmentfileService; + } + + @PostMapping(value = "/upload") + @Log(title = "绯荤粺鍥�", businessType = BusinessType.IMPORT) + public AjaxResult upload(MultipartFile file) throws IOException { + if (!file.isEmpty()) { + String fileSuffix = FileUploadUtils.getExtension(file); + if (StringUtils.containsIgnoreCase(".svg,.jpg,.png,.gif", fileSuffix)) { + //鏂囦欢鏈�缁堜繚瀛樼殑缁濆璺緞 + String filePath = FileUploadUtils.upload(BaseConfig.getConfigurePath(), file); + return AjaxResult.success(filePath); + } + return AjaxResult.error("鏂囦欢鏍煎紡閿欒"); + } + return AjaxResult.error("绯荤粺鍥句笂浼犲け璐�"); + } + + /** + * 淇敼缁勬�佸浘 + */ + @Log(title = "绯荤粺鍥�", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody SysEquipmentFile sysEquipmentfile) { + try { + sysEquipmentfileService.saveEquipmentFile(sysEquipmentfile); + return AjaxResult.success(); + } catch (Exception ex) { + return AjaxResult.error(); + } + } + + @PutMapping("/setting/{nodeId}") + public AjaxResult saveSetting(@PathVariable("nodeId") String nodeId, + @RequestBody List<SysSvgInfo> svgInfo) { + try { + svgInfo.forEach(info -> info.setId(UUID.fastUUID().toString())); + sysEquipmentfileService.saveSettingInfo(nodeId, svgInfo); + return AjaxResult.success("淇濆瓨鎴愬姛锛�"); + } catch (Exception ex) { + return AjaxResult.error("淇濆瓨澶辫触锛�"); + } + } + + @GetMapping("/configure/{nodeId}") + public AjaxResult getConfigure(@PathVariable("nodeId") String nodeId) { + try { + SysEquipmentFile sysEquipmentfile = sysEquipmentfileService.getConfigure(nodeId); + return AjaxResult.success(sysEquipmentfile); + } catch (Exception ex) { + return AjaxResult.error("淇濆瓨澶辫触锛�"); + } + } +} diff --git a/zhitan-common/src/main/java/com/zhitan/common/config/BaseConfig.java b/zhitan-common/src/main/java/com/zhitan/common/config/BaseConfig.java index edd535b..c9096ba 100644 --- a/zhitan-common/src/main/java/com/zhitan/common/config/BaseConfig.java +++ b/zhitan-common/src/main/java/com/zhitan/common/config/BaseConfig.java @@ -119,4 +119,8 @@ { return getProfile() + "/upload"; } + + public static String getConfigurePath() { + return getProfile() + "/configure"; + } } diff --git a/zhitan-system/src/main/java/com/zhitan/basicSetup/mapper/SysEquipmentfileMapper.java b/zhitan-system/src/main/java/com/zhitan/basicSetup/mapper/SysEquipmentfileMapper.java new file mode 100644 index 0000000..dae8e52 --- /dev/null +++ b/zhitan-system/src/main/java/com/zhitan/basicSetup/mapper/SysEquipmentfileMapper.java @@ -0,0 +1,24 @@ +package com.zhitan.basicSetup.mapper; + +import com.zhitan.realtimedata.domain.SysEquipmentFile; +import com.zhitan.realtimedata.domain.SysSvgInfo; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + * 缁勬�佸浘Mapper鎺ュ彛 + * + * @author sys + * @date 2020-02-24 + */ +public interface SysEquipmentfileMapper { + + void saveEquipmentFile(SysEquipmentFile sysEquipmentfile); + + void saveSettingInfo(@Param("nodeId") String nodeId, @Param("svgInfo") List<SysSvgInfo> svgInfo); + + SysEquipmentFile getConfigure(String nodeId); + + List<SysSvgInfo> getConfigureTag(String nodeId); +} diff --git a/zhitan-system/src/main/java/com/zhitan/basicSetup/service/ISysEquipmentfileService.java b/zhitan-system/src/main/java/com/zhitan/basicSetup/service/ISysEquipmentfileService.java new file mode 100644 index 0000000..f62ca2a --- /dev/null +++ b/zhitan-system/src/main/java/com/zhitan/basicSetup/service/ISysEquipmentfileService.java @@ -0,0 +1,33 @@ +package com.zhitan.basicSetup.service; + +import com.zhitan.realtimedata.domain.SysEquipmentFile; +import com.zhitan.realtimedata.domain.SysSvgInfo; + +import java.util.List; + +/** + * 缁勬�佸浘Service鎺ュ彛 + * + * @author sys + * @date 2020-02-24 + */ +public interface ISysEquipmentfileService { + + void saveEquipmentFile(SysEquipmentFile sysEquipmentfile); + + void saveSettingInfo(String nodeId, List<SysSvgInfo> svgInfo); + + /** + * 鑾峰彇缁勬�佸浘閰嶇疆淇℃伅 + * @param nodeId 妯″瀷鑺傜偣 id + * @return + */ + SysEquipmentFile getConfigure(String nodeId); + + /** + * 鑾峰彇缁勬�佸浘閰嶇疆鐨勭偣浣嶅彿 + * @param nodeId 妯″瀷鑺傜偣 id + * @return + */ + List<SysSvgInfo> getConfigureTag(String nodeId); +} diff --git a/zhitan-system/src/main/java/com/zhitan/basicSetup/service/impl/SysEquipmentfileServiceImpl.java b/zhitan-system/src/main/java/com/zhitan/basicSetup/service/impl/SysEquipmentfileServiceImpl.java new file mode 100644 index 0000000..bad69ef --- /dev/null +++ b/zhitan-system/src/main/java/com/zhitan/basicSetup/service/impl/SysEquipmentfileServiceImpl.java @@ -0,0 +1,49 @@ +package com.zhitan.basicSetup.service.impl; + +import com.zhitan.basicSetup.mapper.SysEquipmentfileMapper; +import com.zhitan.basicSetup.service.ISysEquipmentfileService; +import com.zhitan.realtimedata.domain.SysEquipmentFile; +import com.zhitan.realtimedata.domain.SysSvgInfo; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 缁勬�佸浘Service涓氬姟灞傚鐞� + * + * @author sys + * @date 2020-02-24 + */ +@Service +public class SysEquipmentfileServiceImpl implements ISysEquipmentfileService { + + @Autowired + private SysEquipmentfileMapper equipmentfileMapper; + + @Override + public void saveEquipmentFile(SysEquipmentFile sysEquipmentfile) { + equipmentfileMapper.saveEquipmentFile(sysEquipmentfile); + } + + @Override + public void saveSettingInfo(String nodeId, List<SysSvgInfo> svgInfo) { + equipmentfileMapper.saveSettingInfo(nodeId, svgInfo); + } + + @Override + public SysEquipmentFile getConfigure(String nodeId) { + SysEquipmentFile sysEquipmentfile = equipmentfileMapper.getConfigure(nodeId); + List<SysSvgInfo> infos = getConfigureTag(nodeId); + if (sysEquipmentfile != null) { + sysEquipmentfile.setInfoList(infos); + } + + return sysEquipmentfile; + } + + @Override + public List<SysSvgInfo> getConfigureTag(String nodeId) { + return equipmentfileMapper.getConfigureTag(nodeId); + } +} diff --git a/zhitan-system/src/main/resources/mapper/basicSetup/SysEquipmentfileMapper.xml b/zhitan-system/src/main/resources/mapper/basicSetup/SysEquipmentfileMapper.xml new file mode 100644 index 0000000..379a291 --- /dev/null +++ b/zhitan-system/src/main/resources/mapper/basicSetup/SysEquipmentfileMapper.xml @@ -0,0 +1,50 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE mapper + PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> +<mapper namespace="com.zhitan.basicSetup.mapper.SysEquipmentfileMapper"> + <resultMap id="SysEquipmentFile" + type="com.zhitan.realtimedata.domain.SysEquipmentFile"> + <result property="nodeId" column="node_id"/> + <result property="filePath" column="filepath"/> + </resultMap> + <resultMap id="SysSvgInfo" + type="com.zhitan.realtimedata.domain.SysSvgInfo"> + <result property="id" column="id"/> + <result property="param" column="param"/> + <result property="tag" column="tag"/> + </resultMap> + + <insert id="saveSettingInfo"> + delete + from sys_svg_info + where node_id = #{nodeId}; + + <foreach collection="svgInfo" item="info" separator=";"> + insert into sys_svg_info (id, node_id, param, tag) + values (#{info.id}, #{nodeId}, #{info.param}, #{info.tag}); + </foreach> + </insert> + + <update id="saveEquipmentFile"> + insert into sys_equipmentfile (node_id, filepath) + select #{nodeId}, #{filePath} + on conflict + (node_id) + do update + set filepath = #{filePath} + </update> + + <select id="getConfigure" resultMap="SysEquipmentFile"> + select node_id, filepath + from sys_equipmentfile + where node_id = #{nodeId}; + </select> + + <select id="getConfigureTag" resultMap="SysSvgInfo"> + select id, param, tag + from sys_svg_info + where node_id = #{nodeId} + </select> + +</mapper> -- Gitblit v1.9.3