using CommonUtil;
using CommonUtil.RabbitMQ;
using Operater.DTO.TopMessage;
using System;
using TradeInterflow.Handle;
using static CommonUtil.RabbitMQ.MQClientFullChannel;
namespace TradeInterflow
{
class Program
{
///
/// 订单互通处理工具
///
///
static void Main(string[] args)
{
Console.Title = "订单互通工具";
MainMethod();
Console.ReadLine();
}
///
/// 消息分发处理
///
///
public static void HandleExecute(string message)
{
TradeMqMessage tradeMqMessage = JSONUtil.JsonToObject(message);
LogUtil.Info(message, "日志");
switch (tradeMqMessage.MsgType)
{
case "yz_trade"://有赞订单
YzTradeHandle.HandleExecute(tradeMqMessage.MsgBody);
break;
case "ali_trade"://1688订单
AliTradeHandle.HandleExecute(tradeMqMessage.MsgBody);
break;
default:
break;
}
}
#region 主方法
private static void MainMethod()
{
try
{
MQClientFullChannel mQClientFullChannel = new MQClientFullChannel("trade_interflow");
mQClientFullChannel.reConnectTime = 8000;
mQClientFullChannel.OnMessage += OnMessage;
mQClientFullChannel.OnConnected += OnConnected;
mQClientFullChannel.OnDisConnected += OnDisConnected;
mQClientFullChannel.Connect(0);
Console.ReadLine();
}
catch
{
}
}
public static void OnMessage(EventMessageResultCluster result)
{
HandleExecute(result.Content);
}
public static void OnConnected(MQClientParam param)
{
Console.WriteLine(JSONUtil.ObjectToJson(param) + " --> 链接成功");
}
public static void OnDisConnected(MQClientParam param)
{
Console.WriteLine(JSONUtil.ObjectToJson(param) + " --> 链接关闭");
}
#endregion
}
}