春风项目四线(合箱线、总装线)
wujian
5 天以前 ea3c33c8561df39d4f123d1424fda99dd0f0c51d
jcdm-main/src/main/java/com/jcdm/main/da/tileMatchRules/controller/DaTileMatchRulesController.java
@@ -1,7 +1,19 @@
package com.jcdm.main.da.tileMatchRules.controller;
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 cn.hutool.core.util.ObjectUtil;
import com.jcdm.common.core.domain.R;
import com.jcdm.main.da.paramCollection.domain.DaParamCollection;
import com.jcdm.main.da.paramCollection.service.IDaParamCollectionService;
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.kangaroohy.milo.model.ReadWriteEntity;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
@@ -21,6 +33,8 @@
import com.jcdm.common.utils.poi.ExcelUtil;
import com.jcdm.common.core.page.TableDataInfo;
import static com.jcdm.main.plcserver.sub.OPCUaSubscription.miloService;
/**
 * 配瓦规则Controller
 * 
@@ -34,12 +48,71 @@
    @Autowired
    private IDaTileMatchRulesService daTileMatchRulesService;
    @Autowired
    public IDaParamCollectionService daParamCollectionService;
    @Resource
    private IDaTileMatchCollectionService daTileMatchCollectionService;
    /**
     * 查询配瓦规则列表
     * 查询配瓦规则列表()
     */
    @PreAuthorize("@ss.hasPermi('da:tileMatchRules:list')")
    @GetMapping("/list")
    public TableDataInfo list(DaTileMatchRules daTileMatchRules)
    public TableDataInfo list(DaTileMatchRules daTileMatchRules) {
        startPage();
        List<DaTileMatchRules> list = daTileMatchRulesService.selectDaTileMatchRulesList(daTileMatchRules);
        return getDataTable(list);
    }
    /**
     *  曲轴配瓦
     */
    @GetMapping("/list2")
    public TableDataInfo list2(DaTileMatchRules daTileMatchRules) throws Exception
    {
        startPage();
        List<DaTileMatchRules> list = daTileMatchRulesService.selectDaTileMatchRulesList(daTileMatchRules);
        //这里取第一行的数据发送颜色信号
        if (CollUtil.isNotEmpty(list)){
            DaTileMatchRules daTileMatchRules1 = list.get(0);
            String tileColor = daTileMatchRules1.getTileColor();
            //1绿色  2黑色   3红色   4蓝色
            Integer colorInt = null;
            if ("#008000".equals(tileColor)){
                colorInt = 1;
            } else if ("#000000".equals(tileColor)){
                colorInt = 2;
            } else if ("#FF0000".equals(tileColor)){
                colorInt = 3;
            } else if ("#0000FF".equals(tileColor)){
                colorInt = 4;
            }
            if (ObjectUtil.isNotEmpty(colorInt)){
                ReadWriteEntity entity = new ReadWriteEntity("CFL4LJ.OP001.Color", colorInt);
                miloService.writeToOpcByte(entity);
            }
        }
        return getDataTable(list);
    }
    /**
     *  连杆配瓦
     */
    @PreAuthorize("@ss.hasPermi('da:tileMatchRules:list')")
    @GetMapping("/list4")
    public TableDataInfo list4(DaTileMatchRules daTileMatchRules)
    {
        startPage();
        List<DaTileMatchRules> list = daTileMatchRulesService.selectDaTileMatchRulesList(daTileMatchRules);
        return getDataTable(list);
    }
    /**
     * 平衡轴配瓦
     */
    @PreAuthorize("@ss.hasPermi('da:tileMatchRules:list')")
    @GetMapping("/list3")
    public TableDataInfo list3(DaTileMatchRules daTileMatchRules)
    {
        startPage();
        List<DaTileMatchRules> list = daTileMatchRulesService.selectDaTileMatchRulesList(daTileMatchRules);
@@ -101,4 +174,60 @@
    {
        return toAjax(daTileMatchRulesService.deleteDaTileMatchRulesByIds(ids));
    }
    @PreAuthorize("@ss.hasPermi('da:tileMatchRules:query')")
    @GetMapping(value = "/barcode")
    public String setBarcode(String barcode,String locationCode) {
        String XT="";
        try {
            //Object SNCodeObject = miloService.readFromOpcUa("CFL4HX."+locationCode+".Code1").getValue();
            Object SNCodeObject = miloService.readFromOpcUa("CFL4HX.HOP040.Code1").getValue();
            if (null == SNCodeObject){
                //SNCodeObject = miloService.readFromOpcUa("CFL4HX."+locationCode+ ".Code").getValue();
                SNCodeObject = miloService.readFromOpcUa("CFL4HX.HOP040.Code").getValue();
            }
            if (null != SNCodeObject){
                String SNCode = SNCodeObject.toString();
                //插入数据
                DaParamCollection saveData = new DaParamCollection();
                saveData.setSfcCode(SNCode);
                saveData.setParamValue(barcode);
                saveData.setLocationCode(locationCode);
                saveData.setParamCode("PHZ");
                saveData.setParamName("平衡轴");
                daParamCollectionService.insertDaParamCollection(saveData);
                DaTileMatchCollection MatchCollection = new DaTileMatchCollection();
                MatchCollection.setSfcCode(SNCode);
                MatchCollection.setParamValue(barcode);
                MatchCollection.setLocationCode(locationCode);
                MatchCollection.setParamCode("PHZ");
                MatchCollection.setParamName("平衡轴");
                daTileMatchCollectionService.insertDaTileMatchCollection(MatchCollection);
                DaParamCollection ParamCollection = new DaParamCollection();
                ParamCollection.setSfcCode(SNCode);
                List<DaParamCollection> DaParamCollectionlist=daParamCollectionService.selectDaParamCollectionList(ParamCollection);
                List<DaParamCollection> XTParamCollection = DaParamCollectionlist.stream().filter(x -> "箱体".equals(x.getParamName())).collect(Collectors.toList());
                if (CollUtil.isNotEmpty(XTParamCollection)){
                    DaParamCollection lastOne = XTParamCollection.get(0);
                    XT = lastOne.getParamValue();
                }
                ReadWriteEntity entity6 = new ReadWriteEntity("CFL4HX.HOP040.Partcode", 1);
                miloService.writeToOpcByte(entity6);
            }
        } catch (Exception e) {
            throw new RuntimeException(e);
        }
        return XT;
    }
    @GetMapping("/getCheckData")
    public R getCheckData(String SNCode, String XT, String CZ){
        List<DaTileMatchRules> daTileMatchRulesList = daTileMatchRulesService.checkData(SNCode, XT, CZ);
        return R.ok(daTileMatchRulesList);
    }
}