resultPost = this.HttpRequest("adrgget/8792837");
Write(new object(), resultPost);//输出参数
return JsonConvert.DeserializeObject<Drgs_Model.ForService.OutputDrgGroup>(resultPost);
PostData="{\"icdlist\":[{\"ICD_CODE\":\"D69.008\",\"ICD_NAME\":\"变应性血管炎\",\"MAIN_FLAG\":\"1\",\"ADRG_CODE\":\"\"}],\"operlist\":[],\"hosinfo\":{\"CITY\":\"CHSDRG\",\"HOS_LEVEL\":\"2\",\"GET_LOCAL\":\"LOCAL\",\"HOS_NAME\":\"医院\",\"AUTHOR_CODE\":\"需要单独申请授权码\",\"HOS_NO\":\"H15257100074\",\"DRG_DIP\":\"DRG\"},\"pinfo\":{\"SEX\":\"F\",\"INPATIENR_NO\":\"\",\"PERSON_NAME\":\"21\",\"AGE\":21.0,\"PERSON_TYPE\":\"ALL\",\"AGE1\":0.0,\"USERESPIRATOR_TIME\":0.00,\"DEADFLAG\":\"0\"},\"feeinfo\":{\"TOT_COST\":0.0,\"PUB_COST\":0.0,\"PRE_PAY\":0.0}}";
public string HttpRequest(string parameters)
{
var request = (HttpWebRequest)WebRequest.Create(EndPoint + parameters);
request.Method = Method.ToString();
request.ContentLength = 0;
request.ContentType = ContentType;
request.Timeout = 600000;
//request.KeepAlive = false;
//request.ProtocolVersion = HttpVersion.Version10;
//ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
//request.AllowAutoRedirect = true;
if (!string.IsNullOrEmpty(PostData) && Method == EnumHttpVerb.POST)
{
var bytes = Encoding.UTF8.GetBytes(PostData);
request.ContentLength = bytes.Length;
try
{
using (var writeStream = request.GetRequestStream())
{
writeStream.Write(bytes, 0, bytes.Length);
}
}catch(Exception ee)
{
return "-1"+ee.Message;
}
}
using (var response = (HttpWebResponse)request.GetResponse())
{
var responseValue = string.Empty;
if (response.StatusCode != HttpStatusCode.OK)
{
var message = string.Format("请求数据失败. 返回的 HTTP 状态码:{0}", response.StatusCode);
throw new ApplicationException(message);
}
using (var responseStream = response.GetResponseStream())
{
if (responseStream != null)
using (var reader = new StreamReader(responseStream))
{
responseValue = reader.ReadToEnd();
}
}
return responseValue;
}
}
c# 实体:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Runtime.Serialization;
namespace Drgs_Model.ForService
{
[System.Serializable]
[DataContract]
public class Drg_Local_Example
{
public Drg_Local_Example()
{
E_TECH = 0m;// 医技标杆
E_DRUG = 0m;// 药品标杆
E_MATE = 0m;// 卫材标杆
E_MANA = 0m;// 管理标杆
E_NURS = 0m;// 护理标杆
E_TREA = 0m;// 治疗标杆
E_NUM = 0m;// 人次
E_AGE = 0m;// 年龄
E_INDAYS = 0m;// 平均住院日
PERCENT_DRUG = 0m;// 药品占比
PERCENT_MAT = 0m;// 卫材占比
PERCENT_CHECKLIS = 0m;// 检查化验占比
HOS_LEVEL = string.Empty;
HOS_CITY = string.Empty;
DIP_ICD = string.Empty;
DIP_OPERATION_LIST = string.Empty;
}
[DataMember]
public string DRG_CODE { get; set; }
[DataMember]
public string DRG_NAME { get; set; }
[DataMember]
public decimal E_TECH { get; set; }
[DataMember]
public decimal E_DRUG { get; set; }
[DataMember]
public decimal E_MATE { get; set; }
[DataMember]
public decimal E_MANA { get; set; }
[DataMember]
public decimal E_NURS { get; set; }
[DataMember]
public decimal E_TREA { get; set; }
[DataMember]
public decimal E_NUM { get; set; }
[DataMember]
public decimal E_AGE { get; set; }
[DataMember]
public decimal E_INDAYS { get; set; }
[DataMember]
public decimal PERCENT_DRUG { get; set; }
[DataMember]
public decimal PERCENT_MAT { get; set; }
[DataMember]
public decimal PERCENT_CHECKLIS { get; set; }
[DataMember]
public string PERSON_TYPE { get; set; }
[DataMember]
public string HOS_LEVEL { get; set; }
[DataMember]
public string HOS_CITY { get; set; }
[DataMember]
public string DIP_ICD { get; set; }
[DataMember]
public string DIP_OPERATION_LIST { get; set; }
}
}
using System.Runtime.Serialization;
namespace Drgs_Model.ForService
{
[System.Serializable]
[DataContract]
public class DRG_Patient
{
public DRG_Patient()
{
TRNASFERHOSFLAG = string.Empty;
DEADFLAG = string.Empty;
AGE = 0m;
AGE1 = 0m;
WEIGHT = 0m;
SEX = string.Empty;
PERSON_TYPE = string.Empty;
USERESPIRATOR_TIME = 0m;
}
[DataMember]
public string TRNASFERHOSFLAG { get; set; }
[DataMember]
public string DEADFLAG { get; set; }
[DataMember]
public decimal AGE { get; set; }
[DataMember]
public decimal AGE1 { get; set; }
[DataMember]
public decimal WEIGHT { get; set; }
[DataMember]
public string SEX { get; set; }
[DataMember]
public string PERSON_NAME { get; set; }
[DataMember]
public string INPATIENT_NO { get; set; }
[DataMember]
public string PERSON_TYPE { get; set; }
[DataMember]//respirator
public decimal USERESPIRATOR_TIME { get; set; }
[DataMember]
public string IN_DATE { get; set; } //入院时间
[DataMember]
public string OUT_DATE { get; set; }
[DataMember]
public string BALANCE_DATE { get; set; }
}
}
using System.Runtime.Serialization;
namespace Drgs_Model.ForService
{
[System.Serializable]
[DataContract]
public class FeeInfo
{
public FeeInfo()
{
TOT_COST = 0m;
PUB_COST = 0m;
PRE_PAY = 0m;
}
[DataMember]
public decimal TOT_COST { get; set; }//总费用
[DataMember]
public decimal PUB_COST { get; set; }//统筹费用
[DataMember]
public decimal PRE_PAY { get; set; }//预拨付
}
}
using System.Runtime.Serialization;
namespace Drgs_Model.ForService
{
[System.Serializable]
[DataContract]
public class ICD
{
[DataMember]
public string ICD_CODE { get; set; }
[DataMember]
public string ICD_NAME { get; set; }
[DataMember]
public string MAIN_FLAG { get; set; }
[DataMember]
public string ADRG_CODE { get; set; }
}
}
using System;
using System.Collections.Generic;
using System.Runtime.Serialization;
namespace Drgs_Model.ForService
{
[System.Serializable]
[DataContract]
public class InputDrg
{
[DataMember]
public List<ICD> icdlist { get; set; }
[DataMember]
public List<ICD9> operlist { get; set; }
[DataMember]
public DRG_Patient pinfo { get; set; }
[DataMember]
public HosInfo hosinfo { get; set; }
[DataMember]
public FeeInfo feeInfo { get; set; }
}
}