| | |
| | | { |
| | | var alertMsg = ""; |
| | | LogType logType = LogType.DataProcess_BZ01; |
| | | string lastUpi = "";//æåè®°å½çUPIæ°æ® |
| | | while (true) |
| | | { |
| | | Thread.Sleep(1000);//ä¼ç 2ç§ï¼å°ä¼ç åå°åé¢ï¼æ¯ä¸ºäºä¸é¢çcontinueæ¹æ³æ§è¡å䏿¾ç¤ºé误信æ¯çæç¤ºï¼ï¼ï¼ãEditBy shaocx,2022-05-24ã |
| | |
| | | SystemWarningMsg._lbl_alert_DataProcess_BZ01 = $"{rgvLocation.ToString()}-请æ±äºè§£ç ï¼ä½æ¯ç»ææ¯ç©ºç,æ¤æ¬¡å¾ªç¯ç»æ"; |
| | | continue; |
| | | } |
| | | if (lastUpi == result) |
| | | { |
| | | SystemWarningMsg._lbl_alert_DataProcess_BZ01 = $"{rgvLocation.ToString()}-éå¤çUPI{result}"; |
| | | continue; |
| | | } |
| | | var upiCode = result; |
| | | lastUpi = upiCode; |
| | | |
| | | var qitaoReault = false;//é½å
ç»æ |
| | | using (WmsDBModel wmsDB = new WmsDBModel()) |
| | | { |
| | |
| | | } |
| | | else |
| | | { |
| | | qitaoReault = true; |
| | | upiObj.AreaCode = (int)AreaCodeEnum.ç ååºå; |
| | | var isJiXuValidate = true; |
| | | if (upiObj.Shelf != 1) |
| | | { |
| | | var qianmianList = allList.Where(x => x.Shelf < upiObj.Shelf).ToList(); |
| | | //ç以åçæ¿å¨åªéï¼å¿
é¡»é½å¨ ç ååºå |
| | | var yiqianQuyu = AreaCodeEnum.ç ååºå; |
| | | var count_MD = qianmianList.Where(x => x.AreaCode == (int)yiqianQuyu).Count(); |
| | | if (count_MD != qianmianList.Count()) |
| | | { |
| | | isJiXuValidate = false; |
| | | qitaoReault = false; |
| | | upiObj.AreaCode = (int)AreaCodeEnum.ç¼å忣åº; |
| | | } |
| | | } |
| | | |
| | | if (isJiXuValidate) |
| | | {//æ¯å¦ç»§ç»éªè¯ |
| | | //è¿éè¦éªè¯å¨è¿äºåºåä¸ï¼æ¯å¦æ£ç¡®æéï¼å¦ææ²¡ææ£ç¡®æéï¼é£ä¹å°±è®¤ä¸ºä¸é½å¥ ãEditby shaocx,2024-12-12ã |
| | | var queueList = wmsDB.mes_upi_linequeue.Where(x => x.PackageCode == upiObj.PackageCode && x.AreaCode == queryAreaCode) |
| | | .OrderBy(x => x.Id).ToList(); |
| | | var fisrtId = queueList.OrderBy(x => x.Id).First().Id; |
| | | var endId = queueList.OrderByDescending(x => x.Id).First().Id; |
| | | //ç»§ç»æ¥è¯¢è¿ä¸ªæ¶é´æ®µå
çéåæ°æ® |
| | | //éå该éå |
| | | queueList = wmsDB.mes_upi_linequeue.Where(x => x.Id >= fisrtId && x.Id <= endId).OrderBy(x => x.Id).ToList(); |
| | | var syCount = allList.Where(x => x.Shelf >= upiObj.Shelf).Count(); |
| | | if (queueList.Count() != syCount) |
| | | { |
| | | qitaoReault = false; |
| | | upiObj.AreaCode = (int)AreaCodeEnum.ç¼å忣åº; |
| | | } |
| | | else |
| | | { |
| | | //夿æ¯å¦ä¹±åº |
| | | bool isLuanXuan = false; |
| | | int temp_shelf = 0; |
| | | for (int i = 0; i < queueList.Count; i++) |
| | | { |
| | | if (i == 0) |
| | | { |
| | | temp_shelf = queueList[i].Shelf; |
| | | if (temp_shelf != upiObj.Shelf) |
| | | { |
| | | qitaoReault = false; |
| | | isLuanXuan = true; |
| | | upiObj.AreaCode = (int)AreaCodeEnum.ç¼å忣åº; |
| | | break;//è·³åºå¾ªç¯ |
| | | } |
| | | if (queueList[i].Upi != upiObj.UPI) |
| | | { |
| | | qitaoReault = false; |
| | | isLuanXuan = true; |
| | | upiObj.AreaCode = (int)AreaCodeEnum.ç¼å忣åº; |
| | | break;//è·³åºå¾ªç¯ |
| | | } |
| | | } |
| | | else |
| | | { |
| | | temp_shelf = temp_shelf + 1; |
| | | if (temp_shelf != queueList[i].Shelf) |
| | | {//认为乱åºäº |
| | | qitaoReault = false; |
| | | isLuanXuan = true; |
| | | upiObj.AreaCode = (int)AreaCodeEnum.ç¼å忣åº; |
| | | break;//è·³åºå¾ªç¯ |
| | | } |
| | | } |
| | | } |
| | | |
| | | if (isLuanXuan == false) |
| | | { |
| | | qitaoReault = true; |
| | | upiObj.AreaCode = (int)AreaCodeEnum.ç ååºå; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | //注æï¼è¦å é¤è¯¥éåæ°æ®å¦ |
| | |
| | | } |
| | | } |
| | | |
| | | //if (qitaoReault == false) { |
| | | // //ä¸´æ¶ |
| | | // SystemWarningMsg._lbl_alert_DataProcess_BZ01 = $"模æååï¼æååå"; |
| | | // continue; |
| | | //} |
| | | |
| | | using (StationServiceClient client = new StationServiceClient()) |
| | | { |
| | | var res = await client.WriteQiTaoInfoAsync((int)EDevice.Station, rgvLocation, qitaoReault); |