#regIOn 公众号系统参数
/// <summary>
/// 更新系统配置文件
/// </summary>
internal void updateConfig()
{
ClassData data = new ClassData();
DataSet ds = data.RunProcReturn("SELECT appid,appsecret FROM config WHERE id=1");
int ln = ds.Tables[0].Rows.Count;
if (ln == 1)
{
string appID = ds.Tables[0].Rows[0][0].ToString();
string appSecret = ds.Tables[0].Rows[0][1].ToString();
string url = string.Format("https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid={0}&secret={1}", appID, appSecret);
string htmlstr = GetWebInfo(url);
string access_token = "";
try
{
var dynamicObject = Newtonsoft.Json.JsonConvert.DeserializeObject<dynamic>(htmlstr);
access_token = DynamicObject.access_token;
}
catch
{
}
if (access_token != null && access_token.Trim() != "")
{
url = string.Format("https://api.weixin.qq.com/cgi-bin/ticket/getticket?access_token={0}&type=jsapi", access_token);
htmlstr = GetWebInfo(url);
string jsapi_ticket = "";
try
{
var DynamicObject2 = Newtonsoft.Json.JsonConvert.DeserializeObject<dynamic>(htmlstr);
jsapi_ticket = DynamicObject2.ticket;
}
catch
{
}
string sql = "UPDATE config SET access_token=@access_token,tokentime=GETDATE() ";
if (jsapi_ticket != null && jsapi_ticket.Trim() != "")
{
sql = ",jsapi_ticket=@jsapi_ticket,tickettime=GETDATE() ";
}
sql = " WHERE id=1";
SqlParameter[] prams = {
data.MakeInParam("@access_token",SqlDbType.VarChar ,255, access_token),
data.MakeInParam("@jsapi_ticket",SqlDbType.VarChar ,255,jsapi_ticket==null?"": jsapi_ticket)
};
ln = data.RunProc(sql, prams);
}
}
}
/// <summary>
/// 获取网页结果
/// </summary>
/// <param name="url"></param>
/// <returns></returns>
internal string GetWebInfo(string url)
{
string htmlstr = "";
try
{
HttpWebrequest request = (HttpWebRequest)HttpWebRequest.Create(url);
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
System.Text.Encoding encoding = System.Text.Encoding.GetEncoding("utf-8");
System.IO.Streamreader reader = new System.IO.StreamReader(response.GetResponseStream(), encoding);
htmlstr = reader.ReadToEnd();
reader.Dispose();
reader.Close();
response.Close();
}
catch (Exception ex)
{
htmlstr = ex.Message;
}
return htmlstr;
}
/// <summary>
/// post提交网页信息
/// </summary>
/// <param name="url"></param>
/// <param name="postData"></param>
/// <returns></returns>
internal string Post(string url, string postData)
{
string htmlstr = "";
HttpWebRequest request = (HttpWebRequest)WebRequest.Create("");
byte[] data = Encoding.ASCII.GetBytes(postData);
request.Method = "POST";
request.ContentType = "application/x-www-form-urlencoded";
request.ContentLength = data.Length;
using (var stream = request.GetRequestStream())
{
stream.Write(data, 0, data.Length);
}
var response = (HttpWebResponse)request.GetResponse();
htmlstr = new System.IO.StreamReader(response.GetResponseStream()).ReadToEnd();
return htmlstr;
}
/// <summary>
/// 获取微信公众号access_token
/// </summary>
/// <param name="msg"></param>
/// <param name="access_token"></param>
/// <returns></returns>
public bool UserWxAccessTokenGet(out string msg, out string access_token)
{
bool mk = false;
msg = "";
access_token = "";
ClassData data = new ClassData();
try
{
bool h = false;
while (!h)
{
string sql = "SELECT tokentime,access_token FROM config WHERE id=1";
DataSet ds = data.RunProcReturn(sql);
if (ds.Tables[0].Rows.Count == 1)
{
if (ds.Tables[0].Rows[0][0] == null || ds.Tables[0].Rows[0][0] == DBNull.Value)
{
updateConfig();
}
else
{
if (Convert.ToDateTime(ds.Tables[0].Rows[0][0]).AddMinutes(115) <= DateTime.Now)
{
updateConfig();
}
else
{
access_token = ds.Tables[0].Rows[0][1].ToString();
if (op.checkNull(access_token))
{
updateConfig();
}
else
{
h = true;
mk = true;
}
}
}
}
else
{
msg = "配置不存在!";
break;
}
}
}
catch (Exception ex)
{
msg = ex.Message; op.errorMail(ex.Message "错误原因:" ex.StackTrace);
}
return mk;
}
/// <summary>
/// 获取微信公众号APPid
/// </summary>
/// <returns></returns>
public string APPid()
{
try
{
ClassData data = new ClassData();
string sql = "SELECT appid FROM config WHERE id=1";
DataSet ds = data.RunProcReturn(sql);
if (ds.Tables[0].Rows.Count == 1)
{
return ds.Tables[0].Rows[0][0].ToString();
}
}
catch (Exception ex)
{
op.errorMail(ex.Message "错误原因:" ex.StackTrace);
}
return "";
}
/// <summary>
/// 微信小程序APPid
/// </summary>
/// <returns></returns>
public string WxAppId()
{
try
{
ClassData data = new ClassData();
string sql = "SELECT wxappid FROM config WHERE id=1";
DataSet ds = data.RunProcReturn(sql);
if (ds.Tables[0].Rows.Count == 1)
{
return ds.Tables[0].Rows[0][0].ToString();
}
}
catch (Exception ex)
{
op.errorMail(ex.Message "错误原因:" ex.StackTrace);
}
return "";
}
/// <summary>
/// 微信小程序App Secre
/// </summary>
/// <returns></returns>
public string WxAppSecret()
{
try
{
ClassData data = new ClassData();
string sql = "SELECT wxappsecret FROM config WHERE id=1";
DataSet ds = data.RunProcReturn(sql);
if (ds.Tables[0].Rows.Count == 1)
{
return ds.Tables[0].Rows[0][0].ToString();
}
}
catch (Exception ex)
{
op.errorMail(ex.Message "错误原因:" ex.StackTrace);
}
return "";
}
/// <summary>
/// 百度小程序APPid
/// </summary>
/// <returns></returns>
public string BdAppId()
{
try
{
ClassData data = new ClassData();
string sql = "SELECT bdappid FROM config WHERE id=1";
DataSet ds = data.RunProcReturn(sql);
if (ds.Tables[0].Rows.Count == 1)
{
return ds.Tables[0].Rows[0][0].ToString();
}
}
catch (Exception ex)
{
op.errorMail(ex.Message "错误原因:" ex.StackTrace);
}
return "";
}
/// <summary>
/// 百度小程序App Key
/// </summary>
/// <returns></returns>
public string BdAppKey()
{
try
{
ClassData data = new ClassData();
string sql = "SELECT bdappkey FROM config WHERE id=1";
DataSet ds = data.RunProcReturn(sql);
if (ds.Tables[0].Rows.Count == 1)
{
return ds.Tables[0].Rows[0][0].ToString();
}
}
catch (Exception ex)
{
op.errorMail(ex.Message "错误原因:" ex.StackTrace);
}
return "";
}
/// <summary>
/// 百度App Secret (智能小程序密匙):
/// </summary>
/// <returns></returns>
public string BdAppSecret()
{
try
{
ClassData data = new ClassData();
string sql = "SELECT bdappsecret FROM config WHERE id=1";
DataSet ds = data.RunProcReturn(sql);
if (ds.Tables[0].Rows.Count == 1)
{
return ds.Tables[0].Rows[0][0].ToString();
}
}
catch (Exception ex)
{
op.errorMail(ex.Message "错误原因:" ex.StackTrace);
}
return "";
}
/// <summary>
/// 百度支付dealId (dealId):
/// </summary>
/// <returns></returns>
public string bdpaydealId()
{
try
{
ClassData data = new ClassData();
string sql = "SELECT bdpaydealId FROM config WHERE id=1";
DataSet ds = data.RunProcReturn(sql);
if (ds.Tables[0].Rows.Count == 1)
{
return ds.Tables[0].Rows[0][0].ToString();
}
}
catch (Exception ex)
{
op.errorMail(ex.Message "错误原因:" ex.StackTrace);
}
return "";
}
/// <summary>
/// 百度支付appKey (bdpayappKey):
/// </summary>
/// <returns></returns>
public string bdpayappKey()
{
try
{
ClassData data = new ClassData();
string sql = "SELECT bdpayappKey FROM config WHERE id=1";
DataSet ds = data.RunProcReturn(sql);
if (ds.Tables[0].Rows.Count == 1)
{
return ds.Tables[0].Rows[0][0].ToString();
}
}
catch (Exception ex)
{
op.errorMail(ex.Message "错误原因:" ex.StackTrace);
}
return "";
}
/// <summary>
/// 百度支付公钥 (publickey):
/// </summary>
/// <returns></returns>
public string bdpaypublickey()
{
try
{
ClassData data = new ClassData();
string sql = "SELECT bdpaypublickey FROM config WHERE id=1";
DataSet ds = data.RunProcReturn(sql);
if (ds.Tables[0].Rows.Count == 1)
{
return ds.Tables[0].Rows[0][0].ToString();
}
}
catch (Exception ex)
{
op.errorMail(ex.Message "错误原因:" ex.StackTrace);
}
return "";
}
/// <summary>
/// 百度支付私钥 (rsa_private_key):
/// </summary>
/// <returns></returns>
public string bd_rsa_private_key()
{
try
{
ClassData data = new ClassData();
string sql = "SELECT rsa_private_key FROM [config] WHERE id=1";
DataSet ds = data.RunProcReturn(sql);
if (ds.Tables[0].Rows.Count == 1)
{
return ds.Tables[0].Rows[0][0].ToString();
}
}
catch (Exception ex)
{
op.errorMail(ex.Message "错误原因:" ex.StackTrace);
}
return "";
}
/// <summary>
/// 获取微信运费
/// </summary>
/// <returns></returns>
public decimal Freight()
{
decimal appid = 12;
try
{
ClassData data = new ClassData();
string sql = "SELECT freight FROM config WHERE id=1";
DataSet ds = data.RunProcReturn(sql);
if (ds.Tables[0].Rows.Count == 1)
{
return Convert.ToDecimal(ds.Tables[0].Rows[0][0]);
}
}
catch (Exception ex)
{
op.errorMail(ex.Message "错误原因:" ex.StackTrace);
}
return appid;
}
/// <summary>
/// 获取免运费金额
/// </summary>
/// <returns></returns>
public decimal FreeFreight()
{
decimal appid = 10000;
try
{
ClassData data = new ClassData();
string sql = "SELECT freefreight FROM config WHERE id=1";
DataSet ds = data.RunProcReturn(sql);
if (ds.Tables[0].Rows.Count == 1)
{
return Convert.ToDecimal(ds.Tables[0].Rows[0][0]);
}
}
catch (Exception ex)
{
op.errorMail(ex.Message "错误原因:" ex.StackTrace);
}
return appid;
}
/// <summary>
/// 获取微信公众号APPid
/// </summary>
/// <returns></returns>
public string APPSECRET()
{
string APPSECRET = "";
try
{
ClassData data = new ClassData();
string sql = "SELECT APPSECRET FROM config WHERE id=1";
DataSet ds = data.RunProcReturn(sql);
if (ds.Tables[0].Rows.Count == 1)
{
return ds.Tables[0].Rows[0][0].ToString();
}
}
catch (Exception ex)
{
op.errorMail(ex.Message "错误原因:" ex.StackTrace);
}
return APPSECRET;
}
/// <summary>
/// 获取微信公众号jsapi_ticket
/// </summary>
/// <param name="msg"></param>
/// <param name="jsapi_ticket"></param>
/// <returns></returns>
public bool UserWxJsapiTicketGet(out string msg, out string jsapi_ticket)
{
bool mk = false;
msg = "";
jsapi_ticket = "";
try
{
ClassData data = new ClassData();
bool h = false;
while (!h)
{
string sql = "SELECT tickettime,jsapi_ticket FROM config WHERE id=1";
DataSet ds = data.RunProcReturn(sql);
if (ds.Tables[0].Rows.Count == 1)
{
if (ds.Tables[0].Rows[0][0] == null || ds.Tables[0].Rows[0][0] == DBNull.Value)
{
updateConfig();
}
else
{
if (Convert.ToDateTime(ds.Tables[0].Rows[0][0]).AddMinutes(115) <= DateTime.Now)
{
updateConfig();
}
else
{
jsapi_ticket = ds.Tables[0].Rows[0][1].ToString();
if (op.checkNull(jsapi_ticket))
{
updateConfig();
}
else
{
h = true;
mk = true;
}
}
}
}
else
{
msg = "配置不存在!";
break;
}
}
}
catch (Exception ex)
{
msg = ex.Message; op.errorMail(ex.Message "错误原因:" ex.StackTrace);
}
return mk;
}
#endregion
Copyright © 2024 妖气游戏网 www.17u1u.com All Rights Reserved