Product_Wms/WcsMain/ApiClient/Shuttle/ShuttleWebApiAction.cs

87 lines
2.9 KiB
C#
Raw Normal View History

using WcsMain.Common;
using WcsMain.DataBase.TableEntity;
using WcsMain.Constant.WcsAttribute.AutoFacAttribute;
using WcsMain.ApiClient.Shuttle.Dto;
2024-11-15 11:51:41 +08:00
using WcsMain.Constant.ExtendMethod;
using System.Security.Cryptography;
using EncryptTool;
using WcsMain.Constant;
using System.Text;
using WcsMain.ExtendMethod;
namespace WcsMain.ApiClient.Shuttle;
/// <summary>
/// 四向车库
/// </summary>
[Component]
public class ShuttleWebApiAction(ShuttleBaseWebApi webApiPost)
{
/// <summary>
/// 四向车库执行移库任务
/// </summary>
/// <param name="wmsTask"></param>
/// <returns></returns>
public string ExecuteMoveTask(AppWmsTask wmsTask)
{
string requestId = Guid.NewGuid().ToString();
ContainerTaskResqust containerTaskResqust = new()
{
RequestId = requestId,
Key = (requestId + ApplicationBaseConfig.SHUTTLE_PWD).MD5Encrypt32(),
WmsTaskId = wmsTask.WcsId,
FromCellNo = wmsTask.Origin,
TaskType = "3",
ToCell = wmsTask.Destination,
PalletNo = wmsTask.VehicleNo
};
var response = webApiPost.HttpPost<ContainerTaskResqust, ContainerTaskResponse>(containerTaskResqust, CommonData.AppApiBaseInfos.GetAddress("ContainerOutMoveApiAddress") ?? "");
var responseData = response.ResponseEntity;
if (!response.IsSend || responseData == null)
{
return "请求失败,网络故障";
}
if (responseData.Code == "200")
{
return string.Empty;
}
return responseData.Message ?? "请求失败,未知异常";
}
/// <summary>
/// 发送出库任务
/// </summary>
/// <param name="taskId"></param>
/// <param name="origin"></param>
/// <param name="destination"></param>
/// <param name="vehicleNo"></param>
/// <returns></returns>
public string ExecuteOutTask(string? taskId, string? origin, string? destination, string? vehicleNo)
{
string requestId = Guid.NewGuid().ToString();
ContainerTaskResqust containerTaskResqust = new()
{
RequestId = requestId,
Key = (requestId + ApplicationBaseConfig.SHUTTLE_PWD).MD5Encrypt32(),
WmsTaskId = taskId,
FromCellNo = origin,
TaskType = "2",
ToCell = destination,
PalletNo = vehicleNo
};
var response = webApiPost.HttpPost<ContainerTaskResqust, ContainerTaskResponse>(containerTaskResqust, CommonData.AppApiBaseInfos.GetAddress("ContainerOutMoveApiAddress") ?? "");
var responseData = response.ResponseEntity;
if (!response.IsSend || responseData == null)
{
return "请求失败,网络故障";
}
if (responseData.Code == "200")
{
return string.Empty;
}
return responseData.Message ?? "请求失败,未知异常";
}
}