You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
425 lines
17 KiB
425 lines
17 KiB
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<JkPlanUserBean>()
|
|
//{
|
|
// 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<PlanModel>(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<JkTjxxBean> items = new List<JkTjxxBean>();
|
|
// 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;
|
|
//}
|
|
|
|
|
|
///// <summary>
|
|
///// 获取体检信息
|
|
///// </summary>
|
|
///// <param name="deptId"></param>
|
|
///// <param name="planUserId"></param>
|
|
///// <param name="timestamp"></param>
|
|
///// <param name="signature"></param>
|
|
///// <returns></returns>
|
|
//[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<TjjlPackages>();
|
|
// 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<JkTjxxBean>();
|
|
// 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;
|
|
// }
|
|
//}
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// 获取体检信息
|
|
/// </summary>
|
|
/// <param name="deptId"></param>
|
|
/// <param name="planUserId"></param>
|
|
/// <param name="timestamp"></param>
|
|
/// <param name="signature"></param>
|
|
/// <returns></returns>
|
|
[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;
|
|
}
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
/// 获取体检报告
|
|
/// </summary>
|
|
/// <param name="deptId"></param>
|
|
/// <param name="planUserId"></param>
|
|
/// <param name="timestamp"></param>
|
|
/// <param name="signature"></param>
|
|
/// <returns></returns>
|
|
[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<string> 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)
|
|
{
|
|
}
|
|
}
|
|
}
|