From 76eef0389848065963a295c66163a630697054fa Mon Sep 17 00:00:00 2001
From: dengjunjie <dengjunjie@hnkhzn.com>
Date: 星期日, 07 七月 2024 09:47:01 +0800
Subject: [PATCH] PDA
---
代码管理/WMS/WMS_Server/WIDESEA_WMS/ToMes/agvTransferList.cs | 64 +++++++++++++++++++++++++++-----
1 files changed, 54 insertions(+), 10 deletions(-)
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/ToMes/agvTransferList.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/ToMes/agvTransferList.cs"
index ba82d00..60a8b53 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/ToMes/agvTransferList.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/ToMes/agvTransferList.cs"
@@ -1,17 +1,23 @@
锘縰sing Newtonsoft.Json;
+using OfficeOpenXml.FormulaParsing.Excel.Functions.Logical;
using System;
using System.Collections.Generic;
using System.Threading.Tasks;
+using System.Xml.Linq;
using WIDESEA_Comm;
using WIDESEA_Comm.LogInfo;
using WIDESEA_Comm.MES_Info;
using WIDESEA_Comm.MES_Info.Request;
+using WIDESEA_Comm.TaskNo;
using WIDESEA_Common;
+using WIDESEA_Core.EFDbContext;
using WIDESEA_Core.ManageUser;
using WIDESEA_Core.Utilities;
using WIDESEA_Entity.DomainModels;
using WIDESEA_Entity.DomainModels.Mes;
using WIDESEA_WMS.Common;
+using WIDESEA_WMS.IRepositories;
+using WIDESEA_WMS.Repositories;
using static WIDESEA_Comm.MES_Info.BasicSN;
namespace WIDESEA_WMS
@@ -27,23 +33,32 @@
{
WebResponseContent content = new WebResponseContent();
+ string postJson = "";
+ string mesData = "";
try
{
string sn = saveModel.MainData["sn"].ToString();
string user = saveModel.MainData["creator"].ToString();
-
+ VOLContext Context = new VOLContext();
+ Idt_stationinfoRepository stationinfoRepository = new dt_stationinfoRepository(Context);
+ Idt_inventoryRepository inventoryRepository = new dt_inventoryRepository(Context);
+ Idt_agvtaskRepository agvtaskRepository = new dt_agvtaskRepository(Context);
+ //return content.Error($"{user}鏃犳搷浣滄潈闄�!");
//宸ュ崟鍙风敓鎴�
string jobID = "TW" + DateTime.Now.ToString("HH-mm-ss-ff");
//鏍规嵁搴撳瓨鏌ヨ杞﹁疆淇℃伅
- dt_inventory inventory = freeDB.Select<dt_inventory>().Where(x => x.SN.Contains(sn)).First();
+ dt_inventory inventory = inventoryRepository.Find(x => x.SN.Contains(sn)).FirstOrDefault();
if (inventory == null)
{
return content.Error($"鏃犳杞﹁疆{sn}SN鍙�,璇锋牳鏌ュ簱瀛樿褰�!");
}
-
+ var station = stationinfoRepository.Find(x => x.stationCode == inventory.stationCode).FirstOrDefault();
+ //if (!station.enable) return content.Error($"搴撲綅{station.stationCode}鏈惎鐢紝璇锋牳瀹烇紒");
+ if (agvtaskRepository.Find(x => x.agv_fromaddress == station.stationCode || x.agv_toaddress == station.stationCode).Any())
+ return content.Error($"搴撲綅{station.stationCode}瀛樺湪AGV浠诲姟锛岃鏍稿疄锛�");
List<detail> list = new List<detail>(); //杞﹁疆淇℃伅
- foreach (var item in inventory.SN.Split(","))
+ foreach (var item in station.bindSN.Split(","))
{
detail detail = new detail();
detail.sn = item;
@@ -53,29 +68,58 @@
agvTransferListPara listPara = new agvTransferListPara
{
details = list,
- transferListID = jobID,
+ transferListID = jobID,// station.Number,
toWarehouse = "姣涜疆搴�",
fromWarehouse = "AGV搴�",
updateTime = DateTime.Now.ToString(),
- drawingNoVer = "",
- materialCode = "",
+ drawingNoVer = inventory.drawingNoVer,
+ materialCode = inventory.materialCode,
Operator = user == null ? "admin" : user
};
- var postJson = JsonConvert.SerializeObject(listPara);
- string mesData = Request.RequestData(postJson, MESAPIAddress.IPAddress_MES + "agvTransferList");
+ postJson = JsonConvert.SerializeObject(listPara);
+ mesData = Request.RequestData(postJson, MESAPIAddress.IPAddress_MES + "agvTransferList");
+ if (mesData.Contains("杩炴帴灏濊瘯澶辫触"))
+ throw new Exception(mesData);
var requestMes = JsonConvert.DeserializeObject<MES_Response>(mesData);
if (requestMes.code == "200" && requestMes.Type == "success")
{
- return content.OK("绉诲簱浜ゆ帴鎴愬姛锛�");
+ dt_agvtask agvtask = new dt_agvtask()
+ {
+ agv_fromaddress = station.stationCode,
+ agv_id = Guid.NewGuid(),
+ agv_tasknum = IdenxManager.GetTaskNo("KH-", "WMS"),
+ agv_grade = 0,
+ agv_createtime = DateTime.Now,
+ agv_taskstate = "Queue",
+ agv_materielid = station.stationType,
+ agv_qty = station.quantity,
+ agv_tasktype = "TaskType_OutsourceCarry",
+ agv_toaddress = "",
+ agv_userid = user,//"绯荤粺",
+ jobID = jobID,// mes_head.jobID,
+ bindSN = station.bindSN,
+ agv_worktype = 101, //Convert.ToInt32(mes_head.processCode),
+ agv_materbarcode = inventory.materialCode,
+ agv_Traytype = station.tray_type,
+ agv_TrayStatus = station.tray_status
+ };
+ agvtaskRepository.Add(agvtask, true);
+ station.location_state = LocationStateEnum.OutBusy.ToString();
+ stationinfoRepository.Update(station, true);
+ content.OK("涓嬪彂绉诲簱澶栧崗鎴愬姛锛�");
//鏃ュ織璁板綍涓婁紶鏁版嵁鎴愬姛
+ WriteWMSLog.LogAdd("", "鎴愬姛", "MES", "WMS", postJson, mesData, "AB搴撶Щ搴撳鍗�", "agvTransferList", requestMes.message);
}
+ else
+ throw new Exception(requestMes.message);
}
catch (Exception ex)
{
content.Error(ex.Message);
+ WriteWMSLog.LogAdd("", "澶辫触", "MES", "WMS", postJson, mesData, "AB搴撶Щ搴撳鍗�", "agvTransferList", ex.Message);
}
return content;
}
--
Gitblit v1.9.3