Compare commits

..

3 Commits

Author SHA1 Message Date
6ea34c961a 保存 2024-07-10 10:42:49 +08:00
2e182dfa35 将原本写死的堆垛机编号修改成了读取 2024-06-25 11:05:44 +08:00
6e0e13f910 增加检验入库站台是否可以取货 2024-06-21 15:21:18 +08:00
11 changed files with 64 additions and 23 deletions

View File

@ -1,4 +1,5 @@
using System.Text.Json.Serialization;

using System.Text.Json.Serialization;
namespace WcsMain.ApiClient.DataEntity.WmsEntity;

View File

@ -5,8 +5,6 @@ using WcsMain.DataBase.Dao;
using WcsMain.DataBase.TableEntity;
using WcsMain.Enum.Stacker;
using WcsMain.Enum.TaskEnum;
using WcsMain.EquipOperation.Convey;
using WcsMain.EquipOperation.Entity;
using WcsMain.EquipOperation.Entity.Stacker;
using WcsMain.EquipOperation.Entity.StackerConvey;
using WcsMain.EquipOperation.Stacker;
@ -86,11 +84,9 @@ public class ExecuteWcsTask(StackerOperation stackerOperation, AppWcsTaskDao wcs
var wcsTask = wcsTasks[0]; // 取第一条任务
/* 校验入库站台是否可以取货 */
(bool isSuccess, uint value) = _stackerConveyOperation.ReadSenserStatus(wcsTask.Origin);
if (!isSuccess) return false; //站台不允许取货
//if (!isSuccess || value == 0) return false; //站台不允许取货
// TODO
/* 检验并返回起点终点信息 */
var originLocationInfo = CommonData.AppLocations.DetailWithWcsLocation(wcsTask.Origin);
var destinationLocationInfo = CommonData.AppLocations.DetailWithWcsLocation(wcsTask.Destination);
if (destinationLocationInfo == default || originLocationInfo == default) // 起点终点错误,直接标记错误
@ -107,8 +103,8 @@ public class ExecuteWcsTask(StackerOperation stackerOperation, AppWcsTaskDao wcs
PlcId = wcsTask.PlcId,
TaskType = Convert.ToInt16(wcsTask.TaskType),
GetStand = wcsTask.Origin == "111" ? (short)111 : (short)106,
InTunnelId = 3,
OutTunnelId = 3,
InTunnelId = Convert.ToInt16(destinationLocationInfo.TunnelNo),
OutTunnelId = Convert.ToInt16(destinationLocationInfo.TunnelNo),
SetStand = 0,
GetQueue = 1,
GetLine = 1,
@ -173,8 +169,8 @@ public class ExecuteWcsTask(StackerOperation stackerOperation, AppWcsTaskDao wcs
PlcId = wcsTask.PlcId,
TaskType = Convert.ToInt16(wcsTask.TaskType),
GetStand = 0,
InTunnelId = 3,
OutTunnelId = 3,
InTunnelId = Convert.ToInt16(destinationLocationInfo.TunnelNo),
OutTunnelId = Convert.ToInt16(destinationLocationInfo.TunnelNo),
SetStand = Convert.ToInt16(wcsTask.Destination),
GetQueue = Convert.ToInt16(originLocationInfo.Queue),
GetLine = Convert.ToInt16(originLocationInfo.Line),
@ -239,8 +235,8 @@ public class ExecuteWcsTask(StackerOperation stackerOperation, AppWcsTaskDao wcs
PlcId = wcsTask.PlcId,
TaskType = Convert.ToInt16(wcsTask.TaskType),
GetStand = 0,
InTunnelId = 3,
OutTunnelId = 3,
InTunnelId = Convert.ToInt16(destinationLocationInfo.TunnelNo),
OutTunnelId = Convert.ToInt16(destinationLocationInfo.TunnelNo),
SetStand = 0,
GetQueue = Convert.ToInt16(originLocationInfo.Queue),
GetLine = Convert.ToInt16(originLocationInfo.Line),
@ -303,8 +299,8 @@ public class ExecuteWcsTask(StackerOperation stackerOperation, AppWcsTaskDao wcs
PlcId = wcsTask.PlcId,
TaskType = Convert.ToInt16(wcsTask.TaskType),
GetStand = 0,
InTunnelId = 3,
OutTunnelId = 3,
InTunnelId = Convert.ToInt16(destinationLocationInfo.TunnelNo),
OutTunnelId = Convert.ToInt16(destinationLocationInfo.TunnelNo),
SetStand = 0,
GetQueue = Convert.ToInt16(originLocationInfo.Queue),
GetLine = Convert.ToInt16(originLocationInfo.Line),

View File

@ -12,11 +12,14 @@ namespace WcsMain.Business.CommonAction;
/// 用于发送WMS任务状态的类
/// </summary>
[Component]
public class SendWmsTaskStatus(AppWmsTaskDao wmsTaskDao, WmsWebApiPost wmsWebApiPost)
{
private readonly WmsWebApiPost _wmsWebApiPost = wmsWebApiPost;
private readonly AppWmsTaskDao _wmsTaskDao = wmsTaskDao;
//YXQ
/// <summary>
/// 发送 WMS 任务异常
/// </summary>

View File

@ -115,8 +115,19 @@ public class WCSTaskExecuteEvent(TaskDao taskDao, SendWmsTaskStatus sendWmsTaskS
{
ConsoleLog.Error($"【异常】PlcId{task.PlcId} 任务完成失败,异常信息:{errMsg}");
}
if (task.CreatePerson == StaticString.WMS) {
_sendWmsTaskStatus.SendTaskComplete(task.TaskId);
}
}
/*
AppWmsTaskDao.Instance().CompleteTaskWithTaskId(wcsTask.TaskId, "完成");
// 发送WMS任务完成
if (wcsTask.CreatePerson is "WMS")
{
//SendWmsTaskStatus.Instance().SendTaskComplete
SendWmsTaskStatus.SendTaskComplete(wcsTask.TaskId);
}
*/
/// <summary>
/// 更新库位的相关信息,

View File

@ -12,6 +12,15 @@ namespace WcsMain.DataBase.Dao;
[Component]
public class AppWmsTaskDao
{
//yxq
private static AppWmsTaskDao? _instance;
public static AppWmsTaskDao Instance()
{
return _instance ??= new AppWmsTaskDao();
}
//yxq
/// <summary>
/// 添加记录
/// 注意:尚未清楚是否为事务插入

View File

@ -1,7 +1,11 @@
using WcsMain.Common;
using System.Threading.Tasks;
using WcsMain.Business.CommonAction;
using WcsMain.Common;
using WcsMain.DataBase.Dao;
using WcsMain.DataBase.TableEntity;
using WcsMain.Enum.TaskEnum;
using WcsMain.ExtendMethod;
using WcsMain.Plugins;
using WcsMain.WcsAttribute.AutoFacAttribute;
namespace WcsMain.DataBase.MixDao;

View File

@ -1,4 +1,5 @@
using System.Text.Json.Serialization;
using Newtonsoft.Json;
using SqlSugar;
namespace WcsMain.DataBase.TableEntity;

View File

@ -199,6 +199,7 @@ public class StackerOperation
/// <param name="task">任务数据</param>
/// <param name="forkId">货叉编号</param>
/// <returns></returns>
public string WriteTask(StackerPlcTask task, int forkId = 0)
{
if (!CommonData.IsConnectPlc || CommonTool.Siemens == default) return "PLC尚未连接。"; // 未连接PLC

View File

@ -176,6 +176,7 @@ public class StackerConveyOperation
/// </summary>
/// <param name="task"></param>
/// <returns></returns>
public string WriteTask(StackerConveyPlcTask task)
{
if (!CommonData.IsConnectPlc || CommonTool.Siemens == default)

View File

@ -1,8 +1,14 @@
using ApiTool;
using Autofac;
using Autofac.Extensions.DependencyInjection;
using System.Text;
using System.Threading.Tasks;
using WcsMain;
using WcsMain.ApiClient.DataEntity.WmsEntity;
using WcsMain.Business.CommonAction;
using WcsMain.Common;
using WcsMain.Enum;
using WcsMain.Plugins;
using WcsMain.StartAction;
Console.Title = "WCS设备控制系统";
@ -57,9 +63,17 @@ if (app.Environment.IsDevelopment())
}
app.UseCors("any");
app.UseAuthorization();
app.MapControllers();
WebApiPost _wmsWebApiPost = new WebApiPost();
SendWmsTaskStatusRequest request = new()
{
TaskId = "11111",
TaskStatus = (int)SendWmsTaskStatusEnum.complete,
Destination = "12kk",
VehicleNo = "wmsTask.VehicleNo",
Message = "ÈÎÎñÍê³É"
};
_wmsWebApiPost.HttpPost<SendWmsTaskStatusRequest, WmsResponse>(request, "");
app.Run();

View File

@ -5,7 +5,7 @@ https://go.microsoft.com/fwlink/?LinkID=208121.
<Project>
<PropertyGroup>
<_PublishTargetUrl>D:\file4\2024-5-6 苏州卡特\应用程序\WcsService\WcsMain\bin\Release\net8.0\publish\</_PublishTargetUrl>
<History>True|2024-06-19T01:50:26.9671568Z;False|2024-06-19T09:46:12.9177219+08:00;</History>
<History>True|2024-07-10T00:12:30.9273573Z;True|2024-07-09T14:43:30.5015300+08:00;True|2024-07-08T16:34:48.9723414+08:00;True|2024-06-26T15:10:13.7440501+08:00;True|2024-06-19T09:50:26.9671568+08:00;False|2024-06-19T09:46:12.9177219+08:00;</History>
<LastFailureDetails />
</PropertyGroup>
</Project>