From 5239031423deb80a31ac328838240adc51594804 Mon Sep 17 00:00:00 2001
From: 懒羊羊 <15939171744@163.com>
Date: 星期六, 23 三月 2024 10:42:01 +0800
Subject: [PATCH] 点检任务

---
 jcdm-ui/src/api/main/em/inspectionPlanTask/inspectionPlanTask.js                                                              |   44 +
 jcdm-ui/src/views/main/em/inspectionPlanItemsProject/index.vue                                                                |  357 +++++++++
 jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanTask/service/impl/EmInspectionPlanTaskServiceImpl.java                 |   98 ++
 jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanItemsProject/mapper/EmInspectionPlanItemsProjectMapper.java            |   63 +
 jcdm-main/src/main/java/com/jcdm/main/restful/controller/testClass.java                                                       |   30 
 jcdm-ui/src/api/main/em/inspectionPlanItemsProject/inspectionPlanItemsProject.js                                              |   44 +
 jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanTask/mapper/EmInspectionPlanTaskMapper.java                            |   63 +
 jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanItemsProject/domain/EmInspectionPlanItemsProject.java                  |  165 ++++
 jcdm-main/src/main/java/com/jcdm/main/restful/service/RestfulService.java                                                     |    2 
 jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanTask/controller/EmInspectionPlanTaskController.java                    |  104 ++
 jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanTask/domain/EmInspectionPlanTask.java                                  |  208 +++++
 jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanItemsProject/controller/EmInspectionPlanItemsProjectController.java    |  104 ++
 jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanItemsProject/service/impl/EmInspectionPlanItemsProjectServiceImpl.java |   98 ++
 jcdm-ui/src/views/main/em/inspectionPlanTask/index.vue                                                                        |  392 ++++++++++
 jcdm-main/src/main/resources/mapper/em/inspectionPlanTask/EmInspectionPlanTaskMapper.xml                                      |  113 +++
 jcdm-main/src/main/resources/mapper/em/inspectionPlanItemsProject/EmInspectionPlanItemsProjectMapper.xml                      |  100 ++
 jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanItemsProject/service/IEmInspectionPlanItemsProjectService.java         |   63 +
 jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanTask/service/IEmInspectionPlanTaskService.java                         |   63 +
 jcdm-main/src/main/resources/mapper/om/productionOrde/OmProductionOrdeInfoMapper.xml                                          |   10 
 19 files changed, 2,115 insertions(+), 6 deletions(-)

diff --git a/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanItemsProject/controller/EmInspectionPlanItemsProjectController.java b/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanItemsProject/controller/EmInspectionPlanItemsProjectController.java
new file mode 100644
index 0000000..524da4c
--- /dev/null
+++ b/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanItemsProject/controller/EmInspectionPlanItemsProjectController.java
@@ -0,0 +1,104 @@
+package com.jcdm.main.em.inspectionPlanItemsProject.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.inspectionPlanItemsProject.domain.EmInspectionPlanItemsProject;
+import com.jcdm.main.em.inspectionPlanItemsProject.service.IEmInspectionPlanItemsProjectService;
+import com.jcdm.common.utils.poi.ExcelUtil;
+import com.jcdm.common.core.page.TableDataInfo;
+
+/**
+ * 鐐规浠诲姟-椤圭洰Controller
+ * 
+ * @author Yi
+ * @date 2024-03-23
+ */
+@RestController
+@RequestMapping("/em/inspectionPlanItemsProject")
+public class EmInspectionPlanItemsProjectController extends BaseController
+{
+    @Autowired
+    private IEmInspectionPlanItemsProjectService emInspectionPlanItemsProjectService;
+
+    /**
+     * 鏌ヨ鐐规浠诲姟-椤圭洰鍒楄〃
+     */
+    @PreAuthorize("@ss.hasPermi('em:inspectionPlanItemsProject:list')")
+    @GetMapping("/list")
+    public TableDataInfo list(EmInspectionPlanItemsProject emInspectionPlanItemsProject)
+    {
+        startPage();
+        List<EmInspectionPlanItemsProject> list = emInspectionPlanItemsProjectService.selectEmInspectionPlanItemsProjectList(emInspectionPlanItemsProject);
+        return getDataTable(list);
+    }
+
+    /**
+     * 瀵煎嚭鐐规浠诲姟-椤圭洰鍒楄〃
+     */
+    @PreAuthorize("@ss.hasPermi('em:inspectionPlanItemsProject:export')")
+    @Log(title = "鐐规浠诲姟-椤圭洰", businessType = BusinessType.EXPORT)
+    @PostMapping("/export")
+    public void export(HttpServletResponse response, EmInspectionPlanItemsProject emInspectionPlanItemsProject)
+    {
+        List<EmInspectionPlanItemsProject> list = emInspectionPlanItemsProjectService.selectEmInspectionPlanItemsProjectList(emInspectionPlanItemsProject);
+        ExcelUtil<EmInspectionPlanItemsProject> util = new ExcelUtil<EmInspectionPlanItemsProject>(EmInspectionPlanItemsProject.class);
+        util.exportExcel(response, list, "鐐规浠诲姟-椤圭洰鏁版嵁");
+    }
+
+    /**
+     * 鑾峰彇鐐规浠诲姟-椤圭洰璇︾粏淇℃伅
+     */
+    @PreAuthorize("@ss.hasPermi('em:inspectionPlanItemsProject:query')")
+    @GetMapping(value = "/{id}")
+    public AjaxResult getInfo(@PathVariable("id") Long id)
+    {
+        return success(emInspectionPlanItemsProjectService.selectEmInspectionPlanItemsProjectById(id));
+    }
+
+    /**
+     * 鏂板鐐规浠诲姟-椤圭洰
+     */
+    @PreAuthorize("@ss.hasPermi('em:inspectionPlanItemsProject:add')")
+    @Log(title = "鐐规浠诲姟-椤圭洰", businessType = BusinessType.INSERT)
+    @PostMapping
+    public AjaxResult add(@RequestBody EmInspectionPlanItemsProject emInspectionPlanItemsProject)
+    {
+        return toAjax(emInspectionPlanItemsProjectService.insertEmInspectionPlanItemsProject(emInspectionPlanItemsProject));
+    }
+
+    /**
+     * 淇敼鐐规浠诲姟-椤圭洰
+     */
+    @PreAuthorize("@ss.hasPermi('em:inspectionPlanItemsProject:edit')")
+    @Log(title = "鐐规浠诲姟-椤圭洰", businessType = BusinessType.UPDATE)
+    @PutMapping
+    public AjaxResult edit(@RequestBody EmInspectionPlanItemsProject emInspectionPlanItemsProject)
+    {
+        return toAjax(emInspectionPlanItemsProjectService.updateEmInspectionPlanItemsProject(emInspectionPlanItemsProject));
+    }
+
+    /**
+     * 鍒犻櫎鐐规浠诲姟-椤圭洰
+     */
+    @PreAuthorize("@ss.hasPermi('em:inspectionPlanItemsProject:remove')")
+    @Log(title = "鐐规浠诲姟-椤圭洰", businessType = BusinessType.DELETE)
+	@DeleteMapping("/{ids}")
+    public AjaxResult remove(@PathVariable Long[] ids)
+    {
+        return toAjax(emInspectionPlanItemsProjectService.deleteEmInspectionPlanItemsProjectByIds(ids));
+    }
+}
diff --git a/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanItemsProject/domain/EmInspectionPlanItemsProject.java b/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanItemsProject/domain/EmInspectionPlanItemsProject.java
new file mode 100644
index 0000000..4a643a1
--- /dev/null
+++ b/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanItemsProject/domain/EmInspectionPlanItemsProject.java
@@ -0,0 +1,165 @@
+package com.jcdm.main.em.inspectionPlanItemsProject.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_project
+ * 
+ * @author Yi
+ * @date 2024-03-23
+ */
+public class EmInspectionPlanItemsProject 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;
+
+    /** 缁撴灉 */
+    @Excel(name = "缁撴灉")
+    private String results;
+
+
+    /** 浠诲姟ID */
+    private String planTaskId;
+
+    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 setResults(String results) 
+    {
+        this.results = results;
+    }
+
+    public String getResults() 
+    {
+        return results;
+    }
+    public void setPlanTaskId(String planTaskId) 
+    {
+        this.planTaskId = planTaskId;
+    }
+
+    public String getPlanTaskId() 
+    {
+        return planTaskId;
+    }
+
+    @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("results", getResults())
+            .append("planTaskId", getPlanTaskId())
+            .toString();
+    }
+}
diff --git a/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanItemsProject/mapper/EmInspectionPlanItemsProjectMapper.java b/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanItemsProject/mapper/EmInspectionPlanItemsProjectMapper.java
new file mode 100644
index 0000000..ae67704
--- /dev/null
+++ b/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanItemsProject/mapper/EmInspectionPlanItemsProjectMapper.java
@@ -0,0 +1,63 @@
+package com.jcdm.main.em.inspectionPlanItemsProject.mapper;
+
+import java.util.List;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.jcdm.main.em.inspectionPlanItemsProject.domain.EmInspectionPlanItemsProject;
+
+/**
+ * 鐐规浠诲姟-椤圭洰Mapper鎺ュ彛
+ * 
+ * @author Yi
+ * @date 2024-03-23
+ */
+public interface EmInspectionPlanItemsProjectMapper extends BaseMapper<EmInspectionPlanItemsProject>
+{
+    /**
+     * 鏌ヨ鐐规浠诲姟-椤圭洰
+     * 
+     * @param id 鐐规浠诲姟-椤圭洰涓婚敭
+     * @return 鐐规浠诲姟-椤圭洰
+     */
+    public EmInspectionPlanItemsProject selectEmInspectionPlanItemsProjectById(Long id);
+
+    /**
+     * 鏌ヨ鐐规浠诲姟-椤圭洰鍒楄〃
+     * 
+     * @param emInspectionPlanItemsProject 鐐规浠诲姟-椤圭洰
+     * @return 鐐规浠诲姟-椤圭洰闆嗗悎
+     */
+    public List<EmInspectionPlanItemsProject> selectEmInspectionPlanItemsProjectList(EmInspectionPlanItemsProject emInspectionPlanItemsProject);
+
+    /**
+     * 鏂板鐐规浠诲姟-椤圭洰
+     * 
+     * @param emInspectionPlanItemsProject 鐐规浠诲姟-椤圭洰
+     * @return 缁撴灉
+     */
+    public int insertEmInspectionPlanItemsProject(EmInspectionPlanItemsProject emInspectionPlanItemsProject);
+
+    /**
+     * 淇敼鐐规浠诲姟-椤圭洰
+     * 
+     * @param emInspectionPlanItemsProject 鐐规浠诲姟-椤圭洰
+     * @return 缁撴灉
+     */
+    public int updateEmInspectionPlanItemsProject(EmInspectionPlanItemsProject emInspectionPlanItemsProject);
+
+    /**
+     * 鍒犻櫎鐐规浠诲姟-椤圭洰
+     * 
+     * @param id 鐐规浠诲姟-椤圭洰涓婚敭
+     * @return 缁撴灉
+     */
+    public int deleteEmInspectionPlanItemsProjectById(Long id);
+
+    /**
+     * 鎵归噺鍒犻櫎鐐规浠诲姟-椤圭洰
+     * 
+     * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁涓婚敭闆嗗悎
+     * @return 缁撴灉
+     */
+    public int deleteEmInspectionPlanItemsProjectByIds(Long[] ids);
+}
diff --git a/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanItemsProject/service/IEmInspectionPlanItemsProjectService.java b/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanItemsProject/service/IEmInspectionPlanItemsProjectService.java
new file mode 100644
index 0000000..2f205e4
--- /dev/null
+++ b/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanItemsProject/service/IEmInspectionPlanItemsProjectService.java
@@ -0,0 +1,63 @@
+package com.jcdm.main.em.inspectionPlanItemsProject.service;
+
+import java.util.List;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.jcdm.main.em.inspectionPlanItemsProject.domain.EmInspectionPlanItemsProject;
+
+/**
+ * 鐐规浠诲姟-椤圭洰Service鎺ュ彛
+ * 
+ * @author Yi
+ * @date 2024-03-23
+ */
+public interface IEmInspectionPlanItemsProjectService extends IService<EmInspectionPlanItemsProject>
+{
+    /**
+     * 鏌ヨ鐐规浠诲姟-椤圭洰
+     * 
+     * @param id 鐐规浠诲姟-椤圭洰涓婚敭
+     * @return 鐐规浠诲姟-椤圭洰
+     */
+    public EmInspectionPlanItemsProject selectEmInspectionPlanItemsProjectById(Long id);
+
+    /**
+     * 鏌ヨ鐐规浠诲姟-椤圭洰鍒楄〃
+     * 
+     * @param emInspectionPlanItemsProject 鐐规浠诲姟-椤圭洰
+     * @return 鐐规浠诲姟-椤圭洰闆嗗悎
+     */
+    public List<EmInspectionPlanItemsProject> selectEmInspectionPlanItemsProjectList(EmInspectionPlanItemsProject emInspectionPlanItemsProject);
+
+    /**
+     * 鏂板鐐规浠诲姟-椤圭洰
+     * 
+     * @param emInspectionPlanItemsProject 鐐规浠诲姟-椤圭洰
+     * @return 缁撴灉
+     */
+    public int insertEmInspectionPlanItemsProject(EmInspectionPlanItemsProject emInspectionPlanItemsProject);
+
+    /**
+     * 淇敼鐐规浠诲姟-椤圭洰
+     * 
+     * @param emInspectionPlanItemsProject 鐐规浠诲姟-椤圭洰
+     * @return 缁撴灉
+     */
+    public int updateEmInspectionPlanItemsProject(EmInspectionPlanItemsProject emInspectionPlanItemsProject);
+
+    /**
+     * 鎵归噺鍒犻櫎鐐规浠诲姟-椤圭洰
+     * 
+     * @param ids 闇�瑕佸垹闄ょ殑鐐规浠诲姟-椤圭洰涓婚敭闆嗗悎
+     * @return 缁撴灉
+     */
+    public int deleteEmInspectionPlanItemsProjectByIds(Long[] ids);
+
+    /**
+     * 鍒犻櫎鐐规浠诲姟-椤圭洰淇℃伅
+     * 
+     * @param id 鐐规浠诲姟-椤圭洰涓婚敭
+     * @return 缁撴灉
+     */
+    public int deleteEmInspectionPlanItemsProjectById(Long id);
+}
diff --git a/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanItemsProject/service/impl/EmInspectionPlanItemsProjectServiceImpl.java b/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanItemsProject/service/impl/EmInspectionPlanItemsProjectServiceImpl.java
new file mode 100644
index 0000000..7f3e20b
--- /dev/null
+++ b/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanItemsProject/service/impl/EmInspectionPlanItemsProjectServiceImpl.java
@@ -0,0 +1,98 @@
+package com.jcdm.main.em.inspectionPlanItemsProject.service.impl;
+
+import java.util.List;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.jcdm.common.utils.DateUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import com.jcdm.main.em.inspectionPlanItemsProject.mapper.EmInspectionPlanItemsProjectMapper;
+import com.jcdm.main.em.inspectionPlanItemsProject.domain.EmInspectionPlanItemsProject;
+import com.jcdm.main.em.inspectionPlanItemsProject.service.IEmInspectionPlanItemsProjectService;
+
+/**
+ * 鐐规浠诲姟-椤圭洰Service涓氬姟灞傚鐞�
+ * 
+ * @author Yi
+ * @date 2024-03-23
+ */
+@Service
+public class EmInspectionPlanItemsProjectServiceImpl extends ServiceImpl<EmInspectionPlanItemsProjectMapper,EmInspectionPlanItemsProject> implements IEmInspectionPlanItemsProjectService
+{
+    @Autowired
+    private EmInspectionPlanItemsProjectMapper emInspectionPlanItemsProjectMapper;
+
+    /**
+     * 鏌ヨ鐐规浠诲姟-椤圭洰
+     * 
+     * @param id 鐐规浠诲姟-椤圭洰涓婚敭
+     * @return 鐐规浠诲姟-椤圭洰
+     */
+    @Override
+    public EmInspectionPlanItemsProject selectEmInspectionPlanItemsProjectById(Long id)
+    {
+        return emInspectionPlanItemsProjectMapper.selectEmInspectionPlanItemsProjectById(id);
+    }
+
+    /**
+     * 鏌ヨ鐐规浠诲姟-椤圭洰鍒楄〃
+     * 
+     * @param emInspectionPlanItemsProject 鐐规浠诲姟-椤圭洰
+     * @return 鐐规浠诲姟-椤圭洰
+     */
+    @Override
+    public List<EmInspectionPlanItemsProject> selectEmInspectionPlanItemsProjectList(EmInspectionPlanItemsProject emInspectionPlanItemsProject)
+    {
+        return emInspectionPlanItemsProjectMapper.selectEmInspectionPlanItemsProjectList(emInspectionPlanItemsProject);
+    }
+
+    /**
+     * 鏂板鐐规浠诲姟-椤圭洰
+     * 
+     * @param emInspectionPlanItemsProject 鐐规浠诲姟-椤圭洰
+     * @return 缁撴灉
+     */
+    @Override
+    public int insertEmInspectionPlanItemsProject(EmInspectionPlanItemsProject emInspectionPlanItemsProject)
+    {
+        emInspectionPlanItemsProject.setCreateTime(DateUtils.getNowDate());
+        return emInspectionPlanItemsProjectMapper.insertEmInspectionPlanItemsProject(emInspectionPlanItemsProject);
+    }
+
+    /**
+     * 淇敼鐐规浠诲姟-椤圭洰
+     * 
+     * @param emInspectionPlanItemsProject 鐐规浠诲姟-椤圭洰
+     * @return 缁撴灉
+     */
+    @Override
+    public int updateEmInspectionPlanItemsProject(EmInspectionPlanItemsProject emInspectionPlanItemsProject)
+    {
+        emInspectionPlanItemsProject.setUpdateTime(DateUtils.getNowDate());
+        return emInspectionPlanItemsProjectMapper.updateEmInspectionPlanItemsProject(emInspectionPlanItemsProject);
+    }
+
+    /**
+     * 鎵归噺鍒犻櫎鐐规浠诲姟-椤圭洰
+     * 
+     * @param ids 闇�瑕佸垹闄ょ殑鐐规浠诲姟-椤圭洰涓婚敭
+     * @return 缁撴灉
+     */
+    @Override
+    public int deleteEmInspectionPlanItemsProjectByIds(Long[] ids)
+    {
+        return emInspectionPlanItemsProjectMapper.deleteEmInspectionPlanItemsProjectByIds(ids);
+    }
+
+    /**
+     * 鍒犻櫎鐐规浠诲姟-椤圭洰淇℃伅
+     * 
+     * @param id 鐐规浠诲姟-椤圭洰涓婚敭
+     * @return 缁撴灉
+     */
+    @Override
+    public int deleteEmInspectionPlanItemsProjectById(Long id)
+    {
+        return emInspectionPlanItemsProjectMapper.deleteEmInspectionPlanItemsProjectById(id);
+    }
+}
diff --git a/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanTask/controller/EmInspectionPlanTaskController.java b/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanTask/controller/EmInspectionPlanTaskController.java
new file mode 100644
index 0000000..3e3ca6f
--- /dev/null
+++ b/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanTask/controller/EmInspectionPlanTaskController.java
@@ -0,0 +1,104 @@
+package com.jcdm.main.em.inspectionPlanTask.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.inspectionPlanTask.domain.EmInspectionPlanTask;
+import com.jcdm.main.em.inspectionPlanTask.service.IEmInspectionPlanTaskService;
+import com.jcdm.common.utils.poi.ExcelUtil;
+import com.jcdm.common.core.page.TableDataInfo;
+
+/**
+ * 鐐规浠诲姟Controller
+ * 
+ * @author Yi
+ * @date 2024-03-23
+ */
+@RestController
+@RequestMapping("/em/inspectionPlanTask")
+public class EmInspectionPlanTaskController extends BaseController
+{
+    @Autowired
+    private IEmInspectionPlanTaskService emInspectionPlanTaskService;
+
+    /**
+     * 鏌ヨ鐐规浠诲姟鍒楄〃
+     */
+    @PreAuthorize("@ss.hasPermi('em:inspectionPlanTask:list')")
+    @GetMapping("/list")
+    public TableDataInfo list(EmInspectionPlanTask emInspectionPlanTask)
+    {
+        startPage();
+        List<EmInspectionPlanTask> list = emInspectionPlanTaskService.selectEmInspectionPlanTaskList(emInspectionPlanTask);
+        return getDataTable(list);
+    }
+
+    /**
+     * 瀵煎嚭鐐规浠诲姟鍒楄〃
+     */
+    @PreAuthorize("@ss.hasPermi('em:inspectionPlanTask:export')")
+    @Log(title = "鐐规浠诲姟", businessType = BusinessType.EXPORT)
+    @PostMapping("/export")
+    public void export(HttpServletResponse response, EmInspectionPlanTask emInspectionPlanTask)
+    {
+        List<EmInspectionPlanTask> list = emInspectionPlanTaskService.selectEmInspectionPlanTaskList(emInspectionPlanTask);
+        ExcelUtil<EmInspectionPlanTask> util = new ExcelUtil<EmInspectionPlanTask>(EmInspectionPlanTask.class);
+        util.exportExcel(response, list, "鐐规浠诲姟鏁版嵁");
+    }
+
+    /**
+     * 鑾峰彇鐐规浠诲姟璇︾粏淇℃伅
+     */
+    @PreAuthorize("@ss.hasPermi('em:inspectionPlanTask:query')")
+    @GetMapping(value = "/{id}")
+    public AjaxResult getInfo(@PathVariable("id") Long id)
+    {
+        return success(emInspectionPlanTaskService.selectEmInspectionPlanTaskById(id));
+    }
+
+    /**
+     * 鏂板鐐规浠诲姟
+     */
+    @PreAuthorize("@ss.hasPermi('em:inspectionPlanTask:add')")
+    @Log(title = "鐐规浠诲姟", businessType = BusinessType.INSERT)
+    @PostMapping
+    public AjaxResult add(@RequestBody EmInspectionPlanTask emInspectionPlanTask)
+    {
+        return toAjax(emInspectionPlanTaskService.insertEmInspectionPlanTask(emInspectionPlanTask));
+    }
+
+    /**
+     * 淇敼鐐规浠诲姟
+     */
+    @PreAuthorize("@ss.hasPermi('em:inspectionPlanTask:edit')")
+    @Log(title = "鐐规浠诲姟", businessType = BusinessType.UPDATE)
+    @PutMapping
+    public AjaxResult edit(@RequestBody EmInspectionPlanTask emInspectionPlanTask)
+    {
+        return toAjax(emInspectionPlanTaskService.updateEmInspectionPlanTask(emInspectionPlanTask));
+    }
+
+    /**
+     * 鍒犻櫎鐐规浠诲姟
+     */
+    @PreAuthorize("@ss.hasPermi('em:inspectionPlanTask:remove')")
+    @Log(title = "鐐规浠诲姟", businessType = BusinessType.DELETE)
+	@DeleteMapping("/{ids}")
+    public AjaxResult remove(@PathVariable Long[] ids)
+    {
+        return toAjax(emInspectionPlanTaskService.deleteEmInspectionPlanTaskByIds(ids));
+    }
+}
diff --git a/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanTask/domain/EmInspectionPlanTask.java b/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanTask/domain/EmInspectionPlanTask.java
new file mode 100644
index 0000000..5a5f0db
--- /dev/null
+++ b/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanTask/domain/EmInspectionPlanTask.java
@@ -0,0 +1,208 @@
+package com.jcdm.main.em.inspectionPlanTask.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_task
+ * 
+ * @author Yi
+ * @date 2024-03-23
+ */
+public class EmInspectionPlanTask extends BaseEntity
+{
+    private static final long serialVersionUID = 1L;
+
+    /** ID */
+    private Long id;
+
+    /** 璁″垝缂栧彿 */
+    @Excel(name = "璁″垝缂栧彿")
+    private String planCode;
+
+    /** 璁″垝鍚嶇О */
+    @Excel(name = "璁″垝鍚嶇О")
+    private String planName;
+
+    /** 璁″垝绫诲瀷 */
+    @Excel(name = "璁″垝绫诲瀷")
+    private String planType;
+
+    /** 鐘舵�� */
+    @Excel(name = "鐘舵��")
+    private String state;
+
+    /** 璁惧缂栫爜 */
+    @Excel(name = "璁惧缂栫爜")
+    private String devicesCode;
+
+    /** 璁惧鍚嶇О */
+    @Excel(name = "璁惧鍚嶇О")
+    private String devicesName;
+
+    /** 鍝佺墝 */
+    @Excel(name = "鍝佺墝")
+    private String brand;
+
+    /** 瑙勬牸 */
+    @Excel(name = "瑙勬牸")
+    private String specs;
+
+    /** 缁撴灉 */
+    @Excel(name = "缁撴灉")
+    private String results;
+
+    /** 澶囨敞 */
+    @Excel(name = "澶囨敞")
+    private String remarks;
+
+    /** 鍒涘缓浜� */
+    @Excel(name = "鍒涘缓浜�")
+    private String createUser;
+
+    /** 淇敼浜� */
+    @Excel(name = "淇敼浜�")
+    private String updateUser;
+
+
+    public void setId(Long id) 
+    {
+        this.id = id;
+    }
+
+    public Long getId() 
+    {
+        return id;
+    }
+    public void setPlanCode(String planCode) 
+    {
+        this.planCode = planCode;
+    }
+
+    public String getPlanCode() 
+    {
+        return planCode;
+    }
+    public void setPlanName(String planName) 
+    {
+        this.planName = planName;
+    }
+
+    public String getPlanName() 
+    {
+        return planName;
+    }
+    public void setPlanType(String planType) 
+    {
+        this.planType = planType;
+    }
+
+    public String getPlanType() 
+    {
+        return planType;
+    }
+    public void setState(String state) 
+    {
+        this.state = state;
+    }
+
+    public String getState() 
+    {
+        return state;
+    }
+    public void setDevicesCode(String devicesCode) 
+    {
+        this.devicesCode = devicesCode;
+    }
+
+    public String getDevicesCode() 
+    {
+        return devicesCode;
+    }
+    public void setDevicesName(String devicesName) 
+    {
+        this.devicesName = devicesName;
+    }
+
+    public String getDevicesName() 
+    {
+        return devicesName;
+    }
+    public void setBrand(String brand) 
+    {
+        this.brand = brand;
+    }
+
+    public String getBrand() 
+    {
+        return brand;
+    }
+    public void setSpecs(String specs) 
+    {
+        this.specs = specs;
+    }
+
+    public String getSpecs() 
+    {
+        return specs;
+    }
+    public void setResults(String results) 
+    {
+        this.results = results;
+    }
+
+    public String getResults() 
+    {
+        return results;
+    }
+    public void setRemarks(String remarks) 
+    {
+        this.remarks = remarks;
+    }
+
+    public String getRemarks() 
+    {
+        return remarks;
+    }
+    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;
+    }
+
+    @Override
+    public String toString() {
+        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+            .append("id", getId())
+            .append("planCode", getPlanCode())
+            .append("planName", getPlanName())
+            .append("planType", getPlanType())
+            .append("state", getState())
+            .append("devicesCode", getDevicesCode())
+            .append("devicesName", getDevicesName())
+            .append("brand", getBrand())
+            .append("specs", getSpecs())
+            .append("results", getResults())
+            .append("remarks", getRemarks())
+            .append("createTime", getCreateTime())
+            .append("createUser", getCreateUser())
+            .append("updateTime", getUpdateTime())
+            .append("updateUser", getUpdateUser())
+            .toString();
+    }
+}
diff --git a/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanTask/mapper/EmInspectionPlanTaskMapper.java b/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanTask/mapper/EmInspectionPlanTaskMapper.java
new file mode 100644
index 0000000..03bcaf9
--- /dev/null
+++ b/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanTask/mapper/EmInspectionPlanTaskMapper.java
@@ -0,0 +1,63 @@
+package com.jcdm.main.em.inspectionPlanTask.mapper;
+
+import java.util.List;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.jcdm.main.em.inspectionPlanTask.domain.EmInspectionPlanTask;
+
+/**
+ * 鐐规浠诲姟Mapper鎺ュ彛
+ * 
+ * @author Yi
+ * @date 2024-03-23
+ */
+public interface EmInspectionPlanTaskMapper extends BaseMapper<EmInspectionPlanTask>
+{
+    /**
+     * 鏌ヨ鐐规浠诲姟
+     * 
+     * @param id 鐐规浠诲姟涓婚敭
+     * @return 鐐规浠诲姟
+     */
+    public EmInspectionPlanTask selectEmInspectionPlanTaskById(Long id);
+
+    /**
+     * 鏌ヨ鐐规浠诲姟鍒楄〃
+     * 
+     * @param emInspectionPlanTask 鐐规浠诲姟
+     * @return 鐐规浠诲姟闆嗗悎
+     */
+    public List<EmInspectionPlanTask> selectEmInspectionPlanTaskList(EmInspectionPlanTask emInspectionPlanTask);
+
+    /**
+     * 鏂板鐐规浠诲姟
+     * 
+     * @param emInspectionPlanTask 鐐规浠诲姟
+     * @return 缁撴灉
+     */
+    public int insertEmInspectionPlanTask(EmInspectionPlanTask emInspectionPlanTask);
+
+    /**
+     * 淇敼鐐规浠诲姟
+     * 
+     * @param emInspectionPlanTask 鐐规浠诲姟
+     * @return 缁撴灉
+     */
+    public int updateEmInspectionPlanTask(EmInspectionPlanTask emInspectionPlanTask);
+
+    /**
+     * 鍒犻櫎鐐规浠诲姟
+     * 
+     * @param id 鐐规浠诲姟涓婚敭
+     * @return 缁撴灉
+     */
+    public int deleteEmInspectionPlanTaskById(Long id);
+
+    /**
+     * 鎵归噺鍒犻櫎鐐规浠诲姟
+     * 
+     * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁涓婚敭闆嗗悎
+     * @return 缁撴灉
+     */
+    public int deleteEmInspectionPlanTaskByIds(Long[] ids);
+}
diff --git a/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanTask/service/IEmInspectionPlanTaskService.java b/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanTask/service/IEmInspectionPlanTaskService.java
new file mode 100644
index 0000000..49e6c72
--- /dev/null
+++ b/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanTask/service/IEmInspectionPlanTaskService.java
@@ -0,0 +1,63 @@
+package com.jcdm.main.em.inspectionPlanTask.service;
+
+import java.util.List;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.jcdm.main.em.inspectionPlanTask.domain.EmInspectionPlanTask;
+
+/**
+ * 鐐规浠诲姟Service鎺ュ彛
+ * 
+ * @author Yi
+ * @date 2024-03-23
+ */
+public interface IEmInspectionPlanTaskService extends IService<EmInspectionPlanTask>
+{
+    /**
+     * 鏌ヨ鐐规浠诲姟
+     * 
+     * @param id 鐐规浠诲姟涓婚敭
+     * @return 鐐规浠诲姟
+     */
+    public EmInspectionPlanTask selectEmInspectionPlanTaskById(Long id);
+
+    /**
+     * 鏌ヨ鐐规浠诲姟鍒楄〃
+     * 
+     * @param emInspectionPlanTask 鐐规浠诲姟
+     * @return 鐐规浠诲姟闆嗗悎
+     */
+    public List<EmInspectionPlanTask> selectEmInspectionPlanTaskList(EmInspectionPlanTask emInspectionPlanTask);
+
+    /**
+     * 鏂板鐐规浠诲姟
+     * 
+     * @param emInspectionPlanTask 鐐规浠诲姟
+     * @return 缁撴灉
+     */
+    public int insertEmInspectionPlanTask(EmInspectionPlanTask emInspectionPlanTask);
+
+    /**
+     * 淇敼鐐规浠诲姟
+     * 
+     * @param emInspectionPlanTask 鐐规浠诲姟
+     * @return 缁撴灉
+     */
+    public int updateEmInspectionPlanTask(EmInspectionPlanTask emInspectionPlanTask);
+
+    /**
+     * 鎵归噺鍒犻櫎鐐规浠诲姟
+     * 
+     * @param ids 闇�瑕佸垹闄ょ殑鐐规浠诲姟涓婚敭闆嗗悎
+     * @return 缁撴灉
+     */
+    public int deleteEmInspectionPlanTaskByIds(Long[] ids);
+
+    /**
+     * 鍒犻櫎鐐规浠诲姟淇℃伅
+     * 
+     * @param id 鐐规浠诲姟涓婚敭
+     * @return 缁撴灉
+     */
+    public int deleteEmInspectionPlanTaskById(Long id);
+}
diff --git a/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanTask/service/impl/EmInspectionPlanTaskServiceImpl.java b/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanTask/service/impl/EmInspectionPlanTaskServiceImpl.java
new file mode 100644
index 0000000..bfc2537
--- /dev/null
+++ b/jcdm-main/src/main/java/com/jcdm/main/em/inspectionPlanTask/service/impl/EmInspectionPlanTaskServiceImpl.java
@@ -0,0 +1,98 @@
+package com.jcdm.main.em.inspectionPlanTask.service.impl;
+
+import java.util.List;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.jcdm.common.utils.DateUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import com.jcdm.main.em.inspectionPlanTask.mapper.EmInspectionPlanTaskMapper;
+import com.jcdm.main.em.inspectionPlanTask.domain.EmInspectionPlanTask;
+import com.jcdm.main.em.inspectionPlanTask.service.IEmInspectionPlanTaskService;
+
+/**
+ * 鐐规浠诲姟Service涓氬姟灞傚鐞�
+ * 
+ * @author Yi
+ * @date 2024-03-23
+ */
+@Service
+public class EmInspectionPlanTaskServiceImpl extends ServiceImpl<EmInspectionPlanTaskMapper,EmInspectionPlanTask> implements IEmInspectionPlanTaskService
+{
+    @Autowired
+    private EmInspectionPlanTaskMapper emInspectionPlanTaskMapper;
+
+    /**
+     * 鏌ヨ鐐规浠诲姟
+     * 
+     * @param id 鐐规浠诲姟涓婚敭
+     * @return 鐐规浠诲姟
+     */
+    @Override
+    public EmInspectionPlanTask selectEmInspectionPlanTaskById(Long id)
+    {
+        return emInspectionPlanTaskMapper.selectEmInspectionPlanTaskById(id);
+    }
+
+    /**
+     * 鏌ヨ鐐规浠诲姟鍒楄〃
+     * 
+     * @param emInspectionPlanTask 鐐规浠诲姟
+     * @return 鐐规浠诲姟
+     */
+    @Override
+    public List<EmInspectionPlanTask> selectEmInspectionPlanTaskList(EmInspectionPlanTask emInspectionPlanTask)
+    {
+        return emInspectionPlanTaskMapper.selectEmInspectionPlanTaskList(emInspectionPlanTask);
+    }
+
+    /**
+     * 鏂板鐐规浠诲姟
+     * 
+     * @param emInspectionPlanTask 鐐规浠诲姟
+     * @return 缁撴灉
+     */
+    @Override
+    public int insertEmInspectionPlanTask(EmInspectionPlanTask emInspectionPlanTask)
+    {
+        emInspectionPlanTask.setCreateTime(DateUtils.getNowDate());
+        return emInspectionPlanTaskMapper.insertEmInspectionPlanTask(emInspectionPlanTask);
+    }
+
+    /**
+     * 淇敼鐐规浠诲姟
+     * 
+     * @param emInspectionPlanTask 鐐规浠诲姟
+     * @return 缁撴灉
+     */
+    @Override
+    public int updateEmInspectionPlanTask(EmInspectionPlanTask emInspectionPlanTask)
+    {
+        emInspectionPlanTask.setUpdateTime(DateUtils.getNowDate());
+        return emInspectionPlanTaskMapper.updateEmInspectionPlanTask(emInspectionPlanTask);
+    }
+
+    /**
+     * 鎵归噺鍒犻櫎鐐规浠诲姟
+     * 
+     * @param ids 闇�瑕佸垹闄ょ殑鐐规浠诲姟涓婚敭
+     * @return 缁撴灉
+     */
+    @Override
+    public int deleteEmInspectionPlanTaskByIds(Long[] ids)
+    {
+        return emInspectionPlanTaskMapper.deleteEmInspectionPlanTaskByIds(ids);
+    }
+
+    /**
+     * 鍒犻櫎鐐规浠诲姟淇℃伅
+     * 
+     * @param id 鐐规浠诲姟涓婚敭
+     * @return 缁撴灉
+     */
+    @Override
+    public int deleteEmInspectionPlanTaskById(Long id)
+    {
+        return emInspectionPlanTaskMapper.deleteEmInspectionPlanTaskById(id);
+    }
+}
diff --git a/jcdm-main/src/main/java/com/jcdm/main/restful/controller/testClass.java b/jcdm-main/src/main/java/com/jcdm/main/restful/controller/testClass.java
new file mode 100644
index 0000000..23b7f9d
--- /dev/null
+++ b/jcdm-main/src/main/java/com/jcdm/main/restful/controller/testClass.java
@@ -0,0 +1,30 @@
+package com.jcdm.main.restful.controller;
+
+import java.util.Date;
+import java.util.Timer;
+import java.util.TimerTask;
+
+public class testClass {
+    public static void main(String[] args) {
+        // 鍒涘缓Timer瀹炰緥
+        Timer timer = new Timer();
+
+        // 鍒涘缓TimerTask瀹炰緥
+        TimerTask task = new TimerTask() {
+            @Override
+            public void run() {
+                // 鍦ㄨ繖閲岀紪鍐欏畾鏃朵换鍔$殑鍏蜂綋閫昏緫
+                System.out.println("瀹氭椂浠诲姟瑙﹀彂锛屽綋鍓嶆椂闂达細" + new Date());
+            }
+        };
+
+        // 璁剧疆瀹氭椂浠诲姟鐨勮Е鍙戞椂闂翠负姣忓ぉ鐨�9:25
+        // 鑾峰彇褰撳墠鏃堕棿
+        Date currentTime = new Date();
+        // 璁剧疆瀹氭椂浠诲姟鐨勮Е鍙戞椂闂翠负褰撳ぉ鐨�9:25
+        Date scheduleTime = new Date(currentTime.getYear(), currentTime.getMonth(), currentTime.getDate(), 9, 27, 0);
+
+        // 鍚姩瀹氭椂浠诲姟
+        timer.schedule(task, scheduleTime);
+    }
+}
diff --git a/jcdm-main/src/main/java/com/jcdm/main/restful/service/restfulService.java b/jcdm-main/src/main/java/com/jcdm/main/restful/service/RestfulService.java
similarity index 99%
rename from jcdm-main/src/main/java/com/jcdm/main/restful/service/restfulService.java
rename to jcdm-main/src/main/java/com/jcdm/main/restful/service/RestfulService.java
index 3b3d08a..b7ab013 100644
--- a/jcdm-main/src/main/java/com/jcdm/main/restful/service/restfulService.java
+++ b/jcdm-main/src/main/java/com/jcdm/main/restful/service/RestfulService.java
@@ -5,7 +5,7 @@
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestParam;
 
-public class restfulService {
+public class RestfulService {
     public static final String getRealmName = "https://imes-test-group.geelycv-test.com/api/mom-open/restful/aMesSysIntegration";
 
     public static final String postRealmName = "https://imes-uat-group.geelycv-test.com/api/mom-open/restful/interface";
diff --git a/jcdm-main/src/main/resources/mapper/em/inspectionPlanItemsProject/EmInspectionPlanItemsProjectMapper.xml b/jcdm-main/src/main/resources/mapper/em/inspectionPlanItemsProject/EmInspectionPlanItemsProjectMapper.xml
new file mode 100644
index 0000000..a8b733c
--- /dev/null
+++ b/jcdm-main/src/main/resources/mapper/em/inspectionPlanItemsProject/EmInspectionPlanItemsProjectMapper.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.jcdm.main.em.inspectionPlanItemsProject.mapper.EmInspectionPlanItemsProjectMapper">
+    
+    <resultMap type="EmInspectionPlanItemsProject" id="EmInspectionPlanItemsProjectResult">
+        <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="results"    column="results"    />
+        <result property="planTaskId"    column="plan_task_id"    />
+    </resultMap>
+
+    <sql id="selectEmInspectionPlanItemsProjectVo">
+        select id, items_code, items_name, items_type, standard, items_content, create_user, create_time, update_user, update_time, results, plan_task_id from em_inspection_plan_items_project
+    </sql>
+
+    <select id="selectEmInspectionPlanItemsProjectList" parameterType="EmInspectionPlanItemsProject" resultMap="EmInspectionPlanItemsProjectResult">
+        <include refid="selectEmInspectionPlanItemsProjectVo"/>
+        <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="results != null  and results != ''"> and results = #{results}</if>
+        </where>
+    </select>
+    
+    <select id="selectEmInspectionPlanItemsProjectById" parameterType="Long" resultMap="EmInspectionPlanItemsProjectResult">
+        <include refid="selectEmInspectionPlanItemsProjectVo"/>
+        where id = #{id}
+    </select>
+        
+    <insert id="insertEmInspectionPlanItemsProject" parameterType="EmInspectionPlanItemsProject" useGeneratedKeys="true" keyProperty="id">
+        insert into em_inspection_plan_items_project
+        <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="results != null">results,</if>
+            <if test="planTaskId != null">plan_task_id,</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="results != null">#{results},</if>
+            <if test="planTaskId != null">#{planTaskId},</if>
+         </trim>
+    </insert>
+
+    <update id="updateEmInspectionPlanItemsProject" parameterType="EmInspectionPlanItemsProject">
+        update em_inspection_plan_items_project
+        <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="results != null">results = #{results},</if>
+            <if test="planTaskId != null">plan_task_id = #{planTaskId},</if>
+        </trim>
+        where id = #{id}
+    </update>
+
+    <delete id="deleteEmInspectionPlanItemsProjectById" parameterType="Long">
+        delete from em_inspection_plan_items_project where id = #{id}
+    </delete>
+
+    <delete id="deleteEmInspectionPlanItemsProjectByIds" parameterType="String">
+        delete from em_inspection_plan_items_project 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/inspectionPlanTask/EmInspectionPlanTaskMapper.xml b/jcdm-main/src/main/resources/mapper/em/inspectionPlanTask/EmInspectionPlanTaskMapper.xml
new file mode 100644
index 0000000..58193a8
--- /dev/null
+++ b/jcdm-main/src/main/resources/mapper/em/inspectionPlanTask/EmInspectionPlanTaskMapper.xml
@@ -0,0 +1,113 @@
+<?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.inspectionPlanTask.mapper.EmInspectionPlanTaskMapper">
+    
+    <resultMap type="EmInspectionPlanTask" id="EmInspectionPlanTaskResult">
+        <result property="id"    column="id"    />
+        <result property="planCode"    column="plan_code"    />
+        <result property="planName"    column="plan_name"    />
+        <result property="planType"    column="plan_type"    />
+        <result property="state"    column="state"    />
+        <result property="devicesCode"    column="devices_code"    />
+        <result property="devicesName"    column="devices_name"    />
+        <result property="brand"    column="brand"    />
+        <result property="specs"    column="specs"    />
+        <result property="results"    column="results"    />
+        <result property="remarks"    column="remarks"    />
+        <result property="createTime"    column="create_time"    />
+        <result property="createUser"    column="create_user"    />
+        <result property="updateTime"    column="update_time"    />
+        <result property="updateUser"    column="update_user"    />
+    </resultMap>
+
+    <sql id="selectEmInspectionPlanTaskVo">
+        select id, plan_code, plan_name, plan_type, state, devices_code, devices_name, brand, specs, results, remarks, create_time, create_user, update_time, update_user from em_inspection_plan_task
+    </sql>
+
+    <select id="selectEmInspectionPlanTaskList" parameterType="EmInspectionPlanTask" resultMap="EmInspectionPlanTaskResult">
+        <include refid="selectEmInspectionPlanTaskVo"/>
+        <where>  
+            <if test="planCode != null  and planCode != ''"> and plan_code = #{planCode}</if>
+            <if test="planName != null  and planName != ''"> and plan_name like concat('%', #{planName}, '%')</if>
+            <if test="planType != null  and planType != ''"> and plan_type = #{planType}</if>
+            <if test="state != null  and state != ''"> and state = #{state}</if>
+            <if test="devicesCode != null  and devicesCode != ''"> and devices_code = #{devicesCode}</if>
+            <if test="devicesName != null  and devicesName != ''"> and devices_name like concat('%', #{devicesName}, '%')</if>
+        </where>
+    </select>
+    
+    <select id="selectEmInspectionPlanTaskById" parameterType="Long" resultMap="EmInspectionPlanTaskResult">
+        <include refid="selectEmInspectionPlanTaskVo"/>
+        where id = #{id}
+    </select>
+        
+    <insert id="insertEmInspectionPlanTask" parameterType="EmInspectionPlanTask" useGeneratedKeys="true" keyProperty="id">
+        insert into em_inspection_plan_task
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="planCode != null">plan_code,</if>
+            <if test="planName != null">plan_name,</if>
+            <if test="planType != null">plan_type,</if>
+            <if test="state != null">state,</if>
+            <if test="devicesCode != null">devices_code,</if>
+            <if test="devicesName != null">devices_name,</if>
+            <if test="brand != null">brand,</if>
+            <if test="specs != null">specs,</if>
+            <if test="results != null">results,</if>
+            <if test="remarks != null">remarks,</if>
+            <if test="createTime != null">create_time,</if>
+            <if test="createUser != null">create_user,</if>
+            <if test="updateTime != null">update_time,</if>
+            <if test="updateUser != null">update_user,</if>
+         </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="planCode != null">#{planCode},</if>
+            <if test="planName != null">#{planName},</if>
+            <if test="planType != null">#{planType},</if>
+            <if test="state != null">#{state},</if>
+            <if test="devicesCode != null">#{devicesCode},</if>
+            <if test="devicesName != null">#{devicesName},</if>
+            <if test="brand != null">#{brand},</if>
+            <if test="specs != null">#{specs},</if>
+            <if test="results != null">#{results},</if>
+            <if test="remarks != null">#{remarks},</if>
+            <if test="createTime != null">#{createTime},</if>
+            <if test="createUser != null">#{createUser},</if>
+            <if test="updateTime != null">#{updateTime},</if>
+            <if test="updateUser != null">#{updateUser},</if>
+         </trim>
+    </insert>
+
+    <update id="updateEmInspectionPlanTask" parameterType="EmInspectionPlanTask">
+        update em_inspection_plan_task
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="planCode != null">plan_code = #{planCode},</if>
+            <if test="planName != null">plan_name = #{planName},</if>
+            <if test="planType != null">plan_type = #{planType},</if>
+            <if test="state != null">state = #{state},</if>
+            <if test="devicesCode != null">devices_code = #{devicesCode},</if>
+            <if test="devicesName != null">devices_name = #{devicesName},</if>
+            <if test="brand != null">brand = #{brand},</if>
+            <if test="specs != null">specs = #{specs},</if>
+            <if test="results != null">results = #{results},</if>
+            <if test="remarks != null">remarks = #{remarks},</if>
+            <if test="createTime != null">create_time = #{createTime},</if>
+            <if test="createUser != null">create_user = #{createUser},</if>
+            <if test="updateTime != null">update_time = #{updateTime},</if>
+            <if test="updateUser != null">update_user = #{updateUser},</if>
+        </trim>
+        where id = #{id}
+    </update>
+
+    <delete id="deleteEmInspectionPlanTaskById" parameterType="Long">
+        delete from em_inspection_plan_task where id = #{id}
+    </delete>
+
+    <delete id="deleteEmInspectionPlanTaskByIds" parameterType="String">
+        delete from em_inspection_plan_task 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/om/productionOrde/OmProductionOrdeInfoMapper.xml b/jcdm-main/src/main/resources/mapper/om/productionOrde/OmProductionOrdeInfoMapper.xml
index 76c8f3f..0f1d9bf 100644
--- a/jcdm-main/src/main/resources/mapper/om/productionOrde/OmProductionOrdeInfoMapper.xml
+++ b/jcdm-main/src/main/resources/mapper/om/productionOrde/OmProductionOrdeInfoMapper.xml
@@ -39,10 +39,10 @@
         <result property="marketAreaCode"    column="market_area_code"    />
         <result property="softwareVersionCode"    column="software_version_code"    />
         <result property="productCompanyCode"    column="product_company_code"    />
-        <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="spareField1"    column="spare_field1"    />
+        <result property="spareField2"    column="spare_field2"    />
+        <result property="spareField3"    column="spare_field3"    />
+        <result property="spareField4"    column="spare_field4"    />
         <result property="siteCode"    column="site_code"    />
         <result property="productNum"    column="product_num"    />
         <result property="stationCode"    column="station_code"    />
@@ -54,7 +54,7 @@
     </resultMap>
 
     <sql id="selectOmProductionOrdeInfoVo">
-        select id,site_code,product_num,station_code, product_model,result_code,result_text,sf_result ,work_order_no, sales_order_code, product_code, product_name, workshop_code, line_code, route_code, bom_code, recipe_code, plan_qty, actual_qty, bad_qty, scrap_qty, repair_qty, actual_online_qty, online_completion_mark, demand_date, plan_start_time, plan_end_time, actual_start_time, actual_end_time, serial_number, order_status, create_time, update_time, create_user, update_user, remarks, stream_number, custom, market_area_code, software_version_code, product_company_code, spare_field_1, spare_field_2, spare_field_3, spare_field_4 from om_production_orde_info
+        select id,site_code,product_num,station_code, product_model,result_code,result_text,sf_result ,work_order_no, sales_order_code, product_code, product_name, workshop_code, line_code, route_code, bom_code, recipe_code, plan_qty, actual_qty, bad_qty, scrap_qty, repair_qty, actual_online_qty, online_completion_mark, demand_date, plan_start_time, plan_end_time, actual_start_time, actual_end_time, serial_number, order_status, create_time, update_time, create_user, update_user, remarks, stream_number, custom, market_area_code, software_version_code, product_company_code, spare_field1, spare_field2, spare_field3, spare_field4 from om_production_orde_info
     </sql>
 
     <select id="selectOmProductionOrdeInfoList" parameterType="OmProductionOrdeInfo" resultMap="OmProductionOrdeInfoResult">
diff --git a/jcdm-ui/src/api/main/em/inspectionPlanItemsProject/inspectionPlanItemsProject.js b/jcdm-ui/src/api/main/em/inspectionPlanItemsProject/inspectionPlanItemsProject.js
new file mode 100644
index 0000000..09fd028
--- /dev/null
+++ b/jcdm-ui/src/api/main/em/inspectionPlanItemsProject/inspectionPlanItemsProject.js
@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 鏌ヨ鐐规浠诲姟-椤圭洰鍒楄〃
+export function listInspectionPlanItemsProject(query) {
+  return request({
+    url: '/em/inspectionPlanItemsProject/list',
+    method: 'get',
+    params: query
+  })
+}
+
+// 鏌ヨ鐐规浠诲姟-椤圭洰璇︾粏
+export function getInspectionPlanItemsProject(id) {
+  return request({
+    url: '/em/inspectionPlanItemsProject/' + id,
+    method: 'get'
+  })
+}
+
+// 鏂板鐐规浠诲姟-椤圭洰
+export function addInspectionPlanItemsProject(data) {
+  return request({
+    url: '/em/inspectionPlanItemsProject',
+    method: 'post',
+    data: data
+  })
+}
+
+// 淇敼鐐规浠诲姟-椤圭洰
+export function updateInspectionPlanItemsProject(data) {
+  return request({
+    url: '/em/inspectionPlanItemsProject',
+    method: 'put',
+    data: data
+  })
+}
+
+// 鍒犻櫎鐐规浠诲姟-椤圭洰
+export function delInspectionPlanItemsProject(id) {
+  return request({
+    url: '/em/inspectionPlanItemsProject/' + id,
+    method: 'delete'
+  })
+}
diff --git a/jcdm-ui/src/api/main/em/inspectionPlanTask/inspectionPlanTask.js b/jcdm-ui/src/api/main/em/inspectionPlanTask/inspectionPlanTask.js
new file mode 100644
index 0000000..4fc8184
--- /dev/null
+++ b/jcdm-ui/src/api/main/em/inspectionPlanTask/inspectionPlanTask.js
@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 鏌ヨ鐐规浠诲姟鍒楄〃
+export function listInspectionPlanTask(query) {
+  return request({
+    url: '/em/inspectionPlanTask/list',
+    method: 'get',
+    params: query
+  })
+}
+
+// 鏌ヨ鐐规浠诲姟璇︾粏
+export function getInspectionPlanTask(id) {
+  return request({
+    url: '/em/inspectionPlanTask/' + id,
+    method: 'get'
+  })
+}
+
+// 鏂板鐐规浠诲姟
+export function addInspectionPlanTask(data) {
+  return request({
+    url: '/em/inspectionPlanTask',
+    method: 'post',
+    data: data
+  })
+}
+
+// 淇敼鐐规浠诲姟
+export function updateInspectionPlanTask(data) {
+  return request({
+    url: '/em/inspectionPlanTask',
+    method: 'put',
+    data: data
+  })
+}
+
+// 鍒犻櫎鐐规浠诲姟
+export function delInspectionPlanTask(id) {
+  return request({
+    url: '/em/inspectionPlanTask/' + id,
+    method: 'delete'
+  })
+}
diff --git a/jcdm-ui/src/views/main/em/inspectionPlanItemsProject/index.vue b/jcdm-ui/src/views/main/em/inspectionPlanItemsProject/index.vue
new file mode 100644
index 0000000..d9e0f38
--- /dev/null
+++ b/jcdm-ui/src/views/main/em/inspectionPlanItemsProject/index.vue
@@ -0,0 +1,357 @@
+<template>
+  <div class="app-container">
+    <el-card class="box-card">
+        <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
+          <el-form-item label="椤圭洰缂栧彿" prop="itemsCode">
+            <el-input
+              v-model="queryParams.itemsCode"
+              placeholder="璇疯緭鍏ラ」鐩紪鍙�"
+              clearable
+              @keyup.enter.native="handleQuery"
+            />
+          </el-form-item>
+          <el-form-item label="椤圭洰鍚嶇О" prop="itemsName">
+            <el-input
+              v-model="queryParams.itemsName"
+              placeholder="璇疯緭鍏ラ」鐩悕绉�"
+              clearable
+              @keyup.enter.native="handleQuery"
+            />
+          </el-form-item>
+<!--          <el-form-item label="椤圭洰绫诲瀷" prop="itemsType">-->
+<!--            <el-select v-model="queryParams.itemsType" placeholder="璇烽�夋嫨椤圭洰绫诲瀷" clearable>-->
+<!--              <el-option-->
+<!--                v-for="dict in dict.type.${dictType}"-->
+<!--                :key="dict.value"-->
+<!--                :label="dict.label"-->
+<!--                :value="dict.value"-->
+<!--              />-->
+<!--            </el-select>-->
+<!--          </el-form-item>-->
+          <el-form-item label="鏍囧噯" prop="standard">
+            <el-input
+              v-model="queryParams.standard"
+              placeholder="璇疯緭鍏ユ爣鍑�"
+              clearable
+              @keyup.enter.native="handleQuery"
+            />
+          </el-form-item>
+          <el-form-item label="缁撴灉" prop="results">
+            <el-input
+              v-model="queryParams.results"
+              placeholder="璇疯緭鍏ョ粨鏋�"
+              clearable
+              @keyup.enter.native="handleQuery"
+            />
+          </el-form-item>
+          <el-form-item style="float: right">
+            <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-card>
+
+    <el-card style="margin-top: 10px" class="box-card">
+        <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="['em:inspectionPlanItemsProject: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="['em:inspectionPlanItemsProject: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="['em:inspectionPlanItemsProject: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="['em:inspectionPlanItemsProject:export']"
+            >瀵煎嚭</el-button>
+          </el-col>
+          <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+        </el-row>
+
+        <el-table border v-loading="loading" :data="inspectionPlanItemsProjectList" @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="itemsCode">
+          </el-table-column>
+          <el-table-column label="椤圭洰鍚嶇О" align="center" prop="itemsName">
+          </el-table-column>
+          <el-table-column label="椤圭洰绫诲瀷" align="center" prop="itemsType">
+          </el-table-column>
+          <el-table-column label="鏍囧噯" align="center" prop="standard">
+          </el-table-column>
+          <el-table-column label="椤圭洰鍐呭" align="center" prop="itemsContent">
+          </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-column label="缁撴灉" align="center" prop="results">
+          </el-table-column>
+          <el-table-column fixed="right" width="200" label="鎿嶄綔" align="center" class-name="small-padding fixed-width">
+            <template slot-scope="scope">
+              <el-button
+                size="mini"
+                type="success"
+                plain
+                style="width: 72px"
+                icon="el-icon-edit"
+                @click="handleUpdate(scope.row)"
+                v-hasPermi="['em:inspectionPlanItemsProject:edit']"
+              >淇敼</el-button>
+              <el-button
+                size="mini"
+                type="danger"
+                plain
+                style="width: 72px"
+                icon="el-icon-delete"
+                @click="handleDelete(scope.row)"
+                v-hasPermi="['em:inspectionPlanItemsProject:remove']"
+              >鍒犻櫎</el-button>
+            </template>
+          </el-table-column>
+        </el-table>
+    </el-card>
+
+    <pagination
+      v-show="total>0"
+      :total="total"
+      :page.sync="queryParams.pageNum"
+      :limit.sync="queryParams.pageSize"
+      @pagination="getList"
+    />
+
+    <!-- 娣诲姞鎴栦慨鏀圭偣妫�浠诲姟-椤圭洰瀵硅瘽妗� -->
+    <el-dialog v-dialogpop-up :title="title" :visible.sync="open" width="500px" append-to-body>
+      <span slot="title">
+        <i class="el-icon-s-order"></i>
+        {{titleName}}
+      </span>
+      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+        <el-form-item label="椤圭洰缂栧彿" prop="itemsCode">
+          <el-input v-model="form.itemsCode" placeholder="璇疯緭鍏ラ」鐩紪鍙�" />
+        </el-form-item>
+        <el-form-item label="椤圭洰鍚嶇О" prop="itemsName">
+          <el-input v-model="form.itemsName" placeholder="璇疯緭鍏ラ」鐩悕绉�" />
+        </el-form-item>
+<!--        <el-form-item label="椤圭洰绫诲瀷" prop="itemsType">-->
+<!--          <el-select v-model="form.itemsType" placeholder="璇烽�夋嫨椤圭洰绫诲瀷">-->
+<!--            <el-option-->
+<!--              v-for="dict in dict.type.${dictType}"-->
+<!--              :key="dict.value"-->
+<!--              :label="dict.label"-->
+<!--              :value="dict.value"-->
+<!--            ></el-option>-->
+<!--          </el-select>-->
+<!--        </el-form-item>-->
+        <el-form-item label="鏍囧噯" prop="standard">
+          <el-input v-model="form.standard" placeholder="璇疯緭鍏ユ爣鍑�" />
+        </el-form-item>
+        <el-form-item label="椤圭洰鍐呭">
+          <editor v-model="form.itemsContent" :min-height="192"/>
+        </el-form-item>
+        <el-form-item label="鍒涘缓浜�" prop="createUser">
+          <el-input v-model="form.createUser" placeholder="璇疯緭鍏ュ垱寤轰汉" />
+        </el-form-item>
+        <el-form-item label="鏇存柊浜�" prop="updateUser">
+          <el-input v-model="form.updateUser" placeholder="璇疯緭鍏ユ洿鏂颁汉" />
+        </el-form-item>
+        <el-form-item label="缁撴灉" prop="results">
+          <el-input v-model="form.results" 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 { listInspectionPlanItemsProject, getInspectionPlanItemsProject, delInspectionPlanItemsProject, addInspectionPlanItemsProject, updateInspectionPlanItemsProject } from "@/api/main/em/inspectionPlanItemsProject/inspectionPlanItemsProject";
+
+export default {
+  name: "InspectionPlanItemsProject",
+  data() {
+    return {
+      // 閬僵灞�
+      loading: true,
+      titleName: "",
+      // 閫変腑鏁扮粍
+      ids: [],
+      // 闈炲崟涓鐢�
+      single: true,
+      // 闈炲涓鐢�
+      multiple: true,
+      // 鏄剧ず鎼滅储鏉′欢
+      showSearch: true,
+      // 鎬绘潯鏁�
+      total: 0,
+      // 鐐规浠诲姟-椤圭洰琛ㄦ牸鏁版嵁
+      inspectionPlanItemsProjectList: [],
+      // 寮瑰嚭灞傛爣棰�
+      title: "",
+      // 鏄惁鏄剧ず寮瑰嚭灞�
+      open: false,
+      // 鏌ヨ鍙傛暟
+      queryParams: {
+        pageNum: 1,
+        pageSize: 10,
+        itemsCode: null,
+        itemsName: null,
+        itemsType: null,
+        standard: null,
+        results: null,
+      },
+      // 琛ㄥ崟鍙傛暟
+      form: {},
+      // 琛ㄥ崟鏍¢獙
+      rules: {
+        id: [
+          { required: true, message: "ID涓嶈兘涓虹┖", trigger: "blur" }
+        ],
+      }
+    };
+  },
+  created() {
+    this.getList();
+  },
+  methods: {
+    /** 鏌ヨ鐐规浠诲姟-椤圭洰鍒楄〃 */
+    getList() {
+      this.loading = true;
+      listInspectionPlanItemsProject(this.queryParams).then(response => {
+        this.inspectionPlanItemsProjectList = response.rows;
+        this.total = response.total;
+        this.loading = false;
+      });
+    },
+    // 鍙栨秷鎸夐挳
+    cancel() {
+      this.open = false;
+      this.reset();
+    },
+    // 琛ㄥ崟閲嶇疆
+    reset() {
+      this.form = {
+        id: null,
+        itemsCode: null,
+        itemsName: null,
+        itemsType: null,
+        standard: null,
+        itemsContent: null,
+        createUser: null,
+        createTime: null,
+        updateUser: null,
+        updateTime: null,
+        results: null,
+        spareField2: null,
+        planTaskId: 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.titleName = "娣诲姞鐐规浠诲姟-椤圭洰";
+    },
+    /** 淇敼鎸夐挳鎿嶄綔 */
+    handleUpdate(row) {
+      this.reset();
+      const id = row.id || this.ids
+      getInspectionPlanItemsProject(id).then(response => {
+        this.form = response.data;
+        this.open = true;
+        this.titleName = "淇敼鐐规浠诲姟-椤圭洰";
+      });
+    },
+    /** 鎻愪氦鎸夐挳 */
+    submitForm() {
+      this.$refs["form"].validate(valid => {
+        if (valid) {
+          if (this.form.id != null) {
+            updateInspectionPlanItemsProject(this.form).then(response => {
+              this.$modal.msgSuccess("淇敼鎴愬姛");
+              this.open = false;
+              this.getList();
+            });
+          } else {
+            addInspectionPlanItemsProject(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 delInspectionPlanItemsProject(ids);
+      }).then(() => {
+        this.getList();
+        this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+      }).catch(() => {});
+    },
+    /** 瀵煎嚭鎸夐挳鎿嶄綔 */
+    handleExport() {
+      this.download('em/inspectionPlanItemsProject/export', {
+        ...this.queryParams
+      }, `inspectionPlanItemsProject_${new Date().getTime()}.xlsx`)
+    }
+  }
+};
+</script>
diff --git a/jcdm-ui/src/views/main/em/inspectionPlanTask/index.vue b/jcdm-ui/src/views/main/em/inspectionPlanTask/index.vue
new file mode 100644
index 0000000..f40ec8f
--- /dev/null
+++ b/jcdm-ui/src/views/main/em/inspectionPlanTask/index.vue
@@ -0,0 +1,392 @@
+<template>
+  <div class="app-container">
+    <el-card class="box-card">
+        <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
+          <el-form-item label="璁″垝缂栧彿" prop="planCode">
+            <el-input
+              v-model="queryParams.planCode"
+              placeholder="璇疯緭鍏ヨ鍒掔紪鍙�"
+              clearable
+              @keyup.enter.native="handleQuery"
+            />
+          </el-form-item>
+          <el-form-item label="璁″垝鍚嶇О" prop="planName">
+            <el-input
+              v-model="queryParams.planName"
+              placeholder="璇疯緭鍏ヨ鍒掑悕绉�"
+              clearable
+              @keyup.enter.native="handleQuery"
+            />
+          </el-form-item>
+<!--          <el-form-item label="璁″垝绫诲瀷" prop="planType">-->
+<!--            <el-select v-model="queryParams.planType" placeholder="璇烽�夋嫨璁″垝绫诲瀷" clearable>-->
+<!--              <el-option-->
+<!--                v-for="dict in dict.type.${dictType}"-->
+<!--                :key="dict.value"-->
+<!--                :label="dict.label"-->
+<!--                :value="dict.value"-->
+<!--              />-->
+<!--            </el-select>-->
+<!--          </el-form-item>-->
+          <el-form-item label="鐘舵��" prop="state">
+            <el-input
+              v-model="queryParams.state"
+              placeholder="璇疯緭鍏ョ姸鎬�"
+              clearable
+              @keyup.enter.native="handleQuery"
+            />
+          </el-form-item>
+          <el-form-item label="璁惧缂栫爜" prop="devicesCode">
+            <el-input
+              v-model="queryParams.devicesCode"
+              placeholder="璇疯緭鍏ヨ澶囩紪鐮�"
+              clearable
+              @keyup.enter.native="handleQuery"
+            />
+          </el-form-item>
+          <el-form-item label="璁惧鍚嶇О" prop="devicesName">
+            <el-input
+              v-model="queryParams.devicesName"
+              placeholder="璇疯緭鍏ヨ澶囧悕绉�"
+              clearable
+              @keyup.enter.native="handleQuery"
+            />
+          </el-form-item>
+          <el-form-item style="float: right">
+            <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-card>
+
+    <el-card style="margin-top: 10px" class="box-card">
+        <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="['em:inspectionPlanTask: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="['em:inspectionPlanTask: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="['em:inspectionPlanTask: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="['em:inspectionPlanTask:export']"
+            >瀵煎嚭</el-button>
+          </el-col>
+          <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+        </el-row>
+
+        <el-table border v-loading="loading" :data="inspectionPlanTaskList" @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="planCode">
+          </el-table-column>
+          <el-table-column label="璁″垝鍚嶇О" align="center" prop="planName">
+          </el-table-column>
+          <el-table-column label="璁″垝绫诲瀷" align="center" prop="planType">
+          </el-table-column>
+          <el-table-column label="鐘舵��" align="center" prop="state">
+          </el-table-column>
+          <el-table-column label="璁惧缂栫爜" align="center" prop="devicesCode">
+          </el-table-column>
+          <el-table-column label="璁惧鍚嶇О" align="center" prop="devicesName">
+          </el-table-column>
+          <el-table-column label="鍝佺墝" align="center" prop="brand">
+          </el-table-column>
+          <el-table-column label="瑙勬牸" align="center" prop="specs">
+          </el-table-column>
+          <el-table-column label="缁撴灉" align="center" prop="results">
+          </el-table-column>
+          <el-table-column label="澶囨敞" align="center" prop="remarks">
+          </el-table-column>
+          <el-table-column label="鍒涘缓鏃堕棿" align="center" prop="createTime">
+          </el-table-column>
+          <el-table-column label="鍒涘缓浜�" align="center" prop="createUser">
+          </el-table-column>
+          <el-table-column label="淇敼鏃堕棿" align="center" prop="updateTime">
+          </el-table-column>
+          <el-table-column label="淇敼浜�" align="center" prop="updateUser">
+          </el-table-column>
+          <el-table-column fixed="right" width="200" label="鎿嶄綔" align="center" class-name="small-padding fixed-width">
+            <template slot-scope="scope">
+              <el-button
+                size="mini"
+                type="success"
+                plain
+                style="width: 72px"
+                icon="el-icon-edit"
+                @click="handleUpdate(scope.row)"
+                v-hasPermi="['em:inspectionPlanTask:edit']"
+              >淇敼</el-button>
+              <el-button
+                size="mini"
+                type="danger"
+                plain
+                style="width: 72px"
+                icon="el-icon-delete"
+                @click="handleDelete(scope.row)"
+                v-hasPermi="['em:inspectionPlanTask:remove']"
+              >鍒犻櫎</el-button>
+            </template>
+          </el-table-column>
+        </el-table>
+    </el-card>
+
+    <pagination
+      v-show="total>0"
+      :total="total"
+      :page.sync="queryParams.pageNum"
+      :limit.sync="queryParams.pageSize"
+      @pagination="getList"
+    />
+
+    <!-- 娣诲姞鎴栦慨鏀圭偣妫�浠诲姟瀵硅瘽妗� -->
+    <el-dialog v-dialogpop-up :title="title" :visible.sync="open" width="500px" append-to-body>
+      <span slot="title">
+        <i class="el-icon-s-order"></i>
+        {{titleName}}
+      </span>
+      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+        <el-form-item label="璁″垝缂栧彿" prop="planCode">
+          <el-input v-model="form.planCode" placeholder="璇疯緭鍏ヨ鍒掔紪鍙�" />
+        </el-form-item>
+        <el-form-item label="璁″垝鍚嶇О" prop="planName">
+          <el-input v-model="form.planName" placeholder="璇疯緭鍏ヨ鍒掑悕绉�" />
+        </el-form-item>
+<!--        <el-form-item label="璁″垝绫诲瀷" prop="planType">-->
+<!--          <el-select v-model="form.planType" placeholder="璇烽�夋嫨璁″垝绫诲瀷">-->
+<!--            <el-option-->
+<!--              v-for="dict in dict.type.${dictType}"-->
+<!--              :key="dict.value"-->
+<!--              :label="dict.label"-->
+<!--              :value="dict.value"-->
+<!--            ></el-option>-->
+<!--          </el-select>-->
+<!--        </el-form-item>-->
+        <el-form-item label="鐘舵��" prop="state">
+          <el-input v-model="form.state" placeholder="璇疯緭鍏ョ姸鎬�" />
+        </el-form-item>
+        <el-form-item label="璁惧缂栫爜" prop="devicesCode">
+          <el-input v-model="form.devicesCode" placeholder="璇疯緭鍏ヨ澶囩紪鐮�" />
+        </el-form-item>
+        <el-form-item label="璁惧鍚嶇О" prop="devicesName">
+          <el-input v-model="form.devicesName" placeholder="璇疯緭鍏ヨ澶囧悕绉�" />
+        </el-form-item>
+        <el-form-item label="鍝佺墝" prop="brand">
+          <el-input v-model="form.brand" placeholder="璇疯緭鍏ュ搧鐗�" />
+        </el-form-item>
+        <el-form-item label="瑙勬牸" prop="specs">
+          <el-input v-model="form.specs" placeholder="璇疯緭鍏ヨ鏍�" />
+        </el-form-item>
+        <el-form-item label="缁撴灉" prop="results">
+          <el-input v-model="form.results" placeholder="璇疯緭鍏ョ粨鏋�" />
+        </el-form-item>
+        <el-form-item label="澶囨敞" prop="remarks">
+          <el-input v-model="form.remarks" placeholder="璇疯緭鍏ュ娉�" />
+        </el-form-item>
+        <el-form-item label="鍒涘缓浜�" prop="createUser">
+          <el-input v-model="form.createUser" placeholder="璇疯緭鍏ュ垱寤轰汉" />
+        </el-form-item>
+        <el-form-item label="淇敼浜�" prop="updateUser">
+          <el-input v-model="form.updateUser" 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 { listInspectionPlanTask, getInspectionPlanTask, delInspectionPlanTask, addInspectionPlanTask, updateInspectionPlanTask } from "@/api/main/em/inspectionPlanTask/inspectionPlanTask";
+
+export default {
+  name: "InspectionPlanTask",
+  data() {
+    return {
+      // 閬僵灞�
+      loading: true,
+      titleName: "",
+      // 閫変腑鏁扮粍
+      ids: [],
+      // 闈炲崟涓鐢�
+      single: true,
+      // 闈炲涓鐢�
+      multiple: true,
+      // 鏄剧ず鎼滅储鏉′欢
+      showSearch: true,
+      // 鎬绘潯鏁�
+      total: 0,
+      // 鐐规浠诲姟琛ㄦ牸鏁版嵁
+      inspectionPlanTaskList: [],
+      // 寮瑰嚭灞傛爣棰�
+      title: "",
+      // 鏄惁鏄剧ず寮瑰嚭灞�
+      open: false,
+      // 鏌ヨ鍙傛暟
+      queryParams: {
+        pageNum: 1,
+        pageSize: 10,
+        planCode: null,
+        planName: null,
+        planType: null,
+        state: null,
+        devicesCode: null,
+        devicesName: null,
+      },
+      // 琛ㄥ崟鍙傛暟
+      form: {},
+      // 琛ㄥ崟鏍¢獙
+      rules: {
+        id: [
+          { required: true, message: "ID涓嶈兘涓虹┖", trigger: "blur" }
+        ],
+      }
+    };
+  },
+  created() {
+    this.getList();
+  },
+  methods: {
+    /** 鏌ヨ鐐规浠诲姟鍒楄〃 */
+    getList() {
+      this.loading = true;
+      listInspectionPlanTask(this.queryParams).then(response => {
+        this.inspectionPlanTaskList = response.rows;
+        this.total = response.total;
+        this.loading = false;
+      });
+    },
+    // 鍙栨秷鎸夐挳
+    cancel() {
+      this.open = false;
+      this.reset();
+    },
+    // 琛ㄥ崟閲嶇疆
+    reset() {
+      this.form = {
+        id: null,
+        planCode: null,
+        planName: null,
+        planType: null,
+        state: null,
+        devicesCode: null,
+        devicesName: null,
+        brand: null,
+        specs: null,
+        results: null,
+        remarks: null,
+        createTime: null,
+        createUser: null,
+        updateTime: null,
+        updateUser: null,
+        spareField1: null,
+        spareField2: null,
+        spareField3: null,
+        spareField4: 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.titleName = "娣诲姞鐐规浠诲姟";
+    },
+    /** 淇敼鎸夐挳鎿嶄綔 */
+    handleUpdate(row) {
+      this.reset();
+      const id = row.id || this.ids
+      getInspectionPlanTask(id).then(response => {
+        this.form = response.data;
+        this.open = true;
+        this.titleName = "淇敼鐐规浠诲姟";
+      });
+    },
+    /** 鎻愪氦鎸夐挳 */
+    submitForm() {
+      this.$refs["form"].validate(valid => {
+        if (valid) {
+          if (this.form.id != null) {
+            updateInspectionPlanTask(this.form).then(response => {
+              this.$modal.msgSuccess("淇敼鎴愬姛");
+              this.open = false;
+              this.getList();
+            });
+          } else {
+            addInspectionPlanTask(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 delInspectionPlanTask(ids);
+      }).then(() => {
+        this.getList();
+        this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+      }).catch(() => {});
+    },
+    /** 瀵煎嚭鎸夐挳鎿嶄綔 */
+    handleExport() {
+      this.download('em/inspectionPlanTask/export', {
+        ...this.queryParams
+      }, `inspectionPlanTask_${new Date().getTime()}.xlsx`)
+    }
+  }
+};
+</script>

--
Gitblit v1.9.3