|  |  |  | 
|---|
|  |  |  | using iWareSql.WmsDBModel; | 
|---|
|  |  |  | using System; | 
|---|
|  |  |  | using System.Collections.Generic; | 
|---|
|  |  |  | using System.Diagnostics.Eventing.Reader; | 
|---|
|  |  |  | using System.Linq; | 
|---|
|  |  |  | using System.ServiceModel.Configuration; | 
|---|
|  |  |  | using System.Text; | 
|---|
|  |  |  | 
|---|
|  |  |  | SystemWarningMsg._lbl_alert_DataProcess_BZ39 = string.Empty; | 
|---|
|  |  |  | try | 
|---|
|  |  |  | { | 
|---|
|  |  |  | if (SystemValue.isAllowRuning_DataProcess_BZ39 && SystemValue.isStartedModel) | 
|---|
|  |  |  | if (SystemValue.isStartedModel)//SystemValue.isAllowRuning_DataProcess_BZ39 && | 
|---|
|  |  |  | { | 
|---|
|  |  |  | var rgvLocation = StationLocationEnum.BZ39.ToString(); | 
|---|
|  |  |  | /* | 
|---|
|  |  |  | * 1ã仿°æ®åºä¸å¤ææ¯å¦é½å¥ | 
|---|
|  |  |  | * 2ãæ ¹æ®é½å¥ç»æï¼æ¨éç»PLC | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | if (FormCC.stationView == null) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | SystemWarningMsg._lbl_alert_DataProcess_BZ39 = $"{rgvLocation.ToString()}-è·åPLC对象为null"; | 
|---|
|  |  |  | continue; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | var obj = FormCC.stationView.R_StationForReadCommList.Where(x => x.StationCode == rgvLocation.ToString()).FirstOrDefault(); | 
|---|
|  |  |  | if (obj.R_ReqParseData) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | 
|---|
|  |  |  | using (WmsDBModel wmsDB = new WmsDBModel()) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | //ä¸åæ¦æª | 
|---|
|  |  |  | /* | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //è¦æ¯æå·²ä¸åçä»»å¡ï¼å°±ä¸è¦æ§è¡ | 
|---|
|  |  |  | var isValidate = TaskHandler.ValidateIssueTaskForRobotBuffer(wmsDB); | 
|---|
|  |  |  | var isValidate = TaskHandler.ValidateIssueTaskForNoFinishTaskByUpi(wmsDB, upiCode, false); | 
|---|
|  |  |  | if (!isValidate) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | SystemWarningMsg._lbl_alert_DataProcess_BZ39 = $"{rgvLocation.ToString()}-æâå·²ä¸åâçä»»å¡ï¼ä¸è½å¤ç,æ¤æ¬¡å¾ªç¯ç»æ"; | 
|---|
|  |  |  | SystemWarningMsg._lbl_alert_DataProcess_BZ39 = $"{rgvLocation.ToString()}- upi:{upiCode}æâæªç»æâçä»»å¡ï¼ä¸è½å¤ç,æ¤æ¬¡å¾ªç¯ç»æ"; | 
|---|
|  |  |  | continue; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | //*/ | 
|---|
|  |  |  | // | 
|---|
|  |  |  | var upiObj = wmsDB.mes_batchOrderUPI_new.Where(x => x.UPI == upiCode).FirstOrDefault(); | 
|---|
|  |  |  | if (upiObj == null) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | //åå
¥æ¥è¦ä¿¡æ¯ | 
|---|
|  |  |  | await MyExtendHelper.WriteBoolPlcDataForWarning(PlcWarningAddressGloble.Num_BZ39_2); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | SystemWarningMsg._lbl_alert_DataProcess_BZ39 = $"{rgvLocation.ToString()},æ ¹æ®UPI:{upiCode}æ²¡ææ¾å°å¯¹è±¡ "; | 
|---|
|  |  |  | continue; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | //夿仿¯å¦å¨åºéé¢ | 
|---|
|  |  |  | var stock = wmsDB.wms_stock_quan.Where(x => x.Upi == upiObj.UPI).FirstOrDefault(); | 
|---|
|  |  |  | if (stock != null) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | //åå
¥æ¥è¦ä¿¡æ¯ | 
|---|
|  |  |  | await MyExtendHelper.WriteBoolPlcDataForWarning(PlcWarningAddressGloble.Num_BZ39_1); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | SystemWarningMsg._lbl_alert_DataProcess_BZ39 = $"{rgvLocation.ToString()},UPI:{upiCode}å·²ç»å¨ç¼ååºä¸äº "; | 
|---|
|  |  |  | continue; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //äºè§£ä»çé¿ã宽ãé«ï¼å¯»æ¾ç©ºåºä½ | 
|---|
|  |  |  | var place = StationHandlerV2.FindBestEmptyPlace(wmsDB, upiObj); | 
|---|
|  |  |  | if (place == null) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | //åå
¥æ¥è¦ä¿¡æ¯ | 
|---|
|  |  |  | await MyExtendHelper.WriteBoolPlcDataForWarning(PlcWarningAddressGloble.Num_BZ39_3); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | SystemWarningMsg._lbl_alert_DataProcess_BZ39 = $"{rgvLocation.ToString()},æ ¹æ®UPI:{upiCode}æ²¡ææ¾å°ç¼ååºå²ç空åºä½ "; | 
|---|
|  |  |  | continue; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //è®°å½ä»»å¡ | 
|---|
|  |  |  | var _id = Yitter.IdGenerator.YitIdHelper.NextId(); | 
|---|
|  |  |  | var plcTaskNo = BusinessHelper.CreatePlcTaskIdForSrmTask(); | 
|---|
|  |  |  | var plcTaskNo = BusinessHelper.CreatePlcTaskId(); | 
|---|
|  |  |  | plcTaskNo = MyExtendHelper.GetNewTaskNo(wmsDB, RbTaskTypeEnum.å
¥åºä»»å¡, plcTaskNo); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | var task = new wms_rbline_task() | 
|---|
|  |  |  | { | 
|---|
|  |  |  | Id = _id, | 
|---|
|  |  |  | TaskNo = plcTaskNo, | 
|---|
|  |  |  | UPI = upiObj.UPI, | 
|---|
|  |  |  | Upi = upiObj.UPI, | 
|---|
|  |  |  | Length = upiObj.Length, | 
|---|
|  |  |  | Width = upiObj.Width, | 
|---|
|  |  |  | Thk = upiObj.Thk, | 
|---|
|  |  |  | 
|---|
|  |  |  | PackageCode = upiObj.PackageCode, | 
|---|
|  |  |  | PlaceCode = place.PlaceCode, | 
|---|
|  |  |  | RbTaskType = (int)RbTaskTypeEnum.å
¥åºä»»å¡, | 
|---|
|  |  |  | RbTaskTypeEnumName = RbTaskTypeEnum.å
¥åºä»»å¡.ToString(), | 
|---|
|  |  |  | TaskStatus = (int)TaskStatusEnum.å·²ä¸å, | 
|---|
|  |  |  | TaskStatusName = TaskStatusEnum.å·²ä¸å.ToString(), | 
|---|
|  |  |  | TaskStatus = (int)TaskStatusEnum.æ°å»º, | 
|---|
|  |  |  | TaskMsg = "å
¥åº", | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | CreateTime = DateTime.Now, | 
|---|
|  |  |  | CreateUserName = "CC", | 
|---|
|  |  |  | CreateUserName = SysGloble.WCSSystem, | 
|---|
|  |  |  | UpdateTime = DateTime.Now, | 
|---|
|  |  |  | UpdateUserName = "CC", | 
|---|
|  |  |  | UpdateUserName = SysGloble.WCSSystem, | 
|---|
|  |  |  | }; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | wmsDB.wms_rbline_task.Add(task); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | using (StationServiceClient client = new StationServiceClient()) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | //ä¸åæ¦æª | 
|---|
|  |  |  | /* | 
|---|
|  |  |  | //é¦å
å
æ¸
ç | 
|---|
|  |  |  | var res = await client.InboundFinishConfirmAsync((int)EDevice.Station, false, rgvLocation); | 
|---|
|  |  |  | if (!res.result) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | SystemWarningMsg._lbl_alert_DataProcess_BZ39 = $"{rgvLocation.ToString()}-ä¸åå
¥åºä»»å¡ å¤±è´¥,InboundFinishConfirmAsync è¿å:{res.resMsg}"; | 
|---|
|  |  |  | continue; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | else | 
|---|
|  |  |  | { | 
|---|
|  |  |  | Log4NetHelper.WriteInfoLog(logType, $"{rgvLocation.ToString()}-ä¸åå
¥åºä»»å¡ æå,InboundFinishConfirmAsyncï¼åæ°: ç«ç¹{rgvLocation}"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | //*/ | 
|---|
|  |  |  |  | 
|---|
|  |  |  | var res = await client.WriteInStoreTaskInfoAsync((int)EDevice.Station, rgvLocation, place.PlaceCode, | 
|---|
|  |  |  | (short)upiObj.Length, | 
|---|
|  |  |  | (short)upiObj.Width, (short)upiObj.Thk, Convert.ToInt32(task.TaskNo)); | 
|---|
|  |  |  | if (!res.result) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | SystemWarningMsg._lbl_alert_DataProcess_BZ39 = $"{rgvLocation.ToString()}-ä¸åå
¥åºä»»å¡ å¤±è´¥,WriteInStoreTaskInfoAsync è¿å:{res.resMsg}"; | 
|---|
|  |  |  | continue; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | else | 
|---|
|  |  |  | { | 
|---|
|  |  |  | Log4NetHelper.WriteInfoLog(logType, $"{rgvLocation.ToString()}-ä¸åå
¥åºä»»å¡ æå,WriteInStoreTaskInfoAsyncï¼åæ°: ç«ç¹{rgvLocation}"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | place.PlaceStatus = (int)PlaceStatusEnum.éå®; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | WmsRecordUpiProcessHandler.SaveWmsRecordUpiProcess(wmsDB, upiObj, "BZ39", "ç¼åå
¥åºï¼" + place.PlaceCode); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | wmsDB.SaveChanges(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | else | 
|---|
|  |  |  | { | 
|---|
|  |  |  | SystemWarningMsg._lbl_alert_DataProcess_BZ39 = $"{rgvLocation.ToString()}-没æè¦å¤ççæ°æ®"; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | catch (Exception ex) | 
|---|