177 lines
6.0 KiB
C#
177 lines
6.0 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel;
|
|
using System.Data;
|
|
using System.Drawing;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Windows.Forms;
|
|
using SOH.Kernel;
|
|
using EAS.Services;
|
|
using SOH.BLL;
|
|
using SOH.Entities;
|
|
using SOH.Data;
|
|
using SOH.Common;
|
|
using System.Text.RegularExpressions;
|
|
using System.Security.Cryptography;
|
|
using System.Web;
|
|
using Newtonsoft.Json.Linq;
|
|
using Newtonsoft.Json;
|
|
using System.Net;
|
|
using System.IO;
|
|
using System.Threading;
|
|
|
|
namespace SOH.QianTai
|
|
{
|
|
public partial class frm_Pa_DJHX : Form
|
|
{
|
|
DataRowView drv;
|
|
frmJiBenYeWu jbyw;
|
|
|
|
public frm_Pa_DJHX()
|
|
{
|
|
InitializeComponent();
|
|
}
|
|
|
|
public frm_Pa_DJHX(DataRowView o,frmJiBenYeWu jb)
|
|
{
|
|
drv = o;
|
|
jbyw = jb;
|
|
InitializeComponent();
|
|
}
|
|
|
|
/// <summary>
|
|
/// 用MD5加密字符串
|
|
/// </summary>
|
|
/// <param name="password">待加密的字符串</param>
|
|
/// <returns></returns>
|
|
public string MD5Encrypt(string password)
|
|
{
|
|
MD5CryptoServiceProvider md5Hasher = new MD5CryptoServiceProvider();
|
|
byte[] hashedDataBytes;
|
|
hashedDataBytes = md5Hasher.ComputeHash(Encoding.GetEncoding("gb2312").GetBytes(password));
|
|
StringBuilder tmp = new StringBuilder();
|
|
foreach (byte i in hashedDataBytes)
|
|
{
|
|
tmp.Append(i.ToString("x2"));
|
|
}
|
|
return tmp.ToString();
|
|
}
|
|
|
|
public string Get_Http(string url, int timeout, string parm)
|
|
{
|
|
string strResult = "";
|
|
try
|
|
{
|
|
//创建请求
|
|
HttpWebRequest myReq = (HttpWebRequest)HttpWebRequest.Create(url);
|
|
//请求响应时间
|
|
myReq.Timeout = timeout;
|
|
//得到响应对象
|
|
HttpWebResponse myRes = (HttpWebResponse)myReq.GetResponse();
|
|
//获取流
|
|
Stream myStream = myRes.GetResponseStream();
|
|
//读取字符
|
|
StreamReader sr = new StreamReader(myStream, Encoding.UTF8);
|
|
StringBuilder sb = new StringBuilder();
|
|
while (-1 != sr.Peek())
|
|
{
|
|
sb.Append(sr.ReadLine());
|
|
}
|
|
strResult = sb.ToString();
|
|
}
|
|
catch (Exception exp)
|
|
{
|
|
strResult = "错误:" + exp.Message;
|
|
}
|
|
return strResult;
|
|
}
|
|
|
|
private void button2_Click(object sender, EventArgs e)
|
|
{
|
|
if(!string.IsNullOrEmpty(this.tb_yzm.Text))
|
|
{
|
|
string timestamp = DateTime.Now.ToString("yyyyMMddHHmmss");
|
|
string sign = MD5Encrypt("tianrui" + "0871338ce2bddd34fd02a0c383d0b73a" + timestamp);
|
|
|
|
//string jm = Md5Decrypt(sign);
|
|
string orderState = drv.Row["orderState"].ToString() == "预约已确认" ? "01" : "03";
|
|
//orderState= (d.orderState == "01") ? "预约已确认" : "预约待确认",
|
|
|
|
var dic = new Dictionary<string, string>() {
|
|
{"pajkKey","tianrui"},
|
|
{"sign",sign },
|
|
{"timestamp",timestamp },
|
|
{"hospitalOrderId",drv.Row["hospitalOrderId"].ToString() },
|
|
{"orderId",drv.Row["orderId"].ToString() },
|
|
{"orderState","03" },
|
|
{"captcha",this.tb_yzm.Text }
|
|
};
|
|
|
|
//var builder = new UriBuilder("https://tj.test.pajk.cn/tj/api/updateOrder"); //测试环境
|
|
var builder = new UriBuilder("https://tj.jk.cn/tj/api/updateOrder");//正式环境
|
|
var query = HttpUtility.ParseQueryString(builder.Query);
|
|
foreach (var item in dic.Keys)
|
|
{
|
|
query[item] = dic[item];
|
|
}
|
|
string url= builder+"?"+query.ToString().Trim('?');
|
|
|
|
var vservice = ServiceContainer.GetService<IPingAn>();
|
|
|
|
string js = Get_Http(url,10000,"");
|
|
//{"status":"401"} 解析
|
|
JObject jo = (JObject)JsonConvert.DeserializeObject(js);
|
|
string status = jo["status"].ToString();
|
|
switch(status)
|
|
{
|
|
case "400":
|
|
MessageBox.Show("参数异常!");
|
|
break;
|
|
case "401":
|
|
MessageBox.Show("权限异常!");
|
|
break;
|
|
case "500":
|
|
MessageBox.Show("未知错误!");
|
|
break;
|
|
case "402":
|
|
MessageBox.Show("验证码错误!");
|
|
break;
|
|
case "200":
|
|
MessageBox.Show("验证成功!");
|
|
pa_yysq yysq = vservice.Djhx(drv.Row["hospitalOrderId"].ToString(), drv.Row["orderId"].ToString(), this.tb_yzm.Text);
|
|
|
|
frmJiBenYeWu fjbyw = new frmJiBenYeWu();
|
|
fjbyw.DjhxTz(yysq.customerIdentityNo,yysq.customerName,yysq.phone);
|
|
this.Close();
|
|
break;
|
|
}
|
|
|
|
}
|
|
else
|
|
{
|
|
MessageBox.Show("验证码不能为空!");
|
|
this.tb_yzm.Focus();
|
|
}
|
|
|
|
}
|
|
|
|
private void button1_Click(object sender, EventArgs e)
|
|
{
|
|
this.Close();
|
|
}
|
|
|
|
private void button3_Click(object sender, EventArgs e)
|
|
{
|
|
//this.Hide();
|
|
//frmJiBenYeWu fjbyw = new frmJiBenYeWu();
|
|
//fjbyw.DjhxTz("123456", "测试姓名", "110");
|
|
|
|
//打开另一个窗口的同时关闭当前窗口
|
|
//Thread th = new Thread(delegate () { new frmJiBenYeWu("123456", "测试姓名", "110"); });
|
|
//th.Start();
|
|
//this.Close();
|
|
}
|
|
}
|
|
}
|