| | |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.Linq; |
| | | using System.Runtime; |
| | | using System.Text; |
| | | using System.Threading.Tasks; |
| | | using WIDESEA_Common; |
| | |
| | | namespace WIDESEA_StoragIntegrationServices |
| | | { |
| | | /// <summary> |
| | | /// 车身ç»å®å·¥å(çè£
ç´éæ¶è£
) |
| | | /// 车身ç»å®å·¥å ç-æ¶ãæ¶-æ»å·¥åç»å® |
| | | /// </summary> |
| | | public partial class MESService |
| | | { |
| | |
| | | WebResponseContent content = new WebResponseContent(); |
| | | try |
| | | { |
| | | |
| | | var configs = _configService.GetConfigsByCategory(CateGoryConst.CONFIG_SYS_MESIPAddress); |
| | | var wmsBase = configs.FirstOrDefault(x => x.ConfigKey == SysConfigConst.MESIPAddress)?.ConfigValue; |
| | | var ipAddress = configs.FirstOrDefault(x => x.ConfigKey == SysConfigConst.bindWorkOrder)?.ConfigValue; |
| | |
| | | |
| | | var stationInfo = _stationManagerRepository.QueryFirst(x => x.stationChildCode == stationNo); |
| | | |
| | | var carBodyInfo = _carBodyRepository.QueryFirst(x => x.PVI == rfid); |
| | | var carBodyInfo = _carBodyRepository.QueryFirst(x => x.RFID == rfid); |
| | | |
| | | if (carBodyInfo == null) throw new Exception($"æªæ¾å°PVI{rfid}çè½¦èº«æ°æ®"); |
| | | |
| | | BindWorkOrder passPoint = new BindWorkOrder() |
| | | BindWorkOrder bindOrder = new BindWorkOrder() |
| | | { |
| | | unionKey = Guid.NewGuid().ToString(), |
| | | stationCode = "", |
| | | messageTime = DateTime.Now.ToString(), |
| | | plantCode = "1052", |
| | | pvi = rfid, |
| | | workOrderNo = carBodyInfo.workOrderNo, |
| | | workOrderType = carBodyInfo.workOrderType, |
| | | workshopCode = "" |
| | | pvi = carBodyInfo.PVI, |
| | | workOrderNo = stationNo == "EL01RB" ? carBodyInfo.workOrderNo : carBodyInfo.plantingWorkNo, |
| | | workOrderType = stationNo == "EL01RB" ? "0" : "1", //carBodyInfo.workOrderType, |
| | | workshopCode = stationNo == "EL01RB" ? "HZ" : "TZ", |
| | | }; |
| | | |
| | | var MESrespon = HttpHelper.PostAsync(wmsIpAddress, passPoint.ToJson(), contentType, headers).Result; |
| | | var MESrespon = HttpHelper.PostAsync(wmsIpAddress, bindOrder.ToJson(), contentType, headers).Result; |
| | | |
| | | Console.WriteLine(MESrespon); |
| | | WebResponseContent webResponse = JsonConvert.DeserializeObject<WebResponseContent>(MESrespon.ToString()); |
| | |
| | | } |
| | | |
| | | BindWorkOrderRespon characterRespon = JsonConvert.DeserializeObject<BindWorkOrderRespon>(webResponse.Data.ToJson()); |
| | | var paintingOrderInfo = _paintingOrderInfoRepository.QueryFirst(x => x.workOrderNo == characterRespon.workOrderNo); |
| | | |
| | | if (paintingOrderInfo == null) throw new Exception($"ç»å®å¤±è´¥:æªæ¾å°æ¶è£
å·¥åä¿¡æ¯{characterRespon.workOrderNo}"); |
| | | _unitOfWorkManage.BeginTran(); |
| | | if (stationInfo.stationChildCode == "EL01RB") //çè£
-æ¶è£
æåæº |
| | | { |
| | | var paintingOrderInfo = _paintingOrderInfoRepository.QueryFirst(x => x.workOrderNo == characterRespon.workOrderNo); |
| | | |
| | | paintingOrderInfo.pvi = characterRespon.pvi; |
| | | _paintingOrderInfoRepository.UpdateData(paintingOrderInfo); |
| | | if (paintingOrderInfo == null) throw new Exception($"ç»å®å¤±è´¥:æªæ¾å°æ¶è£
å·¥åä¿¡æ¯{characterRespon.workOrderNo}"); |
| | | paintingOrderInfo.pvi = characterRespon.pvi; |
| | | _paintingOrderInfoRepository.UpdateData(paintingOrderInfo); |
| | | carBodyInfo.pbMaterial = paintingOrderInfo.pbMaterial; |
| | | carBodyInfo.plantingWorkNo = paintingOrderInfo.workOrderNo; |
| | | carBodyInfo.carBodyCharacteristic = paintingOrderInfo.carBodyCharacteristic; |
| | | _carBodyRepository.UpdateData(carBodyInfo); |
| | | } |
| | | else if (stationInfo.stationChildCode == "EL01RB01") //æ¶è£
ç²¾æç¹ |
| | | { |
| | | var assemblyOrderInfo = _assemblyOrderInfoRepository.QueryFirst(x => x.workOrderNo == characterRespon.workOrderNo); |
| | | |
| | | if (assemblyOrderInfo == null) throw new Exception($"ç»å®å¤±è´¥:æªæ¾å°æ»è£
å·¥åä¿¡æ¯{characterRespon.workOrderNo}"); |
| | | assemblyOrderInfo.pvi = characterRespon.pvi; |
| | | _assemblyOrderInfoRepository.UpdateData(assemblyOrderInfo); |
| | | carBodyInfo.assemblyWorrkNo = characterRespon.workOrderNo; |
| | | _carBodyRepository.UpdateData(carBodyInfo); |
| | | } |
| | | |
| | | LogFactory.GetLog("BDC请æ±ç»å®å·¥åä¿¡æ¯").Info(true, $"\r\r--------------------------------------"); |
| | | LogFactory.GetLog("BDC请æ±ç»å®å·¥åä¿¡æ¯").Info(true, $"å·¥ä½å·:{stationNo},RFID:{rfid}"); |
| | | LogFactory.GetLog("BDC请æ±ç»å®å·¥åä¿¡æ¯").Info(true, $"å·¥ä½å·:{stationNo},RFID:{rfid},ååºä¿¡æ¯ï¼{webResponse.ToJson()}"); |
| | | |
| | | _unitOfWorkManage.CommitTran(); |
| | | return content.OK(); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | _unitOfWorkManage.RollbackTran(); |
| | | LogFactory.GetLog("BDC请æ±ç»å®å·¥åä¿¡æ¯").Info(true, $"ç»å®å¤±è´¥ï¼{ex.Message}"); |
| | | return content.Error(ex.Message); |
| | | } |