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

262 lines
9.3 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using EAS.Services;
using SOH.Entities;
using SOH.Data;
using System.Data;
using System.IO;
using SOH.Entities.DTO;
namespace SOH.BLL
{
[ServiceObject("体检结果维护")]
[ServiceBind(typeof(It_tjjd))]
public class t_tjjdBll : It_tjjd
{
public Data.OperationResult Update1(t_tjjd tjjd)
{
OperationResult or = new OperationResult();
using (DbEntities db = new DbEntities())
{
int count = db.t_tjjds.Where(t => t.tm == tjjd.tm && t.ksbm == tjjd.ksbm).Count();
if (count != 0)
{
try
{
db.t_tjjds.OrmAccessor.Update(tjjd);
or.State = 0;
or.Message = "审核成功";
}catch(Exception ex)
{
or.State = 1;
or.Message = "审核失败,请联系管理员";
}
}
return or;
}
}
public Data.OperationResult Update(t_tjjd tjjd, bool isSave, short yydm)
{
OperationResult or = new OperationResult();
using (DbEntities db = new DbEntities())
{
int count = db.t_tjjds.Where(t => t.tm == tjjd.tm && t.ksbm == tjjd.ksbm).Count();
if (count == 0)
{
db.t_tjjds.OrmAccessor.Insert(tjjd);
}
else
{
db.t_tjjds.OrmAccessor.Update(tjjd);
}
if (isSave)
{
List<int> ksjbs = db.t_kszdjgs.Where(t => tjjd.zdjg.Contains(t.zdjg)).Select(t => t.jbbm).Distinct().ToList<int>();
for (int i = 0; i < ksjbs.Count; i++)
{
if (ksjbs[i] == 0)
{
break;
}
t_jbtj jbtj = new t_jbtj();
jbtj.tm = tjjd.tm;
jbtj.jbbm = ksjbs[i];
jbtj.upflag = 0;
jbtj.fddm = Convert.ToInt16(yydm);
db.t_jbtjs.OrmAccessor.Insert(jbtj);
}
if (yydm == 1)
{
int notokcount = db.t_tempdjxms.Where(t => t.tm == tjjd.tm && t.ztz != 3 && t.ztz != 4).Count();
if (notokcount == 0)
{
t_grgzb grgzb = db.t_grgzbs.Where(t => t.tm == tjjd.tm).FirstOrDefault();
if (grgzb != null)
{
if (grgzb.fddm != 1)
{
if (grgzb.dxtj == 1)
{
grgzb.tmztz = 6;
}
else
{
grgzb.tmztz = 5;
}
db.t_grgzbs.OrmAccessor.Update(grgzb);
}
}
else
{
t_ttgzb ttgzb = db.t_ttgzbs.Where(t => t.tm == tjjd.tm).FirstOrDefault();
if (ttgzb != null)
{
if (ttgzb.fddm != 1)
{
ttgzb.tmztz = 5;
db.t_ttgzbs.OrmAccessor.Update(ttgzb);
}
}
}
}
}
or.State = 0;
or.Message = "保存成功";
}
}
return or;
}
public string getLsjl(int tm, int ksbm)
{
using (var db = new DbEntities())
{
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.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 == tm);
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;
}
if (!string.IsNullOrEmpty(gzb.sfzh))
{
}
}
return "";
}
public t_tjjd getTjjd(String tm, int ksbm)
{
using (DbEntities db = new DbEntities())
{
var data = db.t_tjjds.Where(t => t.tm == Convert.ToInt32(tm) && t.ksbm == ksbm);
if (data.Count() != 0)
{
return data.First();
}
else
{
return null;
}
}
}
public DataTable getTjjdImage(int tm, int ksbm)
{
using (DbEntities db = new DbEntities())
{
string sql1 = "select * from t_tjjd where tm= " + tm + " and ksbm=" + ksbm;
DataTable dt = db.DataAccessor.QueryDataTable(sql1);
return dt;
}
}
public String getAllTjjd(String tm, int ksbm)
{
using (DbEntities db = new DbEntities())
{
var data = db.t_tjjds.Where(t => t.tm == Convert.ToInt32(tm) && t.ksbm != ksbm).Join(db.t_kss, t => t.ksbm, p => p.ksbm, (t, p) => new
{
key = p.ksmc,
value = t.zdjg
});
return Newtonsoft.Json.JsonConvert.SerializeObject(data);
}
}
public void setccbg(List<t_ccbg> bgs, int tm, int ksbm)
{
//throw new NotImplementedException();
using (DbEntities db = new DbEntities())
{
//var bg1 = bgs.FirstOrDefault();
if (tm != 0)
{
db.CCBG.Where(t => t.tmh == tm && t.ksbm == ksbm).ToList().ForEach(t =>
{
File.Delete(t.image_path);
});
db.DataAccessor.Execute("delete from t_ccbg where tmh='" + tm + "' and ksbm='" + ksbm + "'");
}
foreach (var b in bgs)
{
if (File.Exists(b.image_path))
{
if (db.CCBG.Where(t => t.tmh == b.tmh && t.ksbm == b.ksbm && t.image_path == b.image_path).Any())
{
File.Delete(b.image_path);
FileStream fs = new FileStream(b.image_path, FileMode.Create);
fs.Write(b.image, 0, b.image.Length);
fs.Close();
}
}
else
{
string basePath = System.Configuration.ConfigurationManager.AppSettings["CCPath"];
basePath += DateTime.Now.Year.ToString("0000") + "\\";
if (!Directory.Exists(basePath))
{
Directory.CreateDirectory(basePath);
}
basePath += DateTime.Now.Month.ToString("00") + "\\";
if (!Directory.Exists(basePath))
{
Directory.CreateDirectory(basePath);
}
string filePath = basePath + b.tmh + "-" + Guid.NewGuid().ToString("N") + ".jpeg";
FileStream fs = new FileStream(filePath, FileMode.Create);
fs.Write(b.image, 0, b.image.Length);
fs.Close();
b.image_path = filePath;
db.CCBG.OrmAccessor.Insert(b);
}
}
}
}
}
}