123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142 |
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Web;
- using Microsoft.Extensions.Logging;
- using Microsoft.Extensions.Options;
- using Microsoft.AspNetCore.Mvc;
- using Microsoft.AspNetCore.Http;
- using System.IO;
- using Library;
- using LitJson;
- using System.Threading.Tasks;
- using System.Reflection.Metadata.Ecma335;
- namespace MySystem.Areas.Api.Controllers
- {
- [Area("Api")]
- [Route("Api/v1/[controller]/[action]")]
- public class Kq3Controller : Admin.Controllers.BaseController
- {
- public Kq3Controller(IHttpContextAccessor accessor, ILogger<Admin.Controllers.BaseController> logger, IOptions<Setting> setting) : base(accessor, logger, setting)
- {
- }
- #region 接收统一地址通知
- [HttpPost]
- [Route("/kxs3/notice/{BrandId:int}")]
- public string Notice(IFormCollection form, int BrandId = 1)
- {
- string requestMes = "{";
- LogHelper.Instance.WriteLog(DateTime.Now.ToString(), "接收统一地址通知");
- foreach (string key in form.Keys)
- {
- LogHelper.Instance.WriteLog(key + ":" + form[key].ToString(), "接收统一地址通知");
- if (key == "dataJson" || key == "extData")
- {
- requestMes += "\"" + key + "\":" + form[key].ToString() + ",";
- }
- else
- {
- requestMes += "\"" + key + "\":\"" + form[key].ToString() + "\",";
- }
- }
- requestMes = requestMes.TrimEnd(',');
- LogHelper.Instance.WriteLog("\n\n", "接收统一地址通知");
- requestMes += "}";
- string content = Newtonsoft.Json.JsonConvert.SerializeObject(Request.Headers) + "#cut#" + requestMes + "#cut#" + BrandId;
- RedisDbconn.Instance.AddList("SpSingleNotice", content);
- return "SUCCESS";
- }
- #endregion
- #region 接收统一地址通知
- [HttpPost]
- [Route("/kxs/lkb/{Path}")]
- public Dictionary<string, object> publicnotice(string Path)
- {
- StreamReader sr = new StreamReader(Request.Body);
- string requestMes = sr.ReadToEnd();
- if (string.IsNullOrEmpty(requestMes))
- {
- return new Dictionary<string, object>();
- }
- string content = Newtonsoft.Json.JsonConvert.SerializeObject(Request.Headers) + "#cut#" + requestMes;
- LogHelper.Instance.WriteLog(content, "接收来客吧L版-" + Path + "通知");
- string fileName = function.MD5_16(Guid.NewGuid().ToString());
- if(Path == "terminal-bind")
- {
- RedisDbconn.Instance.AddList("kxs_bind_list_27", content + "#cut#" + fileName);
- // function.WritePage("/redis/kxs_bind_list_27/", fileName + ".txt", content);
- }
- else if(Path == "trade")
- {
- RedisDbconn.Instance.AddList("kxs_trade_list_27", content + "#cut#" + fileName);
- // function.WritePage("/redis/kxs_trade_list_27/", fileName + ".txt", content);
- }
- else if(Path == "rebate")
- {
- RedisDbconn.Instance.AddList("kxs_rebate_list_27", content + "#cut#" + fileName);
- // function.WritePage("/redis/kxs_rebate_list_27/", fileName + ".txt", content);
- }
- string sign = "";
- Dictionary<string, object> back = PublicImportDataService.Instance.LkbCallBack(out sign);
- Response.Headers.Add("Content-Type", "application/json");
- Response.Headers.Add("X-Sign", sign);
- return back;
- }
- #endregion
- #region 接收统一地址通知
- [HttpPost]
- [Route("/wifi/{Path}")]
- public Dictionary<string, object> wifinotice(string Path)
- {
- StreamReader sr = new StreamReader(Request.Body);
- string requestMes = sr.ReadToEnd();
- if (string.IsNullOrEmpty(requestMes))
- {
- return new Dictionary<string, object>();
- }
- string content = Newtonsoft.Json.JsonConvert.SerializeObject(Request.Headers) + "#cut#" + requestMes;
- // LogHelper.Instance.WriteLog(content, "接收WIFI数据-" + Path + "通知");
- function.WriteLog(content, "接收WIFI数据-" + Path + "通知");
- RedisDbconn.Instance.AddList("wifi_data_list", Path + "#cut#" + requestMes);
- Dictionary<string, object> dic = new Dictionary<string, object>();
- dic.Add("code", 200);
- dic.Add("msg", "ok");
- return dic;
- }
- #endregion
- #region 接收联动掌中宝推送数据
- [HttpPost]
- [Route("/kxs3/notice/ld")]
- public string NoticeLd()
- {
- StreamReader sr = new StreamReader(Request.Body);
- string requestMes = sr.ReadToEnd();
- if (string.IsNullOrEmpty(requestMes))
- {
- return "FAIL";
- }
- string content = Newtonsoft.Json.JsonConvert.SerializeObject(Request.Headers) + "#cut#" + requestMes;
- LogHelper.Instance.WriteLog(DateTime.Now.ToString() + content, "联动掌中宝推送数据", "34");
- // function.WriteLog(DateTime.Now.ToString() + content, "联动掌中宝推送数据");
- JsonData jsonObj = JsonMapper.ToObject(requestMes);
- string serviceType = jsonObj["serviceType"].ToString();
- if(serviceType == "MATERIAL_BIND_STATUS_NOTIFY") RedisDbconn.Instance.AddList("kxs_bind_list_34", content);
- else if(serviceType == "PAY_ORDER_NOTIFY") RedisDbconn.Instance.AddList("kxs_trade_list_34", content);
- else if(serviceType == "CUSTOMER_INFO_REGISTER_NOTIFY") RedisDbconn.Instance.AddList("kxs_merchant_list_34", content);
- else if(serviceType == "MATERIALS_ACTIVATION_NOTIFY") RedisDbconn.Instance.AddList("kxs_active_list_34", content);
- else if(serviceType == "CUSTOMER_LAST_RATE_NOTIFY") RedisDbconn.Instance.AddList("kxs_rate_list_34", content);
- else RedisDbconn.Instance.AddList("kxs_ld_zzb_list", content);
- return "OK";
- }
- #endregion
- }
- }
|