using AlibabaSDK.Setting;
|
using Api.MessageReceive.Service;
|
using CommonUtil;
|
using Microsoft.AspNetCore.Http;
|
using Microsoft.AspNetCore.Mvc;
|
using Operater.DTO.TopMessage;
|
using System;
|
using System.Collections.Generic;
|
using System.Linq;
|
using System.Text;
|
using System.Threading.Tasks;
|
|
namespace Api.MessageReceive.Controllers
|
{
|
[Route(TopConstants.API_ROUTE)]
|
public class AlibabaMsgController : ControllerBase
|
{
|
|
public async Task<IActionResult> GetAlibabaTopMsg(string message, string _aop_signature)
|
{
|
try
|
{
|
LogUtil.Info($"message:{message}--sign:{_aop_signature}", "1688消息日志");
|
//验签
|
if (!AlibabaPlatHelper.MsgCheckSign(message, _aop_signature))
|
{//未通过
|
return Ok(false);
|
}
|
BaseAliMessage baseAliMessage = JSONUtil.JsonToObject<BaseAliMessage>(message);
|
|
//不入库消息
|
string notRecoredMessage = "PRODUCT_PRODUCT_INVENTORY_CHANGE";
|
if(!notRecoredMessage.Contains(baseAliMessage.type))
|
{//入库
|
await AliMessageService.RecordMessage(baseAliMessage);
|
}
|
|
//消息处理
|
switch (baseAliMessage.type)
|
{
|
//case "PRODUCT_PFT_OFFER_QUIT"://精选货源商品下架消息
|
// await AliMessageService.OfferQuitHandle(baseAliMessage);
|
// break;
|
//case "PRODUCT_PFT_OFFER_PRICE_MODIFY"://精选货源商品价格变动消息
|
// await AliMessageService.OfferPriceModify(baseAliMessage);
|
// break;
|
//case "PRODUCT_PRODUCT_INVENTORY_CHANGE"://1688商品库存变更消息(关系用户视角)
|
// await AliMessageService.InventoryChange(baseAliMessage);
|
// break;
|
//case "ORDER_BUYER_VIEW_BUYER_MAKE"://1688创建订单(买家视角)
|
//case "ORDER_BATCH_PAY"://1688订单批量支付状态同步消息
|
//case "ORDER_BUYER_VIEW_ORDER_PAY"://1688交易付款(买家视角)
|
//case "ORDER_BUYER_VIEW_ANNOUNCE_SENDGOODS"://1688订单发货(买家视角)
|
//case "ORDER_BUYER_VIEW_ORDER_SELLER_CLOSE"://1688卖家关闭订单(买家视角)
|
//case "ORDER_BUYER_VIEW_ORDER_PRICE_MODIFY"://1688修改订单价格(买家视角
|
//case "ORDER_BUYER_VIEW_ORDER_SELLER_MODIFY_ADRESS"://商家修改订单地址(买家视角)
|
//case "LOGISTICS_MAIL_NO_CHANGE"://物流单号修改消息
|
//case "ORDER_BUYER_VIEW_PART_PART_SENDGOODS"://1688订单部分发货(买家视角
|
// await AliMessageService.TradeMessageSend(message);
|
// break;
|
default:
|
await AliMessageService.TradeMessageSend(message, baseAliMessage);
|
break;
|
}
|
}
|
catch (Exception e)
|
{
|
LogUtil.Info($"【消息】{message}--【错误】{e.ToString()}", "1688消息处理失败");
|
}
|
return Ok(true);
|
}
|
|
|
}
|
}
|