2795 lines
119 KiB
C#
2795 lines
119 KiB
C#
|
|
using EAS.Services;
|
|||
|
|
using System;
|
|||
|
|
using System.Collections.Generic;
|
|||
|
|
using System.Linq;
|
|||
|
|
using System.Text;
|
|||
|
|
using SOH.Entities.DTO;
|
|||
|
|
using SOH.Entities;
|
|||
|
|
using SOH.Data;
|
|||
|
|
using EAS.Data;
|
|||
|
|
using EAS.Data.Linq;
|
|||
|
|
using EAS.Data.ORM;
|
|||
|
|
using System.Data;
|
|||
|
|
using EAS.Data.Access;
|
|||
|
|
using System.Text.RegularExpressions;
|
|||
|
|
|
|||
|
|
namespace SOH.BLL
|
|||
|
|
{
|
|||
|
|
[ServiceObject("检验基本功能")]
|
|||
|
|
[ServiceBind(typeof(IJianYan))]
|
|||
|
|
public class JianYanBll : IJianYan
|
|||
|
|
{
|
|||
|
|
|
|||
|
|
public void addyiqixm(jy_yiqi_xm xm)
|
|||
|
|
{
|
|||
|
|
// throw new NotImplementedException();
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
var lxm = db.jy_yiqi_xms.FirstOrDefault(t => t.yq == xm.yq && t.tdh == xm.tdh);
|
|||
|
|
if (lxm == null)
|
|||
|
|
{
|
|||
|
|
db.jy_yiqi_xms.Insert(xm);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public void addyiqixmcalc(jy_yiqi_xm_calc jsxm)
|
|||
|
|
{
|
|||
|
|
//throw new NotImplementedException();
|
|||
|
|
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
var lxm = db.jy_yiqi_xm_calcs.FirstOrDefault(t => t.yq == jsxm.yq && t.jsxm == jsxm.jsxm);
|
|||
|
|
if (lxm == null)
|
|||
|
|
{
|
|||
|
|
db.jy_yiqi_xm_calcs.Insert(jsxm);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public DataTable hqjcxm(string zhbm)
|
|||
|
|
{
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
string sql1 = "select * from t_jcxm where jcxmbm in (select xmbm from t_zhxmmx where zhbm=" + zhbm + ")";
|
|||
|
|
DataTable dt = db.DataAccessor.QueryDataTable(sql1);
|
|||
|
|
|
|||
|
|
|
|||
|
|
return dt;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public List<jy_sqd_mx> hqsqdmx(string jytm)
|
|||
|
|
{
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
var data = db.jy_sqd_mxs.Where(t => t.jytm == jytm).Any();
|
|||
|
|
if (data)
|
|||
|
|
{
|
|||
|
|
return db.jy_sqd_mxs.Where(t => t.jytm == jytm).ToList();
|
|||
|
|
}
|
|||
|
|
return null;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public OperationResult cxdj(string jytm, string czyh)
|
|||
|
|
{
|
|||
|
|
OperationResult or = new OperationResult();
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
var jymx = db.jy_sqd_mxs.Where(t => t.jytm == jytm).ToList();
|
|||
|
|
var tm = db.jy_sqds.Where(t => t.jytm == jytm).First();
|
|||
|
|
|
|||
|
|
var tran = db.CreateTransaction();
|
|||
|
|
try
|
|||
|
|
{
|
|||
|
|
|
|||
|
|
jymx.ForEach(t =>
|
|||
|
|
{
|
|||
|
|
var djxm = db.t_tempdjxms.Where(p => p.tm == tm.tm && p.zhbm == t.zhxmbm).First();
|
|||
|
|
djxm.ztz = 1;
|
|||
|
|
db.t_tempdjxms.Update(djxm);
|
|||
|
|
});
|
|||
|
|
tm.cxsj = DateTime.Now;
|
|||
|
|
tm.cxyy = czyh;
|
|||
|
|
tm.state = 1;
|
|||
|
|
db.jy_sqds.Update(tm);
|
|||
|
|
tran.Commit();
|
|||
|
|
|
|||
|
|
or.State = 1;
|
|||
|
|
or.Message = "登记成功!";
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
catch (Exception ex)
|
|||
|
|
{
|
|||
|
|
tran.Rollback();
|
|||
|
|
or.Message = ex.Message;
|
|||
|
|
or.State = 0;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
return or;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public dto_gzb getGzbByJytmh(string jytm)
|
|||
|
|
{
|
|||
|
|
//throw new NotImplementedException();
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
var jysql = db.jy_sqds.Where(t => t.jytm == jytm && t.state == 0).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);
|
|||
|
|
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.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.image = gr.image;
|
|||
|
|
}
|
|||
|
|
return gzb;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
public List<jy_yiqi_xm> getjyxmbytm(string tm,string yqbm)
|
|||
|
|
{
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
return db.jy_sqd_mxs.Where(t => t.jytm == tm).Join(db.t_zhxms, t => t.zhxmbm, p => p.zhbm, (t, p) => p).Join(db.t_zhxmmxs, t => t.zhbm, p => p.zhbm, (t, p) => p)
|
|||
|
|
.Join(db.t_jcxms, t => t.xmbm, p => p.jcxmbm, (t, p) => p).Join(db.jy_yiqi_xms.Where(xm=>xm.yq==yqbm), t => t.lis, p => p.xmdm, (t, p) => p).ToList();
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
public List<lis_jydl> getjydl()
|
|||
|
|
{
|
|||
|
|
//throw new NotImplementedException();
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
return db.list_jydls.ToList();
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public string getjyxm(string text, DateTime jyrq, string bbh)
|
|||
|
|
{
|
|||
|
|
int xb = 0;
|
|||
|
|
int ibbh = int.Parse(bbh);
|
|||
|
|
jyrq = new DateTime(jyrq.Year, jyrq.Month, jyrq.Day);
|
|||
|
|
//throw new NotImplementedException();
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
//var ls = db.jy_yhxxs.Where(t => t.jytm == text).Join(db.jy_yssjs, t => new { t.jyrq, t.bbh, t.yqbh }, p => new { p.jyrq, p.bbh, p.yqbh }, (t, p) => new {
|
|||
|
|
// xmdm = p.xmbm,
|
|||
|
|
// jg = p.jg,
|
|||
|
|
// ckz=p.czk
|
|||
|
|
|
|||
|
|
//});
|
|||
|
|
var yq = db.jy_yiqis.Where(t => t.yq == text).FirstOrDefault();
|
|||
|
|
|
|||
|
|
var yhxx = db.jy_yhxxs.First(p => p.yqbh == text && p.bbh == ibbh && p.jyrq == jyrq);
|
|||
|
|
if (!string.IsNullOrEmpty(yhxx.xb))
|
|||
|
|
{
|
|||
|
|
if ("女".Equals(yhxx.xb))
|
|||
|
|
{
|
|||
|
|
xb = 1;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if (xb == 0)
|
|||
|
|
{
|
|||
|
|
var jyxms = db.jy_sqd_mxs.Where(t => t.jytm == yhxx.jytm).Join(db.t_zhxms, t => t.zhxmbm, p => p.zhbm, (t, p) => p).Join(db.t_zhxmmxs, t => t.zhbm, p => p.zhbm, (t, p) => p)
|
|||
|
|
.Join(db.t_jcxms, t => t.xmbm, p => p.jcxmbm, (t, p) => p).ToList();
|
|||
|
|
var ls = db.jy_yssjs.Where(p => p.jyrq == yhxx.jyrq && p.yqbh == yhxx.yqbh && p.bbh == yhxx.bbh).ToList();
|
|||
|
|
var jyxm = db.jy_yiqi_xms.Where(p => p.yq == text).OrderBy(t => t.dysx).Select(p => new { p.xmdm, cksx = p.cksx, p.ckxx, dysx = p.dysx, zt = 1, p.xmmc, p.dw }).ToList();
|
|||
|
|
var jsxm = db.jy_yiqi_xm_calcs.Where(p => p.yq == text).OrderBy(t => t.dysx).Select(p => new { xmdm = p.jsxm, cksx = p.cksx, p.ckxx, dysx = p.dysx, zt = 2, p.xmmc, p.dw }).ToList();
|
|||
|
|
|
|||
|
|
jyxm = jyxm.Concat(jsxm).ToList();
|
|||
|
|
if (jyxms.Any())
|
|||
|
|
{
|
|||
|
|
jyxm = jyxm.Join(jyxms, t => t.xmdm, p => p.lis, (t, p) => t).ToList();
|
|||
|
|
}
|
|||
|
|
/*
|
|||
|
|
var ls1 = ls.Join(jyxm, t => t.xmbm, p => p.xmdm, (t, p) => new
|
|||
|
|
{
|
|||
|
|
xmdm = t.xmbm,
|
|||
|
|
jg = t.jg,
|
|||
|
|
cksx = p.cksx,
|
|||
|
|
ckxx = p.ckxx,
|
|||
|
|
p.dysx,
|
|||
|
|
p.zt,
|
|||
|
|
p.xmmc,
|
|||
|
|
p.dw,
|
|||
|
|
yqbms= text,
|
|||
|
|
jyrqs= jyrq,
|
|||
|
|
bbhs= bbh
|
|||
|
|
}).Select(p => new
|
|||
|
|
{
|
|||
|
|
xmdm = p.xmdm,
|
|||
|
|
jg = p.jg,
|
|||
|
|
cksx = p.cksx,
|
|||
|
|
ckxx = p.ckxx,
|
|||
|
|
p.dysx,
|
|||
|
|
p.zt,
|
|||
|
|
p.xmmc,
|
|||
|
|
p.dw,
|
|||
|
|
yqbms = text,
|
|||
|
|
jyrqs = jyrq,
|
|||
|
|
bbhs = bbh
|
|||
|
|
});*/
|
|||
|
|
var ls1 = from xm in jyxm
|
|||
|
|
join l in ls on xm.xmdm equals l.xmbm into temp
|
|||
|
|
from tt in temp.DefaultIfEmpty()
|
|||
|
|
select new
|
|||
|
|
{
|
|||
|
|
xmdm = xm.xmdm,
|
|||
|
|
jg = tt == null ? "" : tt.jg,
|
|||
|
|
cksx = xm.cksx,
|
|||
|
|
ckxx = xm.ckxx,
|
|||
|
|
xm.dysx,
|
|||
|
|
xm.zt,
|
|||
|
|
xm.xmmc,
|
|||
|
|
xm.dw,
|
|||
|
|
yqbms = text,
|
|||
|
|
jyrqs = jyrq,
|
|||
|
|
bbhs = bbh
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
return Newtonsoft.Json.JsonConvert.SerializeObject(ls1.ToList());
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
var jyxms = db.jy_sqd_mxs.Where(t => t.jytm == yhxx.jytm).Join(db.t_zhxms, t => t.zhxmbm, p => p.zhbm, (t, p) => p).Join(db.t_zhxmmxs, t => t.zhbm, p => p.zhbm, (t, p) => p)
|
|||
|
|
.Join(db.t_jcxms, t => t.xmbm, p => p.jcxmbm, (t, p) => p).ToList();
|
|||
|
|
var ls = db.jy_yssjs.Where(p => p.jyrq == yhxx.jyrq && p.yqbh == yhxx.yqbh && p.bbh == yhxx.bbh).ToList();
|
|||
|
|
var jyxm = db.jy_yiqi_xms.Where(p => p.yq == text).OrderBy(t => t.dysx).Select(p => new { p.xmdm, cksx = p.cksx1, p.ckxx1, dysx = p.dysx, zt = 1, p.xmmc, p.dw }).ToList();
|
|||
|
|
var jsxm = db.jy_yiqi_xm_calcs.Where(p => p.yq == text).OrderBy(t => t.dysx).Select(p => new { xmdm = p.jsxm, cksx = p.cksx1, p.ckxx1, dysx = p.dysx, zt = 2, p.xmmc, p.dw }).ToList();
|
|||
|
|
|
|||
|
|
jyxm = jyxm.Concat(jsxm).ToList();
|
|||
|
|
if (jyxms.Any())
|
|||
|
|
{
|
|||
|
|
jyxm = jyxm.Join(jyxms, t => t.xmdm, p => p.lis, (t, p) => t).ToList();
|
|||
|
|
}
|
|||
|
|
/*
|
|||
|
|
var ls1 = ls.Join(jyxm, t => t.xmbm, p => p.xmdm, (t, p) => new
|
|||
|
|
{
|
|||
|
|
xmdm = t.xmbm,
|
|||
|
|
jg = t.jg,
|
|||
|
|
cksx = p.cksx,
|
|||
|
|
ckxx = p.ckxx,
|
|||
|
|
p.dysx,
|
|||
|
|
p.zt,
|
|||
|
|
p.xmmc,
|
|||
|
|
p.dw,
|
|||
|
|
yqbms= text,
|
|||
|
|
jyrqs= jyrq,
|
|||
|
|
bbhs= bbh
|
|||
|
|
}).Select(p => new
|
|||
|
|
{
|
|||
|
|
xmdm = p.xmdm,
|
|||
|
|
jg = p.jg,
|
|||
|
|
cksx = p.cksx,
|
|||
|
|
ckxx = p.ckxx,
|
|||
|
|
p.dysx,
|
|||
|
|
p.zt,
|
|||
|
|
p.xmmc,
|
|||
|
|
p.dw,
|
|||
|
|
yqbms = text,
|
|||
|
|
jyrqs = jyrq,
|
|||
|
|
bbhs = bbh
|
|||
|
|
});*/
|
|||
|
|
var ls1 = from xm in jyxm
|
|||
|
|
join l in ls on xm.xmdm equals l.xmbm into temp
|
|||
|
|
from tt in temp.DefaultIfEmpty()
|
|||
|
|
select new
|
|||
|
|
{
|
|||
|
|
xmdm = xm.xmdm,
|
|||
|
|
jg = tt == null ? "" : tt.jg,
|
|||
|
|
cksx = xm.cksx,
|
|||
|
|
ckxx = xm.ckxx1,
|
|||
|
|
xm.dysx,
|
|||
|
|
xm.zt,
|
|||
|
|
xm.xmmc,
|
|||
|
|
xm.dw,
|
|||
|
|
yqbms = text,
|
|||
|
|
jyrqs = jyrq,
|
|||
|
|
bbhs = bbh
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
return Newtonsoft.Json.JsonConvert.SerializeObject(ls1.ToList());
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
// return null;
|
|||
|
|
}
|
|||
|
|
public List<t_jcxm> getjyxmbyzhxm(int zhbm)
|
|||
|
|
{
|
|||
|
|
//throw new NotImplementedException();
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
return db.t_zhxmmxs.Where(t => t.zhbm == zhbm).Join(db.t_jcxms, t => t.xmbm, p => p.jcxmbm, (t, p) => p).ToList();
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public List<jy_yhxx> getjyyhxx(string yqbh, DateTime jyrq)
|
|||
|
|
{
|
|||
|
|
// throw new NotImplementedException();
|
|||
|
|
jyrq = new DateTime(jyrq.Year, jyrq.Month, jyrq.Day);
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
return db.jy_yhxxs.Where(t => t.yqbh == yqbh && t.jyrq == jyrq).OrderBy(t => t.bbh).ToList();
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public jy_yhxx getjyyhxxbytm(string tm)
|
|||
|
|
{
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
return db.jy_yhxxs.Where(t => t.jytm == tm).FirstOrDefault();
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public jy_yiqi getJYYQ(string yqbm)
|
|||
|
|
{
|
|||
|
|
//throw new NotImplementedException();
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
return db.jy_yiqis.FirstOrDefault(t => t.yq == yqbm);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public int getMaxBBH(DateTime jyrq, string v)
|
|||
|
|
{
|
|||
|
|
//throw new NotImplementedException();
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
jyrq = new DateTime(jyrq.Year, jyrq.Month, jyrq.Day);
|
|||
|
|
var bbh = db.jy_yhxxs.Where(t => t.yqbh == v && t.jyrq == jyrq).OrderByDescending(t => t.bbh).FirstOrDefault();
|
|||
|
|
if (bbh == null)
|
|||
|
|
return 1;
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
return bbh.bbh + 1;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public jy_sqd getsqdbyjytm(string text)
|
|||
|
|
{
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
return db.jy_sqds.FirstOrDefault(t => t.jytm == text);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public jy_yhxx getyhxxbyjytm(string text)
|
|||
|
|
{
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
return db.jy_yhxxs.FirstOrDefault(t => t.jytm == text);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public jy_yhxx getyhxxbyyqrqbh(string yqbh, DateTime value, int bbh)
|
|||
|
|
{
|
|||
|
|
//throw new NotImplementedException();
|
|||
|
|
value = new DateTime(value.Year, value.Month, value.Day);
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
return db.jy_yhxxs.FirstOrDefault(t => t.bbh == bbh && t.yqbh == yqbh && t.jyrq == value);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public List<dto_jyxm> getyiqixmbyyqbm(string yqbm)
|
|||
|
|
{
|
|||
|
|
//throw new NotImplementedException();
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
var jbxm = db.jy_yiqi_xms.Where(t => t.yq == yqbm).OrderBy(t => t.dysx).Select(t => new dto_jyxm
|
|||
|
|
{
|
|||
|
|
id = t.id,
|
|||
|
|
yq = t.yq,
|
|||
|
|
cksx = t.cksx,
|
|||
|
|
ckxx = t.ckxx,
|
|||
|
|
cksx1=t.cksx1,
|
|||
|
|
ckxx1=t.ckxx1,
|
|||
|
|
dw = t.dw,
|
|||
|
|
dyckz = t.dyckz,
|
|||
|
|
dysx = t.dysx,
|
|||
|
|
tdh = t.tdh,
|
|||
|
|
xmdm = t.xmdm,
|
|||
|
|
xmmc = t.xmmc,
|
|||
|
|
lx = 1
|
|||
|
|
}).ToList();
|
|||
|
|
|
|||
|
|
var jsxm = db.jy_yiqi_xm_calcs.Where(t => t.yq == yqbm).OrderBy(t => t.dysx).Select(t => new dto_jyxm
|
|||
|
|
{
|
|||
|
|
yq = t.yq,
|
|||
|
|
cksx = t.cksx,
|
|||
|
|
ckxx = t.ckxx,
|
|||
|
|
dw = t.dw,
|
|||
|
|
dyckz = t.dyckz,
|
|||
|
|
dysx = t.dysx,
|
|||
|
|
cksx1 = t.cksx1,
|
|||
|
|
ckxx1 = t.ckxx1,
|
|||
|
|
xmdm = t.jsxm,
|
|||
|
|
xmmc = t.xmmc,
|
|||
|
|
lx = 2,
|
|||
|
|
jsgs = t.jsgs
|
|||
|
|
}).ToList();
|
|||
|
|
return jbxm.Concat(jsxm).ToList();
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public List<jy_yiqi> getYQ()
|
|||
|
|
{
|
|||
|
|
//throw new NotImplementedException();
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
return db.jy_yiqis.ToList();
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public List<jy_yiqi> getYQbyDNMC(string dnmc)
|
|||
|
|
{
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
return db.jy_yiqis.Where(t => t.dnname == dnmc).ToList();
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public List<jy_yiqi> getAllYQ()
|
|||
|
|
{
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
return db.jy_yiqis.ToList();
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public List<t_zhxm> getzhxmsbyjytm(string jytm)
|
|||
|
|
{
|
|||
|
|
//throw new NotImplementedException();
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
return db.jy_sqd_mxs.Where(t => t.jytm == jytm).Join(db.t_zhxms, t => t.zhxmbm, p => p.zhbm, (o, p) => p).ToList();
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public void jyupdateresult(DateTime sampledate, string yq, int sampleno, string jg, string xm)
|
|||
|
|
{
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
sampledate = new DateTime(sampledate.Year, sampledate.Month, sampledate.Day);
|
|||
|
|
var yssj = db.jy_yssjs.FirstOrDefault(t => t.yqbh == yq && t.jyrq == sampledate && t.bbh == sampleno && t.xmbm == xm);
|
|||
|
|
if (yssj == null)
|
|||
|
|
{
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
yssj.jg = jg;
|
|||
|
|
yssj.jssj = DateTime.Now;
|
|||
|
|
db.jy_yssjs.Update(yssj);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public int jyaddresult(DateTime sampledate, string yq, string sampleno, string itemno, string srcresult)
|
|||
|
|
{
|
|||
|
|
|
|||
|
|
//throw new NotImplementedException();
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
try
|
|||
|
|
{
|
|||
|
|
var xm = db.jy_yiqi_xms.FirstOrDefault(t => t.yq == yq && t.tdh == itemno);
|
|||
|
|
if (xm == null)
|
|||
|
|
{
|
|||
|
|
xm = db.jy_yiqi_xms.FirstOrDefault(t => t.yq == yq && t.xmdm == itemno);
|
|||
|
|
if (xm == null)
|
|||
|
|
{
|
|||
|
|
return 3;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
int isampleno = 0;
|
|||
|
|
if (sampleno.Length > 10)
|
|||
|
|
{
|
|||
|
|
//int isampleno = int.Parse(sampleno);
|
|||
|
|
var yh = db.jy_yhxxs.FirstOrDefault(t => t.jytm == sampleno);
|
|||
|
|
if (yh == null)
|
|||
|
|
return 3;
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
isampleno = yh.bbh;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
isampleno = int.Parse(sampleno);
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
var yssj = db.jy_yssjs.FirstOrDefault(t => t.yqbh == yq && t.jyrq == sampledate && t.bbh == isampleno && t.xmbm == xm.xmdm);
|
|||
|
|
if (yssj == null)
|
|||
|
|
{
|
|||
|
|
yssj = new jy_yssj();
|
|||
|
|
yssj.bbh = isampleno;
|
|||
|
|
yssj.czk = xm.dyckz;
|
|||
|
|
yssj.tdh = xm.tdh;
|
|||
|
|
yssj.xmbm = xm.xmdm;
|
|||
|
|
yssj.jg = srcresult;
|
|||
|
|
yssj.jssj = DateTime.Now;
|
|||
|
|
yssj.jyrq = sampledate;
|
|||
|
|
yssj.yqbh = yq;
|
|||
|
|
db.jy_yssjs.Insert(yssj);
|
|||
|
|
return 1;
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
yssj.jg = srcresult;
|
|||
|
|
yssj.jssj = DateTime.Now;
|
|||
|
|
db.jy_yssjs.Update(yssj);
|
|||
|
|
return 2;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
catch (Exception ex)
|
|||
|
|
{
|
|||
|
|
//new EAS.Loggers.TextLogger().
|
|||
|
|
//throw ex;
|
|||
|
|
return 3;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public DataTable hyjglrjsgs(DataTable jglrList)
|
|||
|
|
{
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
var s = db.jy_yiqi_xm_calcs.Where(t => t.yq == "AU680").ToList();
|
|||
|
|
if (s.Count > 0)
|
|||
|
|
{
|
|||
|
|
DataTable dt = new DataTable();
|
|||
|
|
var jcxms = db.t_zhxmmxs.Where(z => z.zhbm == 22).Join(db.t_jcxms, z => z.xmbm, p => p.jcxmbm, (z, p) => p).ToList();
|
|||
|
|
jcxms.ForEach(t =>
|
|||
|
|
{
|
|||
|
|
DataColumn dc = new DataColumn(t.lis, typeof(decimal));
|
|||
|
|
dt.Columns.Add(dc);
|
|||
|
|
|
|||
|
|
});
|
|||
|
|
|
|||
|
|
List<jy_yssjnew> jy_yssjList = new List<jy_yssjnew>();
|
|||
|
|
|
|||
|
|
for (int k = 0; k < jglrList.Rows.Count; k++)
|
|||
|
|
{
|
|||
|
|
jy_yssjnew yssjs = new jy_yssjnew();
|
|||
|
|
var xms = db.t_zhxmmxs.Where(z => z.zhbm == 22).Join(db.t_jcxms, z => z.xmbm, p => p.jcxmbm, (z, p) => p).ToList();
|
|||
|
|
xms.ForEach(f =>
|
|||
|
|
{
|
|||
|
|
if (f.jcxmbm == Convert.ToInt32(jglrList.Rows[k]["jcbm"].ToString()))
|
|||
|
|
{
|
|||
|
|
yssjs.jg = jglrList.Rows[k]["zcjg"].ToString();
|
|||
|
|
yssjs.xmbm = f.lis;
|
|||
|
|
yssjs.jcxmbm = Convert.ToInt32(jglrList.Rows[k]["jcbm"].ToString());
|
|||
|
|
jy_yssjList.Add(yssjs);
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
DataRow drNew = dt.NewRow();
|
|||
|
|
|
|||
|
|
|
|||
|
|
foreach (DataColumn dc in dt.Columns)
|
|||
|
|
{
|
|||
|
|
var xm = jy_yssjList.Where(t => t.xmbm == dc.ColumnName).FirstOrDefault();
|
|||
|
|
if (xm == null)
|
|||
|
|
{
|
|||
|
|
drNew[dc] = 0.0;
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
decimal d = 0;
|
|||
|
|
decimal.TryParse(xm.jg, out d);
|
|||
|
|
drNew[dc] = d;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
dt.Rows.Add(drNew);
|
|||
|
|
List<jy_yssjnew> jy_yssjList1 = new List<jy_yssjnew>();
|
|||
|
|
try
|
|||
|
|
{
|
|||
|
|
s.ForEach(t =>
|
|||
|
|
{
|
|||
|
|
jy_yssjnew jy_yssjnew = new jy_yssjnew();
|
|||
|
|
string jsgs = t.jsgs;
|
|||
|
|
string jsjg = "";
|
|||
|
|
while (true)
|
|||
|
|
{
|
|||
|
|
int post = jsgs.IndexOf("[");
|
|||
|
|
if (post < 0)
|
|||
|
|
{
|
|||
|
|
jsjg += jsgs;
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
jsjg += jsgs.Substring(0, post);
|
|||
|
|
jsgs = jsgs.Substring(post + 1);
|
|||
|
|
}
|
|||
|
|
post = jsgs.IndexOf("]");
|
|||
|
|
if (post >= 0)
|
|||
|
|
{
|
|||
|
|
string key = jsgs.Substring(0, post);
|
|||
|
|
jsjg += dt.Rows[0][key].ToString();
|
|||
|
|
if (post + 1 == jsgs.Length)
|
|||
|
|
{
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
jsgs = jsgs.Substring(post + 1);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
var lis = db.t_jcxms.Where(m => m.lis == t.jsxm).FirstOrDefault();
|
|||
|
|
jy_yssjnew.xmbm = t.jsxm;
|
|||
|
|
jy_yssjnew.jcxmbm = lis.jcxmbm;
|
|||
|
|
jy_yssjnew.jg = double.Parse(dt.Compute(jsjg, "1=1").ToString()).ToString("0.00");
|
|||
|
|
jy_yssjList1.Add(jy_yssjnew);
|
|||
|
|
});
|
|||
|
|
}
|
|||
|
|
catch
|
|||
|
|
{
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
for (int i = 0; i < jglrList.Rows.Count; i++)
|
|||
|
|
{
|
|||
|
|
jy_yssjList1.ForEach(o =>
|
|||
|
|
{
|
|||
|
|
|
|||
|
|
if (jglrList.Rows[i]["jcbm"].ToString() == o.jcxmbm.ToString())
|
|||
|
|
{
|
|||
|
|
jglrList.Rows[i]["zcjg"] = o.jg;
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
return jglrList;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public void jycalcsample(string yq, DateTime rq, string sampleno)
|
|||
|
|
{
|
|||
|
|
|
|||
|
|
//throw new NotImplementedException();
|
|||
|
|
int isampleno = 0;
|
|||
|
|
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
if (sampleno.Length > 10)
|
|||
|
|
{
|
|||
|
|
//int isampleno = int.Parse(sampleno);
|
|||
|
|
var yh = db.jy_yhxxs.FirstOrDefault(t => t.jytm == sampleno);
|
|||
|
|
if (yh == null)
|
|||
|
|
return ;
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
isampleno = yh.bbh;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
isampleno = int.Parse(sampleno);
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
var s = db.jy_yiqi_xm_calcs.Where(t => t.yq == yq).ToList();
|
|||
|
|
if (s.Count > 0)
|
|||
|
|
{
|
|||
|
|
|
|||
|
|
DataTable dt = new DataTable();
|
|||
|
|
var xms = db.jy_yiqi_xms.Where(t => t.yq == yq).ToList();
|
|||
|
|
xms.ForEach(t =>
|
|||
|
|
{
|
|||
|
|
DataColumn dc = new DataColumn(t.xmdm, typeof(decimal));
|
|||
|
|
dt.Columns.Add(dc);
|
|||
|
|
|
|||
|
|
});
|
|||
|
|
var ysxjs = db.jy_yssjs.Where(t => t.yqbh == yq && t.jyrq == rq && t.bbh == isampleno).ToList();
|
|||
|
|
|
|||
|
|
DataRow dr = dt.NewRow();
|
|||
|
|
|
|||
|
|
foreach (DataColumn dc in dt.Columns)
|
|||
|
|
{
|
|||
|
|
var xm = ysxjs.Where(t => t.xmbm == dc.ColumnName).FirstOrDefault();
|
|||
|
|
if (xm == null)
|
|||
|
|
{
|
|||
|
|
dr[dc] = 0.0;
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
decimal d = 0;
|
|||
|
|
decimal.TryParse(xm.jg, out d);
|
|||
|
|
dr[dc] = d;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
dt.Rows.Add(dr);
|
|||
|
|
EAS.Loggers.Logger.Info(Newtonsoft.Json.JsonConvert.SerializeObject(dt));
|
|||
|
|
s.ForEach(t =>
|
|||
|
|
{
|
|||
|
|
try
|
|||
|
|
{
|
|||
|
|
jy_yssj yssj = new jy_yssj();
|
|||
|
|
|
|||
|
|
string jsgs = t.jsgs;
|
|||
|
|
|
|||
|
|
string jsjg = "";
|
|||
|
|
while (true)
|
|||
|
|
{
|
|||
|
|
int post = jsgs.IndexOf("[");
|
|||
|
|
if (post < 0)
|
|||
|
|
{
|
|||
|
|
jsjg += jsgs;
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
jsjg += jsgs.Substring(0, post);
|
|||
|
|
jsgs = jsgs.Substring(post + 1);
|
|||
|
|
}
|
|||
|
|
post = jsgs.IndexOf("]");
|
|||
|
|
if (post >= 0)
|
|||
|
|
{
|
|||
|
|
string key = jsgs.Substring(0, post);
|
|||
|
|
EAS.Loggers.Logger.Info(Newtonsoft.Json.JsonConvert.SerializeObject(key));
|
|||
|
|
|
|||
|
|
jsjg += dt.Rows[0][key].ToString();
|
|||
|
|
if (post + 1 == jsgs.Length)
|
|||
|
|
{
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
jsgs = jsgs.Substring(post + 1);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
EAS.Loggers.Logger.Info(Newtonsoft.Json.JsonConvert.SerializeObject(dt));
|
|||
|
|
|
|||
|
|
yssj.jg = double.Parse(dt.Compute(jsjg, "1=1").ToString()).ToString("f4");
|
|||
|
|
yssj.yqbh = yq;
|
|||
|
|
yssj.xmbm = t.jsxm;
|
|||
|
|
yssj.tdh = t.jsxm;
|
|||
|
|
yssj.jssj = DateTime.Now;
|
|||
|
|
yssj.jyrq = rq;
|
|||
|
|
yssj.czk = t.dyckz;
|
|||
|
|
yssj.bbh = isampleno;
|
|||
|
|
if (!db.jy_yssjs.Where(q => q.yqbh == yq && q.jyrq == rq && q.bbh == isampleno && q.tdh == t.jsxm).Any())
|
|||
|
|
{
|
|||
|
|
db.jy_yssjs.Insert(yssj);
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
db.jy_yssjs.Update(yssj);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
catch
|
|||
|
|
{
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public bool jycanmodify(string yq, DateTime rq, int sampleno)
|
|||
|
|
{
|
|||
|
|
//throw new NotImplementedException();
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
var v = db.jy_yhxxs.Where(t => t.yqbh == yq && t.jyrq == rq && t.bbh == sampleno).FirstOrDefault();
|
|||
|
|
if (v == null)
|
|||
|
|
{
|
|||
|
|
jy_yhxx yh = new jy_yhxx();
|
|||
|
|
yh.jyrq = rq;
|
|||
|
|
yh.yqbh = yq;
|
|||
|
|
yh.bbh = sampleno;
|
|||
|
|
yh.state = 0;
|
|||
|
|
db.jy_yhxxs.Insert(yh);
|
|||
|
|
return true;
|
|||
|
|
}
|
|||
|
|
else if (v.state == 0)
|
|||
|
|
{
|
|||
|
|
return true;
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
return false;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
public bool jycanmodifybytm(string yq, DateTime rq, string sampleno)
|
|||
|
|
{
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
var v = db.jy_yhxxs.Where(t => t.yqbh == yq && t.jyrq == rq && t.jytm == sampleno).FirstOrDefault();
|
|||
|
|
if (v == null)
|
|||
|
|
{
|
|||
|
|
return false;
|
|||
|
|
}
|
|||
|
|
else if (v.state == 0)
|
|||
|
|
{
|
|||
|
|
return true;
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
return false;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public OperationResult regJYRQEntity(jy_yiqi jyyq)
|
|||
|
|
{
|
|||
|
|
//throw new NotImplementedException();
|
|||
|
|
OperationResult or = new OperationResult();
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
try
|
|||
|
|
{
|
|||
|
|
if (jyyq.azrq == null)
|
|||
|
|
jyyq.azrq = DateTime.Now;
|
|||
|
|
db.jy_yiqis.Insert(jyyq);
|
|||
|
|
}
|
|||
|
|
catch (Exception ex)
|
|||
|
|
{
|
|||
|
|
or.State = 0;
|
|||
|
|
or.Message = ex.Message;
|
|||
|
|
return or;
|
|||
|
|
}
|
|||
|
|
or.State = 1;
|
|||
|
|
or.Message = "操作成功!";
|
|||
|
|
return or;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
public OperationResult regJYYQ(string yqbm, string dnmc, string yqmc, string yqxh, int yqlb)
|
|||
|
|
{
|
|||
|
|
//throw new NotImplementedException();
|
|||
|
|
jy_yiqi yq = new jy_yiqi { yq = yqbm, yqlb = yqlb, yqmc = yqmc, yqxh = yqxh, dnname = dnmc, azrq = DateTime.Now };
|
|||
|
|
return regJYRQEntity(yq);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public OperationResult regyhxx(jy_yhxx yhxx)
|
|||
|
|
{
|
|||
|
|
//throw new NotImplementedException();
|
|||
|
|
OperationResult or = new OperationResult();
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
var tran = db.CreateTransaction();
|
|||
|
|
try
|
|||
|
|
{
|
|||
|
|
if (db.jy_yhxxs.Where(t => t.jyrq == yhxx.jyrq && t.yqbh == yhxx.yqbh && t.bbh == yhxx.bbh).Any())
|
|||
|
|
{
|
|||
|
|
db.jy_yhxxs.Update(yhxx);
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
db.jy_yhxxs.Insert(yhxx);
|
|||
|
|
}
|
|||
|
|
var jymx = db.jy_sqd_mxs.Where(t => t.jytm == yhxx.jytm).ToList();
|
|||
|
|
var tm = db.jy_sqds.Where(t => t.jytm == yhxx.jytm).First();
|
|||
|
|
|
|||
|
|
if (db.t_tempdjxms.Where(t => t.tm == tm.tm).Any())
|
|||
|
|
{
|
|||
|
|
jymx.ForEach(t =>
|
|||
|
|
{
|
|||
|
|
var djxm = db.t_tempdjxms.Where(p => p.tm == tm.tm && p.zhbm == t.zhxmbm).First();
|
|||
|
|
if (djxm.ztz == 0)
|
|||
|
|
{
|
|||
|
|
djxm.ztz = 1;
|
|||
|
|
djxm.lissuccess = (short)yhxx.bbh;
|
|||
|
|
db.t_tempdjxms.Update(djxm);
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
tran.Commit();
|
|||
|
|
or.State = 1;
|
|||
|
|
or.Message = "操作成功!";
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
catch (Exception ex)
|
|||
|
|
{
|
|||
|
|
tran.Rollback();
|
|||
|
|
or.State = 0;
|
|||
|
|
or.Message = ex.Message;
|
|||
|
|
return or;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
return or;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public OperationResult deleteJyxm(int id)
|
|||
|
|
{
|
|||
|
|
OperationResult or = new OperationResult();
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
try
|
|||
|
|
{
|
|||
|
|
db.jy_yiqi_xms.Delete(t => t.id == id);
|
|||
|
|
}
|
|||
|
|
catch (Exception ex)
|
|||
|
|
{
|
|||
|
|
or.State = 0;
|
|||
|
|
or.Message = ex.Message;
|
|||
|
|
return or;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
or.State = 1;
|
|||
|
|
or.Message = "删除成功!";
|
|||
|
|
return or;
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public OperationResult regyqjsxm(jy_yiqi_xm_calc xm)
|
|||
|
|
{
|
|||
|
|
// throw new NotImplementedException();
|
|||
|
|
|
|||
|
|
OperationResult or = new OperationResult();
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
if (db.jy_yiqi_xm_calcs.Where(t => t.yq == xm.yq && t.jsxm == xm.jsxm).Any())
|
|||
|
|
{
|
|||
|
|
try
|
|||
|
|
{
|
|||
|
|
db.jy_yiqi_xm_calcs.Update(xm);
|
|||
|
|
}
|
|||
|
|
catch (Exception ex)
|
|||
|
|
{
|
|||
|
|
or.State = 0;
|
|||
|
|
or.Message = ex.Message;
|
|||
|
|
return or;
|
|||
|
|
}
|
|||
|
|
or.State = 1;
|
|||
|
|
or.Message = "更新成功!";
|
|||
|
|
return or;
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
try
|
|||
|
|
{
|
|||
|
|
db.jy_yiqi_xm_calcs.Insert(xm);
|
|||
|
|
}
|
|||
|
|
catch (Exception ex)
|
|||
|
|
{
|
|||
|
|
or.State = 0;
|
|||
|
|
or.Message = ex.Message;
|
|||
|
|
return or;
|
|||
|
|
}
|
|||
|
|
or.State = 1;
|
|||
|
|
or.Message = "添加成功!";
|
|||
|
|
return or;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public OperationResult regyqxm(jy_yiqi_xm xm)
|
|||
|
|
{
|
|||
|
|
//throw new NotImplementedException();
|
|||
|
|
OperationResult or = new OperationResult();
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
if (db.jy_yiqi_xms.Where(t => t.yq == xm.yq && t.xmdm == xm.xmdm).Any())
|
|||
|
|
{
|
|||
|
|
try
|
|||
|
|
{
|
|||
|
|
db.jy_yiqi_xms.Update(xm);
|
|||
|
|
}
|
|||
|
|
catch (Exception ex)
|
|||
|
|
{
|
|||
|
|
or.State = 0;
|
|||
|
|
or.Message = ex.Message;
|
|||
|
|
return or;
|
|||
|
|
}
|
|||
|
|
or.State = 1;
|
|||
|
|
or.Message = "更新成功!";
|
|||
|
|
return or;
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
try
|
|||
|
|
{
|
|||
|
|
db.jy_yiqi_xms.Insert(xm);
|
|||
|
|
}
|
|||
|
|
catch (Exception ex)
|
|||
|
|
{
|
|||
|
|
or.State = 0;
|
|||
|
|
or.Message = ex.Message;
|
|||
|
|
return or;
|
|||
|
|
}
|
|||
|
|
or.State = 1;
|
|||
|
|
or.Message = "添加成功!";
|
|||
|
|
return or;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public OperationResult yiqizhuxiao(string yq)
|
|||
|
|
{
|
|||
|
|
//throw new NotImplementedException();
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
OperationResult or = new OperationResult();
|
|||
|
|
try
|
|||
|
|
{
|
|||
|
|
var tyq = db.jy_yiqis.First(t => t.yq == yq);
|
|||
|
|
tyq.zhuxiao = 1;
|
|||
|
|
db.jy_yiqis.Update(tyq);
|
|||
|
|
}
|
|||
|
|
catch (Exception ex)
|
|||
|
|
{
|
|||
|
|
or.State = 0;
|
|||
|
|
or.Message = ex.Message;
|
|||
|
|
return or;
|
|||
|
|
}
|
|||
|
|
or.State = 1;
|
|||
|
|
or.Message = "注销成功!";
|
|||
|
|
return or;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public bool IsNumber(String strNumber)
|
|||
|
|
{
|
|||
|
|
Regex objNotNumberPattern = new Regex("[^0-9.-]");
|
|||
|
|
Regex objTwoDotPattern = new Regex("[0-9]*[.][0-9]*[.][0-9]*");
|
|||
|
|
Regex objTwoMinusPattern = new Regex("[0-9]*[-][0-9]*[-][0-9]*");
|
|||
|
|
String strValidRealPattern = "^([-]|[.]|[-.]|[0-9])[0-9]*[.]*[0-9]+$";
|
|||
|
|
String strValidIntegerPattern = "^([-]|[0-9])[0-9]*$";
|
|||
|
|
Regex objNumberPattern = new Regex("(" + strValidRealPattern + ")|(" + strValidIntegerPattern + ")");
|
|||
|
|
|
|||
|
|
return !objNotNumberPattern.IsMatch(strNumber) &&
|
|||
|
|
!objTwoDotPattern.IsMatch(strNumber) &&
|
|||
|
|
!objTwoMinusPattern.IsMatch(strNumber) &&
|
|||
|
|
objNumberPattern.IsMatch(strNumber);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public static bool isNumeric(string inString)
|
|||
|
|
{
|
|||
|
|
inString = inString.Trim();
|
|||
|
|
bool haveNumber = false;
|
|||
|
|
bool haveDot = false;
|
|||
|
|
for (int i = 0; i < inString.Length; i++)
|
|||
|
|
{
|
|||
|
|
if (Char.IsNumber(inString[i]))
|
|||
|
|
{
|
|||
|
|
haveNumber = true;
|
|||
|
|
}
|
|||
|
|
else if (inString[i] == '.')
|
|||
|
|
{
|
|||
|
|
if (haveDot)
|
|||
|
|
{
|
|||
|
|
return false;
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
haveDot = true;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
else if (i == 0)
|
|||
|
|
{
|
|||
|
|
if (inString[i] != '+' && inString[i] != '-')
|
|||
|
|
{
|
|||
|
|
return false;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
return false;
|
|||
|
|
}
|
|||
|
|
if (i > 20)
|
|||
|
|
{
|
|||
|
|
return false;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
return haveNumber;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public OperationResult shenhe(String listm, String yqh, string xm, string username, short yydm)
|
|||
|
|
{
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
DbTransaction tran = db.CreateTransaction();
|
|||
|
|
OperationResult or = new OperationResult();
|
|||
|
|
try
|
|||
|
|
{
|
|||
|
|
int xb = 0;
|
|||
|
|
//获取LIS用户数据
|
|||
|
|
var yhxx = db.jy_yhxxs.FirstOrDefault(t => t.jytm == listm);
|
|||
|
|
|
|||
|
|
if (yhxx == null)
|
|||
|
|
{
|
|||
|
|
or.State = 0;
|
|||
|
|
or.Message = "没有找到当前条码的用户信息!";
|
|||
|
|
return or;
|
|||
|
|
}
|
|||
|
|
if (yhxx.state == 1)
|
|||
|
|
{
|
|||
|
|
or.State = 0;
|
|||
|
|
or.Message = "当前用户数据已经上传不能重复上传!";
|
|||
|
|
return or;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if (!string.IsNullOrEmpty(yhxx.xb))
|
|||
|
|
{
|
|||
|
|
if ("女".Equals(yhxx.xb))
|
|||
|
|
{
|
|||
|
|
xb = 1;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
#region 判断是否全部结果已经做完
|
|||
|
|
//取这个人的原始数据
|
|||
|
|
var yssjs = db.jy_yssjs.Where(t => t.jyrq == yhxx.jyrq && t.yqbh == yhxx.yqbh && t.bbh == yhxx.bbh).ToList();
|
|||
|
|
|
|||
|
|
if (yqh != "BW500" && yqh != "UT500" && yydm != 1 && yqh != "AU680")
|
|||
|
|
{
|
|||
|
|
//取这个人要做的数据
|
|||
|
|
string sql = @"select * from t_jcxm where jcxmbm in (select xmbm from t_zhxmmx where zhbm in (
|
|||
|
|
select zhxmbm from jy_sqd_mx where jytm = '" + listm + "'))";
|
|||
|
|
|
|||
|
|
DataTable dt = db.DataAccessor.QueryDataTable(sql);
|
|||
|
|
|
|||
|
|
for (int d = dt.Rows.Count - 1; d >= 0; d--)
|
|||
|
|
{
|
|||
|
|
yssjs.ForEach(y =>
|
|||
|
|
{
|
|||
|
|
if (dt.Rows[d].RowState != DataRowState.Deleted)
|
|||
|
|
{
|
|||
|
|
if (y.xmbm == dt.Rows[d]["lis"].ToString() && !string.IsNullOrEmpty(y.jg))
|
|||
|
|
{
|
|||
|
|
dt.Rows[d].Delete();
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
});
|
|||
|
|
}
|
|||
|
|
dt.AcceptChanges();
|
|||
|
|
|
|||
|
|
if (dt.Rows.Count > 0)
|
|||
|
|
{
|
|||
|
|
string kxmstr = "";
|
|||
|
|
foreach (DataRow dr in dt.Rows)
|
|||
|
|
{
|
|||
|
|
kxmstr += dr["jcxmmc"].ToString() + ",";
|
|||
|
|
}
|
|||
|
|
//kxmstr = "标本号:"+yhxx.bbh+",姓名:" + yhxx.xm+","+ kxmstr+"项目结果未完成,无法上传数据。";
|
|||
|
|
kxmstr = "标本号:" + yhxx.bbh + " 姓名:" + yhxx.xm + " 【" + kxmstr + "】项目结果未完成,无法上传数据。";
|
|||
|
|
or.State = 0;
|
|||
|
|
or.Message = kxmstr;
|
|||
|
|
return or;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
#endregion
|
|||
|
|
|
|||
|
|
yhxx.state = 1;
|
|||
|
|
yhxx.shyy = username;
|
|||
|
|
yhxx.shsj = DateTime.Now;
|
|||
|
|
db.jy_yhxxs.Update(yhxx);
|
|||
|
|
|
|||
|
|
//取仪器可以做的项目
|
|||
|
|
if (xb == 0)
|
|||
|
|
{
|
|||
|
|
var yqxms = db.jy_yiqi_xms.Where(t => t.yq == yhxx.yqbh).Select(t => new { jyxm = t.xmdm, cksx = t.cksx, ckxx = t.ckxx, dw = t.dw, xmmc = t.xmmc }).ToList();
|
|||
|
|
var yqjsxm = db.jy_yiqi_xm_calcs.Where(t => t.yq == yhxx.yqbh).Select(t => new { jyxm = t.jsxm, cksx = t.cksx, ckxx = t.ckxx, dw = t.dw, xmmc = t.xmmc }).ToList();
|
|||
|
|
yqxms = yqxms.Concat(yqjsxm).ToList();
|
|||
|
|
|
|||
|
|
//把原始数据存入sqd_jg
|
|||
|
|
int i = 0;
|
|||
|
|
List<jy_sqd_jg> sqdjg = new List<jy_sqd_jg>();
|
|||
|
|
try
|
|||
|
|
{
|
|||
|
|
|
|||
|
|
yssjs.ForEach(t =>
|
|||
|
|
{
|
|||
|
|
if (t.jg == "")
|
|||
|
|
{
|
|||
|
|
tran.Rollback();
|
|||
|
|
or.State = 0;
|
|||
|
|
or.Message = "检验条码:" + yhxx.jytm + "\r\n" + "标本号:" + yhxx.bbh.ToString() + "\r\n" + "检验项目:" + t.xmbm + "\r\n" + "结果为空,上传失败!";
|
|||
|
|
return;
|
|||
|
|
}
|
|||
|
|
var t_xm = yqxms.FirstOrDefault(x => x.jyxm == t.xmbm);
|
|||
|
|
jy_sqd_jg jg = new jy_sqd_jg
|
|||
|
|
{
|
|||
|
|
bbh = yhxx.bbh.ToString(),
|
|||
|
|
bgrq = t.jyrq,
|
|||
|
|
bgsj = DateTime.Now,
|
|||
|
|
bgys = yhxx.jyys,
|
|||
|
|
shsj = DateTime.Now,
|
|||
|
|
gxsj = DateTime.Now,
|
|||
|
|
flag = "1",
|
|||
|
|
jg = t.jg,
|
|||
|
|
jytm = yhxx.jytm,
|
|||
|
|
state = 1,
|
|||
|
|
xmbm = t.xmbm,
|
|||
|
|
yqbh = t.yqbh,
|
|||
|
|
xh = ++i
|
|||
|
|
|
|||
|
|
};
|
|||
|
|
jg.shyy = username;
|
|||
|
|
if (xm != null)
|
|||
|
|
{
|
|||
|
|
jg.ckss = t_xm.cksx;
|
|||
|
|
jg.ckxx = t_xm.ckxx;
|
|||
|
|
jg.dw = t_xm.dw;
|
|||
|
|
jg.xmmc = t_xm.xmmc;
|
|||
|
|
if (t.yqbh != "BW500" && t.yqbh != "UT500")
|
|||
|
|
{
|
|||
|
|
try
|
|||
|
|
{
|
|||
|
|
double value = Convert.ToDouble(t.jg);
|
|||
|
|
double cksx = Convert.ToDouble(t_xm.cksx);
|
|||
|
|
double ckxx = Convert.ToDouble(t_xm.ckxx);
|
|||
|
|
if (value > cksx)
|
|||
|
|
{
|
|||
|
|
jg.flag = "2";
|
|||
|
|
}
|
|||
|
|
if (value < ckxx)
|
|||
|
|
{
|
|||
|
|
jg.flag = "2";
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
catch
|
|||
|
|
{
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
var seljy_sqd_jgs = db.jy_sqd_jgs.FirstOrDefault(v => v.jytm == jg.jytm && v.yqbh == jg.yqbh && v.bbh == jg.bbh && v.xmbm == jg.xmbm);
|
|||
|
|
if (seljy_sqd_jgs == null)
|
|||
|
|
{
|
|||
|
|
db.jy_sqd_jgs.Insert(jg);
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
db.jy_sqd_jgs.Update(jg);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
sqdjg.Add(jg);
|
|||
|
|
});
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
catch (Exception ex)
|
|||
|
|
{
|
|||
|
|
tran.Rollback();
|
|||
|
|
or.State = 0;
|
|||
|
|
or.Message = ex.Message + ex.StackTrace;
|
|||
|
|
return or;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
//if (or.State == 0)
|
|||
|
|
//{
|
|||
|
|
// return or;
|
|||
|
|
//}
|
|||
|
|
|
|||
|
|
//获取申请单的明细数据
|
|||
|
|
var sqdxms = db.jy_sqd_mxs.Where(t => t.jytm == yhxx.jytm).ToList();
|
|||
|
|
var t_djxm = db.t_tempdjxms.Where(t => t.tm == yhxx.tm).ToList();
|
|||
|
|
if (t_djxm.Count != 0)
|
|||
|
|
{
|
|||
|
|
t_djxm = t_djxm.Where(t => sqdxms.Where(s => s.zhxmbm == t.zhbm).Any()).ToList();
|
|||
|
|
tran = db.CreateTransaction();
|
|||
|
|
var tjjd = new t_tjjd();
|
|||
|
|
t_djxm.ForEach(t =>
|
|||
|
|
{
|
|||
|
|
var jcxms = db.t_zhxmmxs.Where(z => z.zhbm == t.zhbm).Join(db.t_jcxms, z => z.xmbm, p => p.jcxmbm, (z, p) => p).ToList();
|
|||
|
|
tjjd.czy = username;
|
|||
|
|
tjjd.ksbm = (short)t.ksbm;
|
|||
|
|
tjjd.tm = t.tm;
|
|||
|
|
tjjd.zdys = xm;
|
|||
|
|
tjjd.djsj = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
|
|||
|
|
tjjd.upflag = 0;
|
|||
|
|
|
|||
|
|
var tjjgs = sqdjg.Join(jcxms, j => j.xmbm, p => p.lis, (j, p) => new { cksx = p.cksx, ckxx = p.ckxx, xmbm = p.jcxmbm, jg = j.jg, dw = p.dw, lx = p.lx, jcxm = p.jcxmmc }).ToList();
|
|||
|
|
tjjgs.ForEach(j =>
|
|||
|
|
{
|
|||
|
|
double c;
|
|||
|
|
var tjjg = new t_tjjg();
|
|||
|
|
if (double.TryParse(j.jg.Trim(), out c))
|
|||
|
|
{
|
|||
|
|
|
|||
|
|
if (yqh == "BW500")
|
|||
|
|
{
|
|||
|
|
tjjg.jg = Convert.ToDouble(j.jg).ToString("f4").ToString();
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
if (j.jg.Trim().Equals("+1") || j.jg.Trim().Equals("+2") || j.jg.Trim().Equals("+3"))
|
|||
|
|
{
|
|||
|
|
tjjg.jg = j.jg.Trim();
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
tjjg.jg = Convert.ToDouble(j.jg).ToString("0.00").ToString();
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
/*if (isNumeric(j.jg.Trim()))
|
|||
|
|
{
|
|||
|
|
tjjg.jg = Convert.ToDouble(j.jg.Trim()).ToString("0.00").ToString();
|
|||
|
|
}*/
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
tjjg.jg = j.jg.Trim();
|
|||
|
|
}
|
|||
|
|
if (j.cksx.ToString().Length > 0)
|
|||
|
|
{
|
|||
|
|
tjjg.cksx = j.cksx.ToString();
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
tjjg.cksx = "";
|
|||
|
|
}
|
|||
|
|
if (j.ckxx.ToString().Length > 0)
|
|||
|
|
{
|
|||
|
|
tjjg.ckxx = j.ckxx.ToString();
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
tjjg.ckxx = "";
|
|||
|
|
}
|
|||
|
|
tjjg.lx = j.lx;
|
|||
|
|
tjjg.czy = username;
|
|||
|
|
tjjg.xmbm = j.xmbm;
|
|||
|
|
tjjg.dw = j.dw;
|
|||
|
|
if (j.lx == 0)
|
|||
|
|
{
|
|||
|
|
if (j.jg.Trim() == "+")
|
|||
|
|
{
|
|||
|
|
tjjd.zdjg += j.jcxm + "阳性\r\n";
|
|||
|
|
}
|
|||
|
|
else if (j.jg.Trim() == "+-")
|
|||
|
|
{
|
|||
|
|
tjjd.zdjg += j.jcxm + "弱阳\r\n";
|
|||
|
|
}
|
|||
|
|
else if (j.jg.Trim() == "1+")
|
|||
|
|
{
|
|||
|
|
tjjd.zdjg += j.jcxm + "+\r\n";
|
|||
|
|
}
|
|||
|
|
else if (j.jg.Trim() == "+1")
|
|||
|
|
{
|
|||
|
|
tjjd.zdjg += j.jcxm + "+\r\n";
|
|||
|
|
}
|
|||
|
|
else if (j.jg.Trim() == "+2")
|
|||
|
|
{
|
|||
|
|
tjjd.zdjg += j.jcxm + "++\r\n";
|
|||
|
|
}
|
|||
|
|
else if (j.jg.Trim() == "+3")
|
|||
|
|
{
|
|||
|
|
tjjd.zdjg += j.jcxm + "+++\r\n";
|
|||
|
|
}
|
|||
|
|
else if (j.jg.Trim() == "2+")
|
|||
|
|
{
|
|||
|
|
tjjd.zdjg += j.jcxm + "++\r\n";
|
|||
|
|
}
|
|||
|
|
else if (j.jg.Trim() == "3+")
|
|||
|
|
{
|
|||
|
|
tjjd.zdjg += j.jcxm + "+++\r\n";
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
double tjg = 0;
|
|||
|
|
if (isNumeric(j.jg))
|
|||
|
|
{
|
|||
|
|
if (double.TryParse(j.jg, out tjg))
|
|||
|
|
{
|
|||
|
|
if (tjg < j.ckxx)
|
|||
|
|
{
|
|||
|
|
//tjjd.zdjg += j.jcxm + "偏低" + ":" + Convert.ToDouble(j.jg).ToString("0.00").ToString() + " (正常值" + j.ckxx + "-" + j.cksx + " " + j.dw + ")\r\n";
|
|||
|
|
tjjd.zdjg += j.jcxm + "偏低\r\n";
|
|||
|
|
//tjjd.zdjg += j.jcxm + " 偏低 " + j.jg+j.dw;
|
|||
|
|
}
|
|||
|
|
else if (tjg > j.cksx)
|
|||
|
|
{
|
|||
|
|
//tjjd.zdjg += j.jcxm + "偏高" + ":" + Convert.ToDouble(j.jg).ToString("0.00").ToString() + " (正常值" + j.ckxx + "-" + j.cksx + " " + j.dw + ")\r\n";
|
|||
|
|
tjjd.zdjg += j.jcxm + "偏高\r\n";
|
|||
|
|
//tjjd.zdjg += j.jcxm + " 偏高 " + j.jg+j.dw;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
tjjg.upflag = 0;
|
|||
|
|
tjjg.tm = t.tm;
|
|||
|
|
var seltjjg = db.t_tjjgs.FirstOrDefault(x => x.tm == t.tm && x.xmbm == j.xmbm);
|
|||
|
|
if (seltjjg == null)
|
|||
|
|
{
|
|||
|
|
db.t_tjjgs.Insert(tjjg);
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
db.t_tjjgs.Update(tjjg);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
});
|
|||
|
|
|
|||
|
|
|
|||
|
|
});
|
|||
|
|
if (string.IsNullOrEmpty(tjjd.zdjg))
|
|||
|
|
{
|
|||
|
|
tjjd.zdjg = "未见异常";
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
var seltjjd = db.t_tjjds.FirstOrDefault(y => y.tm == tjjd.tm && y.ksbm == tjjd.ksbm);
|
|||
|
|
if (seltjjd == null)
|
|||
|
|
{
|
|||
|
|
db.t_tjjds.Insert(tjjd);
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
var seltjjd1 = db.t_tjjds.FirstOrDefault(y => y.tm == tjjd.tm && y.ksbm == tjjd.ksbm);
|
|||
|
|
if (seltjjd1.zdjg != "未见异常")
|
|||
|
|
{
|
|||
|
|
if (tjjd.zdjg == "未见异常")
|
|||
|
|
{
|
|||
|
|
tjjd.zdjg = seltjjd1.zdjg;
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
tjjd.zdjg = seltjjd1.zdjg + "\r\n" + tjjd.zdjg;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
db.t_tjjds.Update(tjjd);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
tran.Commit();
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
var yqxms = db.jy_yiqi_xms.Where(t => t.yq == yhxx.yqbh).Select(t => new { jyxm = t.xmdm, cksx = t.cksx1, ckxx = t.ckxx1, dw = t.dw, xmmc = t.xmmc }).ToList();
|
|||
|
|
var yqjsxm = db.jy_yiqi_xm_calcs.Where(t => t.yq == yhxx.yqbh).Select(t => new { jyxm = t.jsxm, cksx = t.cksx1, ckxx = t.ckxx1, dw = t.dw, xmmc = t.xmmc }).ToList();
|
|||
|
|
yqxms = yqxms.Concat(yqjsxm).ToList();
|
|||
|
|
|
|||
|
|
//把原始数据存入sqd_jg
|
|||
|
|
int i = 0;
|
|||
|
|
List<jy_sqd_jg> sqdjg = new List<jy_sqd_jg>();
|
|||
|
|
try
|
|||
|
|
{
|
|||
|
|
|
|||
|
|
yssjs.ForEach(t =>
|
|||
|
|
{
|
|||
|
|
if (t.jg == "")
|
|||
|
|
{
|
|||
|
|
tran.Rollback();
|
|||
|
|
or.State = 0;
|
|||
|
|
or.Message = "检验条码:" + yhxx.jytm + "\r\n" + "标本号:" + yhxx.bbh.ToString() + "\r\n" + "检验项目:" + t.xmbm + "\r\n" + "结果为空,上传失败!";
|
|||
|
|
return;
|
|||
|
|
}
|
|||
|
|
var t_xm = yqxms.FirstOrDefault(x => x.jyxm == t.xmbm);
|
|||
|
|
jy_sqd_jg jg = new jy_sqd_jg
|
|||
|
|
{
|
|||
|
|
bbh = yhxx.bbh.ToString(),
|
|||
|
|
bgrq = t.jyrq,
|
|||
|
|
bgsj = DateTime.Now,
|
|||
|
|
bgys = yhxx.jyys,
|
|||
|
|
shsj = DateTime.Now,
|
|||
|
|
gxsj = DateTime.Now,
|
|||
|
|
flag = "1",
|
|||
|
|
jg = t.jg,
|
|||
|
|
jytm = yhxx.jytm,
|
|||
|
|
state = 1,
|
|||
|
|
xmbm = t.xmbm,
|
|||
|
|
yqbh = t.yqbh,
|
|||
|
|
xh = ++i
|
|||
|
|
|
|||
|
|
};
|
|||
|
|
jg.shyy = username;
|
|||
|
|
if (xm != null)
|
|||
|
|
{
|
|||
|
|
jg.ckss = t_xm.cksx;
|
|||
|
|
jg.ckxx = t_xm.ckxx;
|
|||
|
|
jg.dw = t_xm.dw;
|
|||
|
|
jg.xmmc = t_xm.xmmc;
|
|||
|
|
if (t.yqbh != "BW500" && t.yqbh != "UT500")
|
|||
|
|
{
|
|||
|
|
try
|
|||
|
|
{
|
|||
|
|
double value = Convert.ToDouble(t.jg);
|
|||
|
|
double cksx = Convert.ToDouble(t_xm.cksx);
|
|||
|
|
double ckxx = Convert.ToDouble(t_xm.ckxx);
|
|||
|
|
if (value > cksx)
|
|||
|
|
{
|
|||
|
|
jg.flag = "2";
|
|||
|
|
}
|
|||
|
|
if (value < ckxx)
|
|||
|
|
{
|
|||
|
|
jg.flag = "2";
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
catch
|
|||
|
|
{
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
var seljy_sqd_jgs = db.jy_sqd_jgs.FirstOrDefault(v => v.jytm == jg.jytm && v.yqbh == jg.yqbh && v.bbh == jg.bbh && v.xmbm == jg.xmbm);
|
|||
|
|
if (seljy_sqd_jgs == null)
|
|||
|
|
{
|
|||
|
|
db.jy_sqd_jgs.Insert(jg);
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
db.jy_sqd_jgs.Update(jg);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
sqdjg.Add(jg);
|
|||
|
|
});
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
catch (Exception ex)
|
|||
|
|
{
|
|||
|
|
tran.Rollback();
|
|||
|
|
or.State = 0;
|
|||
|
|
or.Message = ex.Message + ex.StackTrace;
|
|||
|
|
return or;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
//if (or.State == 0)
|
|||
|
|
//{
|
|||
|
|
// return or;
|
|||
|
|
//}
|
|||
|
|
|
|||
|
|
//获取申请单的明细数据
|
|||
|
|
var sqdxms = db.jy_sqd_mxs.Where(t => t.jytm == yhxx.jytm).ToList();
|
|||
|
|
var t_djxm = db.t_tempdjxms.Where(t => t.tm == yhxx.tm).ToList();
|
|||
|
|
if (t_djxm.Count != 0)
|
|||
|
|
{
|
|||
|
|
t_djxm = t_djxm.Where(t => sqdxms.Where(s => s.zhxmbm == t.zhbm).Any()).ToList();
|
|||
|
|
tran = db.CreateTransaction();
|
|||
|
|
var tjjd = new t_tjjd();
|
|||
|
|
t_djxm.ForEach(t =>
|
|||
|
|
{
|
|||
|
|
var jcxms = db.t_zhxmmxs.Where(z => z.zhbm == t.zhbm).Join(db.t_jcxms, z => z.xmbm, p => p.jcxmbm, (z, p) => p).ToList();
|
|||
|
|
tjjd.czy = username;
|
|||
|
|
tjjd.ksbm = (short)t.ksbm;
|
|||
|
|
tjjd.tm = t.tm;
|
|||
|
|
tjjd.zdys = xm;
|
|||
|
|
tjjd.djsj = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
|
|||
|
|
tjjd.upflag = 0;
|
|||
|
|
|
|||
|
|
var tjjgs = sqdjg.Join(jcxms, j => j.xmbm, p => p.lis, (j, p) => new { cksx = p.cksx1, ckxx = p.ckxx1, xmbm = p.jcxmbm, jg = j.jg, dw = p.dw, lx = p.lx, jcxm = p.jcxmmc }).ToList();
|
|||
|
|
tjjgs.ForEach(j =>
|
|||
|
|
{
|
|||
|
|
double c;
|
|||
|
|
var tjjg = new t_tjjg();
|
|||
|
|
if (double.TryParse(j.jg.Trim(), out c))
|
|||
|
|
{
|
|||
|
|
|
|||
|
|
if (yqh == "BW500")
|
|||
|
|
{
|
|||
|
|
tjjg.jg = Convert.ToDouble(j.jg).ToString("f4").ToString();
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
if (j.jg.Trim().Equals("+1") || j.jg.Trim().Equals("+2") || j.jg.Trim().Equals("+3"))
|
|||
|
|
{
|
|||
|
|
tjjg.jg = j.jg.Trim();
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
tjjg.jg = Convert.ToDouble(j.jg).ToString("0.00").ToString();
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
/*if (isNumeric(j.jg.Trim()))
|
|||
|
|
{
|
|||
|
|
tjjg.jg = Convert.ToDouble(j.jg.Trim()).ToString("0.00").ToString();
|
|||
|
|
}*/
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
tjjg.jg = j.jg.Trim();
|
|||
|
|
}
|
|||
|
|
if (j.cksx.ToString().Length > 0)
|
|||
|
|
{
|
|||
|
|
tjjg.cksx = j.cksx.ToString();
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
tjjg.cksx = "";
|
|||
|
|
}
|
|||
|
|
if (j.ckxx.ToString().Length > 0)
|
|||
|
|
{
|
|||
|
|
tjjg.ckxx = j.ckxx.ToString();
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
tjjg.ckxx = "";
|
|||
|
|
}
|
|||
|
|
tjjg.lx = j.lx;
|
|||
|
|
tjjg.czy = username;
|
|||
|
|
tjjg.xmbm = j.xmbm;
|
|||
|
|
tjjg.dw = j.dw;
|
|||
|
|
if (j.lx == 0)
|
|||
|
|
{
|
|||
|
|
if (j.jg.Trim() == "+")
|
|||
|
|
{
|
|||
|
|
tjjd.zdjg += j.jcxm + "阳性\r\n";
|
|||
|
|
}
|
|||
|
|
else if (j.jg.Trim() == "+-")
|
|||
|
|
{
|
|||
|
|
tjjd.zdjg += j.jcxm + "弱阳\r\n";
|
|||
|
|
}
|
|||
|
|
else if (j.jg.Trim() == "1+")
|
|||
|
|
{
|
|||
|
|
tjjd.zdjg += j.jcxm + "+\r\n";
|
|||
|
|
}
|
|||
|
|
else if (j.jg.Trim() == "+1")
|
|||
|
|
{
|
|||
|
|
tjjd.zdjg += j.jcxm + "+\r\n";
|
|||
|
|
}
|
|||
|
|
else if (j.jg.Trim() == "+2")
|
|||
|
|
{
|
|||
|
|
tjjd.zdjg += j.jcxm + "++\r\n";
|
|||
|
|
}
|
|||
|
|
else if (j.jg.Trim() == "+3")
|
|||
|
|
{
|
|||
|
|
tjjd.zdjg += j.jcxm + "+++\r\n";
|
|||
|
|
}
|
|||
|
|
else if (j.jg.Trim() == "2+")
|
|||
|
|
{
|
|||
|
|
tjjd.zdjg += j.jcxm + "++\r\n";
|
|||
|
|
}
|
|||
|
|
else if (j.jg.Trim() == "3+")
|
|||
|
|
{
|
|||
|
|
tjjd.zdjg += j.jcxm + "+++\r\n";
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
double tjg = 0;
|
|||
|
|
if (isNumeric(j.jg))
|
|||
|
|
{
|
|||
|
|
if (double.TryParse(j.jg, out tjg))
|
|||
|
|
{
|
|||
|
|
if (tjg < j.ckxx)
|
|||
|
|
{
|
|||
|
|
//tjjd.zdjg += j.jcxm + "偏低" + ":" + Convert.ToDouble(j.jg).ToString("0.00").ToString() + " (正常值" + j.ckxx + "-" + j.cksx + " " + j.dw + ")\r\n";
|
|||
|
|
tjjd.zdjg += j.jcxm + "偏低\r\n";
|
|||
|
|
//tjjd.zdjg += j.jcxm + " 偏低 " + j.jg+j.dw;
|
|||
|
|
}
|
|||
|
|
else if (tjg > j.cksx)
|
|||
|
|
{
|
|||
|
|
//tjjd.zdjg += j.jcxm + "偏高" + ":" + Convert.ToDouble(j.jg).ToString("0.00").ToString() + " (正常值" + j.ckxx + "-" + j.cksx + " " + j.dw + ")\r\n";
|
|||
|
|
tjjd.zdjg += j.jcxm + "偏高\r\n";
|
|||
|
|
//tjjd.zdjg += j.jcxm + " 偏高 " + j.jg+j.dw;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
tjjg.upflag = 0;
|
|||
|
|
tjjg.tm = t.tm;
|
|||
|
|
var seltjjg = db.t_tjjgs.FirstOrDefault(x => x.tm == t.tm && x.xmbm == j.xmbm);
|
|||
|
|
if (seltjjg == null)
|
|||
|
|
{
|
|||
|
|
db.t_tjjgs.Insert(tjjg);
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
db.t_tjjgs.Update(tjjg);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
});
|
|||
|
|
|
|||
|
|
|
|||
|
|
});
|
|||
|
|
if (string.IsNullOrEmpty(tjjd.zdjg))
|
|||
|
|
{
|
|||
|
|
tjjd.zdjg = "未见异常";
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
var seltjjd = db.t_tjjds.FirstOrDefault(y => y.tm == tjjd.tm && y.ksbm == tjjd.ksbm);
|
|||
|
|
if (seltjjd == null)
|
|||
|
|
{
|
|||
|
|
db.t_tjjds.Insert(tjjd);
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
var seltjjd1 = db.t_tjjds.FirstOrDefault(y => y.tm == tjjd.tm && y.ksbm == tjjd.ksbm);
|
|||
|
|
if (seltjjd1.zdjg != "未见异常")
|
|||
|
|
{
|
|||
|
|
if (tjjd.zdjg == "未见异常")
|
|||
|
|
{
|
|||
|
|
tjjd.zdjg = seltjjd1.zdjg;
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
tjjd.zdjg = seltjjd1.zdjg + "\r\n" + tjjd.zdjg;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
db.t_tjjds.Update(tjjd);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
tran.Commit();
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
catch (Exception ex1)
|
|||
|
|
{
|
|||
|
|
tran.Rollback();
|
|||
|
|
or.State = 0;
|
|||
|
|
or.Message = ex1.Message + ex1.StackTrace;
|
|||
|
|
return or;
|
|||
|
|
}
|
|||
|
|
or.State = 1;
|
|||
|
|
or.Message = "上传成功!";
|
|||
|
|
return or;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public OperationResult shenhe2(String listm, String yqh, string xm, string username, short yydm)
|
|||
|
|
{
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
DbTransaction tran = db.CreateTransaction();
|
|||
|
|
OperationResult or = new OperationResult();
|
|||
|
|
try
|
|||
|
|
{
|
|||
|
|
int xb = 0;
|
|||
|
|
//获取LIS用户数据
|
|||
|
|
var yhxx = db.jy_yhxxs.FirstOrDefault(t => t.jytm == listm);
|
|||
|
|
if (yhxx == null)
|
|||
|
|
{
|
|||
|
|
or.State = 0;
|
|||
|
|
or.Message = "没有找到当前条码的用户信息!";
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if (!string.IsNullOrEmpty(yhxx.xb))
|
|||
|
|
{
|
|||
|
|
if ("女".Equals(yhxx.xb))
|
|||
|
|
{
|
|||
|
|
xb = 1;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
#region 判断是否全部结果已经做完
|
|||
|
|
//取这个人的原始数据
|
|||
|
|
var yssjs = db.jy_yssjs.Where(t => t.jyrq == yhxx.jyrq && t.yqbh == yhxx.yqbh && t.bbh == yhxx.bbh).ToList();
|
|||
|
|
|
|||
|
|
if (yqh != "BW500" && yqh != "UT500" && yydm != 1 && yqh != "AU680")
|
|||
|
|
{
|
|||
|
|
//取这个人要做的数据
|
|||
|
|
string sql = @"select * from t_jcxm where jcxmbm in (select xmbm from t_zhxmmx where zhbm in (
|
|||
|
|
select zhxmbm from jy_sqd_mx where jytm = '" + listm + "'))";
|
|||
|
|
|
|||
|
|
DataTable dt = db.DataAccessor.QueryDataTable(sql);
|
|||
|
|
|
|||
|
|
for (int d = dt.Rows.Count - 1; d >= 0; d--)
|
|||
|
|
{
|
|||
|
|
//if (dt.Rows[d].RowState == DataRowState.Deleted)
|
|||
|
|
//{
|
|||
|
|
// continue;
|
|||
|
|
//}
|
|||
|
|
yssjs.ForEach(y =>
|
|||
|
|
{
|
|||
|
|
if (dt.Rows[d].RowState != DataRowState.Deleted)
|
|||
|
|
{
|
|||
|
|
if (y.xmbm == dt.Rows[d]["lis"].ToString() && !string.IsNullOrEmpty(y.jg))
|
|||
|
|
{
|
|||
|
|
dt.Rows[d].Delete();
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
});
|
|||
|
|
}
|
|||
|
|
dt.AcceptChanges();
|
|||
|
|
|
|||
|
|
if (dt.Rows.Count > 0)
|
|||
|
|
{
|
|||
|
|
string kxmstr = "";
|
|||
|
|
foreach (DataRow dr in dt.Rows)
|
|||
|
|
{
|
|||
|
|
kxmstr += dr["jcxmmc"].ToString() + ",";
|
|||
|
|
}
|
|||
|
|
//kxmstr = kxmstr + "项目结果未完成,无法上传数据。";
|
|||
|
|
kxmstr = "标本号:" + yhxx.bbh + " 姓名:" + yhxx.xm + " 【" + kxmstr + "】项目结果未完成,无法上传数据。";
|
|||
|
|
or.State = 0;
|
|||
|
|
or.Message = kxmstr;
|
|||
|
|
return or;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
#endregion
|
|||
|
|
|
|||
|
|
yhxx.state = 1;
|
|||
|
|
yhxx.shyy = username;
|
|||
|
|
yhxx.shsj = DateTime.Now;
|
|||
|
|
db.jy_yhxxs.Update(yhxx);
|
|||
|
|
|
|||
|
|
//取仪器可以做的项目
|
|||
|
|
if (xb == 0)
|
|||
|
|
{
|
|||
|
|
var yqxms = db.jy_yiqi_xms.Where(t => t.yq == yhxx.yqbh).Select(t => new { jyxm = t.xmdm, cksx = t.cksx, ckxx = t.ckxx, dw = t.dw, xmmc = t.xmmc }).ToList();
|
|||
|
|
var yqjsxm = db.jy_yiqi_xm_calcs.Where(t => t.yq == yhxx.yqbh).Select(t => new { jyxm = t.jsxm, cksx = t.cksx, ckxx = t.ckxx, dw = t.dw, xmmc = t.xmmc }).ToList();
|
|||
|
|
yqxms = yqxms.Concat(yqjsxm).ToList();
|
|||
|
|
|
|||
|
|
//把原始数据存入sqd_jg
|
|||
|
|
int i = 0;
|
|||
|
|
List<jy_sqd_jg> sqdjg = new List<jy_sqd_jg>();
|
|||
|
|
try
|
|||
|
|
{
|
|||
|
|
|
|||
|
|
yssjs.ForEach(t =>
|
|||
|
|
{
|
|||
|
|
if (t.jg == "")
|
|||
|
|
{
|
|||
|
|
tran.Rollback();
|
|||
|
|
or.State = 0;
|
|||
|
|
or.Message = "检验条码:" + yhxx.jytm + "\r\n" + "标本号:" + yhxx.bbh.ToString() + "\r\n" + "检验项目:" + t.xmbm + "\r\n" + "结果为空,上传失败!";
|
|||
|
|
return;
|
|||
|
|
}
|
|||
|
|
var t_xm = yqxms.FirstOrDefault(x => x.jyxm == t.xmbm);
|
|||
|
|
jy_sqd_jg jg = new jy_sqd_jg
|
|||
|
|
{
|
|||
|
|
bbh = yhxx.bbh.ToString(),
|
|||
|
|
bgrq = t.jyrq,
|
|||
|
|
bgsj = DateTime.Now,
|
|||
|
|
bgys = yhxx.jyys,
|
|||
|
|
shsj = DateTime.Now,
|
|||
|
|
gxsj = DateTime.Now,
|
|||
|
|
flag = "1",
|
|||
|
|
jg = t.jg,
|
|||
|
|
jytm = yhxx.jytm,
|
|||
|
|
state = 1,
|
|||
|
|
xmbm = t.xmbm,
|
|||
|
|
yqbh = t.yqbh,
|
|||
|
|
xh = ++i
|
|||
|
|
|
|||
|
|
};
|
|||
|
|
jg.shyy = username;
|
|||
|
|
if (xm != null)
|
|||
|
|
{
|
|||
|
|
jg.ckss = t_xm.cksx;
|
|||
|
|
jg.ckxx = t_xm.ckxx;
|
|||
|
|
jg.dw = t_xm.dw;
|
|||
|
|
jg.xmmc = t_xm.xmmc;
|
|||
|
|
if (t.yqbh != "BW500")
|
|||
|
|
{
|
|||
|
|
double value = Convert.ToDouble(t.jg);
|
|||
|
|
double cksx = Convert.ToDouble(t_xm.cksx);
|
|||
|
|
double ckxx = Convert.ToDouble(t_xm.ckxx);
|
|||
|
|
if (value > cksx)
|
|||
|
|
{
|
|||
|
|
jg.flag = "2";
|
|||
|
|
}
|
|||
|
|
if (value < ckxx)
|
|||
|
|
{
|
|||
|
|
jg.flag = "2";
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
var seljy_sqd_jgs = db.jy_sqd_jgs.FirstOrDefault(v => v.jytm == jg.jytm && v.yqbh == jg.yqbh && v.bbh == jg.bbh && v.xmbm == jg.xmbm);
|
|||
|
|
if (seljy_sqd_jgs == null)
|
|||
|
|
{
|
|||
|
|
db.jy_sqd_jgs.Insert(jg);
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
db.jy_sqd_jgs.Update(jg);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
sqdjg.Add(jg);
|
|||
|
|
});
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
catch (Exception ex)
|
|||
|
|
{
|
|||
|
|
tran.Rollback();
|
|||
|
|
or.State = 0;
|
|||
|
|
or.Message = ex.Message;
|
|||
|
|
return or;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
//if (or.State == 0)
|
|||
|
|
//{
|
|||
|
|
// return or;
|
|||
|
|
//}
|
|||
|
|
|
|||
|
|
//获取申请单的明细数据
|
|||
|
|
var sqdxms = db.jy_sqd_mxs.Where(t => t.jytm == yhxx.jytm).ToList();
|
|||
|
|
var t_djxm = db.t_tempdjxms.Where(t => t.tm == yhxx.tm).ToList();
|
|||
|
|
if (t_djxm.Count != 0)
|
|||
|
|
{
|
|||
|
|
t_djxm = t_djxm.Where(t => sqdxms.Where(s => s.zhxmbm == t.zhbm).Any()).ToList();
|
|||
|
|
tran = db.CreateTransaction();
|
|||
|
|
var tjjd = new t_tjjd();
|
|||
|
|
t_djxm.ForEach(t =>
|
|||
|
|
{
|
|||
|
|
var jcxms = db.t_zhxmmxs.Where(z => z.zhbm == t.zhbm).Join(db.t_jcxms, z => z.xmbm, p => p.jcxmbm, (z, p) => p).ToList();
|
|||
|
|
tjjd.czy = username;
|
|||
|
|
tjjd.ksbm = (short)t.ksbm;
|
|||
|
|
tjjd.tm = t.tm;
|
|||
|
|
tjjd.zdys = xm;
|
|||
|
|
tjjd.djsj = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
|
|||
|
|
tjjd.upflag = 0;
|
|||
|
|
var tjjgs = sqdjg.Join(jcxms, j => j.xmbm, p => p.lis, (j, p) => new { cksx = p.cksx, ckxx = p.ckxx, xmbm = p.jcxmbm, jg = j.jg, dw = p.dw, lx = p.lx, jcxm = p.jcxmmc }).ToList();
|
|||
|
|
tjjgs.ForEach(j =>
|
|||
|
|
{
|
|||
|
|
double c;
|
|||
|
|
var tjjg = new t_tjjg();
|
|||
|
|
if (double.TryParse(j.jg, out c))
|
|||
|
|
{
|
|||
|
|
if (yqh == "BW500")
|
|||
|
|
{
|
|||
|
|
tjjg.jg = Convert.ToDouble(j.jg).ToString("f4").ToString();
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
tjjg.jg = Convert.ToDouble(j.jg).ToString("0.00").ToString();
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
tjjg.jg = j.jg;
|
|||
|
|
}
|
|||
|
|
if (j.cksx.ToString().Length > 0)
|
|||
|
|
{
|
|||
|
|
tjjg.cksx = j.cksx.ToString();
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
tjjg.cksx = "";
|
|||
|
|
}
|
|||
|
|
if (j.ckxx.ToString().Length > 0)
|
|||
|
|
{
|
|||
|
|
tjjg.ckxx = j.ckxx.ToString();
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
tjjg.ckxx = "";
|
|||
|
|
}
|
|||
|
|
tjjg.lx = j.lx;
|
|||
|
|
tjjg.czy = username;
|
|||
|
|
tjjg.xmbm = j.xmbm;
|
|||
|
|
tjjg.dw = j.dw;
|
|||
|
|
if (j.lx == 0)
|
|||
|
|
{
|
|||
|
|
if (j.jg == "+")
|
|||
|
|
{
|
|||
|
|
tjjd.zdjg += j.jcxm + "阳性\r\n";
|
|||
|
|
}
|
|||
|
|
else if (j.jg == "+-")
|
|||
|
|
{
|
|||
|
|
tjjd.zdjg += j.jcxm + "弱阳\r\n";
|
|||
|
|
}
|
|||
|
|
else if (j.jg == "1+")
|
|||
|
|
{
|
|||
|
|
tjjd.zdjg += j.jcxm + "+\r\n";
|
|||
|
|
}
|
|||
|
|
else if (j.jg == "2+")
|
|||
|
|
{
|
|||
|
|
tjjd.zdjg += j.jcxm + "++\r\n";
|
|||
|
|
}
|
|||
|
|
else if (j.jg == "3+")
|
|||
|
|
{
|
|||
|
|
tjjd.zdjg += j.jcxm + "+++\r\n";
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
double tjg = 0;
|
|||
|
|
double.TryParse(j.jg, out tjg);
|
|||
|
|
if (tjg < j.ckxx)
|
|||
|
|
{
|
|||
|
|
//tjjd.zdjg += j.jcxm + "偏低" + ":" + Convert.ToDouble(j.jg).ToString("0.00").ToString() + " (正常值" + j.ckxx + "-" + j.cksx + " " + j.dw + ")\r\n";
|
|||
|
|
tjjd.zdjg += j.jcxm + "偏低\r\n";
|
|||
|
|
//tjjd.zdjg += j.jcxm + " 偏低 " + j.jg+j.dw;
|
|||
|
|
}
|
|||
|
|
else if (tjg > j.cksx)
|
|||
|
|
{
|
|||
|
|
//tjjd.zdjg += j.jcxm + "偏高" + ":" + Convert.ToDouble(j.jg).ToString("0.00").ToString() + " (正常值" + j.ckxx + "-" + j.cksx + " " + j.dw + ")\r\n";
|
|||
|
|
tjjd.zdjg += j.jcxm + "偏高\r\n";
|
|||
|
|
//tjjd.zdjg += j.jcxm + " 偏高 " + j.jg+j.dw;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
tjjg.upflag = 0;
|
|||
|
|
tjjg.tm = t.tm;
|
|||
|
|
var seltjjg = db.t_tjjgs.FirstOrDefault(x => x.tm == t.tm && x.xmbm == j.xmbm);
|
|||
|
|
if (seltjjg == null)
|
|||
|
|
{
|
|||
|
|
db.t_tjjgs.Insert(tjjg);
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
db.t_tjjgs.Update(tjjg);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
});
|
|||
|
|
|
|||
|
|
|
|||
|
|
});
|
|||
|
|
if (string.IsNullOrEmpty(tjjd.zdjg))
|
|||
|
|
{
|
|||
|
|
tjjd.zdjg = "未见异常";
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
var seltjjd = db.t_tjjds.FirstOrDefault(y => y.tm == tjjd.tm && y.ksbm == tjjd.ksbm);
|
|||
|
|
if (seltjjd == null)
|
|||
|
|
{
|
|||
|
|
db.t_tjjds.Insert(tjjd);
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
var seltjjd1 = db.t_tjjds.FirstOrDefault(y => y.tm == tjjd.tm && y.ksbm == tjjd.ksbm);
|
|||
|
|
if (seltjjd1.zdjg != "未见异常")
|
|||
|
|
{
|
|||
|
|
if (tjjd.zdjg == "未见异常")
|
|||
|
|
{
|
|||
|
|
tjjd.zdjg = seltjjd1.zdjg;
|
|||
|
|
}
|
|||
|
|
//else
|
|||
|
|
//{
|
|||
|
|
// tjjd.zdjg = seltjjd1.zdjg + "\r\n" + tjjd.zdjg;
|
|||
|
|
//}
|
|||
|
|
}
|
|||
|
|
db.t_tjjds.Update(tjjd);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
tran.Commit();
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
var yqxms = db.jy_yiqi_xms.Where(t => t.yq == yhxx.yqbh).Select(t => new { jyxm = t.xmdm, cksx = t.cksx1, ckxx = t.ckxx1, dw = t.dw, xmmc = t.xmmc }).ToList();
|
|||
|
|
var yqjsxm = db.jy_yiqi_xm_calcs.Where(t => t.yq == yhxx.yqbh).Select(t => new { jyxm = t.jsxm, cksx = t.cksx1, ckxx = t.ckxx1, dw = t.dw, xmmc = t.xmmc }).ToList();
|
|||
|
|
yqxms = yqxms.Concat(yqjsxm).ToList();
|
|||
|
|
|
|||
|
|
//把原始数据存入sqd_jg
|
|||
|
|
int i = 0;
|
|||
|
|
List<jy_sqd_jg> sqdjg = new List<jy_sqd_jg>();
|
|||
|
|
try
|
|||
|
|
{
|
|||
|
|
|
|||
|
|
yssjs.ForEach(t =>
|
|||
|
|
{
|
|||
|
|
if (t.jg == "")
|
|||
|
|
{
|
|||
|
|
tran.Rollback();
|
|||
|
|
or.State = 0;
|
|||
|
|
or.Message = "检验条码:" + yhxx.jytm + "\r\n" + "标本号:" + yhxx.bbh.ToString() + "\r\n" + "检验项目:" + t.xmbm + "\r\n" + "结果为空,上传失败!";
|
|||
|
|
return;
|
|||
|
|
}
|
|||
|
|
var t_xm = yqxms.FirstOrDefault(x => x.jyxm == t.xmbm);
|
|||
|
|
jy_sqd_jg jg = new jy_sqd_jg
|
|||
|
|
{
|
|||
|
|
bbh = yhxx.bbh.ToString(),
|
|||
|
|
bgrq = t.jyrq,
|
|||
|
|
bgsj = DateTime.Now,
|
|||
|
|
bgys = yhxx.jyys,
|
|||
|
|
shsj = DateTime.Now,
|
|||
|
|
gxsj = DateTime.Now,
|
|||
|
|
flag = "1",
|
|||
|
|
jg = t.jg,
|
|||
|
|
jytm = yhxx.jytm,
|
|||
|
|
state = 1,
|
|||
|
|
xmbm = t.xmbm,
|
|||
|
|
yqbh = t.yqbh,
|
|||
|
|
xh = ++i
|
|||
|
|
|
|||
|
|
};
|
|||
|
|
jg.shyy = username;
|
|||
|
|
if (xm != null)
|
|||
|
|
{
|
|||
|
|
jg.ckss = t_xm.cksx;
|
|||
|
|
jg.ckxx = t_xm.ckxx;
|
|||
|
|
jg.dw = t_xm.dw;
|
|||
|
|
jg.xmmc = t_xm.xmmc;
|
|||
|
|
if (t.yqbh != "BW500")
|
|||
|
|
{
|
|||
|
|
double value = Convert.ToDouble(t.jg);
|
|||
|
|
double cksx = Convert.ToDouble(t_xm.cksx);
|
|||
|
|
double ckxx = Convert.ToDouble(t_xm.ckxx);
|
|||
|
|
if (value > cksx)
|
|||
|
|
{
|
|||
|
|
jg.flag = "2";
|
|||
|
|
}
|
|||
|
|
if (value < ckxx)
|
|||
|
|
{
|
|||
|
|
jg.flag = "2";
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
var seljy_sqd_jgs = db.jy_sqd_jgs.FirstOrDefault(v => v.jytm == jg.jytm && v.yqbh == jg.yqbh && v.bbh == jg.bbh && v.xmbm == jg.xmbm);
|
|||
|
|
if (seljy_sqd_jgs == null)
|
|||
|
|
{
|
|||
|
|
db.jy_sqd_jgs.Insert(jg);
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
db.jy_sqd_jgs.Update(jg);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
sqdjg.Add(jg);
|
|||
|
|
});
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
catch (Exception ex)
|
|||
|
|
{
|
|||
|
|
tran.Rollback();
|
|||
|
|
or.State = 0;
|
|||
|
|
or.Message = ex.Message;
|
|||
|
|
return or;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
//if (or.State == 0)
|
|||
|
|
//{
|
|||
|
|
// return or;
|
|||
|
|
//}
|
|||
|
|
|
|||
|
|
//获取申请单的明细数据
|
|||
|
|
var sqdxms = db.jy_sqd_mxs.Where(t => t.jytm == yhxx.jytm).ToList();
|
|||
|
|
var t_djxm = db.t_tempdjxms.Where(t => t.tm == yhxx.tm).ToList();
|
|||
|
|
if (t_djxm.Count != 0)
|
|||
|
|
{
|
|||
|
|
t_djxm = t_djxm.Where(t => sqdxms.Where(s => s.zhxmbm == t.zhbm).Any()).ToList();
|
|||
|
|
tran = db.CreateTransaction();
|
|||
|
|
var tjjd = new t_tjjd();
|
|||
|
|
t_djxm.ForEach(t =>
|
|||
|
|
{
|
|||
|
|
var jcxms = db.t_zhxmmxs.Where(z => z.zhbm == t.zhbm).Join(db.t_jcxms, z => z.xmbm, p => p.jcxmbm, (z, p) => p).ToList();
|
|||
|
|
tjjd.czy = username;
|
|||
|
|
tjjd.ksbm = (short)t.ksbm;
|
|||
|
|
tjjd.tm = t.tm;
|
|||
|
|
tjjd.zdys = xm;
|
|||
|
|
tjjd.djsj = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
|
|||
|
|
tjjd.upflag = 0;
|
|||
|
|
var tjjgs = sqdjg.Join(jcxms, j => j.xmbm, p => p.lis, (j, p) => new { cksx = p.cksx1, ckxx = p.ckxx1, xmbm = p.jcxmbm, jg = j.jg, dw = p.dw, lx = p.lx, jcxm = p.jcxmmc }).ToList();
|
|||
|
|
tjjgs.ForEach(j =>
|
|||
|
|
{
|
|||
|
|
double c;
|
|||
|
|
var tjjg = new t_tjjg();
|
|||
|
|
if (double.TryParse(j.jg, out c))
|
|||
|
|
{
|
|||
|
|
if (yqh == "BW500")
|
|||
|
|
{
|
|||
|
|
tjjg.jg = Convert.ToDouble(j.jg).ToString("f4").ToString();
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
tjjg.jg = Convert.ToDouble(j.jg).ToString("0.00").ToString();
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
tjjg.jg = j.jg;
|
|||
|
|
}
|
|||
|
|
if (j.cksx.ToString().Length > 0)
|
|||
|
|
{
|
|||
|
|
tjjg.cksx = j.cksx.ToString();
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
tjjg.cksx = "";
|
|||
|
|
}
|
|||
|
|
if (j.ckxx.ToString().Length > 0)
|
|||
|
|
{
|
|||
|
|
tjjg.ckxx = j.ckxx.ToString();
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
tjjg.ckxx = "";
|
|||
|
|
}
|
|||
|
|
tjjg.lx = j.lx;
|
|||
|
|
tjjg.czy = username;
|
|||
|
|
tjjg.xmbm = j.xmbm;
|
|||
|
|
tjjg.dw = j.dw;
|
|||
|
|
if (j.lx == 0)
|
|||
|
|
{
|
|||
|
|
if (j.jg == "+")
|
|||
|
|
{
|
|||
|
|
tjjd.zdjg += j.jcxm + "阳性\r\n";
|
|||
|
|
}
|
|||
|
|
else if (j.jg == "+-")
|
|||
|
|
{
|
|||
|
|
tjjd.zdjg += j.jcxm + "弱阳\r\n";
|
|||
|
|
}
|
|||
|
|
else if (j.jg == "1+")
|
|||
|
|
{
|
|||
|
|
tjjd.zdjg += j.jcxm + "+\r\n";
|
|||
|
|
}
|
|||
|
|
else if (j.jg == "2+")
|
|||
|
|
{
|
|||
|
|
tjjd.zdjg += j.jcxm + "++\r\n";
|
|||
|
|
}
|
|||
|
|
else if (j.jg == "3+")
|
|||
|
|
{
|
|||
|
|
tjjd.zdjg += j.jcxm + "+++\r\n";
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
double tjg = 0;
|
|||
|
|
double.TryParse(j.jg, out tjg);
|
|||
|
|
if (tjg < j.ckxx)
|
|||
|
|
{
|
|||
|
|
//tjjd.zdjg += j.jcxm + "偏低" + ":" + Convert.ToDouble(j.jg).ToString("0.00").ToString() + " (正常值" + j.ckxx + "-" + j.cksx + " " + j.dw + ")\r\n";
|
|||
|
|
tjjd.zdjg += j.jcxm + "偏低\r\n";
|
|||
|
|
//tjjd.zdjg += j.jcxm + " 偏低 " + j.jg+j.dw;
|
|||
|
|
}
|
|||
|
|
else if (tjg > j.cksx)
|
|||
|
|
{
|
|||
|
|
//tjjd.zdjg += j.jcxm + "偏高" + ":" + Convert.ToDouble(j.jg).ToString("0.00").ToString() + " (正常值" + j.ckxx + "-" + j.cksx + " " + j.dw + ")\r\n";
|
|||
|
|
tjjd.zdjg += j.jcxm + "偏高\r\n";
|
|||
|
|
//tjjd.zdjg += j.jcxm + " 偏高 " + j.jg+j.dw;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
tjjg.upflag = 0;
|
|||
|
|
tjjg.tm = t.tm;
|
|||
|
|
var seltjjg = db.t_tjjgs.FirstOrDefault(x => x.tm == t.tm && x.xmbm == j.xmbm);
|
|||
|
|
if (seltjjg == null)
|
|||
|
|
{
|
|||
|
|
db.t_tjjgs.Insert(tjjg);
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
db.t_tjjgs.Update(tjjg);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
});
|
|||
|
|
|
|||
|
|
|
|||
|
|
});
|
|||
|
|
if (string.IsNullOrEmpty(tjjd.zdjg))
|
|||
|
|
{
|
|||
|
|
tjjd.zdjg = "未见异常";
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
var seltjjd = db.t_tjjds.FirstOrDefault(y => y.tm == tjjd.tm && y.ksbm == tjjd.ksbm);
|
|||
|
|
if (seltjjd == null)
|
|||
|
|
{
|
|||
|
|
db.t_tjjds.Insert(tjjd);
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
var seltjjd1 = db.t_tjjds.FirstOrDefault(y => y.tm == tjjd.tm && y.ksbm == tjjd.ksbm);
|
|||
|
|
if (seltjjd1.zdjg != "未见异常")
|
|||
|
|
{
|
|||
|
|
if (tjjd.zdjg == "未见异常")
|
|||
|
|
{
|
|||
|
|
tjjd.zdjg = seltjjd1.zdjg;
|
|||
|
|
}
|
|||
|
|
//else
|
|||
|
|
//{
|
|||
|
|
// tjjd.zdjg = seltjjd1.zdjg + "\r\n" + tjjd.zdjg;
|
|||
|
|
//}
|
|||
|
|
}
|
|||
|
|
db.t_tjjds.Update(tjjd);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
tran.Commit();
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
catch (Exception ex1)
|
|||
|
|
{
|
|||
|
|
tran.Rollback();
|
|||
|
|
or.State = 0;
|
|||
|
|
or.Message = ex1.Message;
|
|||
|
|
return or;
|
|||
|
|
}
|
|||
|
|
or.State = 1;
|
|||
|
|
or.Message = "上传成功!";
|
|||
|
|
return or;
|
|||
|
|
|
|||
|
|
#region 注释BB原来代码实在是没法看呀!!!!郑志强2015-9-20
|
|||
|
|
|
|||
|
|
|
|||
|
|
/*
|
|||
|
|
var info = db.jy_yhxxs.Where(t => t.jytm.Equals(listm));
|
|||
|
|
if (info.Any())
|
|||
|
|
{
|
|||
|
|
var oneInfo = info.First();
|
|||
|
|
oneInfo.state = 1;
|
|||
|
|
db.jy_yhxxs.Update(oneInfo);
|
|||
|
|
List<String> xmdms = db.jy_yiqi_xms.Where(t => t.yq.Equals(yqh)).Select(t => t.xmdm).ToList<String>();
|
|||
|
|
List<String> jsxms = db.jy_yiqi_xm_calcs.Where(t => t.yq.Equals(yqh)).Select(t => t.jsxm).ToList<String>();
|
|||
|
|
xmdms.AddRange(jsxms);
|
|||
|
|
var yssjs = db.jy_yssjs.Where(t => t.yqbh.Equals(yqh) && t.bbh == oneInfo.bbh && t.jyrq == oneInfo.jyrq && xmdms.Contains(t.xmbm)).ToList();
|
|||
|
|
var yqxms = db.jy_yiqi_xms.Where(t => t.yq.Equals(yqh)).Select(t => new
|
|||
|
|
{
|
|||
|
|
yq = t.yq,
|
|||
|
|
xm = t.xmdm,
|
|||
|
|
cksx = t.cksx,
|
|||
|
|
ckxx = t.ckxx,
|
|||
|
|
dw = t.dw
|
|||
|
|
}).ToList().Union(db.jy_yiqi_xm_calcs.Where(t => t.yq.Equals(yqh)).Select(t => new
|
|||
|
|
{
|
|||
|
|
yq = t.yq,
|
|||
|
|
xm = t.jsxm,
|
|||
|
|
cksx = t.cksx,
|
|||
|
|
ckxx = t.ckxx,
|
|||
|
|
dw = t.dw
|
|||
|
|
}).ToList());
|
|||
|
|
DateTime nowDate = new DateTime();
|
|||
|
|
List<jy_sqd_jg> sqdjgs = yssjs.Join(yqxms, t => t.xmbm, p => p.xm, (t, p) => new { t, p }).Select(t => new jy_sqd_jg
|
|||
|
|
{
|
|||
|
|
jytm = listm,
|
|||
|
|
xh = 0,
|
|||
|
|
xmmc = "",
|
|||
|
|
xmbm = t.t.xmbm,
|
|||
|
|
jg = t.t.jg,
|
|||
|
|
flag = "1",
|
|||
|
|
dw = t.p.dw,
|
|||
|
|
ckss = t.p.cksx,
|
|||
|
|
ckxx = t.p.ckxx,
|
|||
|
|
yqbh = t.t.yqbh,
|
|||
|
|
bbh = t.t.bbh.ToString(),
|
|||
|
|
bgrq = t.t.jyrq,
|
|||
|
|
state = 1,
|
|||
|
|
gxsj = nowDate,
|
|||
|
|
shsj = nowDate,
|
|||
|
|
shyy = xm,
|
|||
|
|
bgsj = nowDate,
|
|||
|
|
bgys = oneInfo.jyys
|
|||
|
|
}).ToList<jy_sqd_jg>();
|
|||
|
|
List<int> kss = new List<int>();
|
|||
|
|
for (int i = 0; i < sqdjgs.Count; i++)
|
|||
|
|
{
|
|||
|
|
jy_sqd_mx sqdmx = db.jy_sqd_mxs.Where(t => t.jytm == listm).First();
|
|||
|
|
jy_sqd_jg sqdjg = sqdjgs[i];
|
|||
|
|
sqdjg.xmmc = sqdmx.zhxmmc;
|
|||
|
|
sqdjg.xh = i + 1;
|
|||
|
|
db.jy_sqd_jgs.Insert(sqdjg);
|
|||
|
|
t_tempdjxm tempdjxm = new t_tempdjxm();
|
|||
|
|
tempdjxm.tm = Convert.ToInt32(oneInfo.tm);
|
|||
|
|
t_jcxm jcxm = db.t_jcxms.Where(t => t.lis.Equals(sqdjg.xmbm)).First();
|
|||
|
|
int ksbm = db.t_zhxms.Where(t => t.zhbm == sqdmx.zhxmbm).Select(t => t.ksbm).First();
|
|||
|
|
if (kss.IndexOf(ksbm) == -1)
|
|||
|
|
{
|
|||
|
|
kss.Add(ksbm);
|
|||
|
|
}
|
|||
|
|
tempdjxm.zhbm = sqdmx.zhxmbm;
|
|||
|
|
tempdjxm.ztz = 4;
|
|||
|
|
tempdjxm.czy = username;
|
|||
|
|
tempdjxm.upflag = 1;
|
|||
|
|
tempdjxm.ksbm = ksbm;
|
|||
|
|
tempdjxm.operid = "";
|
|||
|
|
t_tempdjxmBll tempvs = new t_tempdjxmBll();
|
|||
|
|
OperationResult ortemp = tempvs.updateZtz(tempdjxm);
|
|||
|
|
if (ortemp.State == 1)
|
|||
|
|
{
|
|||
|
|
t_tjjg tjjg = new t_tjjg();
|
|||
|
|
tjjg.tm = oneInfo.tm;
|
|||
|
|
tjjg.xmbm = jcxm.jcxmbm;
|
|||
|
|
tjjg.jg = sqdjg.jg;
|
|||
|
|
tjjg.dw = jcxm.dw;
|
|||
|
|
tjjg.lx = 0;
|
|||
|
|
tjjg.cksx = jcxm.cksx.ToString("0.00");
|
|||
|
|
tjjg.ckxx = jcxm.ckxx.ToString("0.00");
|
|||
|
|
tjjg.cksx = tjjg.cksx.Equals("") ? "0" : tjjg.cksx;
|
|||
|
|
tjjg.ckxx = tjjg.ckxx.Equals("") ? "0" : tjjg.ckxx;
|
|||
|
|
tjjg.czy = username;
|
|||
|
|
t_tjjgBll vservice = new t_tjjgBll();
|
|||
|
|
vservice.Update(tjjg);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
for (int i = 0; i < kss.Count; i++)
|
|||
|
|
{
|
|||
|
|
List<short> zhztzs = db.t_tempdjxms.Where(t => t.tm == Convert.ToInt32(oneInfo.tm) && t.ksbm == kss[i]).Select(t => t.ztz).Distinct().ToList<short>();
|
|||
|
|
if (zhztzs.Count == 1 && zhztzs[0] == 4)
|
|||
|
|
{
|
|||
|
|
List<int> ksjcxms = db.t_zhxms.Where(t => t.ksbm == kss[i]).Join(db.t_zhxmmxs, t => t.zhbm, p => p.zhbm, (t, p) => new
|
|||
|
|
{
|
|||
|
|
bm = p.xmbm,
|
|||
|
|
}).Select(t => t.bm).ToList<int>();
|
|||
|
|
List<t_tjjg> tjjgs = db.t_tjjgs.Where(t => t.tm == Convert.ToInt32(oneInfo.tm) && ksjcxms.Contains(t.xmbm)).ToList<t_tjjg>();
|
|||
|
|
String alljg = "";
|
|||
|
|
for (int j = 0; j < tjjgs.Count; j++)
|
|||
|
|
{
|
|||
|
|
t_tjjg tjjg = tjjgs[i];
|
|||
|
|
if (tjjg.lx == 0)
|
|||
|
|
{
|
|||
|
|
String jcxmmc = db.t_jcxms.Where(t => t.jcxmbm == tjjg.xmbm).Select(t => t.jcxmmc).First();
|
|||
|
|
if (Convert.ToDouble(tjjg.jg) > Convert.ToDouble(tjjg.cksx))
|
|||
|
|
{
|
|||
|
|
alljg = alljg + jcxmmc + "偏高 " + tjjg.ckxx + "~" + tjjg.ckxx + Environment.NewLine;
|
|||
|
|
}
|
|||
|
|
else if (Convert.ToDouble(tjjg.jg) < Convert.ToDouble(tjjg.ckxx))
|
|||
|
|
{
|
|||
|
|
alljg = alljg + jcxmmc + "偏低 " + tjjg.ckxx + "~" + tjjg.ckxx + Environment.NewLine;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
t_tjjd tjjd = new t_tjjd();
|
|||
|
|
tjjd.tm = oneInfo.tm;
|
|||
|
|
tjjd.ksbm = Convert.ToInt16(kss[i]);
|
|||
|
|
tjjd.zdjg = alljg;
|
|||
|
|
tjjd.zdys = xm;
|
|||
|
|
tjjd.czy = username;
|
|||
|
|
t_tjjdBll tjjdbll = new t_tjjdBll();
|
|||
|
|
tjjdbll.Update(tjjd, true, yydm);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
catch (Exception ex)
|
|||
|
|
{
|
|||
|
|
or.State = 0;
|
|||
|
|
or.Message = ex.Message;
|
|||
|
|
return or;
|
|||
|
|
}
|
|||
|
|
or.State = 1;
|
|||
|
|
or.Message = "审核成功!";
|
|||
|
|
return or;
|
|||
|
|
*/
|
|||
|
|
#endregion
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public OperationResult delyhxx(string yqbm, DateTime jyrq, string bbh)
|
|||
|
|
{
|
|||
|
|
//throw new NotImplementedException();
|
|||
|
|
OperationResult or = new OperationResult();
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
int ibbh = 0;
|
|||
|
|
int.TryParse(bbh, out ibbh);
|
|||
|
|
if (db.jy_yssjs.Where(t => t.yqbh == yqbm && t.bbh == ibbh && t.jyrq == jyrq.Date).Any())
|
|||
|
|
{
|
|||
|
|
or.State = 0;
|
|||
|
|
or.Message = "你选的条码已经有回传信息不能删除!";
|
|||
|
|
return or;
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
db.jy_yhxxs.Delete(t => t.yqbh == yqbm && t.bbh == ibbh && t.jyrq == jyrq.Date);
|
|||
|
|
or.State = 1;
|
|||
|
|
or.Message = "删除成功!";
|
|||
|
|
return or;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public string getyiqijyxm(DateTime jyrq, string yqbh)
|
|||
|
|
{
|
|||
|
|
// throw new NotImplementedException();
|
|||
|
|
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
return Newtonsoft.Json.JsonConvert.SerializeObject(db.jy_yhxxs.Where(t => t.yqbh == yqbh && t.jyrq == jyrq).Join(db.jy_sqd_mxs, t => t.jytm, p => p.jytm, (t, p) => new { t.bbh, p.zhxmbm, p.zhxmmc }).ToList());
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
///
|
|||
|
|
/// </summary>
|
|||
|
|
/// <param name="cxrq"></param>
|
|||
|
|
/// <returns></returns>
|
|||
|
|
public string getCXTJ(DateTime cxrq)
|
|||
|
|
{
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
//var ttcx=db.t_ttgzbs.Join(db.)
|
|||
|
|
string tt = @"select tt.tm as tm ,tt.xm as xm ,sqd.jytm as jytm,xm.zhxmmc as zhxmmc ,sqd.cxsj as cxsj,isnull(yg.xm,'') as ygxm from t_ttgzb tt
|
|||
|
|
inner join jy_sqd sqd on tt.tm=sqd.tm
|
|||
|
|
inner join jy_sqd_mx xm on sqd.jytm=xm.jytm
|
|||
|
|
left join t_czygl czy on czy.czym=sqd.cxyy
|
|||
|
|
left join t_ygzd yg on czy.ygbm=yg.bm
|
|||
|
|
where (tt.tjrq>'" + cxrq.ToString("yyyy-MM-dd") + "' and tt.tjrq<'" + cxrq.AddDays(1).ToString("yyyy-MM-dd") + @"')
|
|||
|
|
or
|
|||
|
|
(sqd.cxsj>'" + cxrq.ToString("yyyy-MM-dd") + "' and sqd.cxsj<'" + cxrq.AddDays(1).ToString("yyyy-MM-dd") + @"')
|
|||
|
|
|
|||
|
|
union all
|
|||
|
|
select tt.tm as tm ,tt.xm as xm ,sqd.jytm as jytm,xm.zhxmmc as zhxmmc ,sqd.cxsj as cxsj,isnull(yg.xm,'') as ygxm from t_grgzb tt
|
|||
|
|
inner join jy_sqd sqd on tt.tm=sqd.tm
|
|||
|
|
inner join jy_sqd_mx xm on sqd.jytm=xm.jytm
|
|||
|
|
left join t_czygl czy on czy.czym=sqd.cxyy
|
|||
|
|
left join t_ygzd yg on czy.ygbm=yg.bm
|
|||
|
|
where (tt.tjrq>'" + cxrq.ToString("yyyy-MM-dd") + "' and tt.tjrq<'" + cxrq.AddDays(1).ToString("yyyy-MM-dd") + @"')
|
|||
|
|
or
|
|||
|
|
(sqd.cxsj>'" + cxrq.ToString("yyyy-MM-dd") + "' and sqd.cxsj<'" + cxrq.AddDays(1).ToString("yyyy-MM-dd") + @"')
|
|||
|
|
";
|
|||
|
|
DataSet ds = db.DataAccessor.QueryDataSet(tt);
|
|||
|
|
return Newtonsoft.Json.JsonConvert.SerializeObject(ds.Tables[0]);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public DataTable hqqcvalues(string strrq, string endrq, QC_Items qcitems)
|
|||
|
|
{
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
string tt = "select * from QC_Value where xmbm=" + qcitems.xmbm + " and QCOID=" + qcitems.QCOID + " and yqbh='" + qcitems.yqbh + "' and DataValue between '" + strrq + "' and '" + endrq + "'";
|
|||
|
|
DataSet ds = db.DataAccessor.QueryDataSet(tt);
|
|||
|
|
return ds.Tables[0];
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public OperationResult qcobject(QC_Object qco)
|
|||
|
|
{
|
|||
|
|
OperationResult or = new OperationResult();
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
try
|
|||
|
|
{
|
|||
|
|
//throw new NotImplementedException();
|
|||
|
|
if (qco.QCOID == 0)
|
|||
|
|
{
|
|||
|
|
var w = db.QC_Objects.FirstOrDefault(t => t.pch == qco.pch);
|
|||
|
|
if (w != null)
|
|||
|
|
{
|
|||
|
|
or.State = 2;
|
|||
|
|
or.Message = "批次号不能重复!";
|
|||
|
|
return or;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
qco.QCOID = new BLL.BasicBll().GetMax(qco.DbTableName, 1);
|
|||
|
|
db.QC_Objects.Insert(qco);
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
//var w = db.QC_Objects.FirstOrDefault(t => t.QCOID != qco.QCOID && t.pch == qco.pch);
|
|||
|
|
//if (w != null)
|
|||
|
|
//{
|
|||
|
|
// or.State = 3;
|
|||
|
|
// or.Message = "批次号名称不能重复!";
|
|||
|
|
// return or;
|
|||
|
|
//}
|
|||
|
|
db.QC_Objects.Update(qco);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
catch (Exception ex)
|
|||
|
|
{
|
|||
|
|
or.State = 0;
|
|||
|
|
or.Message = ex.Message;
|
|||
|
|
return or;
|
|||
|
|
}
|
|||
|
|
or.State = 1;
|
|||
|
|
or.Message = Newtonsoft.Json.JsonConvert.SerializeObject(qco);
|
|||
|
|
return or;
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public List<QC_Object> getQCObject(string yqbh)
|
|||
|
|
{
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
return db.QC_Objects.Where(t => t.yqbh == yqbh).OrderBy(t => t.QCOID).ToList();
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public List<QC_Items> hqqcItems(string yqbh, int qcoid)
|
|||
|
|
{
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
var data = db.QC_Itemss.Where(t => t.yqbh == yqbh && t.QCOID == qcoid).FirstOrDefault();
|
|||
|
|
if (data == null)
|
|||
|
|
{
|
|||
|
|
var jyxmList = db.jy_yiqi_xms.Where(t => t.yq == yqbh).ToList();
|
|||
|
|
|
|||
|
|
jyxmList.ForEach(t =>
|
|||
|
|
{
|
|||
|
|
var qcitem = new QC_Items();
|
|||
|
|
|
|||
|
|
qcitem.xmbm = new BLL.BasicBll().GetMax(qcitem.DbTableName, 1);
|
|||
|
|
qcitem.yqbh = yqbh;
|
|||
|
|
qcitem.QCOID = qcoid;
|
|||
|
|
qcitem.xmmc = t.xmmc;
|
|||
|
|
qcitem.ywmc = t.xmdm;
|
|||
|
|
qcitem.qybj = 0;
|
|||
|
|
qcitem.bzVar = "";
|
|||
|
|
qcitem.sdVar = "";
|
|||
|
|
qcitem.jsbzVar = "";
|
|||
|
|
qcitem.jssdVar = "";
|
|||
|
|
|
|||
|
|
db.QC_Itemss.Insert(qcitem);
|
|||
|
|
});
|
|||
|
|
|
|||
|
|
return db.QC_Itemss.Where(t => t.yqbh == yqbh && t.QCOID == qcoid).ToList();
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
return db.QC_Itemss.Where(t => t.yqbh == yqbh && t.QCOID == qcoid).ToList();
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public OperationResult deleteQCObject(QC_Object qco, string czy)
|
|||
|
|
{
|
|||
|
|
//throw new NotImplementedException();
|
|||
|
|
OperationResult or = new OperationResult();
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
try
|
|||
|
|
{
|
|||
|
|
var qcdelobject = new QC_DELObject();
|
|||
|
|
qcdelobject.QCOID = qco.QCOID;
|
|||
|
|
qcdelobject.yqbh = qco.yqbh;
|
|||
|
|
qcdelobject.qybj = qco.qybj;
|
|||
|
|
qcdelobject.pch = qco.pch;
|
|||
|
|
qcdelobject.sccj = qco.sccj;
|
|||
|
|
qcdelobject.ndName = qco.ndName;
|
|||
|
|
qcdelobject.jyff = qco.jyff;
|
|||
|
|
qcdelobject.hxsj = qco.hxsj;
|
|||
|
|
qcdelobject.bz = qco.bz;
|
|||
|
|
qcdelobject.strrq = qco.strrq;
|
|||
|
|
qcdelobject.endrq = qco.endrq;
|
|||
|
|
qcdelobject.delrq = DateTime.Now;
|
|||
|
|
qcdelobject.delczy = czy;
|
|||
|
|
db.QC_DELObjects.Insert(qcdelobject);
|
|||
|
|
|
|||
|
|
db.QC_Objects.Delete(t => t.QCOID == qco.QCOID);
|
|||
|
|
}
|
|||
|
|
catch (Exception ex)
|
|||
|
|
{
|
|||
|
|
or.State = 0;
|
|||
|
|
or.Message = ex.Message;
|
|||
|
|
return or;
|
|||
|
|
}
|
|||
|
|
or.State = 1;
|
|||
|
|
or.Message = "删除成功!";
|
|||
|
|
return or;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public void qcItemUpdate(int xmbm, string yq, int qcoid, int qybj, string bzVar, string sdVar)
|
|||
|
|
{
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
var qcitems = db.QC_Itemss.FirstOrDefault(t => t.xmbm == xmbm && t.yqbh == yq && t.QCOID == qcoid);
|
|||
|
|
if (qcitems == null)
|
|||
|
|
{
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
qcitems.qybj = qybj;
|
|||
|
|
qcitems.bzVar = bzVar;
|
|||
|
|
qcitems.sdVar = sdVar;
|
|||
|
|
db.QC_Itemss.Update(qcitems);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public void qcValueUpdate(int id, string jg, Double SD)
|
|||
|
|
{
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
var qcvalues = db.QC_Values.FirstOrDefault(t => t.id == id);
|
|||
|
|
if (qcvalues == null)
|
|||
|
|
{
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
qcvalues.jg = Convert.ToDouble(jg).ToString("F4").ToString();
|
|||
|
|
qcvalues.SD = (float)SD;
|
|||
|
|
db.QC_Values.Update(qcvalues);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public OperationResult insertQcValue(string rq, string time, QC_Items qcitems)
|
|||
|
|
{
|
|||
|
|
//throw new NotImplementedException();
|
|||
|
|
OperationResult or = new OperationResult();
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
try
|
|||
|
|
{
|
|||
|
|
|
|||
|
|
var qcvalue = new QC_Value();
|
|||
|
|
qcvalue.xmbm = qcitems.xmbm;
|
|||
|
|
qcvalue.DataValue = rq;
|
|||
|
|
qcvalue.TimeValue = time;
|
|||
|
|
qcvalue.QCOID = qcitems.QCOID;
|
|||
|
|
qcvalue.yqbh = qcitems.yqbh;
|
|||
|
|
qcvalue.jg = "";
|
|||
|
|
|
|||
|
|
var qcobject = db.QC_Objects.Where(t => t.QCOID == qcitems.QCOID).FirstOrDefault();
|
|||
|
|
if (qcobject != null)
|
|||
|
|
{
|
|||
|
|
qcvalue.ndName = qcobject.ndName;
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
qcvalue.ndName = "";
|
|||
|
|
}
|
|||
|
|
qcvalue.bzVar = qcitems.bzVar;
|
|||
|
|
qcvalue.sdVar = qcitems.sdVar;
|
|||
|
|
qcvalue.jsbzVar = 0.00f;
|
|||
|
|
qcvalue.jssdVar = 0.00f;
|
|||
|
|
qcvalue.QCRID = 0;
|
|||
|
|
qcvalue.SD = 0;
|
|||
|
|
qcvalue.id = new BLL.BasicBll().GetMax(qcvalue.DbTableName, 1);
|
|||
|
|
db.QC_Values.Insert(qcvalue);
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
catch (Exception ex)
|
|||
|
|
{
|
|||
|
|
or.State = 0;
|
|||
|
|
or.Message = ex.Message;
|
|||
|
|
return or;
|
|||
|
|
}
|
|||
|
|
or.State = 1;
|
|||
|
|
or.Message = "添加成功!";
|
|||
|
|
return or;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public OperationResult deleteQcvalue(int id)
|
|||
|
|
{
|
|||
|
|
//throw new NotImplementedException();
|
|||
|
|
OperationResult or = new OperationResult();
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
try
|
|||
|
|
{
|
|||
|
|
db.QC_Values.Delete(t => t.id == id);
|
|||
|
|
}
|
|||
|
|
catch (Exception ex)
|
|||
|
|
{
|
|||
|
|
or.State = 0;
|
|||
|
|
or.Message = ex.Message;
|
|||
|
|
return or;
|
|||
|
|
}
|
|||
|
|
or.State = 1;
|
|||
|
|
or.Message = "删除成功!";
|
|||
|
|
return or;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public jy_yhxx getjyyhxxbybbh(int bbh, string querytime, string yqbm)
|
|||
|
|
{
|
|||
|
|
using (var db = new DbEntities())
|
|||
|
|
{
|
|||
|
|
DateTime jyrq = DateTime.Parse(querytime);
|
|||
|
|
return db.jy_yhxxs.Where(t => t.yqbh == yqbm&&t.bbh==bbh&&t.jyrq== jyrq).FirstOrDefault();
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
}
|