wuyouming666
2024-04-19 7357691a222745887ca1c336d8c458964a0d3ab8
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/DownGlassCacheLogic.java
@@ -18,6 +18,8 @@
import java.util.List;
import static jdk.nashorn.internal.runtime.regexp.joni.Config.log;
@Data
@Service
public class DownGlassCacheLogic {
@@ -28,27 +30,12 @@
    @Autowired
    private DownStorageCageDetailsMapper selectInfo;
    private GlassInfoService GlassInfoService;
    private DownStorageCageDetailsService downStorageCageDetailsService;
    private DownStorageCageService downStorageCageService;
    private DownGlassTaskService downGlassTaskService;
    /**
     * @param Number //识别逻辑    不交互
     */
    public void identify(String Number) {
        //查询任务
        PlcParameterObject plcmes = PLCAutoMes.PlcMesObject;
        S7control.getinstance().WriteWord(plcmes.getPlcParameter("MESToGaStatus").getAddress(), (short) 1);
        String s = S7control.getinstance().ReadWord("DB14.26", 1).get(0) + "";
        boolean isexist = isExist(Number);
        if (isexist) {
            //存在逻辑    1.添加信息 2.回复PLC存在
            //S7control.getinstance().WriteWord(plcmes.getPlcParameter("MESToGaStatus").getAddress(),(short) 1);
        } else {
            //不存在逻辑  1.回复PLC不存在
            //S7control.getinstance().WriteWord(plcmes.getPlcParameter("MESToGaStatus").getAddress(),(short) 2);
        }
    }
    public void process() {
        String result = S7control.getinstance().ReadWord("DB14.0", 1).get(0) + "";
@@ -79,20 +66,23 @@
    public boolean processInto(String Number) {
        GlassInfoService = WebSocketServer.applicationContext.getBean(GlassInfoService.class);
        downStorageCageService = WebSocketServer.applicationContext.getBean(DownStorageCageService.class);
        //按id查询玻璃信息表里的玻璃
        GlassInfo GlassInfo = GlassInfoService.selectGlassId(Number);
        PlcParameterObject plcmes = PLCAutoMes.PlcMesObject;
        //存在此玻璃编号
        if (GlassInfo != null) {
            //同钢化版图内的栅格号
            List<DownStorageCageDetails> list = selectInfo.SelectIsExistIntoCache(GlassInfo.getTemperingLayoutId(), GlassInfo.getTemperingFeedSequence(), GlassInfo.getWidth());
            //同钢化版图内的栅格号    找到相同版图id并且大于前面的顺序的空格
            List<DownStorageCageDetails> list = downStorageCageService.getIsExistIntoCacheByLayoutAndSequence(GlassInfo.getTemperingLayoutId(), GlassInfo.getTemperingFeedSequence(), GlassInfo.getWidth());
            //空栅格号
            if (list.size() == 0) {
                list = selectInfo.SelectCacheLeisure();
                //查询笼子内空闲
                list = downStorageCageService.getCacheLeisure();
            }
            //小于此玻璃钢化版图序号的栅格号
            if (list.size() == 0) {
                list = selectInfo.SelectIsExistIntoCache(GlassInfo.getTemperingLayoutId(), GlassInfo.getWidth());
                list = downStorageCageService.getIsExistIntoCacheByLayout(GlassInfo.getTemperingLayoutId(), GlassInfo.getWidth());
            }
            if (list.size() > 0) {
                //存在空格  
@@ -102,6 +92,7 @@
                selectInfo.insertCacheTask(GlassInfo.getId() + "", "0", item.getSlot() + "", "1", GlassInfo.getWidth(), GlassInfo.getHeight(), GlassInfo.getFilmsid(), GlassInfo.getThickness(), GlassInfo.getFlowcardId());
                S7control.getinstance().WriteWord(plcmes.getPlcParameter("MESToGaStatus").getAddress(), (short) 1);
               //完成后插入小片数据到缓存表
                return true;
            }
@@ -119,9 +110,10 @@
        String G11 = S7control.getinstance().ReadWord("DB14.58", 1).get(0) + "";
        String G13 = S7control.getinstance().ReadWord("DB14.58", 1).get(0) + "";
        PlcParameterObject plcmes = PLCAutoMes.PlcMesObject;
        List<DownStorageCageDetails> list = selectInfo.SelectCacheOut(1, 5);
        List<DownStorageCageDetails> list2 = selectInfo.SelectCacheOut(6, 10);
        List<DownStorageCageDetails> list3 = selectInfo.SelectCacheOut(1, 10);
        List<DownStorageCageDetails> list = downStorageCageService.getCacheOut(1, 5);
        List<DownStorageCageDetails> list2 = downStorageCageService.getCacheOut(6, 10);
        List<DownStorageCageDetails> list3 = downStorageCageService.getCacheOut(1, 10);
        // 优先 超出尺寸优先人工出片 人工处理
        if (!list3.isEmpty()) {
            DownStorageCageDetails item3 = list3.get(0);
@@ -175,16 +167,10 @@
        }
        // 返回结果
        return false;
    }
//查询是否绑定架子
//    public boolean selectFlowCardId(String FlowCardId){
//
//    }
    /**
     * @param Number