using Confluent.Kafka;
|
using Newtonsoft.Json;
|
using System;
|
using System.Collections.Generic;
|
using System.Linq;
|
using System.Text;
|
using System.Threading.Tasks;
|
using System.Xml.Linq;
|
using WIDESEA_Comm.LogInfo;
|
using WIDESEA_Comm.MES_Info;
|
using WIDESEA_Core.EFDbContext;
|
using WIDESEA_WMS.IRepositories;
|
using WIDESEA_WMS.Repositories;
|
|
namespace WIDESEA_WMS.Common
|
{
|
public class ToMes
|
{
|
public static void InfoToMes()
|
{
|
try
|
{
|
VOLContext context = new VOLContext();
|
Idt_info_to_mesRepository mesRepository = new dt_info_to_mesRepository(context);
|
var infos = mesRepository.Find(x => !x.State).OrderBy(x => x.Createtime).ToList();
|
foreach (var info in infos)
|
{
|
try
|
{
|
var mesData = Request.RequestData(info.Info, MESAPIAddress.IPAddress_MES + info.ActionName);
|
if (mesData.Contains("连接尝试失败")) throw new Exception(mesData);
|
if (mesData.Contains("向一个无法连接的网络尝试了一个套接字操作")) throw new Exception(mesData);
|
var requestMes = JsonConvert.DeserializeObject<MES_Response>(mesData);
|
|
if (requestMes.code == "200" && requestMes.Type == "success")
|
{
|
info.State = true;
|
info.Successtime = DateTime.Now;
|
info.Message = requestMes.message;
|
}
|
else
|
throw new Exception(requestMes.message);
|
}
|
catch (Exception ex)
|
{
|
info.Message = ex.Message;
|
}
|
mesRepository.Update(info, x => new { x.State, x.Successtime, x.Message }, true);
|
}
|
}
|
catch (Exception ex)
|
{
|
throw;
|
}
|
|
}
|
}
|
}
|