| | |
| | | package com.jcdm.main.da.opcuaconfig.controller; |
| | | |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | import java.util.stream.Collectors; |
| | | import javax.annotation.Resource; |
| | | import javax.servlet.http.HttpServletResponse; |
| | | |
| | | import cn.hutool.core.collection.CollUtil; |
| | | import com.jcdm.common.core.domain.R; |
| | | import com.jcdm.main.da.opcuaconfig.domain.DaOpcuaConfig; |
| | | import com.jcdm.main.da.opcuaconfig.domain.NodeEntity; |
| | | import com.jcdm.main.da.opcuaconfig.service.IDaOpcuaConfigService; |
| | | import com.jcdm.main.da.paramCollection.domain.DaParamCollection; |
| | | import com.jcdm.main.da.paramCollection.mapper.DaParamCollectionMapper; |
| | | import com.jcdm.main.da.paramCollection.service.IDaParamCollectionService; |
| | | import com.jcdm.main.da.passingStationCollection.domain.ProductNewPassStation; |
| | | import com.jcdm.main.da.passingStationCollection.mapper.ProductNewPassStationMapper; |
| | | import com.jcdm.main.da.passingStationCollection.service.ProductNewPassStationService; |
| | | import com.jcdm.main.da.tileMatchCollection.domain.DaTileMatchCollection; |
| | | import com.jcdm.main.da.tileMatchCollection.service.IDaTileMatchCollectionService; |
| | | import com.jcdm.main.da.tileMatchMiddleware.domain.DaTileMatchMiddleware; |
| | | import com.jcdm.main.da.tileMatchMiddleware.service.IDaTileMatchMiddlewareService; |
| | | import com.jcdm.main.da.tileMatchRules.domain.DaTileMatchRules; |
| | | import com.jcdm.main.da.tileMatchRules.service.IDaTileMatchRulesService; |
| | | import com.jcdm.main.plcserver.conf.OPCElement; |
| | | import com.jcdm.main.plcserver.sub.OPCUaSubscription; |
| | | import com.kangaroohy.milo.model.ReadWriteEntity; |
| | | import org.springframework.security.access.prepost.PreAuthorize; |
| | |
| | | private IDaTileMatchMiddlewareService daTileMatchMiddlewareService; |
| | | @Resource |
| | | private IDaTileMatchCollectionService daTileMatchCollectionService; |
| | | |
| | | @Resource |
| | | private ProductNewPassStationService productNewPassStationService; |
| | | |
| | | @Resource |
| | | private ProductNewPassStationMapper productNewPassStationMapper; |
| | | |
| | | /** |
| | | * 查询交互信号配置列表 |
| | |
| | | */ |
| | | @PreAuthorize("@ss.hasPermi('da:opcuaconfig:query')") |
| | | @GetMapping(value = "/barcode1") |
| | | public DaParamCollection setBarcode1(String barcode,String locationCode) { |
| | | Boolean out = true; |
| | | DaParamCollection xParamCollection = null; |
| | | public R setBarcode1(String barcode, String locationCode) { |
| | | ProductNewPassStation resultPassStation = new ProductNewPassStation(); |
| | | try { |
| | | Object SNCodeObject = miloService.readFromOpcUa("CFL4HX." + locationCode + ".Code1").getValue(); |
| | | Object SNCodeObject = miloService.readFromOpcUa("CFL4HX." + locationCode + ".Code").getValue(); |
| | | if (null == SNCodeObject) { |
| | | SNCodeObject = miloService.readFromOpcUa("CFL4HX." + locationCode + ".Code").getValue(); |
| | | SNCodeObject = miloService.readFromOpcUa("CFL4HX." + locationCode + ".Code1").getValue(); |
| | | } |
| | | if (null != SNCodeObject) { |
| | | String SNCode = SNCodeObject.toString(); |
| | |
| | | MatchCollection.setParamName("曲轴"); |
| | | daTileMatchCollectionService.insertDaTileMatchCollection(MatchCollection); |
| | | |
| | | DaTileMatchRules TileMatchRules = new DaTileMatchRules(); |
| | | TileMatchRules.setProductSeries("380Y"); |
| | | TileMatchRules.setScanObject1("连杆"); |
| | | TileMatchRules.setScanObject2("曲轴"); |
| | | daTileMatchRulesService.selectDaTileMatchRulesList(TileMatchRules); |
| | | // DaTileMatchRules TileMatchRules = new DaTileMatchRules(); |
| | | // TileMatchRules.setProductSeries("380Y"); |
| | | // TileMatchRules.setScanObject1("连杆"); |
| | | // TileMatchRules.setScanObject2("曲轴"); |
| | | // daTileMatchRulesService.selectDaTileMatchRulesList(TileMatchRules); |
| | | |
| | | for (int i = 1; i <= 3; i++) { |
| | | DaTileMatchMiddleware TileMatchMiddleware = new DaTileMatchMiddleware(); |
| | | TileMatchMiddleware.setSfcCode(SNCode); |
| | | TileMatchMiddleware.setCrankshaftNo(barcode); |
| | | TileMatchMiddleware.setCylinder((long) i); |
| | | TileMatchMiddleware.setState(1L); |
| | | TileMatchMiddleware.setCylinder(i); |
| | | TileMatchMiddleware.setState(1); |
| | | TileMatchMiddleware.setCreateTime(new Date()); |
| | | TileMatchMiddleware.setUpdateTime(new Date()); |
| | | daTileMatchMiddlewareService.insertDaTileMatchMiddleware(TileMatchMiddleware); |
| | | } |
| | | |
| | | DaParamCollection ParamCollection = new DaParamCollection(); |
| | | ParamCollection.setSfcCode(SNCode); |
| | | ParamCollection.setParamName("箱体"); |
| | | List<DaParamCollection> DaParamCollectionlist = daParamCollectionService.selectDaParamCollectionList(ParamCollection); |
| | | List<DaParamCollection> XTParamCollection = DaParamCollectionlist.stream().filter(x -> "箱体".equals(x.getParamName())).collect(Collectors.toList()); |
| | | if (CollUtil.isNotEmpty(XTParamCollection)) { |
| | | xParamCollection = XTParamCollection.get(0); |
| | | |
| | | ProductNewPassStation productNewPassStation = new ProductNewPassStation(); |
| | | productNewPassStation.setFinishFlag(OPCElement.UN_FINISH); |
| | | productNewPassStation.setSfcCode(SNCode); |
| | | List<ProductNewPassStation> productPassStationList = productNewPassStationService.getProductPassStationList(productNewPassStation); |
| | | if (CollUtil.isNotEmpty(productPassStationList)){ |
| | | resultPassStation = productPassStationList.get(0); |
| | | String rodCode = barcode; |
| | | productNewPassStationMapper.updatePassStationRodCode(resultPassStation.getSfcCode(),rodCode); |
| | | |
| | | } |
| | | |
| | | ReadWriteEntity entity6 = new ReadWriteEntity("CFL4HX.HOP030.Partcode", "1"); |
| | | ReadWriteEntity entity6 = new ReadWriteEntity("CFL4HX.OP030.CodeComplete", 1); |
| | | miloService.writeToOpcByte(entity6); |
| | | } |
| | | } catch (Exception e) { |
| | | throw new RuntimeException(e); |
| | | } |
| | | return xParamCollection; |
| | | return R.ok(resultPassStation); |
| | | } |
| | | } |