From fc9cba5f058089887aa7061d2e6b4006b9e04a9a Mon Sep 17 00:00:00 2001
From: 陈勇 <竞男@ASUNA>
Date: 星期二, 10 三月 2026 09:46:43 +0800
Subject: [PATCH] 同步
---
项目代码/WMS/WMSServer/WIDESEA_StoragIntegrationServices/MES/Partial/bindWorkOrder.cs | 71 +++++++++++++++++++++++++++++------
1 files changed, 59 insertions(+), 12 deletions(-)
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServer/WIDESEA_StoragIntegrationServices/MES/Partial/bindWorkOrder.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServer/WIDESEA_StoragIntegrationServices/MES/Partial/bindWorkOrder.cs"
index 8533927..bec3d27 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServer/WIDESEA_StoragIntegrationServices/MES/Partial/bindWorkOrder.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServer/WIDESEA_StoragIntegrationServices/MES/Partial/bindWorkOrder.cs"
@@ -1,10 +1,14 @@
锘縰sing AngleSharp.Common;
+using Newtonsoft.Json;
+using OfficeOpenXml.ConditionalFormatting;
using System;
using System.Collections.Generic;
using System.Linq;
+using System.Runtime;
using System.Text;
using System.Threading.Tasks;
using WIDESEA_Common;
+using WIDESEA_Common.MES;
using WIDESEA_Common.MES.Request;
using WIDESEA_Core;
using WIDESEA_Core.Const;
@@ -15,11 +19,11 @@
namespace WIDESEA_StoragIntegrationServices
{
/// <summary>
- /// 杞﹁韩缁戝畾宸ュ崟(鐒婅鐩撮�氭秱瑁�)
+ /// 杞﹁韩缁戝畾宸ュ崟 鐒�-娑傘�佹秱-鎬诲伐鍗曠粦瀹�
/// </summary>
public partial class MESService
{
- public WebResponseContent bindWorkOrder(string stationCode)
+ public WebResponseContent bindWorkOrder(string stationNo, string rfid)
{
WebResponseContent content = new WebResponseContent();
try
@@ -33,26 +37,69 @@
}
var wmsIpAddress = wmsBase + ipAddress;
- var stationInfo = _stationManagerRepository.QueryFirst(x => x.stationChildCode == stationCode);
+ var stationInfo = _stationManagerRepository.QueryFirst(x => x.stationChildCode == stationNo);
- BindWorkOrder passPoint = new BindWorkOrder()
+ var carBodyInfo = _carBodyRepository.QueryFirst(x => x.RFID == rfid);
+
+ //if (carBodyInfo == null) throw new Exception($"鏈壘鍒癙VI{rfid}鐨勮溅韬暟鎹�");
+
+ BindWorkOrder bindOrder = new BindWorkOrder()
{
unionKey = Guid.NewGuid().ToString(),
- stationCode = stationInfo.stationChildCode,
+ stationCode = "",
messageTime = DateTime.Now.ToString(),
- plantCode = "1022",
- pvi = "",
- workOrderNo = "",
- workOrderType = "",
- workshopCode = ""
+ plantCode = "1052",
+ 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.Post(wmsIpAddress, passPoint.ToJson());
+ var MESrespon = HttpHelper.PostAsync(wmsIpAddress, bindOrder.ToJson(), contentType, headers).Result;
- return content;
+ Console.WriteLine(MESrespon);
+ WebResponseContent webResponse = JsonConvert.DeserializeObject<WebResponseContent>(MESrespon.ToString());
+ if (webResponse.Code != 200)
+ {
+ throw new Exception($"{webResponse.msg}");
+ }
+
+ BindWorkOrderRespon characterRespon = JsonConvert.DeserializeObject<BindWorkOrderRespon>(webResponse.Data.ToJson());
+
+ _unitOfWorkManage.BeginTran();
+ if (stationInfo.stationChildCode == "EL01RB") //娑傝绮炬帓鐐�
+ {
+ var paintingOrderInfo = _paintingOrderInfoRepository.QueryFirst(x => x.workOrderNo == characterRespon.workOrderNo);
+
+ 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}");
+
+ _unitOfWorkManage.CommitTran();
+ return content.OK();
}
catch (Exception ex)
{
+ _unitOfWorkManage.RollbackTran();
+ LogFactory.GetLog("BDC璇锋眰缁戝畾宸ュ崟淇℃伅").Info(true, $"缁戝畾澶辫触锛歿ex.Message}");
return content.Error(ex.Message);
}
}
--
Gitblit v1.9.3