From b77c7b1843b5c8e0dc7079de00a4e3592806c236 Mon Sep 17 00:00:00 2001
From: 懒羊羊 <15939171744@163.com>
Date: 星期五, 15 三月 2024 10:52:07 +0800
Subject: [PATCH] 操作看板

---
 jcdm-ui/src/views/main/kb/stationTerminal/index.vue                                                     |  163 +++++++++++++++++++++-------------------
 jcdm-ui/src/views/main/bs/formulaChild/index.vue                                                        |    2 
 jcdm-main/src/main/java/com/jcdm/main/da/paramCollection/service/impl/DaParamCollectionServiceImpl.java |   33 ++++---
 jcdm-main/src/main/resources/mapper/bs/formulaChild/BsFormulaChildInfoMapper.xml                        |   16 +++
 4 files changed, 119 insertions(+), 95 deletions(-)

diff --git a/jcdm-main/src/main/java/com/jcdm/main/da/paramCollection/service/impl/DaParamCollectionServiceImpl.java b/jcdm-main/src/main/java/com/jcdm/main/da/paramCollection/service/impl/DaParamCollectionServiceImpl.java
index 6be9b13..973d339 100644
--- a/jcdm-main/src/main/java/com/jcdm/main/da/paramCollection/service/impl/DaParamCollectionServiceImpl.java
+++ b/jcdm-main/src/main/java/com/jcdm/main/da/paramCollection/service/impl/DaParamCollectionServiceImpl.java
@@ -2,6 +2,8 @@
 
 import cn.hutool.core.date.DateUtil;
 import com.jcdm.common.utils.DateUtils;
+import com.jcdm.main.bs.formulaChild.domain.BsFormulaChildInfo;
+import com.jcdm.main.bs.formulaChild.mapper.BsFormulaChildInfoMapper;
 import com.jcdm.main.da.collectionParamConf.domain.DaCollectionParamConf;
 import com.jcdm.main.da.collectionParamConf.mapper.DaCollectionParamConfMapper;
 import com.jcdm.main.da.paramCollection.domain.DaParamCollection;
@@ -26,6 +28,9 @@
 
     @Autowired
     private DaCollectionParamConfMapper daCollectionParamConfMapper;
+
+    @Autowired
+    private BsFormulaChildInfoMapper bsFormulaChildInfoMapper;
 
     /**
      * 鏌ヨ璁惧浜у搧杩囩▼鍙傛暟閲囬泦
@@ -118,11 +123,11 @@
             daCollectionParamConf.setProcessesCode(daParamCollection.getLocationCode());
             daCollectionParamConf.setCollectParameterId(key);
             List<DaCollectionParamConf> daCollectionParamConfs = daCollectionParamConfMapper.selectDaCollectionParamConfList(daCollectionParamConf);
-
             DaParamCollection saveData = new DaParamCollection();
             saveData.setWorkOrderNo(daParamCollection.getWorkOrderNo());
             saveData.setProductCode(daParamCollection.getProductCode());
             saveData.setLocationCode(daParamCollection.getLocationCode());
+            saveData.setSfcCode(daParamCollection.getSfcCode());
             saveData.setParamCode(daCollectionParamConfs.get(0).getCollectParameterId());
             saveData.setParamName(daCollectionParamConfs.get(0).getCollectParameterName());
             saveData.setCollectionTime(new Date());
@@ -133,19 +138,17 @@
 
     @Override
     public void addTighteningParameters(DaParamCollection daParamCollection) {
-        String str = daParamCollection.getTightenTheArray();
-        str = str.replace("[", "").replace("]", "").replace(" ", "");
-        String[] parts = str.split(",");
-        String value1 = parts[0];
-        String value2 = parts[2];
-
-        System.out.println("value1: " + value1);
-        System.out.println("value2: " + value2);
-
-//        DaCollectionParamConf daCollectionParamConf = new DaCollectionParamConf();
-//        daCollectionParamConf.setProductCode(daParamCollection.getProductCode());
-//        daCollectionParamConf.setProcessesCode(daParamCollection.getLocationCode());
-//        daCollectionParamConfMapper.selectDaCollectionParamConfList(daCollectionParamConf);
-        daParamCollectionMapper.insertDaParamCollection(daParamCollection);
+        String tightenData = daParamCollection.getTightenTheArray();
+        tightenData = tightenData.replace("[", "").replace("]", "").replace(" ", "");
+        String[] tightenDataParts = tightenData.split(",");
+        String paramCode = daParamCollection.getParamCode();
+        String[] paramCodeParts = paramCode.split(",");
+        for (int i = 0; i < paramCodeParts.length; i++) {
+            daParamCollection.setParamValue(tightenDataParts[i]);
+            daParamCollection.setParamCode(paramCodeParts[i]);
+            daParamCollection.setCollectionTime(new Date());
+            daParamCollection.setSfcCode(daParamCollection.getProductBarcode());
+            daParamCollectionMapper.insertDaParamCollection(daParamCollection);
+        }
     }
 }
diff --git a/jcdm-main/src/main/resources/mapper/bs/formulaChild/BsFormulaChildInfoMapper.xml b/jcdm-main/src/main/resources/mapper/bs/formulaChild/BsFormulaChildInfoMapper.xml
index d9720a9..750f29a 100644
--- a/jcdm-main/src/main/resources/mapper/bs/formulaChild/BsFormulaChildInfoMapper.xml
+++ b/jcdm-main/src/main/resources/mapper/bs/formulaChild/BsFormulaChildInfoMapper.xml
@@ -153,14 +153,24 @@
     </delete>
 
     <select id="selectBsFormulaChildInfoByTypeTopOne" parameterType="BsFormulaChildInfo" resultMap="BsFormulaChildInfoResult">
+--         SELECT
+--             TOP 1 *
+--         FROM
+--             bs_formula_child_info
+--         WHERE NOT results = 'OK'
+--           AND product_code =  #{productCode}
+--           AND processes_code = #{processesCode}
+--           AND operation_type = #{operationType}
+--         ORDER BY step_sort ASC
         SELECT
             TOP 1 *
         FROM
             bs_formula_child_info
-        WHERE NOT results = 'OK'
-          AND product_code =  #{productCode}
-          AND processes_code = #{processesCode}
+        WHERE
+            processes_code = #{processesCode}
+          AND product_code = #{productCode}
           AND operation_type = #{operationType}
+          AND (results IS NULL OR results = '')
         ORDER BY step_sort ASC
     </select>
 
diff --git a/jcdm-ui/src/views/main/bs/formulaChild/index.vue b/jcdm-ui/src/views/main/bs/formulaChild/index.vue
index 83916c2..95a80ea 100644
--- a/jcdm-ui/src/views/main/bs/formulaChild/index.vue
+++ b/jcdm-ui/src/views/main/bs/formulaChild/index.vue
@@ -146,7 +146,7 @@
 <!--          </el-table-column>-->
           <el-table-column label="宸ュ簭" width="90" align="center" prop="processesCode">
           </el-table-column>
-          <el-table-column label="鐗╂枡缂栧彿" width="150" align="center" prop="productCode">
+          <el-table-column label="浜у搧缂栧彿" width="150" align="center" prop="productCode">
           </el-table-column>
           <el-table-column label="鎿嶄綔鍐呭" :show-overflow-tooltip='true' width="150" align="center" prop="operationSteps">
           </el-table-column>
diff --git a/jcdm-ui/src/views/main/kb/stationTerminal/index.vue b/jcdm-ui/src/views/main/kb/stationTerminal/index.vue
index 8ff6692..0f16945 100644
--- a/jcdm-ui/src/views/main/kb/stationTerminal/index.vue
+++ b/jcdm-ui/src/views/main/kb/stationTerminal/index.vue
@@ -105,42 +105,48 @@
        <el-tabs type="border-card"  style="height: 600px" v-model="activeName" @tab-click="changeMenu">
          <el-tab-pane name="first">
            <span slot="label"> <a class="el-icon-date"></a>棣栭〉</span>
-           <el-col :span="10">
+           <el-col :span="24">
              <el-table :cell-style="rowStyle" :data="formulaChildList">
                <el-table-column label="鎺掑簭" width="60" align="center" prop="stepSort">
                </el-table-column>
                <el-table-column label="鎿嶄綔鍐呭" :show-overflow-tooltip='true' align="center" prop="operationSteps">
                </el-table-column>
+               <el-table-column label="浜у搧缂栧彿" width="150" align="center" prop="productCode">
+               </el-table-column>
+               <el-table-column label="閲囬泦鍊�" width="150" align="center" prop="productCode">
+               </el-table-column>
+               <el-table-column label="缁撴灉" width="150" align="center" prop="results">
+               </el-table-column>
              </el-table>
            </el-col>
-           <el-col :span="14">
-             <el-image style="height: 520px;width: 100%" :src="imgSrc"></el-image>
-           </el-col>
+<!--           <el-col :span="14">-->
+<!--             <el-image style="height: 520px;width: 100%" :src="imgSrc"></el-image>-->
+<!--           </el-col>-->
          </el-tab-pane>
-         <el-tab-pane name="second">
-           <span slot="label"> <b class="el-icon-date"></b>鐗╂枡BOM</span>
-           <el-empty>
-             <span slot="description">鏆傛棤鏁版嵁</span>
-           </el-empty>
-         </el-tab-pane>
-         <el-tab-pane name="third">
-           <span slot="label"> <b class="el-icon-date"></b>閲囬泦娓呭崟</span>
-           <el-empty>
-             <span slot="description">鏆傛棤鏁版嵁</span>
-           </el-empty>
-         </el-tab-pane>
-         <el-tab-pane name="fourth">
-           <span slot="label"> <b class="el-icon-date"></b>瀹夌伅鐘舵��</span>
-           <el-empty>
-             <span slot="description">鏆傛棤鏁版嵁</span>
-           </el-empty>
-         </el-tab-pane>
-         <el-tab-pane name="fifth">
-           <span slot="label"> <b class="el-icon-date"></b>宸ヨ壓閰嶆柟</span>
-           <el-empty>
-             <span slot="description">鏆傛棤鏁版嵁</span>
-           </el-empty>
-         </el-tab-pane>
+<!--         <el-tab-pane name="second">-->
+<!--           <span slot="label"> <b class="el-icon-date"></b>鐗╂枡BOM</span>-->
+<!--           <el-empty>-->
+<!--             <span slot="description">鏆傛棤鏁版嵁</span>-->
+<!--           </el-empty>-->
+<!--         </el-tab-pane>-->
+<!--         <el-tab-pane name="third">-->
+<!--           <span slot="label"> <b class="el-icon-date"></b>閲囬泦娓呭崟</span>-->
+<!--           <el-empty>-->
+<!--             <span slot="description">鏆傛棤鏁版嵁</span>-->
+<!--           </el-empty>-->
+<!--         </el-tab-pane>-->
+<!--         <el-tab-pane name="fourth">-->
+<!--           <span slot="label"> <b class="el-icon-date"></b>瀹夌伅鐘舵��</span>-->
+<!--           <el-empty>-->
+<!--             <span slot="description">鏆傛棤鏁版嵁</span>-->
+<!--           </el-empty>-->
+<!--         </el-tab-pane>-->
+<!--         <el-tab-pane name="fifth">-->
+<!--           <span slot="label"> <b class="el-icon-date"></b>宸ヨ壓閰嶆柟</span>-->
+<!--           <el-empty>-->
+<!--             <span slot="description">鏆傛棤鏁版嵁</span>-->
+<!--           </el-empty>-->
+<!--         </el-tab-pane>-->
        </el-tabs>
      </el-col>
    </el-row>
@@ -445,17 +451,30 @@
       // });
     },
     serialPortMethod(value){
-      let formulaChildParams = {
-        scanBarcode: value,
-        sfcBarcode: this.headContent.sfcCode,
-        workOrderNo: this.workpieceInformation.workOrderNo,
-        productCode: this.workpieceInformation.productCode,
-        locationCode: this.headContent.processesCode,
-        collectionTime: new Date()
-      }
-      updateResults(formulaChildParams).then(response => {
-        this.getListFormulaChild()
+      console.log(value.includes('C'));
+      let formulaChilds = '';
+      console.log(this.formulaChildList)
+      this.formulaChildList.forEach((formulaChild) => {
+        formulaChilds = formulaChild;
+        let operationType = formulaChild.operationType;
+        let results = formulaChild.results;
+        let materialCode = formulaChild.materialCode;
+        if(operationType === '2' && value.includes(materialCode) && (results === '' || results === null || results === 'NG')){
+          return; // 浣跨敤return浠f浛break
+        }
       });
+      console.log(formulaChilds)
+      // let formulaChildParams = {
+      //   scanBarcode: value,
+      //   sfcBarcode: this.headContent.sfcCode,
+      //   workOrderNo: this.workpieceInformation.workOrderNo,
+      //   productCode: this.workpieceInformation.productCode,
+      //   locationCode: this.headContent.processesCode,
+      //   collectionTime: new Date()
+      // }
+      // updateResults(formulaChildParams).then(response => {
+      //   this.getListFormulaChild()
+      // });
     },
     rowStyle({ row }) {
       if (row.results === 'OK') {
@@ -471,8 +490,10 @@
       this.formulaChildParams.processesCode = this.headContent.processesCode
       listFormulaChild(this.formulaChildParams).then(response => {
         this.formulaChildList = response.rows;
+        console.log(this.formulaChildList)
       });
     },
+
     changeMenu(tab, event) {
       console.log(tab, event);
     },
@@ -518,10 +539,8 @@
         productBarcode: this.headContent.sfcCode,
         inboundTime: new Date()
       }
-      addPassingStationCollection(this.passingStationForm).then(response => {
-      });
-      addBasicParameters(this.passingStationForm).then(response => {
-      });
+      addPassingStationCollection(this.passingStationForm).then(response => {});
+      addBasicParameters(this.passingStationForm).then(response => {});
     },
     allowRelease(){
       clearInterval(this.timer);
@@ -619,12 +638,30 @@
           this.formulaChildList = [];
           self.getListFormulaChild();
         } else if (event.data.includes("[")) {
-          // 杩欓噷鏄� default 鍒嗘敮锛屽鏋滈渶瑕佹墽琛屾煇浜涙搷浣滐紝鍙互鏀惧湪杩欓噷
-          // console.log('鎺ユ敹鍒版暟鎹細', event.data)
-          // const arr = JSON.parse(event.data)
-          // console.log(arr)
+          let formulaChilds = "";
+          // for(let i=0;i<self.formulaChildList.length;i++){
+          //   formulaChilds = self.formulaChildList[i];
+          //   let operationType = formulaChild.operationType;
+          //   let results = formulaChild.results;
+          //   if(operationType === '1' &&
+          //     (results === '' || results === null ||results === 'NG')){
+          //         break;
+          //   }
+          // }
+          self.formulaChildList.forEach((formulaChild) => {
+            formulaChilds = formulaChild;
+            let operationType = formulaChild.operationType;
+            let results = formulaChild.results;
+            if(operationType === '1' && (results === '' || results === null || results === 'NG')){
+              return; // 浣跨敤return浠f浛break
+            }
+            // 鎵ц鍏朵粬鎿嶄綔
+          });
+          console.log(formulaChilds)
+          console.log(formulaChilds.paramCode)
           const param = {
             tightenTheArray: event.data,
+            paramCode: formulaChilds.paramCode,
             workOrderNo: self.workpieceInformation.workOrderNo,
             productCode: self.workpieceInformation.productCode,
             locationCode: self.headContent.processesCode,
@@ -632,30 +669,6 @@
           }
           addTighteningParameters(param).then(response => {});
         }
-        // switch (event.data) {
-        //   case "IN":
-        //     self.cakeLamp.InPlace = 1;
-        //     break;
-        //   case "IN0":
-        //     self.cakeLamp.InPlace = 0;
-        //     break;
-        //   case "OUT":
-        //     self.cakeLamp.release = 1;
-        //     setTimeout(() => {
-        //       self.cakeLamp.InPlace = 0;
-        //       self.cakeLamp.release = 0;
-        //       self.cakeLamp.startWork = 0;
-        //       self.cakeLamp.scanFinish = 0;
-        //       self.Release();
-        //     }, DELAY_TIME);
-        //     break;
-        //   case "TIGHTEN":
-        //     this.formulaChildList = [];
-        //     self.getListFormulaChild();
-        //     break;
-        //   default:
-        //     break;
-        // }
       };
     },
 
@@ -664,14 +677,12 @@
       if (this.form1.isShowHistory) this.form1.desc = this.readLi().join("");
       else {
         const scanValue = this.myserialport.hex2atostr(value).replace(/[\r\n]/g, '');
-        // if (value.length > 0)
-          // this.form1.desc = this.myserialport.hex2atostr(value);
         this.$message('鎵爜瀹屾垚'+this.content);
-        if (/T/.test(scanValue)) {
-          console.log('瀛楃涓插寘鍚瓧姣�"T"');
+
+        if(this.headContent.sfcCode !== ''){
+          console.log(scanValue)
           this.serialPortMethod(scanValue)
-        } else {
-          console.log('瀛楃涓蹭笉鍖呭惈瀛楁瘝"T"');
+        }else {
           this.headContent.sfcCode = scanValue;
           this.queryParams.productNum = scanValue;
           this.getList()

--
Gitblit v1.9.3