DYL
2025-02-08 e4cadfadfab518969ae83ef5b1db1cc12caed5e7
组态图配置
已添加5个文件
已修改1个文件
248 ■■■■■ 文件已修改
zhitan-admin/src/main/java/com/zhitan/web/controller/basicSetup/SysEquipmentfileController.java 88 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zhitan-common/src/main/java/com/zhitan/common/config/BaseConfig.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zhitan-system/src/main/java/com/zhitan/basicSetup/mapper/SysEquipmentfileMapper.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zhitan-system/src/main/java/com/zhitan/basicSetup/service/ISysEquipmentfileService.java 33 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zhitan-system/src/main/java/com/zhitan/basicSetup/service/impl/SysEquipmentfileServiceImpl.java 49 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zhitan-system/src/main/resources/mapper/basicSetup/SysEquipmentfileMapper.xml 50 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
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("保存失败!");
    }
  }
}
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";
    }
}
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);
}
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);
}
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);
  }
}
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>