|  |  |  | 
|---|
|  |  |  | if (SystemValue.isStartedModel) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | var rgvLocation = StationLocationEnum.BZ39.ToString(); | 
|---|
|  |  |  | if (FormCC.stationView == null) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_FinishTaskForOutbound = $"{rgvLocation.ToString()}-è·åPLC对象为null"; | 
|---|
|  |  |  | continue; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | var obj = FormCC.stationView.R_StationForReadCommList.Where(x => x.StationCode == rgvLocation.ToString()).FirstOrDefault(); | 
|---|
|  |  |  | if (obj.R_OutboundFinish) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | 
|---|
|  |  |  | { | 
|---|
|  |  |  | var task = wmsDB.wms_rbline_task.Where(x => | 
|---|
|  |  |  | x.TaskNo == obj.R_Outbound_TaskID.ToString() | 
|---|
|  |  |  | && x.RbTaskType == (int)RbTaskTypeEnum.åºåºä»»å¡ | 
|---|
|  |  |  | && (x.RbTaskType == (int)RbTaskTypeEnum.é½å
åºåºä»»å¡ || x.RbTaskType == (int)RbTaskTypeEnum.强å¶åºåºä»»å¡) | 
|---|
|  |  |  | ).OrderByDescending(x => x.Id).FirstOrDefault(); | 
|---|
|  |  |  | if (task == null) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | var upiCode = task.UPI; | 
|---|
|  |  |  | var upiCode = task.Upi; | 
|---|
|  |  |  | var upiObj = wmsDB.mes_batchOrderUPI_new.Where(x => x.UPI == upiCode).FirstOrDefault(); | 
|---|
|  |  |  | if (upiObj == null) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_FinishTaskForOutbound = $"{rgvLocation.ToString()},æ ¹æ®UPI:{upiCode}æ²¡ææ¾å°å¯¹è±¡ "; | 
|---|
|  |  |  | continue; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | //æ´æ°æ¿ä»¶çç¶æååºå | 
|---|
|  |  |  | if (task.RbTaskType == (int)RbTaskTypeEnum.é½å
åºåºä»»å¡) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | upiObj.UpiStatus = (int)UpiStatusEnum.å·²é½å
; | 
|---|
|  |  |  | upiObj.AreaCode = (int)AreaCodeEnum.ç ååºå; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | else if (task.RbTaskType == (int)RbTaskTypeEnum.强å¶åºåºä»»å¡) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | upiObj.UpiStatus = (int)UpiStatusEnum.å·²ä¸çº¿; | 
|---|
|  |  |  | upiObj.AreaCode = (int)AreaCodeEnum.ä¸çº¿åºå; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //åºååå° | 
|---|
|  |  |  | wms_stock_quan qun = wmsDB.wms_stock_quan.Where(x => x.PlaceCode == task.PlaceCode).FirstOrDefault(); | 
|---|
|  |  |  | wmsDB.wms_stock_quan.Remove(qun); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | task.TaskStatus = (int)TaskStatusEnum.已宿; | 
|---|
|  |  |  | task.TaskStatusName = TaskStatusEnum.已宿.ToString(); | 
|---|
|  |  |  | task.FinishedTime = DateTime.Now; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | var place = StationHandler.GetPlaceByPlaceCode(task.PlaceCode, wmsDB); | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | WmsRecordUpiProcessHandler.SaveWmsRecordUpiProcess(wmsDB, upiObj, task.PlaceCode, "åºç¼ååºï¼"+task.TaskMsg); | 
|---|
|  |  |  | WmsRecordUpiProcessHandler.SaveWmsRecordUpiProcess(wmsDB, upiObj, task.PlaceCode, $"åºç¼ååºï¼{task.PlaceCode}," + task.TaskMsg); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | wmsDB.SaveChanges(); | 
|---|
|  |  |  | } | 
|---|