tijian_jichuang/Code/SOH.BLL.Host/ZongJianBll.cs
2025-02-20 11:54:48 +08:00

4670 lines
195 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using EAS.Services;
using SOH.Entities;
using SOH.Data;
using EAS.Data;
using EAS.Data.Linq;
using EAS.Data.ORM;
using EAS.Data.Access;
using System.Data.Linq.SqlClient;
using System.Data;
using SOH.Entities.DTO;
using System.Threading;
using System.IO;
using System.Drawing;
using System.Drawing.Imaging;
using System.Text.RegularExpressions;
namespace SOH.BLL
{
[ServiceBind(typeof(IZongJian))]
[ServiceObject("总检业务")]
public class ZongJianBll : IZongJian
{
public string GetTjjdList(int tmh , int fddm)
{
using (var db = new DbEntities())
{
//var data = from t in db.t_tjjds
// join k in db.t_kss on t.ksbm equals k.ksbm
// where t.tm == tmh && !SqlMethods.Like(t.zdjg, "%未见明显异常%") && !SqlMethods.Like(t.zdjg, "%未见异常%")
// && !SqlMethods.Like(t.zdjg, "正常%")
// select new { k.ksmc, t.zdjg };
if (fddm == 1)
{
var data = from t in db.t_tjjds
join k in db.t_kss on t.ksbm equals k.ksbm
where t.tm == tmh && !t.zdjg.Contains("未见明显异常") && !t.zdjg.Contains("未见异常")
&& !t.zdjg.StartsWith("正常") && !t.zdjg.StartsWith("大致正常") && k.ksbm!=29
orderby k.xssx
select new { k.ksmc, t.zdjg, k.ksbm, k.lx };
return Newtonsoft.Json.JsonConvert.SerializeObject(data.ToList());
}
else
{
var data = from t in db.t_tjjds
join k in db.t_kss on t.ksbm equals k.ksbm
where t.tm == tmh && !t.zdjg.Contains("未见明显异常") && !t.zdjg.Contains("未见异常")
&& !t.zdjg.StartsWith("正常") && !t.zdjg.StartsWith("大致正常")
orderby k.xssx
select new { k.ksmc, t.zdjg, k.ksbm, k.lx };
return Newtonsoft.Json.JsonConvert.SerializeObject(data.ToList());
}
}
}
public string GetJbtjByTm(int tm)
{
using (var db = new DbEntities())
{
var data = from j in db.t_jbtj1s
join k in db.t_jbks on j.jbbm equals k.jbbm
where j.tm == tm
select k;
return Newtonsoft.Json.JsonConvert.SerializeObject(data.ToList());
}
}
public DataTable GetJbtjByTmNew(int tmh)
{
using (var db = new DbEntities())
{
string sql1 = @"select t_jbtj.fddm,advice.Name,t_jcxm.xb,advice.Description from t_jbtj,itemindexresulttemplet,advice,t_jcxm
where t_jbtj.jbbm=itemindexresulttemplet.ID and
t_jbtj.upflag=t_jcxm.jcxmbm and
itemindexresulttemplet.AdviceID=advice.ID and advice.Name not like '%放弃%' and
advice.Name not like '%其%' and advice.Name!='' and t_jbtj.tm=" + tmh;
DataTable dt = db.DataAccessor.QueryDataTable(sql1);
return dt;
}
}
public dto_gzb getGzbByTm(int tmh)
{
//throw new NotImplementedException();
using (var db = new DbEntities())
{
var jysql = db.jy_sqds.Where(t => t.tm == tmh).FirstOrDefault();
if (jysql == null)
return null;
long tm = jysql.tm;
string stm = tm.ToString("0000000000");
dto_gzb gzb = new dto_gzb();
if (stm.StartsWith("1"))
{
var tt = db.t_ttgzbs.FirstOrDefault(t => t.tm == tm);
var khs = from k in db.t_khs join t in db.t_hts on k.khbm equals t.khbm where t.htbm == tt.htbm select k;
if (tt == null)
return null;
gzb.xb = tt.xb;
gzb.hyh = tt.hyh;
gzb.dwmc = khs.FirstOrDefault().khmc;
gzb.xm = tt.xm;
gzb.nl = tt.nl;
gzb.csrq = tt.csrq;
gzb.tm = tt.tm;
gzb.image = tt.image;
gzb.tjrq = tt.tjrq;
}
else
{
var gr = db.t_grgzbs.FirstOrDefault(t => t.tm == tm);
if (gr == null)
return null;
gzb.xb = gr.xb;
gzb.hyh = gr.hyh;
gzb.xm = gr.xm;
gzb.dwmc = "个人体检";
gzb.nl = gr.nl;
gzb.csrq = gr.csrq;
gzb.tm = gr.tm;
gzb.image = gr.image;
gzb.tjrq = gr.tjrq;
}
return gzb;
}
}
public dto_gzb getGzbByTms(int tmh)
{
//throw new NotImplementedException();
using (var db = new DbEntities())
{
string stm = tmh.ToString("0000000000");
dto_gzb gzb = new dto_gzb();
if (stm.StartsWith("1"))
{
var tt = db.t_ttgzbs.FirstOrDefault(t => t.tm == tmh);
var khs = from k in db.t_khs join t in db.t_hts on k.khbm equals t.khbm where t.htbm == tt.htbm select k;
if (tt == null)
return null;
gzb.xb = tt.xb;
gzb.hyh = tt.hyh;
gzb.dwmc = khs.FirstOrDefault().khmc;
gzb.xm = tt.xm;
gzb.nl = tt.nl;
gzb.csrq = tt.csrq;
gzb.tm = tt.tm;
gzb.image = tt.image;
gzb.tjrq = tt.tjrq;
gzb.hfbz = 0;
}
else
{
var gr = db.t_grgzbs.FirstOrDefault(t => t.tm == tmh);
if (gr == null)
return null;
gzb.xb = gr.xb;
gzb.hyh = gr.hyh;
gzb.xm = gr.xm;
gzb.dwmc = "个人体检";
gzb.nl = gr.nl;
gzb.csrq = gr.csrq;
gzb.tm = gr.tm;
gzb.image = gr.image;
gzb.tjrq = gr.tjrq;
gzb.hfbz = gr.hfbz;
}
return gzb;
}
}
public dto_gzb getGzbByTmss(int tmh)
{
//throw new NotImplementedException();
using (var db = new DbEntities())
{
string stm = tmh.ToString("0000000000");
dto_gzb gzb = new dto_gzb();
if (stm.StartsWith("1"))
{
var tt = db.t_ttgzbs.FirstOrDefault(t => t.tm == tmh);
var khs = from k in db.t_khs join t in db.t_hts on k.khbm equals t.khbm where t.htbm == tt.htbm select k;
if (tt == null)
return null;
gzb.xb = tt.xb;
gzb.hyh = tt.hyh;
gzb.sfzh = tt.sfzh;
gzb.dwmc = khs.FirstOrDefault().khmc;
gzb.xm = tt.xm;
gzb.nl = tt.nl;
gzb.csrq = tt.csrq;
gzb.tm = tt.tm;
gzb.image = tt.image;
gzb.tjrq = tt.tjrq;
}
else
{
var gr = db.t_grgzbs.FirstOrDefault(t => t.tm == tmh);
if (gr == null)
return null;
gzb.xb = gr.xb;
gzb.hyh = gr.hyh;
gzb.sfzh = gr.sfzh;
gzb.xm = gr.xm;
gzb.dwmc = "个人体检";
gzb.nl = gr.nl;
gzb.csrq = gr.csrq;
gzb.tm = gr.tm;
gzb.image = gr.image;
gzb.tjrq = gr.tjrq;
}
return gzb;
}
}
public string GetJcxmListByHtbm(int htbm)
{
using (var db = new DbEntities())
{
var data = from z in db.t_zhxms
join h in db.t_htxmbs on z.zhbm equals h.zhbm
join t in db.t_ttgzbs on h.htfzbm equals t.htfzbm
where t.htbm == htbm && t.tmztz > 3
select new
{
zhmc = z.zhmc,
xssx = z.xssx
} into k
group k by new
{
k.zhmc,
k.xssx
} into t
select new
{
zhmc = t.Key.zhmc,
xssx = t.Key.xssx
};
return Newtonsoft.Json.JsonConvert.SerializeObject(data.ToList());
}
}
public string GetTjjdByTmAndZdjg(int tm, string jbmc)
{
using (var db = new DbEntities())
{
var data = from d in db.t_tjjds where d.tm == tm && d.zdjg.Contains(jbmc) select d;
return Newtonsoft.Json.JsonConvert.SerializeObject(data.ToList());
}
}
public string GetTempdjxmByTms(int htbm)
{
using (var db = new DbEntities())
{
var data = from j in db.t_tempdjxms
join t in db.t_ttgzbs on j.tm equals t.tm
where t.htbm == htbm && t.tmztz > 3 && j.ztz > 0
select new
{
j.tm,
j.zhbm,
j.ksbm
};
return Newtonsoft.Json.JsonConvert.SerializeObject(data.ToList());
}
}
public string GetZhxmByZhbm(int zhbm)
{
using (var db = new DbEntities())
{
var data = from z in db.t_zhxms
where z.zhbm == zhbm
select z;
return Newtonsoft.Json.JsonConvert.SerializeObject(data.ToList());
}
}
public string GetYgwxTjjgBytm(int[] array, int HBsAg)
{
using (var db = new DbEntities())
{
var data = from g in db.t_tjjgs
where array.Contains(g.tm) && g.xmbm == HBsAg
select new
{
g.tm,
jg = g.jg.Trim()
};
return Newtonsoft.Json.JsonConvert.SerializeObject(data.ToList());
}
}
public string GetKsList()
{
using (var db = new DbEntities())
{
var data = from k in db.t_kss
where k.zhuxiao == 0
orderby k.xssx
select new
{
k.ksmc,
k.ksbm
};
return Newtonsoft.Json.JsonConvert.SerializeObject(data.ToList());
}
}
public string GetJianYiList()
{
using (var db = new DbEntities())
{
var data = from j in db.t_jymss select j;
return Newtonsoft.Json.JsonConvert.SerializeObject(data.ToList());
}
}
public string GetJianYiByKsbmList(short ksbm)
{
using (var db = new DbEntities())
{
//var data = from j in db.t_jymss where j.ksbm == ksbm select j;
var data1 = db.t_jymss.Where(t => t.ksbm == ksbm).OrderBy(t => t.zyzd);
return Newtonsoft.Json.JsonConvert.SerializeObject(data1.ToList());
}
}
public string GetJianYiByZyzd1(string zyzd)
{
using (var db = new DbEntities())
{
var data = from j in db.t_jymss where j.zyzd.Contains(zyzd) select j;
return Newtonsoft.Json.JsonConvert.SerializeObject(data.ToList());
}
}
public string GetJianYiByZyzd2(string zyzd)
{
using (var db = new DbEntities())
{
var data = from j in db.t_jymss where j.jcjy.Contains(zyzd) select new { zyzd = j.jcjy };
return Newtonsoft.Json.JsonConvert.SerializeObject(data.ToList());
}
}
public string GetJianYiByZyzd3(string zyzd)
{
using (var db = new DbEntities())
{
var data = from j in db.t_jymss where j.zyzd == zyzd select j;
return Newtonsoft.Json.JsonConvert.SerializeObject(data.ToList());
}
}
public DataTable GetJydDtByTm(int tmh)
{
using (var db = new DbEntities())
{
string sql1 = "select * from jy_sqd where tm ='" + tmh + "'";
DataTable dt = db.DataAccessor.QueryDataTable(sql1);
return dt;
}
}
public DataTable GetJydDtByTmFromZhxm(int tmh)
{
using (var db = new DbEntities())
{
string sql1 = "select * from t_zhxm where zhbm in (select zhbm from t_tempdjxm where tm=" + tmh + ") and jclb=1";
DataTable dt = db.DataAccessor.QueryDataTable(sql1);
return dt;
}
}
public DataTable GetJydDtByTmFromKSbm(int tmh)
{
using (var db = new DbEntities())
{
string sql1 = "select * from t_ks where ksbm in (select ksbm from t_zhxm where zhbm in (select zhbm from t_tempdjxm where tm = " + tmh + ") and jclb = 1)";
DataTable dt = db.DataAccessor.QueryDataTable(sql1);
return dt;
}
}
public DataTable GetJydDtFromKSbm2(int ksbm)
{
using (var db = new DbEntities())
{
string sql1 = "select * from t_ks where ksbm=" + ksbm;
DataTable dt = db.DataAccessor.QueryDataTable(sql1);
return dt;
}
}
public DataTable GetJyjgByTm1(int tmh)
{
using (var db = new DbEntities())
{
string sql1 = "select * from jy_sqd_jg where jytm in (select jytm from jy_sqd where tm=" + tmh + ")";
DataTable dt = db.DataAccessor.QueryDataTable(sql1);
return dt;
}
}
public DataTable GetJyjgByTm(string jytm)
{
using (var db = new DbEntities())
{
string sql1 = "select * from jy_sqd_jg where jytm ='" + jytm + "'";
DataTable dt = db.DataAccessor.QueryDataTable(sql1);
return dt;
}
}
public DataTable GetJyjgByTmFromZhxm(int tmh, string zhbm)
{
using (var db = new DbEntities())
{
string sql1 = "select a.lis,a.jcxmmc,b.jg,a.dw,convert(numeric(18,1),round(a.ckxx,1))as ckxx,convert(numeric(18,1),round(a.cksx,1))as cksx " +
"from t_jcxm a,t_tjjg b where a.jcxmbm = b.xmbm and b.tm = " + tmh + " and a.jcxmbm in ( " +
" select xmbm from t_zhxmmx where zhbm = " + zhbm + ")";
DataTable dt = db.DataAccessor.QueryDataTable(sql1);
return dt;
}
}
public DataTable GetJyjgByTmFromKSbm(int tmh, string ksbm)
{
using (var db = new DbEntities())
{
string sql1 = "select a.lis,a.jcxmmc,b.jg,a.dw,convert(numeric(18, 1), round(a.ckxx, 1)) as ckxx," +
"convert(numeric(18, 1), round(a.cksx, 1)) as cksx from t_jcxm a,t_tjjg b where " +
"a.jcxmbm = b.xmbm and b.tm = " + tmh + " and a.ksbm =" + ksbm;
DataTable dt = db.DataAccessor.QueryDataTable(sql1);
return dt;
}
}
public DataTable GetJyjgByTmFromKSbm2(int tmh, string ksbm, int xb)
{
using (var db = new DbEntities())
{
if (xb == 0)
{
string sql1 = "select b.czy,a.lis,a.jcxmmc,'' as bz,b.jg,a.dw,convert(numeric(18, 3), round(a.ckxx, 3)) as ckxx," +
"convert(numeric(18, 3), round(a.cksx, 3)) as cksx from t_jcxm a,t_tjjg b where " +
"a.jcxmbm = b.xmbm and b.tm = " + tmh + " and a.ksbm =" + ksbm;
//string sql1 = "select b.czy,a.lis,a.jcxmmc,'' as bz,b.jg,a.dw," +
// "convert(numeric(18, 1), round(a.ckxx, 1)) as ckxx," +
// "convert(numeric(18, 1), round(a.cksx, 1)) as cksx " +
// " from t_jcxm a,t_tjjg b where a.jcxmbm = b.xmbm and b.tm = " + tmh + " and a.ksbm in (select ksbm from t_zhxm where zhbm in " +
// "(select zhbm from t_tempdjxm where tm = " + tmh + ") and jclb = 1)";
DataTable dt = db.DataAccessor.QueryDataTable(sql1);
return dt;
}
else
{
string sql1 = "select b.czy,a.lis,a.jcxmmc,'' as bz,b.jg,a.dw,convert(numeric(18, 3), round(a.ckxx1, 3)) as ckxx," +
"convert(numeric(18, 3), round(a.cksx1, 3)) as cksx from t_jcxm a,t_tjjg b where " +
"a.jcxmbm = b.xmbm and b.tm = " + tmh + " and a.ksbm =" + ksbm;
//string sql1 = "select b.czy,a.lis,a.jcxmmc,'' as bz,b.jg,a.dw," +
// "convert(numeric(18, 1), round(a.ckxx, 1)) as ckxx," +
// "convert(numeric(18, 1), round(a.cksx, 1)) as cksx " +
// " from t_jcxm a,t_tjjg b where a.jcxmbm = b.xmbm and b.tm = " + tmh + " and a.ksbm in (select ksbm from t_zhxm where zhbm in " +
// "(select zhbm from t_tempdjxm where tm = " + tmh + ") and jclb = 1)";
DataTable dt = db.DataAccessor.QueryDataTable(sql1);
return dt;
}
}
}
public DataTable GetJyjgByTmFromKSbm3(int tmh, string ksbm, int xb)
{
using (var db = new DbEntities())
{
if (xb == 0)
{
string sql1 = "select b.czy,a.lis,a.jcxmmc,'' as bz,b.jg,a.dw,convert(numeric(18, 1), round(a.ckxx, 1)) as ckxx," +
"convert(numeric(18, 1), round(a.cksx, 1)) as cksx from t_jcxm a,t_tjjg b where " +
"a.jcxmbm = b.xmbm and b.tm = " + tmh + " and a.ksbm =" + ksbm;
DataTable dt = db.DataAccessor.QueryDataTable(sql1);
return dt;
}
else
{
string sql1 = "select b.czy,a.lis,a.jcxmmc,'' as bz,b.jg,a.dw,convert(numeric(18, 1), round(a.ckxx1, 1)) as ckxx," +
"convert(numeric(18, 1), round(a.cksx1, 1)) as cksx from t_jcxm a,t_tjjg b where " +
"a.jcxmbm = b.xmbm and b.tm = " + tmh + " and a.ksbm =" + ksbm;
DataTable dt = db.DataAccessor.QueryDataTable(sql1);
return dt;
}
}
}
public DataTable GetJyjgAllByTmFromKSbm(int tmh)
{
using (var db = new DbEntities())
{
string sql1 = "select a.lis,a.jcxmmc,'' as bz,b.jg,a.dw," +
"convert(numeric(18, 1), round(a.ckxx, 1)) as ckxx," +
"convert(numeric(18, 1), round(a.cksx, 1)) as cksx " +
" from t_jcxm a,t_tjjg b where a.jcxmbm = b.xmbm and b.tm = " + tmh + " and a.ksbm in (select ksbm from t_zhxm where zhbm in " +
"(select zhbm from t_tempdjxm where tm = " + tmh + ") and jclb = 1)";
DataTable dt = db.DataAccessor.QueryDataTable(sql1);
return dt;
}
}
public DataTable GetJyjgAllByTmFromKSbm2(int tmh, int xb)
{
using (var db = new DbEntities())
{
string sql1 = "select b.czy,a.lis,a.jcxmmc,'' as bz,b.jg,a.dw," +
"convert(numeric(18, 1), round(a.ckxx, 1)) as ckxx," +
"convert(numeric(18, 1), round(a.cksx, 1)) as cksx " +
" from t_jcxm a,t_tjjg b where a.jcxmbm = b.xmbm and b.tm = " + tmh + " and a.ksbm in (select ksbm from t_zhxm where zhbm in " +
"(select zhbm from t_tempdjxm where tm = " + tmh + ") and jclb = 1)";
DataTable dt = db.DataAccessor.QueryDataTable(sql1);
return dt;
}
}
public DataTable GetJyjgByTmFromZhxmAll(int tmh)
{
using (var db = new DbEntities())
{
string sql1 = "select a.lis,a.jcxmmc,b.jg,a.dw,convert(numeric(18,1),round(a.ckxx,1))as ckxx,convert(numeric(18,1),round(a.cksx,1))as cksx " +
"from t_jcxm a,t_tjjg b where a.jcxmbm = b.xmbm and b.tm = " + tmh + " and a.jcxmbm in ( " +
" select xmbm from t_zhxmmx where zhbm in (select zhbm from t_zhxm where zhbm in (select zhbm from t_tempdjxm where tm=" + tmh + ") and jclb=1))";
DataTable dt = db.DataAccessor.QueryDataTable(sql1);
return dt;
}
}
public DataTable GetZdjymb(int tm, int ksbm, string zyzd)
{
using (var db = new DbEntities())
{
string sql1 = "SELECT FamiliarDiagnose.Name as 诊断,Advice.Description as 建议模板描述,FamiliarDiagnose.RecheckAdvice as 复查建议,FamiliarDiagnose.MoreAdviceCheckItem as 更多建议 From " +
"itemindexresulttemplet LEFT JOIN [FamiliarDiagnose] ON [ItemIndexResultTemplet]." +
"FamiliarDiagnoseID=FamiliarDiagnose.ID LEFT JOIN Advice ON " +
"ItemIndexResultTemplet.AdviceID=Advice.ID LEFT JOIN t_jbtj on ItemIndexResultTemplet.ID=t_jbtj.jbbm " +
"WHERE t_jbtj.tm=" + tm + " and t_jbtj.fddm=" + ksbm + " and FamiliarDiagnose.Name='" + zyzd + "'";
DataTable dt = db.DataAccessor.QueryDataTable(sql1);
return dt;
}
}
public DataTable GetZdjymbByCt(int tm)
{
using (var db = new DbEntities())
{
string sql1 = "SELECT FamiliarDiagnose.Name as 诊断,Advice.Description as 建议模板描述,FamiliarDiagnose.RecheckAdvice as 复查建议,FamiliarDiagnose.MoreAdviceCheckItem as 更多建议 From " +
"itemindexresulttemplet LEFT JOIN [FamiliarDiagnose] ON [ItemIndexResultTemplet]." +
"FamiliarDiagnoseID=FamiliarDiagnose.ID LEFT JOIN Advice ON " +
"ItemIndexResultTemplet.AdviceID=Advice.ID LEFT JOIN t_jbtj on ItemIndexResultTemplet.ID=t_jbtj.jbbm " +
"WHERE t_jbtj.tm=" + tm + " and t_jbtj.fddm=132 ";
DataTable dt = db.DataAccessor.QueryDataTable(sql1);
return dt;
}
}
//and itemindexresulttemplet.ID=
public DataTable GetZdjymbByCt1(int tm, int msid)
{
using (var db = new DbEntities())
{
string sql1 = "SELECT FamiliarDiagnose.Name as 诊断,Advice.Description as 建议模板描述,FamiliarDiagnose.RecheckAdvice as 复查建议,FamiliarDiagnose.MoreAdviceCheckItem as 更多建议 From " +
"itemindexresulttemplet LEFT JOIN [FamiliarDiagnose] ON [ItemIndexResultTemplet]." +
"FamiliarDiagnoseID=FamiliarDiagnose.ID LEFT JOIN Advice ON " +
"ItemIndexResultTemplet.AdviceID=Advice.ID LEFT JOIN t_jbtj on ItemIndexResultTemplet.ID=t_jbtj.jbbm " +
"WHERE t_jbtj.tm=" + tm + " and t_jbtj.fddm=132 and itemindexresulttemplet.ID=" + msid;
DataTable dt = db.DataAccessor.QueryDataTable(sql1);
return dt;
}
}
public DataTable GetTkhsByTjrq(Object dt1, Object dt2)
{
using (var db = new DbEntities())
{
string sql1 = "select t_kh.khmc,t_kh.khbm,t_ht.htbm from t_ttgzb left join t_ht on t_ttgzb.htbm=t_ht.htbm " +
"left join t_kh on t_ht.khbm=t_kh.khbm where t_ttgzb.tjrq between '" + Convert.ToDateTime(dt1) + "' and '" + Convert.ToDateTime(dt2) + "'" +
"and t_ttgzb.tmztz!=0 and t_ttgzb.tmztz!=-2 group by t_kh.khmc,t_kh.khbm,t_ht.htbm";
DataTable dt = db.DataAccessor.QueryDataTable(sql1);
return dt;
}
}
public DataTable GetTttgzbsByTjrq(Object dt1, Object dt2)
{
using (var db = new DbEntities())
{
string sql1 = "select t_ttgzb.htbm,t_htfzb.htfzmc,t_ttgzb.xm,t_ttgzb.xb,t_ttgzb.tjrq,t_htfzb.ssjg/100,t_ht.ywdbdm,t_kh.khlxr from t_ttgzb left " +
" join t_ht on t_ttgzb.htbm=t_ht.htbm left join t_htfzb on t_ttgzb.htfzbm=t_htfzb.htfzbm left join t_kh on " +
"t_ht.khbm=t_kh.khbm where t_ttgzb.tjrq between '" + Convert.ToDateTime(dt1) + "' and '" + Convert.ToDateTime(dt2) + "' and " +
"t_ttgzb.tmztz!=0 and t_ttgzb.tmztz!=-2";
DataTable dt = db.DataAccessor.QueryDataTable(sql1);
return dt;
}
}
public DataTable GetHysZdjymb(string zyzd)
{
using (var db = new DbEntities())
{
string sql1 = "select name,Description from Advice where Name like '" + zyzd + "%'";
DataTable dt = db.DataAccessor.QueryDataTable(sql1);
return dt;
}
}
public DataTable GetFcjy(string zyzd)
{
using (var db = new DbEntities())
{
string sql1 = "select RecheckAdvice,MoreAdviceCheckItem from FamiliarDiagnose where Name like '" + zyzd + "%'";
DataTable dt = db.DataAccessor.QueryDataTable(sql1);
return dt;
}
}
/// <summary>
/// 根据合同编码获取所有已经体检的团检人员
/// </summary>
/// <param name="htbm"></param>
/// <returns></returns>
public string GetAllTtgzbByHtbm(int htbm)
{
using (var db = new DbEntities())
{
var data = from t in db.t_ttgzbs
where t.htbm == htbm && t.tmztz > 3
select new
{
t.tm,
t.hyh,
t.htbm,
t.htfzbm,
t.xm,
t.xb,
t.nl,
t.hyzk,
t.tjrq,
t.tmztz,
t.tjzje,
t.csrq,
t.tel
};
return Newtonsoft.Json.JsonConvert.SerializeObject(data.ToList());
}
}
/// <summary>
/// 根据合同编码获取所有团检人员
/// 2023-09-18 xulu 添加方法
/// </summary>
/// <param name="htbm"></param>
/// <returns></returns>
public string GetAllTtgzbByHtbm2(int htbm)
{
using (var db = new DbEntities())
{
var data = from t in db.t_ttgzbs
where t.htbm == htbm
select new
{
t.tm,
t.hyh,
t.htbm,
t.htfzbm,
t.xm,
t.xb,
t.nl,
t.hyzk,
t.tjrq,
t.tmztz,
t.tjzje,
t.csrq,
t.tel
};
return Newtonsoft.Json.JsonConvert.SerializeObject(data.ToList());
}
}
/// <summary>
/// 根据合同编码获取体检人员的体检结果
/// 2023-09-18 xulu 添加方法
/// </summary>
/// <param name="htbm"></param>
/// <returns></returns>
public DataTable GetExamResultByHtbm(int htbm)
{
using (var db = new DbEntities())
{
string sql1 = "select t_tjjg.tm,jcxmmc,t_tjjg.jg from t_tjjg,t_jcxm where t_tjjg.tm in (select tm from t_ttgzb where htbm ="+ htbm +" and tmztz > 3) and t_jcxm.jcxmbm = t_tjjg.xmbm";
DataTable dt = db.DataAccessor.QueryDataTable(sql1);
return dt;
}
}
public string GetAllJiBing()
{
using (var db = new DbEntities())
{
var data = from j in db.t_jbks
select new
{
jbmc = j.jbmc,
jbbm = j.jbbm,
zjm = j.zjm
};
return Newtonsoft.Json.JsonConvert.SerializeObject(data.ToList());
}
}
public DataTable GetJbtj1Bytm(int tmh)
{
using (var db = new DbEntities())
{
string sql = "select a.jbmc,a.zjm,a.jbbm from t_jbk a,t_jbtj1 b where a.jbbm=b.jbbm and b.tm=" + tmh + "";
DataTable dt = db.DataAccessor.QueryDataTable(sql);
return dt;
}
}
public List<int> GetJbtjListByTm(int tmh)
{
using (var db = new DbEntities())
{
var data = from t in db.t_jbtj1s where t.tm == tmh select t.jbbm;
return data.ToList();
}
}
public List<int> GetJcxmbmListByZhbm(int zhbm)
{
using (var db = new DbEntities())
{
var data = from z in db.t_zhxmmxs where z.zhbm == zhbm select z.xmbm;
return data.ToList();
}
}
public List<t_jbk> GetJbkByJbbm(int[] arrays)
{
using (var db = new DbEntities())
{
if (arrays.Count() == 0)
{
return new List<t_jbk>();
}
else
{
var data = from j in db.t_jbks where arrays.Contains(j.jbbm) select j;
return data.ToList();
}
}
}
public string GetJbkByJbbmToStr(int[] arrays)
{
using (var db = new DbEntities())
{
if (arrays.Count() == 0)
{
return "";
}
else
{
var data = from j in db.t_jbks where arrays.Contains(j.jbbm) && j.txnr != "" select j;
return Newtonsoft.Json.JsonConvert.SerializeObject(data.ToList());
}
}
}
public string GetHisTable(int[] arrays)
{
using (var db = new DbEntities())
{
var data1 = from k in db.t_kss
join d in db.t_tjjds on k.ksbm equals d.ksbm
join t in db.t_ttgzbs on d.tm equals t.tm
where arrays.Contains(d.tm)
select new
{
ksmc = k.ksmc,
kszd = d.zdjg,
tjrq = t.tjrq
};
var data2 = from k in db.t_kss
join d in db.t_tjjds on k.ksbm equals d.ksbm
join g in db.t_grgzbs on d.tm equals g.tm
where arrays.Contains(d.tm)
select new
{
ksmc = k.ksmc,
kszd = d.zdjg,
tjrq = g.tjrq
};
Array data1A = data1.ToArray();
Array data2A = data2.ToArray();
Array data = Array.CreateInstance(typeof(Object), data1A.Length + data2A.Length);
data1A.CopyTo(data, 0);
data2A.CopyTo(data, data1A.Length);
return Newtonsoft.Json.JsonConvert.SerializeObject(data);
}
}
public string GetHisTable2(int[] arrays, int ksbm)
{
using (var db = new DbEntities())
{
var data1 = from k in db.t_kss
join d in db.t_tjjds on k.ksbm equals d.ksbm
join t in db.t_ttgzbs on d.tm equals t.tm
where arrays.Contains(d.tm) && d.ksbm == ksbm
select new
{
ksmc = k.ksmc,
kszd = d.zdjg,
tjrq = t.tjrq
};
var data2 = from k in db.t_kss
join d in db.t_tjjds on k.ksbm equals d.ksbm
join g in db.t_grgzbs on d.tm equals g.tm
where arrays.Contains(d.tm) && d.ksbm == ksbm
select new
{
ksmc = k.ksmc,
kszd = d.zdjg,
tjrq = g.tjrq
};
Array data1A = data1.ToArray();
Array data2A = data2.ToArray();
Array data = Array.CreateInstance(typeof(Object), data1A.Length + data2A.Length);
data1A.CopyTo(data, 0);
data2A.CopyTo(data, data1A.Length);
return Newtonsoft.Json.JsonConvert.SerializeObject(data);
}
}
public List<t_jbk> SelectJbk(string zjm)
{
using (var db = new DbEntities())
{
var data = from j in db.t_jbks where j.jbmc.Contains(zjm) select j;
return data.ToList();
}
}
public OperationResult DeletJbtj(int tm, int ksbm)
{
OperationResult or = new OperationResult();
using (var db = new DbEntities())
{
using (DbTransaction tan = db.DataAccessor.CreateTransaction())
{
try
{
List<t_jbtj> jbtjlist = (from j in db.t_jbtjs where j.tm == tm && j.fddm == ksbm select j).ToList();
foreach (t_jbtj jbtjAll in jbtjlist)
{
db.t_jbtjs.Delete(jbtjAll);
}
tan.Commit();
or.State = 1;
or.Message = "结果诊断删除完毕!";
}
catch (Exception e)
{
or.State = 2;
or.Message = "抱歉!请与管理员联系!";
}
}
}
return or;
}
public string fanhuiJbtj(int tm, int ksbm)
{
string or = "";
using (var db = new DbEntities())
{
using (DbTransaction tan = db.DataAccessor.CreateTransaction())
{
try
{
List<t_jbtj> jbtjlist = (from j in db.t_jbtjs where j.tm == tm && j.fddm == ksbm select j).ToList();
if (jbtjlist.Count != 0)
{
foreach (t_jbtj jbtjAll in jbtjlist)
{
or += jbtjAll.jbbm + ",";
}
}
else
{
or = "";
}
}
catch (Exception e)
{
}
}
}
return or;
}
public OperationResult JgGengXin(int tm, int jcxmbm, List<t_jbtj> jbtj, List<t_jbtj1> jbtj1)
{
OperationResult or = new OperationResult();
using (var db = new DbEntities())
{
using (DbTransaction tan = db.DataAccessor.CreateTransaction())
{
try
{
List<t_jbtj> jbtjlist = (from j in db.t_jbtjs where j.tm == tm && j.upflag == jcxmbm select j).ToList();
foreach (t_jbtj jbtjAll in jbtjlist)
{
db.t_jbtjs.Delete(jbtjAll);
}
foreach (t_jbtj jb in jbtj)
{
//if (jb.upflag != 5708 && jb.upflag != 5713)
//{
db.t_jbtjs.Insert(jb);
//}
}
if (jbtj1.Count != 0)
{
foreach (t_jbtj1 jb1 in jbtj1)
{
//if (jb1.upflag != 5708 && jb1.upflag != 5713)
//{
var dataJb1 = from j1 in db.t_jbtj1s where j1.jbbm == jb1.jbbm select j1;
if (!dataJb1.Any())
{
db.t_jbtj1s.Insert(jb1);
}
//}
}
}
tan.Commit();
or.State = 1;
or.Message = "科室结果诊断更新完毕!";
}
catch (Exception e)
{
or.State = 2;
or.Message = "抱歉!请与管理员联系!";
}
}
}
return or;
}
public OperationResult Delete(t_hzfx h)
{
OperationResult or = new OperationResult();
using (var db = new DbEntities())
{
using (DbTransaction tan = db.DataAccessor.CreateTransaction())
{
try
{
if (db.t_hzfxs.Where(t => t.tm == h.tm).Any())
{
db.t_hzfxs.Delete(h);
}
List<t_jbtj1> jbtjlist = (from j in db.t_jbtj1s where j.tm == h.tm select j).ToList();
foreach (t_jbtj1 jbtjs in jbtjlist)
{
db.t_jbtj1s.Delete(jbtjs);
}
tan.Commit();
or.State = 1;
or.Message = "该体检人汇总分析完成!";
}
catch (Exception ex)
{
or.State = 2;
or.Message = "抱歉!此次汇总分析失败,请与管理员联系!";
}
}
}
return or;
}
//public string GetJcxmList(string tmh)
//{
// using (var db = new DbEntities())
// {
// int tm = int.Parse(tmh.Trim());
// var data = from t in db.t_tempdjxms
// where t.tm == tm
// select t;
// if (data != null)
// {
// foreach (t_tempdjxm tt in data.ToList())
// {
// var zhxmmxbm = from z in db.t_zhxmmxs
// where z.zhbm == tt.zhbm
// select z;
// foreach (t_zhxmmx zz in zhxmmxbm.ToList())
// {
// var jcxmbm = from j in db.t_jcxms
// where j.jcxmbm == zz.xmbm
// select j;
// }
// }
// }
// return "";
// }
//}
public string GetCxDybgBytmh(string tmh)
{
using (var db = new DbEntities())
{
int tm = int.Parse(tmh);
var gr = db.t_grgzbs.FirstOrDefault(t => t.tm == tm);
var tt = db.t_ttgzbs.FirstOrDefault(t => t.tm == tm);
if (gr != null)
{
var data = from g in db.t_grgzbs
where g.tm == tm
select new
{
tm = g.tm,
xm = g.xm,
xb = g.xb,
xb1 = (g.xb == 0) ? "男" : "女",
nl = g.nl,
tjrq = g.tjrq,
dw = "个检报告",
tmztz = g.tmztz,
csrq = g.csrq
};
return Newtonsoft.Json.JsonConvert.SerializeObject(data.ToList());
}
else if (tt != null)
{
var data = from t in db.t_ttgzbs
join h in db.t_hts on t.htbm equals h.htbm
join k in db.t_khs on h.khbm equals k.khbm
where t.tm == tm
select new
{
tm = t.tm,
xm = t.xm,
xb = t.xb,
xb1 = (t.xb == 0) ? "男" : "女",
nl = t.nl,
tjrq = t.tjrq,
dw = k.khmc,
tmztz = t.tmztz,
csrq = t.csrq
};
return Newtonsoft.Json.JsonConvert.SerializeObject(data.ToList());
}
else
{
return "1";
}
}
}
public string GetCxDybgByTxttmh(string tmh)
{
using (var db = new DbEntities())
{
int tm = int.Parse(tmh);
var gr = db.t_grgzbs.FirstOrDefault(t => t.tm == tm);
var tt = db.t_ttgzbs.FirstOrDefault(t => t.tm == tm);
if (gr != null)
{
var data = from g in db.t_grgzbs
where g.tm == tm
select new
{
tm = g.tm,
xm = g.xm,
sfzh = g.sfzh,
nl = g.nl,
tel = g.dh
};
return Newtonsoft.Json.JsonConvert.SerializeObject(data.ToList());
}
else if (tt != null)
{
var data = from t in db.t_ttgzbs
join h in db.t_hts on t.htbm equals h.htbm
join k in db.t_khs on h.khbm equals k.khbm
where t.tm == tm
select new
{
tm = t.tm,
xm = t.xm,
sfzh = t.sfzh,
nl = t.nl,
tel = t.tel
};
return Newtonsoft.Json.JsonConvert.SerializeObject(data.ToList());
}
else
{
return "1";
}
}
}
public string GetCxDybgByHtbms(int htbm)
{
using (var db = new DbEntities())
{
var data = from t in db.t_ttgzbs
join h in db.t_hts on t.htbm equals h.htbm
join k in db.t_khs on h.khbm equals k.khbm
where t.htbm == htbm && t.tmztz > 6
select new
{
tm = t.tm,
xm = t.xm,
sfzh = t.sfzh,
nl = t.nl,
tel = t.tel
};
return Newtonsoft.Json.JsonConvert.SerializeObject(data.ToList());
}
}
public Data.OperationResult Insert(t_hzfx h, List<t_jbtj1> jbtj, string tmh, bool finish)
{
OperationResult or = new OperationResult();
short zcyy = 0;
int fddm = 0;
using (DbEntities db = new DbEntities())
{
using (DbTransaction tan = db.DataAccessor.CreateTransaction())
{
try
{
int itm = int.Parse(tmh.Trim());
db.t_hzfxs.Insert(h);
foreach (t_jbtj1 jb in jbtj)
{
db.t_jbtj1s.Insert(jb);
}
var gr = db.t_grgzbs.FirstOrDefault(g => g.tm == itm);
var tt = db.t_ttgzbs.FirstOrDefault(t => t.tm == itm);
if (gr != null)
{
fddm = gr.fddm;
if (finish)
{
gr.dyrq = new DateTime(1900, 1, 1);
if (gr.tmztz != -2)
{
gr.tmztz = 6;
}
db.t_grgzbs.Update(gr);
}
else
{
gr.dyrq = new DateTime(1900, 1, 1);
if (gr.tmztz != -2)
{
gr.tmztz = 10;
}
db.t_grgzbs.Update(gr);
}
}
else if (tt != null)
{
fddm = tt.fddm;
if (finish)
{
tt.dyrq = new DateTime(1900, 1, 1);
if (tt.tmztz != -2)
{
tt.tmztz = 6;
}
db.t_ttgzbs.Update(tt);
}
else
{
tt.dyrq = new DateTime(1900, 1, 1);
if (tt.tmztz != -2)
{
tt.tmztz = 10;
}
db.t_ttgzbs.Update(tt);
}
}
else
{
tan.Rollback();
or.State = 0;
or.Message = "在团检记录和个检记录里都找不到当前条码";
}
tan.Commit();
or.State = 1;
if (finish && fddm == 1)
{
//if (h.fddm == 2)
//{
// if (gr != null)
// {
// if (System.Configuration.ConfigurationManager.AppSettings["UploadReport"] == "true")
// {
// ParameterizedThreadStart ParStart = new ParameterizedThreadStart(UploadReport);
// Thread myThread = new Thread(ParStart);
// object o = tmh;
// myThread.Start(o);
// }
// }
// else
// {
// zcyy = GetzcyyByHtbm(tt.htbm);
// if (zcyy != 0)
// {
// if (System.Configuration.ConfigurationManager.AppSettings["UploadReport"] == "true")
// {
// ParameterizedThreadStart ParStart = new ParameterizedThreadStart(UploadReport);
// Thread myThread = new Thread(ParStart);
// object o = tmh;
// myThread.Start(o);
// }
// }
// }
//}
//else
//{
// if (System.Configuration.ConfigurationManager.AppSettings["UploadReport"] == "true")
// {
// ParameterizedThreadStart ParStart = new ParameterizedThreadStart(UploadReport);
// Thread myThread = new Thread(ParStart);
// object o = tmh;
// myThread.Start(o);
// }
//}
if (h.fddm == 1)
{
if (System.Configuration.ConfigurationManager.AppSettings["UploadReport"] == "true")
{
ParameterizedThreadStart ParStart = new ParameterizedThreadStart(UploadReport);
Thread myThread = new Thread(ParStart);
object o = tmh;
myThread.Start(o);
}
}
or.Message = "现在进入打印流程!";
}
else
{
or.Message = "现在进入审核流程!";
}
}
catch (Exception e)
{
or.State = 2;
or.Message = "抱歉!此次汇总分析失败,请与管理员联系!"+e.StackTrace;
}
}
}
return or;
}
public string GetTcByTcbm(int gzb, string tcbm)
{
using (var db = new DbEntities())
{
string sql = "";
string tcmc = "";
if (gzb == 1)
{
sql = "select * from t_tc where tcbm ='" + tcbm + "'";
}
if (gzb == 2)
{
sql = "select * from t_tc where tcbm in (select tcbm from t_htfzb where htfzbm='" + tcbm + "')";
}
DataTable dt = db.DataAccessor.QueryDataTable(sql);
if (dt.Rows.Count != 0)
{
tcmc = dt.Rows[0]["tcmc"].ToString();
}
else
{
tcmc = ""; ;
}
return tcmc;
}
}
void UploadReport(object tmh)
{
try
{
//程序代码
using (var db = new DbEntities())
{
var vkssver = new t_ksBll();
List<keshi> ccks = vkssver.getccks();
var ccbg = new t_tempdjxmBll();
List<t_ccbg> ccbgs = ccbg.getCCBG(0, tmh.ToString());
//程序代码
DataTable ccdt = new DataTable();
ccdt.Columns.Add("bt", typeof(string));
ccdt.Columns.Add("sj", typeof(string));
ccdt.Columns.Add("jg", typeof(string));
ccdt.Columns.Add("img", typeof(byte[]));
ccdt.Columns.Add("ksbm", typeof(string));
FastReport.Report re = new FastReport.Report();
re.Load(AppDomain.CurrentDomain.BaseDirectory + "Report\\tjbg.frx");
var itm = 0;
int.TryParse(tmh.ToString(), out itm);
int fddm = 0;
string xm = "";
int xb = 0;
DateTime tjrq;
string sjh = "";
string sfz = "";
string bj = "";
string title = "";
string tcmc = "";
DataTable dt = new DataTable();
//string sjh = "";
string grgzbString = new BLL.t_grgzbBll().GetGrgzbListByTm(itm);
string ttgzbString = new BLL.t_ttgzbBll().GetTtgzbListByTm(itm);
int hyh = 0;
//创建个人report或者团体report
if (grgzbString.Length > 2)
{
bj = "个人体检";
title = "个检";
DataTable grgzbDt = Newtonsoft.Json.JsonConvert.DeserializeObject(grgzbString, typeof(DataTable)) as DataTable;
re.RegisterData(grgzbDt, "xxTable");
hyh = Convert.ToInt32(grgzbDt.Rows[0]["hyh"]);
fddm = Convert.ToInt32(grgzbDt.Rows[0]["fddm"].ToString());
xm = grgzbDt.Rows[0]["xm"].ToString();
sjh = grgzbDt.Rows[0]["dh"].ToString();
sfz = grgzbDt.Rows[0]["sfzh"].ToString();
xb = Convert.ToInt32(grgzbDt.Rows[0]["xb"].ToString());
tjrq = Convert.ToDateTime(grgzbDt.Rows[0]["tjrq"].ToString());
tcmc = GetTcByTcbm(1, grgzbDt.Rows[0]["tcbm"].ToString());
}
else
{
DataTable ttgzbDt = Newtonsoft.Json.JsonConvert.DeserializeObject(ttgzbString, typeof(DataTable)) as DataTable;
try
{
title = GetKhmcByHtbm(Convert.ToInt32(ttgzbDt.Rows[0]["htbm"]));
bj = GetHtbjByHtbm(Convert.ToInt32(ttgzbDt.Rows[0]["htbm"]));
re.RegisterData(ttgzbDt, "xxTable");
hyh = Convert.ToInt32(ttgzbDt.Rows[0]["hyh"]);
fddm = Convert.ToInt32(ttgzbDt.Rows[0]["fddm"].ToString());
xm = ttgzbDt.Rows[0]["xm"].ToString();
sjh = ttgzbDt.Rows[0]["tel"].ToString();
sfz = ttgzbDt.Rows[0]["sfzh"].ToString();
xb = Convert.ToInt32(ttgzbDt.Rows[0]["xb"].ToString());
tjrq = Convert.ToDateTime(ttgzbDt.Rows[0]["tjrq"].ToString());
tcmc = GetTcByTcbm(2, ttgzbDt.Rows[0]["htfzbm"].ToString());
}
catch (Exception ex)
{
throw ex;
}
}
re.SetParameterValue("bj", bj);
re.SetParameterValue("title", title);
re.SetParameterValue("sjh", sjh);
//创建第一页体检套餐 参数
string getTcStr = new BLL.t_ttgzbBll().GetTtTcByTm(itm);
DataTable tcDt = Newtonsoft.Json.JsonConvert.DeserializeObject(getTcStr, typeof(DataTable)) as DataTable;
if (tcDt.Rows.Count != 0)
{
re.SetParameterValue("tcmc", tcDt.Rows[0]["tcmc"].ToString().Trim());
}
else
{
re.SetParameterValue("tcmc", "");
}
if (fddm == 2)
{
//创建心电图报告
DataTable tjjdImageDt = new BLL.t_tjjdBll().getTjjdImage(itm, 21);
if (tjjdImageDt.Rows.Count != 0)
{
re.RegisterData(tjjdImageDt, "xdtbgDt");
re.SetParameterValue("xdtImageOn", "yes");
}
else
{
re.SetParameterValue("xdtImageOn", "no");
}
}
//创建汇总分析表datatable
string hzfxString = GetHzfxByTm(itm);
DataTable hzfxDt = Newtonsoft.Json.JsonConvert.DeserializeObject(hzfxString, typeof(DataTable)) as DataTable;
if (hzfxDt.Rows.Count != 0)
{
string lsdt = GetZjysXm(hzfxDt.Rows[0][4].ToString());
dt = Newtonsoft.Json.JsonConvert.DeserializeObject(lsdt, typeof(DataTable)) as DataTable;
if (dt.Rows.Count == 0)
{
DataTable hzfxImage = new DataTable();
hzfxImage.Columns.Add("xm");
hzfxImage.Columns.Add("czym");
hzfxImage.Columns.Add("image");
re.RegisterData(hzfxImage, "hzfxImage");
}
else
{
dt.Columns.Add(new DataColumn("image", typeof(byte[])));
foreach (DataRow dr in dt.Rows)
{
if (dr["image1"].ToString() == "")
{
string zdys = dr["xm"].ToString();
Bitmap b = new Bitmap(80, 20);
Graphics g = Graphics.FromImage(b);
g.Clear(Color.White);
g.DrawString(zdys, new Font("宋体", 12), new SolidBrush(Color.Black), new Point(2, 2));
MemoryStream stream = new MemoryStream();
b.Save(stream, ImageFormat.Jpeg);
//输出图片流
//return File(stream.ToArray(), "image/jpeg");
dr["image"] = stream.ToArray();
}
else
{
byte[] bs = Convert.FromBase64String(dr["image1"].ToString());
dr["image"] = bs;
}
}
//byte[] bs = Convert.FromBase64String(tjdr["image1"].ToString());
re.RegisterData(dt, "hzfxImage");
re.RegisterData(hzfxDt, "hzfxTable");
re.SetParameterValue("hzfxOn", "yes");
//查询总检医生中文名称,插入到参数里
re.SetParameterValue("zjys", dt.Rows[0][0].ToString());
re.SetParameterValue("zjysImage", dt.Rows[0][2].ToString());
}
//re.RegisterData(hzfxDt, "hzfxTable");
//re.SetParameterValue("hzfxOn", "yes");
//查询总检医生中文名称,插入到参数里
//re.SetParameterValue("zjys", dt.Rows[0][0].ToString());
//re.SetParameterValue("zjysImage", dt.Rows[0][2].ToString());
}
else
{
DataTable hzfxImage = new DataTable();
hzfxImage.Columns.Add("xm");
hzfxImage.Columns.Add("czym");
hzfxImage.Columns.Add("image");
re.RegisterData(hzfxImage, "hzfxImage");
re.SetParameterValue("hzfxOn", "no");
re.SetParameterValue("zjys", "");
}
//创建体检汇总datatable
string tjhzString = GetTjhzByTm(itm, fddm);
DataTable tjhzDt = Newtonsoft.Json.JsonConvert.DeserializeObject(tjhzString, typeof(DataTable)) as DataTable;
int a = 1;
if (tjhzDt.Rows.Count != 0)
{
for (int i = 0; i < tjhzDt.Rows.Count; i++)
{
tjhzDt.Rows[i]["ksmc"] = a.ToString() + "、" + tjhzDt.Rows[i]["ksmc"].ToString() + ":";
a++;
}
re.RegisterData(tjhzDt, "tjhzTable");
re.SetParameterValue("tjhzOn", "yes");
string explainStr = GetExplain(itm, fddm);
if (explainStr.Length > 0)
{
re.SetParameterValue("explain", explainStr);
re.SetParameterValue("explainOn", "yes");
}
else
{
re.SetParameterValue("explainOn", "no");
}
}
else
{
DataTable tjhzDt2 = new DataTable();
tjhzDt2.Columns.Add("ksmc");
tjhzDt2.Columns.Add("zdjg");
re.RegisterData(tjhzDt2, "tjhzTable");
re.SetParameterValue("tjhzOn", "no");
}
//查询健康指导
List<int> jbtjlist = GetJbtjListByTm(itm);
if (jbtjlist.Count != 0)
{
DataTable jbkDt = new DataTable();
string jbks = GetJbkByJbbmToStr(jbtjlist.ToArray());
jbkDt = Newtonsoft.Json.JsonConvert.DeserializeObject(jbks, typeof(DataTable)) as DataTable;
if (jbkDt.Rows.Count != 0)
{
re.RegisterData(jbkDt, "jbkDt");
re.SetParameterValue("notjbk", "yes");
}
else
{
re.SetParameterValue("notjbk", "no");
}
}
else
{
re.SetParameterValue("notjbk", "no");
}
//创建非化验项目的体检诊断datatable
string tjjdString = GetTjjdStringByTm(itm);
DataTable tjjdDt = Newtonsoft.Json.JsonConvert.DeserializeObject(tjjdString, typeof(DataTable)) as DataTable;
tjjdDt.Columns.Add(new DataColumn("image", typeof(byte[])));
//tjjdDt.Columns.Add(new DataColumn("image1", typeof(byte[])));
foreach (DataRow tjdr in tjjdDt.Rows)
{
//if (tjdr["image2"].ToString() == "")
//{
// tjdr["image1"] = "";
//}
//else
//{
// byte[] bs = Convert.FromBase64String(tjdr["image2"].ToString());
// tjdr["image1"] = bs;
//}
#region CT二次审核
if ("王元玺".Equals(tjdr["czy"].ToString()))
{
if (tjdr["image2"].ToString() == "")
{
string zdys = "王德成/王元玺";
Bitmap b = new Bitmap(80, 20);
Graphics g = Graphics.FromImage(b);
g.Clear(Color.White);
g.DrawString(zdys, new Font("宋体", 12), new SolidBrush(Color.Black), new Point(2, 2));
MemoryStream stream = new MemoryStream();
b.Save(stream, ImageFormat.Jpeg);
//输出图片流
//return File(stream.ToArray(), "image/jpeg");
tjdr["image"] = stream.ToArray();
}
else
{
byte[] bs = Convert.FromBase64String(tjdr["image2"].ToString());
tjdr["image"] = bs;
}
continue;
}
#endregion
if (tjdr["image1"].ToString() == "")
{
string zdys = tjdr["zdys"].ToString();
Bitmap b = new Bitmap(80, 20);
Graphics g = Graphics.FromImage(b);
g.Clear(Color.White);
g.DrawString(zdys, new Font("宋体", 12), new SolidBrush(Color.Black), new Point(2, 2));
MemoryStream stream = new MemoryStream();
b.Save(stream, ImageFormat.Jpeg);
//输出图片流
//return File(stream.ToArray(), "image/jpeg");
tjdr["image"] = stream.ToArray();
}
else
{
byte[] bs = Convert.FromBase64String(tjdr["image1"].ToString());
tjdr["image"] = bs;
}
}
if (tjjdDt.Rows.Count != 0)
{
DataView dv = tjjdDt.DefaultView;
dv.Sort = "fxsx Asc";
DataTable tjjdDts = dv.ToTable();
#region
foreach (DataRow dr in tjjdDts.Rows)
{
int ks = int.Parse(dr["ksbm"].ToString());
if (ccbgs.Where(t => t.ksbm == ks).Any())
{
DataRow ccdr = ccdt.NewRow();
ccdr["jg"] = dr["zdjg"];
ccdr["ksbm"] = ks.ToString();
var k = ccks.Where(t => t.ksbm == ks).FirstOrDefault();
if (k != null)
{
ccdr["bt"] = k.bgbt;
}
Bitmap bm = new Bitmap(718, 425);
Graphics g = Graphics.FromImage(bm);
int w = 718;
int h = 425;
g.FillRectangle(Brushes.White, 0, 0, w, h);
var ccksbg = ccbgs.Where(t => t.ksbm == ks).ToList();
if (ccksbg.Count == 1)
{
MemoryStream ms = new MemoryStream(ccksbg[0].image);
Image img = Image.FromStream(ms);
float wb = 1.0f * img.Width / w;
float hb = 1.0f * img.Height / h;
if (wb > hb)
{
if (wb > 1)
{
float vh = img.Height / wb;
g.DrawImage(img, new RectangleF(0, (h - vh) / 2, w, vh));
}
else
{
g.DrawImage(img, (w - img.Width) / 2, (h - img.Height) / 2);
}
}
else
{
if (hb > 1)
{
float vw = img.Width / hb;
g.DrawImage(img, new RectangleF((w - vw) / 2, 0, vw, h));
}
else
{
g.DrawImage(img, (w - img.Width) / 2, (h - img.Height) / 2);
}
}
}
else if (ccksbg.Count == 2)
{
MemoryStream ms = new MemoryStream(ccksbg[0].image);
Image img = Image.FromStream(ms);
w = w / 2 - 10;
float wb = 1.0f * img.Width / w;
float hb = 1.0f * img.Height / h;
if (wb > hb)
{
if (wb > 1)
{
float vh = img.Height / wb;
g.DrawImage(img, new RectangleF(5, (h - vh) / 2, w, vh));
}
else
{
g.DrawImage(img, (w - img.Width) / 2 + 5, (h - img.Height) / 2);
}
}
else
{
if (hb > 1)
{
float vw = img.Width / hb;
g.DrawImage(img, new RectangleF((w - vw) / 2 + 5, 0, vw, h));
}
else
{
g.DrawImage(img, (w - img.Width) / 2 + 5, (h - img.Height) / 2);
}
}
ms = new MemoryStream(ccksbg[1].image);
img = Image.FromStream(ms);
//w = w / 2 - 10;
wb = 1.0f * img.Width / w;
hb = 1.0f * img.Height / h;
if (wb > hb)
{
if (wb > 1)
{
float vh = img.Height / wb;
g.DrawImage(img, new RectangleF(5 + w, (h - vh) / 2, w, vh));
}
else
{
g.DrawImage(img, (w - img.Width) / 2 + 5 + w, (h - img.Height) / 2);
}
}
else
{
if (hb > 1)
{
float vw = img.Width / hb;
g.DrawImage(img, new RectangleF((w - vw) / 2 + 5 + w, 0, vw, h));
}
else
{
g.DrawImage(img, (w - img.Width) / 2 + 5 + w, (h - img.Height) / 2);
}
}
}
else if (ccksbg.Count == 3)
{
MemoryStream ms = new MemoryStream(ccksbg[0].image);
Image img = Image.FromStream(ms);
w = w / 2 - 10;
h = h / 2 - 10;
float wb = 1.0f * img.Width / w;
float hb = 1.0f * img.Height / h;
if (wb > hb)
{
if (wb > 1)
{
float vh = img.Height / wb;
g.DrawImage(img, new RectangleF(5, (h - vh) / 2, w, vh));
}
else
{
g.DrawImage(img, (w - img.Width) / 2 + 5, (h - img.Height) / 2);
}
}
else
{
if (hb > 1)
{
float vw = img.Width / hb;
g.DrawImage(img, new RectangleF((w - vw) / 2 + 5, 0, vw, h));
}
else
{
g.DrawImage(img, (w - img.Width) / 2 + 5, (h - img.Height) / 2);
}
}
ms = new MemoryStream(ccksbg[1].image);
img = Image.FromStream(ms);
//w = w / 2 - 10;
wb = 1.0f * img.Width / w;
hb = 1.0f * img.Height / h;
if (wb > hb)
{
if (wb > 1)
{
float vh = img.Height / wb;
g.DrawImage(img, new RectangleF(5 + w, (h - vh) / 2, w, vh));
}
else
{
g.DrawImage(img, (w - img.Width) / 2 + 5 + w, (h - img.Height) / 2);
}
}
else
{
if (hb > 1)
{
float vw = img.Width / hb;
g.DrawImage(img, new RectangleF((w - vw) / 2 + 5 + w, 0, vw, h));
}
else
{
g.DrawImage(img, (w - img.Width) / 2 + 5 + w, (h - img.Height) / 2);
}
}
ms = new MemoryStream(ccksbg[2].image);
img = Image.FromStream(ms);
//w = w / 2 - 10;
wb = 1.0f * img.Width / w;
hb = 1.0f * img.Height / h;
if (wb > hb)
{
if (wb > 1)
{
float vh = img.Height / wb;
g.DrawImage(img, new RectangleF(5 + w / 2, (h - vh) / 2 + h, w, vh));
}
else
{
g.DrawImage(img, (w - img.Width) / 2 + 5 + w / 2, (h - img.Height) / 2 + h);
}
}
else
{
if (hb > 1)
{
float vw = img.Width / hb;
g.DrawImage(img, new RectangleF((w - vw) / 2 + 5 + w / 2, 0 + h, vw, h));
}
else
{
g.DrawImage(img, (w - img.Width) / 2 + 5 + w / 2, (h - img.Height) / 2 + h);
}
}
}
else if (ccksbg.Count == 4)
{
MemoryStream ms = new MemoryStream(ccksbg[0].image);
Image img = Image.FromStream(ms);
w = w / 2 - 10;
h = h / 2 - 10;
float wb = 1.0f * img.Width / w;
float hb = 1.0f * img.Height / h;
if (wb > hb)
{
if (wb > 1)
{
float vh = img.Height / wb;
g.DrawImage(img, new RectangleF(5, (h - vh) / 2, w, vh));
}
else
{
g.DrawImage(img, (w - img.Width) / 2 + 5, (h - img.Height) / 2);
}
}
else
{
if (hb > 1)
{
float vw = img.Width / hb;
g.DrawImage(img, new RectangleF((w - vw) / 2 + 5, 0, vw, h));
}
else
{
g.DrawImage(img, (w - img.Width) / 2 + 5, (h - img.Height) / 2);
}
}
ms = new MemoryStream(ccksbg[1].image);
img = Image.FromStream(ms);
//w = w / 2 - 10;
wb = 1.0f * img.Width / w;
hb = 1.0f * img.Height / h;
if (wb > hb)
{
if (wb > 1)
{
float vh = img.Height / wb;
g.DrawImage(img, new RectangleF(10 + w, (h - vh) / 2, w, vh));
}
else
{
g.DrawImage(img, (w - img.Width) / 2 + 10 + w, (h - img.Height) / 2);
}
}
else
{
if (hb > 1)
{
float vw = img.Width / hb;
g.DrawImage(img, new RectangleF((w - vw) / 2 + 10 + w, 0, vw, h));
}
else
{
g.DrawImage(img, (w - img.Width) / 2 + 10 + w, (h - img.Height) / 2);
}
}
ms = new MemoryStream(ccksbg[2].image);
img = Image.FromStream(ms);
//w = w / 2 - 10;
wb = 1.0f * img.Width / w;
hb = 1.0f * img.Height / h;
if (wb > hb)
{
if (wb > 1)
{
float vh = img.Height / wb;
g.DrawImage(img, new RectangleF(5, (h - vh) / 2 + h + 5, w, vh));
}
else
{
g.DrawImage(img, (w - img.Width) / 2 + 5, (h - img.Height) / 2 + h + 5);
}
}
else
{
if (hb > 1)
{
float vw = img.Width / hb;
g.DrawImage(img, new RectangleF((w - vw) / 2 + 5, 0 + h + 5, vw, h));
}
else
{
g.DrawImage(img, (w - img.Width) / 2 + 5, (h - img.Height) / 2 + h + 5);
}
}
ms = new MemoryStream(ccksbg[3].image);
img = Image.FromStream(ms);
//w = w / 2 - 10;
wb = 1.0f * img.Width / w;
hb = 1.0f * img.Height / h;
if (wb > hb)
{
if (wb > 1)
{
float vh = img.Height / wb;
g.DrawImage(img, new RectangleF(5, (h - vh) / 2 + h, w, vh));
}
else
{
g.DrawImage(img, (w - img.Width) / 2 + 5, (h - img.Height) / 2 + h);
}
}
else
{
if (hb > 1)
{
float vw = img.Width / hb;
g.DrawImage(img, new RectangleF((w - vw) / 2 + 10 + w, 0 + h, vw, h));
}
else
{
g.DrawImage(img, (w - img.Width) / 2 + 10 + w, (h - img.Height) / 2 + h);
}
}
}
else if (ccksbg.Count == 5)
{
MemoryStream ms = new MemoryStream(ccksbg[0].image);
Image img = Image.FromStream(ms);
w = w / 3 - 10;
h = h / 2 - 10;
float wb = 1.0f * img.Width / w;
float hb = 1.0f * img.Height / h;
if (wb > hb)
{
if (wb > 1)
{
float vh = img.Height / wb;
g.DrawImage(img, new RectangleF(5, (h - vh) / 2, w, vh));
}
else
{
g.DrawImage(img, (w - img.Width) / 2 + 5, (h - img.Height) / 2);
}
}
else
{
if (hb > 1)
{
float vw = img.Width / hb;
g.DrawImage(img, new RectangleF((w - vw) / 2 + 5, 0, vw, h));
}
else
{
g.DrawImage(img, (w - img.Width) / 2 + 5, (h - img.Height) / 2);
}
}
ms = new MemoryStream(ccksbg[1].image);
img = Image.FromStream(ms);
//w = w / 2 - 10;
wb = 1.0f * img.Width / w;
hb = 1.0f * img.Height / h;
if (wb > hb)
{
if (wb > 1)
{
float vh = img.Height / wb;
g.DrawImage(img, new RectangleF(10 + w, (h - vh) / 2, w, vh));
}
else
{
g.DrawImage(img, (w - img.Width) / 2 + 10 + w, (h - img.Height) / 2);
}
}
else
{
if (hb > 1)
{
float vw = img.Width / hb;
g.DrawImage(img, new RectangleF((w - vw) / 2 + 10 + w, 0, vw, h));
}
else
{
g.DrawImage(img, (w - img.Width) / 2 + 10 + w, (h - img.Height) / 2);
}
}
ms = new MemoryStream(ccksbg[2].image);
img = Image.FromStream(ms);
//w = w / 2 - 10;
wb = 1.0f * img.Width / w;
hb = 1.0f * img.Height / h;
if (wb > hb)
{
if (wb > 1)
{
float vh = img.Height / wb;
g.DrawImage(img, new RectangleF(15 + 2 * w, (h - vh) / 2, w, vh));
}
else
{
g.DrawImage(img, (w - img.Width) / 2 + 15 + 2 * w, (h - img.Height) / 2);
}
}
else
{
if (hb > 1)
{
float vw = img.Width / hb;
g.DrawImage(img, new RectangleF((w - vw) / 2 + 15 + 2 * w, 0, vw, h));
}
else
{
g.DrawImage(img, (w - img.Width) / 2 + 15 + 2 * w, (h - img.Height) / 2);
}
}
ms = new MemoryStream(ccksbg[3].image);
img = Image.FromStream(ms);
//w = w / 2 - 10;
wb = 1.0f * img.Width / w;
hb = 1.0f * img.Height / h;
if (wb > hb)
{
if (wb > 1)
{
float vh = img.Height / wb;
g.DrawImage(img, new RectangleF(5 + w / 2, (h - vh) / 2 + 5 + h, w, vh));
}
else
{
g.DrawImage(img, (w - img.Width) / 2 + 5 + w / 2, (h - img.Height) / 2 + 5 + h, w, h);
}
}
else
{
if (hb > 1)
{
float vw = img.Width / hb;
g.DrawImage(img, new RectangleF((w - vw) / 2 + 5 + w / 2, 5 + h, vw, h));
}
else
{
g.DrawImage(img, (w - img.Width) / 2 + 5 + w / 2, (h - img.Height) / 2, w, h);
}
}
ms = new MemoryStream(ccksbg[4].image);
img = Image.FromStream(ms);
//w = w / 2 - 10;
wb = 1.0f * img.Width / w;
hb = 1.0f * img.Height / h;
if (wb > hb)
{
if (wb > 1)
{
float vh = img.Height / wb;
g.DrawImage(img, new RectangleF(10 + w + w / 2, (h - vh) / 2 + h + 5, w, vh));
}
else
{
g.DrawImage(img, (w - img.Width) / 2 + 10 + w + w / 2, (h - img.Height) / 2 + h);
}
}
else
{
if (hb > 1)
{
float vw = img.Width / hb;
g.DrawImage(img, new RectangleF((w - vw) / 2 + 10 + w + w / 2, 5 + h, vw, h));
}
else
{
g.DrawImage(img, (w - img.Width) / 2 + 10 + w + w / 2, (h - img.Height) / 2);
}
}
}
else if (ccksbg.Count == 6)
{
MemoryStream ms = new MemoryStream(ccksbg[0].image);
Image img = Image.FromStream(ms);
w = w / 3 - 10;
h = h / 2 - 10;
float wb = 1.0f * img.Width / w;
float hb = 1.0f * img.Height / h;
if (wb > hb)
{
if (wb > 1)
{
float vh = img.Height / wb;
g.DrawImage(img, new RectangleF(5, (h - vh) / 2, w, vh));
}
else
{
g.DrawImage(img, (w - img.Width) / 2 + 5, (h - img.Height) / 2);
}
}
else
{
if (hb > 1)
{
float vw = img.Width / hb;
g.DrawImage(img, new RectangleF((w - vw) / 2 + 5, 0, vw, h));
}
else
{
g.DrawImage(img, (w - img.Width) / 2 + 5, (h - img.Height) / 2);
}
}
ms = new MemoryStream(ccksbg[1].image);
img = Image.FromStream(ms);
//w = w / 2 - 10;
wb = 1.0f * img.Width / w;
hb = 1.0f * img.Height / h;
if (wb > hb)
{
if (wb > 1)
{
float vh = img.Height / wb;
g.DrawImage(img, new RectangleF(10 + w, (h - vh) / 2, w, vh));
}
else
{
g.DrawImage(img, (w - img.Width) / 2 + 10 + w, (h - img.Height) / 2);
}
}
else
{
if (hb > 1)
{
float vw = img.Width / hb;
g.DrawImage(img, new RectangleF((w - vw) / 2 + 10 + w, 0, vw, h));
}
else
{
g.DrawImage(img, (w - img.Width) / 2 + 10 + w, (h - img.Height) / 2);
}
}
ms = new MemoryStream(ccksbg[2].image);
img = Image.FromStream(ms);
//w = w / 2 - 10;
wb = 1.0f * img.Width / w;
hb = 1.0f * img.Height / h;
if (wb > hb)
{
if (wb > 1)
{
float vh = img.Height / wb;
g.DrawImage(img, new RectangleF(15 + 2 * w, (h - vh) / 2, w, vh));
}
else
{
g.DrawImage(img, (w - img.Width) / 2 + 15 + 2 * w, (h - img.Height) / 2);
}
}
else
{
if (hb > 1)
{
float vw = img.Width / hb;
g.DrawImage(img, new RectangleF((w - vw) / 2 + 15 + 2 * w, 0, vw, h));
}
else
{
g.DrawImage(img, (w - img.Width) / 2 + 15 + 2 * w, (h - img.Height) / 2);
}
}
ms = new MemoryStream(ccksbg[3].image);
img = Image.FromStream(ms);
//w = w / 2 - 10;
wb = 1.0f * img.Width / w;
hb = 1.0f * img.Height / h;
if (wb > hb)
{
if (wb > 1)
{
float vh = img.Height / wb;
g.DrawImage(img, new RectangleF(5, (h - vh) / 2 + 5 + h, w, vh));
}
else
{
g.DrawImage(img, (w - img.Width) / 2 + 5, (h - img.Height) / 2 + 5 + h, w, h);
}
}
else
{
if (hb > 1)
{
float vw = img.Width / hb;
g.DrawImage(img, new RectangleF((w - vw) / 2 + 5, 5 + h, vw, h));
}
else
{
g.DrawImage(img, (w - img.Width) / 2 + 5, (h - img.Height) / 2, w, h);
}
}
ms = new MemoryStream(ccksbg[4].image);
img = Image.FromStream(ms);
//w = w / 2 - 10;
wb = 1.0f * img.Width / w;
hb = 1.0f * img.Height / h;
if (wb > hb)
{
if (wb > 1)
{
float vh = img.Height / wb;
g.DrawImage(img, new RectangleF(10 + w, (h - vh) / 2 + h + 5, w, vh));
}
else
{
g.DrawImage(img, (w - img.Width) / 2 + 10 + w, (h - img.Height) / 2 + h);
}
}
else
{
if (hb > 1)
{
float vw = img.Width / hb;
g.DrawImage(img, new RectangleF((w - vw) / 2 + 10 + w, 5 + h, vw, h));
}
else
{
g.DrawImage(img, (w - img.Width) / 2 + 10 + w, (h - img.Height) / 2);
}
}
ms = new MemoryStream(ccksbg[5].image);
img = Image.FromStream(ms);
//w = w / 2 - 10;
wb = 1.0f * img.Width / w;
hb = 1.0f * img.Height / h;
if (wb > hb)
{
if (wb > 1)
{
float vh = img.Height / wb;
g.DrawImage(img, new RectangleF(15 + w + w, (h - vh) / 2 + h + 5, w, vh));
}
else
{
g.DrawImage(img, (w - img.Width) / 2 + 15 + w + w, (h - img.Height) / 2 + h);
}
}
else
{
if (hb > 1)
{
float vw = img.Width / hb;
g.DrawImage(img, new RectangleF((w - vw) / 2 + 15 + w + w, 5 + h, vw, h));
}
else
{
g.DrawImage(img, (w - img.Width) / 2 + 15 + w + w, (h - img.Height) / 2);
}
}
}
MemoryStream mso = new MemoryStream();
bm.Save(mso, System.Drawing.Imaging.ImageFormat.Jpeg);
ccdr["img"] = mso.ToArray();
ccdt.Rows.Add(ccdr);
}
if (dr["djsj"].ToString().Length > 10)
{
dr["djsj"] = dr["djsj"].ToString().Substring(0, 10);
}
}
#endregion
re.RegisterData(tjjdDts, "tjjg");
re.SetParameterValue("nothyxmOn", "yes");
}
else
{
//select '' as tm,'' as ksbm,'' as zdjg,'' as zdys,'' as czy,'' as czys,'' as ksmc,'' as bglk,'' as zdmc,'' as shsj,'' as djsj
DataTable tjjdDt2 = new DataTable();
tjjdDt2.Columns.Add("tm");
tjjdDt2.Columns.Add("ksbm");
tjjdDt2.Columns.Add("zdjg");
tjjdDt2.Columns.Add("zdys");
tjjdDt2.Columns.Add("czy");
tjjdDt2.Columns.Add("czys");
tjjdDt2.Columns.Add("ksmc");
tjjdDt2.Columns.Add("bglk");
tjjdDt2.Columns.Add("zdmc");
tjjdDt2.Columns.Add("shsj");
tjjdDt2.Columns.Add("djsj");
tjjdDt2.Columns.Add("fxsx");
tjjdDt2.Columns.Add("image");
re.RegisterData(tjjdDt2, "tjjg");
re.SetParameterValue("nothyxmOn", "no");
}
//创建化验项目的体检诊断datatable
string HytjjdString = GetHyTjjdStringByTm(itm, fddm);
DataTable HytjjdDt = Newtonsoft.Json.JsonConvert.DeserializeObject(HytjjdString, typeof(DataTable)) as DataTable;
HytjjdDt.Columns.Add(new DataColumn("image", typeof(byte[])));
HytjjdDt.Columns.Add(new DataColumn("imageZdys", typeof(byte[])));
foreach (DataRow hytjdr in HytjjdDt.Rows)
{
string imagezdys = GetTjjdZdysStringByXm(hytjdr["zdys"].ToString()).ToString();
DataTable HytjjdZdysDt = Newtonsoft.Json.JsonConvert.DeserializeObject(imagezdys, typeof(DataTable)) as DataTable;
if (hytjdr["image1"].ToString() == "")
{
string zdys = hytjdr["zdys"].ToString();
Bitmap b = new Bitmap(80, 20);
Graphics g = Graphics.FromImage(b);
g.Clear(Color.White);
g.DrawString(zdys, new Font("宋体", 12), new SolidBrush(Color.Black), new Point(2, 2));
MemoryStream stream = new MemoryStream();
b.Save(stream, ImageFormat.Jpeg);
//输出图片流
//return File(stream.ToArray(), "image/jpeg");
hytjdr["image"] = stream.ToArray();
//byte[] bs2 = Convert.FromBase64String(ServiceContainer.GetService<IZongJian>().GetTjjdZdysStringByXm(hytjdr["zdys"].ToString()).ToString());
//hytjdr["image"] = bs2;
}
else
{
byte[] bs = Convert.FromBase64String(hytjdr["image1"].ToString());
hytjdr["image"] = bs;
}
if (HytjjdZdysDt.Rows.Count > 0)
{
if (!string.IsNullOrEmpty(HytjjdZdysDt.Rows[0]["imageZdys"].ToString()))
{
byte[] bs1 = Convert.FromBase64String(HytjjdZdysDt.Rows[0]["imageZdys"].ToString());
hytjdr["imageZdys"] = bs1;
}
else
{
string zdys = hytjdr["zdys"].ToString();
Bitmap b = new Bitmap(80, 20);
Graphics g = Graphics.FromImage(b);
g.Clear(Color.White);
g.DrawString(zdys, new Font("宋体", 12), new SolidBrush(Color.Black), new Point(2, 2));
MemoryStream stream = new MemoryStream();
b.Save(stream, ImageFormat.Jpeg);
//输出图片流
//return File(stream.ToArray(), "image/jpeg");
hytjdr["imageZdys"] = stream.ToArray();
}
}
else
{
string zdys = hytjdr["zdys"].ToString();
Bitmap b = new Bitmap(80, 20);
Graphics g = Graphics.FromImage(b);
g.Clear(Color.White);
g.DrawString(zdys, new Font("宋体", 12), new SolidBrush(Color.Black), new Point(2, 2));
MemoryStream stream = new MemoryStream();
b.Save(stream, ImageFormat.Jpeg);
//输出图片流
//return File(stream.ToArray(), "image/jpeg");
hytjdr["imageZdys"] = stream.ToArray();
}
}
if (HytjjdDt.Rows.Count != 0)
{
DataView dv1 = HytjjdDt.DefaultView;
dv1.Sort = "fxsx Asc";
DataTable HytjjdDts = dv1.ToTable();
foreach (DataRow dr in HytjjdDts.Rows)
{
if (dr["djsj"].ToString().Length > 10)
{
dr["djsj"] = dr["djsj"].ToString().Substring(0, 10);
}
}
re.RegisterData(HytjjdDts, "hytjjg");
re.SetParameterValue("hyxmOn", "yes");
}
else
{
//select '' as tm,'' as ksbm,'' as zdjg,'' as zdys,'' as czy,'' as czys,'' as ksmc,'' as bglk,'' as zdmc,'' as djsj
DataTable HytjjdDt2 = new DataTable();
HytjjdDt2.Columns.Add("tm");
HytjjdDt2.Columns.Add("ksbm");
HytjjdDt2.Columns.Add("zdjg");
HytjjdDt2.Columns.Add("zdys");
HytjjdDt2.Columns.Add("czy");
HytjjdDt2.Columns.Add("czys");
HytjjdDt2.Columns.Add("ksmc");
HytjjdDt2.Columns.Add("bglk");
HytjjdDt2.Columns.Add("zdmc");
HytjjdDt2.Columns.Add("djsj");
HytjjdDt2.Columns.Add("fxsx");
HytjjdDt2.Columns.Add("image");
HytjjdDt2.Columns.Add("imageZdys");
re.RegisterData(HytjjdDt2, "hytjjg");
re.SetParameterValue("hyxmOn", "no");
}
//创建非化验项目的体检结果datatable
string tjjgString = GetTjjgStringByTm(itm, xb);
DataTable tjjgDt = Newtonsoft.Json.JsonConvert.DeserializeObject(tjjgString, typeof(DataTable)) as DataTable;
if (tjjgDt.Rows.Count != 0)
{
DataView dv2 = tjjgDt.DefaultView;
dv2.Sort = "fxsx,xssx Asc";
DataTable tjjgDts = dv2.ToTable();
foreach (DataRow dr in tjjgDts.Rows)
{
#region
if (!string.IsNullOrEmpty(dr["jg"].ToString()))
{
if (!dr["cksx"].ToString().Trim().Equals("-1") && !dr["cksx"].ToString().Trim().Equals("-2"))
{
if (double.TryParse(dr["jg"].ToString().Trim(), out double result))
{
if (double.Parse(dr["ckxx"].ToString().Trim()) < double.Parse(dr["jg"].ToString().Trim()) &&
double.Parse(dr["cksx"].ToString().Trim()) > double.Parse(dr["jg"].ToString().Trim()))
{
}
else
{
dr["jg"] = dr["jg"].ToString() + "@";
}
}
else
{
if (!dr["zcjg"].ToString().Trim().Equals(dr["jg"].ToString().Trim()))
{
dr["jg"] = dr["jg"].ToString() + "@";
}
}
}
else
{
if (!dr["cksx"].ToString().Trim().Equals("-2"))
{
if (!dr["zcjg"].ToString().Trim().Equals(dr["jg"].ToString().Trim()))
{
dr["jg"] = dr["jg"].ToString() + "@";
}
}
}
}
#endregion
DataRow[] drs = ccdt.Select("ksbm='" + dr["ksbm"].ToString() + "'");
if (drs.Count() > 0)
{
drs[0]["sj"] = drs[0]["sj"] + "\r\n" + dr["jg"].ToString();
}
}
re.RegisterData(tjjgDts, "tjjgmx");
}
else
{
//select '' as jcxmmc,'' as ksbm,'' as cksx,'' as ckxx,'' as dw,'' as jc,'' as dyckfw,'' as jg
DataTable tjjgDt2 = new DataTable();
tjjgDt2.Columns.Add("jcxmmc");
tjjgDt2.Columns.Add("ksbm");
tjjgDt2.Columns.Add("cksx");
tjjgDt2.Columns.Add("ckxx");
tjjgDt2.Columns.Add("dw");
tjjgDt2.Columns.Add("jc");
tjjgDt2.Columns.Add("dyckfw");
tjjgDt2.Columns.Add("jg");
tjjgDt2.Columns.Add("fxsx");
tjjgDt2.Columns.Add("xssx");
re.RegisterData(tjjgDt2, "tjjgmx");
re.SetParameterValue("nothyxmOn", "no");
}
//创建外送金域的体检结果datatable
string tjjgWSString = ServiceContainer.GetService<IZongJian>().GetTjjgWSStringByTm(itm, xb);
DataTable tjjgWSDt = Newtonsoft.Json.JsonConvert.DeserializeObject(tjjgWSString, typeof(DataTable)) as DataTable;
if (tjjgWSDt.Rows.Count != 0)
{
DataView dvWS = tjjgWSDt.DefaultView;
dvWS.Sort = "fxsx,xssx Asc";
DataTable tjjgWSDts = dvWS.ToTable();
foreach (DataRow dr in tjjgWSDts.Rows)
{
DataRow[] drs = ccdt.Select("ksbm='" + dr["ksbm"].ToString() + "'");
if (drs.Count() > 0)
{
drs[0]["sj"] = drs[0]["sj"] + "\r\n" + dr["jg"].ToString();
}
}
re.RegisterData(tjjgWSDts, "tjjgWSmx");
re.SetParameterValue("notwsxmOn", "yes");
}
else
{
//select '' as jcxmmc,'' as ksbm,'' as cksx,'' as ckxx,'' as dw,'' as jc,'' as dyckfw,'' as jg
DataTable tjjgWSDt2 = new DataTable();
tjjgWSDt2.Columns.Add("jcxmmc");
tjjgWSDt2.Columns.Add("ksbm");
tjjgWSDt2.Columns.Add("cksx");
tjjgWSDt2.Columns.Add("ckxx");
tjjgWSDt2.Columns.Add("dw");
tjjgWSDt2.Columns.Add("jc");
tjjgWSDt2.Columns.Add("dyckfw");
tjjgWSDt2.Columns.Add("jg");
tjjgWSDt2.Columns.Add("fxsx");
tjjgWSDt2.Columns.Add("xssx");
re.RegisterData(tjjgWSDt2, "tjjgWSmx");
re.SetParameterValue("notwsxmOn", "no");
}
re.RegisterData(ccdt, "ccbg");
//创建化验项目的体检结果datatable
string HytjjgString = GetHyTjjgStringByTm(itm, fddm, xb);
DataTable HytjjgDt = Newtonsoft.Json.JsonConvert.DeserializeObject(HytjjgString, typeof(DataTable)) as DataTable;
if (HytjjgDt.Rows.Count != 0)
{
DataView dv3 = HytjjgDt.DefaultView;
dv3.Sort = "fxsx,xssx Asc";
DataTable HytjjgDts = dv3.ToTable();
foreach (DataRow dr in HytjjgDts.Rows)
{
double jg = 0;
double cksx = 0;
double ckxx = 0;
if (double.TryParse(dr["jg"].ToString(), out jg) && double.TryParse(dr["cksx"].ToString(), out cksx) && double.TryParse(dr["ckxx"].ToString(), out ckxx))
{
if (jg < ckxx)
dr["bz"] = "↓";
else if (jg > cksx)
dr["bz"] = "↑";
}
}
re.RegisterData(HytjjgDts, "hytjjgmx");
}
else
{
HytjjgDt = new DataTable();
//select '' as jcxmmc,'' as ksbm,'' as cksx,'' as ckxx,'' as dw,'' as jc,'' as dyckfw,'' as jg
HytjjgDt.Columns.Add("jcxmmc");
HytjjgDt.Columns.Add("ksbm");
HytjjgDt.Columns.Add("cksx");
HytjjgDt.Columns.Add("ckxx");
HytjjgDt.Columns.Add("dw");
HytjjgDt.Columns.Add("jc");
HytjjgDt.Columns.Add("dyckfw");
HytjjgDt.Columns.Add("jg");
HytjjgDt.Columns.Add("bz");
HytjjgDt.Columns.Add("fxsx");
HytjjgDt.Columns.Add("xssx");
re.RegisterData(HytjjgDt, "hytjjgmx");
re.SetParameterValue("hyxmOn", "no");
}
//创建放弃表的datatable
string fqString = GetFqStringByTm(itm);
if (fqString.Length > 2)
{
DataTable fqDt = Newtonsoft.Json.JsonConvert.DeserializeObject(fqString, typeof(DataTable)) as DataTable;
re.RegisterData(fqDt, "fqTable");
re.SetParameterValue("fqOn", "yes");
}
else
{
//re.RegisterData(fqDt, "fqTable");
re.SetParameterValue("fqOn", "no");
}
//创建历史结果对比
DataTable hisDt;
int[] array = (int[])GetHisTmList(hyh);
if (array.Length > 1)
{
hisDt = Newtonsoft.Json.JsonConvert.DeserializeObject(ServiceContainer.GetService<IZongJian>().GetHisTable(array), typeof(DataTable)) as DataTable;
if (hisDt.Rows.Count == 0)
{
hisDt = new DataTable();
hisDt.Columns.Add("ksmc");
hisDt.Columns.Add("kszd");
hisDt.Columns.Add("tjrq");
}
re.RegisterData(hisDt, "t_lndb");
if (fddm == 1)
{
re.SetParameterValue("hisfxOn", "no");
}
else
{
re.SetParameterValue("hisfxOn", "yes");
}
}
else
{
if (sfz != "")
{
int[] array1 = (int[])GetHisTmListBySfz(sfz, xm);
if (array1.Length > 1)
{
hisDt = Newtonsoft.Json.JsonConvert.DeserializeObject(ServiceContainer.GetService<IZongJian>().GetHisTable(array1), typeof(DataTable)) as DataTable;
re.RegisterData(hisDt, "t_lndb");
if (fddm == 1)
{
re.SetParameterValue("hisfxOn", "no");
}
else
{
re.SetParameterValue("hisfxOn", "yes");
}
}
else
{
hisDt = new DataTable();
hisDt.Columns.Add("ksmc");
hisDt.Columns.Add("kszd");
hisDt.Columns.Add("tjrq");
re.RegisterData(hisDt, "t_lndb");
re.SetParameterValue("hisfxOn", "no");
}
}
else
{
hisDt = new DataTable();
hisDt.Columns.Add("ksmc");
hisDt.Columns.Add("kszd");
hisDt.Columns.Add("tjrq");
re.RegisterData(hisDt, "t_lndb");
re.SetParameterValue("hisfxOn", "no");
}
}
if (ccdt.Rows.Count > 0)
{
re.SetParameterValue("ccImageOn", "yes");
}
else
{
re.SetParameterValue("ccImageOn", "no");
}
re.RegisterData(ccdt, "ccbg");
//re.Preview = previewControl1;
//re.Show();
TianRui.FuWuSoapClient fw = new TianRui.FuWuSoapClient();
if (string.IsNullOrEmpty(sjh) || sjh.Length != 11)
{
return;
}
var hyjg = fw.CreateHuiYuan(xm, sjh, sfz, xb);
if (hyjg.State == 0)
return;
string newhy = hyjg.Message;
var hy = Newtonsoft.Json.JsonConvert.DeserializeObject<SOH.TJX.Model.HuiYuan>(hyjg.Tag);
var bg = fw.CreateBaoGao(hy.id, tcmc, tjrq, fddm, tmh.ToString());
FastReport.Export.Pdf.PDFExport imgreport = new FastReport.Export.Pdf.PDFExport();
//FastReport.Export.Pdf.PDFExport pdfe = new FastReport.Export.Pdf.PDFExport();
//pdfe.PageRange = FastReport.PageRange.All;
imgreport.PageRange = FastReport.PageRange.All;
//imgreport.ImageFormat = FastReport.Export.Image.ImageExportFormat.Jpeg;
//imgreport.MultiFrameTiff = true;
//imgreport.Resolution = 96;
imgreport.JpegQuality = 100;
string path = System.IO.Path.GetTempPath();
path += bg.Message + "\\";
if (!Directory.Exists(path))
{
Directory.CreateDirectory(path);
}
string dir = path;
re.Prepare();
string fn = Guid.NewGuid().ToString("N");
re.Export(imgreport, path + fn + ".pdf");
int z = 0;
path = path + fn + ".pdf";
Console.WriteLine(path);
if (System.IO.File.Exists(path))
{
Console.WriteLine( "开始上传报告" + path + "\r\n");
//Application.DoEvents();
int h = 0;
while (true)
{
if (h > 10)
break;
h++;
try
{
FileStream fs = new FileInfo(path).OpenRead();
byte[] bts = new byte[fs.Length];
fs.Read(bts, 0, (int)fs.Length);
fs.Close();
fw.TianJiaBaoGaoMingXi(int.Parse(bg.Message), z, bts);
File.Delete(path);
break;
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
Console.WriteLine(ex.StackTrace);
EAS.Loggers.ILogger log1 = new EAS.Loggers.TextLogger();
log1.Info(ex.Message);
log1.Info(ex.StackTrace);
//txt_log.Text = ex.Message + "\r\n" + txt_log.Text;
//Application.DoEvents();
Console.WriteLine(ex.Message);
}
}
}
try
{
Directory.Delete(dir);
}
catch (Exception ex)
{
Console.WriteLine(dir);
Console.WriteLine(ex.Message);
}
Console.WriteLine(fddm);
}
}
catch (Exception sbex)
{
Console.WriteLine(sbex.Message);
Console.WriteLine(sbex.StackTrace);
EAS.Loggers.ILogger log = new EAS.Loggers.TextLogger();
log.Info(sbex.Message);
log.Info(sbex.StackTrace);
}
}
public List<t_grgzb> GetGrgzbByTm(int tmh)
{
using (var db = new DbEntities())
{
var data = from g in db.t_grgzbs where g.tm == tmh select g;
return data.ToList();
}
}
public List<t_ttgzb> GetTtgzbByTm(int tmh)
{
using (var db = new DbEntities())
{
var data = from t in db.t_ttgzbs where t.tm == tmh select t;
return data.ToList();
}
}
public string GetKhmcByHtbm(int htbm)
{
using (var db = new DbEntities())
{
var data = from k in db.t_khs
join h in db.t_hts on k.khbm equals h.khbm
where h.htbm == htbm
select k.khmc;
return data.FirstOrDefault();
}
}
public string GetHtbjByHtbm(int htbm)
{
using (var db = new DbEntities())
{
var data = from k in db.t_khs
join h in db.t_hts on k.khbm equals h.khbm
where h.htbm == htbm
select h.htbj;
return data.FirstOrDefault();
}
}
public short GetcjfwByHtbm(int htbm)
{
using (var db = new DbEntities())
{
var data = from d in db.ts_dds
where d.ddbm == htbm
select d.cjfw;
return data.FirstOrDefault();
}
}
public short GetzcyyByHtbm(int htbm)
{
using (var db = new DbEntities())
{
var data = from d in db.ts_dds
where d.ddbm == htbm
select d.zcyy;
return data.FirstOrDefault();
}
}
public string GetHzfxByTm(int tm)
{
using (var db = new DbEntities())
{
var data = from h in db.t_hzfxs where h.tm == tm select h;
return Newtonsoft.Json.JsonConvert.SerializeObject(data.ToList());
}
}
public DataTable GetTTHZJG(string khbm)
{
using (var db = new DbEntities())
{
Parameter[] paras = {new Parameter ("khbm",SqlDbType.VarChar)
};
paras[0].Value = khbm;
ParameterCollection paracoll = new ParameterCollection();
paracoll.AddRange(paras);
return db.DataAccessor.QueryDataSet("tj_tjjddc", CommandType.StoredProcedure, paracoll).Tables[0];
}
}
public int[] GetHisTmList(int hyh)
{
using (var db = new DbEntities())
{
var data1 = (from t in db.t_ttgzbs
where t.hyh == hyh && t.tmztz > 5
select new
{
t.tjrq,
t.tm
}
).ToList();
var data2 = (from g in db.t_grgzbs
where g.hyh == hyh && g.tmztz > 5
select new
{
g.tjrq,
g.tm
}
).ToList();
var data = data1.Concat(data2).ToList().OrderByDescending(t => t.tjrq).Take(3).Select(t => t.tm);
return data.ToArray();
}
}
public int[] GetHisTmListBySfz(string sfzh, string xm)
{
using (var db = new DbEntities())
{
var data1 = (from t in db.t_ttgzbs
where t.sfzh == sfzh && t.tmztz > 5 && t.xm == xm
select new
{
t.tjrq,
t.tm
}
).ToList();
var data2 = (from g in db.t_grgzbs
where g.sfzh == sfzh && g.tmztz > 5 && g.xm == xm
select new
{
g.tjrq,
g.tm
}
).ToList();
var data = data1.Concat(data2).ToList().OrderByDescending(t => t.tjrq).Take(3).Select(t => t.tm);
return data.ToArray();
}
}
public string GetZcjgMrz(int jcxmbm)
{
using (var db = new DbEntities())
{
var data = from j in db.t_jcxms where j.jcxmbm == jcxmbm select j;
return Newtonsoft.Json.JsonConvert.SerializeObject(data.ToList());
}
}
public string GetTempdjxmByTm(int tm)
{
using (var db = new DbEntities())
{
var data = from p in db.t_tempdjxms where p.tm == tm select p;
return Newtonsoft.Json.JsonConvert.SerializeObject(data.ToList());
}
}
public String getAllKss(String tm)
{
using (DbEntities db = new DbEntities())
{
var testdata = db.t_czylrqxs.ToList();
var data = db.t_tempdjxms.Join(db.t_kss, t => t.ksbm, p => p.ksbm, (t, p) => new
{
ksmc = p.ksmc,
ksbm = t.ksbm,
tm = t.tm,
ztz = t.ztz,
}).Join(db.t_kss, t => t.ksbm, p => p.ksbm, (t, p) =>
new
{
ksmc = t.ksmc,
tm = t.tm,
ksbm = t.ksbm,
ztz = t.ztz,
xssx = p.xssx
}).OrderBy(t => t.xssx).Where(t => t.tm == Convert.ToInt32((tm)));
var returnData = data.Select(t => new
{
ksmc = t.ksmc,
ksbm = t.ksbm,
ztz = t.ztz,
xssx = t.xssx
}).Distinct();
return Newtonsoft.Json.JsonConvert.SerializeObject(returnData);
}
}
public List<t_jglr> getjcjgs(int tm, List<int> ksbms, int xb)
{
List<t_jglr> returnList = new List<t_jglr>();
using (DbEntities db = new DbEntities())
{
List<t_jglr> returnData = new List<t_jglr>();
for (int i = 0; i < ksbms.Count; i++)
{
if (xb == 0)
{
int ksbm = ksbms[i];
var zhxmdata = db.t_tempdjxms.Join(db.t_zhxms, t => t.zhbm, p => p.zhbm, (t, p) => new
{
zhbm = t.zhbm,
zhmc = p.zhmc,
tm = t.tm,
ksbm = t.ksbm,
xssx = p.xssx,
cksx = "",
ckxx = "",
}).OrderBy(t => t.xssx).Where(t => t.tm == Convert.ToInt32(tm) && t.ksbm == ksbm).Select(t => new t_jglr
{
jcbm = t.zhbm,
dw = "",
xmmc = t.zhmc,
flag = 2,
ksbm = t.ksbm
});
List<t_jglr> zhxmdataArray = zhxmdata.ToList<t_jglr>();
for (int j = 0; j < zhxmdataArray.Count; j++)
{
var data = db.t_tempdjxms.Join(db.t_zhxmmxs, t => t.zhbm, p => p.zhbm, (t, p) => new
{
xmbm = p.xmbm,
zhbm = t.zhbm,
ksbm = t.ksbm,
tm = t.tm
}).Join(db.t_jcxms, t => t.xmbm, p => p.jcxmbm, (t, p) => new
{
jcxmmc = p.jcxmmc,
jcbm = p.jcxmbm,
ksbm = t.ksbm,
zhbm = t.zhbm,
tm = t.tm,
zcjg = p.zcjg,
dw = p.dw,
cksx = p.cksx,
ckxx = p.ckxx
}).Where(t => t.tm == Convert.ToInt32(tm) && t.ksbm == ksbm && t.zhbm == zhxmdataArray[j].jcbm)
.Select(t => new t_jglr
{
xmmc = t.jcxmmc,
zhbm = t.zhbm,
jcbm = t.jcbm,
zcjg = db.t_tjjgs.Where(p => p.tm == Convert.ToInt32(tm) && p.xmbm == t.jcbm).Count() > 0 ? db.t_tjjgs.Where(p => p.tm == Convert.ToInt32(tm) && p.xmbm == t.jcbm).First().jg : t.zcjg,
dw = t.zcjg,
flag = 1,
cksx = t.cksx == -1 ? "" : t.cksx.ToString(),
ckxx = t.ckxx == -1 ? "" : t.ckxx.ToString(),
});
List<t_jglr> jglrs = data.ToList<t_jglr>();
zhxmdataArray[j].jcbm = -1;
returnData.Add(zhxmdataArray[j]);
returnData.AddRange(jglrs);
}
String ksmc = db.t_kss.Where(t => t.ksbm == ksbm).Select(t => t.ksmc).First();
t_jglr zjg = new t_jglr();
zjg.xmmc = "\"" + ksmc + "\"体检结果";
zjg.dw = "";
zjg.zcjg = "";
zjg.flag = 3;
zjg.jcbm = -2;
t_jglr zjys = new t_jglr();
zjys.zcjg = "";
var tjjd = db.t_tjjds.Where(t => t.tm == tm && t.ksbm == ksbm);
if (tjjd.Any())
{
var firstData = tjjd.First();
zjg.zcjg = firstData.zdjg;
zjys.zcjg = firstData.zdys;
}
zjys.xmmc = "\"" + ksmc + "\"体检医师";
zjys.dw = "";
zjys.flag = 4;
returnData.Add(zjg);
returnData.Add(zjys);
}
else
{
int ksbm = ksbms[i];
var zhxmdata = db.t_tempdjxms.Join(db.t_zhxms, t => t.zhbm, p => p.zhbm, (t, p) => new
{
zhbm = t.zhbm,
zhmc = p.zhmc,
tm = t.tm,
ksbm = t.ksbm,
xssx = p.xssx,
cksx = "",
ckxx = "",
}).OrderBy(t => t.xssx).Where(t => t.tm == Convert.ToInt32(tm) && t.ksbm == ksbm).Select(t => new t_jglr
{
jcbm = t.zhbm,
dw = "",
xmmc = t.zhmc,
flag = 2,
ksbm = t.ksbm
});
List<t_jglr> zhxmdataArray = zhxmdata.ToList<t_jglr>();
for (int j = 0; j < zhxmdataArray.Count; j++)
{
var data = db.t_tempdjxms.Join(db.t_zhxmmxs, t => t.zhbm, p => p.zhbm, (t, p) => new
{
xmbm = p.xmbm,
zhbm = t.zhbm,
ksbm = t.ksbm,
tm = t.tm
}).Join(db.t_jcxms, t => t.xmbm, p => p.jcxmbm, (t, p) => new
{
jcxmmc = p.jcxmmc,
jcbm = p.jcxmbm,
ksbm = t.ksbm,
zhbm = t.zhbm,
tm = t.tm,
zcjg = p.zcjg,
dw = p.dw,
cksx = p.cksx1,
ckxx = p.ckxx1
}).Where(t => t.tm == Convert.ToInt32(tm) && t.ksbm == ksbm && t.zhbm == zhxmdataArray[j].jcbm)
.Select(t => new t_jglr
{
xmmc = t.jcxmmc,
zhbm = t.zhbm,
jcbm = t.jcbm,
zcjg = db.t_tjjgs.Where(p => p.tm == Convert.ToInt32(tm) && p.xmbm == t.jcbm).Count() > 0 ? db.t_tjjgs.Where(p => p.tm == Convert.ToInt32(tm) && p.xmbm == t.jcbm).First().jg : t.zcjg,
dw = t.zcjg,
flag = 1,
cksx = t.cksx == -1 ? "" : t.cksx.ToString(),
ckxx = t.ckxx == -1 ? "" : t.ckxx.ToString(),
});
List<t_jglr> jglrs = data.ToList<t_jglr>();
zhxmdataArray[j].jcbm = -1;
returnData.Add(zhxmdataArray[j]);
returnData.AddRange(jglrs);
}
String ksmc = db.t_kss.Where(t => t.ksbm == ksbm).Select(t => t.ksmc).First();
t_jglr zjg = new t_jglr();
zjg.xmmc = "\"" + ksmc + "\"体检结果";
zjg.dw = "";
zjg.zcjg = "";
zjg.flag = 3;
zjg.jcbm = -2;
t_jglr zjys = new t_jglr();
zjys.zcjg = "";
var tjjd = db.t_tjjds.Where(t => t.tm == tm && t.ksbm == ksbm);
if (tjjd.Any())
{
var firstData = tjjd.First();
zjg.zcjg = firstData.zdjg;
zjys.zcjg = firstData.zdys;
}
zjys.xmmc = "\"" + ksmc + "\"体检医师";
zjys.dw = "";
zjys.flag = 4;
returnData.Add(zjg);
returnData.Add(zjys);
}
}
return returnData;
}
}
public string GetTjjdBytm(int tm)
{
using (var db = new DbEntities())
{
var data = from d in db.t_tjjds where d.tm == tm select d;
return Newtonsoft.Json.JsonConvert.SerializeObject(data.ToList());
}
}
public string GetTtgzbBySfzh(string sfzh)
{
using (var db = new DbEntities())
{
var data = from t in db.t_ttgzbs where t.sfzh == sfzh select t;
return Newtonsoft.Json.JsonConvert.SerializeObject(data.ToList());
}
}
public string GetTjjdStringByTm(int tm)
{
using (var db = new DbEntities())
{
var data = from t in db.t_tjjds
join k in db.t_kss on t.ksbm equals k.ksbm
join d in db.t_ygzds on t.zdys equals d.xm
join c in db.t_czygls on d.bm equals c.ygbm
where t.tm == tm && k.lx == 0 && d.zhuxiao == 0
orderby k.ksbm
select new
{
t.tm,
t.ksbm,
zdjg = t.zdjg.Trim(),
t.zdys,
t.czy,
t.czys,
k.ksmc,
k.bglk,
k.zdmc,
djsj = t.djsj,
k.fxsx,
image1 = c.image,
image2 = c.image1
};
return Newtonsoft.Json.JsonConvert.SerializeObject(data.ToList());
}
}
public DataTable GetTjjdStringByTm2(int tm)
{
using (DbEntities db = new DbEntities())
{
string sql1 = "select t.tm,t.ksbm,t.zdjg,t.zdys,t.czy,t.czys,k.ksmc,k.bglk,k.zdmc,t.djsj,k.fxsx,c.image from t_tjjd t inner join " +
" t_ks k on t.ksbm=k.ksbm inner join t_czygl c on t.czy=c.czym where t.tm=" + tm + " and k.lx = 0 order by k.ksbm";
DataTable dt = db.DataAccessor.QueryDataTable(sql1);
return dt;
}
}
public string GetTjjdZdysStringByXm(string xm)
{
using (var db = new DbEntities())
{
var data = from t in db.t_ygzds
join k in db.t_czygls on t.bm equals k.ygbm
where t.xm == xm
select new
{
imageZdys = k.image
};
return Newtonsoft.Json.JsonConvert.SerializeObject(data.ToList());
}
}
public string GetHyTjjdStringByTm(int tm, int fddm)
{
using (var db = new DbEntities())
{
var data = from t in db.t_tjjds
join k in db.t_kss on t.ksbm equals k.ksbm
join c in db.t_czygls on t.czy equals c.czym
where t.tm == tm && k.lx == 1
orderby k.ksbm
select new
{
t.tm,
t.ksbm,
t.zdjg,
t.zdys,
t.czy,
t.czys,
k.ksmc,
k.bglk,
k.zdmc,
djsj = t.djsj,
k.fxsx,
image1 = c.image,
imageZdys1 = c.image
};
/* if (fddm == 1)
{*/
var data1 = data.Where(t => t.ksmc != "乙肝").ToList();
return Newtonsoft.Json.JsonConvert.SerializeObject(data1.ToList());
/*}
else
{
return Newtonsoft.Json.JsonConvert.SerializeObject(data.ToList());
}*/
}
}
public string GetTjjgStringByTm(int tm, int xb)
{
using (var db = new DbEntities())
{
if (xb == 0)
{
var data = from t in db.t_tjjgs
join j in db.t_jcxms on t.xmbm equals j.jcxmbm
join k in db.t_kss on j.ksbm equals k.ksbm
where t.tm == tm && k.lx == 0
orderby k.ksbm
select new
{
j.jcxmmc,
j.ksbm,
j.cksx,
j.ckxx,
j.dw,
j.jc,
j.dyckfw,
t.jg,
k.fxsx,
j.xssx,
j.zcjg
};
return Newtonsoft.Json.JsonConvert.SerializeObject(data.ToList());
}
else
{
var data = from t in db.t_tjjgs
join j in db.t_jcxms on t.xmbm equals j.jcxmbm
join k in db.t_kss on j.ksbm equals k.ksbm
where t.tm == tm && k.lx == 0
orderby k.ksbm
select new
{
j.jcxmmc,
j.ksbm,
cksx = j.cksx1,
ckxx = j.ckxx1,
j.dw,
j.jc,
j.dyckfw,
t.jg,
k.fxsx,
j.xssx,
j.zcjg
};
return Newtonsoft.Json.JsonConvert.SerializeObject(data.ToList());
}
}
}
public string GetTjjgWSStringByTm(int tm, int xb)
{
using (var db = new DbEntities())
{
if (xb == 0)
{
var data = from t in db.t_tjjgs
join j in db.t_jcxms on t.xmbm equals j.jcxmbm
join k in db.t_kss on j.ksbm equals k.ksbm
where t.tm == tm && t.upflag == 5 && k.ksbm!=29 && k.ksbm!=38
orderby k.ksbm
select new
{
j.jcxmmc,
j.ksbm,
j.cksx,
j.ckxx,
j.dw,
j.jc,
j.dyckfw,
t.jg,
k.fxsx,
j.xssx
};
return Newtonsoft.Json.JsonConvert.SerializeObject(data.ToList());
}
else
{
var data = from t in db.t_tjjgs
join j in db.t_jcxms on t.xmbm equals j.jcxmbm
join k in db.t_kss on j.ksbm equals k.ksbm
where t.tm == tm && t.upflag == 5 && k.ksbm!=29 && k.ksbm != 38
orderby k.ksbm
select new
{
j.jcxmmc,
j.ksbm,
cksx=j.cksx1,
ckxx=j.ckxx1,
j.dw,
j.jc,
j.dyckfw,
t.jg,
k.fxsx,
j.xssx
};
return Newtonsoft.Json.JsonConvert.SerializeObject(data.ToList());
}
}
}
public string GetTjhzByTm(int tm, int fddm)
{
using (var db = new DbEntities())
{
var data = from k in db.t_kss
join d in db.t_tjjds
on k.ksbm equals d.ksbm
where d.tm == tm
orderby k.fxsx
select new
{
k.ksmc,
d.zdjg
};
/* if (fddm == 1)
{*/
var data1 = data.Where(t => t.ksmc != "乙肝").ToList();
return Newtonsoft.Json.JsonConvert.SerializeObject(data1);
/* }
else
{
return Newtonsoft.Json.JsonConvert.SerializeObject(data);
}*/
}
}
public string GetHyTjjgStringByTm(int tm, int fddm, int xb)
{
using (var db = new DbEntities())
{
if (xb == 0)
{
if (fddm == 1)
{
var data = from t in db.t_tjjgs
join j in db.t_jcxms on t.xmbm equals j.jcxmbm
join k in db.t_kss on j.ksbm equals k.ksbm
where t.tm == tm && k.lx == 1 && t.upflag != 5
orderby k.ksbm
select new
{
j.jcxmmc,
j.ksbm,
cksx = j.cksx,
ckxx = j.ckxx,
j.dw,
j.jc,
j.dyckfw,
t.jg,
k.ksmc,
bz = "",
k.fxsx,
j.xssx
};
var data1 = data.Where(t => t.ksmc != "乙肝").ToList();
return Newtonsoft.Json.JsonConvert.SerializeObject(data1);
}
else
{
var data = from t in db.t_tjjgs
join j in db.t_jcxms on t.xmbm equals j.jcxmbm
join k in db.t_kss on j.ksbm equals k.ksbm
where t.tm == tm && k.lx == 1
orderby k.ksbm
select new
{
j.jcxmmc,
j.ksbm,
cksx = j.cksx,
ckxx = j.ckxx,
j.dw,
j.jc,
j.dyckfw,
t.jg,
k.ksmc,
bz = "",
k.fxsx,
j.xssx
};
var data1 = data.Where(t => t.ksmc != "乙肝").ToList();
return Newtonsoft.Json.JsonConvert.SerializeObject(data1);
}
}
else
{
if (fddm == 1)
{
var data = from t in db.t_tjjgs
join j in db.t_jcxms on t.xmbm equals j.jcxmbm
join k in db.t_kss on j.ksbm equals k.ksbm
where t.tm == tm && k.lx == 1 && t.upflag != 5
orderby k.ksbm
select new
{
j.jcxmmc,
j.ksbm,
cksx = j.cksx1,
ckxx = j.ckxx1,
j.dw,
j.jc,
j.dyckfw,
t.jg,
k.ksmc,
bz = "",
k.fxsx,
j.xssx
};
var data1 = data.Where(t => t.ksmc != "乙肝").ToList();
return Newtonsoft.Json.JsonConvert.SerializeObject(data1);
}
else
{
var data = from t in db.t_tjjgs
join j in db.t_jcxms on t.xmbm equals j.jcxmbm
join k in db.t_kss on j.ksbm equals k.ksbm
where t.tm == tm && k.lx == 1
orderby k.ksbm
select new
{
j.jcxmmc,
j.ksbm,
cksx = j.cksx1,
ckxx = j.ckxx1,
j.dw,
j.jc,
j.dyckfw,
t.jg,
k.ksmc,
bz = "",
k.fxsx,
j.xssx
};
var data1 = data.Where(t => t.ksmc != "乙肝").ToList();
return Newtonsoft.Json.JsonConvert.SerializeObject(data1);
}
}
/*if (fddm == 1)
{
var data1 = data.Where(t => t.ksmc != "乙肝").ToList();
return Newtonsoft.Json.JsonConvert.SerializeObject(data1);
}
else
{
return Newtonsoft.Json.JsonConvert.SerializeObject(data);
}*/
}
}
public string GetFqStringByTm(int tm)
{
using (var db = new DbEntities())
{
var data = from f in db.t_fqs
join z in db.t_zhxms on f.zhbm equals z.zhbm
where f.tm == tm
select new
{
z.zhmc
};
return Newtonsoft.Json.JsonConvert.SerializeObject(data.ToList());
}
}
public string GetZjysXm(string czy)
{
using (var db = new DbEntities())
{
var data = from c in db.t_czygls
join y in db.t_ygzds on c.ygbm equals y.bm
where c.czym == czy
select new
{
y.xm,
c.czym,
image1 = c.image
};
return Newtonsoft.Json.JsonConvert.SerializeObject(data.ToList());
}
}
public string GetZjysXm3(string czy)
{
using (var db = new DbEntities())
{
var data = from c in db.t_czygls
join y in db.t_ygzds on c.ygbm equals y.bm
where c.czym == czy
select new
{
y.xm,
c.czym,
image1 = c.image
};
return Newtonsoft.Json.JsonConvert.SerializeObject(data.ToList());
}
}
public string GetZjysXm2(string czy)
{
using (var db = new DbEntities())
{
var data = from c in db.t_czygls
join y in db.t_ygzds on c.ygbm equals y.bm
where y.xm == czy
select new
{
y.xm,
c.czym,
image1 = c.image
};
return Newtonsoft.Json.JsonConvert.SerializeObject(data.ToList());
}
}
public string GetYiGanZhxm(int tm)
{
using (var db = new DbEntities())
{
var data = from z in db.t_zhxms
join t in db.t_tempdjxms on z.zhbm equals t.zhbm
where t.tm == tm && t.ztz == 4 && z.jclb == 1 && z.zhuxiao == "0"
select new
{
z.zhbm,
z.zhmc,
z.ksbm
};
return Newtonsoft.Json.JsonConvert.SerializeObject(data.ToList());
}
}
public string GetYiGanTjjgString(int tm, int ksbm)
{
using (var db = new DbEntities())
{
var data = from t in db.t_tjjgs
join j in db.t_jcxms on t.xmbm equals j.jcxmbm
join k in db.t_kss on j.ksbm equals k.ksbm
where t.tm == tm && k.lx == 1 && k.ksbm == ksbm && j.zhuxiao == 0
orderby k.ksbm
select new
{
j.jcxmmc,
j.ksbm,
j.cksx,
j.ckxx,
j.dw,
j.jc,
j.dyckfw,
t.jg
};
return Newtonsoft.Json.JsonConvert.SerializeObject(data.ToList());
}
}
public string GetYiGanTjjdString(int tm, int ksbm)
{
using (var db = new DbEntities())
{
var data = from t in db.t_tjjds
join k in db.t_kss on t.ksbm equals k.ksbm
where t.tm == tm && k.lx == 1 && k.ksbm == ksbm
orderby k.ksbm
select new
{
t.tm,
t.ksbm,
t.zdjg,
t.zdys,
t.czy,
t.czys,
k.ksmc,
k.bglk,
k.zdmc
};
return Newtonsoft.Json.JsonConvert.SerializeObject(data.ToList());
}
}
public string SelMeiRiShouFei(Object dt1, Object dt2, int tjlx)
{
using (var db = new DbEntities())
{
var data = from t in db.T_drxpjls select t;
switch (tjlx)
{
case 0:
data = data.Where(t => t.rq > Convert.ToDateTime(dt1) && t.rq < Convert.ToDateTime(dt2));
break;
case 1:
data = data.Where(t => t.rq > Convert.ToDateTime(dt1) && t.rq < Convert.ToDateTime(dt2) && t.sfjx == 0 && t.sftf == 0);
break;
case 2:
data = data.Where(t => t.rq > Convert.ToDateTime(dt1) && t.rq < Convert.ToDateTime(dt2) && t.sfjx == 1 && t.sftf == 0);
break;
case 3:
data = data.Where(t => t.rq > Convert.ToDateTime(dt1) && t.rq < Convert.ToDateTime(dt2) && t.sftf == 1);
break;
default:
data = data.Where(t => t.rq > Convert.ToDateTime(dt1) && t.rq < Convert.ToDateTime(dt2));
break;
}
data = data.Where(t => t.rq > Convert.ToDateTime(dt1) && t.rq < Convert.ToDateTime(dt2));
var date1 = data.Select(t => new
{
t.age,
t.bank,
t.cash,
t.checkpaper,
t.dw,
t.hyh,
t.jzcard,
t.jzmoney,
t.nomoney,
t.paper,
t.pay,
t.rq,
t.sex,
t.sfjx,
t.sftf,
t.shouldpay,
t.tccard,
t.tcorfzname,
t.tm,
t.xh,
t.xm,
t.shouka,
t.sfczy
}).ToList();
List<dynamic> ls = new List<dynamic>();
int number = 0;
foreach (var t1 in date1)
{
number = number + 1;
var c = new
{
row = number,
t1.age,
t1.bank,
t1.cash,
t1.checkpaper,
t1.dw,
t1.hyh,
t1.jzcard,
t1.jzmoney,
t1.nomoney,
t1.paper,
t1.pay,
t1.rq,
t1.sex,
t1.sfjx,
t1.sftf,
t1.shouldpay,
t1.tccard,
t1.tcorfzname,
t1.tm,
t1.xh,
t1.xm,
t1.shouka,
t1.sfczy
};
ls.Add(c);
}
return Newtonsoft.Json.JsonConvert.SerializeObject(ls);
}
}
public string GetMrwsxm(Object dt1, Object dt2)
{
using (DbEntities db = new DbEntities())
{
var data = db.t_tempdjxms.Where(t => (t.djrq.CompareTo(dt1) >= 0 && t.djrq.CompareTo(dt2) <= 0)).
Join(db.t_zhxms, t => t.zhbm, z => z.zhbm, (t, z) => new
{
tm = t.tm,
djrq = t.djrq,
zhmc = z.zhmc,
ztz = t.ztz,
wsbj = z.wsbj,
wsjg = z.wsjg
}).Where(t => t.wsbj == 1);
var tjdata = data.Join(db.t_ttgzbs, t => t.tm, p => p.tm, (t, p) => new
{
tm = t.tm,
djrq = t.djrq,
xm = p.xm,
wsxm = t.zhmc,
xb = p.sex1,
nl = p.nl,
ztz = t.ztz,
wsjg = t.wsjg
}).OrderBy(t => t.tm);
var gjdata = data.Join(db.t_grgzbs, t => t.tm, p => p.tm, (t, p) => new
{
tm = t.tm,
djrq = t.djrq,
xm = p.xm,
wsxm = t.zhmc,
xb = p.sex1,
nl = p.nl,
ztz = t.ztz,
wsjg = t.wsjg
}).OrderBy(t => t.tm);
Array data1A = tjdata.ToArray();
Array data2A = gjdata.ToArray();
Array dataArray = Array.CreateInstance(typeof(Object), data1A.Length + data2A.Length);
data1A.CopyTo(dataArray, 0);
data2A.CopyTo(dataArray, data1A.Length);
return Newtonsoft.Json.JsonConvert.SerializeObject(dataArray);
}
}
public FamiliarDiagnose GetFDById(int id)
{
using (DbEntities db = new DbEntities())
{
var data = from f in db.FamiliarDiagnoses where f.ID == id select f;
FamiliarDiagnose fd = null;
if (data.Any())
{
fd = data.First();
}
return fd;
}
}
public Advice GetADById(int id)
{
using (DbEntities db = new DbEntities())
{
var data = from f in db.Advices where f.ID == id select f;
Advice ad = null;
if (data.Any())
{
ad = data.First();
}
return ad;
}
}
public Data.OperationResult UpdateTmztzInDywc(string tmh, string printczy)
{
OperationResult or = new OperationResult();
short zcyy1 = 0;
int fddm = 0;
using (DbEntities db = new DbEntities())
{
try
{
int itm = int.Parse(tmh.Trim());
var gr = db.t_grgzbs.FirstOrDefault(t => t.tm == itm);
var tt = db.t_ttgzbs.FirstOrDefault(t => t.tm == itm);
if (gr != null)
{
gr.dyrq = DateTime.Now;
fddm = gr.fddm;
if (gr.tmztz == 6)
{
gr.tmztz = 7;
// if (gr.fddm == 2)
//{
if (System.Configuration.ConfigurationManager.AppSettings["UploadReport"] == "true")
{
ParameterizedThreadStart ParStart = new ParameterizedThreadStart(UploadReport);
Thread myThread = new Thread(ParStart);
object o = tmh;
myThread.Start(o);
}
// }
}
gr.printczy = printczy;
db.t_grgzbs.Update(gr);
}
else if (tt != null)
{
tt.dyrq = DateTime.Now;
fddm = tt.fddm;
if (tt.tmztz == 6)
{
tt.tmztz = 7;
//if (tt.fddm == 2)
//{
zcyy1 = GetzcyyByHtbm(tt.htbm);
if (zcyy1 != 0)
{
if (System.Configuration.ConfigurationManager.AppSettings["UploadReport"] == "true")
{
ParameterizedThreadStart ParStart = new ParameterizedThreadStart(UploadReport);
Thread myThread = new Thread(ParStart);
object o = tmh;
myThread.Start(o);
}
}
// }
}
tt.printczy = printczy;
db.t_ttgzbs.Update(tt);
}
else
{
or.State = 0;
or.Message = "在团检记录和个检记录里都找不到当前条码";
return or;
}
or.State = 1;
or.Message = "打印完成!";
/* if(fddm==2)
{
if (System.Configuration.ConfigurationManager.AppSettings["UploadReport"] == "true")
{
ParameterizedThreadStart ParStart = new ParameterizedThreadStart(UploadReport);
Thread myThread = new Thread(ParStart);
object o = tmh;
myThread.Start(o);
}
}*/
}
catch (Exception e)
{
or.State = 2;
or.Message = "抱歉!此次报告打印失败,请与管理员联系!";
}
return or;
}
}
public Data.OperationResult UpdatePrintDjd(int tmh, string printczy)
{
OperationResult or = new OperationResult();
using (DbEntities db = new DbEntities())
{
try
{
var tt = db.t_ttgzbs.FirstOrDefault(t => t.tm == tmh);
if (tt != null)
{
tt.dyrq = DateTime.Now;
tt.printczy = printczy;
db.t_ttgzbs.Update(tt);
}
or.State = 1;
or.Message = "打印完成!";
}
catch (Exception e)
{
or.State = 2;
or.Message = "抱歉!此次报告打印失败,请与管理员联系!";
}
return or;
}
}
public string gethzfxbytm1(string text)
{
//throw new NotImplementedException();
using (var db = new DbEntities())
{
int tm = 0;
int.TryParse(text, out tm);
var hzfx = db.t_hzfxs.FirstOrDefault(t => t.tm == tm);
if (hzfx == null)
{
return "";
}
else
{
return hzfx.fx;
}
}
}
public DataTable getAllMoban(int jcxmbm)
{
using (DbEntities db = new DbEntities())
{
string sql1 = "SELECT itemindexresulttemplet.ID as 描述ID, t_jcxm.jcxmmc as 指标, ItemIndexResultTemplet.Description as 描述, " +
"FamiliarDiagnose.Name as 诊断, FamiliarDiagnose.Content as 诊断描述,Advice.Name as 建议模板名称, " +
"Advice.Description as 建议模板描述, IllnessSort.Name as 疾病分类, ItemIndexResultTemplet.ShowIndex as 显示顺序," +
"FamiliarDiagnose.ID as 诊断ID, Advice.ID as 建议ID," +
"t_jcxm.jcxmbm as 项目ID,ItemIndexResultTemplet.DefaultSelected as 默认选中,FamiliarDiagnose.py " +
"as 简拼,FamiliarDiagnose.R1 as 疾病编码 From itemindexresulttemplet LEFT JOIN t_jcxm ON ItemIndexResultTemplet.ItemIndexID=t_jcxm.jcxmbm " +
"LEFT JOIN FamiliarDiagnose ON ItemIndexResultTemplet.FamiliarDiagnoseID=FamiliarDiagnose.ID " +
"LEFT JOIN IllnessSort ON ItemIndexResultTemplet.IllnessSortID=IllnessSort.ID LEFT JOIN [Advice] ON " +
"ItemIndexResultTemplet.AdviceID=Advice.ID WHERE 1=1 and t_jcxm.lx=2 and t_jcxm.jcxmbm=" + jcxmbm + " order by itemindexresulttemplet.ShowIndex";
DataTable dt = db.DataAccessor.QueryDataTable(sql1);
return dt;
}
}
public Data.OperationResult UpdateAdvice(Entities.Advice ad)
{
OperationResult or = new OperationResult();
using (DbEntities db = new DbEntities())
{
try
{
db.Advices.OrmAccessor.Update(ad);
}
catch (Exception ex)
{
or.Message = ex.ToString();
}
}
or.State = 1;
or.Message = "更新成功";
or.Tag = Newtonsoft.Json.JsonConvert.SerializeObject(ad);
return or;
}
public Data.OperationResult UpdateIirt(Entities.ItemIndexResultTemplet iirt)
{
OperationResult or = new OperationResult();
using (DbEntities db = new DbEntities())
{
try
{
db.ItemIndexResultTemplets.OrmAccessor.Update(iirt);
}
catch (Exception ex)
{
or.Message = ex.ToString();
}
}
or.State = 1;
or.Message = "更新成功";
or.Tag = Newtonsoft.Json.JsonConvert.SerializeObject(iirt);
return or;
}
public Data.OperationResult UpdateFd(Entities.FamiliarDiagnose fd)
{
OperationResult or = new OperationResult();
using (DbEntities db = new DbEntities())
{
try
{
db.FamiliarDiagnoses.OrmAccessor.Update(fd);
}
catch (Exception ex)
{
or.Message = ex.ToString();
}
}
or.State = 1;
or.Message = "更新成功";
or.Tag = Newtonsoft.Json.JsonConvert.SerializeObject(fd);
return or;
}
public Data.OperationResult DelAdvice(Entities.Advice ad)
{
OperationResult or = new OperationResult();
using (DbEntities db = new DbEntities())
{
db.Advices.OrmAccessor.Delete(ad);
}
or.State = 1;
or.Message = "删除成功";
return or;
}
public Data.OperationResult DelIirt(Entities.ItemIndexResultTemplet iirt)
{
OperationResult or = new OperationResult();
using (DbEntities db = new DbEntities())
{
db.ItemIndexResultTemplets.OrmAccessor.Delete(iirt);
}
or.State = 1;
or.Message = "删除成功";
return or;
}
public Data.OperationResult DelFd(Entities.FamiliarDiagnose fd)
{
OperationResult or = new OperationResult();
using (DbEntities db = new DbEntities())
{
db.FamiliarDiagnoses.OrmAccessor.Delete(fd);
}
or.State = 1;
or.Message = "删除成功";
return or;
}
public DataTable getKszdByKsbm(int tm, int ksbm)
{
using (DbEntities db = new DbEntities())
{
string sql1 = "SELECT Advice.name as 建议名称,itemindexresulttemplet.ID as 描述ID,itemindexresulttemplet.itemindexid as 项目ID,itemindexresulttemplet.Description as 描述,FamiliarDiagnose.Name as 诊断 from itemindexresulttemplet " +
"LEFT JOIN FamiliarDiagnose ON ItemIndexResultTemplet.FamiliarDiagnoseID=FamiliarDiagnose.ID LEFT JOIN [Advice] ON ItemIndexResultTemplet.AdviceID=Advice.ID where " +
" itemindexresulttemplet.ID in (select jbbm from t_jbtj where t_jbtj.tm=" + tm + " and t_jbtj.fddm=" + ksbm + ")";
DataTable dt = db.DataAccessor.QueryDataTable(sql1);
return dt;
}
}
public Data.OperationResult InsertAdvice(Entities.Advice ad)
{
OperationResult or = new OperationResult();
using (DbEntities db = new DbEntities())
{
db.Advices.OrmAccessor.Insert(ad);
}
or.State = 1;
or.Message = "添加成功";
or.Tag = Newtonsoft.Json.JsonConvert.SerializeObject(ad);
return or;
}
public Data.OperationResult InsertItemIndexResultTemplet(Entities.ItemIndexResultTemplet iirt)
{
OperationResult or = new OperationResult();
using (DbEntities db = new DbEntities())
{
db.ItemIndexResultTemplets.OrmAccessor.Insert(iirt);
}
or.State = 1;
or.Message = "添加成功";
or.Tag = Newtonsoft.Json.JsonConvert.SerializeObject(iirt);
return or;
}
public Data.OperationResult InsertFd(Entities.FamiliarDiagnose fd)
{
OperationResult or = new OperationResult();
using (DbEntities db = new DbEntities())
{
db.FamiliarDiagnoses.OrmAccessor.Insert(fd);
}
or.State = 1;
or.Message = "添加成功";
or.Tag = Newtonsoft.Json.JsonConvert.SerializeObject(fd);
return or;
}
public List<Entities.Advice> GetAdviceList(string zjm)
{
using (DbEntities db = new DbEntities())
{
if (zjm == "")
{
return db.Advices.ToList();
}
else return db.Advices.Where(t => t.PY.Contains(zjm)).ToList();
}
}
public List<Entities.FamiliarDiagnose> GetFamiliarDiagnoseList(string zjm)
{
using (DbEntities db = new DbEntities())
{
if (zjm == "")
{
return db.FamiliarDiagnoses.ToList();
}
else return db.FamiliarDiagnoses.Where(t => t.PY.Contains(zjm)).ToList();
}
}
public List<Entities.FamiliarDiagnose> GetFDList()
{
using (DbEntities db = new DbEntities())
{
return db.FamiliarDiagnoses.ToList();
}
}
public List<Entities.Advice> GetADList()
{
using (DbEntities db = new DbEntities())
{
return db.Advices.ToList();
}
}
public List<Entities.ItemIndexResultTemplet> GetItemIndexResultTempletList(string zjm)
{
using (DbEntities db = new DbEntities())
{
if (zjm == "")
{
return db.ItemIndexResultTemplets.ToList();
}
else return db.ItemIndexResultTemplets.Where(t => t.DescriptionPY.Contains(zjm)).ToList();
}
}
public DataTable GetAdviceByItemindexId(int jcxmid)
{
using (DbEntities db = new DbEntities())
{
string sql1 = "select * from Advice where id in (select AdviceID from itemindexresulttemplet where ItemIndexID=" + jcxmid + ")";
DataTable dt = db.DataAccessor.QueryDataTable(sql1);
return dt;
}
}
public string GetExplain(int tm, int fddm)
{
using (DbEntities db = new DbEntities())
{
string sql = "SELECT [Advice].name as 建议名称,itemindexresulttemplet.ID as 描述ID,itemindexresulttemplet.itemindexid as 项目ID, " +
"itemindexresulttemplet.Description as 描述,FamiliarDiagnose.Name as 诊断 " +
"from itemindexresulttemplet " +
"LEFT JOIN FamiliarDiagnose ON ItemIndexResultTemplet.FamiliarDiagnoseID = FamiliarDiagnose.ID " +
"LEFT JOIN[Advice] ON ItemIndexResultTemplet.AdviceID = Advice.ID " +
"where itemindexresulttemplet.ID in (select jbbm from t_jbtj where t_jbtj.tm = " + tm + ")";
DataTable dt1 = db.DataAccessor.QueryDataTable(sql);
string name = "";
//string count = "";
if (dt1.Rows.Count != 0)
{
foreach (DataRow dr in dt1.Rows)
{
if (!string.IsNullOrEmpty(dr["建议名称"].ToString()))
{
string sql1 = "select * from Explain where name like '%" + dr["建议名称"].ToString().Trim() + "%'";
DataTable dt = db.DataAccessor.QueryDataTable(sql1);
if (dt.Rows.Count != 0)
{
if (name.IndexOf("什么是窦性心律不齐") > 0)
{
continue;
}
name += "●什么是" + dt.Rows[0]["name"].ToString() + "?\r\n" + dt.Rows[0]["Description"].ToString() + "\r\n" + "\r\n";
}
}
}
}
return name;
}
}
public DataTable GetFamiliarDiagnoseByItemindexId(int jcxmid)
{
using (DbEntities db = new DbEntities())
{
string sql1 = "select * from FamiliarDiagnose where id in (select FamiliarDiagnoseID from itemindexresulttemplet where ItemIndexID=" + jcxmid + ")";
DataTable dt = db.DataAccessor.QueryDataTable(sql1);
return dt;
}
}
public DataTable GeitemIndexResultTempletByItemindexId(int jcxmid)
{
using (DbEntities db = new DbEntities())
{
string sql1 = "select * from ItemIndexResultTemplet where ItemIndexID=" + jcxmid + "";
DataTable dt = db.DataAccessor.QueryDataTable(sql1);
return dt;
}
}
public String selectTjztAll(Object dt1, Object dt2, short yydm)
{
List<t_ttgzb> tjzts = new List<t_ttgzb>();
using (DbEntities db = new DbEntities())
{
var data1 = db.t_ttgzbs.Join(db.t_hts, t => t.htbm, p => p.htbm,
(t, p) => new
{
xm = t.xm,
hyh = t.hyh,
tm = t.tm,
xb = t.sex2,
nl = t.nl,
tjrq = t.tjrq,
tmztz = t.tmztz,
tmztz1 = t.tmztz2,
ygh = t.ygh,
ssbm = t.ssbm,
bz = t.bz,
zjm = t.zjm,
dy = t.dyrq,
htbm = t.htbm,
htfzbm = t.htfzbm,
khbm = p.khbm,
tel = t.tel,
dyrq = t.dyrq,
dysj = t.dysj,
fddm = p.fddm
}).Join(db.t_khs, t => t.khbm, p => p.khbm, (t, p) => new
{
xm = t.xm,
hyh = t.hyh,
tm = t.tm,
xb = t.xb,
nl = t.nl,
tjrq = t.tjrq,
tmztz = t.tmztz,
tmztz1 = t.tmztz1,
ygh = t.ygh,
ssbm = t.ssbm,
bz = t.bz,
zjm = t.zjm,
dy = t.dy,
htbm = t.htbm,
htfzbm = t.htfzbm,
khbm = p.khbm,
khmc = p.khmc,
tel = t.tel,
khdz = p.khdz,
dyrq = t.dyrq,
dysj = t.dysj,
fddm = t.fddm
}).Join(db.t_htfzbs, t => t.htfzbm, p => p.htfzbm, (t, p) => new
{
hyh = t.hyh,
tm = t.tm,
xm = t.xm,
xb = t.xb,
nl = t.nl,
tjrq = t.tjrq.ToString("yyyy-MM-dd") + (!t.dyrq.Equals(null) ? ((t.dyrq.Value.Equals(new DateTime(1900, 1, 1))) ? "" : "【" + t.dyrq.Value.ToString("yyyy-MM-dd") + " " + t.dysj + "】") : ""),
dttjrq = t.tjrq,
tmztz = t.tmztz,
tmztz1 = t.tmztz1,
htfzmc = p.htfzmc,
khmc = t.khmc,
ygh = t.ygh,
ssbm = t.ssbm,
bz = t.bz,
tel = t.tel,
khdz = t.khdz,
yzbm = "",
jsr = "",
tjlb = "",
zjm = t.zjm,
htbm = t.htbm,
dxtj = "",
dyrq = t.dyrq,
fddm = t.fddm,
flag = 0
});
var data2 = db.t_grgzbs.Join(db.t_tcs, p => p.tcbm, q => q.tcbm, (p, q) => new
{
hyh = p.hyh,
tm = p.tm,
xm = p.xm,
xb = p.sex2,
nl = p.nl,
tjrq = p.tjrq.ToString("yyyy-MM-dd") + (!p.dyrq.Equals(null) ? ((p.dyrq.Value.Equals(new DateTime(1900, 1, 1))) ? "" : "【" + p.dyrq.Value.ToString("yyyy-MM-dd") + " " + p.dysj + "】") : ""),
dttjrq = p.tjrq,
tmztz = p.tmztz,
tmztz1 = EnumItem.GetEnumDescription((tjryzt)p.tmztz),
htfzmc = q.tcmc,
khmc = "",
ygh = "",
ssbm = "",
bz = p.bz,
tel = p.dh,
khdz = p.dz,
yzbm = "",
jsr = "",
tjlb = "",
zjm = p.zjm,
htbm = 0,
dxtj = "",
dyrq = p.dyrq,
fddm = p.fddm,
flag = 1
});
if (dt1 != null)
{
data1 = data1.Where(t => t.dttjrq > Convert.ToDateTime(dt1) && t.dttjrq < Convert.ToDateTime(dt2));
data2 = data2.Where(t => t.dttjrq > Convert.ToDateTime(dt1) && t.dttjrq < Convert.ToDateTime(dt2));
}
data1 = data1.Where(t => t.fddm == Convert.ToInt16(yydm));
data2 = data2.Where(t => t.fddm == Convert.ToInt16(yydm));
Array data1A = data1.ToArray();
Array data2A = data2.ToArray();
Array data = Array.CreateInstance(typeof(Object), data1A.Length + data2A.Length);
data1A.CopyTo(data, 0);
data2A.CopyTo(data, data1A.Length);
return Newtonsoft.Json.JsonConvert.SerializeObject(data);
}
}
/// <summary>
/// 根据体检人员的条码获取其主检医生
/// 2023-09-26 xulu 添加方法
/// </summary>
/// <param name="strTm"></param>
/// <returns></returns>
public DataTable GetChiefExaminerByTm(string strTm)
{
using (var db = new DbEntities())
{
string sql = "select t_hzfx.tm,t_hzfx.czy,t_ygzd.xm from t_hzfx,t_czygl,t_ygzd "
+"where t_hzfx.czy = t_czygl.czym and t_czygl.ygbm = t_ygzd.bm and t_hzfx.tm in("+ strTm + ")";
DataTable dt = db.DataAccessor.QueryDataTable(sql);
return dt;
}
}
/// <summary>
/// 根据条码获取体检人员信息及其检查结果
/// 2023-09-26 xulu 添加方法
/// </summary>
/// <param name="strTm"></param>
/// <returns></returns>
public DataTable GetPersonInfoAndResultByTm(string strTm)
{
using (var db = new DbEntities())
{
string sql = "select t_ttgzb.tm,xm,sfzh,tjrq,nl,t_ttgzb.xb,csrq,tel,jcxmmc,jg from t_ttgzb,t_tjjg,t_jcxm "
+"where t_tjjg.tm in ("+strTm+") and t_jcxm.jcxmbm = t_tjjg.xmbm and t_ttgzb.tm = t_tjjg.tm order by xm";
DataTable dt = db.DataAccessor.QueryDataTable(sql);
return dt;
}
}
/// <summary>
/// 根据条码获取体检人员的科室检查结果
/// 2023-09-26 xulu 添加方法
/// </summary>
/// <param name="strTm"></param>
/// <returns></returns>
public DataTable GetDepResultByTm(string strTm)
{
using (var db = new DbEntities())
{
string sql = "select tm,ksmc,zdjg from t_tjjd,t_ks where ksmc in('腹部彩超','血常规','尿常规') "
+ "and tm in("+strTm+ ") and t_ks.ksbm = t_tjjd.ksbm ";
DataTable dt = db.DataAccessor.QueryDataTable(sql);
return dt;
}
}
/// <summary>
/// 根据单位名称及年代获取体检人员信息
/// 2023-10-08 xulu 添加方法
/// </summary>
/// <param name="strHtbj"></param>
/// <param name="dt1"></param>
/// <param name="dt2"></param>
/// <returns></returns>
public DataTable GetPersonInfo(string strHtbj,int dt1,int dt2)
{
using (var db = new DbEntities())
{
string sql = "select t_ht.htbm,nl,xb,nd,xm from t_ttgzb,t_ht where tmztz>3 and nd in("+dt1+","+dt2+") and htbj='"+strHtbj+"'"
+" and t_ttgzb.htbm = t_ht.htbm";
DataTable dt = db.DataAccessor.QueryDataTable(sql);
return dt;
}
}
/// <summary>
/// 根据客户名称及年份获取体检人员信息
/// 2023-10-26 xulu
/// </summary>
/// <param name="strHtbj"></param>
/// <param name="dt1"></param>
/// <param name="dt2"></param>
/// <returns></returns>
public DataTable GetPersonInfo(int iYear,string strKhmc)
{
using (var db = new DbEntities())
{
string sql = "select t_ht.htbm as htbm,nl,xb,nd,xm,tmztz,khmc,sfzh from t_ttgzb,t_ht,t_kh where nd=" + iYear + " and t_kh.khmc like '%"+strKhmc+ "%' and t_kh.khbm=t_ht.khbm and t_ttgzb.htbm = t_ht.htbm and htbj !='女职工体检(新)'";
DataTable dt = db.DataAccessor.QueryDataTable(sql);
return dt;
}
}
}
}