wujian
2024-05-13 6a462fcca2e65cc3a38ed79522d966306756341f
fix 页面自动定位
add 外部接口调用
已修改8个文件
177 ■■■■■ 文件已修改
jcdm-main/src/main/java/com/jcdm/main/bs/formulaChild/controller/BsFormulaChildInfoController.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
jcdm-main/src/main/java/com/jcdm/main/constant/Constants.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
jcdm-main/src/main/java/com/jcdm/main/da/paramCollection/service/IDaParamCollectionService.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
jcdm-main/src/main/java/com/jcdm/main/da/paramCollection/service/impl/DaParamCollectionServiceImpl.java 59 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
jcdm-main/src/main/java/com/jcdm/main/plcserver/sub/OPCUaSubscription.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
jcdm-ui/src/views/main/kb/heatingFilmTerminal/index.vue 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
jcdm-ui/src/views/main/kb/preInstalledTerminal/index.vue 36 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
jcdm-ui/src/views/main/kb/stationTerminal/index.vue 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
jcdm-main/src/main/java/com/jcdm/main/bs/formulaChild/controller/BsFormulaChildInfoController.java
@@ -1,9 +1,12 @@
package com.jcdm.main.bs.formulaChild.controller;
import java.util.List;
import java.util.stream.Collectors;
import javax.servlet.http.HttpServletResponse;
import cn.hutool.core.collection.CollUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.jcdm.main.constant.Constants;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
@@ -45,6 +48,12 @@
        List<BsFormulaChildInfo> list = bsFormulaChildInfoService.list(new LambdaQueryWrapper<BsFormulaChildInfo>()
                .eq(BsFormulaChildInfo::getProductCode,bsFormulaChildInfo.getProductCode())
                .eq(BsFormulaChildInfo::getProcessesCode,bsFormulaChildInfo.getProcessesCode()));
        if (CollUtil.isNotEmpty(list)){
            List<BsFormulaChildInfo> collect1 = list.stream().filter(x -> Constants.OK.equals(x.getResults())).collect(Collectors.toList());
            List<BsFormulaChildInfo> collect2 = list.stream().filter(x -> !Constants.OK.equals(x.getResults())).collect(Collectors.toList());
            list = collect1;
            list.addAll(collect2);
        }
        for (BsFormulaChildInfo formulaChildInfo : list) {
//            formulaChildInfo.setSort(formulaChildInfo.getStepSort());
//            formulaChildInfo.setAddress(formulaChildInfo.getTechRequirement());
jcdm-main/src/main/java/com/jcdm/main/constant/Constants.java
@@ -4,4 +4,8 @@
    public static final String IN_BOUND_TIME_CODE = "PAT_INT";
    public static final String OUT_BOUND_TIME_CODE = "PAT_INT";
    public static final String NG = "2";
    public static final String UN_PASS= "不合格";
    public static final String OK= "OK";
}
jcdm-main/src/main/java/com/jcdm/main/da/paramCollection/service/IDaParamCollectionService.java
@@ -76,4 +76,5 @@
    void yzAddBasicParameters(DaParamCollection daParamCollection);
    void jrmSaveCampaignTimeParameters(DaParamCollection daParamCollection);
    void sendToFactoryMes(String stationCode,String productNum );
}
jcdm-main/src/main/java/com/jcdm/main/da/paramCollection/service/impl/DaParamCollectionServiceImpl.java
@@ -1,7 +1,12 @@
package com.jcdm.main.da.paramCollection.service.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.StrUtil;
import cn.hutool.db.Db;
import cn.hutool.http.HttpRequest;
import cn.hutool.http.HttpResponse;
import cn.hutool.json.JSONUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.jcdm.common.utils.DateUtils;
@@ -10,6 +15,7 @@
import com.jcdm.main.bs.formulaChild.domain.BsFormulaChildInfo;
import com.jcdm.main.bs.formulaChild.mapper.BsFormulaChildInfoMapper;
import com.jcdm.main.bs.formulaChild.service.IBsFormulaChildInfoService;
import com.jcdm.main.constant.Constants;
import com.jcdm.main.da.collectionParamConf.domain.DaCollectionParamConf;
import com.jcdm.main.da.collectionParamConf.mapper.DaCollectionParamConfMapper;
import com.jcdm.main.da.paramCollection.domain.DaParamCollection;
@@ -19,6 +25,8 @@
import com.jcdm.main.da.passingStationCollection.mapper.DaPassingStationCollectionMapper;
import com.jcdm.main.da.passingStationCollection.service.IDaPassingStationCollectionService;
import com.jcdm.main.plcserver.sub.OPCUaSubscription;
import com.jcdm.main.restful.qingYan.doman.ChildVO;
import com.jcdm.main.restful.qingYan.doman.ParentVO;
import com.kangaroohy.milo.model.ReadWriteEntity;
import com.kangaroohy.milo.service.MiloService;
import org.apache.ibatis.session.ExecutorType;
@@ -29,6 +37,7 @@
import javax.annotation.Resource;
import java.util.*;
import java.util.stream.Collectors;
/**
 * 设备产品过程参数采集Service业务层处理
@@ -352,4 +361,54 @@
            throw new RuntimeException(e);
        }
    }
    public void sendToFactoryMes(String stationCode,String productNum ){
        String url = "https://imes-uat-group.geelycv-test.com/api/mom-open/restful/aMesSysIntegration/deviceResultFeedback";
        ParentVO vo =new ParentVO();
        List<ChildVO> checkList = new ArrayList<>();
        List<DaParamCollection> list = this.list(new LambdaQueryWrapper<DaParamCollection>()
                .eq(DaParamCollection::getSfcCode, productNum)
                .eq(DaParamCollection::getLocationCode, stationCode));
        vo.setTotalResult("1");
        String string = new Random(10).toString();
        vo.setRecordId(string);
        vo.setProductNum(productNum);
        vo.setSiteCode("3983");
        vo.setStationCode(stationCode);
        if (CollUtil.isNotEmpty(list)){
            List<DaParamCollection> collect = list.stream().filter(x -> Constants.NG.equals(x.getParamValue())).collect(Collectors.toList());
            if (CollUtil.isNotEmpty(collect)){
                vo.setTotalResult("0");
            }
            List<BsFormulaChildInfo> bsFormulaChildInfoList = bsFormulaChildInfoService.list();
            for (DaParamCollection daParamCollection : list) {
                ChildVO childVO = new ChildVO();
                childVO.setItemCode(daParamCollection.getParamCode());
                String time = daParamCollection.getCollectionTime() != null ? daParamCollection.getCollectionTime().toString() : "";
                childVO.setCheckResult("1");
                if (StrUtil.isNotBlank(daParamCollection.getParamValue())){
                    if (Constants.NG.equals(daParamCollection.getParamValue())){
                        childVO.setCheckResult("0");
                    }
                }
                childVO.setCheckTime(time);
                childVO.setItemValue(daParamCollection.getParamValue());
                childVO.setItemType("3");
                childVO.setItemText(daParamCollection.getParamName());
                if (StrUtil.isNotBlank(daParamCollection.getParamCode())){
                    List<BsFormulaChildInfo> collect1 = bsFormulaChildInfoList.stream().filter(x -> daParamCollection.getParamCode().equals(x.getParamCode())).collect(Collectors.toList());
                    if (CollUtil.isNotEmpty(collect1)){
                        BsFormulaChildInfo bsFormulaChildInfo = collect1.get(0);
                        childVO.setItemType(bsFormulaChildInfo.getOperationType());
                    }
                }
                checkList.add(childVO);
            }
        }
        vo.setCheckList(checkList);
        HttpResponse execute = HttpRequest.post(url).body(JSONUtil.toJsonStr(vo)).execute();
    }
}
jcdm-main/src/main/java/com/jcdm/main/plcserver/sub/OPCUaSubscription.java
@@ -1,12 +1,15 @@
package com.jcdm.main.plcserver.sub;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.StrUtil;
import cn.hutool.json.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.jcdm.common.utils.StringUtils;
import com.jcdm.framework.websocket.WebSocketUsers;
import com.jcdm.main.constant.Constants;
import com.jcdm.main.da.collectionParamConf.domain.DaCollectionParamConf;
import com.jcdm.main.da.collectionParamConf.service.IDaCollectionParamConfService;
import com.jcdm.main.da.paramCollection.domain.DaParamCollection;
@@ -476,4 +479,17 @@
        return sb.toString();
    }
    /**
     * 校验是否存在NG
     * @param packCode sfcCode
     * @return boolean
     */
    public boolean checkIsNG(String packCode,String modelCode){
        List<DaPassingStationCollection> list = daPassingStationCollectionService.list(new LambdaQueryWrapper<DaPassingStationCollection>()
                .eq(StrUtil.isNotBlank(packCode),DaPassingStationCollection::getSfcCode, packCode)
                .eq(DaPassingStationCollection::getOutRsSign, Constants.UN_PASS));
        return CollUtil.isEmpty(list);
    }
}
jcdm-ui/src/views/main/kb/heatingFilmTerminal/index.vue
@@ -457,6 +457,17 @@
      }
      return '';
    },
    getElement() {
      let temp33 = document.getElementsByClassName('el-table__row')
      console.log('temp33',temp33)
      console.log('len',temp33.item(12))
      if (temp33.length > 0){
        console.log('1111111111111111')
        let arr = temp33[12]
        console.log('srr',arr)
        arr.scrollIntoView({ block: 'center' })
      }
    },
    /** 查询配方配置子信息列表 */
    getListFormulaChild() {
      console.log('getListFormulaChild')
@@ -466,8 +477,27 @@
      console.log(this.formulaChildParams)
      noPageListFormulaChild(this.formulaChildParams).then(response => {
        this.formulaChildList = response.rows;
        if (this.formulaChildList.length >0){
          let pos = 0
          const tempArr = this.formulaChildList.filter(x=> 'OK' === x.results)
          if (tempArr.length>0){
            pos = tempArr.length
            this.$nextTick(() => {
              let temp33 = document.getElementsByClassName('el-table__row')
              console.log('temp33',temp33)
              console.log('len',temp33.item(pos))
              if (temp33.length > 0){
                console.log('1111111111111111')
                let arr = temp33[pos-1]
                console.log('srr',arr)
                arr.scrollIntoView({ block: 'center' })
              }
            })
          }
        }
      });
      console.log('success_getListFormulaChild')
    },
    endClear(){
      this.cakeLamp.InPlace= 0 //工件到位
jcdm-ui/src/views/main/kb/preInstalledTerminal/index.vue
@@ -187,26 +187,21 @@
  </div>
</template>
<script>
import {listWorkReport} from "@/api/main/om/workReport/workReport";
import {listStationConf,getIpv4} from "@/api/main/sc/stationConf";
import {getIpv4, listStationConf} from "@/api/main/sc/stationConf";
import {
  listFormulaChild,
  noPageListFormulaChild,
  releaseCheck,
  updateResults,
  updateTighteningFormula,
  workpieceRelease, yzUpdateResults, yzUpdateTighteningFormula
  workpieceRelease,
  yzUpdateResults,
  yzUpdateTighteningFormula
} from "@/api/main/bs/formulaChild/formulaChild";
import MySerialPort from "@/utils/MySerialPort";
import USBDevice from "@/utils/usb.json";
import {listProductionOrde} from "@/api/main/om/productionOrde/productionOrde";
import {addPassingStationCollection} from "@/api/main/da/passingStationCollection/passingStationCollection";
import {
  addBasicParameters,
  addParamCollection,
  addTighteningParameters,
  replaceAssemblyCode,
  saveCampaignTimeParameters,
  replaceAssemblyCode, yzAddBasicParameters,
  yzAddBasicParameters,
} from "@/api/main/da/paramCollection/paramCollection";
export default {
@@ -382,6 +377,25 @@
      console.log(this.formulaChildParams)
      noPageListFormulaChild(this.formulaChildParams).then(response => {
        this.formulaChildList = response.rows;
        if (this.formulaChildList.length >0){
          let pos = 0
          const tempArr = this.formulaChildList.filter(x=> 'OK' === x.results)
          if (tempArr.length>0){
            pos = tempArr.length
            this.$nextTick(() => {
              let temp33 = document.getElementsByClassName('el-table__row')
              console.log('temp33',temp33)
              console.log('len',temp33.item(pos))
              if (temp33.length > 0){
                console.log('1111111111111111')
                let arr = temp33[pos-1]
                console.log('srr',arr)
                arr.scrollIntoView({ block: 'center' })
              }
            })
          }
        }
      });
    },
    endClear(){
jcdm-ui/src/views/main/kb/stationTerminal/index.vue
@@ -512,6 +512,26 @@
      console.log(this.formulaChildParams)
      noPageListFormulaChild(this.formulaChildParams).then(response => {
        this.formulaChildList = response.rows;
        if (this.formulaChildList.length >0){
          let pos = 0
          const tempArr = this.formulaChildList.filter(x=> 'OK' === x.results)
          if (tempArr.length>0){
            pos = tempArr.length
            this.$nextTick(() => {
              let temp33 = document.getElementsByClassName('el-table__row')
              console.log('temp33',temp33)
              console.log('len',temp33.item(pos))
              if (temp33.length > 0){
                console.log('1111111111111111')
                let arr = temp33[pos-1]
                console.log('srr',arr)
                arr.scrollIntoView({ block: 'center' })
              }
            })
          }
        }
      });
    },
    endClear(){