using Newtonsoft.Json;
|
using System;
|
using System.Collections.Generic;
|
using System.Linq;
|
using System.Text;
|
using System.Threading.Tasks;
|
using HH.WCS.Mobox3.YNJT_BZP_GT.util;
|
using HH.WCS.Mobox3.YNJT_BZP_GT.models;
|
using static HH.WCS.Mobox3.YNJT_BZP_GT.api.ApiModel;
|
|
namespace HH.WCS.Mobox3.YNJT_BZP_GT.dispatch
|
{
|
internal class WMSDispatch
|
{
|
private static readonly HttpHelper apiHelper = new HttpHelper();
|
private static readonly string baseUrl = Settings.WMSSeverUrl;
|
|
/// <summary>
|
/// 1.同步物料条码信息
|
/// </summary>
|
/// <returns></returns>
|
public static bool synMatlInformation(SynMatlInformationModel model)
|
{
|
var msg = "";
|
bool bo = false;
|
var request = JsonConvert.SerializeObject(model);
|
var response = apiHelper.Post(baseUrl + "/api/Wms/synMatlInformation", request);
|
msg = $"[synMatlInformation] request={request} response={response}";
|
Console.WriteLine(msg);
|
LogHelper.Info(msg, "WMS");
|
if (response != "")
|
{
|
try
|
{
|
var dataResult = JsonConvert.DeserializeObject<ReturnResult>(response);
|
if (dataResult.ResultCode == 0)
|
{
|
bo = true;
|
}
|
else
|
{
|
LogHelper.Info($"接口返回异常,异常原因:{dataResult.ResultMsg}", "WMS");
|
}
|
}
|
catch (Exception ex)
|
{
|
LogHelper.Info($"同步物料条码信息错误,错误原因:{ex.Message}", "WMS");
|
}
|
}
|
else
|
{
|
msg = "[synMatlInformation]同步物料条码信息失败";
|
Console.WriteLine(msg);
|
LogHelper.Info(msg, "WMS");
|
}
|
return bo;
|
}
|
|
/// <summary>
|
/// 2.同步更新物料状态
|
/// </summary>
|
/// <returns></returns>
|
public static bool synUpdateMatlStatus(SynUpdateMatlStatusModel model)
|
{
|
var msg = "";
|
bool bo = false;
|
var request = JsonConvert.SerializeObject(model);
|
var response = apiHelper.Post(baseUrl + "/api/Wms/synUpdateMatlStatus", request);
|
msg = $"[synUpdateMatlStatus] request={request} response={response}";
|
Console.WriteLine(msg);
|
LogHelper.Info(msg, "WMS");
|
if (response != "")
|
{
|
try
|
{
|
var dataResult = JsonConvert.DeserializeObject<ReturnResult>(response);
|
if (dataResult.ResultCode == 0)
|
{
|
bo = true;
|
}
|
else
|
{
|
LogHelper.Info($"接口返回异常,异常原因:{dataResult.ResultMsg}", "WMS");
|
}
|
}
|
catch (Exception ex)
|
{
|
LogHelper.Info($"同步更新物料状态错误,错误原因:{ex.Message}", "WMS");
|
}
|
}
|
else
|
{
|
msg = "[synUpdateMatlStatus]同步更新物料状态失败";
|
Console.WriteLine(msg);
|
LogHelper.Info(msg, "WMS");
|
}
|
return bo;
|
}
|
|
/// <summary>
|
/// 3.记录数据同步时间
|
/// </summary>
|
/// <returns></returns>
|
public static bool recordDataSynTime(RecordDataSynTimeModel model)
|
{
|
var msg = "";
|
bool bo = false;
|
var request = JsonConvert.SerializeObject(model);
|
var response = apiHelper.Post(baseUrl + "/api/Wms/recordDataSynTime", request);
|
msg = $"[recordDataSynTime] request={request} response={response}";
|
Console.WriteLine(msg);
|
LogHelper.Info(msg, "WMS");
|
if (response != "")
|
{
|
try
|
{
|
var dataResult = JsonConvert.DeserializeObject<ReturnResult>(response);
|
if (dataResult.ResultCode == 0)
|
{
|
bo = true;
|
}
|
else
|
{
|
LogHelper.Info($"接口返回异常,异常原因:{dataResult.ResultMsg}", "WMS");
|
}
|
}
|
catch (Exception ex)
|
{
|
LogHelper.Info($"记录数据同步时间错误,错误原因:{ex.Message}", "WMS");
|
}
|
}
|
else
|
{
|
msg = "[recordDataSynTime]记录数据同步时间失败";
|
Console.WriteLine(msg);
|
LogHelper.Info(msg, "WMS");
|
}
|
return bo;
|
}
|
|
/// <summary>
|
/// 4.查询上一次的记录时间
|
/// </summary>
|
/// <returns></returns>
|
public static SynDataTimeRecord findLastDataSynTime(RecordDataSynTimeModel model)
|
{
|
var msg = "";
|
var request = JsonConvert.SerializeObject(model);
|
var response = apiHelper.Post(baseUrl + "/api/Wms/findLastDataSynTime", request);
|
msg = $"[recordDataSynTime] request={request} response={response}";
|
Console.WriteLine(msg);
|
LogHelper.Info(msg, "WMS");
|
if (response != "")
|
{
|
try
|
{
|
var dataResult = JsonConvert.DeserializeObject<ReturnResult>(response);
|
if (dataResult.ResultCode == 0)
|
{
|
return (SynDataTimeRecord)dataResult.data;
|
}
|
else
|
{
|
LogHelper.Info($"接口返回异常,异常原因:{dataResult.ResultMsg}", "WMS");
|
}
|
}
|
catch (Exception ex)
|
{
|
LogHelper.Info($"查询上一次的记录时间错误,错误原因:{ex.Message}", "WMS");
|
}
|
}
|
else
|
{
|
msg = "[recordDataSynTime]查询上一次的记录时间失败";
|
Console.WriteLine(msg);
|
LogHelper.Info(msg, "WMS");
|
}
|
return null;
|
}
|
|
/// <summary>
|
/// 5.同步物料存放时间配置表
|
/// </summary>
|
/// <returns></returns>
|
public static bool synUpdateMatlTimeConfig(MatlTimeConfigModel model)
|
{
|
var msg = "";
|
bool bo = false;
|
var request = JsonConvert.SerializeObject(model);
|
var response = apiHelper.Post(baseUrl + "/api/Wms/recordDataSynTime", request);
|
msg = $"[synUpdateMatlTimeConfig] request={request} response={response}";
|
Console.WriteLine(msg);
|
LogHelper.Info(msg, "WMS");
|
if (response != "")
|
{
|
try
|
{
|
var dataResult = JsonConvert.DeserializeObject<ReturnResult>(response);
|
if (dataResult.ResultCode == 0)
|
{
|
bo = true;
|
}
|
else
|
{
|
LogHelper.Info($"接口返回异常,异常原因:{dataResult.ResultMsg}", "WMS");
|
}
|
}
|
catch (Exception ex)
|
{
|
LogHelper.Info($"同步物料存放时间配置表错误,错误原因:{ex.Message}", "WMS");
|
}
|
}
|
else
|
{
|
msg = "[synUpdateMatlTimeConfig]同步物料存放时间配置表失败";
|
Console.WriteLine(msg);
|
LogHelper.Info(msg, "WMS");
|
}
|
return bo;
|
}
|
|
public class MatlTimeConfigModel
|
{
|
public List<Overage> overages { get; set; }
|
}
|
|
public class SynDataTimeRecord
|
{
|
public string S_SYN_TIME { get; set; } // 同步时间
|
public int N_SYN_NUM { get; set; } // 同步数量
|
public string RECORD_TABLE { get; set; } // 1.物料条码记录表 2.胚胎条码状态表
|
|
}
|
public class RecordDataSynTimeModel
|
{
|
public string sysTime { get; set; } // 同步时间
|
public int synNum { get; set; } // 同步数量
|
public string recordTable { get; set; } // 1.物料条码记录表 2.胚胎条码状态表
|
|
}
|
|
public class SynUpdateMatlStatusModel
|
{
|
public List<UpdateMatlStatus> updateMatlStatuses { get; set; }
|
}
|
public class UpdateMatlStatus
|
{
|
public string bc_entried { get; set; }
|
public string jdge { get; set; }
|
}
|
|
|
public class SynMatlInformationModel
|
{
|
public List<MaltInformation> matlInformationList { get; set; }
|
}
|
}
|
}
|