using Newtonsoft.Json;
|
using System;
|
using System.Collections.Generic;
|
using System.Linq;
|
using System.Net;
|
using System.Net.Http;
|
using System.Web.Http;
|
using VueWebApi.Models;
|
using VueWebApi.Tools;
|
using VueWebApi.Util;
|
|
namespace VueWebApi.Controllers
|
{
|
[RoutePrefix(prefix: "api/Message")]
|
[ControllerGroup("T8授权管理", "在线接口")]
|
public class MessageController : ApiController
|
{
|
[Route(template: "OAuth")]
|
[HttpGet]
|
public string OAuth(string code, string state)
|
{
|
Console.WriteLine($"Code:{code}");
|
return code;
|
}
|
|
[Route(template: "Receive")]
|
[HttpPost]
|
public dynamic Receive([FromBody] ChanjetEncryptMsg encryptMsg)
|
{
|
string enMsg = encryptMsg.GetEncryptMsg();
|
|
Console.WriteLine($"解密前的消息{enMsg}");
|
String decryptMsg = OpenapiHelper.AesDecrypt(enMsg, config.Key_encryptKey);
|
Console.WriteLine($"解密后消息{decryptMsg}");
|
|
MessageBase message = JsonConvert.DeserializeObject<MessageBase>(decryptMsg);
|
object retObj = null;
|
try
|
{
|
switch (message.msgType)
|
{
|
case "APP_TEST":
|
retObj = DealTestMsg(message);
|
break;
|
case "APP_TICKET":
|
retObj = DealTicketMsg(message);
|
break;
|
case "TEMP_AUTH_CODE":
|
retObj = DealOrgTempAuthMsg(message);
|
break;
|
case "PAY_ORDER_SUCCESS":
|
retObj = DealOrderPayMsg(message);
|
break;
|
default:
|
break;
|
}
|
}
|
catch (Exception ex)
|
{
|
throw ex;
|
}
|
return retObj;
|
}
|
|
private object DealOrderPayMsg(MessageBase message)
|
{
|
throw new NotImplementedException();
|
}
|
|
private object DealOrgTempAuthMsg(MessageBase message)
|
{
|
LogHelper.WriteLogData("开始OrgTempAuthContent");
|
OrgTempAuthContent content = JsonConvert.DeserializeObject<OrgTempAuthContent>(message.bizContent.ToString());
|
Console.WriteLine($"OrgTempAuthCode:{content.tempAuthCode}");
|
LogHelper.WriteLogData("结束OrgTempAuthContent");
|
return $"OrgTempAuthCode:{content.tempAuthCode}";
|
}
|
|
private object DealTicketMsg(MessageBase message)
|
{
|
LogHelper.WriteLogData("开始AppTicket");
|
AppTicketContent content = JsonConvert.DeserializeObject<AppTicketContent>(message.bizContent.ToString());
|
Console.WriteLine($"AppTicket:{content.appTicket}");
|
LogHelper.WriteLogData("结束AppTicket");
|
return $"AppTicket:{content.appTicket}";
|
}
|
|
private object DealTestMsg(MessageBase message)
|
{
|
Dictionary<string, string> dic = new Dictionary<string, string>
|
{
|
{ "result","success"}
|
};
|
return JsonConvert.SerializeObject(dic);
|
}
|
}
|
}
|