提交代码
This commit is contained in:
@@ -1,25 +1,34 @@
|
||||
using Model;
|
||||
using Newtonsoft.Json;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using RestSharp;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Net;
|
||||
using System.Net.Configuration;
|
||||
using System.Security.Policy;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using ResponeData = Model.ResponeData;
|
||||
|
||||
namespace BLL
|
||||
{
|
||||
/// <summary>
|
||||
/// 集团服务类
|
||||
/// </summary>
|
||||
public static class ServerService
|
||||
{
|
||||
/// <summary>
|
||||
/// 获取集团token
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static Model.TokenItem GetCNCECToken()
|
||||
{
|
||||
string CNCECPath = SysConstSetService.CNCECPath;
|
||||
|
||||
string baseurl = CNCECPath + "/api/Common/GetToken";
|
||||
var client = new RestClient(baseurl);
|
||||
client.Timeout = -1;
|
||||
client.Timeout = 2000;//获取token设置超时时间为3秒
|
||||
var request = new RestRequest(Method.POST);
|
||||
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
|
||||
var thisUnit = CommonService.GetIsThisUnit();
|
||||
@@ -28,45 +37,73 @@ namespace BLL
|
||||
//request.AddJsonBody(JsonBody);
|
||||
IRestResponse response = client.Execute(request);
|
||||
Console.WriteLine(response.Content);
|
||||
var responeData = JsonConvert.DeserializeObject<Model.ResponeData>(response.Content.ToString());
|
||||
TokenItem tokenItem = new TokenItem();
|
||||
if (responeData.code == 1 && string.IsNullOrEmpty(responeData.message))
|
||||
|
||||
try
|
||||
{
|
||||
var token = JsonConvert.DeserializeObject<Model.TokenItem>(responeData.data.ToString());
|
||||
tokenItem.Token = token.Token.ToString();
|
||||
tokenItem.ExpiryTime = token.ExpiryTime.ToString();
|
||||
SysConstSetService.SetToken(tokenItem.Token);
|
||||
SysConstSetService.SetTokenExpirationTime(tokenItem.ExpiryTime);
|
||||
var responeData = JsonConvert.DeserializeObject<Model.ResponeData>(response.Content.ToString());
|
||||
if (responeData != null && responeData.code == 1 && string.IsNullOrEmpty(responeData.message))
|
||||
{
|
||||
var token = JsonConvert.DeserializeObject<Model.TokenItem>(responeData.data.ToString());
|
||||
tokenItem.Token = token.Token.ToString();
|
||||
tokenItem.ExpiryTime = token.ExpiryTime.ToString();
|
||||
SysConstSetService.SetToken(tokenItem.Token);
|
||||
SysConstSetService.SetTokenExpirationTime(tokenItem.ExpiryTime);
|
||||
}
|
||||
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
}
|
||||
|
||||
return tokenItem;
|
||||
|
||||
}
|
||||
/// <summary>
|
||||
/// 推送数据至集团(post接口)
|
||||
/// </summary>
|
||||
/// <param name="JsonBody"></param>
|
||||
/// <param name="apiurl"></param>
|
||||
/// <returns></returns>
|
||||
public static Model.ReturnData PushCNCEC(string JsonBody, string apiurl)
|
||||
{
|
||||
Model.ReturnData responeData = new Model.ReturnData();
|
||||
string CNCECPath = SysConstSetService.CNCECPath;
|
||||
if (string.IsNullOrEmpty(CNCECPath))
|
||||
try
|
||||
{
|
||||
responeData.code = 0;
|
||||
responeData.message = "接口地址为空,请配置!";
|
||||
return responeData;
|
||||
Model.ReturnData responeData = new Model.ReturnData();
|
||||
string CNCECPath = SysConstSetService.CNCECPath;
|
||||
//CNCECPath = "http://localhost:7143";
|
||||
if (string.IsNullOrEmpty(CNCECPath))
|
||||
{
|
||||
responeData.code = 0;
|
||||
responeData.message = "接口地址为空,请配置!";
|
||||
return responeData;
|
||||
|
||||
}
|
||||
string baseurl = CNCECPath + apiurl;
|
||||
var client = new RestClient(baseurl);
|
||||
client.Timeout = -1;
|
||||
var request = new RestRequest(Method.POST);
|
||||
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
|
||||
var tokenItem = GetToken();
|
||||
request.AddHeader("token", tokenItem.Token);
|
||||
request.AddJsonBody(JsonBody);
|
||||
IRestResponse response = client.Execute(request);
|
||||
APICommonService.SaveSysHttpLog("api_Out", baseurl, response.Content);
|
||||
var returnData = JsonConvert.DeserializeObject<Model.ResponeData>(response.Content.ToString());
|
||||
responeData.code = returnData.code;
|
||||
responeData.message = returnData.message;
|
||||
return responeData;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
||||
throw;
|
||||
}
|
||||
string baseurl = CNCECPath + apiurl;
|
||||
var client = new RestClient(baseurl);
|
||||
client.Timeout = -1;
|
||||
var request = new RestRequest(Method.POST);
|
||||
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
|
||||
var tokenItem = GetToken();
|
||||
request.AddHeader("token", tokenItem.Token);
|
||||
request.AddJsonBody(JsonBody);
|
||||
IRestResponse response = client.Execute(request);
|
||||
APICommonService.SaveSysHttpLog("api_Out", baseurl, response.Content);
|
||||
var returnData = JsonConvert.DeserializeObject<Model.ResponeData>(response.Content.ToString());
|
||||
responeData.code = returnData.code;
|
||||
responeData.message = returnData.message;
|
||||
return responeData;
|
||||
}
|
||||
/// <summary>
|
||||
/// 获取token
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static Model.TokenItem GetToken()
|
||||
{
|
||||
Model.TokenItem tokenItem = new Model.TokenItem();
|
||||
@@ -84,6 +121,182 @@ namespace BLL
|
||||
}
|
||||
return tokenItem;
|
||||
}
|
||||
/// <summary>
|
||||
/// 从集团获取数据(Get接口)
|
||||
/// </summary>
|
||||
/// <param name="apiurl">接口地址</param>
|
||||
/// <param name="parameters">parameters参数</param>
|
||||
/// <param name="timeout">超时时间</param>
|
||||
/// <returns></returns>
|
||||
public static Model.ResponeData GerDataFromCncec(string apiurl, Dictionary<string, string> parameters, int? timeout = null)
|
||||
{
|
||||
Model.ResponeData responeData = new Model.ResponeData();
|
||||
|
||||
try
|
||||
{
|
||||
|
||||
string CNCECPath = SysConstSetService.CNCECPath;
|
||||
if (string.IsNullOrEmpty(CNCECPath))
|
||||
{
|
||||
responeData.code = 0;
|
||||
responeData.message = "接口地址为空,请配置!";
|
||||
return responeData;
|
||||
|
||||
}
|
||||
string baseurl = CNCECPath + apiurl;
|
||||
var client = new RestClient(baseurl);
|
||||
client.Timeout = timeout ?? -1;
|
||||
var request = new RestRequest(Method.GET);
|
||||
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
|
||||
var tokenItem = GetToken();
|
||||
if (tokenItem == null || string.IsNullOrEmpty(tokenItem.Token))
|
||||
{
|
||||
responeData.code = 0;
|
||||
responeData.message = "token 不存在!";
|
||||
return responeData;
|
||||
}
|
||||
|
||||
request.AddHeader("token", tokenItem.Token);
|
||||
if (parameters != null)
|
||||
{
|
||||
foreach (var parameter in parameters)
|
||||
{
|
||||
request.AddParameter(parameter.Key, parameter.Value);
|
||||
}
|
||||
}
|
||||
|
||||
IRestResponse response = client.Execute(request);
|
||||
APICommonService.SaveSysHttpLog("api_Out", baseurl, response.Content);
|
||||
var returnData = JsonConvert.DeserializeObject<Model.ResponeData>(response.Content.ToString());
|
||||
if (returnData != null)
|
||||
{
|
||||
responeData.code = returnData.code;
|
||||
responeData.message = returnData.message;
|
||||
responeData.data = returnData.data;
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
responeData.code = -1;
|
||||
responeData.message = "接口有误";
|
||||
}
|
||||
|
||||
return responeData;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
responeData.code = 0;
|
||||
responeData.message = ex.ToString();
|
||||
return responeData;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 获取安全合规列表
|
||||
/// </summary>
|
||||
/// <param name="type">类型(1-法律法规;2-标准规范;3-规章制度;4-管理规定)</param>
|
||||
/// <returns></returns>
|
||||
public static async Task<List<Model.SafeLawItem>> GetSafeLawListByTypeAsync(string type)
|
||||
{
|
||||
// 使用 lambda 表达式来调用 getSafeLawListByType
|
||||
return await Task.Run(() => GetSafeLawListByType(type));
|
||||
}
|
||||
/// <summary>
|
||||
/// 获取安全合规列表
|
||||
/// </summary>
|
||||
/// <param name="type">类型(1-法律法规;2-标准规范;3-规章制度;4-管理规定)</param>
|
||||
/// <returns></returns>
|
||||
public static List<Model.SafeLawItem> GetSafeLawListByType(string type)
|
||||
{
|
||||
List<SafeLawItem> result = new List<SafeLawItem>();
|
||||
string baseurl = "/api/Resources/getSafeLawListByType";
|
||||
Dictionary<string, string> dic = new Dictionary<string, string>()
|
||||
{
|
||||
{"type",type},
|
||||
{"pageIndex","0"}
|
||||
|
||||
};
|
||||
var returnData = GerDataFromCncec(baseurl, dic, 3000);
|
||||
if (returnData != null && returnData.code == 1)
|
||||
{
|
||||
JObject jt = Newtonsoft.Json.JsonConvert.DeserializeObject<JObject>(returnData.data.ToString());
|
||||
var data = jt["getDataList"].ToString();
|
||||
result = JsonConvert.DeserializeObject<List<Model.SafeLawItem>>(data);
|
||||
|
||||
}
|
||||
return result;
|
||||
}
|
||||
/// <summary>
|
||||
/// 获取公告列表
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static List<Model.NoticeOutput> GetNoticeList()
|
||||
{
|
||||
List<NoticeOutput> result = new List<NoticeOutput>();
|
||||
string baseurl = "/api/Notice/getNoticeList";
|
||||
Dictionary<string, string> dic = new Dictionary<string, string>()
|
||||
{
|
||||
{"pageIndex","0"}
|
||||
|
||||
};
|
||||
var returnData = GerDataFromCncec(baseurl, dic, 4000);
|
||||
if (returnData != null && returnData.code == 1)
|
||||
{
|
||||
JObject jt = Newtonsoft.Json.JsonConvert.DeserializeObject<JObject>(returnData.data.ToString());
|
||||
var data = jt["getDataList"].ToString();
|
||||
result = JsonConvert.DeserializeObject<List<Model.NoticeOutput>>(data);
|
||||
|
||||
}
|
||||
return result;
|
||||
}
|
||||
/// <summary>
|
||||
/// 获取公告列表
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static async Task<List<Model.NoticeOutput>> GetNoticeListAsync()
|
||||
{
|
||||
return await Task.Run(() => GetNoticeList());
|
||||
}
|
||||
/// <summary>
|
||||
/// 获取新闻列表
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static List<Model.NoticeOutput> GetNewsList()
|
||||
{
|
||||
List<NoticeOutput> result = new List<NoticeOutput>();
|
||||
string baseurl = "/api/Notice/getNewsList";
|
||||
Dictionary<string, string> dic = new Dictionary<string, string>()
|
||||
{
|
||||
{"pageIndex","0"}
|
||||
|
||||
};
|
||||
var returnData = GerDataFromCncec(baseurl, dic, 3000);
|
||||
if (returnData != null && returnData.code == 1)
|
||||
{
|
||||
JObject jt = Newtonsoft.Json.JsonConvert.DeserializeObject<JObject>(returnData.data.ToString());
|
||||
var data = jt["getDataList"].ToString();
|
||||
result = JsonConvert.DeserializeObject<List<Model.NoticeOutput>>(data);
|
||||
|
||||
}
|
||||
return result;
|
||||
}
|
||||
/// <summary>
|
||||
/// 获取新闻列表
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static async Task<List<Model.NoticeOutput>> GetNewsListAsync()
|
||||
{
|
||||
return await Task.Run(() => GetNewsList());
|
||||
}
|
||||
/// <summary>
|
||||
/// 获取QHSEUrl
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static string GetQHSEUrl()
|
||||
{
|
||||
var result = GerDataFromCncec("/api/Data/GetWebUrl", null, 3000).data?.ToString();
|
||||
return result;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user