From 22899f74279a47f4ec79e1325f8489d948ced005 Mon Sep 17 00:00:00 2001
From: zss <zss@example.com>
Date: 星期五, 15 九月 2023 17:24:44 +0800
Subject: [PATCH] 修改2.0   9.15

---
 standard-server/src/main/java/com/yuanchu/mom/mapper/TechnologyMapper.java                |    6 
 standard-server/src/main/resources/mapper/TechnologyMapper.xml                            |    4 
 inspect-server/src/main/resources/mapper/FinishedInspectMapper.xml                        |    2 
 inspect-server/src/main/resources/mapper/InspectUnacceptedMapper.xml                      |    2 
 standard-server/src/main/java/com/yuanchu/mom/pojo/dto/TechniqueDto.java                  |    3 
 standard-server/src/main/java/com/yuanchu/mom/service/ProductService.java                 |    2 
 standard-server/src/main/resources/mapper/MbomMapper.xml                                  |    2 
 inspect-server/src/main/java/com/yuanchu/mom/service/impl/FinishedInspectServiceImpl.java |   14 +-
 inspect-server/src/main/java/com/yuanchu/mom/pojo/ProcessInspect.java                     |    5 +
 standard-server/src/main/java/com/yuanchu/mom/controller/ProductController.java           |   12 +-
 standard-server/src/main/java/com/yuanchu/mom/service/impl/MbomServiceImpl.java           |    5 
 base-server/src/main/java/com/yuanchu/mom/controller/TechnologyTemplateController.java    |    3 
 standard-server/src/main/java/com/yuanchu/mom/pojo/dto/ProductDto.java                    |    3 
 standard-server/src/main/java/com/yuanchu/mom/service/impl/SpecificationsServiceImpl.java |   12 ++
 standard-server/src/main/java/com/yuanchu/mom/controller/TechnologyController.java        |   10 +-
 standard-server/src/main/resources/mapper/TechniqueMapper.xml                             |    3 
 standard-server/src/main/java/com/yuanchu/mom/pojo/dto/TechnologyDto.java                 |    3 
 inspect-server/src/main/java/com/yuanchu/mom/service/impl/ProcessInspectServiceImpl.java  |    2 
 standard-server/src/main/java/com/yuanchu/mom/service/impl/StandardServiceImpl.java       |   12 ++
 standard-server/src/main/java/com/yuanchu/mom/service/impl/TechnologyServiceImpl.java     |   16 +++
 standard-server/src/main/java/com/yuanchu/mom/pojo/dto/MbomDto.java                       |    3 
 standard-server/src/main/resources/mapper/ProductMapper.xml                               |    2 
 standard-server/src/main/java/com/yuanchu/mom/controller/TechniqueController.java         |    7 +
 standard-server/src/main/java/com/yuanchu/mom/service/TechniqueService.java               |    2 
 inspect-server/src/main/java/com/yuanchu/mom/pojo/FinishedInspect.java                    |    5 +
 inspect-server/src/main/java/com/yuanchu/mom/pojo/vo/ProcessInspectVo.java                |    5 
 standard-server/src/main/java/com/yuanchu/mom/service/MbomService.java                    |    2 
 standard-server/src/main/java/com/yuanchu/mom/service/impl/ProductServiceImpl.java        |   14 ++-
 base-server/src/main/java/com/yuanchu/mom/service/impl/TechnologyTemplateServiceImpl.java |   13 +++
 standard-server/src/main/java/com/yuanchu/mom/service/impl/TechniqueServiceImpl.java      |    4 
 standard-server/src/main/java/com/yuanchu/mom/service/TechnologyService.java              |    4 
 inspect-server/src/main/resources/mapper/ProcessInspectMapper.xml                         |   32 ++++---
 base-server/src/main/java/com/yuanchu/mom/service/TechnologyTemplateService.java          |    2 
 standard-server/src/main/java/com/yuanchu/mom/controller/MbomController.java              |    7 +
 34 files changed, 150 insertions(+), 73 deletions(-)

diff --git a/base-server/src/main/java/com/yuanchu/mom/controller/TechnologyTemplateController.java b/base-server/src/main/java/com/yuanchu/mom/controller/TechnologyTemplateController.java
index 7c94cb2..9135dd4 100644
--- a/base-server/src/main/java/com/yuanchu/mom/controller/TechnologyTemplateController.java
+++ b/base-server/src/main/java/com/yuanchu/mom/controller/TechnologyTemplateController.java
@@ -56,8 +56,7 @@
     @ApiOperation(value = "鏂板宸ヨ壓璺嚎缁存姢")
     @PostMapping("/addTechTemp")
     public Result addTechTemp(@Validated @RequestBody TechnologyTemplateDto technologyTemplateDto) {
-        technologyTemplateService.addTechTemp(technologyTemplateDto);
-        return Result.success("鏂板鎴愬姛!");
+        return Result.success(technologyTemplateService.addTechTemp(technologyTemplateDto));
     }
 
     @ApiOperation(value = "鏌ヨ宸ヨ壓璺嚎鍒楄〃-->宸﹁竟浜岀骇灞曠ず")
diff --git a/base-server/src/main/java/com/yuanchu/mom/service/TechnologyTemplateService.java b/base-server/src/main/java/com/yuanchu/mom/service/TechnologyTemplateService.java
index ffe5c0c..22c1331 100644
--- a/base-server/src/main/java/com/yuanchu/mom/service/TechnologyTemplateService.java
+++ b/base-server/src/main/java/com/yuanchu/mom/service/TechnologyTemplateService.java
@@ -33,7 +33,7 @@
      * 鏂板宸ヨ壓璺嚎
      * @param technologyTemplateDto
      */
-    void addTechTemp(TechnologyTemplateDto technologyTemplateDto);
+    String addTechTemp(TechnologyTemplateDto technologyTemplateDto);
 
     /**
      * 鏌ヨ宸ヨ壓璺嚎鍒楄〃-->宸﹁竟浜岀骇灞曠ず
diff --git a/base-server/src/main/java/com/yuanchu/mom/service/impl/TechnologyTemplateServiceImpl.java b/base-server/src/main/java/com/yuanchu/mom/service/impl/TechnologyTemplateServiceImpl.java
index 70cff8a..ea472b8 100644
--- a/base-server/src/main/java/com/yuanchu/mom/service/impl/TechnologyTemplateServiceImpl.java
+++ b/base-server/src/main/java/com/yuanchu/mom/service/impl/TechnologyTemplateServiceImpl.java
@@ -1,5 +1,7 @@
 package com.yuanchu.mom.service.impl;
 
+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.yuanchu.mom.mapper.*;
 import com.yuanchu.mom.pojo.TechnologyTemplate;
@@ -60,11 +62,20 @@
     //鏂板宸ヨ壓璺嚎
     @Override
     @Transactional(rollbackFor = Exception.class)
-    public void addTechTemp(TechnologyTemplateDto technologyTemplateDto) {
+    public String addTechTemp(TechnologyTemplateDto technologyTemplateDto) {
+        /*鏍¢獙鏄惁娣诲姞閲嶅*/
+        if (ObjectUtils.isNotEmpty(technologyTemplateMapper.selectList(Wrappers.<TechnologyTemplate>query()
+                .eq("type", technologyTemplateDto.getType())
+                .eq("state", 1)
+                .eq("father", technologyTemplateDto.getFather())
+                .eq("name", technologyTemplateDto.getName())))) {
+            return "閲嶅娣诲姞!";
+        }
         /*鏂板宸ヨ壓*/
         TechnologyTemplate technologyTemplate = new TechnologyTemplate();
         BeanUtils.copyProperties(technologyTemplateDto, technologyTemplate);
         technologyTemplateMapper.insert(technologyTemplate);
+        return "娣诲姞鎴愬姛!";
     }
 
     //鏌ヨ宸ヨ壓璺嚎鍒楄〃-->宸﹁竟涓�绾у睍绀�
diff --git a/inspect-server/src/main/java/com/yuanchu/mom/pojo/FinishedInspect.java b/inspect-server/src/main/java/com/yuanchu/mom/pojo/FinishedInspect.java
index 1373879..2bc8fcf 100644
--- a/inspect-server/src/main/java/com/yuanchu/mom/pojo/FinishedInspect.java
+++ b/inspect-server/src/main/java/com/yuanchu/mom/pojo/FinishedInspect.java
@@ -85,6 +85,11 @@
     private Integer userId;
 
     /**
+     * 鍏宠仈 鏈�鍚庝竴閬撳伐鑹篿d
+     **/
+    private Integer techId;
+
+    /**
      * 妫�楠岀粨璁�;0:涓嶅悎鏍�;1:鍚堟牸
      **/
     private Integer result;
diff --git a/inspect-server/src/main/java/com/yuanchu/mom/pojo/ProcessInspect.java b/inspect-server/src/main/java/com/yuanchu/mom/pojo/ProcessInspect.java
index e30e1ad..b775955 100644
--- a/inspect-server/src/main/java/com/yuanchu/mom/pojo/ProcessInspect.java
+++ b/inspect-server/src/main/java/com/yuanchu/mom/pojo/ProcessInspect.java
@@ -75,6 +75,11 @@
     private String techname;
 
     /**
+     * 鍏宠仈 宸ヨ壓id
+     **/
+    private Integer techId;
+
+    /**
      * 鎶ユ浜�:鐢ㄦ埛id
      **/
     private Integer userId;
diff --git a/inspect-server/src/main/java/com/yuanchu/mom/pojo/vo/ProcessInspectVo.java b/inspect-server/src/main/java/com/yuanchu/mom/pojo/vo/ProcessInspectVo.java
index 6845e2e..1c14d31 100644
--- a/inspect-server/src/main/java/com/yuanchu/mom/pojo/vo/ProcessInspectVo.java
+++ b/inspect-server/src/main/java/com/yuanchu/mom/pojo/vo/ProcessInspectVo.java
@@ -30,10 +30,11 @@
     @NotBlank(message = "宸ヨ壓涓嶈兘涓虹┖!")
     private String techname;
 
+    @NotNull(message = "宸ヨ壓璺嚎id涓嶈兘涓虹┖!")
+    private Integer techId;
+
     @NotNull(message = "鏁伴噺涓嶈兘涓虹┖!")
     private Integer quantity;
 
-    @NotNull(message = "鍏宠仈鐨勫伐鑹鸿矾绾縤d涓嶈兘涓虹┖!")
-    private Integer technologyId;
 
 }
diff --git a/inspect-server/src/main/java/com/yuanchu/mom/service/impl/FinishedInspectServiceImpl.java b/inspect-server/src/main/java/com/yuanchu/mom/service/impl/FinishedInspectServiceImpl.java
index 48acef0..48708b0 100644
--- a/inspect-server/src/main/java/com/yuanchu/mom/service/impl/FinishedInspectServiceImpl.java
+++ b/inspect-server/src/main/java/com/yuanchu/mom/service/impl/FinishedInspectServiceImpl.java
@@ -64,6 +64,10 @@
     @Override
     @Transactional(rollbackFor = Exception.class)
     public Integer addProcessInspectionSheet(String userId, FinishedInspectVo finishedInspectVo) {
+        //鏍规嵁鐢熶骇璁㈠崟id鏌ヨ缂栧埗宸ュ簭鐨勬渶鍚庝竴閬撳伐鑹�
+        List<ManualTechnology> manualTechnologyList = manualTechnologyMapper.selAllByMoId(finishedInspectVo.getId());
+        //鑾峰彇鏈�鍚庝竴閬撳伐鑹哄叧鑱旂殑宸ヨ壓璺嚎id
+        Integer technologyId = manualTechnologyList.get(0).getTechnologyId();
         /*鏂板鎴愬搧妫�楠屽崟*/
         FinishedInspect finishedInspect = new FinishedInspect();
         finishedInspect.setUserId(Integer.parseInt(userId));
@@ -76,14 +80,10 @@
         finishedInspect.setSpecificationsModel(finishedInspectVo.getSpecificationsModel());
         finishedInspect.setMaterial(finishedInspectVo.getMaterial());
         finishedInspect.setMaterialCode(finishedInspectVo.getMcode());
+        finishedInspect.setTechId(technologyId);
         finishedInspectMapper.insert(finishedInspect);
         /*鎵归噺鏂板鎴愬搧妫�楠岄」鐩崟*/
-        //鑾峰彇鍨嬪彿id
-        //Integer specificationId = getSpecificationId(finishedInspectVo.getMaterial(), finishedInspectVo.getMcode(), finishedInspectVo.getSpecificationsModel());
-        //鏍规嵁鐢熶骇璁㈠崟id鏌ヨ缂栧埗宸ュ簭鐨勬渶鍚庝竴閬撳伐鑹�
-        List<ManualTechnology> manualTechnologyList = manualTechnologyMapper.selAllByMoId(finishedInspectVo.getId());
-        //鑾峰彇鏈�鍚庝竴閬撳伐鑹哄叧鑱旂殑宸ヨ壓璺嚎id
-        Integer technologyId = manualTechnologyList.get(0).getTechnologyId();
+
         /*//鏌ヨ鏍囧噯BOM鎶�鏈寚鏍囦腑璇ュ瀷鍙峰伐鑹轰笅鏈�鏂扮増鏈殑妫�楠岄」鐩�
         Integer ver = productService.selectVerByPro(specificationId).get(0);//璇ュ瀷鍙蜂笅鎶�鏈寚鏍囨渶鏂扮増鏈�*/
         List<Product> productList = productService.selProByVerSpe(technologyId);
@@ -107,7 +107,7 @@
     public String updateFinishInspectsById(String username,Integer id) {
         /*鏇存柊妫�楠屽崟閲岄潰鐨勬楠岀粨璁�*/
         //鍏堝垽鏂楠岀粨鏋�
-        List<Integer> results = inspectionItemMapper.getResult(id,1);
+        List<Integer> results = inspectionItemMapper.getResult(id,2);
         int count = 0;
         for (Integer result : results) {
             if (result != null && result == 1) {
diff --git a/inspect-server/src/main/java/com/yuanchu/mom/service/impl/ProcessInspectServiceImpl.java b/inspect-server/src/main/java/com/yuanchu/mom/service/impl/ProcessInspectServiceImpl.java
index 8756848..7469a36 100644
--- a/inspect-server/src/main/java/com/yuanchu/mom/service/impl/ProcessInspectServiceImpl.java
+++ b/inspect-server/src/main/java/com/yuanchu/mom/service/impl/ProcessInspectServiceImpl.java
@@ -63,7 +63,7 @@
         Integer specificationId = getSpecificationId(processInspectVo.getMaterial(), processInspectVo.getMaterialCode(), processInspectVo.getSpecificationsModel());
         //鏌ヨ鏍囧噯BOM鎶�鏈寚鏍囦腑璇ュ瀷鍙峰伐鑹轰笅鏈�鏂扮増鏈殑妫�楠岄」鐩�
         Integer ver = productService.selectVerByPro(specificationId).get(0);//璇ュ瀷鍙蜂笅鎶�鏈寚鏍囨渶鏂扮増鏈�*/
-        List<Product> productList = productService.selProByVerSpe(processInspectVo.getTechnologyId());
+        List<Product> productList = productService.selProByVerSpe(processInspectVo.getTechId());
         List<InspectionItem> inspectionItemList = productList.stream().map(product -> {
             InspectionItem inspectionItem = new InspectionItem();
             BeanUtils.copyProperties(product, inspectionItem);
diff --git a/inspect-server/src/main/resources/mapper/FinishedInspectMapper.xml b/inspect-server/src/main/resources/mapper/FinishedInspectMapper.xml
index 1c6c3a0..5f5ea10 100644
--- a/inspect-server/src/main/resources/mapper/FinishedInspectMapper.xml
+++ b/inspect-server/src/main/resources/mapper/FinishedInspectMapper.xml
@@ -62,6 +62,7 @@
         <id property="name" column="order_number"/>
         <result property="customerName" column="customer_name"/>
         <result property="projectName" column="project_name"/>
+        <result property="techId" column="tech_id"/>
         <result property="qualityTraceability" column="quality_traceability"/>
         <result property="materialCode" column="material_code"/>
         <result property="material" column="material"/>
@@ -90,6 +91,7 @@
         select order_number,
                customer_name,
                project_name,
+               tech_id,
                quality_traceability,
                material_code,
                material,
diff --git a/inspect-server/src/main/resources/mapper/InspectUnacceptedMapper.xml b/inspect-server/src/main/resources/mapper/InspectUnacceptedMapper.xml
index 724ac00..83fe31d 100644
--- a/inspect-server/src/main/resources/mapper/InspectUnacceptedMapper.xml
+++ b/inspect-server/src/main/resources/mapper/InspectUnacceptedMapper.xml
@@ -28,7 +28,7 @@
         WHERE p.`state` = 1
         UNION ALL
         SELECT fi.id, DATE_FORMAT(fi.create_time, '%Y-%m-%d')
-        dateArrival,material_code,project_name,specifications_model,
+        dateArrival,material_code, material project_name,specifications_model,
         unit,quantity,DATE_FORMAT(fi.create_time, '%Y-%m-%d') inspectionDate,DATE_FORMAT(fi.update_time, '%Y-%m-%d')
         processingDate, fi.`user_id`, 1 AS classify
         FROM mom_ocean.finished_inspect fi
diff --git a/inspect-server/src/main/resources/mapper/ProcessInspectMapper.xml b/inspect-server/src/main/resources/mapper/ProcessInspectMapper.xml
index 9a96f0c..e18c187 100644
--- a/inspect-server/src/main/resources/mapper/ProcessInspectMapper.xml
+++ b/inspect-server/src/main/resources/mapper/ProcessInspectMapper.xml
@@ -41,6 +41,7 @@
         <result property="specifications" column="specifications_model"/>
         <result property="techfather" column="techfather"/>
         <result property="techname" column="techname"/>
+        <result property="techId" column="tech_id"/>
         <result property="punit" column="punit"/>
         <result property="quantity" column="quantity"/>
         <result property="presult" column="presult"/>
@@ -68,6 +69,7 @@
                specifications_model,
                techfather,
                techname,
+               tech_id,
                pi.unit     punit,
                quantity,
                ii.id       iid,
@@ -92,26 +94,26 @@
     <!--鍒嗛〉鏌ヨ杩囩▼妫�楠屽崟鍒楄〃-->
     <select id="selectProcessInspectsList" resultType="java.util.Map">
         select process_inspect.id,
-               order_number,
-               material_code,
-               material,
-               specifications_model,
-               techfather,
-               techname,
-               unit,
-               quantity,
-               DATE_FORMAT(process_inspect.create_time, '%Y-%m-%d') createTime,
-               name,
-               DATE_FORMAT(process_inspect.update_time, '%Y-%m-%d') updateTime,
-               result
+        order_number,
+        material_code,
+        material,
+        specifications_model,
+        techfather,
+        techname,
+        unit,
+        quantity,
+        DATE_FORMAT(process_inspect.create_time, '%Y-%m-%d') createTime,
+        name,
+        DATE_FORMAT(process_inspect.update_time, '%Y-%m-%d') updateTime,
+        result
         from mom_ocean.process_inspect
-                 left join mom_ocean.user on process_inspect.user_id = user.id
+        left join mom_ocean.user on process_inspect.user_id = user.id
         where process_inspect.state = 1
         <if test="techfather!=null and techfather!=''">
-            and techfather like  concat('%',#{techfather},'%')
+            and techfather like concat('%',#{techfather},'%')
         </if>
         <if test="name!=null and name!=''">
-            and material like  concat('%',#{name},'%')
+            and material like concat('%',#{name},'%')
         </if>
         <if test="result!=null ">
             and result =#{result}
diff --git a/standard-server/src/main/java/com/yuanchu/mom/controller/MbomController.java b/standard-server/src/main/java/com/yuanchu/mom/controller/MbomController.java
index f2bd2b0..abbe0b8 100644
--- a/standard-server/src/main/java/com/yuanchu/mom/controller/MbomController.java
+++ b/standard-server/src/main/java/com/yuanchu/mom/controller/MbomController.java
@@ -30,11 +30,12 @@
 
     @ApiOperation("鍙充笂瑙掓柊澧�-->鐗╂枡娓呭崟-->閫夋嫨宸ュ簭,宸ヨ壓")
     @ApiImplicitParams(value = {
-            @ApiImplicitParam(name = "specificationsId", value = "鍨嬪彿id", dataTypeClass = Integer.class, required = true)
+            @ApiImplicitParam(name = "specificationsId", value = "鍨嬪彿id", dataTypeClass = Integer.class, required = true),
+            @ApiImplicitParam(name = "version", value = "褰撳墠鐗堟湰", dataTypeClass = Integer.class, required = true)
     })
     @GetMapping("/chooseTech")
-    public Result<?> chooseTech(Integer specificationsId) {
-        return Result.success(mbomService.chooseTech(specificationsId));
+    public Result<?> chooseTech(Integer specificationsId,Integer version) {
+        return Result.success(mbomService.chooseTech(specificationsId,version));
     }
 
 
diff --git a/standard-server/src/main/java/com/yuanchu/mom/controller/ProductController.java b/standard-server/src/main/java/com/yuanchu/mom/controller/ProductController.java
index 36cb8d2..ed6572d 100644
--- a/standard-server/src/main/java/com/yuanchu/mom/controller/ProductController.java
+++ b/standard-server/src/main/java/com/yuanchu/mom/controller/ProductController.java
@@ -23,11 +23,12 @@
 
     @ApiOperation("鍙充笂瑙掓柊澧�-->鎶�鏈寚鏍�-->閫夋嫨宸ュ簭,宸ヨ壓")
     @ApiImplicitParams(value = {
-            @ApiImplicitParam(name = "specificationsId", value = "鍨嬪彿id", dataTypeClass = Integer.class, required = true)
+            @ApiImplicitParam(name = "specificationsId", value = "鍨嬪彿id", dataTypeClass = Integer.class, required = true),
+            @ApiImplicitParam(name = "version", value = "褰撳墠鐗堟湰", dataTypeClass = Integer.class, required = true)
     })
     @GetMapping("/chooseTech")
-    public Result<?> chooseTech(Integer specificationsId) {
-        return Result.success(productService.chooseTech(specificationsId));
+    public Result<?> chooseTech(Integer specificationsId,Integer version) {
+        return Result.success(productService.chooseTech(specificationsId,version));
     }
 
     @ApiOperation("鍙充笂瑙掓柊澧�-->鎶�鏈寚鏍�-->閫夋嫨椤圭洰鐖剁被")
@@ -49,9 +50,8 @@
     @ApiOperation("濉啓鏍囧噯鍊间笌鍐呮帶鍊�,榧犳爣绉诲紑淇濆瓨")
     @ApiImplicitParams(value = {
             @ApiImplicitParam(name = "id", value = "鎶�鏈寚鏍噄d", dataTypeClass = Integer.class, required = true),
-            @ApiImplicitParam(name = "required", value = "鏍囧噯鍊�", dataTypeClass = String.class, required = true),
-            @ApiImplicitParam(name = "internal", value = "鍐呮帶鍊�", dataTypeClass = String.class, required = true)
-
+            @ApiImplicitParam(name = "required", value = "鏍囧噯鍊�", dataTypeClass = String.class),
+            @ApiImplicitParam(name = "internal", value = "鍐呮帶鍊�", dataTypeClass = String.class)
     })
     @PostMapping("/write")
     public Result<?> write(Integer id, String required, String internal) {
diff --git a/standard-server/src/main/java/com/yuanchu/mom/controller/TechniqueController.java b/standard-server/src/main/java/com/yuanchu/mom/controller/TechniqueController.java
index bc044cc..03b169e 100644
--- a/standard-server/src/main/java/com/yuanchu/mom/controller/TechniqueController.java
+++ b/standard-server/src/main/java/com/yuanchu/mom/controller/TechniqueController.java
@@ -30,11 +30,12 @@
 
     @ApiOperation("鍙充笂瑙掓柊澧�-->鐢熶骇宸ヨ壓-->閫夋嫨宸ュ簭,宸ヨ壓")
     @ApiImplicitParams(value = {
-            @ApiImplicitParam(name = "specificationsId", value = "鍨嬪彿id", dataTypeClass = Integer.class, required = true)
+            @ApiImplicitParam(name = "specificationsId", value = "鍨嬪彿id", dataTypeClass = Integer.class, required = true),
+            @ApiImplicitParam(name = "version", value = "褰撳墠鐗堟湰", dataTypeClass = Integer.class, required = true)
     })
     @GetMapping("/chooseTech")
-    public Result<?> chooseTech(Integer specificationsId) {
-        return Result.success(techniqueService.chooseTech(specificationsId));
+    public Result<?> chooseTech(Integer specificationsId,Integer version) {
+        return Result.success(techniqueService.chooseTech(specificationsId,version));
     }
 
     @ApiOperation("鍙充笂瑙掓柊澧�-->鐢熶骇宸ヨ壓-->閫夋嫨璁惧")
diff --git a/standard-server/src/main/java/com/yuanchu/mom/controller/TechnologyController.java b/standard-server/src/main/java/com/yuanchu/mom/controller/TechnologyController.java
index 9ac1511..4a94d01 100644
--- a/standard-server/src/main/java/com/yuanchu/mom/controller/TechnologyController.java
+++ b/standard-server/src/main/java/com/yuanchu/mom/controller/TechnologyController.java
@@ -37,18 +37,18 @@
 
     @ApiOperation("鍙充笂瑙掓柊澧�-->宸ヨ壓璺嚎-->閫夋嫨宸ュ簭")
     @ApiImplicitParams(value = {
-            @ApiImplicitParam(name = "specificationsId", value = "鍨嬪彿id", dataTypeClass = Integer.class, required = true)
+            @ApiImplicitParam(name = "specificationsId", value = "鍨嬪彿id", dataTypeClass = Integer.class, required = true),
+            @ApiImplicitParam(name = "version", value = "鐗堟湰", dataTypeClass = Integer.class, required = true)
     })
     @GetMapping("/chooseFather")
-    public Result<?> chooseFather(Integer specificationsId) {
-        return Result.success(technologyService.chooseFather(specificationsId));
+    public Result<?> chooseFather(Integer specificationsId,Integer version) {
+        return Result.success(technologyService.chooseFather(specificationsId,version));
     }
 
     @ApiOperation("鍙充笂瑙掓柊澧�-->宸ヨ壓璺嚎")
     @PostMapping("/add")
     public Result<?> addTechnology(@Validated @RequestBody TechnologyDto technologyDto) {
-        technologyService.addTechnology(technologyDto);
-        return Result.success("娣诲姞宸ヨ壓銆�" + technologyDto.getName() + "銆戞垚鍔�");
+        return Result.success(technologyService.addTechnology(technologyDto));
     }
 
     @ApiOperation("濉啓鐢熶骇瀹氶,榧犳爣绉诲紑淇濆瓨")
diff --git a/standard-server/src/main/java/com/yuanchu/mom/mapper/TechnologyMapper.java b/standard-server/src/main/java/com/yuanchu/mom/mapper/TechnologyMapper.java
index 3cdf711..1063ace 100644
--- a/standard-server/src/main/java/com/yuanchu/mom/mapper/TechnologyMapper.java
+++ b/standard-server/src/main/java/com/yuanchu/mom/mapper/TechnologyMapper.java
@@ -23,10 +23,10 @@
     List<Map<String, Object>> selectAllTec(Integer specificationsId, Integer version,String message);
 
     //鍙充笂瑙掓柊澧�-->宸ヨ壓璺嚎-->閫夋嫨宸ュ簭
-    List<Map<String, Object>> chooseFather(Integer specificationsId);
+    List<Map<String, Object>> chooseFather(Integer specificationsId,Integer version);
 
-    //鍙充笂瑙掓柊澧�-->鎶�鏈寚鏍�-->閫夋嫨宸ュ簭,宸ヨ壓
-    List<Map<String, Object>> chooseTech(Integer specificationsId);
+    //鍙充笂瑙掓柊澧�-->鎶�鏈寚鏍� 鐗╂枡娓呭崟 鐢熶骇宸ヨ壓-->閫夋嫨宸ュ簭,宸ヨ壓
+    List<Map<String, Object>> chooseTech(Integer specificationsId,Integer version);
 
     //鎵归噺鍒犻櫎
     void delAllTech(String ids);
diff --git a/standard-server/src/main/java/com/yuanchu/mom/pojo/dto/MbomDto.java b/standard-server/src/main/java/com/yuanchu/mom/pojo/dto/MbomDto.java
index b2d3758..63781fd 100644
--- a/standard-server/src/main/java/com/yuanchu/mom/pojo/dto/MbomDto.java
+++ b/standard-server/src/main/java/com/yuanchu/mom/pojo/dto/MbomDto.java
@@ -16,4 +16,7 @@
     //鍘熸潗鏂欐竻鍗曢泦鍚�
     private List<MbomDto2> mbomDto2List;
 
+    @NotNull(message = "褰撳墠鐗堟湰涓嶈兘涓虹┖!")
+    private Integer version;
+
 }
diff --git a/standard-server/src/main/java/com/yuanchu/mom/pojo/dto/ProductDto.java b/standard-server/src/main/java/com/yuanchu/mom/pojo/dto/ProductDto.java
index f164083..d57fba7 100644
--- a/standard-server/src/main/java/com/yuanchu/mom/pojo/dto/ProductDto.java
+++ b/standard-server/src/main/java/com/yuanchu/mom/pojo/dto/ProductDto.java
@@ -40,4 +40,7 @@
      * 鍐呮帶鍊�
      */
     private String internal;
+
+    @NotNull(message = "褰撳墠鐗堟湰涓嶈兘涓虹┖!")
+    private Integer version;
 }
diff --git a/standard-server/src/main/java/com/yuanchu/mom/pojo/dto/TechniqueDto.java b/standard-server/src/main/java/com/yuanchu/mom/pojo/dto/TechniqueDto.java
index c162e80..4cf1306 100644
--- a/standard-server/src/main/java/com/yuanchu/mom/pojo/dto/TechniqueDto.java
+++ b/standard-server/src/main/java/com/yuanchu/mom/pojo/dto/TechniqueDto.java
@@ -35,4 +35,7 @@
      **/
     @NotBlank(message = "鎸囨爣(瀛愮被椤圭洰)涓嶈兘涓虹┖!")
     private String product;
+
+    @NotNull(message = "褰撳墠鐗堟湰涓嶈兘涓虹┖!")
+    private Integer version;
 }
diff --git a/standard-server/src/main/java/com/yuanchu/mom/pojo/dto/TechnologyDto.java b/standard-server/src/main/java/com/yuanchu/mom/pojo/dto/TechnologyDto.java
index cc704af..c30f690 100644
--- a/standard-server/src/main/java/com/yuanchu/mom/pojo/dto/TechnologyDto.java
+++ b/standard-server/src/main/java/com/yuanchu/mom/pojo/dto/TechnologyDto.java
@@ -28,4 +28,7 @@
 
     //鐢熶骇瀹氶(涓�/澶�)
     private Integer productionQuota;
+
+    @NotNull(message = "褰撳墠鐗堟湰涓嶈兘涓虹┖!")
+    private Integer version;
 }
diff --git a/standard-server/src/main/java/com/yuanchu/mom/service/MbomService.java b/standard-server/src/main/java/com/yuanchu/mom/service/MbomService.java
index 65d99db..608ccd1 100644
--- a/standard-server/src/main/java/com/yuanchu/mom/service/MbomService.java
+++ b/standard-server/src/main/java/com/yuanchu/mom/service/MbomService.java
@@ -35,7 +35,7 @@
      * @param specificationsId
      * @return
      */
-    List<Map<String,Object>> chooseTech(Integer specificationsId);
+    List<Map<String,Object>> chooseTech(Integer specificationsId,Integer version);
 
     /**
      * 鍙充笂瑙掓柊澧�-->鐗╂枡娓呭崟
diff --git a/standard-server/src/main/java/com/yuanchu/mom/service/ProductService.java b/standard-server/src/main/java/com/yuanchu/mom/service/ProductService.java
index 892faf0..bcd327f 100644
--- a/standard-server/src/main/java/com/yuanchu/mom/service/ProductService.java
+++ b/standard-server/src/main/java/com/yuanchu/mom/service/ProductService.java
@@ -41,7 +41,7 @@
      * @param specificationsId
      * @return
      */
-    List<Map<String,Object>> chooseTech(Integer specificationsId);
+    List<Map<String,Object>> chooseTech(Integer specificationsId,Integer version);
 
     /**
      * 鍙充笂瑙掓柊澧�-->鎶�鏈寚鏍�-->閫夋嫨椤圭洰鐖剁被
diff --git a/standard-server/src/main/java/com/yuanchu/mom/service/TechniqueService.java b/standard-server/src/main/java/com/yuanchu/mom/service/TechniqueService.java
index 10182ec..183f4a4 100644
--- a/standard-server/src/main/java/com/yuanchu/mom/service/TechniqueService.java
+++ b/standard-server/src/main/java/com/yuanchu/mom/service/TechniqueService.java
@@ -35,7 +35,7 @@
      * @param specificationsId
      * @return
      */
-    List<Map<String,Object>> chooseTech(Integer specificationsId);
+    List<Map<String,Object>> chooseTech(Integer specificationsId,Integer version);
 
     /**
      * 鍙充笂瑙掓柊澧�-->鐢熶骇宸ヨ壓-->閫夋嫨璁惧
diff --git a/standard-server/src/main/java/com/yuanchu/mom/service/TechnologyService.java b/standard-server/src/main/java/com/yuanchu/mom/service/TechnologyService.java
index bbbbe81..f521111 100644
--- a/standard-server/src/main/java/com/yuanchu/mom/service/TechnologyService.java
+++ b/standard-server/src/main/java/com/yuanchu/mom/service/TechnologyService.java
@@ -41,13 +41,13 @@
      * 鍙充笂瑙掓柊澧�-->宸ヨ壓璺嚎-->閫夋嫨宸ュ簭
      * @return
      */
-    List<Map<String,Object>> chooseFather(Integer specificationsId);
+    List<Map<String,Object>> chooseFather(Integer specificationsId,Integer version);
 
     /**
      * 鍙充笂瑙掓柊澧�-->宸ヨ壓璺嚎
      * @param technologyDto
      */
-    void addTechnology(TechnologyDto technologyDto);
+    String addTechnology(TechnologyDto technologyDto);
 
     /**
      * 濉啓鐢熶骇瀹氶,榧犳爣绉诲紑淇濆瓨
diff --git a/standard-server/src/main/java/com/yuanchu/mom/service/impl/MbomServiceImpl.java b/standard-server/src/main/java/com/yuanchu/mom/service/impl/MbomServiceImpl.java
index 430c7cd..05104bd 100644
--- a/standard-server/src/main/java/com/yuanchu/mom/service/impl/MbomServiceImpl.java
+++ b/standard-server/src/main/java/com/yuanchu/mom/service/impl/MbomServiceImpl.java
@@ -44,8 +44,8 @@
 
     //鍙充笂瑙掓柊澧�-->鐗╂枡娓呭崟-->閫夋嫨宸ュ簭,宸ヨ壓
     @Override
-    public List<Map<String, Object>> chooseTech(Integer specificationsId) {
-        return technologyMapper.chooseTech(specificationsId);
+    public List<Map<String, Object>> chooseTech(Integer specificationsId,Integer version) {
+        return technologyMapper.chooseTech(specificationsId,version);
     }
 
     //鍙充笂瑙掓柊澧�-->鐗╂枡娓呭崟
@@ -55,6 +55,7 @@
         List<Mbom> mbomList = mbomDto2List.stream().map(mbomDto2 -> {
             Mbom mbom = new Mbom();
             mbom.setTechnologyId(mbomDto.getTechnologyId());
+            mbom.setVersion(mbomDto.getVersion());
             BeanUtils.copyProperties(mbomDto2, mbom);
             return mbom;
         }).collect(Collectors.toList());
diff --git a/standard-server/src/main/java/com/yuanchu/mom/service/impl/ProductServiceImpl.java b/standard-server/src/main/java/com/yuanchu/mom/service/impl/ProductServiceImpl.java
index c0424b4..7c484bb 100644
--- a/standard-server/src/main/java/com/yuanchu/mom/service/impl/ProductServiceImpl.java
+++ b/standard-server/src/main/java/com/yuanchu/mom/service/impl/ProductServiceImpl.java
@@ -53,8 +53,8 @@
 
     //鍙充笂瑙掓柊澧�-->鎶�鏈寚鏍�-->閫夋嫨宸ュ簭,宸ヨ壓
     @Override
-    public List<Map<String, Object>> chooseTech(Integer specificationsId) {
-        return technologyMapper.chooseTech(specificationsId);
+    public List<Map<String, Object>> chooseTech(Integer specificationsId, Integer version) {
+        return technologyMapper.chooseTech(specificationsId, version);
     }
 
     //鍙充笂瑙掓柊澧�-->鎶�鏈寚鏍�-->閫夋嫨椤圭洰鐖剁被
@@ -69,13 +69,13 @@
         Product product = new Product();
         String required = productDto.getRequired();
         String internal = productDto.getInternal();
-        if (ObjectUtils.isNotEmpty(required)){
+        if (ObjectUtils.isNotEmpty(required)) {
             char requ = required.charAt(0);
             if (requ != '>' && requ != '<' && requ != '=') {
                 return "鏍囧噯鍊艰緭鍏ユ牸寮忔湁闂!";
             }
         }
-        if (ObjectUtils.isNotEmpty(internal)){
+        if (ObjectUtils.isNotEmpty(internal)) {
             char inter = internal.charAt(0);
             if (inter != '>' && inter != '<' && inter != '=') {
                 return "鍐呮帶鍊艰緭鍏ユ牸寮忔湁闂!";
@@ -90,14 +90,18 @@
     @Override
     public String write(Integer id, String required, String internal) {
         //鏍¢獙鏍囧噯鍊�,鍐呮帶鍊兼牸寮�
+        if (ObjectUtils.isNotEmpty(internal)) {
             char inter = internal.charAt(0);
-            char requ = required.charAt(0);
             if (inter != '>' && inter != '<' && inter != '=') {
                 return "鍐呮帶鍊艰緭鍏ユ牸寮忔湁闂!";
             }
+        }
+        if (ObjectUtils.isNotEmpty(required)) {
+            char requ = required.charAt(0);
             if (requ != '>' && requ != '<' && requ != '=') {
                 return "鏍囧噯鍊艰緭鍏ユ牸寮忔湁闂!";
             }
+        }
         Product product = new Product();
         product.setId(id);
         product.setRequired(required);
diff --git a/standard-server/src/main/java/com/yuanchu/mom/service/impl/SpecificationsServiceImpl.java b/standard-server/src/main/java/com/yuanchu/mom/service/impl/SpecificationsServiceImpl.java
index cb80931..714960b 100644
--- a/standard-server/src/main/java/com/yuanchu/mom/service/impl/SpecificationsServiceImpl.java
+++ b/standard-server/src/main/java/com/yuanchu/mom/service/impl/SpecificationsServiceImpl.java
@@ -81,7 +81,17 @@
         /*鏂板鏍囧噯BOM-->宸ヨ壓璺嚎(鎵归噺娣诲姞)*/
         //鏍规嵁鏍囧噯id鏌ヨ鐗╂枡澶х被
         Material material = materialMapper.selFath(specificationsDto.getId());
-        List<TechnologyTemplate> technologyTemplateList = technologyTemplateMapper.selectList(Wrappers.<TechnologyTemplate>query().eq("type", material.getFather()));
+        Integer type = null;
+        if (material.getFather().equals("姗¤兌杩炴帴鍣�")){
+            type=0;
+        }else if (material.getFather().equals("閲戝睘杩炴帴鍣�")){
+            type=1;
+        }else if(material.getFather().equals("婀挎彃鎷旂數杩炴帴鍣�")){
+            type=2;
+        }else if(material.getFather().equals("鍒嗘敮缁勪欢")){
+            type=3;
+        }else return "娣诲姞鍨嬪彿銆�" + specificationsDto.getSpecifications() + "銆戞垚鍔�";
+        List<TechnologyTemplate> technologyTemplateList = technologyTemplateMapper.selectList(Wrappers.<TechnologyTemplate>query().eq("type",type));
         List<Technology> technologyList = technologyTemplateList.stream().map(technologyTemplate -> {
             Technology technology = new Technology();
             technology.setSpecificationsId(specifications.getId());
diff --git a/standard-server/src/main/java/com/yuanchu/mom/service/impl/StandardServiceImpl.java b/standard-server/src/main/java/com/yuanchu/mom/service/impl/StandardServiceImpl.java
index bab7259..ebb7772 100644
--- a/standard-server/src/main/java/com/yuanchu/mom/service/impl/StandardServiceImpl.java
+++ b/standard-server/src/main/java/com/yuanchu/mom/service/impl/StandardServiceImpl.java
@@ -83,7 +83,17 @@
         /*鏂板鏍囧噯BOM-->宸ヨ壓璺嚎(鎵归噺娣诲姞)*/
         //鏌ヨ鐗╂枡鐨勫ぇ绫�(鏍规嵁鐗╂枡id)
         Material material = materialMapper.selectById(standardDto.getId());
-        List<TechnologyTemplate> technologyTemplateList = technologyTemplateMapper.selectList(Wrappers.<TechnologyTemplate>query().eq("type", material.getFather()));
+        Integer type = null;
+        if (material.getFather().equals("姗¤兌杩炴帴鍣�")){
+            type=0;
+        }else if (material.getFather().equals("閲戝睘杩炴帴鍣�")){
+            type=1;
+        }else if(material.getFather().equals("婀挎彃鎷旂數杩炴帴鍣�")){
+            type=2;
+        }else if(material.getFather().equals("鍒嗘敮缁勪欢")){
+            type=3;
+        }else return "娣诲姞鏍囧噯銆�" + standardDto.getStandard() + "銆戞垚鍔�";
+        List<TechnologyTemplate> technologyTemplateList = technologyTemplateMapper.selectList(Wrappers.<TechnologyTemplate>query().eq("type", type));
         List<Technology> technologyList = technologyTemplateList.stream().map(technologyTemplate -> {
             Technology technology = new Technology();
             technology.setSpecificationsId(specifications.getId());
diff --git a/standard-server/src/main/java/com/yuanchu/mom/service/impl/TechniqueServiceImpl.java b/standard-server/src/main/java/com/yuanchu/mom/service/impl/TechniqueServiceImpl.java
index a8e14ae..be8ec96 100644
--- a/standard-server/src/main/java/com/yuanchu/mom/service/impl/TechniqueServiceImpl.java
+++ b/standard-server/src/main/java/com/yuanchu/mom/service/impl/TechniqueServiceImpl.java
@@ -42,8 +42,8 @@
 
     //鍙充笂瑙掓柊澧�-->鐢熶骇宸ヨ壓-->閫夋嫨宸ュ簭,宸ヨ壓
     @Override
-    public List<Map<String, Object>> chooseTech(Integer specificationsId) {
-        return technologyMapper.chooseTech(specificationsId);
+    public List<Map<String, Object>> chooseTech(Integer specificationsId,Integer version) {
+        return technologyMapper.chooseTech(specificationsId,version);
     }
 
     //鍙充笂瑙掓柊澧�-->鐢熶骇宸ヨ壓-->閫夋嫨璁惧
diff --git a/standard-server/src/main/java/com/yuanchu/mom/service/impl/TechnologyServiceImpl.java b/standard-server/src/main/java/com/yuanchu/mom/service/impl/TechnologyServiceImpl.java
index c70ee4b..a40cf8f 100644
--- a/standard-server/src/main/java/com/yuanchu/mom/service/impl/TechnologyServiceImpl.java
+++ b/standard-server/src/main/java/com/yuanchu/mom/service/impl/TechnologyServiceImpl.java
@@ -65,16 +65,26 @@
 
     //鍙充笂瑙掓柊澧�-->宸ヨ壓璺嚎-->閫夋嫨宸ュ簭
     @Override
-    public List<Map<String, Object>> chooseFather(Integer specificationsId) {
-        return technologyMapper.chooseFather(specificationsId);
+    public List<Map<String, Object>> chooseFather(Integer specificationsId,Integer version) {
+        return technologyMapper.chooseFather(specificationsId,version);
     }
 
     //鍙充笂瑙掓柊澧�-->宸ヨ壓璺嚎
     @Override
-    public void addTechnology(TechnologyDto technologyDto) {
+    public String addTechnology(TechnologyDto technologyDto) {
+        /*鏍¢獙鏄惁娣诲姞閲嶅*/
+        if (ObjectUtils.isNotEmpty(technologyMapper.selectList(Wrappers.<Technology>query()
+                .eq("version", technologyDto.getVersion())
+                .eq("state", 1)
+                .eq("specifications_id",technologyDto.getSpecificationsId())
+                .eq("father", technologyDto.getFather())
+                .eq("name", technologyDto.getName())))) {
+            return "閲嶅娣诲姞!";
+        }
         Technology technology = new Technology();
         BeanUtils.copyProperties(technologyDto, technology);
         technologyMapper.insert(technology);
+        return "娣诲姞宸ヨ壓銆�"+ technologyDto.getName() +"銆戞垚鍔�";
     }
 
     //濉啓鐢熶骇瀹氶,榧犳爣绉诲紑淇濆瓨
diff --git a/standard-server/src/main/resources/mapper/MbomMapper.xml b/standard-server/src/main/resources/mapper/MbomMapper.xml
index e4bb434..341494c 100644
--- a/standard-server/src/main/resources/mapper/MbomMapper.xml
+++ b/standard-server/src/main/resources/mapper/MbomMapper.xml
@@ -43,7 +43,7 @@
         and m.version = #{version}
         and specifications_id = #{specificationsId}
         <if test="message!=null and message!=''">
-            and m.name like concat('%',#{message},'%')
+            and t.name like concat('%',#{message},'%')
         </if>
     </select>
 
diff --git a/standard-server/src/main/resources/mapper/ProductMapper.xml b/standard-server/src/main/resources/mapper/ProductMapper.xml
index ffb32b8..06457e3 100644
--- a/standard-server/src/main/resources/mapper/ProductMapper.xml
+++ b/standard-server/src/main/resources/mapper/ProductMapper.xml
@@ -65,7 +65,7 @@
         and p.version = #{version}
         and specifications_id = #{specificationsId}
         <if test="message!=null and message!=''">
-            and p.name like concat('%',#{message},'%')
+            and p.father like concat('%',#{message},'%')
         </if>
     </select>
 
diff --git a/standard-server/src/main/resources/mapper/TechniqueMapper.xml b/standard-server/src/main/resources/mapper/TechniqueMapper.xml
index cb02dc1..8dd2a7b 100644
--- a/standard-server/src/main/resources/mapper/TechniqueMapper.xml
+++ b/standard-server/src/main/resources/mapper/TechniqueMapper.xml
@@ -65,7 +65,7 @@
         and specifications_id = #{specificationsId}
         and tq.version = #{version}
         <if test="message!=null and message!=''">
-            and device like concat('%',#{message},'%')
+            and name like concat('%',#{message},'%')
         </if>
     </select>
 
@@ -124,6 +124,7 @@
         from mom_ocean.technique
                  left join mom_ocean.device on name = device
         where technique.state = 1
+          and device.state = 1
           and technology_id = #{technologyId}
           and product_father = #{father}
           and product = #{name}
diff --git a/standard-server/src/main/resources/mapper/TechnologyMapper.xml b/standard-server/src/main/resources/mapper/TechnologyMapper.xml
index b4b32e1..53d352f 100644
--- a/standard-server/src/main/resources/mapper/TechnologyMapper.xml
+++ b/standard-server/src/main/resources/mapper/TechnologyMapper.xml
@@ -32,7 +32,7 @@
         and specifications_id = #{specificationsId}
         and version = #{version}
         <if test="message!=null and message!=''">
-            and father like concat('%',#{message},'%')
+            and name like concat('%',#{message},'%')
         </if>
     </select>
 
@@ -42,6 +42,7 @@
         from mom_ocean.technology
         where state = 1
           and specifications_id = #{specificationsId}
+          and version = #{version}
     </select>
 
     <!--鍙充笂瑙掓柊澧�-鎶�鏈寚鏍�-閫夋嫨宸ュ簭,宸ヨ壓-->
@@ -60,6 +61,7 @@
         from mom_ocean.technology
         where state = 1
           and specifications_id = #{specificationsId}
+          and version = #{version}
     </select>
     <!--鏌ヨ璇ュ瀷鍙峰伐鑹轰笅鏈�鏂扮増鏈殑宸ヨ壓id-->
     <select id="selTech" resultType="java.lang.Integer">

--
Gitblit v1.9.3