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

180 lines
6.4 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using EAS.Data.Linq;
using EAS.Services;
using SOH.Data;
using SOH.Entities;
using SOH.Entities.DTO;
namespace SOH.BLL
{
[ServiceObject("碳14接口实现")]
[ServiceBind(typeof(IC14))]
public class C14 : IC14
{
public dto_gzb GetGzb(string stm)
{
//throw new NotImplementedException();
using (var db = new DbEntities())
{
BasicBll bb = new BasicBll();
dto_gzb gzb = new dto_gzb();
int tm = int.Parse(stm);
if (stm.StartsWith("1"))
{
var tt = db.t_ttgzbs.FirstOrDefault(t => t.tm == tm);
if (tt == null)
return null;
gzb.xb = tt.xb;
gzb.xm = tt.xm;
gzb.nl = tt.nl;
gzb.csrq = tt.csrq;
gzb.tm = tt.tm;
gzb.hyh = tt.hyh;
gzb.tcmc = tt.tel;
var zhxm = db.t_tempdjxms.FirstOrDefault(t => t.tm == tm && t.zhbm == 29);
if (zhxm == null)
{
gzb.tczl = 0;
}
else
{
if (zhxm.dytmsl == 0)
{
zhxm.dytmsl = (short)bb.GetMax("C14SN" + zhxm.djrq.ToString("yyyyMMdd"), 1);
gzb.tczl = zhxm.dytmsl;
db.t_tempdjxms.Update(zhxm);
}
else
{
gzb.tczl = zhxm.dytmsl;
}
}
//gzb.image = tt.image;
}
else
{
var gr = db.t_grgzbs.FirstOrDefault(t => t.tm == tm);
if (gr == null)
return null;
gzb.xb = gr.xb;
gzb.xm = gr.xm;
gzb.nl = gr.nl;
gzb.csrq = gr.csrq;
gzb.tm = gr.tm;
gzb.hyh = gr.hyh;
gzb.tcmc = gr.dh;
var zhxm = db.t_tempdjxms.FirstOrDefault(t => t.tm == tm && t.zhbm == 29);
if (zhxm == null)
{
gzb.tczl = 0;
}
else
{
if (zhxm.dytmsl == 0)
{
zhxm.dytmsl = (short)bb.GetMax("C14SN" + zhxm.djrq.ToString("yyyyMMdd"), 1);
gzb.tczl = zhxm.dytmsl;
db.t_tempdjxms.Update(zhxm);
}
else
{
gzb.tczl = zhxm.dytmsl;
}
}
//gzb.image = gr.image;
}
return gzb;
}
}
public OperationResult uploadC14(int sampleno, DateTime jydate, string xm, string jg, string jyy)
{
using (var db = new DbEntities())
{
OperationResult or = new OperationResult();
var temp=db.t_tempdjxms.FirstOrDefault(t => t.tm == sampleno&& t.zhbm == 29 && t.djrq >jydate.Date);
if(temp==null)
{
or.State = 0;
or.Message = "没有找到C14登记信息";
return or;
}
else
{
if (temp.ztz == 0)
{
temp.ztz = 1;
temp.lissuccess = (short)sampleno;
temp.djsj = DateTime.Now.ToString("HH:mm:ss");
db.t_tempdjxms.Update(temp);
int tm = temp.tm;
t_tjjg tjjg = db.t_tjjgs.FirstOrDefault(t => t.tm == tm && t.xmbm == 5866);
if(tjjg==null)
{
tjjg = new t_tjjg();
tjjg.tm = tm;
tjjg.xmbm = 5866;
tjjg.cksx = "1";
tjjg.ckxx = "1";
tjjg.czy = "trcwj";
tjjg.jg = jg;
db.t_tjjgs.Insert(tjjg);
}
else
{
tjjg.jg = jg;
db.t_tjjgs.Update(tjjg);
}
//幽门螺杆菌检测(呼气试验)阳性
t_tjjd tjjd = db.t_tjjds.FirstOrDefault(t => t.tm == tm && t.ksbm == 74);
if(tjjd==null)
{
tjjd = new t_tjjd();
tjjd.tm = tm;
tjjd.ksbm = 74;
if(jg.Contains("阳性"))
{
tjjd.zdjg = "幽门螺杆菌检测(呼气试验)阳性";
}
else
{
tjjd.zdjg = "阴性";
}
tjjd.zdys = "崔万金";
tjjd.czy = "trcwj";
tjjd.djsj = DateTime.Now.ToString("yyyy-MM-dd");
db.t_tjjds.Insert(tjjd);
}
else
{
if (jg.Contains("阳性"))
{
tjjd.zdjg = "幽门螺杆菌检测(呼气试验)阳性";
}
else
{
tjjd.zdjg = "阴性";
}
db.t_tjjds.Update(tjjd);
}
}
else
{
or.State = 0;
or.Message = "数据已经审核!";
}
}
return or;
}
}
}
}