Explorar el Código

Merge branch 'develop' of http://47.108.150.237:10000/allen/gphm into develop-rmd

Rmengdi hace 1 año
padre
commit
e4ce30a103
Se han modificado 74 ficheros con 3012 adiciones y 746 borrados
  1. 1 1
      PHM-admin/phm-generator/src/main/resources/vm/java/serviceImpl.java.vm
  2. 1 1
      PHM-admin/phm-manage/src/main/java/com/phm/manage/controller/AnalyzeCourseLogController.java
  3. 91 0
      PHM-admin/phm-manage/src/main/java/com/phm/manage/controller/DiagnoseResultController.java
  4. 91 0
      PHM-admin/phm-manage/src/main/java/com/phm/manage/controller/ForecastResultController.java
  5. 91 0
      PHM-admin/phm-manage/src/main/java/com/phm/manage/controller/OrderInfoController.java
  6. 1 1
      PHM-admin/phm-manage/src/main/java/com/phm/manage/controller/ProductController.java
  7. 5 67
      PHM-admin/phm-manage/src/main/java/com/phm/manage/domain/AnalyzeCourseLog.java
  8. 148 0
      PHM-admin/phm-manage/src/main/java/com/phm/manage/domain/DiagnoseResult.java
  9. 149 0
      PHM-admin/phm-manage/src/main/java/com/phm/manage/domain/ForecastResult.java
  10. 99 0
      PHM-admin/phm-manage/src/main/java/com/phm/manage/domain/OrderInfo.java
  11. 5 67
      PHM-admin/phm-manage/src/main/java/com/phm/manage/domain/Product.java
  12. 1 1
      PHM-admin/phm-manage/src/main/java/com/phm/manage/mapper/AnalyzeCourseLogMapper.java
  13. 61 0
      PHM-admin/phm-manage/src/main/java/com/phm/manage/mapper/DiagnoseResultMapper.java
  14. 61 0
      PHM-admin/phm-manage/src/main/java/com/phm/manage/mapper/ForecastResultMapper.java
  15. 61 0
      PHM-admin/phm-manage/src/main/java/com/phm/manage/mapper/OrderInfoMapper.java
  16. 1 1
      PHM-admin/phm-manage/src/main/java/com/phm/manage/mapper/ProductMapper.java
  17. 1 1
      PHM-admin/phm-manage/src/main/java/com/phm/manage/service/IAnalyzeCourseLogService.java
  18. 61 0
      PHM-admin/phm-manage/src/main/java/com/phm/manage/service/IDiagnoseResultService.java
  19. 61 0
      PHM-admin/phm-manage/src/main/java/com/phm/manage/service/IForecastResultService.java
  20. 61 0
      PHM-admin/phm-manage/src/main/java/com/phm/manage/service/IOrderInfoService.java
  21. 1 1
      PHM-admin/phm-manage/src/main/java/com/phm/manage/service/IProductService.java
  22. 4 1
      PHM-admin/phm-manage/src/main/java/com/phm/manage/service/impl/AnalyzeCourseLogServiceImpl.java
  23. 90 0
      PHM-admin/phm-manage/src/main/java/com/phm/manage/service/impl/DiagnoseResultServiceImpl.java
  24. 90 0
      PHM-admin/phm-manage/src/main/java/com/phm/manage/service/impl/ForecastResultServiceImpl.java
  25. 90 0
      PHM-admin/phm-manage/src/main/java/com/phm/manage/service/impl/OrderInfoServiceImpl.java
  26. 4 1
      PHM-admin/phm-manage/src/main/java/com/phm/manage/service/impl/ProductServiceImpl.java
  27. 0 5
      PHM-admin/phm-manage/src/main/resources/mapper/manage/AnalyzeCourseLogMapper.xml
  28. 100 0
      PHM-admin/phm-manage/src/main/resources/mapper/manage/DiagnoseResultMapper.xml
  29. 100 0
      PHM-admin/phm-manage/src/main/resources/mapper/manage/ForecastResultMapper.xml
  30. 86 0
      PHM-admin/phm-manage/src/main/resources/mapper/manage/OrderInfoMapper.xml
  31. 3 8
      PHM-admin/phm-manage/src/main/resources/mapper/manage/ProductMapper.xml
  32. 3 4
      PHM-web/package.json
  33. 0 6
      PHM-web/public/index.html
  34. 44 0
      PHM-web/src/api/manage/diagnoseResult.js
  35. 44 0
      PHM-web/src/api/manage/forecastResult.js
  36. 44 0
      PHM-web/src/api/manage/orderInfo.js
  37. 0 2
      PHM-web/src/main.js
  38. 2 5
      PHM-web/src/views/manage/aeroplane/index.vue
  39. 2 5
      PHM-web/src/views/manage/afterAnalysisResult/index.vue
  40. 10 12
      PHM-web/src/views/manage/analyzeCourseLog/index.vue
  41. 2 5
      PHM-web/src/views/manage/analyzeDownLog/index.vue
  42. 1 4
      PHM-web/src/views/manage/analyzeResult/index.vue
  43. 1 1
      PHM-web/src/views/manage/dataDown/index.vue
  44. 2 5
      PHM-web/src/views/manage/deepIsolationModel/index.vue
  45. 2 5
      PHM-web/src/views/manage/deriveParameter/index.vue
  46. 320 0
      PHM-web/src/views/manage/diagnoseResult/index.vue
  47. 2 5
      PHM-web/src/views/manage/externalInterfaceLog/index.vue
  48. 2 5
      PHM-web/src/views/manage/falseAlarmRestrainModel/index.vue
  49. 2 5
      PHM-web/src/views/manage/faultAnalyzeResult/index.vue
  50. 2 2
      PHM-web/src/views/manage/faultCase/index.vue
  51. 2 5
      PHM-web/src/views/manage/feedbackRawData/index.vue
  52. 2 5
      PHM-web/src/views/manage/fleet/index.vue
  53. 2 5
      PHM-web/src/views/manage/forecastModel/index.vue
  54. 324 0
      PHM-web/src/views/manage/forecastResult/index.vue
  55. 2 5
      PHM-web/src/views/manage/groundDiagnosisModel/index.vue
  56. 2 5
      PHM-web/src/views/manage/instructionInfo/index.vue
  57. 2 2
      PHM-web/src/views/manage/lifePartConfig/index.vue
  58. 2 5
      PHM-web/src/views/manage/maintenance/index.vue
  59. 2 5
      PHM-web/src/views/manage/maintenanceTestControl/index.vue
  60. 2 5
      PHM-web/src/views/manage/monitorParameterConfig/index.vue
  61. 290 0
      PHM-web/src/views/manage/orderInfo/index.vue
  62. 2 5
      PHM-web/src/views/manage/performanceMonitorModel/index.vue
  63. 2 5
      PHM-web/src/views/manage/preHandleResult/index.vue
  64. 261 453
      PHM-web/src/views/manage/product/index.vue
  65. 2 5
      PHM-web/src/views/manage/softwareConfig/index.vue
  66. 1 1
      PHM-web/src/views/manage/sortie/index.vue
  67. 1 1
      PHM-web/src/views/system/config/index.vue
  68. 1 1
      PHM-web/src/views/system/dept/index.vue
  69. 1 1
      PHM-web/src/views/system/dict/data.vue
  70. 1 1
      PHM-web/src/views/system/dict/index.vue
  71. 1 1
      PHM-web/src/views/system/notice/index.vue
  72. 1 1
      PHM-web/src/views/system/post/index.vue
  73. 1 1
      PHM-web/src/views/system/user/index.vue
  74. 1 1
      PHM-web/vue.config.js

+ 1 - 1
PHM-admin/phm-generator/src/main/resources/vm/java/serviceImpl.java.vm

@@ -3,7 +3,7 @@ package ${packageName}.service.impl;
 import java.util.List;
 #foreach ($column in $columns)
 #if($column.javaField == 'createTime' || $column.javaField == 'updateTime')
-import utils.com.phm.common.DateUtils;
+import com.phm.common.utils.DateUtils;
 #break
 #end
 #end

+ 1 - 1
PHM-admin/phm-manage/src/main/java/com/phm/manage/controller/AnalyzeCourseLogController.java

@@ -19,7 +19,7 @@ import java.util.List;
  * 分析过程日志Controller
  *
  * @author phm
- * @date 2023-08-22
+ * @date 2023-08-31
  */
 @RestController
 @RequestMapping("/manage/analyzeCourseLog")

+ 91 - 0
PHM-admin/phm-manage/src/main/java/com/phm/manage/controller/DiagnoseResultController.java

@@ -0,0 +1,91 @@
+package com.phm.manage.controller;
+
+import com.phm.common.annotation.Log;
+import com.phm.common.core.controller.BaseController;
+import com.phm.common.core.domain.AjaxResult;
+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.DiagnoseResult;
+import com.phm.manage.service.IDiagnoseResultService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.web.bind.annotation.*;
+
+import javax.servlet.http.HttpServletResponse;
+import java.util.List;
+
+/**
+ * 诊断结果Controller
+ *
+ * @author phm
+ * @date 2023-08-31
+ */
+@RestController
+@RequestMapping("/manage/diagnoseResult")
+public class DiagnoseResultController extends BaseController {
+    @Autowired
+    private IDiagnoseResultService diagnoseResultService;
+
+    /**
+     * 查询诊断结果列表
+     */
+    @PreAuthorize("@ss.hasPermi('manage:diagnoseResult:list')")
+    @GetMapping("/list")
+    public TableDataInfo list(DiagnoseResult diagnoseResult) {
+        startPage();
+        List<DiagnoseResult> list = diagnoseResultService.selectDiagnoseResultList(diagnoseResult);
+        return getDataTable(list);
+    }
+
+    /**
+     * 导出诊断结果列表
+     */
+    @PreAuthorize("@ss.hasPermi('manage:diagnoseResult:export')")
+    @Log(title = "诊断结果", businessType = BusinessType.EXPORT)
+    @PostMapping("/export")
+    public void export(HttpServletResponse response, DiagnoseResult diagnoseResult) {
+        List<DiagnoseResult> list = diagnoseResultService.selectDiagnoseResultList(diagnoseResult);
+        ExcelUtil<DiagnoseResult> util = new ExcelUtil<DiagnoseResult>(DiagnoseResult.class);
+        util.exportExcel(response, list, "诊断结果数据");
+    }
+
+    /**
+     * 获取诊断结果详细信息
+     */
+    @PreAuthorize("@ss.hasPermi('manage:diagnoseResult:query')")
+    @GetMapping(value = "/{id}")
+    public AjaxResult getInfo(@PathVariable("id") Long id) {
+        return success(diagnoseResultService.selectDiagnoseResultById(id));
+    }
+
+    /**
+     * 新增诊断结果
+     */
+    @PreAuthorize("@ss.hasPermi('manage:diagnoseResult:add')")
+    @Log(title = "诊断结果", businessType = BusinessType.INSERT)
+    @PostMapping
+    public AjaxResult add(@RequestBody DiagnoseResult diagnoseResult) {
+        return toAjax(diagnoseResultService.insertDiagnoseResult(diagnoseResult));
+    }
+
+    /**
+     * 修改诊断结果
+     */
+    @PreAuthorize("@ss.hasPermi('manage:diagnoseResult:edit')")
+    @Log(title = "诊断结果", businessType = BusinessType.UPDATE)
+    @PutMapping
+    public AjaxResult edit(@RequestBody DiagnoseResult diagnoseResult) {
+        return toAjax(diagnoseResultService.updateDiagnoseResult(diagnoseResult));
+    }
+
+    /**
+     * 删除诊断结果
+     */
+    @PreAuthorize("@ss.hasPermi('manage:diagnoseResult:remove')")
+    @Log(title = "诊断结果", businessType = BusinessType.DELETE)
+    @DeleteMapping("/{ids}")
+    public AjaxResult remove(@PathVariable Long[] ids) {
+        return toAjax(diagnoseResultService.deleteDiagnoseResultByIds(ids));
+    }
+}

+ 91 - 0
PHM-admin/phm-manage/src/main/java/com/phm/manage/controller/ForecastResultController.java

@@ -0,0 +1,91 @@
+package com.phm.manage.controller;
+
+import com.phm.common.annotation.Log;
+import com.phm.common.core.controller.BaseController;
+import com.phm.common.core.domain.AjaxResult;
+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.ForecastResult;
+import com.phm.manage.service.IForecastResultService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.web.bind.annotation.*;
+
+import javax.servlet.http.HttpServletResponse;
+import java.util.List;
+
+/**
+ * 预测结果Controller
+ *
+ * @author phm
+ * @date 2023-08-31
+ */
+@RestController
+@RequestMapping("/manage/forecastResult")
+public class ForecastResultController extends BaseController {
+    @Autowired
+    private IForecastResultService forecastResultService;
+
+    /**
+     * 查询预测结果列表
+     */
+    @PreAuthorize("@ss.hasPermi('manage:forecastResult:list')")
+    @GetMapping("/list")
+    public TableDataInfo list(ForecastResult forecastResult) {
+        startPage();
+        List<ForecastResult> list = forecastResultService.selectForecastResultList(forecastResult);
+        return getDataTable(list);
+    }
+
+    /**
+     * 导出预测结果列表
+     */
+    @PreAuthorize("@ss.hasPermi('manage:forecastResult:export')")
+    @Log(title = "预测结果", businessType = BusinessType.EXPORT)
+    @PostMapping("/export")
+    public void export(HttpServletResponse response, ForecastResult forecastResult) {
+        List<ForecastResult> list = forecastResultService.selectForecastResultList(forecastResult);
+        ExcelUtil<ForecastResult> util = new ExcelUtil<ForecastResult>(ForecastResult.class);
+        util.exportExcel(response, list, "预测结果数据");
+    }
+
+    /**
+     * 获取预测结果详细信息
+     */
+    @PreAuthorize("@ss.hasPermi('manage:forecastResult:query')")
+    @GetMapping(value = "/{id}")
+    public AjaxResult getInfo(@PathVariable("id") Long id) {
+        return success(forecastResultService.selectForecastResultById(id));
+    }
+
+    /**
+     * 新增预测结果
+     */
+    @PreAuthorize("@ss.hasPermi('manage:forecastResult:add')")
+    @Log(title = "预测结果", businessType = BusinessType.INSERT)
+    @PostMapping
+    public AjaxResult add(@RequestBody ForecastResult forecastResult) {
+        return toAjax(forecastResultService.insertForecastResult(forecastResult));
+    }
+
+    /**
+     * 修改预测结果
+     */
+    @PreAuthorize("@ss.hasPermi('manage:forecastResult:edit')")
+    @Log(title = "预测结果", businessType = BusinessType.UPDATE)
+    @PutMapping
+    public AjaxResult edit(@RequestBody ForecastResult forecastResult) {
+        return toAjax(forecastResultService.updateForecastResult(forecastResult));
+    }
+
+    /**
+     * 删除预测结果
+     */
+    @PreAuthorize("@ss.hasPermi('manage:forecastResult:remove')")
+    @Log(title = "预测结果", businessType = BusinessType.DELETE)
+    @DeleteMapping("/{ids}")
+    public AjaxResult remove(@PathVariable Long[] ids) {
+        return toAjax(forecastResultService.deleteForecastResultByIds(ids));
+    }
+}

+ 91 - 0
PHM-admin/phm-manage/src/main/java/com/phm/manage/controller/OrderInfoController.java

@@ -0,0 +1,91 @@
+package com.phm.manage.controller;
+
+import com.phm.common.annotation.Log;
+import com.phm.common.core.controller.BaseController;
+import com.phm.common.core.domain.AjaxResult;
+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.OrderInfo;
+import com.phm.manage.service.IOrderInfoService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.web.bind.annotation.*;
+
+import javax.servlet.http.HttpServletResponse;
+import java.util.List;
+
+/**
+ * 系统指令信息Controller
+ *
+ * @author phm
+ * @date 2023-08-31
+ */
+@RestController
+@RequestMapping("/manage/orderInfo")
+public class OrderInfoController extends BaseController {
+    @Autowired
+    private IOrderInfoService orderInfoService;
+
+    /**
+     * 查询系统指令信息列表
+     */
+    @PreAuthorize("@ss.hasPermi('manage:orderInfo:list')")
+    @GetMapping("/list")
+    public TableDataInfo list(OrderInfo orderInfo) {
+        startPage();
+        List<OrderInfo> list = orderInfoService.selectOrderInfoList(orderInfo);
+        return getDataTable(list);
+    }
+
+    /**
+     * 导出系统指令信息列表
+     */
+    @PreAuthorize("@ss.hasPermi('manage:orderInfo:export')")
+    @Log(title = "系统指令信息", businessType = BusinessType.EXPORT)
+    @PostMapping("/export")
+    public void export(HttpServletResponse response, OrderInfo orderInfo) {
+        List<OrderInfo> list = orderInfoService.selectOrderInfoList(orderInfo);
+        ExcelUtil<OrderInfo> util = new ExcelUtil<OrderInfo>(OrderInfo.class);
+        util.exportExcel(response, list, "系统指令信息数据");
+    }
+
+    /**
+     * 获取系统指令信息详细信息
+     */
+    @PreAuthorize("@ss.hasPermi('manage:orderInfo:query')")
+    @GetMapping(value = "/{id}")
+    public AjaxResult getInfo(@PathVariable("id") Long id) {
+        return success(orderInfoService.selectOrderInfoById(id));
+    }
+
+    /**
+     * 新增系统指令信息
+     */
+    @PreAuthorize("@ss.hasPermi('manage:orderInfo:add')")
+    @Log(title = "系统指令信息", businessType = BusinessType.INSERT)
+    @PostMapping
+    public AjaxResult add(@RequestBody OrderInfo orderInfo) {
+        return toAjax(orderInfoService.insertOrderInfo(orderInfo));
+    }
+
+    /**
+     * 修改系统指令信息
+     */
+    @PreAuthorize("@ss.hasPermi('manage:orderInfo:edit')")
+    @Log(title = "系统指令信息", businessType = BusinessType.UPDATE)
+    @PutMapping
+    public AjaxResult edit(@RequestBody OrderInfo orderInfo) {
+        return toAjax(orderInfoService.updateOrderInfo(orderInfo));
+    }
+
+    /**
+     * 删除系统指令信息
+     */
+    @PreAuthorize("@ss.hasPermi('manage:orderInfo:remove')")
+    @Log(title = "系统指令信息", businessType = BusinessType.DELETE)
+    @DeleteMapping("/{ids}")
+    public AjaxResult remove(@PathVariable Long[] ids) {
+        return toAjax(orderInfoService.deleteOrderInfoByIds(ids));
+    }
+}

+ 1 - 1
PHM-admin/phm-manage/src/main/java/com/phm/manage/controller/ProductController.java

@@ -18,7 +18,7 @@ import java.util.List;
  * 产品树信息Controller
  *
  * @author phm
- * @date 2023-08-22
+ * @date 2023-08-31
  */
 @RestController
 @RequestMapping("/manage/product")

+ 5 - 67
PHM-admin/phm-manage/src/main/java/com/phm/manage/domain/AnalyzeCourseLog.java

@@ -1,18 +1,15 @@
 package com.phm.manage.domain;
 
-import com.fasterxml.jackson.annotation.JsonFormat;
 import com.phm.common.annotation.Excel;
 import com.phm.common.core.domain.BaseEntity;
 import org.apache.commons.lang3.builder.ToStringBuilder;
 import org.apache.commons.lang3.builder.ToStringStyle;
 
-import java.util.Date;
-
 /**
  * 分析过程日志对象 phm_analyze_course_log
  *
  * @author phm
- * @date 2023-08-22
+ * @date 2023-08-31
  */
 public class AnalyzeCourseLog extends BaseEntity {
     private static final long serialVersionUID = 1L;
@@ -49,35 +46,8 @@ public class AnalyzeCourseLog extends BaseEntity {
     /**
      * 数据是否删除(1:删除,0有效)
      */
-    @Excel(name = "数据是否删除", readConverterExp = "1=:删除,0有效")
     private Long isDelete;
 
-    /**
-     * 创建人
-     */
-    @Excel(name = "创建人")
-    private String createdBy;
-
-    /**
-     * 创建时间
-     */
-    @JsonFormat(pattern = "yyyy-MM-dd")
-    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
-    private Date createdTime;
-
-    /**
-     * 更新人
-     */
-    @Excel(name = "更新人")
-    private String updatedBy;
-
-    /**
-     * 更新时间
-     */
-    @JsonFormat(pattern = "yyyy-MM-dd")
-    @Excel(name = "更新时间", width = 30, dateFormat = "yyyy-MM-dd")
-    private Date updatedTime;
-
     public void setId(Long id) {
         this.id = id;
     }
@@ -126,38 +96,6 @@ public class AnalyzeCourseLog extends BaseEntity {
         return isDelete;
     }
 
-    public void setCreatedBy(String createdBy) {
-        this.createdBy = createdBy;
-    }
-
-    public String getCreatedBy() {
-        return createdBy;
-    }
-
-    public void setCreatedTime(Date createdTime) {
-        this.createdTime = createdTime;
-    }
-
-    public Date getCreatedTime() {
-        return createdTime;
-    }
-
-    public void setUpdatedBy(String updatedBy) {
-        this.updatedBy = updatedBy;
-    }
-
-    public String getUpdatedBy() {
-        return updatedBy;
-    }
-
-    public void setUpdatedTime(Date updatedTime) {
-        this.updatedTime = updatedTime;
-    }
-
-    public Date getUpdatedTime() {
-        return updatedTime;
-    }
-
     @Override
     public String toString() {
         return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
@@ -167,10 +105,10 @@ public class AnalyzeCourseLog extends BaseEntity {
                 .append("courseContent", getCourseContent())
                 .append("status", getStatus())
                 .append("isDelete", getIsDelete())
-                .append("createdBy", getCreatedBy())
-                .append("createdTime", getCreatedTime())
-                .append("updatedBy", getUpdatedBy())
-                .append("updatedTime", getUpdatedTime())
+                .append("createBy", getCreateBy())
+                .append("createTime", getCreateTime())
+                .append("updateBy", getUpdateBy())
+                .append("updateTime", getUpdateTime())
                 .toString();
     }
 }

+ 148 - 0
PHM-admin/phm-manage/src/main/java/com/phm/manage/domain/DiagnoseResult.java

@@ -0,0 +1,148 @@
+package com.phm.manage.domain;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.phm.common.annotation.Excel;
+import com.phm.common.core.domain.BaseEntity;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
+import java.util.Date;
+
+/**
+ * 诊断结果对象 phm_diagnose_result
+ *
+ * @author phm
+ * @date 2023-08-31
+ */
+public class DiagnoseResult extends BaseEntity {
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 唯一ID
+     */
+    private Long id;
+
+    /**
+     * 故障模式
+     */
+    @Excel(name = "故障模式")
+    private String faultMode;
+
+    /**
+     * 故障对象
+     */
+    @Excel(name = "故障对象")
+    private String faultObject;
+
+    /**
+     * 故障编码
+     */
+    @Excel(name = "故障编码")
+    private String faultCode;
+
+    /**
+     * 故障源
+     */
+    @Excel(name = "故障源")
+    private String faultSource;
+
+    /**
+     * 分析时间
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @Excel(name = "分析时间", width = 30, dateFormat = "yyyy-MM-dd")
+    private Date analysisTime;
+
+    /**
+     * 批注注解
+     */
+    @Excel(name = "批注注解")
+    private String comment;
+
+    /**
+     * 数据是否删除(1:删除,0有效)
+     */
+    private Long isDelete;
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setFaultMode(String faultMode) {
+        this.faultMode = faultMode;
+    }
+
+    public String getFaultMode() {
+        return faultMode;
+    }
+
+    public void setFaultObject(String faultObject) {
+        this.faultObject = faultObject;
+    }
+
+    public String getFaultObject() {
+        return faultObject;
+    }
+
+    public void setFaultCode(String faultCode) {
+        this.faultCode = faultCode;
+    }
+
+    public String getFaultCode() {
+        return faultCode;
+    }
+
+    public void setFaultSource(String faultSource) {
+        this.faultSource = faultSource;
+    }
+
+    public String getFaultSource() {
+        return faultSource;
+    }
+
+    public void setAnalysisTime(Date analysisTime) {
+        this.analysisTime = analysisTime;
+    }
+
+    public Date getAnalysisTime() {
+        return analysisTime;
+    }
+
+    public void setComment(String comment) {
+        this.comment = comment;
+    }
+
+    public String getComment() {
+        return comment;
+    }
+
+    public void setIsDelete(Long isDelete) {
+        this.isDelete = isDelete;
+    }
+
+    public Long getIsDelete() {
+        return isDelete;
+    }
+
+    @Override
+    public String toString() {
+        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
+                .append("id", getId())
+                .append("faultMode", getFaultMode())
+                .append("faultObject", getFaultObject())
+                .append("faultCode", getFaultCode())
+                .append("faultSource", getFaultSource())
+                .append("analysisTime", getAnalysisTime())
+                .append("comment", getComment())
+                .append("isDelete", getIsDelete())
+                .append("createBy", getCreateBy())
+                .append("createTime", getCreateTime())
+                .append("updateBy", getUpdateBy())
+                .append("updateTime", getUpdateTime())
+                .toString();
+    }
+}

+ 149 - 0
PHM-admin/phm-manage/src/main/java/com/phm/manage/domain/ForecastResult.java

@@ -0,0 +1,149 @@
+package com.phm.manage.domain;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.phm.common.annotation.Excel;
+import com.phm.common.core.domain.BaseEntity;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
+import java.util.Date;
+
+/**
+ * 预测结果对象 phm_forecast_result
+ *
+ * @author phm
+ * @date 2023-08-31
+ */
+public class ForecastResult extends BaseEntity {
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 唯一ID
+     */
+    private Long id;
+
+    /**
+     * 部件名称
+     */
+    @Excel(name = "部件名称")
+    private String unitName;
+
+    /**
+     * 研究对象
+     */
+    @Excel(name = "研究对象")
+    private String studyObject;
+
+    /**
+     * SNS 编码
+     */
+    @Excel(name = "SNS 编码")
+    private String snsCode;
+
+    /**
+     * 预测故障
+     */
+    @Excel(name = "预测故障")
+    private String forecastFault;
+
+    /**
+     * 分析时间
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @Excel(name = "分析时间", width = 30, dateFormat = "yyyy-MM-dd")
+    private Date analysisTime;
+
+    /**
+     * 批注注解
+     */
+    @Excel(name = "批注注解")
+    private String comment;
+
+    /**
+     * 数据是否删除(1:删除,0有效)
+     */
+    @Excel(name = "数据是否删除", readConverterExp = "1=:删除,0有效")
+    private Long isDelete;
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setUnitName(String unitName) {
+        this.unitName = unitName;
+    }
+
+    public String getUnitName() {
+        return unitName;
+    }
+
+    public void setStudyObject(String studyObject) {
+        this.studyObject = studyObject;
+    }
+
+    public String getStudyObject() {
+        return studyObject;
+    }
+
+    public void setSnsCode(String snsCode) {
+        this.snsCode = snsCode;
+    }
+
+    public String getSnsCode() {
+        return snsCode;
+    }
+
+    public void setForecastFault(String forecastFault) {
+        this.forecastFault = forecastFault;
+    }
+
+    public String getForecastFault() {
+        return forecastFault;
+    }
+
+    public void setAnalysisTime(Date analysisTime) {
+        this.analysisTime = analysisTime;
+    }
+
+    public Date getAnalysisTime() {
+        return analysisTime;
+    }
+
+    public void setComment(String comment) {
+        this.comment = comment;
+    }
+
+    public String getComment() {
+        return comment;
+    }
+
+    public void setIsDelete(Long isDelete) {
+        this.isDelete = isDelete;
+    }
+
+    public Long getIsDelete() {
+        return isDelete;
+    }
+
+    @Override
+    public String toString() {
+        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
+                .append("id", getId())
+                .append("unitName", getUnitName())
+                .append("studyObject", getStudyObject())
+                .append("snsCode", getSnsCode())
+                .append("forecastFault", getForecastFault())
+                .append("analysisTime", getAnalysisTime())
+                .append("comment", getComment())
+                .append("isDelete", getIsDelete())
+                .append("createBy", getCreateBy())
+                .append("createTime", getCreateTime())
+                .append("updateBy", getUpdateBy())
+                .append("updateTime", getUpdateTime())
+                .toString();
+    }
+}

+ 99 - 0
PHM-admin/phm-manage/src/main/java/com/phm/manage/domain/OrderInfo.java

@@ -0,0 +1,99 @@
+package com.phm.manage.domain;
+
+import com.phm.common.annotation.Excel;
+import com.phm.common.core.domain.BaseEntity;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
+/**
+ * 系统指令信息对象 phm_order_info
+ *
+ * @author phm
+ * @date 2023-08-31
+ */
+public class OrderInfo extends BaseEntity {
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 唯一ID
+     */
+    private Long id;
+
+    /**
+     * 指令名称
+     */
+    @Excel(name = "指令名称")
+    private String orderName;
+
+    /**
+     * 指令类型
+     */
+    @Excel(name = "指令类型")
+    private String orderType;
+
+    /**
+     * 参数内容:JSON格式
+     */
+    @Excel(name = "参数内容:JSON格式")
+    private String content;
+
+    /**
+     * 数据是否删除(1:删除,0有效)
+     */
+    private Long isDelete;
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setOrderName(String orderName) {
+        this.orderName = orderName;
+    }
+
+    public String getOrderName() {
+        return orderName;
+    }
+
+    public void setOrderType(String orderType) {
+        this.orderType = orderType;
+    }
+
+    public String getOrderType() {
+        return orderType;
+    }
+
+    public void setContent(String content) {
+        this.content = content;
+    }
+
+    public String getContent() {
+        return content;
+    }
+
+    public void setIsDelete(Long isDelete) {
+        this.isDelete = isDelete;
+    }
+
+    public Long getIsDelete() {
+        return isDelete;
+    }
+
+    @Override
+    public String toString() {
+        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
+                .append("id", getId())
+                .append("orderName", getOrderName())
+                .append("orderType", getOrderType())
+                .append("content", getContent())
+                .append("isDelete", getIsDelete())
+                .append("createBy", getCreateBy())
+                .append("createTime", getCreateTime())
+                .append("updateBy", getUpdateBy())
+                .append("updateTime", getUpdateTime())
+                .toString();
+    }
+}

+ 5 - 67
PHM-admin/phm-manage/src/main/java/com/phm/manage/domain/Product.java

@@ -1,18 +1,15 @@
 package com.phm.manage.domain;
 
-import com.fasterxml.jackson.annotation.JsonFormat;
 import com.phm.common.annotation.Excel;
 import com.phm.common.core.domain.TreeEntity;
 import org.apache.commons.lang3.builder.ToStringBuilder;
 import org.apache.commons.lang3.builder.ToStringStyle;
 
-import java.util.Date;
-
 /**
  * 产品树信息对象 phm_product
  *
  * @author phm
- * @date 2023-08-22
+ * @date 2023-08-31
  */
 public class Product extends TreeEntity {
     private static final long serialVersionUID = 1L;
@@ -37,35 +34,8 @@ public class Product extends TreeEntity {
     /**
      * 数据是否删除(1:删除,0有效)
      */
-    @Excel(name = "数据是否删除", readConverterExp = "1=:删除,0有效")
     private Long isDelete;
 
-    /**
-     * 创建人
-     */
-    @Excel(name = "创建人")
-    private String createdBy;
-
-    /**
-     * 创建时间
-     */
-    @JsonFormat(pattern = "yyyy-MM-dd")
-    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
-    private Date createdTime;
-
-    /**
-     * 更新人
-     */
-    @Excel(name = "更新人")
-    private String updatedBy;
-
-    /**
-     * 更新时间
-     */
-    @JsonFormat(pattern = "yyyy-MM-dd")
-    @Excel(name = "更新时间", width = 30, dateFormat = "yyyy-MM-dd")
-    private Date updatedTime;
-
     public void setId(Long id) {
         this.id = id;
     }
@@ -98,38 +68,6 @@ public class Product extends TreeEntity {
         return isDelete;
     }
 
-    public void setCreatedBy(String createdBy) {
-        this.createdBy = createdBy;
-    }
-
-    public String getCreatedBy() {
-        return createdBy;
-    }
-
-    public void setCreatedTime(Date createdTime) {
-        this.createdTime = createdTime;
-    }
-
-    public Date getCreatedTime() {
-        return createdTime;
-    }
-
-    public void setUpdatedBy(String updatedBy) {
-        this.updatedBy = updatedBy;
-    }
-
-    public String getUpdatedBy() {
-        return updatedBy;
-    }
-
-    public void setUpdatedTime(Date updatedTime) {
-        this.updatedTime = updatedTime;
-    }
-
-    public Date getUpdatedTime() {
-        return updatedTime;
-    }
-
     @Override
     public String toString() {
         return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
@@ -138,10 +76,10 @@ public class Product extends TreeEntity {
                 .append("name", getName())
                 .append("snsId", getSnsId())
                 .append("isDelete", getIsDelete())
-                .append("createdBy", getCreatedBy())
-                .append("createdTime", getCreatedTime())
-                .append("updatedBy", getUpdatedBy())
-                .append("updatedTime", getUpdatedTime())
+                .append("createBy", getCreateBy())
+                .append("createTime", getCreateTime())
+                .append("updateBy", getUpdateBy())
+                .append("updateTime", getUpdateTime())
                 .toString();
     }
 }

+ 1 - 1
PHM-admin/phm-manage/src/main/java/com/phm/manage/mapper/AnalyzeCourseLogMapper.java

@@ -8,7 +8,7 @@ import java.util.List;
  * 分析过程日志Mapper接口
  *
  * @author phm
- * @date 2023-08-22
+ * @date 2023-08-31
  */
 public interface AnalyzeCourseLogMapper {
     /**

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

@@ -0,0 +1,61 @@
+package com.phm.manage.mapper;
+
+import com.phm.manage.domain.DiagnoseResult;
+
+import java.util.List;
+
+/**
+ * 诊断结果Mapper接口
+ *
+ * @author phm
+ * @date 2023-08-31
+ */
+public interface DiagnoseResultMapper {
+    /**
+     * 查询诊断结果
+     *
+     * @param id 诊断结果主键
+     * @return 诊断结果
+     */
+    public DiagnoseResult selectDiagnoseResultById(Long id);
+
+    /**
+     * 查询诊断结果列表
+     *
+     * @param diagnoseResult 诊断结果
+     * @return 诊断结果集合
+     */
+    public List<DiagnoseResult> selectDiagnoseResultList(DiagnoseResult diagnoseResult);
+
+    /**
+     * 新增诊断结果
+     *
+     * @param diagnoseResult 诊断结果
+     * @return 结果
+     */
+    public int insertDiagnoseResult(DiagnoseResult diagnoseResult);
+
+    /**
+     * 修改诊断结果
+     *
+     * @param diagnoseResult 诊断结果
+     * @return 结果
+     */
+    public int updateDiagnoseResult(DiagnoseResult diagnoseResult);
+
+    /**
+     * 删除诊断结果
+     *
+     * @param id 诊断结果主键
+     * @return 结果
+     */
+    public int deleteDiagnoseResultById(Long id);
+
+    /**
+     * 批量删除诊断结果
+     *
+     * @param ids 需要删除的数据主键集合
+     * @return 结果
+     */
+    public int deleteDiagnoseResultByIds(Long[] ids);
+}

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

@@ -0,0 +1,61 @@
+package com.phm.manage.mapper;
+
+import com.phm.manage.domain.ForecastResult;
+
+import java.util.List;
+
+/**
+ * 预测结果Mapper接口
+ *
+ * @author phm
+ * @date 2023-08-31
+ */
+public interface ForecastResultMapper {
+    /**
+     * 查询预测结果
+     *
+     * @param id 预测结果主键
+     * @return 预测结果
+     */
+    public ForecastResult selectForecastResultById(Long id);
+
+    /**
+     * 查询预测结果列表
+     *
+     * @param forecastResult 预测结果
+     * @return 预测结果集合
+     */
+    public List<ForecastResult> selectForecastResultList(ForecastResult forecastResult);
+
+    /**
+     * 新增预测结果
+     *
+     * @param forecastResult 预测结果
+     * @return 结果
+     */
+    public int insertForecastResult(ForecastResult forecastResult);
+
+    /**
+     * 修改预测结果
+     *
+     * @param forecastResult 预测结果
+     * @return 结果
+     */
+    public int updateForecastResult(ForecastResult forecastResult);
+
+    /**
+     * 删除预测结果
+     *
+     * @param id 预测结果主键
+     * @return 结果
+     */
+    public int deleteForecastResultById(Long id);
+
+    /**
+     * 批量删除预测结果
+     *
+     * @param ids 需要删除的数据主键集合
+     * @return 结果
+     */
+    public int deleteForecastResultByIds(Long[] ids);
+}

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

@@ -0,0 +1,61 @@
+package com.phm.manage.mapper;
+
+import com.phm.manage.domain.OrderInfo;
+
+import java.util.List;
+
+/**
+ * 系统指令信息Mapper接口
+ *
+ * @author phm
+ * @date 2023-08-31
+ */
+public interface OrderInfoMapper {
+    /**
+     * 查询系统指令信息
+     *
+     * @param id 系统指令信息主键
+     * @return 系统指令信息
+     */
+    public OrderInfo selectOrderInfoById(Long id);
+
+    /**
+     * 查询系统指令信息列表
+     *
+     * @param orderInfo 系统指令信息
+     * @return 系统指令信息集合
+     */
+    public List<OrderInfo> selectOrderInfoList(OrderInfo orderInfo);
+
+    /**
+     * 新增系统指令信息
+     *
+     * @param orderInfo 系统指令信息
+     * @return 结果
+     */
+    public int insertOrderInfo(OrderInfo orderInfo);
+
+    /**
+     * 修改系统指令信息
+     *
+     * @param orderInfo 系统指令信息
+     * @return 结果
+     */
+    public int updateOrderInfo(OrderInfo orderInfo);
+
+    /**
+     * 删除系统指令信息
+     *
+     * @param id 系统指令信息主键
+     * @return 结果
+     */
+    public int deleteOrderInfoById(Long id);
+
+    /**
+     * 批量删除系统指令信息
+     *
+     * @param ids 需要删除的数据主键集合
+     * @return 结果
+     */
+    public int deleteOrderInfoByIds(Long[] ids);
+}

+ 1 - 1
PHM-admin/phm-manage/src/main/java/com/phm/manage/mapper/ProductMapper.java

@@ -8,7 +8,7 @@ import java.util.List;
  * 产品树信息Mapper接口
  *
  * @author phm
- * @date 2023-08-22
+ * @date 2023-08-31
  */
 public interface ProductMapper {
     /**

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

@@ -8,7 +8,7 @@ import java.util.List;
  * 分析过程日志Service接口
  *
  * @author phm
- * @date 2023-08-22
+ * @date 2023-08-31
  */
 public interface IAnalyzeCourseLogService {
     /**

+ 61 - 0
PHM-admin/phm-manage/src/main/java/com/phm/manage/service/IDiagnoseResultService.java

@@ -0,0 +1,61 @@
+package com.phm.manage.service;
+
+import com.phm.manage.domain.DiagnoseResult;
+
+import java.util.List;
+
+/**
+ * 诊断结果Service接口
+ *
+ * @author phm
+ * @date 2023-08-31
+ */
+public interface IDiagnoseResultService {
+    /**
+     * 查询诊断结果
+     *
+     * @param id 诊断结果主键
+     * @return 诊断结果
+     */
+    public DiagnoseResult selectDiagnoseResultById(Long id);
+
+    /**
+     * 查询诊断结果列表
+     *
+     * @param diagnoseResult 诊断结果
+     * @return 诊断结果集合
+     */
+    public List<DiagnoseResult> selectDiagnoseResultList(DiagnoseResult diagnoseResult);
+
+    /**
+     * 新增诊断结果
+     *
+     * @param diagnoseResult 诊断结果
+     * @return 结果
+     */
+    public int insertDiagnoseResult(DiagnoseResult diagnoseResult);
+
+    /**
+     * 修改诊断结果
+     *
+     * @param diagnoseResult 诊断结果
+     * @return 结果
+     */
+    public int updateDiagnoseResult(DiagnoseResult diagnoseResult);
+
+    /**
+     * 批量删除诊断结果
+     *
+     * @param ids 需要删除的诊断结果主键集合
+     * @return 结果
+     */
+    public int deleteDiagnoseResultByIds(Long[] ids);
+
+    /**
+     * 删除诊断结果信息
+     *
+     * @param id 诊断结果主键
+     * @return 结果
+     */
+    public int deleteDiagnoseResultById(Long id);
+}

+ 61 - 0
PHM-admin/phm-manage/src/main/java/com/phm/manage/service/IForecastResultService.java

@@ -0,0 +1,61 @@
+package com.phm.manage.service;
+
+import com.phm.manage.domain.ForecastResult;
+
+import java.util.List;
+
+/**
+ * 预测结果Service接口
+ *
+ * @author phm
+ * @date 2023-08-31
+ */
+public interface IForecastResultService {
+    /**
+     * 查询预测结果
+     *
+     * @param id 预测结果主键
+     * @return 预测结果
+     */
+    public ForecastResult selectForecastResultById(Long id);
+
+    /**
+     * 查询预测结果列表
+     *
+     * @param forecastResult 预测结果
+     * @return 预测结果集合
+     */
+    public List<ForecastResult> selectForecastResultList(ForecastResult forecastResult);
+
+    /**
+     * 新增预测结果
+     *
+     * @param forecastResult 预测结果
+     * @return 结果
+     */
+    public int insertForecastResult(ForecastResult forecastResult);
+
+    /**
+     * 修改预测结果
+     *
+     * @param forecastResult 预测结果
+     * @return 结果
+     */
+    public int updateForecastResult(ForecastResult forecastResult);
+
+    /**
+     * 批量删除预测结果
+     *
+     * @param ids 需要删除的预测结果主键集合
+     * @return 结果
+     */
+    public int deleteForecastResultByIds(Long[] ids);
+
+    /**
+     * 删除预测结果信息
+     *
+     * @param id 预测结果主键
+     * @return 结果
+     */
+    public int deleteForecastResultById(Long id);
+}

+ 61 - 0
PHM-admin/phm-manage/src/main/java/com/phm/manage/service/IOrderInfoService.java

@@ -0,0 +1,61 @@
+package com.phm.manage.service;
+
+import com.phm.manage.domain.OrderInfo;
+
+import java.util.List;
+
+/**
+ * 系统指令信息Service接口
+ *
+ * @author phm
+ * @date 2023-08-31
+ */
+public interface IOrderInfoService {
+    /**
+     * 查询系统指令信息
+     *
+     * @param id 系统指令信息主键
+     * @return 系统指令信息
+     */
+    public OrderInfo selectOrderInfoById(Long id);
+
+    /**
+     * 查询系统指令信息列表
+     *
+     * @param orderInfo 系统指令信息
+     * @return 系统指令信息集合
+     */
+    public List<OrderInfo> selectOrderInfoList(OrderInfo orderInfo);
+
+    /**
+     * 新增系统指令信息
+     *
+     * @param orderInfo 系统指令信息
+     * @return 结果
+     */
+    public int insertOrderInfo(OrderInfo orderInfo);
+
+    /**
+     * 修改系统指令信息
+     *
+     * @param orderInfo 系统指令信息
+     * @return 结果
+     */
+    public int updateOrderInfo(OrderInfo orderInfo);
+
+    /**
+     * 批量删除系统指令信息
+     *
+     * @param ids 需要删除的系统指令信息主键集合
+     * @return 结果
+     */
+    public int deleteOrderInfoByIds(Long[] ids);
+
+    /**
+     * 删除系统指令信息信息
+     *
+     * @param id 系统指令信息主键
+     * @return 结果
+     */
+    public int deleteOrderInfoById(Long id);
+}

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

@@ -8,7 +8,7 @@ import java.util.List;
  * 产品树信息Service接口
  *
  * @author phm
- * @date 2023-08-22
+ * @date 2023-08-31
  */
 public interface IProductService {
     /**

+ 4 - 1
PHM-admin/phm-manage/src/main/java/com/phm/manage/service/impl/AnalyzeCourseLogServiceImpl.java

@@ -1,5 +1,6 @@
 package com.phm.manage.service.impl;
 
+import com.phm.common.utils.DateUtils;
 import com.phm.manage.domain.AnalyzeCourseLog;
 import com.phm.manage.mapper.AnalyzeCourseLogMapper;
 import com.phm.manage.service.IAnalyzeCourseLogService;
@@ -12,7 +13,7 @@ import java.util.List;
  * 分析过程日志Service业务层处理
  *
  * @author phm
- * @date 2023-08-22
+ * @date 2023-08-31
  */
 @Service
 public class AnalyzeCourseLogServiceImpl implements IAnalyzeCourseLogService {
@@ -49,6 +50,7 @@ public class AnalyzeCourseLogServiceImpl implements IAnalyzeCourseLogService {
      */
     @Override
     public int insertAnalyzeCourseLog(AnalyzeCourseLog analyzeCourseLog) {
+        analyzeCourseLog.setCreateTime(DateUtils.getNowDate());
         return analyzeCourseLogMapper.insertAnalyzeCourseLog(analyzeCourseLog);
     }
 
@@ -60,6 +62,7 @@ public class AnalyzeCourseLogServiceImpl implements IAnalyzeCourseLogService {
      */
     @Override
     public int updateAnalyzeCourseLog(AnalyzeCourseLog analyzeCourseLog) {
+        analyzeCourseLog.setUpdateTime(DateUtils.getNowDate());
         return analyzeCourseLogMapper.updateAnalyzeCourseLog(analyzeCourseLog);
     }
 

+ 90 - 0
PHM-admin/phm-manage/src/main/java/com/phm/manage/service/impl/DiagnoseResultServiceImpl.java

@@ -0,0 +1,90 @@
+package com.phm.manage.service.impl;
+
+import com.phm.common.utils.DateUtils;
+import com.phm.manage.domain.DiagnoseResult;
+import com.phm.manage.mapper.DiagnoseResultMapper;
+import com.phm.manage.service.IDiagnoseResultService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * 诊断结果Service业务层处理
+ *
+ * @author phm
+ * @date 2023-08-31
+ */
+@Service
+public class DiagnoseResultServiceImpl implements IDiagnoseResultService {
+    @Autowired
+    private DiagnoseResultMapper diagnoseResultMapper;
+
+    /**
+     * 查询诊断结果
+     *
+     * @param id 诊断结果主键
+     * @return 诊断结果
+     */
+    @Override
+    public DiagnoseResult selectDiagnoseResultById(Long id) {
+        return diagnoseResultMapper.selectDiagnoseResultById(id);
+    }
+
+    /**
+     * 查询诊断结果列表
+     *
+     * @param diagnoseResult 诊断结果
+     * @return 诊断结果
+     */
+    @Override
+    public List<DiagnoseResult> selectDiagnoseResultList(DiagnoseResult diagnoseResult) {
+        return diagnoseResultMapper.selectDiagnoseResultList(diagnoseResult);
+    }
+
+    /**
+     * 新增诊断结果
+     *
+     * @param diagnoseResult 诊断结果
+     * @return 结果
+     */
+    @Override
+    public int insertDiagnoseResult(DiagnoseResult diagnoseResult) {
+        diagnoseResult.setCreateTime(DateUtils.getNowDate());
+        return diagnoseResultMapper.insertDiagnoseResult(diagnoseResult);
+    }
+
+    /**
+     * 修改诊断结果
+     *
+     * @param diagnoseResult 诊断结果
+     * @return 结果
+     */
+    @Override
+    public int updateDiagnoseResult(DiagnoseResult diagnoseResult) {
+        diagnoseResult.setUpdateTime(DateUtils.getNowDate());
+        return diagnoseResultMapper.updateDiagnoseResult(diagnoseResult);
+    }
+
+    /**
+     * 批量删除诊断结果
+     *
+     * @param ids 需要删除的诊断结果主键
+     * @return 结果
+     */
+    @Override
+    public int deleteDiagnoseResultByIds(Long[] ids) {
+        return diagnoseResultMapper.deleteDiagnoseResultByIds(ids);
+    }
+
+    /**
+     * 删除诊断结果信息
+     *
+     * @param id 诊断结果主键
+     * @return 结果
+     */
+    @Override
+    public int deleteDiagnoseResultById(Long id) {
+        return diagnoseResultMapper.deleteDiagnoseResultById(id);
+    }
+}

+ 90 - 0
PHM-admin/phm-manage/src/main/java/com/phm/manage/service/impl/ForecastResultServiceImpl.java

@@ -0,0 +1,90 @@
+package com.phm.manage.service.impl;
+
+import com.phm.common.utils.DateUtils;
+import com.phm.manage.domain.ForecastResult;
+import com.phm.manage.mapper.ForecastResultMapper;
+import com.phm.manage.service.IForecastResultService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * 预测结果Service业务层处理
+ *
+ * @author phm
+ * @date 2023-08-31
+ */
+@Service
+public class ForecastResultServiceImpl implements IForecastResultService {
+    @Autowired
+    private ForecastResultMapper forecastResultMapper;
+
+    /**
+     * 查询预测结果
+     *
+     * @param id 预测结果主键
+     * @return 预测结果
+     */
+    @Override
+    public ForecastResult selectForecastResultById(Long id) {
+        return forecastResultMapper.selectForecastResultById(id);
+    }
+
+    /**
+     * 查询预测结果列表
+     *
+     * @param forecastResult 预测结果
+     * @return 预测结果
+     */
+    @Override
+    public List<ForecastResult> selectForecastResultList(ForecastResult forecastResult) {
+        return forecastResultMapper.selectForecastResultList(forecastResult);
+    }
+
+    /**
+     * 新增预测结果
+     *
+     * @param forecastResult 预测结果
+     * @return 结果
+     */
+    @Override
+    public int insertForecastResult(ForecastResult forecastResult) {
+        forecastResult.setCreateTime(DateUtils.getNowDate());
+        return forecastResultMapper.insertForecastResult(forecastResult);
+    }
+
+    /**
+     * 修改预测结果
+     *
+     * @param forecastResult 预测结果
+     * @return 结果
+     */
+    @Override
+    public int updateForecastResult(ForecastResult forecastResult) {
+        forecastResult.setUpdateTime(DateUtils.getNowDate());
+        return forecastResultMapper.updateForecastResult(forecastResult);
+    }
+
+    /**
+     * 批量删除预测结果
+     *
+     * @param ids 需要删除的预测结果主键
+     * @return 结果
+     */
+    @Override
+    public int deleteForecastResultByIds(Long[] ids) {
+        return forecastResultMapper.deleteForecastResultByIds(ids);
+    }
+
+    /**
+     * 删除预测结果信息
+     *
+     * @param id 预测结果主键
+     * @return 结果
+     */
+    @Override
+    public int deleteForecastResultById(Long id) {
+        return forecastResultMapper.deleteForecastResultById(id);
+    }
+}

+ 90 - 0
PHM-admin/phm-manage/src/main/java/com/phm/manage/service/impl/OrderInfoServiceImpl.java

@@ -0,0 +1,90 @@
+package com.phm.manage.service.impl;
+
+import com.phm.common.utils.DateUtils;
+import com.phm.manage.domain.OrderInfo;
+import com.phm.manage.mapper.OrderInfoMapper;
+import com.phm.manage.service.IOrderInfoService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * 系统指令信息Service业务层处理
+ *
+ * @author phm
+ * @date 2023-08-31
+ */
+@Service
+public class OrderInfoServiceImpl implements IOrderInfoService {
+    @Autowired
+    private OrderInfoMapper orderInfoMapper;
+
+    /**
+     * 查询系统指令信息
+     *
+     * @param id 系统指令信息主键
+     * @return 系统指令信息
+     */
+    @Override
+    public OrderInfo selectOrderInfoById(Long id) {
+        return orderInfoMapper.selectOrderInfoById(id);
+    }
+
+    /**
+     * 查询系统指令信息列表
+     *
+     * @param orderInfo 系统指令信息
+     * @return 系统指令信息
+     */
+    @Override
+    public List<OrderInfo> selectOrderInfoList(OrderInfo orderInfo) {
+        return orderInfoMapper.selectOrderInfoList(orderInfo);
+    }
+
+    /**
+     * 新增系统指令信息
+     *
+     * @param orderInfo 系统指令信息
+     * @return 结果
+     */
+    @Override
+    public int insertOrderInfo(OrderInfo orderInfo) {
+        orderInfo.setCreateTime(DateUtils.getNowDate());
+        return orderInfoMapper.insertOrderInfo(orderInfo);
+    }
+
+    /**
+     * 修改系统指令信息
+     *
+     * @param orderInfo 系统指令信息
+     * @return 结果
+     */
+    @Override
+    public int updateOrderInfo(OrderInfo orderInfo) {
+        orderInfo.setUpdateTime(DateUtils.getNowDate());
+        return orderInfoMapper.updateOrderInfo(orderInfo);
+    }
+
+    /**
+     * 批量删除系统指令信息
+     *
+     * @param ids 需要删除的系统指令信息主键
+     * @return 结果
+     */
+    @Override
+    public int deleteOrderInfoByIds(Long[] ids) {
+        return orderInfoMapper.deleteOrderInfoByIds(ids);
+    }
+
+    /**
+     * 删除系统指令信息信息
+     *
+     * @param id 系统指令信息主键
+     * @return 结果
+     */
+    @Override
+    public int deleteOrderInfoById(Long id) {
+        return orderInfoMapper.deleteOrderInfoById(id);
+    }
+}

+ 4 - 1
PHM-admin/phm-manage/src/main/java/com/phm/manage/service/impl/ProductServiceImpl.java

@@ -1,5 +1,6 @@
 package com.phm.manage.service.impl;
 
+import com.phm.common.utils.DateUtils;
 import com.phm.manage.domain.Product;
 import com.phm.manage.mapper.ProductMapper;
 import com.phm.manage.service.IProductService;
@@ -12,7 +13,7 @@ import java.util.List;
  * 产品树信息Service业务层处理
  *
  * @author phm
- * @date 2023-08-22
+ * @date 2023-08-31
  */
 @Service
 public class ProductServiceImpl implements IProductService {
@@ -49,6 +50,7 @@ public class ProductServiceImpl implements IProductService {
      */
     @Override
     public int insertProduct(Product product) {
+        product.setCreateTime(DateUtils.getNowDate());
         return productMapper.insertProduct(product);
     }
 
@@ -60,6 +62,7 @@ public class ProductServiceImpl implements IProductService {
      */
     @Override
     public int updateProduct(Product product) {
+        product.setUpdateTime(DateUtils.getNowDate());
         return productMapper.updateProduct(product);
     }
 

+ 0 - 5
PHM-admin/phm-manage/src/main/resources/mapper/manage/AnalyzeCourseLogMapper.xml

@@ -28,11 +28,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="moduleType != null  and moduleType != ''"> and module_type = #{moduleType}</if>
             <if test="courseContent != null  and courseContent != ''"> and course_content = #{courseContent}</if>
             <if test="status != null  and status != ''"> and status = #{status}</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>
     

+ 100 - 0
PHM-admin/phm-manage/src/main/resources/mapper/manage/DiagnoseResultMapper.xml

@@ -0,0 +1,100 @@
+<?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.DiagnoseResultMapper">
+    
+    <resultMap type="DiagnoseResult" id="DiagnoseResultResult">
+        <result property="id"    column="id"    />
+        <result property="faultMode"    column="fault_mode"    />
+        <result property="faultObject"    column="fault_object"    />
+        <result property="faultCode"    column="fault_code"    />
+        <result property="faultSource"    column="fault_source"    />
+        <result property="analysisTime"    column="analysis_time"    />
+        <result property="comment"    column="comment"    />
+        <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="selectDiagnoseResultVo">
+        select id, fault_mode, fault_object, fault_code, fault_source, analysis_time, comment, is_delete, create_by, create_time, update_by, update_time from phm_diagnose_result
+    </sql>
+
+    <select id="selectDiagnoseResultList" parameterType="DiagnoseResult" resultMap="DiagnoseResultResult">
+        <include refid="selectDiagnoseResultVo"/>
+        <where>  
+            <if test="faultMode != null  and faultMode != ''"> and fault_mode = #{faultMode}</if>
+            <if test="faultObject != null  and faultObject != ''"> and fault_object = #{faultObject}</if>
+            <if test="faultCode != null  and faultCode != ''"> and fault_code = #{faultCode}</if>
+            <if test="faultSource != null  and faultSource != ''"> and fault_source = #{faultSource}</if>
+            <if test="analysisTime != null "> and analysis_time = #{analysisTime}</if>
+        </where>
+    </select>
+    
+    <select id="selectDiagnoseResultById" parameterType="Long" resultMap="DiagnoseResultResult">
+        <include refid="selectDiagnoseResultVo"/>
+        where id = #{id}
+    </select>
+        
+    <insert id="insertDiagnoseResult" parameterType="DiagnoseResult" useGeneratedKeys="true" keyProperty="id">
+        insert into phm_diagnose_result
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="faultMode != null">fault_mode,</if>
+            <if test="faultObject != null">fault_object,</if>
+            <if test="faultCode != null">fault_code,</if>
+            <if test="faultSource != null">fault_source,</if>
+            <if test="analysisTime != null">analysis_time,</if>
+            <if test="comment != null">comment,</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="faultMode != null">#{faultMode},</if>
+            <if test="faultObject != null">#{faultObject},</if>
+            <if test="faultCode != null">#{faultCode},</if>
+            <if test="faultSource != null">#{faultSource},</if>
+            <if test="analysisTime != null">#{analysisTime},</if>
+            <if test="comment != null">#{comment},</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="updateDiagnoseResult" parameterType="DiagnoseResult">
+        update phm_diagnose_result
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="faultMode != null">fault_mode = #{faultMode},</if>
+            <if test="faultObject != null">fault_object = #{faultObject},</if>
+            <if test="faultCode != null">fault_code = #{faultCode},</if>
+            <if test="faultSource != null">fault_source = #{faultSource},</if>
+            <if test="analysisTime != null">analysis_time = #{analysisTime},</if>
+            <if test="comment != null">comment = #{comment},</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="deleteDiagnoseResultById" parameterType="Long">
+        delete from phm_diagnose_result where id = #{id}
+    </delete>
+
+    <delete id="deleteDiagnoseResultByIds" parameterType="String">
+        delete from phm_diagnose_result where id in 
+        <foreach item="id" collection="array" open="(" separator="," close=")">
+            #{id}
+        </foreach>
+    </delete>
+</mapper>

+ 100 - 0
PHM-admin/phm-manage/src/main/resources/mapper/manage/ForecastResultMapper.xml

@@ -0,0 +1,100 @@
+<?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.ForecastResultMapper">
+    
+    <resultMap type="ForecastResult" id="ForecastResultResult">
+        <result property="id"    column="id"    />
+        <result property="unitName"    column="unit_name"    />
+        <result property="studyObject"    column="study_object"    />
+        <result property="snsCode"    column="sns_code"    />
+        <result property="forecastFault"    column="forecast_fault"    />
+        <result property="analysisTime"    column="analysis_time"    />
+        <result property="comment"    column="comment"    />
+        <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="selectForecastResultVo">
+        select id, unit_name, study_object, sns_code, forecast_fault, analysis_time, comment, is_delete, create_by, create_time, update_by, update_time from phm_forecast_result
+    </sql>
+
+    <select id="selectForecastResultList" parameterType="ForecastResult" resultMap="ForecastResultResult">
+        <include refid="selectForecastResultVo"/>
+        <where>  
+            <if test="unitName != null  and unitName != ''"> and unit_name like concat('%', #{unitName}, '%')</if>
+            <if test="studyObject != null  and studyObject != ''"> and study_object = #{studyObject}</if>
+            <if test="snsCode != null  and snsCode != ''"> and sns_code = #{snsCode}</if>
+            <if test="forecastFault != null  and forecastFault != ''"> and forecast_fault = #{forecastFault}</if>
+            <if test="analysisTime != null "> and analysis_time = #{analysisTime}</if>
+        </where>
+    </select>
+    
+    <select id="selectForecastResultById" parameterType="Long" resultMap="ForecastResultResult">
+        <include refid="selectForecastResultVo"/>
+        where id = #{id}
+    </select>
+        
+    <insert id="insertForecastResult" parameterType="ForecastResult" useGeneratedKeys="true" keyProperty="id">
+        insert into phm_forecast_result
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="unitName != null">unit_name,</if>
+            <if test="studyObject != null">study_object,</if>
+            <if test="snsCode != null">sns_code,</if>
+            <if test="forecastFault != null">forecast_fault,</if>
+            <if test="analysisTime != null">analysis_time,</if>
+            <if test="comment != null">comment,</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="unitName != null">#{unitName},</if>
+            <if test="studyObject != null">#{studyObject},</if>
+            <if test="snsCode != null">#{snsCode},</if>
+            <if test="forecastFault != null">#{forecastFault},</if>
+            <if test="analysisTime != null">#{analysisTime},</if>
+            <if test="comment != null">#{comment},</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="updateForecastResult" parameterType="ForecastResult">
+        update phm_forecast_result
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="unitName != null">unit_name = #{unitName},</if>
+            <if test="studyObject != null">study_object = #{studyObject},</if>
+            <if test="snsCode != null">sns_code = #{snsCode},</if>
+            <if test="forecastFault != null">forecast_fault = #{forecastFault},</if>
+            <if test="analysisTime != null">analysis_time = #{analysisTime},</if>
+            <if test="comment != null">comment = #{comment},</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="deleteForecastResultById" parameterType="Long">
+        delete from phm_forecast_result where id = #{id}
+    </delete>
+
+    <delete id="deleteForecastResultByIds" parameterType="String">
+        delete from phm_forecast_result where id in 
+        <foreach item="id" collection="array" open="(" separator="," close=")">
+            #{id}
+        </foreach>
+    </delete>
+</mapper>

+ 86 - 0
PHM-admin/phm-manage/src/main/resources/mapper/manage/OrderInfoMapper.xml

@@ -0,0 +1,86 @@
+<?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.OrderInfoMapper">
+    
+    <resultMap type="OrderInfo" id="OrderInfoResult">
+        <result property="id"    column="id"    />
+        <result property="orderName"    column="order_name"    />
+        <result property="orderType"    column="order_type"    />
+        <result property="content"    column="content"    />
+        <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="selectOrderInfoVo">
+        select id, order_name, order_type, content, is_delete, create_by, create_time, update_by, update_time from phm_order_info
+    </sql>
+
+    <select id="selectOrderInfoList" parameterType="OrderInfo" resultMap="OrderInfoResult">
+        <include refid="selectOrderInfoVo"/>
+        <where>  
+            <if test="orderName != null  and orderName != ''"> and order_name like concat('%', #{orderName}, '%')</if>
+            <if test="orderType != null  and orderType != ''"> and order_type = #{orderType}</if>
+            <if test="content != null  and content != ''"> and content = #{content}</if>
+        </where>
+    </select>
+    
+    <select id="selectOrderInfoById" parameterType="Long" resultMap="OrderInfoResult">
+        <include refid="selectOrderInfoVo"/>
+        where id = #{id}
+    </select>
+        
+    <insert id="insertOrderInfo" parameterType="OrderInfo" useGeneratedKeys="true" keyProperty="id">
+        insert into phm_order_info
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="orderName != null">order_name,</if>
+            <if test="orderType != null">order_type,</if>
+            <if test="content != null">content,</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="orderName != null">#{orderName},</if>
+            <if test="orderType != null">#{orderType},</if>
+            <if test="content != null">#{content},</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="updateOrderInfo" parameterType="OrderInfo">
+        update phm_order_info
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="orderName != null">order_name = #{orderName},</if>
+            <if test="orderType != null">order_type = #{orderType},</if>
+            <if test="content != null">content = #{content},</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="deleteOrderInfoById" parameterType="Long">
+        delete from phm_order_info where id = #{id}
+    </delete>
+
+    <delete id="deleteOrderInfoByIds" parameterType="String">
+        delete from phm_order_info where id in 
+        <foreach item="id" collection="array" open="(" separator="," close=")">
+            #{id}
+        </foreach>
+    </delete>
+</mapper>

+ 3 - 8
PHM-admin/phm-manage/src/main/resources/mapper/manage/ProductMapper.xml

@@ -26,11 +26,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="parentId != null "> and parent_id = #{parentId}</if>
             <if test="name != null  and name != ''"> and name like concat('%', #{name}, '%')</if>
             <if test="snsId != null  and snsId != ''"> and sns_id = #{snsId}</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>
     
@@ -43,7 +38,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         insert into phm_product
         <trim prefix="(" suffix=")" suffixOverrides=",">
             <if test="parentId != null">parent_id,</if>
-            <if test="name != null and name != ''">name,</if>
+            <if test="name != null">name,</if>
             <if test="snsId != null">sns_id,</if>
             <if test="isDelete != null">is_delete,</if>
             <if test="createBy != null">create_by,</if>
@@ -53,7 +48,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
          </trim>
         <trim prefix="values (" suffix=")" suffixOverrides=",">
             <if test="parentId != null">#{parentId},</if>
-            <if test="name != null and name != ''">#{name},</if>
+            <if test="name != null">#{name},</if>
             <if test="snsId != null">#{snsId},</if>
             <if test="isDelete != null">#{isDelete},</if>
             <if test="createBy != null">#{createBy},</if>
@@ -67,7 +62,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         update phm_product
         <trim prefix="SET" suffixOverrides=",">
             <if test="parentId != null">parent_id = #{parentId},</if>
-            <if test="name != null and name != ''">name = #{name},</if>
+            <if test="name != null">name = #{name},</if>
             <if test="snsId != null">sns_id = #{snsId},</if>
             <if test="isDelete != null">is_delete = #{isDelete},</if>
             <if test="createBy != null">create_by = #{createBy},</if>

+ 3 - 4
PHM-web/package.json

@@ -5,7 +5,7 @@
   "author": "phm",
   "license": "MIT",
   "scripts": {
-    "dev": "vue-cli-service serve",
+    "serve": "vue-cli-service serve",
     "build:prod": "vue-cli-service build",
     "build:stage": "vue-cli-service build --mode staging",
     "preview": "node build/index.js --preview",
@@ -40,7 +40,6 @@
     "axios": "0.24.0",
     "clipboard": "2.0.8",
     "core-js": "3.25.3",
-    "default-passive-events": "^2.0.0",
     "echarts": "^5.4.0",
     "element-ui": "2.15.13",
     "file-saver": "2.0.5",
@@ -72,7 +71,7 @@
     "connect": "3.6.6",
     "eslint": "7.15.0",
     "eslint-plugin-vue": "7.2.0",
-        "lint-staged": "10.5.3",
+    "lint-staged": "10.5.3",
     "runjs": "4.4.2",
     "sass": "1.32.13",
     "sass-loader": "10.1.1",
@@ -88,4 +87,4 @@
     "> 1%",
     "last 2 versions"
   ]
-}
+}

+ 0 - 6
PHM-web/public/index.html

@@ -178,12 +178,6 @@
       text-overflow: ellipsis;
       white-space: nowrap;
     }
-    /* 修改页面下的 */
-    .el-dialog{
-      .el-form-item__content{
-        margin-left: 100px !important;
-      }
-    }
 
     #loader-wrapper .load_title {
       font-family: 'Open Sans';

+ 44 - 0
PHM-web/src/api/manage/diagnoseResult.js

@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询诊断结果列表
+export function listDiagnoseResult(query) {
+  return request({
+    url: '/manage/diagnoseResult/list',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询诊断结果详细
+export function getDiagnoseResult(id) {
+  return request({
+    url: '/manage/diagnoseResult/' + id,
+    method: 'get'
+  })
+}
+
+// 新增诊断结果
+export function addDiagnoseResult(data) {
+  return request({
+    url: '/manage/diagnoseResult',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改诊断结果
+export function updateDiagnoseResult(data) {
+  return request({
+    url: '/manage/diagnoseResult',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除诊断结果
+export function delDiagnoseResult(id) {
+  return request({
+    url: '/manage/diagnoseResult/' + id,
+    method: 'delete'
+  })
+}

+ 44 - 0
PHM-web/src/api/manage/forecastResult.js

@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询预测结果列表
+export function listForecastResult(query) {
+  return request({
+    url: '/manage/forecastResult/list',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询预测结果详细
+export function getForecastResult(id) {
+  return request({
+    url: '/manage/forecastResult/' + id,
+    method: 'get'
+  })
+}
+
+// 新增预测结果
+export function addForecastResult(data) {
+  return request({
+    url: '/manage/forecastResult',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改预测结果
+export function updateForecastResult(data) {
+  return request({
+    url: '/manage/forecastResult',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除预测结果
+export function delForecastResult(id) {
+  return request({
+    url: '/manage/forecastResult/' + id,
+    method: 'delete'
+  })
+}

+ 44 - 0
PHM-web/src/api/manage/orderInfo.js

@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询系统指令信息列表
+export function listOrderInfo(query) {
+  return request({
+    url: '/manage/orderInfo/list',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询系统指令信息详细
+export function getOrderInfo(id) {
+  return request({
+    url: '/manage/orderInfo/' + id,
+    method: 'get'
+  })
+}
+
+// 新增系统指令信息
+export function addOrderInfo(data) {
+  return request({
+    url: '/manage/orderInfo',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改系统指令信息
+export function updateOrderInfo(data) {
+  return request({
+    url: '/manage/orderInfo',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除系统指令信息
+export function delOrderInfo(id) {
+  return request({
+    url: '/manage/orderInfo/' + id,
+    method: 'delete'
+  })
+}

+ 0 - 2
PHM-web/src/main.js

@@ -37,8 +37,6 @@ import DictTag from '@/components/DictTag'
 import VueMeta from 'vue-meta'
 // 字典数据组件
 import DictData from '@/components/DictData'
-//引入插件解决Chrome捕获事件机制出现的问题警告
-import 'default-passive-events'
 
 // 全局方法挂载
 Vue.prototype.getDicts = getDicts

+ 2 - 5
PHM-web/src/views/manage/aeroplane/index.vue

@@ -71,7 +71,7 @@
 
     <el-table v-loading="loading" :data="aeroplaneList" @selection-change="handleSelectionChange">
       <el-table-column type="selection" width="55" align="center" />
-      <el-table-column label="唯一ID" align="center" prop="id" />
+      
       <el-table-column label="名称" align="center" prop="name" />
       <el-table-column label="型号" align="center" prop="modelNumber" />
       <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
@@ -104,7 +104,7 @@
 
     <!-- 添加或修改单机信息对话框 -->
     <el-dialog :title="title" :visible.sync="open" :close-on-click-modal="false" width="500px" append-to-body>
-      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+      <el-form ref="form" :model="form" :rules="rules" label-width="100px">
         <el-form-item label="名称" prop="name">
           <el-input v-model="form.name" placeholder="请输入名称" />
         </el-form-item>
@@ -156,9 +156,6 @@ export default {
       form: {},
       // 表单校验
       rules: {
-        isDelete: [
-          { required: true, message: "数据是否删除不能为空", trigger: "blur" }
-        ],
       }
     };
   },

+ 2 - 5
PHM-web/src/views/manage/afterAnalysisResult/index.vue

@@ -56,7 +56,7 @@
 
     <el-table v-loading="loading" :data="afterAnalysisResultList" @selection-change="handleSelectionChange">
       <el-table-column type="selection" width="55" align="center" />
-      <el-table-column label="唯一ID" align="center" prop="id" />
+      
        
       <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
         <template slot-scope="scope">
@@ -88,7 +88,7 @@
 
     <!-- 添加或修改维修测试控制解析后数据对话框 -->
     <el-dialog :title="title" :visible.sync="open" :close-on-click-modal="false" width="500px" append-to-body>
-      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+      <el-form ref="form" :model="form" :rules="rules" label-width="100px">
           
       </el-form>
       <div slot="footer" class="dialog-footer">
@@ -134,9 +134,6 @@ export default {
       form: {},
       // 表单校验
       rules: {
-        isDelete: [
-          { required: true, message: "数据是否删除不能为空", trigger: "blur" }
-        ],
       }
     };
   },

+ 10 - 12
PHM-web/src/views/manage/analyzeCourseLog/index.vue

@@ -1,6 +1,6 @@
 <template>
   <div class="app-container">
-    <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch">
+    <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
       <el-form-item label="模块功能名称" prop="moduleName">
         <el-input
           v-model="queryParams.moduleName"
@@ -9,7 +9,6 @@
           @keyup.enter.native="handleQuery"
         />
       </el-form-item>
-       
       <el-form-item>
         <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
         <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
@@ -64,7 +63,7 @@
 
     <el-table v-loading="loading" :data="analyzeCourseLogList" @selection-change="handleSelectionChange">
       <el-table-column type="selection" width="55" align="center" />
-      <el-table-column label="唯一ID" align="center" prop="id" />
+      
       <el-table-column label="模块功能名称" align="center" prop="moduleName" />
       <el-table-column label="模块功能类型" align="center" prop="moduleType" />
       <el-table-column label="过程日志" align="center" prop="courseContent" />
@@ -76,14 +75,14 @@
             type="text"
             icon="el-icon-edit"
             @click="handleUpdate(scope.row)"
-            v-hasPermi="['manage:afterAnalysisResult:edit']"
+            v-hasPermi="['manage:analyzeCourseLog:edit']"
           >修改</el-button>
           <el-button
             size="mini"
             type="text"
             icon="el-icon-delete"
             @click="handleDelete(scope.row)"
-            v-hasPermi="['manage:afterAnalysisResult:remove']"
+            v-hasPermi="['manage:analyzeCourseLog:remove']"
           >删除</el-button>
         </template>
       </el-table-column>
@@ -99,14 +98,13 @@
 
     <!-- 添加或修改分析过程日志对话框 -->
     <el-dialog :title="title" :visible.sync="open" :close-on-click-modal="false" width="500px" append-to-body>
-      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+      <el-form ref="form" :model="form" :rules="rules" label-width="100px">
         <el-form-item label="模块功能名称" prop="moduleName">
           <el-input v-model="form.moduleName" placeholder="请输入模块功能名称" />
         </el-form-item>
         <el-form-item label="过程日志">
           <editor v-model="form.courseContent" :min-height="192"/>
         </el-form-item>
-          
       </el-form>
       <div slot="footer" class="dialog-footer">
         <el-button type="primary" @click="submitForm">确 定</el-button>
@@ -149,15 +147,11 @@ export default {
         moduleType: null,
         courseContent: null,
         status: null,
-        
       },
       // 表单参数
       form: {},
       // 表单校验
       rules: {
-        isDelete: [
-          { required: true, message: "数据是否删除不能为空", trigger: "blur" }
-        ],
       }
     };
   },
@@ -187,7 +181,11 @@ export default {
         moduleType: null,
         courseContent: null,
         status: null,
-         
+        isDelete: null,
+        createBy: null,
+        createTime: null,
+        updateBy: null,
+        updateTime: null
       };
       this.resetForm("form");
     },

+ 2 - 5
PHM-web/src/views/manage/analyzeDownLog/index.vue

@@ -80,7 +80,7 @@
 
     <el-table v-loading="loading" :data="analyzeDownLogList" @selection-change="handleSelectionChange">
       <el-table-column type="selection" width="55" align="center" />
-      <el-table-column label="唯一ID" align="center" prop="id" />
+      
       <el-table-column label="文件名称" align="center" prop="name" />
       <el-table-column label="保存路径" align="center" prop="path" />
       <el-table-column label="状态数据" align="center" prop="status" />
@@ -116,7 +116,7 @@
 
     <!-- 添加或修改数据解析下载日志对话框 -->
     <el-dialog :title="title" :visible.sync="open" :close-on-click-modal="false" width="500px" append-to-body>
-      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+      <el-form ref="form" :model="form" :rules="rules" label-width="100px">
         <el-form-item label="文件名称" prop="name">
           <el-input v-model="form.name" placeholder="请输入文件名称" />
         </el-form-item>
@@ -175,9 +175,6 @@ export default {
       form: {},
       // 表单校验
       rules: {
-        isDelete: [
-          { required: true, message: "数据是否删除不能为空", trigger: "blur" }
-        ],
       }
     };
   },

+ 1 - 4
PHM-web/src/views/manage/analyzeResult/index.vue

@@ -55,7 +55,7 @@
 
     <!-- 添加或修改数据解析结果对话框 -->
     <el-dialog :title="title" :visible.sync="open" :close-on-click-modal="false" width="500px" append-to-body>
-      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+      <el-form ref="form" :model="form" :rules="rules" label-width="100px">
         <el-form-item label="文件名" prop="name">
           <el-select v-model="form.name" placeholder="请选择要解析的数据" style="width:100%">
             <el-option
@@ -121,9 +121,6 @@ export default {
       form: {},
       // 表单校验
       rules: {
-        isDelete: [
-          { required: true, message: "数据是否删除不能为空", trigger: "blur" }
-        ],
       }
     };
   },

+ 1 - 1
PHM-web/src/views/manage/dataDown/index.vue

@@ -27,7 +27,7 @@
 
     <!-- 添加或修改数据下载对话框 -->
     <el-dialog :title="title" :visible.sync="open" :close-on-click-modal="false" width="500px" append-to-body>
-      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+      <el-form ref="form" :model="form" :rules="rules" label-width="100px">
         <el-form-item label="指令" prop="order">
           <el-select v-model="form.order" placeholder="请选择指令" style="width:100%">
             <el-option

+ 2 - 5
PHM-web/src/views/manage/deepIsolationModel/index.vue

@@ -79,7 +79,7 @@
 
     <el-table v-loading="loading" :data="deepIsolationModelList" @selection-change="handleSelectionChange">
       <el-table-column type="selection" width="55" align="center" />
-      <el-table-column label="唯一ID" align="center" prop="id" />
+      
       <el-table-column label="维护代码" align="center" prop="code" />
       <el-table-column label="故障方程" align="center" prop="faultEquation" />
       <el-table-column label="故障LRU" align="center" prop="faultLru" />
@@ -113,7 +113,7 @@
 
     <!-- 添加或修改深度隔离模型对话框 -->
     <el-dialog :title="title" :visible.sync="open" :close-on-click-modal="false" width="500px" append-to-body>
-      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+      <el-form ref="form" :model="form" :rules="rules" label-width="100px">
         <el-form-item label="维护代码" prop="code">
           <el-input v-model="form.code" placeholder="请输入维护代码" />
         </el-form-item>
@@ -169,9 +169,6 @@ export default {
       form: {},
       // 表单校验
       rules: {
-        isDelete: [
-          { required: true, message: "数据是否删除不能为空", trigger: "blur" }
-        ],
       }
     };
   },

+ 2 - 5
PHM-web/src/views/manage/deriveParameter/index.vue

@@ -71,7 +71,7 @@
 
     <el-table v-loading="loading" :data="deriveParameterList" @selection-change="handleSelectionChange">
       <el-table-column type="selection" width="55" align="center" />
-      <el-table-column label="唯一ID" align="center" prop="id" />
+      
       <el-table-column label="参数名称" align="center" prop="name" />
       <el-table-column label="表达式文件" align="center" prop="expression" />
        
@@ -105,7 +105,7 @@
 
     <!-- 添加或修改衍生参数信息对话框 -->
     <el-dialog :title="title" :visible.sync="open" :close-on-click-modal="false" width="500px" append-to-body>
-      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+      <el-form ref="form" :model="form" :rules="rules" label-width="100px">
         <el-form-item label="参数名称" prop="name">
           <el-input v-model="form.name" placeholder="请输入参数名称" />
         </el-form-item>
@@ -158,9 +158,6 @@ export default {
       form: {},
       // 表单校验
       rules: {
-        isDelete: [
-          { required: true, message: "数据是否删除不能为空", trigger: "blur" }
-        ],
       }
     };
   },

+ 320 - 0
PHM-web/src/views/manage/diagnoseResult/index.vue

@@ -0,0 +1,320 @@
+<template>
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
+      <el-form-item label="故障模式" prop="faultMode">
+        <el-input
+          v-model="queryParams.faultMode"
+          placeholder="请输入故障模式"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="故障对象" prop="faultObject">
+        <el-input
+          v-model="queryParams.faultObject"
+          placeholder="请输入故障对象"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="故障编码" prop="faultCode">
+        <el-input
+          v-model="queryParams.faultCode"
+          placeholder="请输入故障编码"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="故障源" prop="faultSource">
+        <el-input
+          v-model="queryParams.faultSource"
+          placeholder="请输入故障源"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="分析时间" prop="analysisTime">
+        <el-date-picker clearable
+          v-model="queryParams.analysisTime"
+          type="date"
+          value-format="yyyy-MM-dd"
+          placeholder="请选择分析时间">
+        </el-date-picker>
+      </el-form-item>
+      <el-form-item>
+        <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
+        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
+      </el-form-item>
+    </el-form>
+
+    <el-row :gutter="10" class="mb8">
+      <el-col :span="1.5">
+        <el-button
+          type="primary"
+          plain
+          icon="el-icon-plus"
+          size="mini"
+          @click="handleAdd"
+          v-hasPermi="['manage:diagnoseResult:add']"
+        >新增</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="success"
+          plain
+          icon="el-icon-edit"
+          size="mini"
+          :disabled="single"
+          @click="handleUpdate"
+          v-hasPermi="['manage:diagnoseResult:edit']"
+        >修改</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="danger"
+          plain
+          icon="el-icon-delete"
+          size="mini"
+          :disabled="multiple"
+          @click="handleDelete"
+          v-hasPermi="['manage:diagnoseResult:remove']"
+        >删除</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="warning"
+          plain
+          icon="el-icon-download"
+          size="mini"
+          @click="handleExport"
+          v-hasPermi="['manage:diagnoseResult:export']"
+        >导出</el-button>
+      </el-col>
+      <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+    </el-row>
+
+    <el-table v-loading="loading" :data="diagnoseResultList" @selection-change="handleSelectionChange">
+      <el-table-column type="selection" width="55" align="center" />
+      
+      <el-table-column label="故障模式" align="center" prop="faultMode" />
+      <el-table-column label="故障对象" align="center" prop="faultObject" />
+      <el-table-column label="故障编码" align="center" prop="faultCode" />
+      <el-table-column label="故障源" align="center" prop="faultSource" />
+      <el-table-column label="分析时间" align="center" prop="analysisTime" width="180">
+        <template slot-scope="scope">
+          <span>{{ parseTime(scope.row.analysisTime, '{y}-{m}-{d}') }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="批注注解" align="center" prop="comment" />
+      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
+        <template slot-scope="scope">
+          <el-button
+            size="mini"
+            type="text"
+            icon="el-icon-edit"
+            @click="handleUpdate(scope.row)"
+            v-hasPermi="['manage:diagnoseResult:edit']"
+          >修改</el-button>
+          <el-button
+            size="mini"
+            type="text"
+            icon="el-icon-delete"
+            @click="handleDelete(scope.row)"
+            v-hasPermi="['manage:diagnoseResult:remove']"
+          >删除</el-button>
+        </template>
+      </el-table-column>
+    </el-table>
+    
+    <pagination
+      v-show="total>0"
+      :total="total"
+      :page.sync="queryParams.pageNum"
+      :limit.sync="queryParams.pageSize"
+      @pagination="getList"
+    />
+
+    <!-- 添加或修改诊断结果对话框 -->
+    <el-dialog :title="title" :visible.sync="open" :close-on-click-modal="false" width="500px" append-to-body>
+      <el-form ref="form" :model="form" :rules="rules" label-width="100px">
+        <el-form-item label="故障模式" prop="faultMode">
+          <el-input v-model="form.faultMode" placeholder="请输入故障模式" />
+        </el-form-item>
+        <el-form-item label="故障对象" prop="faultObject">
+          <el-input v-model="form.faultObject" placeholder="请输入故障对象" />
+        </el-form-item>
+        <el-form-item label="故障编码" prop="faultCode">
+          <el-input v-model="form.faultCode" placeholder="请输入故障编码" />
+        </el-form-item>
+        <el-form-item label="故障源" prop="faultSource">
+          <el-input v-model="form.faultSource" placeholder="请输入故障源" />
+        </el-form-item>
+        <el-form-item label="分析时间" prop="analysisTime">
+          <el-date-picker clearable
+            v-model="form.analysisTime"
+            type="date"
+            value-format="yyyy-MM-dd"
+            placeholder="请选择分析时间">
+          </el-date-picker>
+        </el-form-item>
+        <el-form-item label="批注注解" prop="comment">
+          <el-input v-model="form.comment" type="textarea" placeholder="请输入内容" />
+        </el-form-item>
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="submitForm">确 定</el-button>
+        <el-button @click="cancel">取 消</el-button>
+      </div>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+import { listDiagnoseResult, getDiagnoseResult, delDiagnoseResult, addDiagnoseResult, updateDiagnoseResult } from "@/api/manage/diagnoseResult";
+
+export default {
+  name: "DiagnoseResult",
+  data() {
+    return {
+      // 遮罩层
+      loading: true,
+      // 选中数组
+      ids: [],
+      // 非单个禁用
+      single: true,
+      // 非多个禁用
+      multiple: true,
+      // 显示搜索条件
+      showSearch: true,
+      // 总条数
+      total: 0,
+      // 诊断结果表格数据
+      diagnoseResultList: [],
+      // 弹出层标题
+      title: "",
+      // 是否显示弹出层
+      open: false,
+      // 查询参数
+      queryParams: {
+        pageNum: 1,
+        pageSize: 10,
+        faultMode: null,
+        faultObject: null,
+        faultCode: null,
+        faultSource: null,
+        analysisTime: null,
+      },
+      // 表单参数
+      form: {},
+      // 表单校验
+      rules: {
+      }
+    };
+  },
+  created() {
+    this.getList();
+  },
+  methods: {
+    /** 查询诊断结果列表 */
+    getList() {
+      this.loading = true;
+      listDiagnoseResult(this.queryParams).then(response => {
+        this.diagnoseResultList = response.rows;
+        this.total = response.total;
+        this.loading = false;
+      });
+    },
+    // 取消按钮
+    cancel() {
+      this.open = false;
+      this.reset();
+    },
+    // 表单重置
+    reset() {
+      this.form = {
+        id: null,
+        faultMode: null,
+        faultObject: null,
+        faultCode: null,
+        faultSource: null,
+        analysisTime: null,
+        comment: null,
+        isDelete: null,
+        createBy: null,
+        createTime: null,
+        updateBy: null,
+        updateTime: null
+      };
+      this.resetForm("form");
+    },
+    /** 搜索按钮操作 */
+    handleQuery() {
+      this.queryParams.pageNum = 1;
+      this.getList();
+    },
+    /** 重置按钮操作 */
+    resetQuery() {
+      this.resetForm("queryForm");
+      this.handleQuery();
+    },
+    // 多选框选中数据
+    handleSelectionChange(selection) {
+      this.ids = selection.map(item => item.id)
+      this.single = selection.length!==1
+      this.multiple = !selection.length
+    },
+    /** 新增按钮操作 */
+    handleAdd() {
+      this.reset();
+      this.open = true;
+      this.title = "添加诊断结果";
+    },
+    /** 修改按钮操作 */
+    handleUpdate(row) {
+      this.reset();
+      const id = row.id || this.ids
+      getDiagnoseResult(id).then(response => {
+        this.form = response.data;
+        this.open = true;
+        this.title = "修改诊断结果";
+      });
+    },
+    /** 提交按钮 */
+    submitForm() {
+      this.$refs["form"].validate(valid => {
+        if (valid) {
+          if (this.form.id != null) {
+            updateDiagnoseResult(this.form).then(response => {
+              this.$modal.msgSuccess("修改成功");
+              this.open = false;
+              this.getList();
+            });
+          } else {
+            addDiagnoseResult(this.form).then(response => {
+              this.$modal.msgSuccess("新增成功");
+              this.open = false;
+              this.getList();
+            });
+          }
+        }
+      });
+    },
+    /** 删除按钮操作 */
+    handleDelete(row) {
+      const ids = row.id || this.ids;
+      this.$modal.confirm('是否确认删除诊断结果编号为"' + ids + '"的数据项?').then(function() {
+        return delDiagnoseResult(ids);
+      }).then(() => {
+        this.getList();
+        this.$modal.msgSuccess("删除成功");
+      }).catch(() => {});
+    },
+    /** 导出按钮操作 */
+    handleExport() {
+      this.download('manage/diagnoseResult/export', {
+        ...this.queryParams
+      }, `diagnoseResult_${new Date().getTime()}.xlsx`)
+    }
+  }
+};
+</script>

+ 2 - 5
PHM-web/src/views/manage/externalInterfaceLog/index.vue

@@ -79,7 +79,7 @@
 
     <el-table v-loading="loading" :data="externalInterfaceLogList" @selection-change="handleSelectionChange">
       <el-table-column type="selection" width="55" align="center" />
-      <el-table-column label="唯一ID" align="center" prop="id" />
+      
       <el-table-column label="接口结果" align="center" prop="result" />
       <el-table-column label="接口名称" align="center" prop="name" />
       <el-table-column label="接口路径" align="center" prop="url" />
@@ -113,7 +113,7 @@
 
     <!-- 添加或修改外部接口日志对话框 -->
     <el-dialog :title="title" :visible.sync="open" :close-on-click-modal="false" width="500px" append-to-body>
-      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+      <el-form ref="form" :model="form" :rules="rules" label-width="100px">
         <el-form-item label="接口结果" prop="result">
           <el-input v-model="form.result" placeholder="请输入接口结果" />
         </el-form-item>
@@ -169,9 +169,6 @@ export default {
       form: {},
       // 表单校验
       rules: {
-        isDelete: [
-          { required: true, message: "数据是否删除不能为空", trigger: "blur" }
-        ],
       }
     };
   },

+ 2 - 5
PHM-web/src/views/manage/falseAlarmRestrainModel/index.vue

@@ -79,7 +79,7 @@
 
     <el-table v-loading="loading" :data="falseAlarmRestrainModelList" @selection-change="handleSelectionChange">
       <el-table-column type="selection" width="55" align="center" />
-      <el-table-column label="唯一ID" align="center" prop="id" />
+      
       <el-table-column label="故障代码" align="center" prop="code" />
       <el-table-column label="抑制判据" align="center" prop="restrainCriteria" />
       <el-table-column label="最少持续时间" align="center" prop="minDuration" />
@@ -114,7 +114,7 @@
 
     <!-- 添加或修改虚警抑制模型对话框 -->
     <el-dialog :title="title" :visible.sync="open" :close-on-click-modal="false" width="500px" append-to-body>
-      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+      <el-form ref="form" :model="form" :rules="rules" label-width="100px">
         <el-form-item label="故障代码" prop="code">
           <el-input v-model="form.code" placeholder="请输入故障代码" />
         </el-form-item>
@@ -172,9 +172,6 @@ export default {
       form: {},
       // 表单校验
       rules: {
-        isDelete: [
-          { required: true, message: "数据是否删除不能为空", trigger: "blur" }
-        ],
       }
     };
   },

+ 2 - 5
PHM-web/src/views/manage/faultAnalyzeResult/index.vue

@@ -90,7 +90,7 @@
 
     <el-table v-loading="loading" :data="faultAnalyzeResultList" @selection-change="handleSelectionChange">
       <el-table-column type="selection" width="55" align="center" />
-      <el-table-column label="唯一ID" align="center" prop="id" />
+      
       <el-table-column label="功能模块名称" align="center" prop="moduleName" />
       <el-table-column label="功能模块类型" align="center" prop="moduleType" />
       <el-table-column label="分析结果" align="center" prop="analyzeInfo" />
@@ -125,7 +125,7 @@
 
     <!-- 添加或修改故障分析结果对话框 -->
     <el-dialog :title="title" :visible.sync="open" :close-on-click-modal="false" width="500px" append-to-body>
-      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+      <el-form ref="form" :model="form" :rules="rules" label-width="100px">
         <el-form-item label="功能模块名称" prop="moduleName">
           <el-input v-model="form.moduleName" placeholder="请输入功能模块名称" />
         </el-form-item>
@@ -183,9 +183,6 @@ export default {
       form: {},
       // 表单校验
       rules: {
-        isDelete: [
-          { required: true, message: "数据是否删除不能为空", trigger: "blur" }
-        ],
       }
     };
   },

+ 2 - 2
PHM-web/src/views/manage/faultCase/index.vue

@@ -103,7 +103,7 @@
 
     <el-table v-loading="loading" :data="faultCaseList" @selection-change="handleSelectionChange">
       <el-table-column type="selection" width="55" align="center" />
-      <el-table-column label="唯一ID" align="center" prop="id" />
+      
       <el-table-column label="案例文件" align="center">
         <template slot-scope="scope">
           {{ getFileName(scope.row.caseFileName) }}
@@ -144,7 +144,7 @@
 
     <!-- 添加或修改故障案例信息对话框 -->
     <el-dialog :title="title" :visible.sync="open"  :close-on-click-modal="false" width="600px" append-to-body>
-      <el-form ref="form" :model="form" :rules="rules" label-width="80px"  :label-position="left">
+      <el-form ref="form" :model="form" :rules="rules" label-width="100px"  :label-position="left">
         <el-form-item label="案例文件" prop="caseFileName">
           <file-upload ref="fileUpload" v-model="form.caseFileName" :limit="1"></file-upload>
         </el-form-item>

+ 2 - 5
PHM-web/src/views/manage/feedbackRawData/index.vue

@@ -56,7 +56,7 @@
 
     <el-table v-loading="loading" :data="feedbackRawDataList" @selection-change="handleSelectionChange">
       <el-table-column type="selection" width="55" align="center" />
-      <el-table-column label="唯一ID" align="center" prop="id" />
+      
        
       <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
         <template slot-scope="scope">
@@ -88,7 +88,7 @@
 
     <!-- 添加或修改反馈的源数据对话框 -->
     <el-dialog :title="title" :visible.sync="open" :close-on-click-modal="false" width="500px" append-to-body>
-      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+      <el-form ref="form" :model="form" :rules="rules" label-width="100px">
           
       </el-form>
       <div slot="footer" class="dialog-footer">
@@ -134,9 +134,6 @@ export default {
       form: {},
       // 表单校验
       rules: {
-        isDelete: [
-          { required: true, message: "数据是否删除不能为空", trigger: "blur" }
-        ],
       }
     };
   },

+ 2 - 5
PHM-web/src/views/manage/fleet/index.vue

@@ -79,7 +79,7 @@
 
     <el-table v-loading="loading" :data="fleetList" @selection-change="handleSelectionChange">
       <el-table-column type="selection" width="55" align="center" />
-      <el-table-column label="唯一ID" align="center" prop="id" />
+      
       <el-table-column label="机队名称" align="center" prop="fleetName" />
       <el-table-column label="机队编号" align="center" prop="fleetCode" />
       <el-table-column label="飞机集合" align="center" prop="gather" />
@@ -113,7 +113,7 @@
 
     <!-- 添加或修改机队信息对话框 -->
     <el-dialog :title="title" :visible.sync="open" :close-on-click-modal="false" width="500px" append-to-body>
-      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+      <el-form ref="form" :model="form" :rules="rules" label-width="100px">
         <el-form-item label="机队名称" prop="fleetName">
           <el-input v-model="form.fleetName" placeholder="请输入机队名称" />
         </el-form-item>
@@ -169,9 +169,6 @@ export default {
       form: {},
       // 表单校验
       rules: {
-        isDelete: [
-          { required: true, message: "数据是否删除不能为空", trigger: "blur" }
-        ],
       }
     };
   },

+ 2 - 5
PHM-web/src/views/manage/forecastModel/index.vue

@@ -87,7 +87,7 @@
 
     <el-table v-loading="loading" :data="forecastModelList" @selection-change="handleSelectionChange">
       <el-table-column type="selection" width="55" align="center" />
-      <el-table-column label="唯一ID" align="center" prop="id" />
+      
       <el-table-column label="预测对象" align="center" prop="object" />
       <el-table-column label="预测方法" align="center" prop="method" />
       <el-table-column label="训练集范围" align="center" prop="trainsRange" />
@@ -122,7 +122,7 @@
 
     <!-- 添加或修改预测模型信息对话框 -->
     <el-dialog :title="title" :visible.sync="open" :close-on-click-modal="false" width="500px" append-to-body>
-      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+      <el-form ref="form" :model="form" :rules="rules" label-width="100px">
         <el-form-item label="预测对象" prop="object">
           <el-input v-model="form.object" placeholder="请输入预测对象" />
         </el-form-item>
@@ -182,9 +182,6 @@ export default {
       form: {},
       // 表单校验
       rules: {
-        isDelete: [
-          { required: true, message: "数据是否删除不能为空", trigger: "blur" }
-        ],
       }
     };
   },

+ 324 - 0
PHM-web/src/views/manage/forecastResult/index.vue

@@ -0,0 +1,324 @@
+<template>
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
+      <el-form-item label="部件名称" prop="unitName">
+        <el-input
+          v-model="queryParams.unitName"
+          placeholder="请输入部件名称"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="研究对象" prop="studyObject">
+        <el-input
+          v-model="queryParams.studyObject"
+          placeholder="请输入研究对象"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="SNS 编码" prop="snsCode">
+        <el-input
+          v-model="queryParams.snsCode"
+          placeholder="请输入SNS 编码"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="分析时间" prop="analysisTime">
+        <el-date-picker clearable
+          v-model="queryParams.analysisTime"
+          type="date"
+          value-format="yyyy-MM-dd"
+          placeholder="请选择分析时间">
+        </el-date-picker>
+      </el-form-item>
+      <el-form-item>
+        <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
+        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
+      </el-form-item>
+    </el-form>
+
+    <el-row :gutter="10" class="mb8">
+      <el-col :span="1.5">
+        <el-button
+          type="primary"
+          plain
+          icon="el-icon-plus"
+          size="mini"
+          @click="handleAdd"
+          v-hasPermi="['manage:forecastResult:add']"
+        >新增</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="success"
+          plain
+          icon="el-icon-edit"
+          size="mini"
+          :disabled="single"
+          @click="handleUpdate"
+          v-hasPermi="['manage:forecastResult:edit']"
+        >修改</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="danger"
+          plain
+          icon="el-icon-delete"
+          size="mini"
+          :disabled="multiple"
+          @click="handleDelete"
+          v-hasPermi="['manage:forecastResult:remove']"
+        >删除</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="warning"
+          plain
+          icon="el-icon-download"
+          size="mini"
+          @click="handleExport"
+          v-hasPermi="['manage:forecastResult:export']"
+        >导出</el-button>
+      </el-col>
+      <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+    </el-row>
+
+    <el-table v-loading="loading" :data="forecastResultList" @selection-change="handleSelectionChange">
+      <el-table-column type="selection" width="55" align="center" />
+      
+      <el-table-column label="部件名称" align="center" prop="unitName" />
+      <el-table-column label="研究对象" align="center" prop="studyObject" />
+      <el-table-column label="SNS 编码" align="center" prop="snsCode" />
+      <el-table-column label="预测故障" align="center" prop="forecastFault" />
+      <el-table-column label="分析时间" align="center" prop="analysisTime" width="180">
+        <template slot-scope="scope">
+          <span>{{ parseTime(scope.row.analysisTime, '{y}-{m}-{d}') }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="批注注解" align="center" prop="comment" />
+      <el-table-column label="创建人" align="center" prop="createBy" />
+      <el-table-column label="创建时间" align="center" prop="createTime" width="180">
+        <template slot-scope="scope">
+          <span>{{ parseTime(scope.row.createTime, '{y}-{m}-{d}') }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="更新人" align="center" prop="updateBy" />
+      <el-table-column label="更新时间" align="center" prop="updateTime" width="180">
+        <template slot-scope="scope">
+          <span>{{ parseTime(scope.row.updateTime, '{y}-{m}-{d}') }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
+        <template slot-scope="scope">
+          <el-button
+            size="mini"
+            type="text"
+            icon="el-icon-edit"
+            @click="handleUpdate(scope.row)"
+            v-hasPermi="['manage:forecastResult:edit']"
+          >修改</el-button>
+          <el-button
+            size="mini"
+            type="text"
+            icon="el-icon-delete"
+            @click="handleDelete(scope.row)"
+            v-hasPermi="['manage:forecastResult:remove']"
+          >删除</el-button>
+        </template>
+      </el-table-column>
+    </el-table>
+    
+    <pagination
+      v-show="total>0"
+      :total="total"
+      :page.sync="queryParams.pageNum"
+      :limit.sync="queryParams.pageSize"
+      @pagination="getList"
+    />
+
+    <!-- 添加或修改预测结果对话框 -->
+    <el-dialog :title="title" :visible.sync="open" :close-on-click-modal="false" width="500px" append-to-body>
+      <el-form ref="form" :model="form" :rules="rules" label-width="100px">
+        <el-form-item label="部件名称" prop="unitName">
+          <el-input v-model="form.unitName" placeholder="请输入部件名称" />
+        </el-form-item>
+        <el-form-item label="研究对象" prop="studyObject">
+          <el-input v-model="form.studyObject" placeholder="请输入研究对象" />
+        </el-form-item>
+        <el-form-item label="SNS 编码" prop="snsCode">
+          <el-input v-model="form.snsCode" placeholder="请输入SNS 编码" />
+        </el-form-item>
+        <el-form-item label="预测故障" prop="forecastFault">
+          <el-input v-model="form.forecastFault" type="textarea" placeholder="请输入内容" />
+        </el-form-item>
+        <el-form-item label="分析时间" prop="analysisTime">
+          <el-date-picker clearable
+            v-model="form.analysisTime"
+            type="date"
+            value-format="yyyy-MM-dd"
+            placeholder="请选择分析时间">
+          </el-date-picker>
+        </el-form-item>
+        <el-form-item label="批注注解" prop="comment">
+          <el-input v-model="form.comment" type="textarea" placeholder="请输入内容" />
+        </el-form-item>
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="submitForm">确 定</el-button>
+        <el-button @click="cancel">取 消</el-button>
+      </div>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+import { listForecastResult, getForecastResult, delForecastResult, addForecastResult, updateForecastResult } from "@/api/manage/forecastResult";
+
+export default {
+  name: "ForecastResult",
+  data() {
+    return {
+      // 遮罩层
+      loading: true,
+      // 选中数组
+      ids: [],
+      // 非单个禁用
+      single: true,
+      // 非多个禁用
+      multiple: true,
+      // 显示搜索条件
+      showSearch: true,
+      // 总条数
+      total: 0,
+      // 预测结果表格数据
+      forecastResultList: [],
+      // 弹出层标题
+      title: "",
+      // 是否显示弹出层
+      open: false,
+      // 查询参数
+      queryParams: {
+        pageNum: 1,
+        pageSize: 10,
+        unitName: null,
+        studyObject: null,
+        snsCode: null,
+        forecastFault: null,
+        analysisTime: null,
+      },
+      // 表单参数
+      form: {},
+      // 表单校验
+      rules: {
+      }
+    };
+  },
+  created() {
+    this.getList();
+  },
+  methods: {
+    /** 查询预测结果列表 */
+    getList() {
+      this.loading = true;
+      listForecastResult(this.queryParams).then(response => {
+        this.forecastResultList = response.rows;
+        this.total = response.total;
+        this.loading = false;
+      });
+    },
+    // 取消按钮
+    cancel() {
+      this.open = false;
+      this.reset();
+    },
+    // 表单重置
+    reset() {
+      this.form = {
+        id: null,
+        unitName: null,
+        studyObject: null,
+        snsCode: null,
+        forecastFault: null,
+        analysisTime: null,
+        comment: null,
+        isDelete: null,
+        createBy: null,
+        createTime: null,
+        updateBy: null,
+        updateTime: null
+      };
+      this.resetForm("form");
+    },
+    /** 搜索按钮操作 */
+    handleQuery() {
+      this.queryParams.pageNum = 1;
+      this.getList();
+    },
+    /** 重置按钮操作 */
+    resetQuery() {
+      this.resetForm("queryForm");
+      this.handleQuery();
+    },
+    // 多选框选中数据
+    handleSelectionChange(selection) {
+      this.ids = selection.map(item => item.id)
+      this.single = selection.length!==1
+      this.multiple = !selection.length
+    },
+    /** 新增按钮操作 */
+    handleAdd() {
+      this.reset();
+      this.open = true;
+      this.title = "添加预测结果";
+    },
+    /** 修改按钮操作 */
+    handleUpdate(row) {
+      this.reset();
+      const id = row.id || this.ids
+      getForecastResult(id).then(response => {
+        this.form = response.data;
+        this.open = true;
+        this.title = "修改预测结果";
+      });
+    },
+    /** 提交按钮 */
+    submitForm() {
+      this.$refs["form"].validate(valid => {
+        if (valid) {
+          if (this.form.id != null) {
+            updateForecastResult(this.form).then(response => {
+              this.$modal.msgSuccess("修改成功");
+              this.open = false;
+              this.getList();
+            });
+          } else {
+            addForecastResult(this.form).then(response => {
+              this.$modal.msgSuccess("新增成功");
+              this.open = false;
+              this.getList();
+            });
+          }
+        }
+      });
+    },
+    /** 删除按钮操作 */
+    handleDelete(row) {
+      const ids = row.id || this.ids;
+      this.$modal.confirm('是否确认删除预测结果编号为"' + ids + '"的数据项?').then(function() {
+        return delForecastResult(ids);
+      }).then(() => {
+        this.getList();
+        this.$modal.msgSuccess("删除成功");
+      }).catch(() => {});
+    },
+    /** 导出按钮操作 */
+    handleExport() {
+      this.download('manage/forecastResult/export', {
+        ...this.queryParams
+      }, `forecastResult_${new Date().getTime()}.xlsx`)
+    }
+  }
+};
+</script>

+ 2 - 5
PHM-web/src/views/manage/groundDiagnosisModel/index.vue

@@ -96,7 +96,7 @@
 
     <el-table v-loading="loading" :data="groundDiagnosisModelList" @selection-change="handleSelectionChange">
       <el-table-column type="selection" width="55" align="center" />
-      <el-table-column label="唯一ID" align="center" prop="id" />
+      
       <el-table-column label="事件代码" align="center" prop="code" />
       <el-table-column label="判据" align="center" prop="criteria" />
       <el-table-column label="最少持续时间" align="center" prop="minDuration" />
@@ -133,7 +133,7 @@
 
     <!-- 添加或修改地面诊断模型信息对话框 -->
     <el-dialog :title="title" :visible.sync="open" :close-on-click-modal="false" width="500px" append-to-body>
-      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+      <el-form ref="form" :model="form" :rules="rules" label-width="100px">
         <el-form-item label="事件代码" prop="code">
           <el-input v-model="form.code" placeholder="请输入事件代码" />
         </el-form-item>
@@ -199,9 +199,6 @@ export default {
       form: {},
       // 表单校验
       rules: {
-        isDelete: [
-          { required: true, message: "数据是否删除不能为空", trigger: "blur" }
-        ],
       }
     };
   },

+ 2 - 5
PHM-web/src/views/manage/instructionInfo/index.vue

@@ -64,7 +64,7 @@
 
     <el-table v-loading="loading" :data="instructionInfoList" @selection-change="handleSelectionChange">
       <el-table-column type="selection" width="55" align="center" />
-      <el-table-column label="唯一ID" align="center" prop="id" />
+      
       <el-table-column label="指令属性" align="center" prop="attribute" />
       <el-table-column label="指令内容" align="center" prop="content" />
        
@@ -98,7 +98,7 @@
 
     <!-- 添加或修改指令信息对话框 -->
     <el-dialog :title="title" :visible.sync="open" :close-on-click-modal="false" width="500px" append-to-body>
-      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+      <el-form ref="form" :model="form" :rules="rules" label-width="100px">
         <el-form-item label="指令属性" prop="attribute">
           <el-input v-model="form.attribute" placeholder="请输入指令属性" />
         </el-form-item>
@@ -152,9 +152,6 @@ export default {
       form: {},
       // 表单校验
       rules: {
-        isDelete: [
-          { required: true, message: "数据是否删除不能为空", trigger: "blur" }
-        ],
       }
     };
   },

+ 2 - 2
PHM-web/src/views/manage/lifePartConfig/index.vue

@@ -79,7 +79,7 @@
 
     <el-table v-loading="loading" :data="lifePartConfigList" @selection-change="handleSelectionChange">
       <el-table-column type="selection" width="55" align="center" />
-      <el-table-column label="唯一ID" align="center" prop="id" />
+      
       <el-table-column label="寿命件名称" align="center" prop="name" />
       <el-table-column label="寿命监视参数名称" align="center" prop="monitorName" />
       <el-table-column label="单位" align="center" prop="unit" />
@@ -113,7 +113,7 @@
 
     <!-- 添加或修改寿命件配置库信息对话框 -->
     <el-dialog :title="title" :visible.sync="open" :close-on-click-modal="false" width="500px" append-to-body>
-      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+      <el-form ref="form" :model="form" :rules="rules" label-width="100px">
         <el-form-item label="寿命件名称" prop="name">
           <el-input v-model="form.name" placeholder="请输入寿命件名称" />
         </el-form-item>

+ 2 - 5
PHM-web/src/views/manage/maintenance/index.vue

@@ -103,7 +103,7 @@
 
     <el-table v-loading="loading" :data="maintenanceList" @selection-change="handleSelectionChange">
       <el-table-column type="selection" width="55" align="center" />
-      <el-table-column label="唯一ID" align="center" prop="id" />
+      
       <el-table-column label="维护代码" align="center" prop="code" />
       <el-table-column label="维护信息描述" align="center" prop="description" />
       <el-table-column label="等级" align="center" prop="grade" />
@@ -140,7 +140,7 @@
 
     <!-- 添加或修改维护信息对话框 -->
     <el-dialog :title="title" :visible.sync="open" :close-on-click-modal="false" width="500px" append-to-body>
-      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+      <el-form ref="form" :model="form" :rules="rules" label-width="100px">
         <el-form-item label="维护代码" prop="code">
           <el-input v-model="form.code" placeholder="请输入维护代码" />
         </el-form-item>
@@ -208,9 +208,6 @@ export default {
       form: {},
       // 表单校验
       rules: {
-        isDelete: [
-          { required: true, message: "数据是否删除不能为空", trigger: "blur" }
-        ],
       }
     };
   },

+ 2 - 5
PHM-web/src/views/manage/maintenanceTestControl/index.vue

@@ -103,7 +103,7 @@
 
     <el-table v-loading="loading" :data="maintenanceTestControlList" @selection-change="handleSelectionChange">
       <el-table-column type="selection" width="55" align="center" />
-      <el-table-column label="唯一ID" align="center" prop="id" />
+      
       <el-table-column label="维修控制信息" align="center" prop="maintenanceControl" />
       <el-table-column label="对象" align="center" prop="object" />
       <el-table-column label="名称" align="center" prop="name" />
@@ -140,7 +140,7 @@
 
     <!-- 添加或修改维修测试控制对话框 -->
     <el-dialog :title="title" :visible.sync="open" :close-on-click-modal="false" width="500px" append-to-body>
-      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+      <el-form ref="form" :model="form" :rules="rules" label-width="100px">
         <el-form-item label="维修控制信息" prop="maintenanceControl">
           <el-input v-model="form.maintenanceControl" placeholder="请输入维修控制信息" />
         </el-form-item>
@@ -208,9 +208,6 @@ export default {
       form: {},
       // 表单校验
       rules: {
-        isDelete: [
-          { required: true, message: "数据是否删除不能为空", trigger: "blur" }
-        ],
       }
     };
   },

+ 2 - 5
PHM-web/src/views/manage/monitorParameterConfig/index.vue

@@ -87,7 +87,7 @@
 
     <el-table v-loading="loading" :data="monitorParameterConfigList" @selection-change="handleSelectionChange">
       <el-table-column type="selection" width="55" align="center" />
-      <el-table-column label="唯一ID" align="center" prop="id" />
+      
       <el-table-column label="参数名称" align="center" prop="name" />
       <el-table-column label="总线协议" align="center" prop="busRotocol" />
       <el-table-column label="数据块" align="center" prop="dataBlock" />
@@ -122,7 +122,7 @@
 
     <!-- 添加或修改状态监控参数配置信息对话框 -->
     <el-dialog :title="title" :visible.sync="open" :close-on-click-modal="false" width="500px" append-to-body>
-      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+      <el-form ref="form" :model="form" :rules="rules" label-width="100px">
         <el-form-item label="参数名称" prop="name">
           <el-input v-model="form.name" placeholder="请输入参数名称" />
         </el-form-item>
@@ -182,9 +182,6 @@ export default {
       form: {},
       // 表单校验
       rules: {
-        isDelete: [
-          { required: true, message: "数据是否删除不能为空", trigger: "blur" }
-        ],
       }
     };
   },

+ 290 - 0
PHM-web/src/views/manage/orderInfo/index.vue

@@ -0,0 +1,290 @@
+<template>
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
+      <el-form-item label="指令名称" prop="orderName">
+        <el-input
+          v-model="queryParams.orderName"
+          placeholder="请输入指令名称"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="指令类型" prop="orderType">
+        <el-input
+          v-model="queryParams.orderType"
+          placeholder="请输入指令类型"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="参数内容:JSON格式" prop="content">
+        <el-input
+          v-model="queryParams.content"
+          placeholder="请输入参数内容:JSON格式"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item>
+        <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
+        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
+      </el-form-item>
+    </el-form>
+
+    <el-row :gutter="10" class="mb8">
+      <el-col :span="1.5">
+        <el-button
+          type="primary"
+          plain
+          icon="el-icon-plus"
+          size="mini"
+          @click="handleAdd"
+          v-hasPermi="['manage:orderInfo:add']"
+        >新增</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="success"
+          plain
+          icon="el-icon-edit"
+          size="mini"
+          :disabled="single"
+          @click="handleUpdate"
+          v-hasPermi="['manage:orderInfo:edit']"
+        >修改</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="danger"
+          plain
+          icon="el-icon-delete"
+          size="mini"
+          :disabled="multiple"
+          @click="handleDelete"
+          v-hasPermi="['manage:orderInfo:remove']"
+        >删除</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="warning"
+          plain
+          icon="el-icon-download"
+          size="mini"
+          @click="handleExport"
+          v-hasPermi="['manage:orderInfo:export']"
+        >导出</el-button>
+      </el-col>
+      <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+    </el-row>
+
+    <el-table v-loading="loading" :data="orderInfoList" @selection-change="handleSelectionChange">
+      <el-table-column type="selection" width="55" align="center" />
+      
+      <el-table-column label="指令名称" align="center" prop="orderName" />
+      <el-table-column label="指令类型" align="center" prop="orderType" />
+      <el-table-column label="参数内容:JSON格式" align="center" prop="content" />
+      <el-table-column label="创建人" align="center" prop="createBy" />
+      <el-table-column label="创建时间" align="center" prop="createTime" width="180">
+        <template slot-scope="scope">
+          <span>{{ parseTime(scope.row.createTime, '{y}-{m}-{d}') }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="更新人" align="center" prop="updateBy" />
+      <el-table-column label="更新时间" align="center" prop="updateTime" width="180">
+        <template slot-scope="scope">
+          <span>{{ parseTime(scope.row.updateTime, '{y}-{m}-{d}') }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
+        <template slot-scope="scope">
+          <el-button
+            size="mini"
+            type="text"
+            icon="el-icon-edit"
+            @click="handleUpdate(scope.row)"
+            v-hasPermi="['manage:orderInfo:edit']"
+          >修改</el-button>
+          <el-button
+            size="mini"
+            type="text"
+            icon="el-icon-delete"
+            @click="handleDelete(scope.row)"
+            v-hasPermi="['manage:orderInfo:remove']"
+          >删除</el-button>
+        </template>
+      </el-table-column>
+    </el-table>
+    
+    <pagination
+      v-show="total>0"
+      :total="total"
+      :page.sync="queryParams.pageNum"
+      :limit.sync="queryParams.pageSize"
+      @pagination="getList"
+    />
+
+    <!-- 添加或修改系统指令信息对话框 -->
+    <el-dialog :title="title" :visible.sync="open" :close-on-click-modal="false" width="500px" append-to-body>
+      <el-form ref="form" :model="form" :rules="rules" label-width="100px">
+        <el-form-item label="指令名称" prop="orderName">
+          <el-input v-model="form.orderName" placeholder="请输入指令名称" />
+        </el-form-item>
+        <el-form-item label="指令类型" prop="orderType">
+          <el-input v-model="form.orderType" placeholder="请输入指令类型" />
+        </el-form-item>
+        <el-form-item label="参数内容:JSON格式" prop="content">
+          <el-input v-model="form.content" placeholder="请输入参数内容:JSON格式" />
+        </el-form-item>
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="submitForm">确 定</el-button>
+        <el-button @click="cancel">取 消</el-button>
+      </div>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+import { listOrderInfo, getOrderInfo, delOrderInfo, addOrderInfo, updateOrderInfo } from "@/api/manage/orderInfo";
+
+export default {
+  name: "OrderInfo",
+  data() {
+    return {
+      // 遮罩层
+      loading: true,
+      // 选中数组
+      ids: [],
+      // 非单个禁用
+      single: true,
+      // 非多个禁用
+      multiple: true,
+      // 显示搜索条件
+      showSearch: true,
+      // 总条数
+      total: 0,
+      // 系统指令信息表格数据
+      orderInfoList: [],
+      // 弹出层标题
+      title: "",
+      // 是否显示弹出层
+      open: false,
+      // 查询参数
+      queryParams: {
+        pageNum: 1,
+        pageSize: 10,
+        orderName: null,
+        orderType: null,
+        content: null,
+      },
+      // 表单参数
+      form: {},
+      // 表单校验
+      rules: {
+      }
+    };
+  },
+  created() {
+    this.getList();
+  },
+  methods: {
+    /** 查询系统指令信息列表 */
+    getList() {
+      this.loading = true;
+      listOrderInfo(this.queryParams).then(response => {
+        this.orderInfoList = response.rows;
+        this.total = response.total;
+        this.loading = false;
+      });
+    },
+    // 取消按钮
+    cancel() {
+      this.open = false;
+      this.reset();
+    },
+    // 表单重置
+    reset() {
+      this.form = {
+        id: null,
+        orderName: null,
+        orderType: null,
+        content: null,
+        isDelete: null,
+        createBy: null,
+        createTime: null,
+        updateBy: null,
+        updateTime: null
+      };
+      this.resetForm("form");
+    },
+    /** 搜索按钮操作 */
+    handleQuery() {
+      this.queryParams.pageNum = 1;
+      this.getList();
+    },
+    /** 重置按钮操作 */
+    resetQuery() {
+      this.resetForm("queryForm");
+      this.handleQuery();
+    },
+    // 多选框选中数据
+    handleSelectionChange(selection) {
+      this.ids = selection.map(item => item.id)
+      this.single = selection.length!==1
+      this.multiple = !selection.length
+    },
+    /** 新增按钮操作 */
+    handleAdd() {
+      this.reset();
+      this.open = true;
+      this.title = "添加系统指令信息";
+    },
+    /** 修改按钮操作 */
+    handleUpdate(row) {
+      this.reset();
+      const id = row.id || this.ids
+      getOrderInfo(id).then(response => {
+        this.form = response.data;
+        this.open = true;
+        this.title = "修改系统指令信息";
+      });
+    },
+    /** 提交按钮 */
+    submitForm() {
+      this.$refs["form"].validate(valid => {
+        if (valid) {
+          if (this.form.id != null) {
+            updateOrderInfo(this.form).then(response => {
+              this.$modal.msgSuccess("修改成功");
+              this.open = false;
+              this.getList();
+            });
+          } else {
+            addOrderInfo(this.form).then(response => {
+              this.$modal.msgSuccess("新增成功");
+              this.open = false;
+              this.getList();
+            });
+          }
+        }
+      });
+    },
+    /** 删除按钮操作 */
+    handleDelete(row) {
+      const ids = row.id || this.ids;
+      this.$modal.confirm('是否确认删除系统指令信息编号为"' + ids + '"的数据项?').then(function() {
+        return delOrderInfo(ids);
+      }).then(() => {
+        this.getList();
+        this.$modal.msgSuccess("删除成功");
+      }).catch(() => {});
+    },
+    /** 导出按钮操作 */
+    handleExport() {
+      this.download('manage/orderInfo/export', {
+        ...this.queryParams
+      }, `orderInfo_${new Date().getTime()}.xlsx`)
+    }
+  }
+};
+</script>

+ 2 - 5
PHM-web/src/views/manage/performanceMonitorModel/index.vue

@@ -104,7 +104,7 @@
 
     <el-table v-loading="loading" :data="performanceMonitorModelList" @selection-change="handleSelectionChange">
       <el-table-column type="selection" width="55" align="center" />
-      <el-table-column label="唯一ID" align="center" prop="id" />
+      
       <el-table-column label="监测对象" align="center" prop="object" />
       <el-table-column label="监测参数" align="center" prop="parameter" />
       <el-table-column label="状态条件" align="center" prop="stateCondition" />
@@ -142,7 +142,7 @@
 
     <!-- 添加或修改性能监测模型信息对话框 -->
     <el-dialog :title="title" :visible.sync="open" :close-on-click-modal="false" width="500px" append-to-body>
-      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+      <el-form ref="form" :model="form" :rules="rules" label-width="100px">
         <el-form-item label="监测对象" prop="object">
           <el-input v-model="form.object" placeholder="请输入监测对象" />
         </el-form-item>
@@ -212,9 +212,6 @@ export default {
       form: {},
       // 表单校验
       rules: {
-        isDelete: [
-          { required: true, message: "数据是否删除不能为空", trigger: "blur" }
-        ],
       }
     };
   },

+ 2 - 5
PHM-web/src/views/manage/preHandleResult/index.vue

@@ -65,7 +65,7 @@
 
     <!-- 添加或修改数据预处理结果对话框 -->
     <el-dialog :title="title" :visible.sync="open" :close-on-click-modal="false" width="500px" append-to-body>
-      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+      <el-form ref="form" :model="form" :rules="rules" label-width="100px">
         <el-form-item label="文件名" prop="name">
           <el-select v-model="form.name" placeholder="请选择要处理的数据" style="width:100%">
             <el-option
@@ -103,7 +103,7 @@
         placeholder="请输入内容"
         v-model="textarea">
       </el-input>
-      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+      <el-form ref="form" :model="form" :rules="rules" label-width="100px">
         <el-form-item label="备注" prop="remark">
           <el-input v-model="form.remark" placeholder="请输入备注" />
         </el-form-item>
@@ -171,9 +171,6 @@ export default {
       form: {},
       // 表单校验
       rules: {
-        isDelete: [
-          { required: true, message: "数据是否删除不能为空", trigger: "blur" }
-        ],
       }
     };
   },

+ 261 - 453
PHM-web/src/views/manage/product/index.vue

@@ -1,468 +1,276 @@
 <template>
-    <div class="app-container">
-      <el-row :gutter="20">
-        <!--部门数据-->
-        <el-col :span="4" :xs="24">
-          <div class="head-container">
-            <el-input
-              v-model="deptName"
-              placeholder="请输入产品树名称"
-              clearable
-              size="small"
-              prefix-icon="el-icon-search"
-              style="margin-bottom: 20px"
-            />
-          </div>
-          <div class="head-container">
-            <el-tree
-              :data="productOptions"
-              :props="defaultProps"
-              :expand-on-click-node="false"
-              :filter-node-method="filterNode"
-              ref="tree"
-              node-key="id"
-              default-expand-all
-              highlight-current
-              @node-click="handleNodeClick"
-            />
-          </div>
-        </el-col>
-        <!--用户数据-->
-        <el-col :span="20" :xs="24">
-          <el-row :gutter="10" class="mb8">
-            <el-col :span="1.5">
-              <el-button
-                type="primary"
-                plain
-                icon="el-icon-plus"
-                size="mini"
-                @click="handleAdd"
-                v-hasPermi="['system:user:add']"
-              >新增</el-button>
-            </el-col>
-            <el-col :span="1.5">
-              <el-button
-                type="success"
-                plain
-                icon="el-icon-edit"
-                size="mini"
-                :disabled="single"
-                @click="handleUpdate"
-                v-hasPermi="['system:user:edit']"
-              >修改</el-button>
-            </el-col>
-            <el-col :span="1.5">
-              <el-button
-                type="danger"
-                plain
-                icon="el-icon-delete"
-                size="mini"
-                :disabled="multiple"
-                @click="handleDelete"
-                v-hasPermi="['system:user:remove']"
-              >删除</el-button>
-            </el-col>
-            <el-col :span="1.5">
-              <el-button
-                type="info"
-                plain
-                icon="el-icon-upload2"
-                size="mini"
-                @click="handleImport"
-                v-hasPermi="['system:user:import']"
-              >导入</el-button>
-            </el-col>
-            <el-col :span="1.5">
-              <el-button
-                type="warning"
-                plain
-                icon="el-icon-download"
-                size="mini"
-                @click="handleExport"
-                v-hasPermi="['system:user:export']"
-              >导出</el-button>
-            </el-col>
-            <right-toolbar :showSearch.sync="showSearch" @queryTable="getList" :columns="columns"></right-toolbar>
-          </el-row>
-  
-          <el-table v-loading="loading" :data="productList" @selection-change="handleSelectionChange">
-            <el-table-column type="selection" width="50" align="center" />
-            <el-table-column :label="formColumn.snsId" align="center" key="snsId" prop="snsId" v-if="columns[0].visible" />
-            <el-table-column :label="formColumn.name" align="center" key="name" prop="name" v-if="columns[1].visible" :show-overflow-tooltip="true" />
-            <el-table-column :label="formColumn.parentId" align="center" key="parentId" prop="parentId" v-if="columns[2].visible" :show-overflow-tooltip="true" />
-              <el-table-column
-              label="操作"
-              align="center"
-              width="160"
-              class-name="small-padding fixed-width"
-            >
-              <template slot-scope="scope" v-if="scope.row.userId !== 1">
-                <el-button
-                  size="mini"
-                  type="text"
-                  icon="el-icon-edit"
-                  @click="handleUpdate(scope.row)"
-                  v-hasPermi="['system:user:edit']"
-                >修改</el-button>
-                <el-button
-                  size="mini"
-                  type="text"
-                  icon="el-icon-delete"
-                  @click="handleDelete(scope.row)"
-                  v-hasPermi="['system:user:remove']"
-                >删除</el-button>
-              </template>
-              </el-table-column>
-            </el-table>
-  
-          <pagination
-            v-show="total>0"
-            :total="total"
-            :page.sync="queryParams.pageNum"
-            :limit.sync="queryParams.pageSize"
-            @pagination="getList"
-          />
-        </el-col>
-      </el-row>
-  
-      <!-- 添加或修改用户配置对话框 -->
-      <el-dialog :title="title" :visible.sync="open" width="600px" append-to-body>
-        <el-form ref="form" :model="form" :rules="rules" label-width="80px">
-            <el-form-item label="父ID" prop="parentId">
-              <treeselect v-model="form.parentId" :options="productOptions" :normalizer="normalizer" placeholder="请选择父ID" />
-            </el-form-item>
-            <el-form-item label="产品名称" prop="name">
-              <el-input v-model="form.name" placeholder="请输入产品名称" />
-            </el-form-item>
-            <el-form-item label="SNS编号" prop="snsId">
-              <el-input v-model="form.snsId" placeholder="请输入SNS编号" />
-            </el-form-item>
-            </el-form>
-        <div slot="footer" class="dialog-footer">
-          <el-button type="primary" @click="submitForm">确 定</el-button>
-          <el-button @click="cancel">取 消</el-button>
-        </div>
-      </el-dialog>
-  
-      <!-- 用户导入对话框 -->
-      <el-dialog :title="upload.title" :visible.sync="upload.open" width="400px" append-to-body>
-        <el-upload
-          ref="upload"
-          :limit="1"
-          accept=".xlsx, .xls"
-          :headers="upload.headers"
-          :action="upload.url + '?updateSupport=' + upload.updateSupport"
-          :disabled="upload.isUploading"
-          :on-progress="handleFileUploadProgress"
-          :on-success="handleFileSuccess"
-          :auto-upload="false"
-          drag
-        >
-          <i class="el-icon-upload"></i>
-          <div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
-          <div class="el-upload__tip text-center" slot="tip">
-            <div class="el-upload__tip" slot="tip">
-              <el-checkbox v-model="upload.updateSupport" /> 是否更新已经存在的用户数据
-            </div>
-            <span>仅允许导入xls、xlsx格式文件。</span>
-            <el-link type="primary" :underline="false" style="font-size:12px;vertical-align: baseline;" @click="importTemplate">下载模板</el-link>
-          </div>
-        </el-upload>
-        <div slot="footer" class="dialog-footer">
-          <el-button type="primary" @click="submitFileForm">确 定</el-button>
-          <el-button @click="upload.open = false">取 消</el-button>
-        </div>
-      </el-dialog>
-    </div>
-  </template>
-  
-  <script>
-  import { listUser, getUser, delUser, addUser, updateUser, resetUserPwd, changeUserStatus, deptTreeSelect } from "@/api/system/user";
-  import { listProduct, getProduct, delProduct, addProduct, updateProduct } from "@/api/manage/product";
-  import { getToken } from "@/utils/auth";
-  import Treeselect from "@riophae/vue-treeselect";
-  import "@riophae/vue-treeselect/dist/vue-treeselect.css";
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
+      <el-form-item label="名称" prop="name">
+        <el-input
+          v-model="queryParams.name"
+          placeholder="名称"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="SNS编号" title="SNS编号" prop="snsId">
+        <el-input
+          v-model="queryParams.snsId"
+          placeholder="请输入SNS编号"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item>
+	    <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
+        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
+      </el-form-item>
+    </el-form>
 
-  const columnss = {
-    1: {
-      name: '系统名称1',
-      snsId: 'SNS编号1',
-      parentId: '归属平台型号'
+    <el-row :gutter="10" class="mb8">
+      <el-col :span="1.5">
+        <el-button
+          type="primary"
+          plain
+          icon="el-icon-plus"
+          size="mini"
+          @click="handleAdd"
+          v-hasPermi="['manage:product:add']"
+        >新增</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="info"
+          plain
+          icon="el-icon-sort"
+          size="mini"
+          @click="toggleExpandAll"
+        >展开/折叠</el-button>
+      </el-col>
+      <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+    </el-row>
+
+    <el-table
+      v-if="refreshTable"
+      v-loading="loading"
+      :data="productList"
+      row-key="id"
+      :default-expand-all="isExpandAll"
+      :tree-props="{children: 'children', hasChildren: 'hasChildren'}"
+    >
+      <el-table-column label="名称" align="center" prop="name" />
+      <el-table-column label="SNS编号" align="center" prop="snsId" />
+      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
+        <template slot-scope="scope">
+          <el-button
+            size="mini"
+            type="text"
+            icon="el-icon-edit"
+            @click="handleUpdate(scope.row)"
+            v-hasPermi="['manage:product:edit']"
+          >修改</el-button>
+          <el-button
+            size="mini"
+            type="text"
+            icon="el-icon-plus"
+            @click="handleAdd(scope.row)"
+            v-hasPermi="['manage:product:add']"
+          >新增</el-button>
+          <el-button
+            size="mini"
+            type="text"
+            icon="el-icon-delete"
+            @click="handleDelete(scope.row)"
+            v-hasPermi="['manage:product:remove']"
+          >删除</el-button>
+        </template>
+      </el-table-column>
+    </el-table>
+
+    <!-- 添加或修改产品树信息对话框 -->
+    <el-dialog :title="title" :visible.sync="open" :close-on-click-modal="false" width="500px" append-to-body>
+      <el-form ref="form" :model="form" :rules="rules" label-width="100px">
+        <el-form-item label="归属" prop="parentId">
+          <treeselect v-model="form.parentId" :options="productOptions" :normalizer="normalizer" placeholder="请选择父ID" />
+        </el-form-item>
+        <el-form-item label="名称" prop="name">
+          <el-input v-model="form.name" placeholder="请输入名称" />
+        </el-form-item>
+        <el-form-item label="SNS编号" prop="snsId">
+          <el-input v-model="form.snsId" placeholder="请输入SNS编号" />
+        </el-form-item>
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="submitForm">确 定</el-button>
+        <el-button @click="cancel">取 消</el-button>
+      </div>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+import { listProduct, getProduct, delProduct, addProduct, updateProduct } from "@/api/manage/product";
+import Treeselect from "@riophae/vue-treeselect";
+import "@riophae/vue-treeselect/dist/vue-treeselect.css";
+
+export default {
+  name: "Product",
+  components: {
+    Treeselect
+  },
+  data() {
+    return {
+      // 遮罩层
+      loading: true,
+      // 显示搜索条件
+      showSearch: true,
+      // 产品树信息表格数据
+      productList: [],
+      // 产品树信息树选项
+      productOptions: [],
+      // 弹出层标题
+      title: "",
+      // 是否显示弹出层
+      open: false,
+      // 是否展开,默认全部展开
+      isExpandAll: true,
+      // 重新渲染表格状态
+      refreshTable: true,
+      // 查询参数
+      queryParams: {
+        parentId: null,
+        name: null,
+        snsId: null,
+      },
+      // 表单参数
+      form: {},
+      // 表单校验
+      rules: {
+        parentId: [
+          { required: true, message: "归属不能为空", trigger: "blur" }
+        ],
+      }
+    };
+  },
+  created() {
+    this.getList();
+  },
+  methods: {
+    /** 查询产品树信息列表 */
+    getList() {
+      this.loading = true;
+      listProduct(this.queryParams).then(response => {
+        this.productList = this.handleTree(response.data, "id", "parentId");
+        this.loading = false;
+      });
     },
-    2:{
-      name: '分/子系统名称',
-      snsId: 'SNS编号',
-      parentId: '归属系统'
+    /** 转换产品树信息数据结构 */
+    normalizer(node) {
+      if (node.children && !node.children.length) {
+        delete node.children;
+      }
+      return {
+        id: node.id,
+        label: node.name,
+        children: node.children
+      };
     },
-    3:{
-      name: '部件名称',
-      snsId: 'SNS编号',
-      parentId: '归属分/子系统'
+	/** 查询产品树信息下拉树结构 */
+    getTreeselect() {
+      listProduct().then(response => {
+        this.productOptions = [];
+        const data = { id: 0, name: '顶级节点', children: [] };
+        data.children = this.handleTree(response.data, "id", "parentId");
+        this.productOptions.push(data);
+      });
     },
-    4:{
-      name: 'LRU名称',
-      snsId: 'SNS编号',
-      parentId: '归属部件'
+    // 取消按钮
+    cancel() {
+      this.open = false;
+      this.reset();
     },
-  }
-  export default {
-    name: "User",
-    dicts: ['sys_normal_disable', 'sys_user_sex'],
-    components: { Treeselect },
-    data() {
-      return {
-        formColumn: {
-          name: '系统名称',
-          snsId: 'SNS编号',
-          parentId: '归属平台型号'
-        },
-        // 遮罩层
-        loading: true,
-        // 选中数组
-        ids: [],
-        // 非单个禁用
-        single: true,
-        // 非多个禁用
-        multiple: true,
-        // 显示搜索条件
-        showSearch: true,
-        // 总条数
-        total: 0,
-        // 产品树表格数据
-        productList: null,
-        // 弹出层标题
-        title: "",
-        // 产品树选项
-        productOptions: undefined,
-        // 是否显示弹出层
-        open: false,
-        // 部门名称
-        deptName: undefined,
-        // 默认密码
-        initPassword: undefined,
-        // 日期范围
-        dateRange: [],
-        // 岗位选项
-        postOptions: [],
-        // 角色选项
-        roleOptions: [],
-        // 表单参数
-        form: {},
-        defaultProps: {
-          children: "children",
-          label: "name"
-        },
-        
-        // 列信息
-        columns: [
-          { key: 0, visible: true },
-          { key: 1, visible: true },
-          { key: 2, visible: true },
-        ],
-        // 用户导入参数
-        upload: {
-          // 是否显示弹出层(用户导入)
-          open: false,
-          // 弹出层标题(用户导入)
-          title: "",
-          // 是否禁用上传
-          isUploading: false,
-          // 是否更新已经存在的用户数据
-          updateSupport: 0,
-          // 设置上传的请求头部
-          headers: { Authorization: "Bearer " + getToken() },
-          // 上传的地址
-          url: process.env.VUE_APP_BASE_API + "/system/user/importData"
-        },
-        // 查询参数
-        queryParams: {
-          snsId:null,
-          name: null,
-          parentId:null
-        },
-        // 表单校验
-        rules: {
-            parentId: [
-              { required: true, message: "父ID不能为空", trigger: "blur" }
-            ],
-            name: [
-              { required: true, message: "产品名称不能为空", trigger: "blur" }
-            ],
-            isDelete: [
-              { required: true, message: "数据是否删除不能为空", trigger: "blur" }
-            ],
-        }
+    // 表单重置
+    reset() {
+      this.form = {
+        id: null,
+        parentId: null,
+        name: null,
+        snsId: null,
+        isDelete: null,
+        createBy: null,
+        createTime: null,
+        updateBy: null,
+        updateTime: null
       };
+      this.resetForm("form");
+    },
+    /** 搜索按钮操作 */
+    handleQuery() {
+      this.getList();
+    },
+    /** 重置按钮操作 */
+    resetQuery() {
+      this.resetForm("queryForm");
+      this.handleQuery();
     },
-    watch: {
-      // 根据名称筛选部门树
-      deptName(val) {
-        this.$refs.tree.filter(val);
+    /** 新增按钮操作 */
+    handleAdd(row) {
+      this.reset();
+      this.getTreeselect();
+      if (row != null && row.id) {
+        this.form.parentId = row.id;
+      } else {
+        this.form.parentId = 0;
       }
+      this.open = true;
+      this.title = "添加产品树信息";
     },
-    created() {
-      this.getList();
+    /** 展开/折叠操作 */
+    toggleExpandAll() {
+      this.refreshTable = false;
+      this.isExpandAll = !this.isExpandAll;
+      this.$nextTick(() => {
+        this.refreshTable = true;
+      });
+    },
+    /** 修改按钮操作 */
+    handleUpdate(row) {
+      this.reset();
       this.getTreeselect();
+      if (row != null) {
+        this.form.parentId = row.id;
+      }
+      getProduct(row.id).then(response => {
+        this.form = response.data;
+        this.open = true;
+        this.title = "修改产品树信息";
+      });
     },
-    methods: {
-      /** 查询产品树信息列表 */
-      getList() {
-        this.loading = true;
-        listProduct(this.queryParams).then(response => {
-            this.productList=response.data
-          this.loading = false;
-        });
-      },
-    /** 查询产品树信息下拉树结构 */
-    getTreeselect() {
-        listProduct().then(response => {
-          this.productOptions = [];
-          const data = { id: 0, name: '顶级节点', children: [] };
-          data.children = this.handleTree(response.data, "id", "parentId");
-            this.productOptions.push(data);
-        });
-      },
-      /** 转换产品树信息数据结构 */
-      normalizer(node) {
-        if (node.children && !node.children.length) {
-          delete node.children;
-        }
-        return {
-          id: node.id,
-          label: node.name,
-          children: node.children
-        };
-      },
-      // 筛选节点
-      filterNode(value, data) {
-        if (!value) return true;
-        return data.name.indexOf(value) !== -1;
-      },
-      // 节点单击事件
-      handleNodeClick(data) {
-        let i = 1
-        this.formColumn = columnss[i]
-        this.loading = false;
-        getProduct(data.id).then(response => {
-          this.productList=[response.data]
-          this.loading = false;
-        });
-      },
-      // 取消按钮
-      cancel() {
-        this.open = false;
-        this.reset();
-      },
-      // 表单重置
-      reset() {
-        this.form = {
-          parentId: null,
-          name: null,
-          snsId: null,
-        };
-        this.resetForm("form");
-      },
-      // 多选框选中数据
-      handleSelectionChange(selection) {
-        this.ids = selection.map(item => item.id);
-        this.single = selection.length != 1;
-        this.multiple = !selection.length;
-      },
-      // 更多操作触发
-      handleCommand(command, row) {
-        switch (command) {
-          case "handleResetPwd":
-            this.handleResetPwd(row);
-            break;
-          case "handleAuthRole":
-            this.handleAuthRole(row);
-            break;
-          default:
-            break;
-        }
-      },
-      /** 新增按钮操作 */
-      handleAdd() {
-        this.reset();
-        getUser().then(response => {
-          this.postOptions = response.posts;
-          this.roleOptions = response.roles;
-          this.open = true;
-          this.title = "添加用户";
-          this.form.password = this.initPassword;
-        });
-      },
-      /** 修改按钮操作 */
-      handleUpdate(row) {
-        const Id = row.id || this.ids;
-        getProduct(Id).then(response => {
-          this.form = response.data;
-          this.open = true;
-          this.title = "修改产品树信息";
-        });
-      },
-      /** 提交按钮 */
-      submitForm() {
-        this.$refs["form"].validate(valid => {
-          if (valid) {
-            if (this.form.id != null) {
-              updateProduct(this.form).then(response => {
-                this.$modal.msgSuccess("修改成功");
-                this.open = false;
-                this.getList();
-              });
-            } else {
-              addProduct(this.form).then(response => {
-                this.$modal.msgSuccess("新增成功");
-                this.open = false;
-                this.getList();
-              });
-            }
+    /** 提交按钮 */
+    submitForm() {
+      this.$refs["form"].validate(valid => {
+        if (valid) {
+          if (this.form.id != null) {
+            updateProduct(this.form).then(response => {
+              this.$modal.msgSuccess("修改成功");
+              this.open = false;
+              this.getList();
+            });
+          } else {
+            addProduct(this.form).then(response => {
+              this.$modal.msgSuccess("新增成功");
+              this.open = false;
+              this.getList();
+            });
           }
-        });
-      },
-      /** 删除按钮操作 */
-      handleDelete(row) {
-        const productIds = row.id || this.ids;
-        this.$modal.confirm('是否确认删除产品树信息编号为"' + productIds + '"的数据项?').then(function() {
-          return delProduct(row.id);
-        }).then(() => {
-          this.getList();
-          this.$modal.msgSuccess("删除成功");
-        }).catch(() => {});
-      },
-      /** 导出按钮操作 */
-      handleExport() {
-        this.download('manage/product/export', {
-          ...this.queryParams
-        }, `user_${new Date().getTime()}.xlsx`)
-      },
-      /** 导入按钮操作 */
-      handleImport() {
-        this.upload.title = "产品树导入";
-        this.upload.open = true;
-      },
-      /** 下载模板操作 */
-      importTemplate() {
-        this.download('system/user/importTemplate', {
-        }, `user_template_${new Date().getTime()}.xlsx`)
-      },
-      // 文件上传中处理
-      handleFileUploadProgress(event, file, fileList) {
-        this.upload.isUploading = true;
-      },
-      // 文件上传成功处理
-      handleFileSuccess(response, file, fileList) {
-        this.upload.open = false;
-        this.upload.isUploading = false;
-        this.$refs.upload.clearFiles();
-        this.$alert("<div style='overflow: auto;overflow-x: hidden;max-height: 70vh;padding: 10px 20px 0;'>" + response.msg + "</div>", "导入结果", { dangerouslyUseHTMLString: true });
+        }
+      });
+    },
+    /** 删除按钮操作 */
+    handleDelete(row) {
+      this.$modal.confirm('是否确认删除产品树信息编号为"' + row.id + '"的数据项?').then(function() {
+        return delProduct(row.id);
+      }).then(() => {
         this.getList();
-      },
-      // 提交上传文件
-      submitFileForm() {
-        this.$refs.upload.submit();
-      }
+        this.$modal.msgSuccess("删除成功");
+      }).catch(() => {});
     }
-  };
-  </script>
+  }
+};
+</script>

+ 2 - 5
PHM-web/src/views/manage/softwareConfig/index.vue

@@ -71,7 +71,7 @@
 
     <el-table v-loading="loading" :data="softwareConfigList" @selection-change="handleSelectionChange">
       <el-table-column type="selection" width="55" align="center" />
-      <el-table-column label="唯一ID" align="center" prop="id" />
+      
       <el-table-column label="软件序号" align="center" prop="serialNumber" />
       <el-table-column label="软件名称" align="center" prop="name" />
       <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
@@ -104,7 +104,7 @@
 
     <!-- 添加或修改软件配置库信息对话框 -->
     <el-dialog :title="title" :visible.sync="open" :close-on-click-modal="false" width="500px" append-to-body>
-      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+      <el-form ref="form" :model="form" :rules="rules" label-width="100px">
         <el-form-item label="软件序号" prop="serialNumber">
           <el-input v-model="form.serialNumber" placeholder="请输入软件序号" />
         </el-form-item>
@@ -156,9 +156,6 @@ export default {
       form: {},
       // 表单校验
       rules: {
-        isDelete: [
-          { required: true, message: "数据是否删除不能为空", trigger: "blur" }
-        ],
       }
     };
   },

+ 1 - 1
PHM-web/src/views/manage/sortie/index.vue

@@ -96,7 +96,7 @@
 
     <!-- 添加或修改架次信息对话框 -->
     <el-dialog :title="title" :visible.sync="open" :close-on-click-modal="false" width="500px" append-to-body>
-      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+      <el-form ref="form" :model="form" :rules="rules" label-width="100px">
         <el-form-item label="机号" prop="aircraftNumber">
           <el-input v-model="form.aircraftNumber" placeholder="请输入机号" />
         </el-form-item>

+ 1 - 1
PHM-web/src/views/system/config/index.vue

@@ -149,7 +149,7 @@
 
     <!-- 添加或修改参数配置对话框 -->
     <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
-      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+      <el-form ref="form" :model="form" :rules="rules" label-width="100px">
         <el-form-item label="参数名称" prop="configName">
           <el-input v-model="form.configName" placeholder="请输入参数名称" />
         </el-form-item>

+ 1 - 1
PHM-web/src/views/system/dept/index.vue

@@ -98,7 +98,7 @@
 
     <!-- 添加或修改部门对话框 -->
     <el-dialog :title="title" :visible.sync="open" width="600px" append-to-body>
-      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+      <el-form ref="form" :model="form" :rules="rules" label-width="100px">
         <el-row>
           <el-col :span="24" v-if="form.parentId !== 0">
             <el-form-item label="上级部门" prop="parentId">

+ 1 - 1
PHM-web/src/views/system/dict/data.vue

@@ -142,7 +142,7 @@
 
     <!-- 添加或修改参数配置对话框 -->
     <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
-      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+      <el-form ref="form" :model="form" :rules="rules" label-width="100px">
         <el-form-item label="字典类型">
           <el-input v-model="form.dictType" :disabled="true" />
         </el-form-item>

+ 1 - 1
PHM-web/src/views/system/dict/index.vue

@@ -159,7 +159,7 @@
 
     <!-- 添加或修改参数配置对话框 -->
     <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
-      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+      <el-form ref="form" :model="form" :rules="rules" label-width="100px">
         <el-form-item label="字典名称" prop="dictName">
           <el-input v-model="form.dictName" placeholder="请输入字典名称" />
         </el-form-item>

+ 1 - 1
PHM-web/src/views/system/notice/index.vue

@@ -124,7 +124,7 @@
 
     <!-- 添加或修改公告对话框 -->
     <el-dialog :title="title" :visible.sync="open" width="780px" append-to-body>
-      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+      <el-form ref="form" :model="form" :rules="rules" label-width="100px">
         <el-row>
           <el-col :span="12">
             <el-form-item label="公告标题" prop="noticeTitle">

+ 1 - 1
PHM-web/src/views/system/post/index.vue

@@ -125,7 +125,7 @@
 
     <!-- 添加或修改岗位对话框 -->
     <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
-      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+      <el-form ref="form" :model="form" :rules="rules" label-width="100px">
         <el-form-item label="岗位名称" prop="postName">
           <el-input v-model="form.postName" placeholder="请输入岗位名称" />
         </el-form-item>

+ 1 - 1
PHM-web/src/views/system/user/index.vue

@@ -204,7 +204,7 @@
 
     <!-- 添加或修改用户配置对话框 -->
     <el-dialog :title="title" :visible.sync="open" width="600px" append-to-body>
-      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+      <el-form ref="form" :model="form" :rules="rules" label-width="100px">
         <el-row>
           <el-col :span="12">
             <el-form-item label="用户昵称" prop="nickName">

+ 1 - 1
PHM-web/vue.config.js

@@ -35,7 +35,7 @@ module.exports = {
     proxy: {
       // detail: https://cli.vuejs.org/config/#devserver-proxy
       [process.env.VUE_APP_BASE_API]: {
-        target: `http://localhost:8088`,
+        target: `http://localhost:8080`,
         changeOrigin: true,
         pathRewrite: {
           ['^' + process.env.VUE_APP_BASE_API]: ''