From 51b05b093fa15dd477981372f67ae7b3b2747733 Mon Sep 17 00:00:00 2001
From: wujian <14790700720@163.com>
Date: 星期一, 23 九月 2024 08:49:29 +0800
Subject: [PATCH] change-3

---
 jcdm-main/src/main/java/com/jcdm/main/da/passingStationCollection/service/impl/ProductNewPassStationServiceImpl.java      |    5 
 jcdm-quartz/src/main/java/com/jcdm/quartz/task/RyTask.java                                                                |    6 
 jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/controller/BsOrderSchedulingController.java                      |   23 +++
 jcdm-ui/src/views/main/om/productionOrde/index.vue                                                                        |  194 ++++++++++++---------------
 jcdm-ui/src/api/main/bs/orderScheduling/orderScheduling.js                                                                |    7 +
 jcdm-main/src/main/java/com/jcdm/main/da/passingStationCollection/service/impl/DaPassingStationCollectionServiceImpl.java |   16 +-
 jcdm-main/src/main/resources/mapper/da/passingStationCollection/ProductNewPassStationMapper.xml                           |    3 
 jcdm-main/src/main/java/com/jcdm/main/da/passingStationCollection/mapper/ProductNewPassStationMapper.java                 |    1 
 jcdm-main/src/main/java/com/jcdm/main/da/passingStationCollection/service/ProductNewPassStationService.java               |    1 
 jcdm-ui/src/views/main/om/productionOrde/detail.vue                                                                       |   93 ++++++++++++
 jcdm-admin/src/main/resources/application-druid.yml                                                                       |    2 
 jcdm-main/src/main/java/com/jcdm/main/om/productionOrde/controller/OmProductionOrdeInfoController.java                    |    7 
 jcdm-main/src/main/java/com/jcdm/main/webservice/service/ReceivingServices.java                                           |   18 -
 13 files changed, 243 insertions(+), 133 deletions(-)

diff --git a/jcdm-admin/src/main/resources/application-druid.yml b/jcdm-admin/src/main/resources/application-druid.yml
index f2a4af2..72a9342 100644
--- a/jcdm-admin/src/main/resources/application-druid.yml
+++ b/jcdm-admin/src/main/resources/application-druid.yml
@@ -28,7 +28,7 @@
 #                 username: dt
 #                 password: dtroot
             master:
-                 url: jdbc:sqlserver://192.168.6.238:1433;DataBaseName=Jcdm041-Mes
+                 url: jdbc:sqlserver://192.168.6.238:1433;DataBaseName=Jcdm041-Mes2
                  username: dt
                  password: dtroot
             # 浠庡簱鏁版嵁婧�
diff --git a/jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/controller/BsOrderSchedulingController.java b/jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/controller/BsOrderSchedulingController.java
index 65aec8f..611d3af 100644
--- a/jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/controller/BsOrderSchedulingController.java
+++ b/jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/controller/BsOrderSchedulingController.java
@@ -476,4 +476,27 @@
         }
 
     }
+
+
+    @GetMapping("/changeBoxCode")
+    public R changeBoxCode(String sfcCode,String newBoxCode){
+        if (StringUtils.isEmpty(newBoxCode)){
+            return R.fail(500,"绠变綋鐮佷笉鑳戒负绌猴紝璇烽噸璇�");
+        }
+        if (StringUtils.isEmpty(sfcCode)){
+            return R.fail(500,"鍙戝姩鏈哄彿涓嶈兘涓虹┖锛岃閲嶈瘯");
+        }
+        if (!newBoxCode.contains(",")){
+            return R.fail(500,"绠变綋鐮佹牸寮忔湁璇紝璇烽噸璇�");
+        }
+        ProductNewPassStation checkStation = new ProductNewPassStation();
+        checkStation.setSfcCode(sfcCode);
+        List<ProductNewPassStation> productPassStationList = productNewPassStationService.getProductPassStationList(checkStation);
+        if (CollUtil.isNotEmpty(productPassStationList)){
+            productNewPassStationService.updateBoxCodeBySfcCode(sfcCode, newBoxCode);
+            return R.ok();
+        } else {
+            return R.fail("鏈煡鎵惧埌璇ュ彂鍔ㄦ満鍙峰搴旂殑绠变綋");
+        }
+    }
 }
diff --git a/jcdm-main/src/main/java/com/jcdm/main/da/passingStationCollection/mapper/ProductNewPassStationMapper.java b/jcdm-main/src/main/java/com/jcdm/main/da/passingStationCollection/mapper/ProductNewPassStationMapper.java
index 82df9f6..8469d5f 100644
--- a/jcdm-main/src/main/java/com/jcdm/main/da/passingStationCollection/mapper/ProductNewPassStationMapper.java
+++ b/jcdm-main/src/main/java/com/jcdm/main/da/passingStationCollection/mapper/ProductNewPassStationMapper.java
@@ -24,6 +24,7 @@
     public List<ProductNewPassStation> getProductPassStationListByEngineList(@Param("engineNoList") List<String> engineNoList);
 
     public void updatePassStationBySfcCode(String sfcCode);
+    public void updateBoxCodeBySfcCode(@Param("sfcCode") String sfcCode, @Param("newBoxCode") String newBoxCode);
     public void updatePassStationRodCodeBySfcCode(String sfcCode);
 
 }
diff --git a/jcdm-main/src/main/java/com/jcdm/main/da/passingStationCollection/service/ProductNewPassStationService.java b/jcdm-main/src/main/java/com/jcdm/main/da/passingStationCollection/service/ProductNewPassStationService.java
index f41b555..5f5e5fa 100644
--- a/jcdm-main/src/main/java/com/jcdm/main/da/passingStationCollection/service/ProductNewPassStationService.java
+++ b/jcdm-main/src/main/java/com/jcdm/main/da/passingStationCollection/service/ProductNewPassStationService.java
@@ -20,6 +20,7 @@
     public List<ProductNewPassStation> getProductPassStationListByEngineList(List<String> engineNoList);
 
     public void updatePassStationBySfcCode(String sfcCode);
+    public void updateBoxCodeBySfcCode(String sfcCode,String newBoxCode);
 
     public void insertPassStation(ProductNewPassStation productNewPassStation);
 
diff --git a/jcdm-main/src/main/java/com/jcdm/main/da/passingStationCollection/service/impl/DaPassingStationCollectionServiceImpl.java b/jcdm-main/src/main/java/com/jcdm/main/da/passingStationCollection/service/impl/DaPassingStationCollectionServiceImpl.java
index 068877f..617d31a 100644
--- a/jcdm-main/src/main/java/com/jcdm/main/da/passingStationCollection/service/impl/DaPassingStationCollectionServiceImpl.java
+++ b/jcdm-main/src/main/java/com/jcdm/main/da/passingStationCollection/service/impl/DaPassingStationCollectionServiceImpl.java
@@ -225,13 +225,15 @@
                     rmRepairRecordMapper.deleteRmRepairRecordByCode(sfcCode);
                 }
             }
-            RmRepairRecord rmRepairRecord = new RmRepairRecord();
-            rmRepairRecord.setBoxCode(result.getSfcCode());
-            rmRepairRecord.setProcessesCode(result.getLocationCode());
-            rmRepairRecord.setOriginalResult(result.getOutRsSign());
-            rmRepairRecord.setCreateTime(new Date());
-            rmRepairRecordMapper.insertRmRepairRecord(rmRepairRecord);
-            daPassingStationCollectionMapper.deleteDaPassingStationCollectionById(result.getId());
+            if (ObjectUtil.isNotEmpty(result)){
+                RmRepairRecord rmRepairRecord = new RmRepairRecord();
+                rmRepairRecord.setBoxCode(result.getSfcCode());
+                rmRepairRecord.setProcessesCode(result.getLocationCode());
+                rmRepairRecord.setOriginalResult(result.getOutRsSign());
+                rmRepairRecord.setCreateTime(new Date());
+                rmRepairRecordMapper.insertRmRepairRecord(rmRepairRecord);
+                daPassingStationCollectionMapper.deleteDaPassingStationCollectionById(result.getId());
+            }
         }
 
     }
diff --git a/jcdm-main/src/main/java/com/jcdm/main/da/passingStationCollection/service/impl/ProductNewPassStationServiceImpl.java b/jcdm-main/src/main/java/com/jcdm/main/da/passingStationCollection/service/impl/ProductNewPassStationServiceImpl.java
index c3782c0..6cdd40a 100644
--- a/jcdm-main/src/main/java/com/jcdm/main/da/passingStationCollection/service/impl/ProductNewPassStationServiceImpl.java
+++ b/jcdm-main/src/main/java/com/jcdm/main/da/passingStationCollection/service/impl/ProductNewPassStationServiceImpl.java
@@ -42,6 +42,11 @@
     }
 
     @Override
+    public void updateBoxCodeBySfcCode(String sfcCode, String newBoxCode) {
+        productNewPassStationMapper.updateBoxCodeBySfcCode(sfcCode, newBoxCode);
+    }
+
+    @Override
     public void insertPassStation(ProductNewPassStation productNewPassStation) {
         productNewPassStationMapper.insertPassStation(productNewPassStation);
     }
diff --git a/jcdm-main/src/main/java/com/jcdm/main/om/productionOrde/controller/OmProductionOrdeInfoController.java b/jcdm-main/src/main/java/com/jcdm/main/om/productionOrde/controller/OmProductionOrdeInfoController.java
index 464cfc5..8de6c6f 100644
--- a/jcdm-main/src/main/java/com/jcdm/main/om/productionOrde/controller/OmProductionOrdeInfoController.java
+++ b/jcdm-main/src/main/java/com/jcdm/main/om/productionOrde/controller/OmProductionOrdeInfoController.java
@@ -264,8 +264,11 @@
         if (StrUtil.isBlank(factory)){
             throw new ServiceException("璇烽�夋嫨宸ュ巶缂栧彿");
         }
-        List<OmProductionOrdeInfo> omProductionOrdeInfos = omProductionOrdeInfoService.selectOmProductionOrdeInfoList(omProductionOrdeInfo);
-        if(omProductionOrdeInfos.size() == 0){
+        OmProductionOrdeInfo queryProductOrder = new OmProductionOrdeInfo();
+        queryProductOrder.setWorkshopCode(factory);
+        queryProductOrder.setProductionNotice(productionNotice);
+        List<OmProductionOrdeInfo> omProductionOrdeInfos = omProductionOrdeInfoService.selectOmProductionOrdeInfoList(queryProductOrder);
+        if(CollUtil.isEmpty(omProductionOrdeInfos)){
             try {
                 logger.info("鎺ユ敹宸ュ崟鍙凤細,{}",productionNotice);
                 ReceivingServices.insertWebserviceData(factory,productionNotice);
diff --git a/jcdm-main/src/main/java/com/jcdm/main/webservice/service/ReceivingServices.java b/jcdm-main/src/main/java/com/jcdm/main/webservice/service/ReceivingServices.java
index ce9b0ed..abd05b1 100644
--- a/jcdm-main/src/main/java/com/jcdm/main/webservice/service/ReceivingServices.java
+++ b/jcdm-main/src/main/java/com/jcdm/main/webservice/service/ReceivingServices.java
@@ -31,9 +31,8 @@
 import org.springframework.web.bind.annotation.RestController;
 
 import javax.swing.border.Border;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.UnsupportedEncodingException;
+import java.io.*;
+import java.nio.charset.StandardCharsets;
 import java.util.List;
 
 public class ReceivingServices {
@@ -176,7 +175,7 @@
         }
 
         // 璁剧疆璇锋眰澶撮儴锛屽惁鍒欏彲鑳戒細鎶� 鈥渘o SOAPAction header鈥� 鐨勯敊璇�
-        postMethod.setRequestHeader("SOAPAction", "");
+        postMethod.setRequestHeader("SOAPAction", "application/x-www-form-urlencoded; charset=UTF-8");
         // 璁剧疆璇锋眰浣�
         postMethod.setRequestEntity(requestEntity);
         int status = 0;
@@ -188,19 +187,14 @@
         }
         if (status == 200) {// 鎴愬姛
             InputStream is = null;
-            try {
-                is = postMethod.getResponseBodyAsStream();
-            } catch (IOException e) {
-                logger.info("errorLocation2,"+e);
-                throw new RuntimeException(e);
-            }
             // 鑾峰彇璇锋眰缁撴灉瀛楃涓�
             String result = null;
             try {
-                result = IOUtils.toString(is);
+                result = postMethod.getResponseBodyAsString();
+                logger.info("浜屾杈撳嚭娴�333333,{}",result);
                 return result;
             } catch (IOException e) {
-                logger.info("errorLocation3,"+e);
+                logger.info("errorLocation2,"+e);
                 throw new RuntimeException(e);
             }
         }
diff --git a/jcdm-main/src/main/resources/mapper/da/passingStationCollection/ProductNewPassStationMapper.xml b/jcdm-main/src/main/resources/mapper/da/passingStationCollection/ProductNewPassStationMapper.xml
index 99a5d05..2de6835 100644
--- a/jcdm-main/src/main/resources/mapper/da/passingStationCollection/ProductNewPassStationMapper.xml
+++ b/jcdm-main/src/main/resources/mapper/da/passingStationCollection/ProductNewPassStationMapper.xml
@@ -64,6 +64,9 @@
     <update id="updatePassStationRodCode">
         update product_new_pass_station set rod_code = #{rodCode} where sfc_code = #{sfcCode}
     </update>
+    <update id="updateBoxCodeBySfcCode">
+        update product_new_pass_station set box_code = #{newBoxCode} where sfc_code = #{sfcCode}
+    </update>
     <select id="getPassStation"
             resultMap="ProductNewPassStationResult">
         <include refid="selectProductNewPassStationVo"/>
diff --git a/jcdm-quartz/src/main/java/com/jcdm/quartz/task/RyTask.java b/jcdm-quartz/src/main/java/com/jcdm/quartz/task/RyTask.java
index c5671e2..d729ce6 100644
--- a/jcdm-quartz/src/main/java/com/jcdm/quartz/task/RyTask.java
+++ b/jcdm-quartz/src/main/java/com/jcdm/quartz/task/RyTask.java
@@ -95,7 +95,8 @@
         List<BsOrderScheduling> bsOrderSchedulings = bsOrderSchedulingService.selectBsOrderSchedulingList(bsOrderScheduling);
         String status="";
         String ev_meassage="";
-        for (BsOrderScheduling orderScheduling : bsOrderSchedulings) {
+        if (CollUtil.isNotEmpty(bsOrderSchedulings)){
+            BsOrderScheduling orderScheduling = bsOrderSchedulings.get(0);
             try {
                 String xmlResult = ReceivingServices.getInterfaceInformationXml(url, getProductionPlanInformationXml(orderScheduling.getOrderNo(), "0010"));
                 ev_meassage=ReceivingServices.xmlToJSON1(xmlResult);
@@ -135,7 +136,8 @@
         List<BsOrderScheduling> bsOrderSchedulings = bsOrderSchedulingService.selectBsOrderSchedulingList(bsOrderScheduling);
         String status="";
         String ev_meassage="";
-        for (BsOrderScheduling orderScheduling : bsOrderSchedulings) {
+        if (CollUtil.isNotEmpty(bsOrderSchedulings)){
+            BsOrderScheduling orderScheduling = bsOrderSchedulings.get(0);
             try {
                 String xmlResult = ReceivingServices.getInterfaceInformationXml(url, getProductionPlanInformationXml(orderScheduling.getOrderNo(), "0020"));
                 ev_meassage=ReceivingServices.xmlToJSON1(xmlResult);
diff --git a/jcdm-ui/src/api/main/bs/orderScheduling/orderScheduling.js b/jcdm-ui/src/api/main/bs/orderScheduling/orderScheduling.js
index b1bbdc5..c110335 100644
--- a/jcdm-ui/src/api/main/bs/orderScheduling/orderScheduling.js
+++ b/jcdm-ui/src/api/main/bs/orderScheduling/orderScheduling.js
@@ -67,6 +67,13 @@
     params: param
   })
 }
+export function changeBoxCode(param) {
+  return request({
+    url: '/bs/orderScheduling/changeBoxCode',
+    method: 'get',
+    params: param
+  })
+}
 
 // 鏌ヨ璁㈠崟鎺掍骇璇︾粏
 export function getOrderScheduling(id) {
diff --git a/jcdm-ui/src/views/main/om/productionOrde/detail.vue b/jcdm-ui/src/views/main/om/productionOrde/detail.vue
index da62750..096bd8a 100644
--- a/jcdm-ui/src/views/main/om/productionOrde/detail.vue
+++ b/jcdm-ui/src/views/main/om/productionOrde/detail.vue
@@ -70,7 +70,14 @@
                     <span>{{ parseTime(scope.row.operateTime, '{y}-{m}-{d} {h}:{i}:{s}') }}</span>
                   </template>
                 </el-table-column>
-
+                <el-table-column
+                  fixed="right"
+                  label="鎿嶄綔"
+                  width="100">
+                  <template slot-scope="scope">
+                    <el-button @click="handleClick(scope.row)" type="text" size="small">鏇存崲绠变綋涓婄嚎</el-button>
+                  </template>
+                </el-table-column>
               </el-table>
               <pagination
                 v-show="total>0"
@@ -84,18 +91,51 @@
         </el-col>
       </el-row>
     </div>
+    <el-dialog v-dialogpop-up :title="title" :visible.sync="changeBoxFlag" width="500px" append-to-body>
+       <span slot="title">
+        <i class="el-icon-s-order"></i>
+        {{titleName}}
+      </span>
+      <el-form ref="changeFrom" inline  :model="changeFrom" label-width="80px">
+        <el-form-item   label="鍙戝姩鏈哄彿" prop="sfcCode">
+          <el-input disabled v-model="changeFrom.sfcCode" style="width: 370px"/>
+        </el-form-item>
+        <el-form-item   label="鍘熺浣撶爜" prop="boxCode">
+          <el-input disabled v-model="changeFrom.boxCode" style="width: 370px"/>
+        </el-form-item>
+        <el-form-item  label="鐜扮浣撶爜" v-model="changeFrom.newBoxCode" prop="newBoxCode">
+          <input v-model="changeFrom.newBoxCode"
+                 ref="changeBoxInput"
+                 style="height: 39px; width: 370px"
+                 placeholder="璇锋壂鎻忕浣撶爜"
+          />
+        </el-form-item>
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="submitFormForBoxCode">纭� 瀹�</el-button>
+        <el-button @click="cancel">鍙� 娑�</el-button>
+      </div>
+    </el-dialog>
   </div>
 </template>
 
 <script>
 
-import { engineNoIsInModel, getSumDataMethod, listOrderScheduling3 } from "../../../../api/main/bs/orderScheduling/orderScheduling";
+import { engineNoIsInModel, changeBoxCode, getSumDataMethod, listOrderScheduling3 } from "../../../../api/main/bs/orderScheduling/orderScheduling";
 export default {
   name: 'Detail',
   props: ['singleSelect'],
   dicts: ['order_scheduling_produce_status','quality_status','print_status','material_type'],
   data(){
     return{
+      title: '鏇存崲绠变綋',
+      changeBoxFlag: false,
+      titleName: '鏇存崲绠变綋',
+      changeFrom: {
+        boxCode: '',
+        newBoxCode: '',
+        sfcCode: ''
+      },
       // 鎬绘潯鏁�
       total: 0,
       repairFlag:false,
@@ -115,8 +155,53 @@
     handleQuery(){
 
     },
+    submitFormForBoxCode(){
+      if (this.changeFrom.newBoxCode === '' || this.changeFrom.newBoxCode === null){
+        this.$message.info("鏂扮浣撶爜涓嶈兘涓虹┖")
+      } else {
+        changeBoxCode({sfcCode:this.changeFrom.sfcCode,newBoxCode:this.changeFrom.newBoxCode}).then(res => {
+          console.log('res',res)
+          if (res.code===200){
+            this.$message({
+              message:'鎿嶄綔鎴愬姛',
+              type:'success'
+            })
+            this.changeBoxFlag = false
+            this.getListData()
+            this.$refs.inputdata.focus()
+          }else {
+            this.$message({
+              message:res.msg,
+              type:'warning'
+            })
+
+          }
+        })
+      }
+
+    },
+    handleClick(row){
+      console.log('row',row)
+      this.changeBoxFlag = true
+      this.changeFrom.sfcCode = row.engineNo
+      this.changeFrom.boxCode = row.boxCode
+      this.changeFrom.newBoxCode = ''
+      this.$nextTick(()=>{
+        this.$refs.changeBoxInput.focus()
+      })
+    },
+    cancel(){
+      this.changeBoxFlag = false
+      this.$refs.inputdata.focus()
+    },
+    handleChangeBoxInput(event){
+      const input = event.target
+      const inputValue = input.value
+      this.changeFrom.newBoxCode =  inputValue
+
+    },
     refresh() {
-      location.reload();
+      this.$emit("reserveChild",null)
     },
     setFocus(){
       this.$nextTick(()=>{
@@ -173,9 +258,11 @@
     this.getListData()
     this.setFocus()
     this.$refs.inputdata.addEventListener('keydown',this.handleScannerInput)
+    this.$refs.changeBoxInput.addEventListener('keydown',this.handleChangeBoxInput)
   },
   beforeDestroy() {
     this.$refs.inputdata.removeEventListener('keydown',this.handleScannerInput)
+    this.$refs.changeBoxInput.removeEventListener('keydown',this.handleChangeBoxInput)
   }
 }
 </script>
diff --git a/jcdm-ui/src/views/main/om/productionOrde/index.vue b/jcdm-ui/src/views/main/om/productionOrde/index.vue
index 0a0619e..4551649 100644
--- a/jcdm-ui/src/views/main/om/productionOrde/index.vue
+++ b/jcdm-ui/src/views/main/om/productionOrde/index.vue
@@ -41,7 +41,13 @@
     </el-form>
     <el-form :model="queryParams" ref="queryParams" size="small" :inline="true" v-show="advancedShowSearch" label-width="68px">
       <el-form-item label="鏈哄瀷" prop="typeZ">
-        <el-input v-model="queryParams.typeZ" placeholder="璇疯緭鍏ユ満鍨�" clearable @keyup.enter.native="handleQuery"/>
+        <el-select v-model="queryParams.typeZ" placeholder="璇烽�夋嫨鏈哄瀷" clearable>
+          <el-option
+            v-for="dict in typeSelectList"
+            :key="dict.value"
+            :label="dict.label"
+            :value="dict.value"/>
+        </el-select>
       </el-form-item>
       <el-form-item label-width="130" label="鍙戝姩鏈哄彿" prop="engineNo">
         <el-input v-model="queryParams.engineNo" placeholder="璇疯緭鍏ュ彂鍔ㄦ満鍙�" clearable @keyup.enter.native="handleQuery"/>
@@ -51,16 +57,6 @@
 
     <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="['om:productionOrde:add']"
-        >鏂板</el-button>
-      </el-col>
       <el-col :span="1.5">
         <el-button
           type="success"
@@ -185,16 +181,13 @@
       </span>
       <el-form ref="form" inline :model="form" :rules="rules" label-width="80px">
         <el-form-item label="宸ュ崟鍙�" prop="workOrderNo">
-          <el-input v-model="form.workOrderNo" placeholder="璇疯緭鍏ョ敓浜ц鍗�" />
+          <el-input v-model="form.workOrderNo" disabled placeholder="璇疯緭鍏ョ敓浜ц鍗�" />
         </el-form-item>
-        <el-form-item label="璁㈠崟缂栧彿" prop="salesOrderCode">
-          <el-input v-model="form.salesOrderCode" placeholder="璇疯緭鍏ヨ鍗曠紪鍙�" />
+        <el-form-item label="璁㈠崟缂栧彿" prop="productionNotice">
+          <el-input v-model="form.productionNotice" disabled placeholder="璇疯緭鍏ヨ鍗曠紪鍙�" />
         </el-form-item>
         <el-form-item label="浜у搧缂栧彿" prop="productCode">
-          <el-input v-model="form.productCode" placeholder="璇烽�夋嫨浜у搧" >
-            <el-button slot="append" @click="handleSelectProduct" icon="el-icon-search"></el-button>
-          </el-input>
-          <ItemSelect ref="itemSelect" @onSelected="onItemSelected" > </ItemSelect>
+          <el-input v-model="form.productCode" disabled placeholder="璇疯緭鍏ヤ骇鍝佺紪鍙�" />
         </el-form-item>
         <el-form-item label="浜у搧鍚嶇О" prop="productName">
           <el-input v-model="form.productName" disabled placeholder="璇疯緭鍏ヤ骇鍝佸悕绉�" />
@@ -202,75 +195,17 @@
         <el-form-item label="绉嶇被" prop="productName">
           <el-input v-model="form.typeZ" disabled placeholder="璇疯緭鍏ョ绫�" />
         </el-form-item>
-        <el-form-item label="瀹為檯鏁伴噺" prop="actualQty">
-          <el-input v-model="form.actualQty"  placeholder="璇疯緭鍏ュ疄闄呮暟閲�" />
-        </el-form-item>
-        <el-form-item label="杞﹂棿缂栧彿" prop="workshopCode">
-          <el-select style="width: 93%" @change="handleSelectChange(form.workshopCode)" v-model="form.workshopCode" placeholder="璇烽�夋嫨杞﹂棿缂栧彿">
+        <el-form-item label="宸ュ崟鐘舵��" prop="orderStatus">
+          <el-select style="width: 93%" v-model="form.orderStatus" placeholder="璇烽�夋嫨宸ュ崟鐘舵��">
             <el-option
-              v-for="item in options"
-              :key="item.workshopCode"
-              :label="item.workshopName"
-              :value="item.workshopCode">
+              v-for="item in statuOptions"
+              :key="item.value"
+              :label="item.label"
+              :value="item.value">
             </el-option>
           </el-select>
         </el-form-item>
-        <el-form-item style="margin-left: -15px" label="浜х嚎缂栧彿" prop="lineCode">
-          <el-select style="width: 93%" v-model="form.lineCode" placeholder="璇烽�夋嫨浜х嚎缂栧彿">
-            <el-option
-              v-for="item in lineOptions"
-              :key="item.lineCode"
-              :label="item.lineName"
-              :value="item.lineCode">
-            </el-option>
-          </el-select>
-        </el-form-item>
-        <el-form-item label="宸ヨ壓娴佺▼" prop="routeCode">
-          <el-input v-model="form.routeCode" disabled placeholder="璇疯緭鍏ュ伐鑹烘祦绋�" />
-        </el-form-item>
-        <el-form-item label="浜у搧BOM" prop="bomCode">
-          <el-input v-model="form.bomCode" disabled placeholder="璇疯緭鍏ヤ骇鍝丅OM" />
-        </el-form-item>
-        <el-form-item label="宸ヨ壓閰嶆柟" prop="recipeCode">
-          <el-input v-model="form.recipeCode" placeholder="璇疯緭鍏ュ伐鑹洪厤鏂�" />
-        </el-form-item>
-        <el-form-item label="璁″垝鏁伴噺" prop="planQty">
-          <el-input v-model="form.planQty" placeholder="璇疯緭鍏ヨ鍒掓暟閲�" />
-        </el-form-item>
-        <el-form-item label="闇�姹傛棩鏈�" prop="demandDate">
-          <el-date-picker style="width: 88%" clearable
-            v-model="form.demandDate"
-            type="date"
-            value-format="yyyy-MM-dd"
-            placeholder="璇烽�夋嫨闇�姹傛棩鏈�">
-          </el-date-picker>
-        </el-form-item>
-        <el-form-item style="margin-left: -30px" label="澶囨敞" prop="remarks">
-          <el-input v-model="form.remarks" placeholder="璇疯緭鍏ュ娉�" />
-        </el-form-item>
-        <el-row>
-          <el-col :span="12">
-            <el-form-item style="margin-left: 10px" label-width="120" label="璁″垝寮�濮嬫椂闂�" prop="planStartTime">
-              <el-date-picker clearable
-                v-model="form.planStartTime"
-                type="date"
-                value-format="yyyy-MM-dd"
-                placeholder="璇烽�夋嫨璁″垝寮�濮嬫椂闂�">
-              </el-date-picker>
-            </el-form-item>
-          </el-col>
-          <el-col :span="12">
-            <el-form-item style="margin-left: 76px" label-width="120" label="璁″垝缁撴潫鏃堕棿" prop="planEndTime">
-              <el-date-picker clearable
-                v-model="form.planEndTime"
-                type="date"
-                value-format="yyyy-MM-dd"
-                placeholder="璇烽�夋嫨璁″垝缁撴潫鏃堕棿">
-              </el-date-picker>
-            </el-form-item>
-          </el-col>
 
-        </el-row>
       </el-form>
       <div slot="footer" class="dialog-footer">
         <el-button type="primary" @click="submitForm">纭� 瀹�</el-button>
@@ -278,7 +213,7 @@
       </div>
     </el-dialog>
 
-    <el-dialog v-dialogpop-up :title="title" :visible.sync="Createopen" width="400px" append-to-body>
+    <el-dialog v-dialogpop-up :title="title" :visible.sync="Createopen" width="500px" append-to-body>
        <span slot="title">
         <i class="el-icon-s-order"></i>
         {{titleName}}
@@ -292,14 +227,14 @@
                           v-model="form.dateTime"
                           type="date"
                           value-format="yyyy-MM-dd"
-                          placeholder="璇烽�夋嫨鏃ユ湡" @input="handleCodeChange">
+                          placeholder="璇烽�夋嫨鏃ユ湡" @input="handleCodeChangeData">
           </el-date-picker>
         </el-form-item>
         <el-form-item class="hidden-form-item" label="鏃ユ湡瑙勫垯" prop="dateTimeRule">
           <el-input v-model="form.dateTimeRule"/>
         </el-form-item>
         <el-form-item   label="璧峰缂栧彿" prop="startCode">
-          <el-input type="number"   :maxlength="3"  :pattern="'[0-9]{3}'" v-model="form.startCode"  placeholder="璇疯緭鍏ヨ捣濮嬬紪鍙�" @input="handleCodeChange"/>
+          <el-input type="number"   :maxlength="3"  :pattern="'[0-9]{3}'" v-model="form.startCode"  placeholder="璇疯緭鍏ヨ捣濮嬬紪鍙�" @input="handleCodeChangeStart"/>
         </el-form-item>
         <el-form-item   label="璧锋缂栧彿" prop="startEndCode">
           <el-input type="textarea" disabled v-model="form.startEndCode"/>
@@ -311,7 +246,7 @@
       </div>
     </el-dialog>
     </div>
-    <Detail v-if="showDetailFlag" :singleSelect="singleSelect"></Detail>
+    <Detail v-if="showDetailFlag" :singleSelect="singleSelect" @reserveChild = "reserveChild"></Detail>
   </div>
 </template>
 
@@ -343,6 +278,27 @@
   },
   data() {
     return {
+      statuOptions:[
+        {
+          label:"寰呬笅杈�",
+          value:"1"
+        },
+        {
+          label:"宸蹭笅杈�",
+          value:"2"
+        }
+      ],
+      typeSelectList: [
+        {
+          label:"380",
+          value:"380"
+        },
+        {
+          label:"280",
+          value:"280"
+        }
+      ],
+      typeZDateRules: '',
       showDetailFlag: false,
       singleSelect:{},
       titleName: '',
@@ -431,12 +387,6 @@
         year: [
           { required: true, message: "涓嶈兘涓虹┖", trigger: "blur" }
         ],
-        dateTime: [
-          { required: true, message: "涓嶈兘涓虹┖", trigger: "blur" }
-        ],
-        startCode: [
-          { required: true, message: "涓嶈兘涓虹┖", trigger: "blur" }
-        ],
       },
       change: {
         day: '',
@@ -478,22 +428,21 @@
     this.initWorkshop();
   },
   methods: {
-    //鏃ユ湡鎴栧紑濮嬬紪鍙疯緭鍏ユ椂
-    handleCodeChange(data){
+    reserveChild(){
+      this.showDetailFlag = false
+    },
+    handleCodeChangeData(){
+      console.log('1111111111111111')
       let dateTime = this.form.dateTime;
       let planQty = this.form.planQty;
-      let startCode = this.form.startCode
-      if(dateTime !== null && dateTime !== undefined
-        && startCode !== null && startCode !== undefined) {
+      let dateTimeRule = "";
+      if(dateTime !== null && dateTime !== undefined){
         let dateTimes = dateTime.split("-");
         let year = dateTimes[0];
         let month = dateTimes[1];
         let day = dateTimes[2];
         let dictYear = this.dict.type.year;
         let dictMonth = this.dict.type.month;
-        let startCode = this.form.startCode
-        let dateTimeRule = "";
-
         //骞�
         for (let i = 0; i < dictYear.length; i++) {
           if (year === dictYear[i].label) {
@@ -512,10 +461,31 @@
         dateTimeRule = dateTimeRule + this.markNo;
         this.form.dateTimeRule = dateTimeRule;//姝ゅ璧嬪�间笉鍔犳満鍨�
         dateTimeRule = this.form.typeZ +" "+dateTimeRule;//姝ゅ鍔犳満鍨嬶紝椤哄簭涓嶈兘棰犲��
-
-        //璧嬪�艰捣濮嬬紪鐮�
-        this.form.startEndCode =   dateTimeRule + String(parseInt(startCode)).padStart(3, '0') +"\n"+ dateTimeRule + String(parseInt(startCode) + parseInt(planQty)-1).padStart(3, '0') ;
       }
+      if (this.form.typeZ !== null && this.form.typeZ !== '' && dateTimeRule !== null && dateTimeRule !== '' ){
+        this.typeZDateRules = dateTimeRule
+        console.log('222222222222')
+        let queryParams = {
+          model: this.form.typeZ,
+          modelDate: this.form.dateTimeRule,
+        }
+        listModelNumber(queryParams).then(response => {
+          if(response.rows.length === 0){
+            this.form.startCode = 1
+          }else {
+            let max = response.rows[0].maxnumValue
+            this.form.startCode = parseInt(max) + 1
+          }
+          this.form.startEndCode =   this.typeZDateRules + String(parseInt(this.form.startCode)).padStart(3, '0') +"\n"+ this.typeZDateRules + String(parseInt(this.form.startCode) + parseInt(planQty)-1).padStart(3, '0') ;
+          });
+      }
+
+    },
+    handleCodeChangeStart(){
+      let planQty = this.form.planQty;
+      console.log('planQty',planQty)
+      //璧嬪�艰捣濮嬬紪鐮�
+      this.form.startEndCode =   this.typeZDateRules + String(parseInt(this.form.startCode)).padStart(3, '0') +"\n"+ this.typeZDateRules + String(parseInt(this.form.startCode) + parseInt(planQty)-1).padStart(3, '0') ;
     },
 
     getProductionNotice(){
@@ -743,8 +713,15 @@
           console.log(response.data.productCode)
           this.materialQueryParams.materialCode = response.data.productCode;
           listMaterial(this.materialQueryParams).then(response => {
-            this.markNo = response.rows[0].mark
-            this.form.typeL = response.rows[0].typeL;
+            console.log("res2121",response)
+            if (response.rows.length === 0){
+              this.$message.error('鏈煡鎵惧埌鐗╂枡缂栫爜瀵瑰簲缂栧彿锛�');
+              this.cancel()
+            } else {
+              this.markNo = response.rows[0].mark
+              this.form.typeL = response.rows[0].typeL;
+            }
+
           });
           this.form = response.data;
           this.form.idNums=id;
@@ -790,16 +767,21 @@
 
     /** 鐢熸垚绠变綋鏉$爜鎻愪氦鎸夐挳 */
     submitFormForBoxCode() {
+      if (this.form.startCode === null || this.form.startCode === ''){
+        this.$message.error('璧峰缂栧彿涓嶈兘涓虹┖!');
+        return;
+      }
       let startCode = parseInt(this.form.startCode);
       let queryParams = {
         model: this.form.typeZ,
         modelDate: this.form.dateTimeRule,
       }
+
       if(startCode>999){
         this.$message.error('璧峰缂栧彿瓒呭嚭鏈�澶ц寖鍥达紝璇疯緭鍏�1-999鐨勬暟瀛楋紒');
         return;
       }else if(startCode<1){
-        this.$message.error('璧峰缂栧彿瓒呭嚭鏈�灏忚寖鍥达紝璇疯緭鍏�1-999鐨勬暟瀛楋紒');
+        this.$message.error('璇疯緭鍏�1-999鐨勬暟瀛楋紒');
         return;
       }
       listModelNumber(queryParams).then(response => {

--
Gitblit v1.9.3