上传系统接口增加token
This commit is contained in:
@ -12,5 +12,7 @@ namespace WCS.BLL.Config
|
||||
/// 0x02绿色 0x04蓝色
|
||||
/// </summary>
|
||||
public static byte CurrentOutStoreColor = 0x02;
|
||||
|
||||
public static string WMSToken = string.Empty;
|
||||
}
|
||||
}
|
||||
|
@ -26,22 +26,22 @@ namespace WCS.BLL.Manager
|
||||
public static void InitBackgroundThread()
|
||||
{
|
||||
#region 调用WMS接口获取具体的库存列表并展示在液晶标签上
|
||||
Task.Run(() =>
|
||||
{
|
||||
while (true)
|
||||
{
|
||||
//每5秒同步一次
|
||||
Thread.Sleep(5000);
|
||||
try
|
||||
{
|
||||
//Task.Run(() =>
|
||||
//{
|
||||
// while (true)
|
||||
// {
|
||||
// //每5秒同步一次
|
||||
// Thread.Sleep(5000);
|
||||
// try
|
||||
// {
|
||||
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
Logs.Write("【定时任务】刷新库存显示时发生异常!" + ex.Message);
|
||||
}
|
||||
}
|
||||
});
|
||||
// }
|
||||
// catch (Exception ex)
|
||||
// {
|
||||
// Logs.Write("【定时任务】刷新库存显示时发生异常!" + ex.Message);
|
||||
// }
|
||||
// }
|
||||
//});
|
||||
#endregion
|
||||
|
||||
#region 定时任务:回传数据至WMS系统
|
||||
@ -51,6 +51,38 @@ namespace WCS.BLL.Manager
|
||||
{
|
||||
//回传数据的时间间隔
|
||||
Thread.Sleep(2000);
|
||||
//先判断是否需要获取token
|
||||
if (string.IsNullOrEmpty(LocalStatic.WMSToken))
|
||||
{
|
||||
try
|
||||
{
|
||||
Logs.Write($"【定时任务:回传数据至WMS系统】token为空 开始获取token", LogsType.Info);
|
||||
#region 登录获取token
|
||||
var request = new LoginRequest()
|
||||
{
|
||||
userName = "cmeimZtwcs",
|
||||
password = "Cmeim@ztwcs2024!@#"
|
||||
};
|
||||
var result = ApiHelp.GetDataFromHttpShortTime<LoginResponse>(@"http://10.41.235.10:18989/login", request, "POST", true);
|
||||
if (result != null && (result.code == 200))
|
||||
{
|
||||
//获取到最新的token
|
||||
LocalStatic.WMSToken = result.data;
|
||||
Logs.Write($"【定时任务:回传数据至WMS系统】调用接口获取token成功!token为{result.data}", LogsType.Info);
|
||||
}
|
||||
else if (result != null && (result.code == 500) && result.message.Contains("未查询到条码信息【"))
|
||||
{
|
||||
Logs.Write($"【定时任务:回传数据至WMS系统】调用接口获取token失败", LogsType.Info);
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
Logs.Write($"【定时任务:回传数据至WMS系统】获取token异常" + ex.Message, LogsType.Info);
|
||||
Logs.Write($"【定时任务:回传数据至WMS系统】获取token异常" + ex.StackTrace, LogsType.Info);
|
||||
}
|
||||
}
|
||||
|
||||
try
|
||||
{
|
||||
//获取已完成未提交的任务
|
||||
@ -142,6 +174,22 @@ namespace WCS.BLL.Manager
|
||||
DbHelp.db.Insertable(uploadedTask).ExecuteCommand();
|
||||
DbHelp.db.Deleteable(finishedTask).ExecuteCommand();
|
||||
}
|
||||
else if (result != null && (result.code == 10000) &&
|
||||
(result.message.Contains("token") || result.message.Contains("请重新登录") || result.message.Contains("无token") || result.message.Contains("无效token") || result.message.Contains("token校验失败"))
|
||||
)
|
||||
{
|
||||
Logs.Write($"【定时任务:回传数据至WMS系统】根据wms接口返回 token已过期或者错误,清空token。", LogsType.Info);
|
||||
LocalStatic.WMSToken = string.Empty;
|
||||
break;
|
||||
}
|
||||
else if (result != null && (result.code == 500) &&
|
||||
(result.message.Contains("token") || result.message.Contains("请重新登录") || result.message.Contains("无token") || result.message.Contains("无效token") || result.message.Contains("token校验失败"))
|
||||
)
|
||||
{
|
||||
Logs.Write($"【定时任务:回传数据至WMS系统】根据wms接口返回 token已过期或者错误,清空token。", LogsType.Info);
|
||||
LocalStatic.WMSToken = string.Empty;
|
||||
break;
|
||||
}
|
||||
#endregion
|
||||
|
||||
//为了调试
|
||||
|
@ -12,6 +12,7 @@ using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Input;
|
||||
using WCS.BLL;
|
||||
using WCS.BLL.Config;
|
||||
using WCS.Model;
|
||||
|
||||
namespace WCS.BLL.Tool
|
||||
@ -280,6 +281,7 @@ namespace WCS.BLL.Tool
|
||||
if (isSaveLog)
|
||||
Logs.Write($"【{guid}】开始请求调用接口 url:{url} 请求方式:{httpMethod} 数据:{data}", LogsType.Api);
|
||||
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
|
||||
request.Headers.Add("token",LocalStatic.WMSToken);//智能制造要求请求增加token
|
||||
request.Method = httpMethod;
|
||||
request.ContentType = "application/json";
|
||||
request.Timeout = 10000;
|
||||
@ -324,7 +326,7 @@ namespace WCS.BLL.Tool
|
||||
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
|
||||
request.Method = httpMethod;
|
||||
request.ContentType = "application/json";
|
||||
request.Timeout = 2000;
|
||||
request.Timeout = 3000;
|
||||
|
||||
if (!string.IsNullOrEmpty(data))
|
||||
{
|
||||
|
@ -10,4 +10,17 @@ namespace WCS.Model.ApiModel.MKYBackgroundThread
|
||||
public string message { get; set; }
|
||||
public object data { get; set; }
|
||||
}
|
||||
|
||||
public class LoginRequest
|
||||
{
|
||||
public string userName { get; set; } = "cmeimZtwcs";
|
||||
public string password { get; set; } = "Cmeim@ztwcs2024!@#";
|
||||
}
|
||||
|
||||
public class LoginResponse
|
||||
{
|
||||
public int code { get; set; }
|
||||
public string message { get; set; }
|
||||
public string data { get; set; }
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user