wanggaokun 1 жил өмнө
parent
commit
fbc593f034

+ 1 - 1
PHM-admin/phm-admin/src/main/resources/application-local.yml

@@ -10,7 +10,7 @@ udp:
     port: 19000
   simulation:
     host: 127.0.0.1
-    port: 1900
+    port: 19100
 spring:
   redis:
     host: localhost

+ 11 - 0
PHM-admin/phm-manage/src/main/java/com/phm/manage/controller/SortieController.java

@@ -8,6 +8,7 @@ import com.phm.common.core.page.TableDataInfo;
 import com.phm.common.enums.BusinessType;
 import com.phm.common.utils.poi.ExcelUtil;
 import com.phm.manage.domain.Sortie;
+import com.phm.manage.domain.common.CommonResult;
 import com.phm.manage.service.ISortieParameterService;
 import com.phm.manage.service.ISortieService;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -41,6 +42,16 @@ public class SortieController extends BaseController {
         return getDataTable(list);
     }
 
+    /**
+     * 查询架次信息列表
+     */
+    @PreAuthorize("@ss.hasPermi('manage:sortie:list')")
+    @GetMapping("/list/all")
+    public CommonResult<List<Sortie>> listAll(Sortie sortie) {
+        List<Sortie> list = sortieService.selectSortieList(sortie);
+        return CommonResult.success(list);
+    }
+
     /**
      * 导出架次信息列表
      */

+ 55 - 0
PHM-admin/phm-manage/src/main/java/com/phm/manage/domain/BackupRestoreLog.java

@@ -0,0 +1,55 @@
+package com.phm.manage.domain;
+
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
+import com.phm.common.annotation.Excel;
+import com.phm.common.core.domain.BaseEntity;
+
+/**
+ * 备份恢复对象 PHM_BACKUP_RESTORE_LOG
+ *
+ * @author phm
+ * @date 2023-12-06
+ */
+@EqualsAndHashCode(callSuper = true)
+@Data
+@Accessors(chain = true)
+public class BackupRestoreLog extends BaseEntity {
+    private static final long serialVersionUID = 1L;
+
+    /** 唯一ID */
+    @Excel(name = "唯一ID")
+    private Long id;
+
+    /** 数据类型 */
+    @Excel(name = "数据类型")
+    private Integer type;
+
+    /** 操作方式 */
+    @Excel(name = "操作方式")
+    private String operateType;
+
+    /** 备份状态 */
+    @Excel(name = "备份状态")
+    private String status;
+
+    /** 数据源 */
+    @Excel(name = "数据源")
+    private String source;
+
+    /** 目标 */
+    @Excel(name = "目标")
+    private String target;
+    @Override
+    public String toString() {
+        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE).append("id", getId()).append("type", getType())
+            .append("operateType", getOperateType()).append("status", getStatus()).append("source", getSource())
+            .append("target", getTarget()).append("remark", getRemark()).append("isDelete", getIsDelete())
+            .append("createBy", getCreateBy()).append("createTime", getCreateTime()).append("updateBy", getUpdateBy())
+            .append("updateTime", getUpdateTime()).toString();
+    }
+}

+ 61 - 0
PHM-admin/phm-manage/src/main/java/com/phm/manage/mapper/BackupRestoreMapper.java

@@ -0,0 +1,61 @@
+package com.phm.manage.mapper;
+
+import java.util.List;
+
+import com.phm.manage.domain.BackupRestoreLog;
+
+/**
+ * 备份恢复Mapper接口
+ *
+ * @author phm
+ * @date 2023-12-06
+ */
+public interface BackupRestoreMapper {
+    /**
+     * 查询备份恢复
+     *
+     * @param id 备份恢复主键
+     * @return 备份恢复
+     */
+    public BackupRestoreLog selectBackupRestoreLogById(Long id);
+
+    /**
+     * 查询备份恢复列表
+     *
+     * @param backupRestoreLog 备份恢复
+     * @return 备份恢复集合
+     */
+    public List<BackupRestoreLog> selectBackupRestoreLogList(BackupRestoreLog backupRestoreLog);
+
+    /**
+     * 新增备份恢复
+     *
+     * @param backupRestoreLog 备份恢复
+     * @return 结果
+     */
+    public int insertBackupRestoreLog(BackupRestoreLog backupRestoreLog);
+
+    /**
+     * 修改备份恢复
+     *
+     * @param backupRestoreLog 备份恢复
+     * @return 结果
+     */
+    public int updateBackupRestoreLog(BackupRestoreLog backupRestoreLog);
+
+    /**
+     * 删除备份恢复
+     *
+     * @param id 备份恢复主键
+     * @return 结果
+     */
+    public int deleteBackupRestoreLogById(Long id);
+
+    /**
+     * 批量删除备份恢复
+     *
+     * @param ids 需要删除的数据主键集合
+     * @return 结果
+     */
+    public int deleteBackupRestoreLogByIds(Long[] ids);
+}

+ 52 - 1
PHM-admin/phm-manage/src/main/java/com/phm/manage/service/IBackupRestoreService.java

@@ -1,6 +1,8 @@
 package com.phm.manage.service;
 
-import java.io.IOException;
+import com.phm.manage.domain.BackupRestoreLog;
+
+import java.util.List;
 
 /**
  * @Description IBackupRestoreService
@@ -9,5 +11,54 @@ import java.io.IOException;
  */
 public interface IBackupRestoreService {
     boolean fileCopyBackup(String sourceFolderPath, String targetFolderPath);
+
     boolean fileCopyRestore(String sourceFolderPath, String targetFolderPath);
+
+    /**
+     * 查询备份恢复
+     *
+     * @param id 备份恢复主键
+     * @return 备份恢复
+     */
+    public BackupRestoreLog selectBackupRestoreLogById(Long id);
+
+    /**
+     * 查询备份恢复列表
+     *
+     * @param backupRestoreLog 备份恢复
+     * @return 备份恢复集合
+     */
+    public List<BackupRestoreLog> selectBackupRestoreLogList(BackupRestoreLog backupRestoreLog);
+
+    /**
+     * 新增备份恢复
+     *
+     * @param backupRestoreLog 备份恢复
+     * @return 结果
+     */
+    public int insertBackupRestoreLog(BackupRestoreLog backupRestoreLog);
+
+    /**
+     * 修改备份恢复
+     *
+     * @param backupRestoreLog 备份恢复
+     * @return 结果
+     */
+    public int updateBackupRestoreLog(BackupRestoreLog backupRestoreLog);
+
+    /**
+     * 批量删除备份恢复
+     *
+     * @param ids 需要删除的备份恢复主键集合
+     * @return 结果
+     */
+    public int deleteBackupRestoreLogByIds(Long[] ids);
+
+    /**
+     * 删除备份恢复信息
+     *
+     * @param id 备份恢复主键
+     * @return 结果
+     */
+    public int deleteBackupRestoreLogById(Long id);
 }

+ 109 - 10
PHM-admin/phm-manage/src/main/java/com/phm/manage/service/impl/BackupRestoreService.java

@@ -5,11 +5,17 @@ import java.nio.file.Path;
 import java.nio.file.Paths;
 import java.util.List;
 
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import com.phm.common.utils.DateUtils;
+import com.phm.manage.domain.BackupRestoreLog;
+import com.phm.manage.mapper.BackupRestoreMapper;
 import com.phm.manage.service.IBackupRestoreService;
+import com.phm.manage.util.SnowFlakeIdGenerator;
 
 import cn.hutool.core.io.FileUtil;
+import cn.hutool.core.util.ObjectUtil;
 import lombok.extern.slf4j.Slf4j;
 
 /**
@@ -20,13 +26,108 @@ import lombok.extern.slf4j.Slf4j;
 @Service
 @Slf4j
 public class BackupRestoreService implements IBackupRestoreService {
+
+    @Autowired
+    private BackupRestoreMapper backupRestoreMapper;
+
+    @Autowired
+    private SnowFlakeIdGenerator snowFlakeIdGenerator;
+
+    @Override
+    public boolean fileCopyRestore(String sourceFolderPath, String targetFolderPath) {
+        BackupRestoreLog log = new BackupRestoreLog();
+        log.setType(1).setTarget(sourceFolderPath).setTarget(targetFolderPath).setOperateType("恢复").setStatus("成功");
+        // 执行复制操作
+        boolean flag = copyFile(sourceFolderPath, targetFolderPath, true);
+        if (!flag) {
+            log.setStatus("失败");
+        }
+        backupRestoreMapper.insertBackupRestoreLog(log);
+        return true;
+    }
+
     @Override
     public boolean fileCopyBackup(String sourceFolderPath, String targetFolderPath) {
-        copyFile(sourceFolderPath, targetFolderPath, false);
+        BackupRestoreLog log = new BackupRestoreLog();
+        log.setType(1).setTarget(sourceFolderPath).setTarget(targetFolderPath).setOperateType("备份").setStatus("成功");
+        boolean flag = copyFile(sourceFolderPath, targetFolderPath, false);
+        if (!flag) {
+            log.setStatus("失败");
+        }
         return true;
     }
 
-    private static void copyFile(String sourceFolderPath, String targetFolderPath, boolean isAllCopy) {
+    /**
+     * 查询备份恢复
+     *
+     * @param id 备份恢复主键
+     * @return 备份恢复
+     */
+    @Override
+    public BackupRestoreLog selectBackupRestoreLogById(Long id) {
+        return backupRestoreMapper.selectBackupRestoreLogById(id);
+    }
+
+    /**
+     * 查询备份恢复列表
+     *
+     * @param backupRestoreLog 备份恢复
+     * @return 备份恢复
+     */
+    @Override
+    public List<BackupRestoreLog> selectBackupRestoreLogList(BackupRestoreLog backupRestoreLog) {
+        return backupRestoreMapper.selectBackupRestoreLogList(backupRestoreLog);
+    }
+
+    /**
+     * 新增备份恢复
+     *
+     * @param backupRestoreLog 备份恢复
+     * @return 结果
+     */
+    @Override
+    public int insertBackupRestoreLog(BackupRestoreLog backupRestoreLog) {
+        backupRestoreLog.setId(snowFlakeIdGenerator.nextId());
+        backupRestoreLog.setCreateTime(DateUtils.getNowDate());
+        return backupRestoreMapper.insertBackupRestoreLog(backupRestoreLog);
+    }
+
+    /**
+     * 修改备份恢复
+     *
+     * @param backupRestoreLog 备份恢复
+     * @return 结果
+     */
+    @Override
+    public int updateBackupRestoreLog(BackupRestoreLog backupRestoreLog) {
+        backupRestoreLog.setUpdateTime(DateUtils.getNowDate());
+        return backupRestoreMapper.updateBackupRestoreLog(backupRestoreLog);
+    }
+
+    /**
+     * 批量删除备份恢复
+     *
+     * @param ids 需要删除的备份恢复主键
+     * @return 结果
+     */
+    @Override
+    public int deleteBackupRestoreLogByIds(Long[] ids) {
+        return backupRestoreMapper.deleteBackupRestoreLogByIds(ids);
+    }
+
+    /**
+     * 删除备份恢复信息
+     *
+     * @param id 备份恢复主键
+     * @return 结果
+     */
+    @Override
+    public int deleteBackupRestoreLogById(Long id) {
+        return backupRestoreMapper.deleteBackupRestoreLogById(id);
+    }
+
+    private static boolean copyFile(String sourceFolderPath, String targetFolderPath, boolean isAllCopy) {
+        boolean flag = true;
         // 获取源文件夹和目标文件夹中的文件列表
         List<File> sourceFiles = FileUtil.loopFiles(sourceFolderPath);
         List<File> targetFiles = FileUtil.loopFiles(targetFolderPath);
@@ -44,15 +145,13 @@ public class BackupRestoreService implements IBackupRestoreService {
             // 如果源文件是新添加或者修改过的,则进行复制
             if (isAllCopy || !targetFiles.contains(targetFile)
                 || sourceFile.lastModified() > targetFile.lastModified()) {
-                FileUtil.copy(sourceFile, targetFile, true);
+                File file = FileUtil.copy(sourceFile, targetFile, true);
+                if (ObjectUtil.isEmpty(file)) {
+                    flag = false;
+                    break;
+                }
             }
         }
-    }
-
-    @Override
-    public boolean fileCopyRestore(String sourceFolderPath, String targetFolderPath) {
-        // 执行复制操作
-        copyFile(sourceFolderPath, targetFolderPath, true);
-        return true;
+        return flag;
     }
 }

+ 15 - 0
PHM-admin/phm-manage/src/main/java/com/phm/manage/service/impl/FaultCaseServiceImpl.java

@@ -126,4 +126,19 @@ public class FaultCaseServiceImpl implements IFaultCaseService {
         wrapper.queryStringQuery(description);
         return esFaultCaseMapper.selectList(wrapper);
     }
+
+    /**
+     * 数据同步到es
+     *
+     * @param index 索引
+     * @return 插入的数据总数
+     */
+    public boolean syncEsData(String index) {
+        esFaultCaseMapper.deleteIndex(index);
+        if (!esFaultCaseMapper.existsIndex("fault_case")) {
+            esFaultCaseMapper.createIndex();
+        }
+        Integer count = esFaultCaseMapper.insertBatch(faultCaseMapper.selectFaultCaseList(new FaultCase()));
+        return count > 0;
+    }
 }

+ 109 - 0
PHM-admin/phm-manage/src/main/resources/mapper/manage/BackupRestoreMapper.xml

@@ -0,0 +1,109 @@
+<?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.phm.manage.mapper.BackupRestoreMapper">
+
+    <resultMap type="BackupRestoreLog" id="BackupRestoreLogResult">
+        <result property="id"    column="ID"    />
+        <result property="type"    column="TYPE"    />
+        <result property="operateType"    column="OPERATE_TYPE"    />
+        <result property="status"    column="STATUS"    />
+        <result property="source"    column="SOURCE"    />
+        <result property="target"    column="TARGET"    />
+        <result property="remark"    column="REMARK"    />
+        <result property="isDelete"    column="IS_DELETE"    />
+        <result property="createBy"    column="CREATE_BY"    />
+        <result property="createTime"    column="CREATE_TIME"    />
+        <result property="updateBy"    column="UPDATE_BY"    />
+        <result property="updateTime"    column="UPDATE_TIME"    />
+    </resultMap>
+
+    <sql id="selectBackupRestoreLogVo">
+        select ID, TYPE, OPERATE_TYPE, STATUS, SOURCE, TARGET, REMARK, IS_DELETE, CREATE_BY, CREATE_TIME, UPDATE_BY, UPDATE_TIME from PHM_BACKUP_RESTORE_LOG
+    </sql>
+
+    <select id="selectBackupRestoreLogList" parameterType="BackupRestoreLog" resultMap="BackupRestoreLogResult">
+        <include refid="selectBackupRestoreLogVo"/>
+        <where>
+            <if test="id != null "> and ID = #{id}</if>
+            <if test="type != null "> and TYPE = #{type}</if>
+            <if test="operateType != null  and operateType != ''"> and OPERATE_TYPE = #{operateType}</if>
+            <if test="status != null  and status != ''"> and STATUS = #{status}</if>
+            <if test="source != null  and source != ''"> and SOURCE = #{source}</if>
+            <if test="target != null  and target != ''"> and TARGET = #{target}</if>
+            <if test="remark != null  and remark != ''"> and REMARK = #{remark}</if>
+            <if test="isDelete != null "> and IS_DELETE = #{isDelete}</if>
+            <if test="createBy != null  and createBy != ''"> and CREATE_BY = #{createBy}</if>
+            <if test="createTime != null "> and CREATE_TIME = #{createTime}</if>
+            <if test="updateBy != null  and updateBy != ''"> and UPDATE_BY = #{updateBy}</if>
+            <if test="updateTime != null "> and UPDATE_TIME = #{updateTime}</if>
+        </where>
+    </select>
+
+    <select id="selectBackupRestoreLogById" parameterType="Long" resultMap="BackupRestoreLogResult">
+        <include refid="selectBackupRestoreLogVo"/>
+        where ID = #{id}
+    </select>
+
+    <insert id="insertBackupRestoreLog" parameterType="BackupRestoreLog">
+        insert into PHM_BACKUP_RESTORE_LOG
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="id != null">ID,</if>
+            <if test="type != null">TYPE,</if>
+            <if test="operateType != null">OPERATE_TYPE,</if>
+            <if test="status != null">STATUS,</if>
+            <if test="source != null">SOURCE,</if>
+            <if test="target != null">TARGET,</if>
+            <if test="remark != null">REMARK,</if>
+            <if test="isDelete != null">IS_DELETE,</if>
+            <if test="createBy != null">CREATE_BY,</if>
+            <if test="createTime != null">CREATE_TIME,</if>
+            <if test="updateBy != null">UPDATE_BY,</if>
+            <if test="updateTime != null">UPDATE_TIME,</if>
+        </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="id != null">#{id},</if>
+            <if test="type != null">#{type},</if>
+            <if test="operateType != null">#{operateType},</if>
+            <if test="status != null">#{status},</if>
+            <if test="source != null">#{source},</if>
+            <if test="target != null">#{target},</if>
+            <if test="remark != null">#{remark},</if>
+            <if test="isDelete != null">#{isDelete},</if>
+            <if test="createBy != null">#{createBy},</if>
+            <if test="createTime != null">#{createTime},</if>
+            <if test="updateBy != null">#{updateBy},</if>
+            <if test="updateTime != null">#{updateTime},</if>
+        </trim>
+    </insert>
+
+    <update id="updateBackupRestoreLog" parameterType="BackupRestoreLog">
+        update PHM_BACKUP_RESTORE_LOG
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="type != null">TYPE = #{type},</if>
+            <if test="operateType != null">OPERATE_TYPE = #{operateType},</if>
+            <if test="status != null">STATUS = #{status},</if>
+            <if test="source != null">SOURCE = #{source},</if>
+            <if test="target != null">TARGET = #{target},</if>
+            <if test="remark != null">REMARK = #{remark},</if>
+            <if test="isDelete != null">IS_DELETE = #{isDelete},</if>
+            <if test="createBy != null">CREATE_BY = #{createBy},</if>
+            <if test="createTime != null">CREATE_TIME = #{createTime},</if>
+            <if test="updateBy != null">UPDATE_BY = #{updateBy},</if>
+            <if test="updateTime != null">UPDATE_TIME = #{updateTime},</if>
+        </trim>
+        where ID = #{id}
+    </update>
+
+    <delete id="deleteBackupRestoreLogById" parameterType="Long">
+        delete from PHM_BACKUP_RESTORE_LOG where ID = #{id}
+    </delete>
+
+    <delete id="deleteBackupRestoreLogByIds" parameterType="String">
+        delete from PHM_BACKUP_RESTORE_LOG where ID in
+        <foreach item="id" collection="array" open="(" separator="," close=")">
+            #{id}
+        </foreach>
+    </delete>
+</mapper>