懒羊羊
2024-03-15 b77c7b1843b5c8e0dc7079de00a4e3592806c236
操作看板
已修改4个文件
214 ■■■■■ 文件已修改
jcdm-main/src/main/java/com/jcdm/main/da/paramCollection/service/impl/DaParamCollectionServiceImpl.java 33 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
jcdm-main/src/main/resources/mapper/bs/formulaChild/BsFormulaChildInfoMapper.xml 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
jcdm-ui/src/views/main/bs/formulaChild/index.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
jcdm-ui/src/views/main/kb/stationTerminal/index.vue 163 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
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);
        }
    }
}
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>
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>
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代替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代替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()