using Newtonsoft.Json; using QZWebApi.Bus; using QZWebApi.Models; using System; using System.Collections.Generic; using System.Collections.Specialized; using System.Configuration; using System.Data; using System.IO; using System.Linq; using System.Net; using System.Net.Http; using System.Text; using System.Web.Hosting; using System.Web.Http; using System.Web.Http.Results; namespace QZWebApi.Controllers { public class ValuesController : ApiController { [HttpGet] public string GetPlanChange(string HospitalId, string year, string AesKey) { //获得请求的时间秒数 long timeStamp = TjSignUtil.Get_Timestamp(); //获得请求参数签名 string signature = TjSignUtil.GetSignatureBytoken(AesKey, timeStamp.ToString(), HospitalId + DateTime.Now.Year.ToString()); //定义远程接口参数 NameValueCollection c = new NameValueCollection(); c.Add("hospitalId", HospitalId); c.Add("year", year); c.Add("timestamp", timeStamp.ToString()); c.Add("signature", signature); //获取远程接口返回数据 var url = @"http://qzjk.qztlgs.com/qzjk/planUser/getPlanChange?"; var result = HttpHelper.CreateGetHttpRequest(url, c, "", 10000); return result; //PlanChangeModel m = new PlanChangeModel(); //m.status = true; //m.message = "OK"; //m.size = 3; //m.ids = new int[] { 123, 1234, 124 }; //string json = JsonConvert.SerializeObject(m); //return new HttpResponseMessage() //{ // Content = new StringContent(json, Encoding.UTF8, "application/json"), //}; //返回给红豚 //return json; } [HttpGet] public PlanModel GetPlan(string HospitalId, string year, string AesKey) { //获取远程接口数据返回 //PlanModel m = new PlanModel(); //m.status = true; //m.message = "OK"; //m.size = 50; //m.plans = new List() //{ // new JkPlanUserBean() // { // id=12345678,year=2019,typeName="全员体检",phase="岗间体检",personName="张小明",cardId="630102197408192921",sex="男",age=24,wedding=2,orgId=146,orgName="西宁工务段-平安车间",workType="干部",tjTab1=0,tjTab2=0,grade="2",mobile="13897066306",ifMain=0,ifGy=1,ifJk=0,ifWh=0,ifCw=0,ifGt=0,ifCy=0,ifFj=0,remarks="需要做心脏彩超" // }, // new JkPlanUserBean() // { // id=12312312,year=2019,typeName="全员体检",phase="岗间体检",personName="刘小花",cardId="630102197408192921",sex="男",age=24,wedding=2,orgId=146,orgName="西宁工务段-平安车间",workType="干部",tjTab1=0,tjTab2=0,grade="2",mobile="13897066306",ifMain=0,ifGy=1,ifJk=0,ifWh=0,ifCw=0,ifGt=0,ifCy=0,ifFj=0,remarks="需要做心脏彩超" // } //}; //return m; //获得请求的时间秒数 long timeStamp = TjSignUtil.Get_Timestamp(); //获得请求参数签名 string signature = TjSignUtil.GetSignatureBytoken(AesKey, timeStamp.ToString(), HospitalId + year); //定义远程接口参数 NameValueCollection c = new NameValueCollection(); c.Add("hospitalId", HospitalId); c.Add("year", year); c.Add("timestamp", timeStamp.ToString()); c.Add("signature", signature); //获取远程接口返回数据 var url = @"http://qzjk.qztlgs.com/qzjk/planUser/getPlan?"; var model = new PlanModel(); try { var result = HttpHelper.CreateGetHttpRequest(url, c, "", 10000); model = JsonConvert.DeserializeObject(result); var plansStr = TjSignUtil.Decrypt(model.plans, ConfigurationManager.AppSettings["AESJavaToNetKey"].ToString()); model.plans = plansStr; } catch { } return model; } [HttpGet] public string SetPlanOK(string HospitalId, string AesKey, string ids, string delids) { //获得请求的时间秒数 long timeStamp = TjSignUtil.Get_Timestamp(); //获得请求参数签名 string signature = TjSignUtil.GetSignatureBytoken(AesKey, timeStamp.ToString(), HospitalId + ids + delids); //定义远程接口参数 NameValueCollection c = new NameValueCollection(); c.Add("hospitalId", HospitalId); c.Add("ids", ids); c.Add("delids", delids); c.Add("timestamp", timeStamp.ToString()); c.Add("signature", signature); //获取远程接口返回数据 var url = @"http://qzjk.qztlgs.com/qzjk/planUser/setPlanOk?"; var result = ""; try { result = HttpHelper.CreateGetHttpRequest(url, c, "", 10000); } catch { } return result; } //[HttpGet] //public GetTjxxModel getTjxx(string AesKey, string deptId, int planUserId, string timestamp, string signature) //{ // //获得请求的时间秒数 // long timeStamp = TjSignUtil.Get_Timestamp(); // GetTjxxModel m = new GetTjxxModel(); // //{status:true,message:"OK" // if (!AesKey.Equals(ConfigurationManager.AppSettings["AESKey"].ToString())) // { // m.status = false; // m.message = "身份密匙错误"; // //return m; // } // //else if ((timeStamp - long.Parse(timestamp)) > 10L) // //{ // // m.status = false; // // m.message = "时间校验失败"; // // //return m; // //} // //else if (!TjSignUtil.GetSignatureBytoken(ConfigurationManager.AppSettings["AESKey"].ToString(), timestamp, deptId + planUserId).Equals(signature)) // //{ // // m.status = false; // // m.message = "请求参数签名错误"; // // //return m; // //} // else // { // //获取对应计划的数据 // DataTable data = new DataTable(); // DataBase db = new DataBase(); // try // { // data = db.QyeryTJXX(deptId, planUserId); // if (data.Rows.Count == 0) // { // m.status = false; // m.message = "该体检计划对应的体检项目未全部完成"; // } // else // { // List items = new List(); // foreach (DataRow dr in data.Rows) // { // items.Add(new JkTjxxBean() // { // id = long.Parse(dr["item_id"].ToString()), // tjxmMc = dr["item_name"].ToString(), // ysValue = dr["result"].ToString(), // remark = dr["report_prompt"].ToString(), // tjUnit = dr["unit"].ToString(), // price = dr["price"] == DBNull.Value ? 0 : double.Parse(dr["unit"].ToString()) // }); // } // string itemsStr = JsonConvert.SerializeObject(items); // m.items = TjSignUtil.AESEncode(itemsStr, ConfigurationManager.AppSettings["AESJavaToNetKey"].ToString()); // m.tjDate = DateTime.Parse(data.Rows[0]["summary_date"].ToString()).ToString("yyyy-MM-dd"); // m.status = true; // m.message = "OK"; // m.planUserId = Convert.ToInt32(planUserId); // m.size = data.Rows.Count; // } // //string jsonStr = JsonConvert.SerializeObject(m); // } // catch (Exception ex) // { // m.message = ex.Message; // m.status = false; // } // } // return m; //} ///// ///// 获取体检信息 ///// ///// ///// ///// ///// ///// //[HttpGet] //public GetTjjlModel getTjxx(string deptId, int planUserId, string timestamp, string signature) //{ // GetTjjlModel m = new GetTjjlModel(); // try // { // //获得请求的时间秒数 // long timeStamp = TjSignUtil.Get_Timestamp(); // //获取对应计划的数据 // DataTable data1 = new DataTable(); // DataTable data2 = new DataTable(); // DataTable data3 = new DataTable(); // DataBase db = new DataBase(); // data1 = db.QyeryJL1(deptId, planUserId); // if (data1.Rows.Count == 0) // { // m.status = 1; // m.errorMsg = "该体检计划对应的体检项目未全部完成"; // } // else // { // data2 = db.QyeryJL2(planUserId); // data3 = db.QyeryJL3(planUserId); // m.status = 0; // m.errorMsg = "OK"; // m.planUserId = Convert.ToInt32(planUserId); // m.date = DateTime.Parse(data1.Rows[0]["summary_date"].ToString()).ToString("yyyy-MM-dd"); // TjjlDetails d = new TjjlDetails(); // d.summary = data1.Rows[0]["summary"] == DBNull.Value ? "" : data1.Rows[0]["summary"].ToString(); // d.suggestion = data1.Rows[0]["suggestion"] == DBNull.Value ? "" : data1.Rows[0]["suggestion"].ToString(); // d.cardId = data1.Rows[0]["id_card_no"] == DBNull.Value ? "" : data1.Rows[0]["id_card_no"].ToString(); // d.packages = new List(); // foreach (DataRow dr in data2.Rows) // { // TjjlPackages p = new TjjlPackages(); // p.packageName = dr["asbitem_name"] == DBNull.Value ? "" : dr["asbitem_name"].ToString(); // p.fee = dr["price"] == DBNull.Value ? 0d : double.Parse(dr["price"].ToString()); // p.summary = dr["summary"] == DBNull.Value ? "" : dr["summary"].ToString(); // p.items = new List(); // foreach (DataRow dr1 in data3.Rows) // { // JkTjxxBean j = new JkTjxxBean(); // if (dr1["asbitem_id"].ToString().Equals(dr["asbitem_id"].ToString())) // { // //j.id=dr1["id"] // j.price = dr1["price"] == DBNull.Value ? 0d : double.Parse(dr1["price"].ToString()); // j.tjxmMc = dr1["item_name"] == DBNull.Value ? "" : dr1["item_name"].ToString(); // j.reference = dr1["reference"] == DBNull.Value ? "" : dr1["reference"].ToString(); // j.remark = dr1["remark"] == DBNull.Value ? "" : dr1["remark"].ToString(); // j.tjUnit = dr1["unit"] == DBNull.Value ? "" : dr1["unit"].ToString(); // j.ysValue = dr1["result"] == DBNull.Value ? "" : dr1["result"].ToString(); // p.items.Add(j); // } // } // d.packages.Add(p); // } // string itemsStr = JsonConvert.SerializeObject(d); // m.data = TjSignUtil.AESEncode(itemsStr, ConfigurationManager.AppSettings["AESJavaToNetKey"].ToString()); // } // return m; // } // catch(Exception ex) // { // m.errorMsg = ex.ToString(); // return m; // } //} /// /// 获取体检信息 /// /// /// /// /// /// [HttpGet] public GetTjjlModel getTjxx(string deptId, int planUserId, string timestamp, string signature) { GetTjjlModel m = new GetTjjlModel(); try { //获得请求的时间秒数 long timeStamp = TjSignUtil.Get_Timestamp(); //获取对应计划的数据 DataTable data_peis = new DataTable(); DataTable data2 = new DataTable(); DataTable data3 = new DataTable(); SqlSugarHelper db = new SqlSugarHelper(); data_peis = db.GetPeisInfo(planUserId.ToString()); if (data_peis.Rows.Count == 0) { m.status = 1; m.errorMsg = "该体检计划对应的体检项目未全部完成"; } else { //data2 = db.QyeryJL2(planUserId); //data3 = db.QyeryJL3(planUserId); m.status = 0; m.errorMsg = "OK"; m.planUserId = Convert.ToInt32(planUserId); m.date = DateTime.Parse(data_peis.Rows[0]["summary_date"].ToString()).ToString("yyyy-MM-dd"); TjjlDetails d = new TjjlDetails(); d.summary = db.GetSumSummary(planUserId.ToString()); d.suggestion = db.GetSumSuggestion(planUserId.ToString()); d.cardId = string.IsNullOrWhiteSpace(data_peis.Rows[0]["id_no"].ToString()) ? "" : data_peis.Rows[0]["id_no"].ToString(); d.packages = db.GetRegisterCheck(planUserId.ToString()); string itemsStr = JsonConvert.SerializeObject(d); m.data = TjSignUtil.AESEncode(itemsStr, ConfigurationManager.AppSettings["AESJavaToNetKey"].ToString()); } return m; } catch (Exception ex) { m.errorMsg = ex.ToString(); return m; } } /// /// 获取体检报告 /// /// /// /// /// /// [HttpGet] public TiwdModel getReport(string deptId, int planUserId, string timestamp, string signature) { //获得请求的时间秒数 long timeStamp = TjSignUtil.Get_Timestamp(); TiwdModel m = new TiwdModel(); //{ //获取对应计划的数据 DataTable data = new DataTable(); SqlSugarHelper db = new SqlSugarHelper(); data = db.GetPeisReport(planUserId.ToString()); if (data.Rows.Count == 0) { m.status = 1; m.errorMsg = "没有对应的体检报告"; return m; } else { m.errorMsg = ""; m.IsSec = 0; m.planUserId = planUserId.ToString(); var str = db.GetImageBase64StringAsync(ConfigurationManager.AppSettings["WebApiUrl"].ToString() + data.Rows[0]["report_file"].ToString()); m.file = str; m.type = "pdf"; m.status = 0; return m; } } // GET api/values public IEnumerable Get() { return new string[] { "value1", "value2" }; } // GET api/values/5 public string Get(int id) { return "value"; } // POST api/values public void Post([FromBody] string value) { } // PUT api/values/5 public void Put(int id, [FromBody] string value) { } // DELETE api/values/5 public void Delete(int id) { } } }