From 7f6f725ad67e017c0bbae2a4de01952b88352af0 Mon Sep 17 00:00:00 2001
From: 懒羊羊 <15939171744@163.com>
Date: 星期五, 15 三月 2024 10:52:17 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 jcdm-ui/src/views/main/em/inspectionPlan/machinery.vue                                                                |  139 ++++
 jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanItems/mapper/EmInspectionPlanItemsMapper.java                  |   61 +
 jcdm-ui/src/components/inspectionPlanItems/index.vue                                                                  |  166 +++++
 jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanArchives/controller/EmInspectionPlanArchivesController.java    |  104 +++
 jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanItems/service/IEmInspectionPlanItemsService.java               |   61 +
 jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanArchives/service/IEmInspectionPlanArchivesService.java         |   61 +
 jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanArchives/service/impl/EmInspectionPlanArchivesServiceImpl.java |   96 ++
 jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanArchives/mapper/EmInspectionPlanArchivesMapper.java            |   61 +
 jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanItems/domain/EmInspectionPlanItems.java                        |  179 +++++
 jcdm-ui/src/views/main/em/inspectionPlan/index.vue                                                                    |   17 
 jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanItems/controller/EmInspectionPlanItemsController.java          |  104 +++
 jcdm-ui/src/api/main/em/inspectionPlanItems/inspectionPlanItems.js                                                    |   44 +
 jcdm-ui/src/views/main/em/inspectionPlan/subject.vue                                                                  |  144 ++++
 jcdm-ui/src/components/inspectionPlanArchives/index.vue                                                               |  169 +++++
 jcdm-main/src/main/resources/mapper/em/inspectionPlanItems/EmInspectionPlanItemsMapper.xml                            |  109 +++
 jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanItems/service/impl/EmInspectionPlanItemsServiceImpl.java       |   96 ++
 jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanArchives/domain/EmInspectionPlanArchives.java                  |  194 +++++
 jcdm-main/src/main/resources/mapper/em/inspectionPlanArchives/EmInspectionPlanArchivesMapper.xml                      |  118 +++
 jcdm-ui/src/api/main/em/inspectionPlanArchives/inspectionPlanArchives.js                                              |   44 +
 19 files changed, 1,964 insertions(+), 3 deletions(-)

diff --git a/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanArchives/controller/EmInspectionPlanArchivesController.java b/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanArchives/controller/EmInspectionPlanArchivesController.java
new file mode 100644
index 0000000..d9eea7e
--- /dev/null
+++ b/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanArchives/controller/EmInspectionPlanArchivesController.java
@@ -0,0 +1,104 @@
+package com.jcdm.main.em.inspectionPlanArchives.controller;
+
+import java.util.List;
+import javax.servlet.http.HttpServletResponse;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.PutMapping;
+import org.springframework.web.bind.annotation.DeleteMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+import com.jcdm.common.annotation.Log;
+import com.jcdm.common.core.controller.BaseController;
+import com.jcdm.common.core.domain.AjaxResult;
+import com.jcdm.common.enums.BusinessType;
+import com.jcdm.main.em.inspectionPlanArchives.domain.EmInspectionPlanArchives;
+import com.jcdm.main.em.inspectionPlanArchives.service.IEmInspectionPlanArchivesService;
+import com.jcdm.common.utils.poi.ExcelUtil;
+import com.jcdm.common.core.page.TableDataInfo;
+
+/**
+ * 鐐规淇濆吇璁″垝璁惧娓呭崟Controller
+ * 
+ * @author Yi
+ * @date 2024-03-14
+ */
+@RestController
+@RequestMapping("/em/inspectionPlanArchives")
+public class EmInspectionPlanArchivesController extends BaseController
+{
+    @Autowired
+    private IEmInspectionPlanArchivesService emInspectionPlanArchivesService;
+
+    /**
+     * 鏌ヨ鐐规淇濆吇璁″垝璁惧娓呭崟鍒楄〃
+     */
+    @PreAuthorize("@ss.hasPermi('em:inspectionPlanArchives:list')")
+    @GetMapping("/list")
+    public TableDataInfo list(EmInspectionPlanArchives emInspectionPlanArchives)
+    {
+        startPage();
+        List<EmInspectionPlanArchives> list = emInspectionPlanArchivesService.selectEmInspectionPlanArchivesList(emInspectionPlanArchives);
+        return getDataTable(list);
+    }
+
+    /**
+     * 瀵煎嚭鐐规淇濆吇璁″垝璁惧娓呭崟鍒楄〃
+     */
+    @PreAuthorize("@ss.hasPermi('em:inspectionPlanArchives:export')")
+    @Log(title = "鐐规淇濆吇璁″垝璁惧娓呭崟", businessType = BusinessType.EXPORT)
+    @PostMapping("/export")
+    public void export(HttpServletResponse response, EmInspectionPlanArchives emInspectionPlanArchives)
+    {
+        List<EmInspectionPlanArchives> list = emInspectionPlanArchivesService.selectEmInspectionPlanArchivesList(emInspectionPlanArchives);
+        ExcelUtil<EmInspectionPlanArchives> util = new ExcelUtil<EmInspectionPlanArchives>(EmInspectionPlanArchives.class);
+        util.exportExcel(response, list, "鐐规淇濆吇璁″垝璁惧娓呭崟鏁版嵁");
+    }
+
+    /**
+     * 鑾峰彇鐐规淇濆吇璁″垝璁惧娓呭崟璇︾粏淇℃伅
+     */
+    @PreAuthorize("@ss.hasPermi('em:inspectionPlanArchives:query')")
+    @GetMapping(value = "/{id}")
+    public AjaxResult getInfo(@PathVariable("id") Long id)
+    {
+        return success(emInspectionPlanArchivesService.selectEmInspectionPlanArchivesById(id));
+    }
+
+    /**
+     * 鏂板鐐规淇濆吇璁″垝璁惧娓呭崟
+     */
+    @PreAuthorize("@ss.hasPermi('em:inspectionPlanArchives:add')")
+    @Log(title = "鐐规淇濆吇璁″垝璁惧娓呭崟", businessType = BusinessType.INSERT)
+    @PostMapping
+    public AjaxResult add(@RequestBody EmInspectionPlanArchives emInspectionPlanArchives)
+    {
+        return toAjax(emInspectionPlanArchivesService.insertEmInspectionPlanArchives(emInspectionPlanArchives));
+    }
+
+    /**
+     * 淇敼鐐规淇濆吇璁″垝璁惧娓呭崟
+     */
+    @PreAuthorize("@ss.hasPermi('em:inspectionPlanArchives:edit')")
+    @Log(title = "鐐规淇濆吇璁″垝璁惧娓呭崟", businessType = BusinessType.UPDATE)
+    @PutMapping
+    public AjaxResult edit(@RequestBody EmInspectionPlanArchives emInspectionPlanArchives)
+    {
+        return toAjax(emInspectionPlanArchivesService.updateEmInspectionPlanArchives(emInspectionPlanArchives));
+    }
+
+    /**
+     * 鍒犻櫎鐐规淇濆吇璁″垝璁惧娓呭崟
+     */
+    @PreAuthorize("@ss.hasPermi('em:inspectionPlanArchives:remove')")
+    @Log(title = "鐐规淇濆吇璁″垝璁惧娓呭崟", businessType = BusinessType.DELETE)
+	@DeleteMapping("/{ids}")
+    public AjaxResult remove(@PathVariable Long[] ids)
+    {
+        return toAjax(emInspectionPlanArchivesService.deleteEmInspectionPlanArchivesByIds(ids));
+    }
+}
diff --git a/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanArchives/domain/EmInspectionPlanArchives.java b/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanArchives/domain/EmInspectionPlanArchives.java
new file mode 100644
index 0000000..46eb487
--- /dev/null
+++ b/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanArchives/domain/EmInspectionPlanArchives.java
@@ -0,0 +1,194 @@
+package com.jcdm.main.em.inspectionPlanArchives.domain;
+
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+import com.jcdm.common.annotation.Excel;
+import com.jcdm.common.core.domain.BaseEntity;
+
+/**
+ * 鐐规淇濆吇璁″垝璁惧娓呭崟瀵硅薄 em_inspection_plan_archives
+ * 
+ * @author Yi
+ * @date 2024-03-14
+ */
+public class EmInspectionPlanArchives extends BaseEntity
+{
+    private static final long serialVersionUID = 1L;
+
+    /** ID */
+    private Long id;
+
+    /** 璁惧缂栫爜 */
+    @Excel(name = "璁惧缂栫爜")
+    private String equipmentCode;
+
+    /** 璁惧鍚嶇О */
+    @Excel(name = "璁惧鍚嶇О")
+    private String equipmentName;
+
+    /** 鍝佺墝 */
+    @Excel(name = "鍝佺墝")
+    private String equipmentBrand;
+
+    /** 瑙勬牸鍨嬪彿 */
+    @Excel(name = "瑙勬牸鍨嬪彿")
+    private String equipmentSpec;
+
+    /** 鍒涘缓浜� */
+    @Excel(name = "鍒涘缓浜�")
+    private String createUser;
+
+    /** 鏇存柊浜� */
+    @Excel(name = "鏇存柊浜�")
+    private String updateUser;
+
+    /** 棰勭暀瀛楁1 */
+    @Excel(name = "棰勭暀瀛楁1")
+    private String spareField1;
+
+    /** 棰勭暀瀛楁2 */
+    @Excel(name = "棰勭暀瀛楁2")
+    private String spareField2;
+
+    /** 棰勭暀瀛楁3 */
+    @Excel(name = "棰勭暀瀛楁3")
+    private Long spareField3;
+
+    /** 棰勭暀瀛楁4 */
+    @Excel(name = "棰勭暀瀛楁4")
+    private Long spareField4;
+
+    /** 璁″垝缂栧彿 */
+    @Excel(name = "璁″垝缂栧彿")
+    private String planCode;
+
+    public void setId(Long id) 
+    {
+        this.id = id;
+    }
+
+    public Long getId() 
+    {
+        return id;
+    }
+    public void setEquipmentCode(String equipmentCode) 
+    {
+        this.equipmentCode = equipmentCode;
+    }
+
+    public String getEquipmentCode() 
+    {
+        return equipmentCode;
+    }
+    public void setEquipmentName(String equipmentName) 
+    {
+        this.equipmentName = equipmentName;
+    }
+
+    public String getEquipmentName() 
+    {
+        return equipmentName;
+    }
+    public void setEquipmentBrand(String equipmentBrand) 
+    {
+        this.equipmentBrand = equipmentBrand;
+    }
+
+    public String getEquipmentBrand() 
+    {
+        return equipmentBrand;
+    }
+    public void setEquipmentSpec(String equipmentSpec) 
+    {
+        this.equipmentSpec = equipmentSpec;
+    }
+
+    public String getEquipmentSpec() 
+    {
+        return equipmentSpec;
+    }
+    public void setCreateUser(String createUser) 
+    {
+        this.createUser = createUser;
+    }
+
+    public String getCreateUser() 
+    {
+        return createUser;
+    }
+    public void setUpdateUser(String updateUser) 
+    {
+        this.updateUser = updateUser;
+    }
+
+    public String getUpdateUser() 
+    {
+        return updateUser;
+    }
+    public void setSpareField1(String spareField1) 
+    {
+        this.spareField1 = spareField1;
+    }
+
+    public String getSpareField1() 
+    {
+        return spareField1;
+    }
+    public void setSpareField2(String spareField2) 
+    {
+        this.spareField2 = spareField2;
+    }
+
+    public String getSpareField2() 
+    {
+        return spareField2;
+    }
+    public void setSpareField3(Long spareField3) 
+    {
+        this.spareField3 = spareField3;
+    }
+
+    public Long getSpareField3() 
+    {
+        return spareField3;
+    }
+    public void setSpareField4(Long spareField4) 
+    {
+        this.spareField4 = spareField4;
+    }
+
+    public Long getSpareField4() 
+    {
+        return spareField4;
+    }
+    public void setPlanCode(String planCode) 
+    {
+        this.planCode = planCode;
+    }
+
+    public String getPlanCode() 
+    {
+        return planCode;
+    }
+
+    @Override
+    public String toString() {
+        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+            .append("id", getId())
+            .append("equipmentCode", getEquipmentCode())
+            .append("equipmentName", getEquipmentName())
+            .append("equipmentBrand", getEquipmentBrand())
+            .append("equipmentSpec", getEquipmentSpec())
+            .append("remark", getRemark())
+            .append("createUser", getCreateUser())
+            .append("createTime", getCreateTime())
+            .append("updateUser", getUpdateUser())
+            .append("updateTime", getUpdateTime())
+            .append("spareField1", getSpareField1())
+            .append("spareField2", getSpareField2())
+            .append("spareField3", getSpareField3())
+            .append("spareField4", getSpareField4())
+            .append("planCode", getPlanCode())
+            .toString();
+    }
+}
diff --git a/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanArchives/mapper/EmInspectionPlanArchivesMapper.java b/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanArchives/mapper/EmInspectionPlanArchivesMapper.java
new file mode 100644
index 0000000..12da27d
--- /dev/null
+++ b/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanArchives/mapper/EmInspectionPlanArchivesMapper.java
@@ -0,0 +1,61 @@
+package com.jcdm.main.em.inspectionPlanArchives.mapper;
+
+import java.util.List;
+import com.jcdm.main.em.inspectionPlanArchives.domain.EmInspectionPlanArchives;
+
+/**
+ * 鐐规淇濆吇璁″垝璁惧娓呭崟Mapper鎺ュ彛
+ * 
+ * @author Yi
+ * @date 2024-03-14
+ */
+public interface EmInspectionPlanArchivesMapper 
+{
+    /**
+     * 鏌ヨ鐐规淇濆吇璁″垝璁惧娓呭崟
+     * 
+     * @param id 鐐规淇濆吇璁″垝璁惧娓呭崟涓婚敭
+     * @return 鐐规淇濆吇璁″垝璁惧娓呭崟
+     */
+    public EmInspectionPlanArchives selectEmInspectionPlanArchivesById(Long id);
+
+    /**
+     * 鏌ヨ鐐规淇濆吇璁″垝璁惧娓呭崟鍒楄〃
+     * 
+     * @param emInspectionPlanArchives 鐐规淇濆吇璁″垝璁惧娓呭崟
+     * @return 鐐规淇濆吇璁″垝璁惧娓呭崟闆嗗悎
+     */
+    public List<EmInspectionPlanArchives> selectEmInspectionPlanArchivesList(EmInspectionPlanArchives emInspectionPlanArchives);
+
+    /**
+     * 鏂板鐐规淇濆吇璁″垝璁惧娓呭崟
+     * 
+     * @param emInspectionPlanArchives 鐐规淇濆吇璁″垝璁惧娓呭崟
+     * @return 缁撴灉
+     */
+    public int insertEmInspectionPlanArchives(EmInspectionPlanArchives emInspectionPlanArchives);
+
+    /**
+     * 淇敼鐐规淇濆吇璁″垝璁惧娓呭崟
+     * 
+     * @param emInspectionPlanArchives 鐐规淇濆吇璁″垝璁惧娓呭崟
+     * @return 缁撴灉
+     */
+    public int updateEmInspectionPlanArchives(EmInspectionPlanArchives emInspectionPlanArchives);
+
+    /**
+     * 鍒犻櫎鐐规淇濆吇璁″垝璁惧娓呭崟
+     * 
+     * @param id 鐐规淇濆吇璁″垝璁惧娓呭崟涓婚敭
+     * @return 缁撴灉
+     */
+    public int deleteEmInspectionPlanArchivesById(Long id);
+
+    /**
+     * 鎵归噺鍒犻櫎鐐规淇濆吇璁″垝璁惧娓呭崟
+     * 
+     * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁涓婚敭闆嗗悎
+     * @return 缁撴灉
+     */
+    public int deleteEmInspectionPlanArchivesByIds(Long[] ids);
+}
diff --git a/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanArchives/service/IEmInspectionPlanArchivesService.java b/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanArchives/service/IEmInspectionPlanArchivesService.java
new file mode 100644
index 0000000..ae8cb59
--- /dev/null
+++ b/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanArchives/service/IEmInspectionPlanArchivesService.java
@@ -0,0 +1,61 @@
+package com.jcdm.main.em.inspectionPlanArchives.service;
+
+import java.util.List;
+import com.jcdm.main.em.inspectionPlanArchives.domain.EmInspectionPlanArchives;
+
+/**
+ * 鐐规淇濆吇璁″垝璁惧娓呭崟Service鎺ュ彛
+ * 
+ * @author Yi
+ * @date 2024-03-14
+ */
+public interface IEmInspectionPlanArchivesService 
+{
+    /**
+     * 鏌ヨ鐐规淇濆吇璁″垝璁惧娓呭崟
+     * 
+     * @param id 鐐规淇濆吇璁″垝璁惧娓呭崟涓婚敭
+     * @return 鐐规淇濆吇璁″垝璁惧娓呭崟
+     */
+    public EmInspectionPlanArchives selectEmInspectionPlanArchivesById(Long id);
+
+    /**
+     * 鏌ヨ鐐规淇濆吇璁″垝璁惧娓呭崟鍒楄〃
+     * 
+     * @param emInspectionPlanArchives 鐐规淇濆吇璁″垝璁惧娓呭崟
+     * @return 鐐规淇濆吇璁″垝璁惧娓呭崟闆嗗悎
+     */
+    public List<EmInspectionPlanArchives> selectEmInspectionPlanArchivesList(EmInspectionPlanArchives emInspectionPlanArchives);
+
+    /**
+     * 鏂板鐐规淇濆吇璁″垝璁惧娓呭崟
+     * 
+     * @param emInspectionPlanArchives 鐐规淇濆吇璁″垝璁惧娓呭崟
+     * @return 缁撴灉
+     */
+    public int insertEmInspectionPlanArchives(EmInspectionPlanArchives emInspectionPlanArchives);
+
+    /**
+     * 淇敼鐐规淇濆吇璁″垝璁惧娓呭崟
+     * 
+     * @param emInspectionPlanArchives 鐐规淇濆吇璁″垝璁惧娓呭崟
+     * @return 缁撴灉
+     */
+    public int updateEmInspectionPlanArchives(EmInspectionPlanArchives emInspectionPlanArchives);
+
+    /**
+     * 鎵归噺鍒犻櫎鐐规淇濆吇璁″垝璁惧娓呭崟
+     * 
+     * @param ids 闇�瑕佸垹闄ょ殑鐐规淇濆吇璁″垝璁惧娓呭崟涓婚敭闆嗗悎
+     * @return 缁撴灉
+     */
+    public int deleteEmInspectionPlanArchivesByIds(Long[] ids);
+
+    /**
+     * 鍒犻櫎鐐规淇濆吇璁″垝璁惧娓呭崟淇℃伅
+     * 
+     * @param id 鐐规淇濆吇璁″垝璁惧娓呭崟涓婚敭
+     * @return 缁撴灉
+     */
+    public int deleteEmInspectionPlanArchivesById(Long id);
+}
diff --git a/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanArchives/service/impl/EmInspectionPlanArchivesServiceImpl.java b/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanArchives/service/impl/EmInspectionPlanArchivesServiceImpl.java
new file mode 100644
index 0000000..5f87947
--- /dev/null
+++ b/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanArchives/service/impl/EmInspectionPlanArchivesServiceImpl.java
@@ -0,0 +1,96 @@
+package com.jcdm.main.em.inspectionPlanArchives.service.impl;
+
+import java.util.List;
+import com.jcdm.common.utils.DateUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import com.jcdm.main.em.inspectionPlanArchives.mapper.EmInspectionPlanArchivesMapper;
+import com.jcdm.main.em.inspectionPlanArchives.domain.EmInspectionPlanArchives;
+import com.jcdm.main.em.inspectionPlanArchives.service.IEmInspectionPlanArchivesService;
+
+/**
+ * 鐐规淇濆吇璁″垝璁惧娓呭崟Service涓氬姟灞傚鐞�
+ * 
+ * @author Yi
+ * @date 2024-03-14
+ */
+@Service
+public class EmInspectionPlanArchivesServiceImpl implements IEmInspectionPlanArchivesService 
+{
+    @Autowired
+    private EmInspectionPlanArchivesMapper emInspectionPlanArchivesMapper;
+
+    /**
+     * 鏌ヨ鐐规淇濆吇璁″垝璁惧娓呭崟
+     * 
+     * @param id 鐐规淇濆吇璁″垝璁惧娓呭崟涓婚敭
+     * @return 鐐规淇濆吇璁″垝璁惧娓呭崟
+     */
+    @Override
+    public EmInspectionPlanArchives selectEmInspectionPlanArchivesById(Long id)
+    {
+        return emInspectionPlanArchivesMapper.selectEmInspectionPlanArchivesById(id);
+    }
+
+    /**
+     * 鏌ヨ鐐规淇濆吇璁″垝璁惧娓呭崟鍒楄〃
+     * 
+     * @param emInspectionPlanArchives 鐐规淇濆吇璁″垝璁惧娓呭崟
+     * @return 鐐规淇濆吇璁″垝璁惧娓呭崟
+     */
+    @Override
+    public List<EmInspectionPlanArchives> selectEmInspectionPlanArchivesList(EmInspectionPlanArchives emInspectionPlanArchives)
+    {
+        return emInspectionPlanArchivesMapper.selectEmInspectionPlanArchivesList(emInspectionPlanArchives);
+    }
+
+    /**
+     * 鏂板鐐规淇濆吇璁″垝璁惧娓呭崟
+     * 
+     * @param emInspectionPlanArchives 鐐规淇濆吇璁″垝璁惧娓呭崟
+     * @return 缁撴灉
+     */
+    @Override
+    public int insertEmInspectionPlanArchives(EmInspectionPlanArchives emInspectionPlanArchives)
+    {
+        emInspectionPlanArchives.setCreateTime(DateUtils.getNowDate());
+        return emInspectionPlanArchivesMapper.insertEmInspectionPlanArchives(emInspectionPlanArchives);
+    }
+
+    /**
+     * 淇敼鐐规淇濆吇璁″垝璁惧娓呭崟
+     * 
+     * @param emInspectionPlanArchives 鐐规淇濆吇璁″垝璁惧娓呭崟
+     * @return 缁撴灉
+     */
+    @Override
+    public int updateEmInspectionPlanArchives(EmInspectionPlanArchives emInspectionPlanArchives)
+    {
+        emInspectionPlanArchives.setUpdateTime(DateUtils.getNowDate());
+        return emInspectionPlanArchivesMapper.updateEmInspectionPlanArchives(emInspectionPlanArchives);
+    }
+
+    /**
+     * 鎵归噺鍒犻櫎鐐规淇濆吇璁″垝璁惧娓呭崟
+     * 
+     * @param ids 闇�瑕佸垹闄ょ殑鐐规淇濆吇璁″垝璁惧娓呭崟涓婚敭
+     * @return 缁撴灉
+     */
+    @Override
+    public int deleteEmInspectionPlanArchivesByIds(Long[] ids)
+    {
+        return emInspectionPlanArchivesMapper.deleteEmInspectionPlanArchivesByIds(ids);
+    }
+
+    /**
+     * 鍒犻櫎鐐规淇濆吇璁″垝璁惧娓呭崟淇℃伅
+     * 
+     * @param id 鐐规淇濆吇璁″垝璁惧娓呭崟涓婚敭
+     * @return 缁撴灉
+     */
+    @Override
+    public int deleteEmInspectionPlanArchivesById(Long id)
+    {
+        return emInspectionPlanArchivesMapper.deleteEmInspectionPlanArchivesById(id);
+    }
+}
diff --git a/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanItems/controller/EmInspectionPlanItemsController.java b/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanItems/controller/EmInspectionPlanItemsController.java
new file mode 100644
index 0000000..67c4994
--- /dev/null
+++ b/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanItems/controller/EmInspectionPlanItemsController.java
@@ -0,0 +1,104 @@
+package com.jcdm.main.em.inspectionPlanItems.controller;
+
+import java.util.List;
+import javax.servlet.http.HttpServletResponse;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.PutMapping;
+import org.springframework.web.bind.annotation.DeleteMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+import com.jcdm.common.annotation.Log;
+import com.jcdm.common.core.controller.BaseController;
+import com.jcdm.common.core.domain.AjaxResult;
+import com.jcdm.common.enums.BusinessType;
+import com.jcdm.main.em.inspectionPlanItems.domain.EmInspectionPlanItems;
+import com.jcdm.main.em.inspectionPlanItems.service.IEmInspectionPlanItemsService;
+import com.jcdm.common.utils.poi.ExcelUtil;
+import com.jcdm.common.core.page.TableDataInfo;
+
+/**
+ * 鐐规淇濆吇璁″垝鐐规椤圭洰瀛怌ontroller
+ * 
+ * @author Yi
+ * @date 2024-03-13
+ */
+@RestController
+@RequestMapping("/em/inspectionPlanItems")
+public class EmInspectionPlanItemsController extends BaseController
+{
+    @Autowired
+    private IEmInspectionPlanItemsService emInspectionPlanItemsService;
+
+    /**
+     * 鏌ヨ鐐规淇濆吇璁″垝鐐规椤圭洰瀛愬垪琛�
+     */
+    @PreAuthorize("@ss.hasPermi('em:inspectionPlanItems:list')")
+    @GetMapping("/list")
+    public TableDataInfo list(EmInspectionPlanItems emInspectionPlanItems)
+    {
+        startPage();
+        List<EmInspectionPlanItems> list = emInspectionPlanItemsService.selectEmInspectionPlanItemsList(emInspectionPlanItems);
+        return getDataTable(list);
+    }
+
+    /**
+     * 瀵煎嚭鐐规淇濆吇璁″垝鐐规椤圭洰瀛愬垪琛�
+     */
+    @PreAuthorize("@ss.hasPermi('em:inspectionPlanItems:export')")
+    @Log(title = "鐐规淇濆吇璁″垝鐐规椤圭洰瀛�", businessType = BusinessType.EXPORT)
+    @PostMapping("/export")
+    public void export(HttpServletResponse response, EmInspectionPlanItems emInspectionPlanItems)
+    {
+        List<EmInspectionPlanItems> list = emInspectionPlanItemsService.selectEmInspectionPlanItemsList(emInspectionPlanItems);
+        ExcelUtil<EmInspectionPlanItems> util = new ExcelUtil<EmInspectionPlanItems>(EmInspectionPlanItems.class);
+        util.exportExcel(response, list, "鐐规淇濆吇璁″垝鐐规椤圭洰瀛愭暟鎹�");
+    }
+
+    /**
+     * 鑾峰彇鐐规淇濆吇璁″垝鐐规椤圭洰瀛愯缁嗕俊鎭�
+     */
+    @PreAuthorize("@ss.hasPermi('em:inspectionPlanItems:query')")
+    @GetMapping(value = "/{id}")
+    public AjaxResult getInfo(@PathVariable("id") Long id)
+    {
+        return success(emInspectionPlanItemsService.selectEmInspectionPlanItemsById(id));
+    }
+
+    /**
+     * 鏂板鐐规淇濆吇璁″垝鐐规椤圭洰瀛�
+     */
+    @PreAuthorize("@ss.hasPermi('em:inspectionPlanItems:add')")
+    @Log(title = "鐐规淇濆吇璁″垝鐐规椤圭洰瀛�", businessType = BusinessType.INSERT)
+    @PostMapping
+    public AjaxResult add(@RequestBody EmInspectionPlanItems emInspectionPlanItems)
+    {
+        return toAjax(emInspectionPlanItemsService.insertEmInspectionPlanItems(emInspectionPlanItems));
+    }
+
+    /**
+     * 淇敼鐐规淇濆吇璁″垝鐐规椤圭洰瀛�
+     */
+    @PreAuthorize("@ss.hasPermi('em:inspectionPlanItems:edit')")
+    @Log(title = "鐐规淇濆吇璁″垝鐐规椤圭洰瀛�", businessType = BusinessType.UPDATE)
+    @PutMapping
+    public AjaxResult edit(@RequestBody EmInspectionPlanItems emInspectionPlanItems)
+    {
+        return toAjax(emInspectionPlanItemsService.updateEmInspectionPlanItems(emInspectionPlanItems));
+    }
+
+    /**
+     * 鍒犻櫎鐐规淇濆吇璁″垝鐐规椤圭洰瀛�
+     */
+    @PreAuthorize("@ss.hasPermi('em:inspectionPlanItems:remove')")
+    @Log(title = "鐐规淇濆吇璁″垝鐐规椤圭洰瀛�", businessType = BusinessType.DELETE)
+	@DeleteMapping("/{ids}")
+    public AjaxResult remove(@PathVariable Long[] ids)
+    {
+        return toAjax(emInspectionPlanItemsService.deleteEmInspectionPlanItemsByIds(ids));
+    }
+}
diff --git a/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanItems/domain/EmInspectionPlanItems.java b/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanItems/domain/EmInspectionPlanItems.java
new file mode 100644
index 0000000..f80326c
--- /dev/null
+++ b/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanItems/domain/EmInspectionPlanItems.java
@@ -0,0 +1,179 @@
+package com.jcdm.main.em.inspectionPlanItems.domain;
+
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+import com.jcdm.common.annotation.Excel;
+import com.jcdm.common.core.domain.BaseEntity;
+
+/**
+ * 鐐规淇濆吇璁″垝鐐规椤圭洰瀛愬璞� em_inspection_plan_items
+ * 
+ * @author Yi
+ * @date 2024-03-13
+ */
+public class EmInspectionPlanItems extends BaseEntity
+{
+    private static final long serialVersionUID = 1L;
+
+    /** ID */
+    private Long id;
+
+    /** 椤圭洰缂栧彿 */
+    @Excel(name = "椤圭洰缂栧彿")
+    private String itemsCode;
+
+    /** 椤圭洰鍚嶇О */
+    @Excel(name = "椤圭洰鍚嶇О")
+    private String itemsName;
+
+    /** 椤圭洰绫诲瀷 */
+    @Excel(name = "椤圭洰绫诲瀷")
+    private String itemsType;
+
+    /** 鏍囧噯 */
+    @Excel(name = "鏍囧噯")
+    private String standard;
+
+    /** 椤圭洰鍐呭 */
+    @Excel(name = "椤圭洰鍐呭")
+    private String itemsContent;
+
+    /** 鍒涘缓浜� */
+    @Excel(name = "鍒涘缓浜�")
+    private String createUser;
+
+    /** 鏇存柊浜� */
+    @Excel(name = "鏇存柊浜�")
+    private String updateUser;
+
+    /** 棰勭暀瀛楁1 */
+    @Excel(name = "棰勭暀瀛楁1")
+    private String spareField1;
+
+    /** 棰勭暀瀛楁2 */
+    @Excel(name = "棰勭暀瀛楁2")
+    private String spareField2;
+
+    /** 璁″垝缂栧彿 */
+    @Excel(name = "璁″垝缂栧彿")
+    private String planCode;
+
+    public void setId(Long id) 
+    {
+        this.id = id;
+    }
+
+    public Long getId() 
+    {
+        return id;
+    }
+    public void setItemsCode(String itemsCode) 
+    {
+        this.itemsCode = itemsCode;
+    }
+
+    public String getItemsCode() 
+    {
+        return itemsCode;
+    }
+    public void setItemsName(String itemsName) 
+    {
+        this.itemsName = itemsName;
+    }
+
+    public String getItemsName() 
+    {
+        return itemsName;
+    }
+    public void setItemsType(String itemsType) 
+    {
+        this.itemsType = itemsType;
+    }
+
+    public String getItemsType() 
+    {
+        return itemsType;
+    }
+    public void setStandard(String standard) 
+    {
+        this.standard = standard;
+    }
+
+    public String getStandard() 
+    {
+        return standard;
+    }
+    public void setItemsContent(String itemsContent) 
+    {
+        this.itemsContent = itemsContent;
+    }
+
+    public String getItemsContent() 
+    {
+        return itemsContent;
+    }
+    public void setCreateUser(String createUser) 
+    {
+        this.createUser = createUser;
+    }
+
+    public String getCreateUser() 
+    {
+        return createUser;
+    }
+    public void setUpdateUser(String updateUser) 
+    {
+        this.updateUser = updateUser;
+    }
+
+    public String getUpdateUser() 
+    {
+        return updateUser;
+    }
+    public void setSpareField1(String spareField1) 
+    {
+        this.spareField1 = spareField1;
+    }
+
+    public String getSpareField1() 
+    {
+        return spareField1;
+    }
+    public void setSpareField2(String spareField2) 
+    {
+        this.spareField2 = spareField2;
+    }
+
+    public String getSpareField2() 
+    {
+        return spareField2;
+    }
+    public void setPlanCode(String planCode) 
+    {
+        this.planCode = planCode;
+    }
+
+    public String getPlanCode() 
+    {
+        return planCode;
+    }
+
+    @Override
+    public String toString() {
+        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+            .append("id", getId())
+            .append("itemsCode", getItemsCode())
+            .append("itemsName", getItemsName())
+            .append("itemsType", getItemsType())
+            .append("standard", getStandard())
+            .append("itemsContent", getItemsContent())
+            .append("createUser", getCreateUser())
+            .append("createTime", getCreateTime())
+            .append("updateUser", getUpdateUser())
+            .append("updateTime", getUpdateTime())
+            .append("spareField1", getSpareField1())
+            .append("spareField2", getSpareField2())
+            .append("planCode", getPlanCode())
+            .toString();
+    }
+}
diff --git a/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanItems/mapper/EmInspectionPlanItemsMapper.java b/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanItems/mapper/EmInspectionPlanItemsMapper.java
new file mode 100644
index 0000000..0d90d7d
--- /dev/null
+++ b/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanItems/mapper/EmInspectionPlanItemsMapper.java
@@ -0,0 +1,61 @@
+package com.jcdm.main.em.inspectionPlanItems.mapper;
+
+import java.util.List;
+import com.jcdm.main.em.inspectionPlanItems.domain.EmInspectionPlanItems;
+
+/**
+ * 鐐规淇濆吇璁″垝鐐规椤圭洰瀛怣apper鎺ュ彛
+ * 
+ * @author Yi
+ * @date 2024-03-13
+ */
+public interface EmInspectionPlanItemsMapper 
+{
+    /**
+     * 鏌ヨ鐐规淇濆吇璁″垝鐐规椤圭洰瀛�
+     * 
+     * @param id 鐐规淇濆吇璁″垝鐐规椤圭洰瀛愪富閿�
+     * @return 鐐规淇濆吇璁″垝鐐规椤圭洰瀛�
+     */
+    public EmInspectionPlanItems selectEmInspectionPlanItemsById(Long id);
+
+    /**
+     * 鏌ヨ鐐规淇濆吇璁″垝鐐规椤圭洰瀛愬垪琛�
+     * 
+     * @param emInspectionPlanItems 鐐规淇濆吇璁″垝鐐规椤圭洰瀛�
+     * @return 鐐规淇濆吇璁″垝鐐规椤圭洰瀛愰泦鍚�
+     */
+    public List<EmInspectionPlanItems> selectEmInspectionPlanItemsList(EmInspectionPlanItems emInspectionPlanItems);
+
+    /**
+     * 鏂板鐐规淇濆吇璁″垝鐐规椤圭洰瀛�
+     * 
+     * @param emInspectionPlanItems 鐐规淇濆吇璁″垝鐐规椤圭洰瀛�
+     * @return 缁撴灉
+     */
+    public int insertEmInspectionPlanItems(EmInspectionPlanItems emInspectionPlanItems);
+
+    /**
+     * 淇敼鐐规淇濆吇璁″垝鐐规椤圭洰瀛�
+     * 
+     * @param emInspectionPlanItems 鐐规淇濆吇璁″垝鐐规椤圭洰瀛�
+     * @return 缁撴灉
+     */
+    public int updateEmInspectionPlanItems(EmInspectionPlanItems emInspectionPlanItems);
+
+    /**
+     * 鍒犻櫎鐐规淇濆吇璁″垝鐐规椤圭洰瀛�
+     * 
+     * @param id 鐐规淇濆吇璁″垝鐐规椤圭洰瀛愪富閿�
+     * @return 缁撴灉
+     */
+    public int deleteEmInspectionPlanItemsById(Long id);
+
+    /**
+     * 鎵归噺鍒犻櫎鐐规淇濆吇璁″垝鐐规椤圭洰瀛�
+     * 
+     * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁涓婚敭闆嗗悎
+     * @return 缁撴灉
+     */
+    public int deleteEmInspectionPlanItemsByIds(Long[] ids);
+}
diff --git a/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanItems/service/IEmInspectionPlanItemsService.java b/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanItems/service/IEmInspectionPlanItemsService.java
new file mode 100644
index 0000000..e3d52c2
--- /dev/null
+++ b/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanItems/service/IEmInspectionPlanItemsService.java
@@ -0,0 +1,61 @@
+package com.jcdm.main.em.inspectionPlanItems.service;
+
+import java.util.List;
+import com.jcdm.main.em.inspectionPlanItems.domain.EmInspectionPlanItems;
+
+/**
+ * 鐐规淇濆吇璁″垝鐐规椤圭洰瀛怱ervice鎺ュ彛
+ * 
+ * @author Yi
+ * @date 2024-03-13
+ */
+public interface IEmInspectionPlanItemsService 
+{
+    /**
+     * 鏌ヨ鐐规淇濆吇璁″垝鐐规椤圭洰瀛�
+     * 
+     * @param id 鐐规淇濆吇璁″垝鐐规椤圭洰瀛愪富閿�
+     * @return 鐐规淇濆吇璁″垝鐐规椤圭洰瀛�
+     */
+    public EmInspectionPlanItems selectEmInspectionPlanItemsById(Long id);
+
+    /**
+     * 鏌ヨ鐐规淇濆吇璁″垝鐐规椤圭洰瀛愬垪琛�
+     * 
+     * @param emInspectionPlanItems 鐐规淇濆吇璁″垝鐐规椤圭洰瀛�
+     * @return 鐐规淇濆吇璁″垝鐐规椤圭洰瀛愰泦鍚�
+     */
+    public List<EmInspectionPlanItems> selectEmInspectionPlanItemsList(EmInspectionPlanItems emInspectionPlanItems);
+
+    /**
+     * 鏂板鐐规淇濆吇璁″垝鐐规椤圭洰瀛�
+     * 
+     * @param emInspectionPlanItems 鐐规淇濆吇璁″垝鐐规椤圭洰瀛�
+     * @return 缁撴灉
+     */
+    public int insertEmInspectionPlanItems(EmInspectionPlanItems emInspectionPlanItems);
+
+    /**
+     * 淇敼鐐规淇濆吇璁″垝鐐规椤圭洰瀛�
+     * 
+     * @param emInspectionPlanItems 鐐规淇濆吇璁″垝鐐规椤圭洰瀛�
+     * @return 缁撴灉
+     */
+    public int updateEmInspectionPlanItems(EmInspectionPlanItems emInspectionPlanItems);
+
+    /**
+     * 鎵归噺鍒犻櫎鐐规淇濆吇璁″垝鐐规椤圭洰瀛�
+     * 
+     * @param ids 闇�瑕佸垹闄ょ殑鐐规淇濆吇璁″垝鐐规椤圭洰瀛愪富閿泦鍚�
+     * @return 缁撴灉
+     */
+    public int deleteEmInspectionPlanItemsByIds(Long[] ids);
+
+    /**
+     * 鍒犻櫎鐐规淇濆吇璁″垝鐐规椤圭洰瀛愪俊鎭�
+     * 
+     * @param id 鐐规淇濆吇璁″垝鐐规椤圭洰瀛愪富閿�
+     * @return 缁撴灉
+     */
+    public int deleteEmInspectionPlanItemsById(Long id);
+}
diff --git a/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanItems/service/impl/EmInspectionPlanItemsServiceImpl.java b/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanItems/service/impl/EmInspectionPlanItemsServiceImpl.java
new file mode 100644
index 0000000..5e77f51
--- /dev/null
+++ b/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanItems/service/impl/EmInspectionPlanItemsServiceImpl.java
@@ -0,0 +1,96 @@
+package com.jcdm.main.em.inspectionPlanItems.service.impl;
+
+import java.util.List;
+import com.jcdm.common.utils.DateUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import com.jcdm.main.em.inspectionPlanItems.mapper.EmInspectionPlanItemsMapper;
+import com.jcdm.main.em.inspectionPlanItems.domain.EmInspectionPlanItems;
+import com.jcdm.main.em.inspectionPlanItems.service.IEmInspectionPlanItemsService;
+
+/**
+ * 鐐规淇濆吇璁″垝鐐规椤圭洰瀛怱ervice涓氬姟灞傚鐞�
+ * 
+ * @author Yi
+ * @date 2024-03-13
+ */
+@Service
+public class EmInspectionPlanItemsServiceImpl implements IEmInspectionPlanItemsService 
+{
+    @Autowired
+    private EmInspectionPlanItemsMapper emInspectionPlanItemsMapper;
+
+    /**
+     * 鏌ヨ鐐规淇濆吇璁″垝鐐规椤圭洰瀛�
+     * 
+     * @param id 鐐规淇濆吇璁″垝鐐规椤圭洰瀛愪富閿�
+     * @return 鐐规淇濆吇璁″垝鐐规椤圭洰瀛�
+     */
+    @Override
+    public EmInspectionPlanItems selectEmInspectionPlanItemsById(Long id)
+    {
+        return emInspectionPlanItemsMapper.selectEmInspectionPlanItemsById(id);
+    }
+
+    /**
+     * 鏌ヨ鐐规淇濆吇璁″垝鐐规椤圭洰瀛愬垪琛�
+     * 
+     * @param emInspectionPlanItems 鐐规淇濆吇璁″垝鐐规椤圭洰瀛�
+     * @return 鐐规淇濆吇璁″垝鐐规椤圭洰瀛�
+     */
+    @Override
+    public List<EmInspectionPlanItems> selectEmInspectionPlanItemsList(EmInspectionPlanItems emInspectionPlanItems)
+    {
+        return emInspectionPlanItemsMapper.selectEmInspectionPlanItemsList(emInspectionPlanItems);
+    }
+
+    /**
+     * 鏂板鐐规淇濆吇璁″垝鐐规椤圭洰瀛�
+     * 
+     * @param emInspectionPlanItems 鐐规淇濆吇璁″垝鐐规椤圭洰瀛�
+     * @return 缁撴灉
+     */
+    @Override
+    public int insertEmInspectionPlanItems(EmInspectionPlanItems emInspectionPlanItems)
+    {
+        emInspectionPlanItems.setCreateTime(DateUtils.getNowDate());
+        return emInspectionPlanItemsMapper.insertEmInspectionPlanItems(emInspectionPlanItems);
+    }
+
+    /**
+     * 淇敼鐐规淇濆吇璁″垝鐐规椤圭洰瀛�
+     * 
+     * @param emInspectionPlanItems 鐐规淇濆吇璁″垝鐐规椤圭洰瀛�
+     * @return 缁撴灉
+     */
+    @Override
+    public int updateEmInspectionPlanItems(EmInspectionPlanItems emInspectionPlanItems)
+    {
+        emInspectionPlanItems.setUpdateTime(DateUtils.getNowDate());
+        return emInspectionPlanItemsMapper.updateEmInspectionPlanItems(emInspectionPlanItems);
+    }
+
+    /**
+     * 鎵归噺鍒犻櫎鐐规淇濆吇璁″垝鐐规椤圭洰瀛�
+     * 
+     * @param ids 闇�瑕佸垹闄ょ殑鐐规淇濆吇璁″垝鐐规椤圭洰瀛愪富閿�
+     * @return 缁撴灉
+     */
+    @Override
+    public int deleteEmInspectionPlanItemsByIds(Long[] ids)
+    {
+        return emInspectionPlanItemsMapper.deleteEmInspectionPlanItemsByIds(ids);
+    }
+
+    /**
+     * 鍒犻櫎鐐规淇濆吇璁″垝鐐规椤圭洰瀛愪俊鎭�
+     * 
+     * @param id 鐐规淇濆吇璁″垝鐐规椤圭洰瀛愪富閿�
+     * @return 缁撴灉
+     */
+    @Override
+    public int deleteEmInspectionPlanItemsById(Long id)
+    {
+        return emInspectionPlanItemsMapper.deleteEmInspectionPlanItemsById(id);
+    }
+}
diff --git a/jcdm-main/src/main/resources/mapper/em/inspectionPlanArchives/EmInspectionPlanArchivesMapper.xml b/jcdm-main/src/main/resources/mapper/em/inspectionPlanArchives/EmInspectionPlanArchivesMapper.xml
new file mode 100644
index 0000000..0b4f07b
--- /dev/null
+++ b/jcdm-main/src/main/resources/mapper/em/inspectionPlanArchives/EmInspectionPlanArchivesMapper.xml
@@ -0,0 +1,118 @@
+<?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.jcdm.main.em.inspectionPlanArchives.mapper.EmInspectionPlanArchivesMapper">
+    
+    <resultMap type="EmInspectionPlanArchives" id="EmInspectionPlanArchivesResult">
+        <result property="id"    column="id"    />
+        <result property="equipmentCode"    column="equipment_code"    />
+        <result property="equipmentName"    column="equipment_name"    />
+        <result property="equipmentBrand"    column="equipment_brand"    />
+        <result property="equipmentSpec"    column="equipment_spec"    />
+        <result property="remark"    column="remark"    />
+        <result property="createUser"    column="create_user"    />
+        <result property="createTime"    column="create_time"    />
+        <result property="updateUser"    column="update_user"    />
+        <result property="updateTime"    column="update_time"    />
+        <result property="spareField1"    column="spare_field_1"    />
+        <result property="spareField2"    column="spare_field_2"    />
+        <result property="spareField3"    column="spare_field_3"    />
+        <result property="spareField4"    column="spare_field_4"    />
+        <result property="planCode"    column="plan_code"    />
+    </resultMap>
+
+    <sql id="selectEmInspectionPlanArchivesVo">
+        select id, equipment_code, equipment_name, equipment_brand, equipment_spec, remark, create_user, create_time, update_user, update_time, spare_field_1, spare_field_2, spare_field_3, spare_field_4, plan_code from em_inspection_plan_archives
+    </sql>
+
+    <select id="selectEmInspectionPlanArchivesList" parameterType="EmInspectionPlanArchives" resultMap="EmInspectionPlanArchivesResult">
+        <include refid="selectEmInspectionPlanArchivesVo"/>
+        <where>  
+            <if test="equipmentCode != null  and equipmentCode != ''"> and equipment_code = #{equipmentCode}</if>
+            <if test="equipmentName != null  and equipmentName != ''"> and equipment_name like concat('%', #{equipmentName}, '%')</if>
+            <if test="equipmentBrand != null  and equipmentBrand != ''"> and equipment_brand = #{equipmentBrand}</if>
+            <if test="equipmentSpec != null  and equipmentSpec != ''"> and equipment_spec = #{equipmentSpec}</if>
+            <if test="createUser != null  and createUser != ''"> and create_user = #{createUser}</if>
+            <if test="updateUser != null  and updateUser != ''"> and update_user = #{updateUser}</if>
+            <if test="spareField1 != null  and spareField1 != ''"> and spare_field_1 = #{spareField1}</if>
+            <if test="spareField2 != null  and spareField2 != ''"> and spare_field_2 = #{spareField2}</if>
+            <if test="spareField3 != null "> and spare_field_3 = #{spareField3}</if>
+            <if test="spareField4 != null "> and spare_field_4 = #{spareField4}</if>
+            <if test="planCode != null  and planCode != ''"> and plan_code = #{planCode}</if>
+        </where>
+    </select>
+    
+    <select id="selectEmInspectionPlanArchivesById" parameterType="Long" resultMap="EmInspectionPlanArchivesResult">
+        <include refid="selectEmInspectionPlanArchivesVo"/>
+        where id = #{id}
+    </select>
+        
+    <insert id="insertEmInspectionPlanArchives" parameterType="EmInspectionPlanArchives" useGeneratedKeys="true" keyProperty="id">
+        insert into em_inspection_plan_archives
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="equipmentCode != null">equipment_code,</if>
+            <if test="equipmentName != null">equipment_name,</if>
+            <if test="equipmentBrand != null">equipment_brand,</if>
+            <if test="equipmentSpec != null">equipment_spec,</if>
+            <if test="remark != null">remark,</if>
+            <if test="createUser != null">create_user,</if>
+            <if test="createTime != null">create_time,</if>
+            <if test="updateUser != null">update_user,</if>
+            <if test="updateTime != null">update_time,</if>
+            <if test="spareField1 != null">spare_field_1,</if>
+            <if test="spareField2 != null">spare_field_2,</if>
+            <if test="spareField3 != null">spare_field_3,</if>
+            <if test="spareField4 != null">spare_field_4,</if>
+            <if test="planCode != null">plan_code,</if>
+         </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="equipmentCode != null">#{equipmentCode},</if>
+            <if test="equipmentName != null">#{equipmentName},</if>
+            <if test="equipmentBrand != null">#{equipmentBrand},</if>
+            <if test="equipmentSpec != null">#{equipmentSpec},</if>
+            <if test="remark != null">#{remark},</if>
+            <if test="createUser != null">#{createUser},</if>
+            <if test="createTime != null">#{createTime},</if>
+            <if test="updateUser != null">#{updateUser},</if>
+            <if test="updateTime != null">#{updateTime},</if>
+            <if test="spareField1 != null">#{spareField1},</if>
+            <if test="spareField2 != null">#{spareField2},</if>
+            <if test="spareField3 != null">#{spareField3},</if>
+            <if test="spareField4 != null">#{spareField4},</if>
+            <if test="planCode != null">#{planCode},</if>
+         </trim>
+    </insert>
+
+    <update id="updateEmInspectionPlanArchives" parameterType="EmInspectionPlanArchives">
+        update em_inspection_plan_archives
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="equipmentCode != null">equipment_code = #{equipmentCode},</if>
+            <if test="equipmentName != null">equipment_name = #{equipmentName},</if>
+            <if test="equipmentBrand != null">equipment_brand = #{equipmentBrand},</if>
+            <if test="equipmentSpec != null">equipment_spec = #{equipmentSpec},</if>
+            <if test="remark != null">remark = #{remark},</if>
+            <if test="createUser != null">create_user = #{createUser},</if>
+            <if test="createTime != null">create_time = #{createTime},</if>
+            <if test="updateUser != null">update_user = #{updateUser},</if>
+            <if test="updateTime != null">update_time = #{updateTime},</if>
+            <if test="spareField1 != null">spare_field_1 = #{spareField1},</if>
+            <if test="spareField2 != null">spare_field_2 = #{spareField2},</if>
+            <if test="spareField3 != null">spare_field_3 = #{spareField3},</if>
+            <if test="spareField4 != null">spare_field_4 = #{spareField4},</if>
+            <if test="planCode != null">plan_code = #{planCode},</if>
+        </trim>
+        where id = #{id}
+    </update>
+
+    <delete id="deleteEmInspectionPlanArchivesById" parameterType="Long">
+        delete from em_inspection_plan_archives where id = #{id}
+    </delete>
+
+    <delete id="deleteEmInspectionPlanArchivesByIds" parameterType="String">
+        delete from em_inspection_plan_archives where id in 
+        <foreach item="id" collection="array" open="(" separator="," close=")">
+            #{id}
+        </foreach>
+    </delete>
+</mapper>
\ No newline at end of file
diff --git a/jcdm-main/src/main/resources/mapper/em/inspectionPlanItems/EmInspectionPlanItemsMapper.xml b/jcdm-main/src/main/resources/mapper/em/inspectionPlanItems/EmInspectionPlanItemsMapper.xml
new file mode 100644
index 0000000..3dd805a
--- /dev/null
+++ b/jcdm-main/src/main/resources/mapper/em/inspectionPlanItems/EmInspectionPlanItemsMapper.xml
@@ -0,0 +1,109 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.jcdm.main.em.inspectionPlanItems.mapper.EmInspectionPlanItemsMapper">
+    
+    <resultMap type="EmInspectionPlanItems" id="EmInspectionPlanItemsResult">
+        <result property="id"    column="id"    />
+        <result property="itemsCode"    column="items_code"    />
+        <result property="itemsName"    column="items_name"    />
+        <result property="itemsType"    column="items_type"    />
+        <result property="standard"    column="standard"    />
+        <result property="itemsContent"    column="items_content"    />
+        <result property="createUser"    column="create_user"    />
+        <result property="createTime"    column="create_time"    />
+        <result property="updateUser"    column="update_user"    />
+        <result property="updateTime"    column="update_time"    />
+        <result property="spareField1"    column="spare_field_1"    />
+        <result property="spareField2"    column="spare_field_2"    />
+        <result property="planCode"    column="plan_code"    />
+    </resultMap>
+
+    <sql id="selectEmInspectionPlanItemsVo">
+        select id, items_code, items_name, items_type, standard, items_content, create_user, create_time, update_user, update_time, spare_field_1, spare_field_2, plan_code from em_inspection_plan_items
+    </sql>
+
+    <select id="selectEmInspectionPlanItemsList" parameterType="EmInspectionPlanItems" resultMap="EmInspectionPlanItemsResult">
+        <include refid="selectEmInspectionPlanItemsVo"/>
+        <where>  
+            <if test="itemsCode != null  and itemsCode != ''"> and items_code = #{itemsCode}</if>
+            <if test="itemsName != null  and itemsName != ''"> and items_name like concat('%', #{itemsName}, '%')</if>
+            <if test="itemsType != null  and itemsType != ''"> and items_type = #{itemsType}</if>
+            <if test="standard != null  and standard != ''"> and standard = #{standard}</if>
+            <if test="itemsContent != null  and itemsContent != ''"> and items_content = #{itemsContent}</if>
+            <if test="createUser != null  and createUser != ''"> and create_user = #{createUser}</if>
+            <if test="updateUser != null  and updateUser != ''"> and update_user = #{updateUser}</if>
+            <if test="spareField1 != null  and spareField1 != ''"> and spare_field_1 = #{spareField1}</if>
+            <if test="spareField2 != null  and spareField2 != ''"> and spare_field_2 = #{spareField2}</if>
+            <if test="planCode != null  and planCode != ''"> and plan_code = #{planCode}</if>
+        </where>
+    </select>
+    
+    <select id="selectEmInspectionPlanItemsById" parameterType="Long" resultMap="EmInspectionPlanItemsResult">
+        <include refid="selectEmInspectionPlanItemsVo"/>
+        where id = #{id}
+    </select>
+        
+    <insert id="insertEmInspectionPlanItems" parameterType="EmInspectionPlanItems" useGeneratedKeys="true" keyProperty="id">
+        insert into em_inspection_plan_items
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="itemsCode != null">items_code,</if>
+            <if test="itemsName != null">items_name,</if>
+            <if test="itemsType != null">items_type,</if>
+            <if test="standard != null">standard,</if>
+            <if test="itemsContent != null">items_content,</if>
+            <if test="createUser != null">create_user,</if>
+            <if test="createTime != null">create_time,</if>
+            <if test="updateUser != null">update_user,</if>
+            <if test="updateTime != null">update_time,</if>
+            <if test="spareField1 != null">spare_field_1,</if>
+            <if test="spareField2 != null">spare_field_2,</if>
+            <if test="planCode != null">plan_code,</if>
+         </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="itemsCode != null">#{itemsCode},</if>
+            <if test="itemsName != null">#{itemsName},</if>
+            <if test="itemsType != null">#{itemsType},</if>
+            <if test="standard != null">#{standard},</if>
+            <if test="itemsContent != null">#{itemsContent},</if>
+            <if test="createUser != null">#{createUser},</if>
+            <if test="createTime != null">#{createTime},</if>
+            <if test="updateUser != null">#{updateUser},</if>
+            <if test="updateTime != null">#{updateTime},</if>
+            <if test="spareField1 != null">#{spareField1},</if>
+            <if test="spareField2 != null">#{spareField2},</if>
+            <if test="planCode != null">#{planCode},</if>
+         </trim>
+    </insert>
+
+    <update id="updateEmInspectionPlanItems" parameterType="EmInspectionPlanItems">
+        update em_inspection_plan_items
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="itemsCode != null">items_code = #{itemsCode},</if>
+            <if test="itemsName != null">items_name = #{itemsName},</if>
+            <if test="itemsType != null">items_type = #{itemsType},</if>
+            <if test="standard != null">standard = #{standard},</if>
+            <if test="itemsContent != null">items_content = #{itemsContent},</if>
+            <if test="createUser != null">create_user = #{createUser},</if>
+            <if test="createTime != null">create_time = #{createTime},</if>
+            <if test="updateUser != null">update_user = #{updateUser},</if>
+            <if test="updateTime != null">update_time = #{updateTime},</if>
+            <if test="spareField1 != null">spare_field_1 = #{spareField1},</if>
+            <if test="spareField2 != null">spare_field_2 = #{spareField2},</if>
+            <if test="planCode != null">plan_code = #{planCode},</if>
+        </trim>
+        where id = #{id}
+    </update>
+
+    <delete id="deleteEmInspectionPlanItemsById" parameterType="Long">
+        delete from em_inspection_plan_items where id = #{id}
+    </delete>
+
+    <delete id="deleteEmInspectionPlanItemsByIds" parameterType="String">
+        delete from em_inspection_plan_items where id in 
+        <foreach item="id" collection="array" open="(" separator="," close=")">
+            #{id}
+        </foreach>
+    </delete>
+</mapper>
\ No newline at end of file
diff --git a/jcdm-ui/src/api/main/em/inspectionPlanArchives/inspectionPlanArchives.js b/jcdm-ui/src/api/main/em/inspectionPlanArchives/inspectionPlanArchives.js
new file mode 100644
index 0000000..3751695
--- /dev/null
+++ b/jcdm-ui/src/api/main/em/inspectionPlanArchives/inspectionPlanArchives.js
@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 鏌ヨ鐐规淇濆吇璁″垝璁惧娓呭崟鍒楄〃
+export function listInspectionPlanArchives(query) {
+  return request({
+    url: '/em/inspectionPlanArchives/list',
+    method: 'get',
+    params: query
+  })
+}
+
+// 鏌ヨ鐐规淇濆吇璁″垝璁惧娓呭崟璇︾粏
+export function getInspectionPlanArchives(id) {
+  return request({
+    url: '/em/inspectionPlanArchives/' + id,
+    method: 'get'
+  })
+}
+
+// 鏂板鐐规淇濆吇璁″垝璁惧娓呭崟
+export function addInspectionPlanArchives(data) {
+  return request({
+    url: '/em/inspectionPlanArchives',
+    method: 'post',
+    data: data
+  })
+}
+
+// 淇敼鐐规淇濆吇璁″垝璁惧娓呭崟
+export function updateInspectionPlanArchives(data) {
+  return request({
+    url: '/em/inspectionPlanArchives',
+    method: 'put',
+    data: data
+  })
+}
+
+// 鍒犻櫎鐐规淇濆吇璁″垝璁惧娓呭崟
+export function delInspectionPlanArchives(id) {
+  return request({
+    url: '/em/inspectionPlanArchives/' + id,
+    method: 'delete'
+  })
+}
diff --git a/jcdm-ui/src/api/main/em/inspectionPlanItems/inspectionPlanItems.js b/jcdm-ui/src/api/main/em/inspectionPlanItems/inspectionPlanItems.js
new file mode 100644
index 0000000..197c033
--- /dev/null
+++ b/jcdm-ui/src/api/main/em/inspectionPlanItems/inspectionPlanItems.js
@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 鏌ヨ鐐规淇濆吇璁″垝鐐规椤圭洰瀛愬垪琛�
+export function listInspectionPlanItems(query) {
+  return request({
+    url: '/em/inspectionPlanItems/list',
+    method: 'get',
+    params: query
+  })
+}
+
+// 鏌ヨ鐐规淇濆吇璁″垝鐐规椤圭洰瀛愯缁�
+export function getInspectionPlanItems(id) {
+  return request({
+    url: '/em/inspectionPlanItems/' + id,
+    method: 'get'
+  })
+}
+
+// 鏂板鐐规淇濆吇璁″垝鐐规椤圭洰瀛�
+export function addInspectionPlanItems(data) {
+  return request({
+    url: '/em/inspectionPlanItems',
+    method: 'post',
+    data: data
+  })
+}
+
+// 淇敼鐐规淇濆吇璁″垝鐐规椤圭洰瀛�
+export function updateInspectionPlanItems(data) {
+  return request({
+    url: '/em/inspectionPlanItems',
+    method: 'put',
+    data: data
+  })
+}
+
+// 鍒犻櫎鐐规淇濆吇璁″垝鐐规椤圭洰瀛�
+export function delInspectionPlanItems(id) {
+  return request({
+    url: '/em/inspectionPlanItems/' + id,
+    method: 'delete'
+  })
+}
diff --git a/jcdm-ui/src/components/inspectionPlanArchives/index.vue b/jcdm-ui/src/components/inspectionPlanArchives/index.vue
new file mode 100644
index 0000000..cca1efe
--- /dev/null
+++ b/jcdm-ui/src/components/inspectionPlanArchives/index.vue
@@ -0,0 +1,169 @@
+<template>
+  <el-dialog title="璁惧閫夋嫨"
+             v-if="showFlag"
+             :visible.sync="showFlag"
+             :modal= false
+             width="80%"
+             center
+  >
+    <el-row :gutter="20">
+      <!--璁惧鏁版嵁-->
+      <el-col :span="20" :xs="24">
+        <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
+          <el-form-item label="璁惧缂栫爜" prop="machineryCode">
+            <el-input
+              v-model="queryParams.equipmentCode"
+              placeholder="璇疯緭鍏ヨ澶囩紪鐮�"
+              clearable
+              style="width: 240px"
+              @keyup.enter.native="handleQuery"
+            />
+          </el-form-item>
+          <el-form-item label="璁惧鍚嶇О" prop="machineryName">
+            <el-input
+              v-model="queryParams.equipmentName"
+              placeholder="璇疯緭鍏ヨ澶囧悕绉�"
+              clearable
+              style="width: 240px"
+              @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-table v-loading="loading" :data="machineryList" @selection-change="handleSelectionChange">
+          <el-table-column type="selection" width="50" align="center" />
+          <el-table-column label="璁惧缂栫爜"  align="center"  prop="equipmentCode"/>
+          <el-table-column label="璁惧鍚嶇О"  align="center"  prop="equipmentName"  />
+          <el-table-column label="鍝佺墝" align="center"  prop="equipmentBrand" />
+          <el-table-column label="瑙勬牸鍨嬪彿" align="center"  prop="equipmentSpec" />
+          <el-table-column label="鍒涘缓鏃堕棿" align="center" prop="createTime" width="160">
+            <template slot-scope="scope">
+              <span>{{ parseTime(scope.row.createTime) }}</span>
+            </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>
+    <div slot="footer" class="dialog-footer">
+      <el-button type="primary" @click="confirmSelect">纭� 瀹�</el-button>
+      <el-button @click="showFlag=false">鍙� 娑�</el-button>
+    </div>
+  </el-dialog>
+</template>
+
+<script>
+
+import { listEquipmentArchives, getEquipmentArchives, delEquipmentArchives, addEquipmentArchives, updateEquipmentArchives } from "@/api/main/em/equipmentArchives/equipmentArchives";
+
+
+export default {
+  name: "MachinerySelect",
+  dicts: ['sys_yes_no','mes_machinery_status'],
+  components: {  },
+  data() {
+    return {
+      showFlag: false,
+      // 閬僵灞�
+      loading: true,
+      // 閫変腑鏁扮粍
+      ids: [],
+      selectedRows: [],
+      // 闈炲崟涓鐢�
+      single: true,
+      // 闈炲涓鐢�
+      multiple: true,
+      // 鏄剧ず鎼滅储鏉′欢
+      showSearch: true,
+      // 鎬绘潯鏁�
+      total: 0,
+      // 鐗╂枡浜у搧琛ㄦ牸鏁版嵁
+      machineryList: [],
+      // 寮瑰嚭灞傛爣棰�
+      title: "",
+      // 璁惧绫诲瀷鏍戦�夐」
+      machineryTypeOptions: [],
+      //杞﹂棿閫夐」
+      workshopOptions:[],
+      // 鏄惁鏄剧ず寮瑰嚭灞�
+      open: false,
+      //鑷姩鐢熸垚鐗╂枡缂栫爜鏍囪瘑
+      autoGenFlag: false,
+      // 琛ㄥ崟鍙傛暟
+      form: {},
+      defaultProps: {
+        children: "children",
+      },
+      // 鏌ヨ鍙傛暟
+      queryParams: {
+        pageNum: 1,
+        pageSize: 10,
+        equipmentCode: null,
+        equipmentName: null,
+        equipmentBrand: null,
+        equipmentSpec: null,
+        workshopId: null,
+        workshopCode: null,
+        workshopName: null,
+        status: null
+      }
+    };
+  },
+  created() {
+    this.getList();
+  },
+  methods: {
+    /** 鏌ヨ鐗╂枡缂栫爜鍒楄〃 */
+    getList() {
+      this.loading = true;
+      listEquipmentArchives(this.queryParams).then(response => {
+          this.machineryList = response.rows;
+          this.total = response.total;
+          this.loading = false;
+
+        },
+      );
+    },
+    /** 鎼滅储鎸夐挳鎿嶄綔 */
+    handleQuery() {
+      this.queryParams.pageNum = 1;
+      this.getList();
+    },
+    /** 閲嶇疆鎸夐挳鎿嶄綔 */
+    resetQuery() {
+      this.resetForm("queryForm");
+      this.handleQuery();
+    },
+    // 澶氶�夋閫変腑鏁版嵁
+    handleSelectionChange(selection) {
+      this.ids = selection.map(item => item.machineryId);
+      this.selectedRows = selection;
+      this.single = selection.length != 1;
+      this.multiple = !selection.length;
+    },
+    //纭畾閫変腑
+    confirmSelect(){
+      if(this.ids ==[] || this.ids.length==0){
+        this.$notify({
+          title:'鎻愮ず',
+          type:'warning',
+          message: '璇疯嚦灏戦�夋嫨涓�鏉℃暟鎹�!'
+        });
+        return;
+      }
+      this.$emit('onSelected',this.selectedRows);
+      this.showFlag = false;
+    }
+  }
+};
+</script>
diff --git a/jcdm-ui/src/components/inspectionPlanItems/index.vue b/jcdm-ui/src/components/inspectionPlanItems/index.vue
new file mode 100644
index 0000000..df52ff4
--- /dev/null
+++ b/jcdm-ui/src/components/inspectionPlanItems/index.vue
@@ -0,0 +1,166 @@
+<template>
+  <el-dialog title="璁惧閫夋嫨"
+             v-if="showFlag"
+             :visible.sync="showFlag"
+             :modal= false
+             width="80%"
+             center
+  >
+    <el-row :gutter="20">
+      <!--璁惧鏁版嵁-->
+      <el-col :span="20" :xs="24">
+        <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
+          <el-form-item label="璁惧缂栫爜" prop="machineryCode">
+            <el-input
+              v-model="queryParams.equipmentCode"
+              placeholder="璇疯緭鍏ヨ澶囩紪鐮�"
+              clearable
+              style="width: 240px"
+              @keyup.enter.native="handleQuery"
+            />
+          </el-form-item>
+          <el-form-item label="璁惧鍚嶇О" prop="machineryName">
+            <el-input
+              v-model="queryParams.equipmentName"
+              placeholder="璇疯緭鍏ヨ澶囧悕绉�"
+              clearable
+              style="width: 240px"
+              @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-table v-loading="loading" :data="dvsubjectList" @selection-change="handleSelectionChange">
+          <el-table-column type="selection" width="55" align="center" />
+          <el-table-column label="椤圭洰鍚嶇О" align="center" prop="itemsName">
+          </el-table-column>
+          <el-table-column label="椤圭洰缂栧彿" align="center" prop="itemsCode">
+          </el-table-column>
+          <el-table-column label="椤圭洰绫诲瀷" align="center" prop="itemsType">
+            <template slot-scope="scope">
+              <dict-tag :options="dict.type.spotmaintenance" :value="scope.row.itemsType"/>
+            </template>
+          </el-table-column>
+          <el-table-column label="椤圭洰鍐呭" align="center" prop="itemsContent">
+          </el-table-column>
+          <el-table-column label="鏍囧噯" align="center" prop="standard">
+          </el-table-column>
+          <el-table-column label="鍒涘缓浜�" align="center" prop="createUser">
+          </el-table-column>
+          <el-table-column label="鍒涘缓鏃堕棿" align="center" prop="createTime">
+          </el-table-column>
+          <el-table-column label="鏇存柊浜�" align="center" prop="updateUser">
+          </el-table-column>
+          <el-table-column label="鏇存柊鏃堕棿" align="center" prop="updateTime">
+          </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>
+    <div slot="footer" class="dialog-footer">
+      <el-button type="primary" @click="confirmSelect">纭� 瀹�</el-button>
+      <el-button @click="showFlag=false">鍙� 娑�</el-button>
+    </div>
+  </el-dialog>
+</template>
+
+<script>
+
+import { listInspectionItems, getInspectionItems, delInspectionItems, addInspectionItems, updateInspectionItems } from "@/api/main/em/inspectionItems/inspectionItems";
+
+
+export default {
+  name: "DvsubjectSelect",
+  dicts: ['sys_yes_no','mes_machinery_status','spotmaintenance'],
+  components: {  },
+  data() {
+    return {
+      showFlag:false,
+      // 閬僵灞�
+      loading: true,
+      // 閫変腑鏁扮粍s
+      ids: [],
+      // 闈炲崟涓鐢�
+      single: true,
+      // 闈炲涓鐢�
+      multiple: true,
+      // 鏄剧ず鎼滅储鏉′欢
+      showSearch: true,
+      // 鎬绘潯鏁�
+      total: 0,
+      // 璁惧鐐规淇濆吇椤圭洰琛ㄦ牸鏁版嵁
+      dvsubjectList: [],
+      // 寮瑰嚭灞傛爣棰�
+      title: "",
+      // 鏄惁鏄剧ず寮瑰嚭灞�
+      open: false,
+      // 鏌ヨ鍙傛暟
+      queryParams: {
+        pageNum: 1,
+        pageSize: 10,
+        itemsCode: null,
+        itemsName: null,
+        itemsType: null,
+        standard: null,
+        itemsContent: null,
+      }
+    };
+  },
+  created() {
+    this.getList();
+  },
+  methods: {
+    /** 鏌ヨ鐐规椤圭洰鍒楄〃 */
+    getList() {
+      this.loading = true;
+      listInspectionItems(this.queryParams).then(response => {
+          this.dvsubjectList = response.rows;
+          this.total = response.total;
+          this.loading = false;
+
+        },
+      );
+    },
+    /** 鎼滅储鎸夐挳鎿嶄綔 */
+    handleQuery() {
+      this.queryParams.pageNum = 1;
+      this.getList();
+    },
+    /** 閲嶇疆鎸夐挳鎿嶄綔 */
+    resetQuery() {
+      this.resetForm("queryForm");
+      this.handleQuery();
+    },
+    // 澶氶�夋閫変腑鏁版嵁
+    handleSelectionChange(selection) {
+      this.ids = selection.map(item => item.machineryId);
+      this.selectedRows = selection;
+      this.single = selection.length != 1;
+      this.multiple = !selection.length;
+    },
+    //纭畾閫変腑
+    confirmSelect(){
+      if(this.ids ==[] || this.ids.length==0){
+        this.$notify({
+          title:'鎻愮ず',
+          type:'warning',
+          message: '璇疯嚦灏戦�夋嫨涓�鏉℃暟鎹�!'
+        });
+        return;
+      }
+      this.$emit('onSelected',this.selectedRows);
+      this.showFlag = false;
+    }
+  }
+};
+</script>
diff --git a/jcdm-ui/src/views/main/em/inspectionPlan/index.vue b/jcdm-ui/src/views/main/em/inspectionPlan/index.vue
index f70b412..9d4346c 100644
--- a/jcdm-ui/src/views/main/em/inspectionPlan/index.vue
+++ b/jcdm-ui/src/views/main/em/inspectionPlan/index.vue
@@ -204,25 +204,36 @@
           <el-input style="width: 1000px" v-model="form.remarks" placeholder="璇疯緭鍏ュ娉�" />
         </el-form-item>
       </el-form>
-      <div slot="footer" class="dialog-footer">
+      <el-tabs type="border-card" >
+        <el-tab-pane label="璁惧娓呭崟" >
+          <Checkmachinery ref="machinerylist"></Checkmachinery>
+        </el-tab-pane>
+        <el-tab-pane label="鐐规椤圭洰">
+          <Checksubject ref="subjectlist"></Checksubject>
+            </el-tab-pane>
+          </el-tabs>
+      <el-divider></el-divider>
         <el-button type="primary" @click="submitForm">纭� 瀹�</el-button>
         <el-button @click="cancel">鍙� 娑�</el-button>
-      </div>
     </el-dialog>
   </div>
 </template>
 
 <script>
 import { listInspectionPlan, getInspectionPlan, delInspectionPlan, addInspectionPlan, updateInspectionPlan } from "@/api/main/em/inspectionPlan/inspectionPlan";
+import Checkmachinery from "./machinery.vue"
+import Checksubject from "./subject.vue"
 
 export default {
   name: "InspectionPlan",
-  dicts: ['plan_status','plan_type','dimension'],
+  dicts: ['plan_status','plan_type'],
+  components:{Checkmachinery,Checksubject},
   data() {
     return {
       // 閬僵灞�
       loading: true,
       titleName: "",
+      optType: null,
       // 閫変腑鏁扮粍
       ids: [],
       // 闈炲崟涓鐢�
diff --git a/jcdm-ui/src/views/main/em/inspectionPlan/machinery.vue b/jcdm-ui/src/views/main/em/inspectionPlan/machinery.vue
new file mode 100644
index 0000000..e52b075
--- /dev/null
+++ b/jcdm-ui/src/views/main/em/inspectionPlan/machinery.vue
@@ -0,0 +1,139 @@
+<template>
+  <div class="app-container">
+    <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="['mes:dv:checkplan:add']"
+        >鏂板</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="['mes:dv:checkplan:remove']"
+        >鍒犻櫎</el-button>
+      </el-col>
+    </el-row>
+    <MachinerySelect ref="machinerySelect" @onSelected="onMachineryAdd"></MachinerySelect>
+    <el-table v-loading="loading" :data="checkmachineryList" @selection-change="handleSelectionChange">
+      <el-table-column type="selection" width="55" align="center" />
+      <el-table-column label="璁惧缂栫爜" align="center" prop="equipmentCode" />
+      <el-table-column label="璁惧鍚嶇О" align="center" prop="equipmentName" />
+      <el-table-column label="鍝佺墝" align="center" prop="equipmentBrand" />
+      <el-table-column label="瑙勬牸鍨嬪彿" align="center" prop="equipmentSpec" />
+      <el-table-column label="澶囨敞" align="center" prop="remark" />
+    </el-table>
+
+    <pagination
+      v-show="total>0"
+      :total="total"
+      :page.sync="queryParams.pageNum"
+      :limit.sync="queryParams.pageSize"
+      @pagination="getList"
+    />
+  </div>
+</template>
+
+<script>
+import { listInspectionPlanArchives, delInspectionPlanArchives, addInspectionPlanArchives} from "@/api/main/em/inspectionPlanArchives/inspectionPlanArchives";
+import MachinerySelect from "@/components/inspectionPlanArchives/index.vue";
+export default {
+  name: "Checkmachinery",
+  components:{MachinerySelect},
+  props:{
+    planId: null,
+    optType: null
+  },
+  data() {
+    return {
+      // 閬僵灞�
+      loading: true,
+
+      // 閫変腑鏁扮粍
+      ids: [],
+      // 闈炲崟涓鐢�
+      single: true,
+      // 闈炲涓鐢�
+      multiple: true,
+      // 鏄剧ず鎼滅储鏉′欢
+      showSearch: true,
+      // 鎬绘潯鏁�
+      total: 0,
+      // 鐐规璁惧琛ㄦ牸鏁版嵁
+      checkmachineryList: [],
+      // 寮瑰嚭灞傛爣棰�
+      title: "",
+      // 鏄惁鏄剧ず寮瑰嚭灞�
+      open: false,
+      // 鏌ヨ鍙傛暟
+      queryParams: {
+        pageNum: 1,
+        pageSize: 10,
+        planId: this.planId,
+        equipmentId: null,
+        equipmentCode: null,
+        equipmentName: null,
+        equipmentBrand: null,
+        equipmentSpec: null,
+      },
+      // 琛ㄥ崟鍙傛暟
+      form: {},
+    };
+  },
+  created() {
+    this.getList();
+  },
+  methods: {
+    /** 鏌ヨ鐐规璁惧鍒楄〃 */
+    getList() {
+      this.loading = true;
+      listInspectionPlanArchives(this.queryParams).then(response => {
+        this.checkmachineryList = response.rows;
+        this.total = response.total;
+        this.loading = false;
+      });
+    },
+
+    // 澶氶�夋閫変腑鏁版嵁
+    handleSelectionChange(selection) {
+      this.ids = selection.map(item => item.recordId)
+      this.single = selection.length!==1
+      this.multiple = !selection.length
+    },
+    /** 鏂板鎸夐挳鎿嶄綔 */
+    handleAdd() {
+      this.$refs.machinerySelect.showFlag = true;
+    },
+      //璁惧璧勬簮閫夋嫨鍥炶皟
+    onMachineryAdd(rows){
+      if(rows !=null && rows.length >0){
+         rows.forEach(row => {
+            row.planId = this.planId;
+           addInspectionPlanArchives(row).then(response =>{
+              this.getList();
+            });
+         });
+      }
+    },
+    /** 鍒犻櫎鎸夐挳鎿嶄綔 */
+    handleDelete(row) {
+      const recordIds = row.recordId || this.ids;
+      this.$modal.confirm('鏄惁纭鍒犻櫎鐐规璁惧缂栧彿涓�"' + recordIds + '"鐨勬暟鎹」锛�').then(function() {
+        return delInspectionPlanArchives(recordIds);
+      }).then(() => {
+        this.getList();
+        this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+      }).catch(() => {});
+    }
+  }
+};
+</script>
diff --git a/jcdm-ui/src/views/main/em/inspectionPlan/subject.vue b/jcdm-ui/src/views/main/em/inspectionPlan/subject.vue
new file mode 100644
index 0000000..3e4baa9
--- /dev/null
+++ b/jcdm-ui/src/views/main/em/inspectionPlan/subject.vue
@@ -0,0 +1,144 @@
+<template>
+  <div class="app-container">
+    <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="['mes:dv:checkplan:add']"
+        >鏂板</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="['mes:dv:checkplan:remove']"
+        >鍒犻櫎</el-button>
+      </el-col>
+    </el-row>
+    <DvsubjectSelect ref="subjectSelect"  @onSelected="onSubjectSelected"></DvsubjectSelect>
+    <el-table v-loading="loading" :data="checksubjectList" @selection-change="handleSelectionChange">
+      <el-table-column type="selection" width="55" align="center" />
+      <el-table-column label="椤圭洰缂栫爜" align="center" prop="itemsCode" />
+      <el-table-column label="椤圭洰鍚嶇О" align="center" prop="itemsName" />
+      <el-table-column label="椤圭洰绫诲瀷" align="center" prop="itemsType">
+        <template slot-scope="scope">
+          <dict-tag :options="dict.type.spotmaintenance" :value="scope.row.itemsType"/>
+        </template>
+      </el-table-column>
+      <el-table-column label="椤圭洰鍐呭" align="center" width="300px" prop="itemsContent" />
+      <el-table-column label="鏍囧噯" align="center" width="300px" prop="standard" />
+    </el-table>
+
+    <pagination
+      v-show="total>0"
+      :total="total"
+      :page.sync="queryParams.pageNum"
+      :limit.sync="queryParams.pageSize"
+      @pagination="getList"
+    />
+  </div>
+</template>
+
+<script>
+import {listInspectionPlanItems,delInspectionPlanItems,addInspectionPlanItems} from "@/api/main/em/inspectionPlanItems/inspectionPlanItems";
+import DvsubjectSelect from "@/components/inspectionPlanItems/index.vue"
+export default {
+  name: "Checksubject",
+  props:{
+      planId: null,
+      optType: null
+  },
+  dicts: ['spotmaintenance'],
+  components:{DvsubjectSelect},
+  data() {
+    return {
+      // 閬僵灞�
+      loading: true,
+      // 閫変腑鏁扮粍
+      ids: [],
+        selectedRows: [],
+      // 闈炲崟涓鐢�
+      single: true,
+      // 闈炲涓鐢�
+      multiple: true,
+      // 鏄剧ず鎼滅储鏉′欢
+      showSearch: true,
+      // 鎬绘潯鏁�
+      total: 0,
+      // 鐐规椤圭洰琛ㄦ牸鏁版嵁
+      checksubjectList: [],
+      // 寮瑰嚭灞傛爣棰�
+      title: "",
+      // 鏄惁鏄剧ず寮瑰嚭灞�
+      open: false,
+      // 鏌ヨ鍙傛暟
+      queryParams: {
+        pageNum: 1,
+        pageSize: 10,
+        planId: this.planId,
+        itemsCode: null,
+        itemsName: null,
+        itemsType: null,
+        standard: null,
+        itemsContent: null,
+      },
+      // 琛ㄥ崟鍙傛暟
+      form: {}
+    };
+  },
+  created() {
+    this.getList();
+  },
+  methods: {
+    /** 鏌ヨ鐐规椤圭洰鍒楄〃 */
+    getList() {
+      this.loading = true;
+      listInspectionPlanItems(this.queryParams).then(response => {
+        this.checksubjectList = response.rows;
+        this.total = response.total;
+        this.loading = false;
+        console.log(response.rows)
+      });
+    },
+    // 澶氶�夋閫変腑鏁版嵁
+    handleSelectionChange(selection) {
+      this.ids = selection.map(item => item.recordId)
+      this.single = selection.length!==1
+      this.multiple = !selection.length
+    },
+    /** 鏂板鎸夐挳鎿嶄綔 */
+    handleAdd() {
+        this.$refs.subjectSelect.showFlag = true;
+    },
+    onSubjectSelected(rows){
+        if(rows != null && rows.length >0){
+            rows.forEach(row => {
+                row.planId= this.planId;
+              addInspectionPlanItems(row).then(response => {
+                    this.getList();
+                });
+            });
+        }
+    },
+    /** 鍒犻櫎鎸夐挳鎿嶄綔 */
+    handleDelete(row) {
+      const recordIds = row.recordId || this.ids;
+      this.$modal.confirm('鏄惁纭鍒犻櫎鐐规椤圭洰缂栧彿涓�"' + recordIds + '"鐨勬暟鎹」锛�').then(function() {
+        return delInspectionPlanItems(recordIds);
+      }).then(() => {
+        this.getList();
+        this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+      }).catch(() => {});
+    },
+
+  }
+};
+</script>

--
Gitblit v1.9.3