tijian_jichuang/Code/TiJianJieGuo/frmYiShengJieGuoLuRuNew.cs

2790 lines
108 KiB
C#
Raw Normal View History

2025-02-20 11:54:48 +08:00
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using SOH.Kernel;
using EAS.Services;
using SOH.BLL;
using SOH.Entities;
using SOH.Data;
using SOH.Common;
using System.Text.RegularExpressions;
using SOH;
using TiJianJieGuo;
using System.IO;
using SOH.Entities.DTO;
using System.Drawing.Imaging;
namespace TiJianJieGuoGuanLi
{
[ModuleAttribute(ModuleID = "0C09F9C9-1A6B-4D1D-A2F6-4A35B57D3075", ModuleName = "医生诊台(新)")]
public partial class frmYiShengJieGuoLuRuNew : SOH.Window.baseChildForm
{
HotKeys h = new HotKeys();
private String strBm = "";
private string pathName = "";
private String strJcxmmcStr = "";
private string tjjd_zdys = "";
public frm_cj cj = null;
public Boolean pajh = false;
public Regex regChina = new Regex("^[^\x00-\xFF]");
public Regex regNum = new Regex("^[0-9]");
public string zdyx_xm = "";
public string zdyx_tmh = "";
public string zdyx_xb = "";
public string zdyx_nl = "";
public string zdyx_ksmc = "";
public string zdyx_lxdh = "";
public string zdyx_tjlx = "";
public string zdyx_tjrq = "";
frmDRTJRCX drtjcx;
public DataTable templetDt;
public frmYiShengJieGuoLuRuNew()
{
InitializeComponent();
}
public frmYiShengJieGuoLuRuNew(frmDRTJRCX drtjcx1, String tm)
{
InitializeComponent();
drtjcx = drtjcx1;
tbxtm.Text = tm.ToString();
pajh = false;
loadTm();
}
private void Form1_Load(object sender, EventArgs e)
{
//frmDRTJRCX fc = (frmDRTJRCX)this.Owner;
if (drtjcx == null)
{
drtjcx = new frmDRTJRCX();
}
dgvjcjg.AutoGenerateColumns = false;
dgbqtks.AutoGenerateColumns = false;
dgvqtksjcjg.AutoGenerateColumns = false;
inityi();
}
private void SGTZY_START()
{
System.Configuration.Configuration conf = SOH.Configuration.LocalConfig.Config;
string BaundRate = conf.AppSettings.Settings["SGTZY_BaundRate"].Value;
string DataBits = conf.AppSettings.Settings["SGTZY_DataBits"].Value;
string Parity = conf.AppSettings.Settings["SGTZY_Parity"].Value;
string PortName = conf.AppSettings.Settings["SGTZY_PortName"].Value;
string StopBits = conf.AppSettings.Settings["SGTZY_StopBits"].Value;
try
{
sp_sgtz.BaudRate = int.Parse(BaundRate);
}
catch
{
MessageBox.Show("身高体重仪信参数没有设置,请联系管理员设置!");
}
sp_sgtz.DataBits = int.Parse(DataBits);
sp_sgtz.PortName = PortName;
switch (StopBits)
{
case "None":
sp_sgtz.StopBits = System.IO.Ports.StopBits.None;
break;
case "One":
sp_sgtz.StopBits = System.IO.Ports.StopBits.One;
break;
case "OnePointFive":
sp_sgtz.StopBits = System.IO.Ports.StopBits.OnePointFive;
break;
case "Two":
sp_sgtz.StopBits = System.IO.Ports.StopBits.Two;
break;
}
switch (Parity)
{
case "Even":
sp_sgtz.Parity = System.IO.Ports.Parity.Even;
break;
case "Mark":
sp_sgtz.Parity = System.IO.Ports.Parity.Mark;
break;
case "None":
sp_sgtz.Parity = System.IO.Ports.Parity.None;
break;
case "Odd":
sp_sgtz.Parity = System.IO.Ports.Parity.Odd;
break;
case "Space":
sp_sgtz.Parity = System.IO.Ports.Parity.Space;
break;
}
try
{
sp_sgtz.Open();
}
catch (Exception ex)
{
MessageBox.Show("打开串口" + PortName + "失败" + ex.Message);
}
}
string[] ccks;
private void inityi()
{
//throw new NotImplementedException();
System.Configuration.Configuration conf = SOH.Configuration.LocalConfig.Config;
#region 处理电子血压仪器
if (conf.AppSettings.Settings.AllKeys.Contains("DZXYY") && conf.AppSettings.Settings["DZXYY"].Value == "1")
{
string BaundRate = conf.AppSettings.Settings["DZXYY_BaundRate"].Value;
string DataBits = conf.AppSettings.Settings["DZXYY_DataBits"].Value;
string Parity = conf.AppSettings.Settings["DZXYY_Parity"].Value;
string PortName = conf.AppSettings.Settings["DZXYY_PortName"].Value;
string StopBits = conf.AppSettings.Settings["DZXYY_StopBits"].Value;
try
{
sp_dzxy.BaudRate = int.Parse(BaundRate);
}
catch
{
MessageBox.Show("电子血压仪信参数没有设置,请联系管理员设置!");
}
sp_dzxy.DataBits = int.Parse(DataBits);
sp_dzxy.PortName = PortName;
switch (StopBits)
{
case "None":
sp_dzxy.StopBits = System.IO.Ports.StopBits.None;
break;
case "One":
sp_dzxy.StopBits = System.IO.Ports.StopBits.One;
break;
case "OnePointFive":
sp_dzxy.StopBits = System.IO.Ports.StopBits.OnePointFive;
break;
case "Two":
sp_dzxy.StopBits = System.IO.Ports.StopBits.Two;
break;
}
switch (Parity)
{
case "Even":
sp_dzxy.Parity = System.IO.Ports.Parity.Even;
break;
case "Mark":
sp_dzxy.Parity = System.IO.Ports.Parity.Mark;
break;
case "None":
sp_dzxy.Parity = System.IO.Ports.Parity.None;
break;
case "Odd":
sp_dzxy.Parity = System.IO.Ports.Parity.Odd;
break;
case "Space":
sp_dzxy.Parity = System.IO.Ports.Parity.Space;
break;
}
try
{
sp_dzxy.Open();
}
catch (Exception ex)
{
MessageBox.Show("打开串口" + PortName + "失败" + ex.Message);
}
}
#endregion
#region 处理身高体重仪器
if (conf.AppSettings.Settings.AllKeys.Contains("SGTZY") && conf.AppSettings.Settings["SGTZY"].Value == "1")
{
if (conf.AppSettings.Settings.AllKeys.Contains("SGTZY_KQFS") && conf.AppSettings.Settings["SGTZY_KQFS"].Value == "false")
{
this.button5.Visible = true;
}
else
{
this.button5.Visible = false;
SGTZY_START();
}
}
#endregion
#region 处理采集卡
if (conf.AppSettings.Settings.AllKeys.Contains("qybccj") && conf.AppSettings.Settings["qybccj"].Value == "true")
{
string sb = conf.AppSettings.Settings["cjsb"].Value;
string fbl = conf.AppSettings.Settings["cjfbl"].Value;
string kss = conf.AppSettings.Settings["cjks"].Value;
ccks = kss.Split(',');
if (cj == null)
{
cj = new frm_cj(this, sb, fbl);
cj.Show();
cj.CaiJied += Cj_CaiJied;
}
}
#endregion
//System.Configuration.Configuration cm = System.Configuration.ConfigurationManager.OpenExeConfiguration(AppDomain.CurrentDomain.BaseDirectory + "\\local.ext");
//string isOpen = cm.AppSettings.Settings["isOpenPaidui"].Value;
//var ZongJian = ServiceContainer.GetService<IZongJian>();
//templetDt = ZongJian.getAllMoban();
var FenDianService = ServiceContainer.GetService<IFenDian>();
FenDian fd = FenDianService.getFenDianById(Convert.ToInt32(LoginUser.yydm));
//if (fd.isPaidui.ToString() == "1")
//{
// this.button3.Visible = false;
//}
//else
//{
// this.button3.Visible = false;
//}
}
private void Cj_CaiJied(Bitmap bm)
{
//throw new NotImplementedException();
cc_imgs.Images.Add(bm);
imgs.Add(bm);
ListViewItem lvi = new ListViewItem();
lvi.Text = DateTime.Now.ToString();
lvi.ImageIndex = cc_imgs.Images.Count - 1;
lv_caiji.Items.Add(lvi);
}
private void button2_Click(object sender, EventArgs e)
{
DateTime dt = DateTime.Now;
string NowTime = dt.ToString("HH:mm:ss");
if (dgvbks.SelectedRows[0].Cells["ztz"].Value.ToString() == "4")
{
MessageBox.Show("已经保存无法修改!");
return;
}
if (dgvbks.SelectedRows[0].Cells["ztz"].Value.ToString() == "2")
{
MessageBox.Show("已经放弃,无法修改!");
return;
}
if (dgvbks.SelectedRows[0].Cells["ztz"].Value.ToString() == "3")
{
MessageBox.Show("已经待查,无法修改!");
return;
}
if (LoginUser.yydm == "3")
{
if (LoginUser.xm != "系统管理员" || LoginUser.xm != "张立宪" || LoginUser.xm != "杜文经")
{
if (tjjd_zdys != "系统管理员")
{
if (LoginUser.xm != tjjd_zdys)
{
MessageBox.Show("结果已临时保存,请由" + tjjd_zdys + "本人账号完成保存!");
return;
}
}
}
}
if (dgvbks.SelectedRows[0].Cells["ksbm"].Value.ToString() == "21")
{
if (pathName == "")
{
if (MessageBox.Show("没有选择心电图报告,是否现在上传?!", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Asterisk) == DialogResult.Yes)
{
tabControl1.SelectTab(2);
return;
}
}
}
System.Configuration.Configuration conf = SOH.Configuration.LocalConfig.Config;
if (conf.AppSettings.Settings.AllKeys.Contains("qybccj") && conf.AppSettings.Settings["qybccj"].Value == "true")
{
if (!ckeckcc())
{
return;
}
}
for (int i = 0; i < dgvjcjg.Rows.Count; i++)
{
String flag = dgvjcjg.Rows[i].Cells["flag"].Value.ToString();
if (flag.Equals("1"))
{
t_tjjg tjjg = new t_tjjg();
tjjg.tm = Convert.ToInt32(tbxtm.Text);
tjjg.xmbm = Convert.ToInt32(dgvjcjg.Rows[i].Cells["jcbm"].Value);
if (dgvjcjg.Rows[i].Cells["zcjg"].Value.ToString() == "")
{
MessageBox.Show("检查结果不能为空!");
return;
}
tjjg.jg = dgvjcjg.Rows[i].Cells["zcjg"].Value.ToString();
tjjg.dw = dgvjcjg.Rows[i].Cells["dw"].Value.ToString();
tjjg.lx = 0;
tjjg.cksx = dgvjcjg.Rows[i].Cells["cksx"].Value.ToString();
tjjg.ckxx = dgvjcjg.Rows[i].Cells["ckxx"].Value.ToString();
tjjg.cksx = tjjg.cksx.Equals("") ? "0" : tjjg.cksx;
tjjg.ckxx = tjjg.ckxx.Equals("") ? "0" : tjjg.ckxx;
tjjg.czy = LoginUser.username;
var vservice = ServiceContainer.GetService<It_tjjg>();
vservice.Update(tjjg);
t_tempdjxm tempdjxm = new t_tempdjxm();
tempdjxm.tm = Convert.ToInt32(tbxtm.Text);
tempdjxm.zhbm = Convert.ToInt32(dgvjcjg.Rows[i].Cells["zhbm"].Value);
tempdjxm.djrq = dt;
tempdjxm.djsj = NowTime;
tempdjxm.ztz = 4;
tempdjxm.czy = LoginUser.username;
tempdjxm.upflag = 1;
tempdjxm.operid = "";
tempdjxm.ksbm = Convert.ToInt16(dgvbks.SelectedRows[0].Cells["ksbm"].Value);
var tempvs = ServiceContainer.GetService<It_tempdjxm>();
tempvs.updateZtz(tempdjxm);
}
else if (flag.Equals("3"))
{
t_tjjd tjjd = new t_tjjd();
tjjd.tm = Convert.ToInt32(tbxtm.Text);
tjjd.ksbm = Convert.ToInt16(dgvbks.SelectedRows[0].Cells["ksbm"].Value);
if (dgvjcjg.Rows[i].Cells["zcjg"].Value.ToString().Trim() == "")
{
MessageBox.Show("体检诊断不能为空!");
return;
}
tjjd.zdjg = dgvjcjg.Rows[i].Cells["zcjg"].Value.ToString().Trim();
tjjd.zdys = LoginUser.xm;
tjjd.czy = LoginUser.username;
tjjd.djsj = DateTime.Now.ToString("yyyy-MM-dd");
if (LoginUser.yydm.ToString() == "2")
{
var vservice1 = ServiceContainer.GetService<IZongJian>();
tjjd.bz = vservice1.fanhuiJbtj(Convert.ToInt32(tbxtm.Text), Convert.ToInt16(dgvbks.SelectedRows[0].Cells["ksbm"].Value));
}
if (pathName != "")
{
//将图像读入到字节数组
System.IO.FileStream fs = new System.IO.FileStream(pathName, System.IO.FileMode.Open, System.IO.FileAccess.Read);
byte[] buffByte = new byte[fs.Length];
fs.Read(buffByte, 0, (int)fs.Length);
fs.Close();
fs = null;
tjjd.image = buffByte;
}
var vservice = ServiceContainer.GetService<It_tjjd>();
vservice.Update(tjjd, true, short.Parse(LoginUser.yydm));
}
}
dgvbks.SelectedRows[0].Cells["ztz"].Value = "4";
dgvbks.SelectedRows[0].DefaultCellStyle.BackColor = Color.FromArgb(128, 255, 128);
pathName = "";
tbxtm.Focus();
//MessageBox.Show("111111!");
//开始排队
var FenDianService = ServiceContainer.GetService<IFenDian>();
FenDian fd = FenDianService.getFenDianById(Convert.ToInt32(LoginUser.yydm));
if (fd.isPaidui.ToString() == "1")
{
if (!pajh)
{
kstj(Convert.ToInt32(strBm));
pajh = true;
}
string ksid = "0";
try
{
ksid = SOH.Configuration.LocalConfig.Config.AppSettings.Settings["wlks"].Value;
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
EAS.Loggers.Logger.Warn(ex.Message);
}
//MessageBox.Show("222222!");
var vser = ServiceContainer.GetService<IPaiDuiJiaoHao>();
string ksname = vser.wctj(strBm, ksid);
if (!string.IsNullOrEmpty(ksname))
{
if (ksname != "NO")
{
labpd.Visible = true;
labpd.Text = "保存完成!请到[" + ksname + "]体检!";
}
//MessageBox.Show("保存完成!请到" + ksname + "体检!");
}
else
{
MessageBox.Show("保存完成!体检结束");
}
//}
//else
//{
// MessageBox.Show("保存完成!");
//}
}
else
{
MessageBox.Show("保存完成!");
}
}
private bool ckeckcc()
{
//throw new NotImplementedException();
if (ccks.Contains(dgvbks.SelectedRows[0].Cells["ksbm"].Value.ToString()))
{
if (lv_caiji.CheckedItems.Count > 6)
{
MessageBox.Show("最多只能选择6张照片!");
tabControl1.SelectTab("tp_caichao");
return false;
}
else
{
var vser = ServiceContainer.GetService<It_tjjd>();
List<t_ccbg> bgs = new List<t_ccbg>();
int tmh = 0;
int ks = 0;
int.TryParse(dgvbks.SelectedRows[0].Cells["ksbm"].Value.ToString(), out ks);
int.TryParse(strBm, out tmh);
foreach (ListViewItem item in lv_caiji.CheckedItems)
{
bgs.Add(new t_ccbg
{
tmh = tmh,
ksbm = ks,
image_path = item.Text
});
MemoryStream ms = new MemoryStream();
imgs[item.ImageIndex].Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg);
bgs[bgs.Count - 1].image = ms.ToArray();
}
vser.setccbg(bgs, tmh, ks);
return true;
}
}
else
{
return true;
}
}
private void textBox1_TextChanged(object sender, EventArgs e)
{
//if()
}
private void dgvjcjg_SelectionChanged(object sender, EventArgs e)
{
cc_imgs.Images.Clear();
lv_caiji.Items.Clear();
imgs.Clear();
loadJcjg();
}
private void loadJcjg()
{
if (dgvbks.SelectedRows.Count > 0)
{
int ksbm = Convert.ToInt32(dgvbks.SelectedRows[0].Cells["ksbm"].Value);
zdyx_ksmc = dgvbks.SelectedRows[0].Cells["ksmc"].Value.ToString();
var vservice = ServiceContainer.GetService<It_tempdjxm>();
String dataXb = vservice.getXb(Convert.ToInt32(strBm));
DataTable dtXb = Newtonsoft.Json.JsonConvert.DeserializeObject(dataXb, typeof(DataTable)) as DataTable;
int xb = Convert.ToInt32(dtXb.Rows[0]["xb"]);
List<t_jglr> data = vservice.getZhxm(ksbm, strBm,xb);
List<t_ccbg> ccbgs = vservice.getCCBG(ksbm, strBm);
ccbgs.ForEach(t =>
{
if (t.image != null)
{
MemoryStream ms = new MemoryStream(t.image);
Image img = Image.FromStream(ms);
imgs.Add(img);
cc_imgs.Images.Add(img);
lv_caiji.Items.Add(new ListViewItem { Text = t.image_path, ImageIndex = imgs.Count - 1, Checked = true });
}
});
String tm = tbxtm.Text;
var tjjdservice = ServiceContainer.GetService<It_tjjd>();
var zjbll = ServiceContainer.GetService<IZongJian>();
//查询历史记录
dto_gzb gzb = zjbll.getGzbByTmss(int.Parse(tm));
int[] array1 = (int[])ServiceContainer.GetService<IZongJian>().GetHisTmListBySfz(gzb.sfzh, gzb.xm);
string hisStr = "";
if (array1.Length > 1)
{
DataTable hisDt = Newtonsoft.Json.JsonConvert.DeserializeObject(ServiceContainer.GetService<IZongJian>().GetHisTable2(array1, ksbm), typeof(DataTable)) as DataTable;
if (hisDt.Rows.Count != 0)
{
foreach (DataRow dr in hisDt.Rows)
{
hisStr += dr["tjrq"].ToString() + "-" + dr["ksmc"].ToString() + "-" + dr["kszd"].ToString() + "\r\n";
}
}
}
textBox3.Text = hisStr;
t_tjjd tjjd = tjjdservice.getTjjd(tm, ksbm);
if (tjjd == null)
{
t_jglr zjg = new t_jglr();
zjg.xmmc = "\"" + dgvbks.SelectedRows[0].Cells["ksmc"].Value + "\"体检结果";
zjg.dw = "";
zjg.zcjg = dgvbks.SelectedRows[0].Cells["kszdjg"].Value.ToString();
zjg.defzcjg = dgvbks.SelectedRows[0].Cells["kszdjg"].Value.ToString();
zjg.flag = 3;
zjg.jcbm = -2;
data.Add(zjg);
t_jglr zjys = new t_jglr();
zjys.xmmc = "\"" + dgvbks.SelectedRows[0].Cells["ksmc"].Value + "\"体检医师";
zjys.dw = "";
zjys.zcjg = LoginUser.xm;
zjys.flag = 4;
data.Add(zjys);
tjjd_zdys = LoginUser.xm;
}
else
{
try
{
System.IO.MemoryStream ms = new System.IO.MemoryStream(tjjd.image);
pictureBox1.Image = Image.FromStream(ms);
}
catch
{
}
t_jglr zjg = new t_jglr();
zjg.xmmc = "\"" + dgvbks.SelectedRows[0].Cells["ksmc"].Value + "\"体检结果";
zjg.dw = "";
zjg.zcjg = tjjd.zdjg;
zjg.defzcjg = "";
zjg.flag = 3;
zjg.jcbm = -2;
data.Add(zjg);
t_jglr zjys = new t_jglr();
zjys.xmmc = "\"" + dgvbks.SelectedRows[0].Cells["ksmc"].Value + "\"体检医师";
zjys.dw = "";
zjys.zcjg = tjjd.zdys;
zjys.flag = 4;
data.Add(zjys);
tjjd_zdys = tjjd.zdys;
}
dgvjcjg.DataSource = data;
dgvjcjg.Refresh();
dgvjcjg.ClearSelection();
String str = tjjdservice.getAllTjjd(tm, ksbm);
DataTable dt = Newtonsoft.Json.JsonConvert.DeserializeObject(str, typeof(DataTable)) as DataTable;
tbxqtksyczd.Text = "";
for (int i = 0; i < dt.Rows.Count; i++)
{
tbxqtksyczd.Text = tbxqtksyczd.Text + dt.Rows[i]["key"] + ":" + Environment.NewLine + dt.Rows[i]["value"] + Environment.NewLine;
}
foreach (DataGridViewRow item in dgvjcjg.Rows)
{
String flag = item.Cells["flag"].Value.ToString();
if (flag.Equals("2"))
{
item.DefaultCellStyle.BackColor = Color.FromArgb(255, 0, 255);
}
else if (flag.Equals("3") || flag.Equals("4"))
{
item.DefaultCellStyle.BackColor = Color.FromArgb(128, 255, 128);
}
//if (regNum.IsMatch(str))
//{
// decimal value = Convert.ToDecimal(item.Cells["zcjg"].Value.ToString());
// if (value > Convert.ToDecimal(item.Cells["cksx"].Value) || value < Convert.ToDecimal(item.Cells["ckxx"].Value))
// {
// item.Cells["zcjg"].Style.BackColor = Color.FromArgb(255, 128, 128);
// }
// else
// {
// item.Cells["zcjg"].Style.BackColor = Color.White;
// }
//}
try
{
decimal value = Convert.ToDecimal(item.Cells["zcjg"].Value.ToString());
if (value > Convert.ToDecimal(item.Cells["cksx"].Value) || value < Convert.ToDecimal(item.Cells["ckxx"].Value))
{
item.Cells["zcjg"].Style.BackColor = Color.FromArgb(255, 128, 128);
}
else
{
item.Cells["zcjg"].Style.BackColor = Color.White;
}
}
catch
{
}
}
}
}
private void loadqtksJcjg()
{
if (dgbqtks.SelectedRows.Count > 0)
{
int ksbm = Convert.ToInt32(dgbqtks.SelectedRows[0].Cells["ksbmqt"].Value);
var vservice = ServiceContainer.GetService<It_tempdjxm>();
String dataXb = vservice.getXb(Convert.ToInt32(strBm));
DataTable dtXb = Newtonsoft.Json.JsonConvert.DeserializeObject(dataXb, typeof(DataTable)) as DataTable;
int xb = Convert.ToInt32(dtXb.Rows[0]["xb"]);
List<t_jglr> data = vservice.getZhxm(ksbm, strBm, xb);
var tjjdservice = ServiceContainer.GetService<It_tjjd>();
String tm = tbxtm.Text;
t_tjjd tjjd = tjjdservice.getTjjd(tm, ksbm);
if (tjjd == null)
{
t_jglr zjg = new t_jglr();
zjg.xmmc = "\"" + dgbqtks.SelectedRows[0].Cells["ksmcqt"].Value + "\"体检结果";
zjg.dw = "";
zjg.zcjg = "";
zjg.flag = 3;
zjg.jcbm = -2;
data.Add(zjg);
t_jglr zjys = new t_jglr();
zjys.xmmc = "\"" + dgbqtks.SelectedRows[0].Cells["ksmcqt"].Value + "\"体检医师";
zjys.dw = "";
zjys.zcjg = LoginUser.username;
zjys.flag = 4;
data.Add(zjys);
}
else
{
t_jglr zjg = new t_jglr();
zjg.xmmc = "\"" + dgbqtks.SelectedRows[0].Cells["ksmcqt"].Value + "\"体检结果";
zjg.dw = "";
zjg.zcjg = tjjd.zdjg;
zjg.flag = 3;
zjg.jcbm = -2;
data.Add(zjg);
t_jglr zjys = new t_jglr();
zjys.xmmc = "\"" + dgbqtks.SelectedRows[0].Cells["ksmcqt"].Value + "\"体检医师";
zjys.dw = "";
zjys.zcjg = tjjd.zdys;
zjys.flag = 4;
data.Add(zjys);
}
dgvqtksjcjg.DataSource = data;
dgvqtksjcjg.Refresh();
dgvqtksjcjg.ClearSelection();
foreach (DataGridViewRow item in dgvqtksjcjg.Rows)
{
String flag = item.Cells["flagqt"].Value.ToString();
if (flag.Equals("2"))
{
item.DefaultCellStyle.BackColor = Color.FromArgb(255, 0, 255);
}
else if (flag.Equals("3") || flag.Equals("4"))
{
item.DefaultCellStyle.BackColor = Color.FromArgb(128, 255, 128);
}
try
{
decimal value = Convert.ToDecimal(item.Cells["zcjgqt"].Value.ToString());
if (value > Convert.ToDecimal(item.Cells["cksxqt"].Value) || value < Convert.ToDecimal(item.Cells["ckxxqt"].Value))
{
item.Cells["zcjgqt"].Style.BackColor = Color.FromArgb(255, 0, 255);
}
else
{
item.Cells["zcjgqt"].Style.BackColor = Color.White;
}
}
catch
{
}
}
}
}
private void dgvjcjg_CellMouseClick(object sender, DataGridViewCellMouseEventArgs e)
{
if (dgvbks.SelectedRows[0].Cells["ztz"].Value.ToString() == "4")
{
MessageBox.Show("已经保存,不允许修改!");
return;
}
if (dgvjcjg.SelectedRows.Count > 0)
{
if (e.Button == MouseButtons.Right)
{
if (!dgvjcjg.SelectedRows[0].Cells["flag"].Value.ToString().Equals("1") && !dgvjcjg.SelectedRows[0].Cells["flag"].Value.ToString().Equals("3"))
{
dgvjcjg.SelectedRows[0].Selected = false;
return;
}
int jcbm = Convert.ToInt32(dgvjcjg.SelectedRows[0].Cells["jcbm"].Value);
int rowindex = dgvjcjg.SelectedRows[0].Index;
frmMoBan fmb = new frmMoBan(jcbm, rowindex, this);
fmb.ShowDialog();
}
}
}
public void GengXinJgAandZd(DataTable jgDt, int rowindex, int jcxmbmout)
{
string jgStr = "";
string zdStr = "";
short ksbm = Convert.ToInt16(dgvbks.SelectedRows[0].Cells["ksbm"].Value.ToString());
//short jcxmbm = Convert.ToInt16(jgDt.Rows[0]["项目ID"].ToString());
short jcxmbm = Convert.ToInt16(jcxmbmout);
if (jgDt.Rows.Count != 0)
{
List<t_jbtj> jbtjlist = new List<t_jbtj>();
List<t_jbtj1> jbtj1list = new List<t_jbtj1>();
foreach (DataRow dr in jgDt.Rows)
{
t_jbtj jbtj = new t_jbtj();
jbtj.jbbm = Convert.ToInt32(dr["描述ID"].ToString());
jbtj.tm = int.Parse(this.tbxtm.Text.Trim());
jbtj.upflag = jcxmbm;
jbtj.fddm = Convert.ToInt16(ksbm);
jbtjlist.Add(jbtj);
if (Convert.ToInt16(dr["疾病编码"].ToString().Length) != 0)
{
t_jbtj1 jbtj1 = new t_jbtj1();
jbtj1.jbbm = Convert.ToInt16(dr["疾病编码"].ToString());
jbtj1.tm = int.Parse(this.tbxtm.Text.Trim());
jbtj1.upflag = jcxmbm;
jbtj1.fddm = Convert.ToInt16(ksbm);
jbtj1list.Add(jbtj1);
}
}
var service = ServiceContainer.GetService<IZongJian>();
service.JgGengXin(int.Parse(this.tbxtm.Text.Trim()), jcxmbm, jbtjlist, jbtj1list);
DataTable zdDt = service.getKszdByKsbm(int.Parse(this.tbxtm.Text.Trim()), ksbm);
List<t_jglr> data = dgvjcjg.DataSource as List<t_jglr>;
foreach (t_jglr jglr in data)
{
if (jglr.jcbm == jcxmbm)
{
if (zdDt.Rows.Count != 0)
{
foreach (DataRow zdDr in zdDt.Rows)
{
if (zdDr["描述"].ToString().Trim() != "")
{
if (zdDr["项目ID"].ToString().Trim() == jcxmbm.ToString())
{
jgStr += zdDr["描述"].ToString().Trim() + "\r\n";
}
}
if (jcxmbm != 5708 && jcxmbm != 5713)
{
if (zdDr["诊断"].ToString().Trim() != "" && zdDr["诊断"].ToString().Trim() != "未见明显异常")
{
zdStr += zdDr["诊断"].ToString().Trim() + "\r\n";
}
else
{
if (zdDr["建议名称"].ToString().Trim() != "" && zdDr["建议名称"].ToString().Trim() != "未见明显异常")
{
zdStr += zdDr["建议名称"].ToString().Trim() + "\r\n";
}
}
}
}
if (jgStr != "")
{
jglr.zcjg = jgStr;
tbxzdjg.Text = jglr.zcjg;
}
if (zdStr == "")
{
zdStr = "未见明显异常";
}
}
}
if (jglr.flag == 3)
{
if (zdDt.Rows.Count != 0)
{
if (zdStr != "")
{
jglr.zcjg = zdStr;
}
}
}
}
jgStr = "";
zdStr = "";
}
}
private void dgvjcjg_SelectionChanged_1(object sender, EventArgs e)
{
if (dgvjcjg.SelectedRows.Count > 0)
{
if (!dgvjcjg.SelectedRows[0].Cells["flag"].Value.ToString().Equals("1") && !dgvjcjg.SelectedRows[0].Cells["flag"].Value.ToString().Equals("3"))
{
dgvjcjg.SelectedRows[0].Selected = false;
return;
}
int jcbm = Convert.ToInt32(dgvjcjg.SelectedRows[0].Cells["jcbm"].Value);
List<t_bwwh> data;
List<SOH.Entities.t_kszdjg> dataKszd;
if (jcbm != -2)
{ //tbxzdjg
var vservice = ServiceContainer.GetService<It_bwwh>();
data = vservice.getAllBwwh(jcbm);
var vserviceKs = ServiceContainer.GetService<It_kszdjg>();
dataKszd = vserviceKs.GetzdjgByjcxmID(jcbm);
//dgvtjbw.DataSource = data;
//dgvtjbw.Refresh();
//dgvzdjg.DataSource = dataKszd;
//dgvzdjg.Refresh();
}
else
{
var vserviceKs = ServiceContainer.GetService<It_jcxm>();
String text = vserviceKs.getAllJcxmStr(Convert.ToInt16(dgvbks.SelectedRows[0].Cells["ksbm"].Value));
DataTable dt = Newtonsoft.Json.JsonConvert.DeserializeObject(text, typeof(DataTable)) as DataTable;
//dgvtjbw.DataSource = null;
//dgvtjbw.Refresh();
//dgvzdjg.DataSource = dt;
//dgvzdjg.Refresh();
}
//dgvtjbw.ClearSelection();
//dgvzdjg.ClearSelection();
//dgvjgwh.DataSource = null;
tbxzdjg.Text = dgvjcjg.SelectedRows[0].Cells["zcjg"].Value.ToString();
if (dgvjcjg.SelectedRows[0].Cells["flag"].Value.ToString().Equals("3"))
{
tbxzdjg.Enabled = false;
if (Convert.ToInt16(LoginUser.yydm) == 2 && dgvbks.SelectedRows[0].Cells["ksbm"].Value.ToString().Equals("132"))
{
tbxzdjg.Enabled = true;
}
List<SOH.Entities.t_jglr> jg = dgvjcjg.DataSource as List<SOH.Entities.t_jglr>;
if (jg == null)
return;
////高压 血压(收缩压)
//var jggy = jg.FirstOrDefault(t => t.jcbm == 3905);
////var ckz =
//if (jggy != null)
//{
// var jggy1 = jg.FirstOrDefault(t => t.flag == 3);
// if (int.Parse(jggy.zcjg) > int.Parse(jggy.cksx))
// {
// if (jggy1.zcjg.Trim().IndexOf("血压偏高(收缩压)") < 0)
// {
// jggy1.zcjg += "血压偏高(收缩压)";
// }
// }
// if (int.Parse(jggy.zcjg) < int.Parse(jggy.ckxx))
// {
// if (jggy1.zcjg.Trim().IndexOf("血压偏低(收缩压)") < 0)
// {
// jggy1.zcjg += "血压偏低(收缩压)";
// }
// }
//}
////血压 血压(舒张压)
//var jgdy = jg.FirstOrDefault(t => t.jcbm == 3906);
//if (jgdy != null)
//{
// var jggy2 = jg.FirstOrDefault(t => t.flag == 3);
// if (int.Parse(jgdy.zcjg) > int.Parse(jgdy.cksx))
// {
// if (jggy2.zcjg.Trim().IndexOf("血压偏高(舒张压)") < 0)
// {
// jggy2.zcjg += "血压偏高(舒张压)";
// }
// }
// if (int.Parse(jgdy.zcjg) < int.Parse(jgdy.ckxx))
// {
// if (jggy2.zcjg.Trim().IndexOf("血压偏低(舒张压)") < 0)
// {
// jggy2.zcjg += "血压偏低(舒张压)";
// }
// }
//}
////体重指数
//var jgxl = jg.FirstOrDefault(t => t.jcbm == 3903);
//if (jgxl != null)
//{
// var jgzd1 = jg.FirstOrDefault(t => t.flag == 3);
// if (int.Parse(jgxl.zcjg) >= 24 && int.Parse(jgxl.zcjg) <= 28)
// {
// if (jgzd1.zcjg.Trim().IndexOf("体重指数>24") < 0)
// {
// jgzd1.zcjg += "体重指数>24\r\n";
// }
// }
// if (int.Parse(jgxl.zcjg) > 28)
// {
// if (jgzd1.zcjg.Trim().IndexOf("体重指数>28") < 0)
// {
// jgzd1.zcjg += "体重指数>28\r\n";
// }
// }
// if (int.Parse(jgxl.zcjg) < 18)
// {
// if (jgzd1.zcjg.Trim().IndexOf("体重指数<18") < 0)
// {
// jgzd1.zcjg += "体重指数<18\r\n";
// }
// }
//}
CrossDelegate dl = new CrossDelegate(shuaxin);
//string text = "test";
this.BeginInvoke(dl);
}
else
{
tbxzdjg.Enabled = true;
}
tbxzdjg.Focus();
}
}
private void dgvzdjg_SelectionChanged(object sender, EventArgs e)
{
//if (dgvzdjg.SelectedRows.Count > 0)
//{
// if (dgvjcjg.SelectedRows.Count <= 0)
// {
// return;
// }
// int jcbm = Convert.ToInt32(dgvjcjg.SelectedRows[0].Cells["jcbm"].Value);
// int zdxh = Convert.ToInt32(dgvzdjg.SelectedRows[0].Cells["zdxh"].Value);
// string zdjg = dgvzdjg.SelectedRows[0].Cells["zd"].Value.ToString().Trim();
// string k = zdjg.Substring(zdjg.Length - 1, 1);
// if (k.Equals("史"))
// {
// strJcxmmcStr = zdjg + ":";
// }
// else
// {
// strJcxmmcStr = "";
// }
// String dataStr;
// if (jcbm == -2)
// {
// var vservice = ServiceContainer.GetService<It_kszdjg>();
// dataStr = vservice.GetzdjgStrByKs(zdxh);
// }
// else
// {
// var vservice = ServiceContainer.GetService<It_jgwh>();
// dataStr = vservice.GetAllJgwhStr(zdxh);
// }
// dgvjgwh.DataSource = Newtonsoft.Json.JsonConvert.DeserializeObject(dataStr, typeof(DataTable)) as DataTable; ;
// dgvjgwh.ClearSelection();
// dgvjgwh.Refresh();
// //dgvjgwh.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.AllCells);
// dgvjgwh.AutoResizeRows(DataGridViewAutoSizeRowsMode.AllCellsExceptHeaders);
//}
}
private void dgvjgwh_CellClick(object sender, DataGridViewCellEventArgs e)
{
//if (dgvjgwh.SelectedRows.Count > 0)
//{
// if (dgvjgwh.SelectedRows[0].Cells["jgxz"].Value == null || dgvjgwh.SelectedRows[0].Cells["jgxz"].Value.Equals(false))
// {
// if (tbxzdjg.Text.IndexOf(dgvjgwh.SelectedRows[0].Cells["jcjg"].Value.ToString()) != -1)
// {
// if (MessageBox.Show("体检项目中已经包括所选项目,是否添加?", "提示", MessageBoxButtons.YesNo) == DialogResult.No)
// {
// return;
// }
// }
// }
// else
// {
// dgvjgwh.SelectedRows[0].Cells["jgxz"].Value = false;
// return;
// }
// String zdjg = "";
// //for (int i = 0; i < dgvtjbw.Rows.Count; i++)
// //{
// // if (dgvtjbw.Rows[i].Cells["xz"].Value != null && dgvtjbw.Rows[i].Cells["xz"].Value.Equals(true))
// // {
// // zdjg = zdjg + " " + dgvtjbw.Rows[i].Cells["tjbw"].Value;
// // }
// //}
// zdjg += " " + dgvjgwh.SelectedRows[0].Cells["jcjg"].Value;
// if (tbxzdjg.Text.Equals(dgvjcjg.SelectedRows[0].Cells["zcjg2"].Value == null ? "" : dgvjcjg.SelectedRows[0].Cells["zcjg2"].Value.ToString()))
// {
// tbxzdjg.Text = "";
// }
// if (strJcxmmcStr != "")
// {
// tbxzdjg.Text = tbxzdjg.Text + strJcxmmcStr + zdjg + "\r\n";
// }
// else
// {
// tbxzdjg.Text = tbxzdjg.Text + zdjg + "\r\n";
// }
// dgvjgwh.SelectedRows[0].Cells["jgxz"].Value = true;
//}
}
private void tbxzdjg_TextChanged(object sender, EventArgs e)
{
if (dgvjcjg.SelectedRows.Count > 0)
{
dgvjcjg.SelectedRows[0].Cells["zcjg"].Value = tbxzdjg.Text;
if (dgvbks.SelectedRows[0].Cells["ksbm"].Value.ToString().Equals("1")||
dgvbks.SelectedRows[0].Cells["ksbm"].Value.ToString().Equals("2")
)
{
double shengao = -1;
double tizhong = -1;
string ybjczd = "";
string ybjczd1 = "";
int gybj = 0;
int dybj = 0;
string szystring = "";
for (int i = 0; i < dgvjcjg.Rows.Count; i++)
{
try
{
if (dgvjcjg.Rows[i].Cells["jcbm"].Value.ToString().Equals("1"))
{
shengao = Convert.ToDouble(dgvjcjg.Rows[i].Cells["zcjg"].Value);
}
if (dgvjcjg.Rows[i].Cells["jcbm"].Value.ToString().Equals("2"))
{
tizhong = Convert.ToDouble(dgvjcjg.Rows[i].Cells["zcjg"].Value);
}
if (dgvjcjg.Rows[i].Cells["jcbm"].Value.ToString().Equals("3903"))
{
if (tizhong > 0 && shengao > 0)
{
dgvjcjg.Rows[i].Cells["zcjg"].Value = (tizhong / ((shengao / 100) * (shengao / 100))).ToString("0.00");
try
{
decimal cksx = Convert.ToDecimal(dgvjcjg.Rows[i].Cells["cksx"].Value);
decimal ckxx = Convert.ToDecimal(dgvjcjg.Rows[i].Cells["ckxx"].Value);
if (cksx != ckxx)
{
if (Convert.ToDecimal(dgvjcjg.Rows[i].Cells["zcjg"].Value) > 28)
{
dgvjcjg.Rows[i].Cells["zcjg"].Style.BackColor = Color.FromArgb(255, 0, 255);
ybjczd += "体重指数>28\r\n";
}
else if (Convert.ToDecimal(dgvjcjg.Rows[i].Cells["zcjg"].Value) > cksx && Convert.ToDecimal(dgvjcjg.Rows[i].Cells["zcjg"].Value) < 28)
{
dgvjcjg.Rows[i].Cells["zcjg"].Style.BackColor = Color.FromArgb(255, 0, 255);
ybjczd += "体重指数>24\r\n";
}
else if (Convert.ToDecimal(dgvjcjg.Rows[i].Cells["zcjg"].Value) < ckxx)
{
dgvjcjg.Rows[i].Cells["zcjg"].Style.BackColor = Color.FromArgb(255, 0, 255);
ybjczd += "体重指数<18\r\n";
}
else
{
ybjczd = "";
dgvjcjg.Rows[i].Cells["zcjg"].Style.BackColor = Color.White;
}
}
}
catch
{
}
}
}
if (LoginUser.yydm=="2" && dgvjcjg.Rows[i].Cells["jcbm"].Value.ToString().Equals("3904"))
{
if (Convert.ToDecimal(dgvjcjg.Rows[i].Cells["zcjg"].Value) > 100)
{
dgvjcjg.Rows[i].Cells["zcjg"].Style.BackColor = Color.FromArgb(255, 0, 255);
ybjczd += "心率偏高(" + Convert.ToDecimal(dgvjcjg.Rows[i].Cells["zcjg"].Value) + "次/分钟)\r\n";
}
if (Convert.ToDecimal(dgvjcjg.Rows[i].Cells["zcjg"].Value)<56)
{
dgvjcjg.Rows[i].Cells["zcjg"].Style.BackColor = Color.FromArgb(255, 0, 255);
ybjczd += "心率偏低(" + Convert.ToDecimal(dgvjcjg.Rows[i].Cells["zcjg"].Value) + "次/分钟)\r\n";
}
}
if (dgvjcjg.Rows[i].Cells["jcbm"].Value.ToString().Equals("3905"))
{
try
{
decimal cksx = Convert.ToDecimal(dgvjcjg.Rows[i].Cells["cksx"].Value);
decimal ckxx = Convert.ToDecimal(dgvjcjg.Rows[i].Cells["ckxx"].Value);
if (cksx != ckxx)
{
if (Convert.ToDecimal(dgvjcjg.Rows[i].Cells["zcjg"].Value) > cksx)
{
gybj++;
if (gybj < 2)
{
dgvjcjg.Rows[i].Cells["zcjg"].Style.BackColor = Color.FromArgb(255, 0, 255);
ybjczd1 += "血压偏高(收缩压)\r\n";
szystring = "血压偏高(收缩压)\r\n";
}
else
{
dgvjcjg.Rows[i].Cells["zcjg"].Style.BackColor = Color.FromArgb(255, 0, 255);
ybjczd1 = "血压偏高\r\n";
szystring = "血压偏高(收缩压)\r\n";
}
}
else if (Convert.ToDecimal(dgvjcjg.Rows[i].Cells["zcjg"].Value) < ckxx)
{
dybj++;
if (dybj < 2)
{
dgvjcjg.Rows[i].Cells["zcjg"].Style.BackColor = Color.FromArgb(255, 0, 255);
ybjczd1 += "血压偏低(收缩压)\r\n";
szystring = "血压偏低(收缩压)\r\n";
}
else
{
dgvjcjg.Rows[i].Cells["zcjg"].Style.BackColor = Color.FromArgb(255, 0, 255);
ybjczd1 = "血压偏低\r\n";
szystring = "血压偏低(收缩压)\r\n";
}
}
else
{
ybjczd1 = "";
szystring = "";
dgvjcjg.Rows[i].Cells["zcjg"].Style.BackColor = Color.White;
}
}
}
catch
{
}
}
if (dgvjcjg.Rows[i].Cells["jcbm"].Value.ToString().Equals("3906"))
{
try
{
decimal cksx = Convert.ToDecimal(dgvjcjg.Rows[i].Cells["cksx"].Value);
decimal ckxx = Convert.ToDecimal(dgvjcjg.Rows[i].Cells["ckxx"].Value);
if (cksx != ckxx)
{
if (Convert.ToDecimal(dgvjcjg.Rows[i].Cells["zcjg"].Value) > cksx)
{
gybj++;
if (gybj < 2)
{
dgvjcjg.Rows[i].Cells["zcjg"].Style.BackColor = Color.FromArgb(255, 0, 255);
ybjczd1 += "血压偏高(舒张压)\r\n";
}
else
{
dgvjcjg.Rows[i].Cells["zcjg"].Style.BackColor = Color.FromArgb(255, 0, 255);
ybjczd1 = "血压偏高\r\n";
}
}
else if (Convert.ToDecimal(dgvjcjg.Rows[i].Cells["zcjg"].Value) < ckxx)
{
dybj++;
if (dybj < 2)
{
dgvjcjg.Rows[i].Cells["zcjg"].Style.BackColor = Color.FromArgb(255, 0, 255);
ybjczd1 += "血压偏低(舒张压)\r\n";
}
else
{
ybjczd1 = "血压偏低\r\n";
}
}
else
{
if (szystring == "")
{
ybjczd1 = "";
dgvjcjg.Rows[i].Cells["zcjg"].Style.BackColor = Color.White;
}
else
{
ybjczd1 = szystring;
}
}
}
}
catch
{
}
}
if (dgvjcjg.Rows[i].Cells["flag"].Value.ToString().Equals("3"))
{
ybjczd += ybjczd1;
if (ybjczd.Length > 0)
{
dgvjcjg.Rows[i].Cells["zcjg"].Value = ybjczd;
}
else
{
dgvjcjg.Rows[i].Cells["zcjg"].Value = "未见明显异常";
}
gybj = 0;
dybj = 0;
}
}
catch (Exception ex)
{
}
}
}
if (dgvjcjg.SelectedRows[0].Cells["cksx"].Value != null && dgvjcjg.SelectedRows[0].Cells["ckxx"].Value != null)
{
try
{
decimal cksx = Convert.ToDecimal(dgvjcjg.SelectedRows[0].Cells["cksx"].Value);
decimal ckxx = Convert.ToDecimal(dgvjcjg.SelectedRows[0].Cells["ckxx"].Value);
if (cksx == ckxx)
{
return;
}
if (Convert.ToDecimal(tbxzdjg.Text) > cksx || Convert.ToDecimal(tbxzdjg.Text) < ckxx)
{
dgvjcjg.SelectedRows[0].Cells["zcjg"].Style.BackColor = Color.FromArgb(255, 0, 255);
}
else
{
dgvjcjg.SelectedRows[0].Cells["zcjg"].Style.BackColor = Color.White;
}
}
catch
{
}
}
}
}
private void button1_Click(object sender, EventArgs e)
{
DateTime dt = DateTime.Now;
string NowTime = dt.ToString("HH:mm:ss");
if (dgvbks.SelectedRows[0].Cells["ztz"].Value.ToString() == "4")
{
MessageBox.Show("已经保存,无法修改!");
return;
}
if (dgvbks.SelectedRows[0].Cells["ztz"].Value.ToString() == "2")
{
MessageBox.Show("已经放弃,无法修改!");
return;
}
if (dgvbks.SelectedRows[0].Cells["ztz"].Value.ToString() == "3")
{
MessageBox.Show("已经待查,无法修改!");
return;
}
if (LoginUser.yydm == "3")
{
if (LoginUser.xm != "系统管理员" || LoginUser.xm != "张立宪" || LoginUser.xm != "杜文经")
{
if (tjjd_zdys != "系统管理员")
{
if (LoginUser.xm != tjjd_zdys)
{
MessageBox.Show("结果已临时保存,请由" + tjjd_zdys + "本人账号完成保存!");
return;
}
}
}
}
if (dgvbks.SelectedRows[0].Cells["ksbm"].Value.ToString() == "21")
{
if (pathName == "")
{
if (MessageBox.Show("没有选择心电图报告,是否现在上传?!", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Asterisk) == DialogResult.Yes)
{
tabControl1.SelectTab(2);
return;
}
}
}
System.Configuration.Configuration conf = SOH.Configuration.LocalConfig.Config;
if (conf.AppSettings.Settings.AllKeys.Contains("qybccj") && conf.AppSettings.Settings["qybccj"].Value == "true")
{
if (!ckeckcc())
{
return;
}
}
for (int i = 0; i < dgvjcjg.Rows.Count; i++)
{
String flag = dgvjcjg.Rows[i].Cells["flag"].Value.ToString();
if (flag.Equals("1"))
{
t_tjjg tjjg = new t_tjjg();
tjjg.tm = Convert.ToInt32(tbxtm.Text);
tjjg.xmbm = Convert.ToInt32(dgvjcjg.Rows[i].Cells["jcbm"].Value);
tjjg.jg = dgvjcjg.Rows[i].Cells["zcjg"].Value.ToString();
tjjg.dw = dgvjcjg.Rows[i].Cells["dw"].Value.ToString();
tjjg.lx = 0;
tjjg.cksx = dgvjcjg.Rows[i].Cells["cksx"].Value.ToString();
tjjg.ckxx = dgvjcjg.Rows[i].Cells["ckxx"].Value.ToString();
tjjg.cksx = tjjg.cksx.Equals("") ? "0" : tjjg.cksx;
tjjg.ckxx = tjjg.ckxx.Equals("") ? "0" : tjjg.ckxx;
tjjg.czy = LoginUser.username;
var vservice = ServiceContainer.GetService<It_tjjg>();
vservice.Update(tjjg);
t_tempdjxm tempdjxm = new t_tempdjxm();
tempdjxm.tm = Convert.ToInt32(tbxtm.Text);
tempdjxm.zhbm = Convert.ToInt32(dgvjcjg.Rows[i].Cells["zhbm"].Value);
tempdjxm.djrq = dt;
tempdjxm.djsj = NowTime;
tempdjxm.ztz = 1;
tempdjxm.czy = LoginUser.username;
tempdjxm.upflag = 1;
tempdjxm.ksbm = Convert.ToInt16(dgvbks.SelectedRows[0].Cells["ksbm"].Value);
tempdjxm.operid = "";
var tempvs = ServiceContainer.GetService<It_tempdjxm>();
tempvs.updateZtz(tempdjxm);
}
else if (flag.Equals("3"))
{
t_tjjd tjjd = new t_tjjd();
tjjd.tm = Convert.ToInt32(tbxtm.Text);
tjjd.ksbm = Convert.ToInt16(dgvbks.SelectedRows[0].Cells["ksbm"].Value);
tjjd.zdjg = dgvjcjg.Rows[i].Cells["zcjg"].Value.ToString().Trim();
tjjd.zdys = LoginUser.xm;
tjjd.czy = LoginUser.username;
tjjd.djsj = DateTime.Now.ToString("yyyy-MM-dd");
if (LoginUser.yydm.ToString() == "2")
{
var vservice1 = ServiceContainer.GetService<IZongJian>();
tjjd.bz = vservice1.fanhuiJbtj(Convert.ToInt32(tbxtm.Text), Convert.ToInt16(dgvbks.SelectedRows[0].Cells["ksbm"].Value));
}
if (pathName != "")
{
//将图像读入到字节数组
System.IO.FileStream fs = new System.IO.FileStream(pathName, System.IO.FileMode.Open, System.IO.FileAccess.Read);
byte[] buffByte = new byte[fs.Length];
fs.Read(buffByte, 0, (int)fs.Length);
fs.Close();
fs = null;
tjjd.image = buffByte;
}
var vservice = ServiceContainer.GetService<It_tjjd>();
vservice.Update(tjjd, false, short.Parse(LoginUser.yydm));
}
}
dgvbks.SelectedRows[0].Cells["ztz"].Value = "1";
dgvbks.SelectedRows[0].DefaultCellStyle.BackColor = Color.FromArgb(255, 0, 255);
pathName = "";
tbxtm.Focus();
//开始排队
var FenDianService = ServiceContainer.GetService<IFenDian>();
FenDian fd = FenDianService.getFenDianById(Convert.ToInt32(LoginUser.yydm));
if (fd.isPaidui.ToString() == "1")
{
if (!pajh)
{
kstj(Convert.ToInt32(strBm));
pajh = true;
}
string ksid = "0";
try
{
ksid = SOH.Configuration.LocalConfig.Config.AppSettings.Settings["wlks"].Value;
}
catch (Exception ex)
{
EAS.Loggers.Logger.Warn(ex.Message);
}
var vser = ServiceContainer.GetService<IPaiDuiJiaoHao>();
string ksname = vser.wctj(strBm, ksid);
if (!string.IsNullOrEmpty(ksname))
{
if (ksname != "NO")
{
labpd.Visible = true;
labpd.Text = "临时保存完成!请到[" + ksname + "]体检!";
}
//MessageBox.Show("临时保存完成!请到" + ksname + "体检!");
}
else
{
MessageBox.Show("临时保存完成!体检结束");
}
//}
//else
//{
// MessageBox.Show("临时保存完成!");
//}
}
else
{
MessageBox.Show("临时保存完成!");
}
}
private bool PasswordEquals(byte[] b1, byte[] b2)
{
if (b1.Length != b2.Length)
{
return false;
}
if (b1 == null || b2 == null)
{
return false;
}
for (int i = 0; i < b1.Length; i++)
{
if (b1[i] != b2[i])
{
return true;
}
}
return false;
}
private void loadTm()
{
pic_zp.Image = null;
String bm = tbxtm.Text;
strBm = bm;
var ttservice = ServiceContainer.GetService<It_ttgzb>();
int tm = -999;
try
{
tm = Convert.ToInt32(bm);
}
catch
{
MessageBox.Show("条码输入错误!");
return;
}
labpd.Visible = false;
labpd.Text = "";
t_ttgzb ttgzb = ttservice.GetModelBytm(tm);
if (ttgzb == null)
{
var grservice = ServiceContainer.GetService<It_grgzb>();
t_grgzb grgzb = grservice.GetGrgzbByTm(Convert.ToInt32(bm));
if (grgzb == null)
{
return;
}
//lblxm.Text = grgzb.xm;
txtxm.Text = grgzb.xm;
lblxb.Text = grgzb.xb == 0 ? "男" : "女";
lblnl.Text = grgzb.nl.ToString();
lblhyzk.Text = grgzb.hyzk == 0 ? "未婚" : grgzb.hyzk == 1 ? "已婚" : "不限";
zdyx_xm = grgzb.xm;
zdyx_tmh = tbxtm.Text;
zdyx_xb = grgzb.xb == 0 ? "男" : "女";
zdyx_nl = grgzb.nl.ToString();
zdyx_lxdh = grgzb.dh.ToString();
zdyx_tjlx = "个检";
zdyx_tjrq = grgzb.tjrq.ToString();
try
{
System.IO.MemoryStream ms = new System.IO.MemoryStream(grgzb.image);
pic_zp.Image = Image.FromStream(ms);
string pzpath = System.Windows.Forms.Application.StartupPath + "\\pz.jpg";
System.IO.MemoryStream ms1 = new System.IO.MemoryStream();
Image.FromFile(pzpath).Save(ms1, ImageFormat.Jpeg);
if (PasswordEquals(ms1.ToArray(), grgzb.image))
{
frmPicZp pz = new frmPicZp(grgzb.image);
pz.StartPosition = FormStartPosition.CenterScreen;
pz.ShowDialog();
}
}
catch
{
}
}
else
{
try
{
System.IO.MemoryStream ms = new System.IO.MemoryStream(ttgzb.image);
pic_zp.Image = Image.FromStream(ms);
string pzpath = System.Windows.Forms.Application.StartupPath + "\\pz.jpg";
System.IO.MemoryStream ms1 = new System.IO.MemoryStream();
Image.FromFile(pzpath).Save(ms1, ImageFormat.Jpeg);
if (PasswordEquals(ms1.ToArray(), ttgzb.image))
{
frmPicZp pz = new frmPicZp(ttgzb.image);
pz.StartPosition = FormStartPosition.CenterScreen;
pz.ShowDialog();
}
}
catch
{ }
//lblxm.Text = ttgzb.xm;
txtxm.Text = ttgzb.xm;
lblxb.Text = ttgzb.xb == 0 ? "男" : "女";
lblnl.Text = ttgzb.nl.ToString();
lblhyzk.Text = ttgzb.hyzk1.ToString();
zdyx_xm = ttgzb.xm;
zdyx_tmh = tbxtm.Text;
zdyx_xb = ttgzb.xb == 0 ? "男" : "女";
zdyx_nl = ttgzb.nl.ToString();
zdyx_lxdh = ttgzb.tel.ToString();
zdyx_tjlx = "团检";
zdyx_tjrq = ttgzb.tjrq.ToString();
}
if (sp_sgtz.IsOpen)
{
byte[] bs = new byte[7];
bs[0] = 2;
bs[6] = 3;
bs[1] = 0x32;
bs[3] = 0x3b;
bs[4] = 0x3b;
if (lblxb.Text == "男")
{
bs[2] = 0x34;
bs[5] = 0xdc;
sp_sgtz.Write(bs, 0, 7);
}
else if (lblxb.Text == "女")
{
bs[2] = 0x35;
bs[5] = 0xdd;
sp_sgtz.Write(bs, 0, 7);
}
}
var vservice = ServiceContainer.GetService<It_tempdjxm>();
String data = vservice.getBenKeShi(bm, LoginUser.username);
String qitadata = vservice.getQiTaKeShi(bm, LoginUser.username);
DataTable dt = Newtonsoft.Json.JsonConvert.DeserializeObject(data, typeof(DataTable)) as DataTable;
dgvbks.DataSource = dt;
dgvbks.Refresh();
DataTable dtqt = Newtonsoft.Json.JsonConvert.DeserializeObject(qitadata, typeof(DataTable)) as DataTable;
dgbqtks.DataSource = dtqt;
for (int i = 0; i < dgvbks.RowCount; i++)
{
if (dgvbks.Rows[i].Cells["ztz"].Value.ToString() == "1")
{
dgvbks.Rows[i].DefaultCellStyle.BackColor = Color.FromArgb(255, 0, 255); ;
}
else if (dgvbks.Rows[i].Cells["ztz"].Value.ToString() == "4")
{
dgvbks.Rows[i].DefaultCellStyle.BackColor = Color.FromArgb(128, 255, 128);
}
}
for (int i = 0; i < dgbqtks.RowCount; i++)
{
if (dgbqtks.Rows[i].Cells["ztzqt"].Value.ToString() == "1")
{
dgbqtks.Rows[i].DefaultCellStyle.BackColor = Color.FromArgb(255, 0, 255);
}
else if (dgbqtks.Rows[i].Cells["ztzqt"].Value.ToString() == "4")
{
dgbqtks.Rows[i].DefaultCellStyle.BackColor = Color.FromArgb(128, 255, 128);
}
}
dgbqtks.Refresh();
cc_imgs.Images.Clear();
lv_caiji.Items.Clear();
imgs.Clear();
loadJcjg();
//System.Configuration.Configuration cm = System.Configuration.ConfigurationManager.OpenExeConfiguration(AppDomain.CurrentDomain.BaseDirectory + "\\local.ext");
//string isOpen = cm.AppSettings.Settings["isOpenPaidui"].Value;
var FenDianService = ServiceContainer.GetService<IFenDian>();
FenDian fd = FenDianService.getFenDianById(Convert.ToInt32(LoginUser.yydm));
if (fd.isPaidui.ToString() == "1" && pajh)
{
kstj(tm);
}
//CT二次审核代码
if (dt.Rows.Count != 0 && fd.fddm == 2)
{
foreach (DataRow dr in dt.Rows)
{
if ("CT".Equals(dr["ksmc"].ToString().Trim()) && "4".Equals(dr["ztz"].ToString()))
{
this.button6.Visible = true;
}
}
}
}
private void kstj(int tm)
{
//throw new NotImplementedException();
string ksid = "0";
try
{
ksid = SOH.Configuration.LocalConfig.Config.AppSettings.Settings["wlks"].Value;
}
catch (Exception ex)
{
EAS.Loggers.Logger.Warn(ex.Message);
}
var vser = ServiceContainer.GetService<IPaiDuiJiaoHao>();
vser.kstj(tm, ksid);
}
private void tbxtm_KeyPress(object sender, KeyPressEventArgs e)
{
if (e.KeyChar == (char)13)
{
pajh = true;
loadTm();
}
}
private void dgvjcjg_KeyPress(object sender, KeyPressEventArgs e)
{
if (dgvjcjg.SelectedRows.Count <= 0)
{
return;
}
else
{
int selectIndex = dgvjcjg.SelectedRows[0].Index;
if (selectIndex >= dgvjcjg.Rows.Count)
{
return;
}
else
{
selectIndex++;
for (int i = selectIndex; i < dgvjcjg.Rows.Count; i++)
{
if (dgvjcjg.Rows[i].Cells["flag"].Value.Equals("1") || dgvjcjg.Rows[i].Cells["flag"].Value.Equals("4"))
{
i++;
}
else
{
dgvjcjg.Rows[i].Cells["zcjg"].Selected = true;
break;
}
}
}
}
}
private void dgvjcjg_KeyPress(object sender, KeyEventArgs e)
{
}
private void dgvjcjg_KeyPress(object sender, PreviewKeyDownEventArgs e)
{
}
private void dgbqtks_SelectionChanged(object sender, EventArgs e)
{
loadqtksJcjg();
}
private void tbxzdjg_KeyPress(object sender, KeyPressEventArgs e)
{
}
private void tbxzdjg_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode.ToString().Equals("F1"))
{
if (dgvjcjg.SelectedRows.Count <= 0)
{
return;
}
else
{
int selectIndex = dgvjcjg.SelectedRows[0].Index;
if (selectIndex >= dgvjcjg.Rows.Count)
{
return;
}
else
{
selectIndex++;
for (int i = selectIndex; i < dgvjcjg.Rows.Count; i++)
{
if (dgvjcjg.Rows[i].Cells["flag"].Value.ToString().Equals("2") || dgvjcjg.Rows[i].Cells["flag"].Value.ToString().Equals("4"))
{
i++;
}
else
{
dgvjcjg.Rows[i].Cells["zcjg"].Selected = true;
tbxzdjg.Text = "";
break;
}
}
}
}
}
}
private void dgvqtksjcjg_CellClick(object sender, DataGridViewCellEventArgs e)
{
if (dgvqtksjcjg.SelectedRows.Count > 0)
{
tbxqtjcjg.Text = dgvqtksjcjg.SelectedRows[0].Cells["zcjgqt"].Value.ToString();
}
}
string xdsj = "";
private void sp_dzxy_DataReceived(object sender, System.IO.Ports.SerialDataReceivedEventArgs e)
{
int readcount = sp_dzxy.BytesToRead;
while (readcount > 0)
{
byte[] bs = new byte[readcount];
sp_dzxy.Read(bs, 0, readcount);
xdsj += System.Text.Encoding.ASCII.GetString(bs);
readcount = sp_dzxy.BytesToRead;
}
if (xdsj.EndsWith("\u000d"))
clxd();
}
private void clxd()
{
int gyxmbh = 0;
int dyxmbh = 0;
int xlbh = 0;
System.Configuration.Configuration conf = SOH.Configuration.LocalConfig.Config;
if (conf.AppSettings.Settings.AllKeys.Contains("DZXYY_SSY"))
{
int.TryParse(conf.AppSettings.Settings["DZXYY_SSY"].Value, out gyxmbh);
}
if (conf.AppSettings.Settings.AllKeys.Contains("DZXYY_SZY"))
{
int.TryParse(conf.AppSettings.Settings["DZXYY_SZY"].Value, out dyxmbh);
}
if (conf.AppSettings.Settings.AllKeys.Contains("DZXYY_XL"))
{
int.TryParse(conf.AppSettings.Settings["DZXYY_XL"].Value, out xlbh);
}
string sj = xdsj;
xdsj = "";
if (sj.Length != 59)
return;
string gy = int.Parse(sj.Substring(41, 3)).ToString();
string dy = int.Parse(sj.Substring(49, 3)).ToString();
string xl = int.Parse(sj.Substring(53, 3)).ToString();
List<SOH.Entities.t_jglr> jg = dgvjcjg.DataSource as List<SOH.Entities.t_jglr>;
if (jg == null)
return;
var jggy = jg.FirstOrDefault(t => t.jcbm == gyxmbh && gyxmbh != 0);
var jgdy = jg.FirstOrDefault(t => t.jcbm == dyxmbh && dyxmbh != 0);
jggy.zcjg = gy;
jgdy.zcjg = dy;
//var ckz =
if (jggy != null)
{
var jggy1 = jg.FirstOrDefault(t => t.flag == 3);
jggy1.zcjg = "";
if (int.Parse(gy) > int.Parse(jggy.cksx) && int.Parse(dy) > int.Parse(jgdy.cksx))
{
if (jggy1.zcjg.Trim() == "未见明显异常" || jggy1.zcjg.Trim() == "血压偏高")
{
jggy1.zcjg = "";
}
jggy1.zcjg += "血压偏高\r\n";
}
else if (int.Parse(gy) < int.Parse(jggy.ckxx) && int.Parse(dy) < int.Parse(jgdy.ckxx))
{
if (jggy1.zcjg.Trim() == "未见明显异常" || jggy1.zcjg.Trim() == "血压偏低")
jggy1.zcjg = "";
jggy1.zcjg += "血压偏低\r\n";
}
else if (int.Parse(gy) > int.Parse(jggy.cksx) || int.Parse(dy) > int.Parse(jgdy.cksx))
{
if (int.Parse(gy) > int.Parse(jggy.cksx))
{
if (jggy1.zcjg.Trim() == "未见明显异常")
jggy1.zcjg = "";
jggy1.zcjg += "血压偏高(收缩压)\r\n";
}
else if (int.Parse(dy) > int.Parse(jgdy.cksx))
{
if (jggy.zcjg.Trim() == "未见明显异常")
jggy.zcjg = "";
jggy.zcjg += "血压偏高(舒张压)\r\n";
}
}
else if (int.Parse(gy) < int.Parse(jggy.ckxx) || int.Parse(dy) < int.Parse(jgdy.ckxx))
{
if (int.Parse(gy) < int.Parse(jggy.ckxx))
{
if (jggy1.zcjg.Trim() == "未见明显异常")
jggy1.zcjg = "";
jggy1.zcjg += "血压偏低(收缩压)\r\n";
}
else if (int.Parse(dy) < int.Parse(jgdy.ckxx))
{
if (jggy1.zcjg.Trim() == "未见明显异常")
jggy1.zcjg = "";
jggy1.zcjg += "血压偏低(舒张压)\r\n";
}
}
if (jggy1.zcjg.Trim() == "")
{
jggy1.zcjg = "未见明显异常";
}
}
//if (jgdy != null)
//{
// jgdy.zcjg = dy;
// var jggy2 = jg.FirstOrDefault(t => t.flag == 3);
// if (int.Parse(dy) > int.Parse(jgdy.cksx))
// {
// if (jggy2.zcjg.Trim() == "未见明显异常")
// jggy2.zcjg = "";
// jggy2.zcjg += "血压偏高(舒张压)";
// }
// if (int.Parse(dy) < int.Parse(jgdy.ckxx))
// {
// if (jggy2.zcjg.Trim() == "未见明显异常")
// jggy2.zcjg = "";
// jggy2.zcjg += "血压偏低(舒张压)";
// }
//}
var jgxl = jg.FirstOrDefault(t => t.jcbm == xlbh && xlbh != 0);
if (jgxl != null)
{
jgxl.zcjg = xl;
var jggy3 = jg.FirstOrDefault(t => t.flag == 3);
//if (int.Parse(xl) > 95)
if (int.Parse(xl) > 100)
{
if (jggy3.zcjg.Trim() == "未见明显异常")
jggy3.zcjg = "";
jggy3.zcjg += "心率偏高(" + xl + "次/分钟)\r\n";
}
//if (int.Parse(xl) < 60)
if (int.Parse(xl) < 56)
{
if (jggy3.zcjg.Trim() == "未见明显异常")
jggy3.zcjg = "";
jggy3.zcjg += "心率偏低(" + xl + "次/分钟)\r\n";
}
}
CrossDelegate dl = new CrossDelegate(shuaxin);
//string text = "test";
this.BeginInvoke(dl);
}
private void frmYiShengJieGuoLuRu_FormClosing(object sender, FormClosingEventArgs e)
{
drtjcx.yslr = null;
if (cj != null)
{
cj.Close();
}
if (sp_dzxy.IsOpen)
{
sp_dzxy.Close();
}
if (sp_sgtz.IsOpen)
{
sp_sgtz.Close();
}
try
{
if (dgvbks.SelectedRows[0].Cells["ztz"].Value.ToString() == "0")
{
short ksbm = Convert.ToInt16(dgvbks.SelectedRows[0].Cells["ksbm"].Value.ToString());
int tm = Convert.ToInt32(strBm);
var service = ServiceContainer.GetService<IZongJian>();
service.DeletJbtj(tm, ksbm);
}
}
catch { }
}
private void shuaxin()
{
dgvjcjg.Refresh();
}
public delegate void CrossDelegate();
string sgtz = "";
private void sp_sgtz_DataReceived(object sender, System.IO.Ports.SerialDataReceivedEventArgs e)
{
if (sgtz == "")
{
MessageBox.Show("开始测量");
}
else
{
MessageBox.Show("测量结束");
}
int readcount = sp_sgtz.BytesToRead;
while (readcount > 0)
{
byte[] bs = new byte[readcount];
sp_sgtz.Read(bs, 0, readcount);
sgtz += System.Text.Encoding.GetEncoding("GB2312").GetString(bs);
readcount = sp_sgtz.BytesToRead;
}
if (sgtz.EndsWith("**********本次测量完毕**********\r\n\r\n"))
{
if (LoginUser.yydm == "1")
{
clsgtz();
}
else
{
zbclsgtz();
}
}
else
{
if (LoginUser.yydm == "1")
{
clsgtz();
}
else
{
zbclsgtz();
}
}
//
}
private void zbclsgtz()
{
int sgbh = 0;
int tzbh = 0;
int bmibh = 0;
//德州额外增加
int lxtzbh = 0; //理想体重 编码
int tzflbh = 0; //体脂肪率 编码
int nzzfdjbh = 0; //内脏脂肪等级 编码
int tsflbh = 0; //体水份率 编码
int jrlbh = 0; //肌肉量 编码
int tdglbh = 0; //推定骨量 编码
int jcdxbh = 0; //基础代谢 编码
int zsyydbh = 0; //最适宜运动 编码
int rxnlbh = 0; //日需能量 编码
int phyybh = 0; //平衡营养 编码
int jkzsbh = 0; //健康指数 编码
System.Configuration.Configuration conf = SOH.Configuration.LocalConfig.Config;
if (conf.AppSettings.Settings.AllKeys.Contains("SGTZY_SG"))
{
int.TryParse(conf.AppSettings.Settings["SGTZY_SG"].Value, out sgbh);
}
if (conf.AppSettings.Settings.AllKeys.Contains("SGTZY_TZ"))
{
int.TryParse(conf.AppSettings.Settings["SGTZY_TZ"].Value, out tzbh);
}
if (conf.AppSettings.Settings.AllKeys.Contains("SGTZY_TZZS"))
{
int.TryParse(conf.AppSettings.Settings["SGTZY_TZZS"].Value, out bmibh);
}
//德州额外增加
if (conf.AppSettings.Settings.AllKeys.Contains("SGTZY_LXTZ"))
{
int.TryParse(conf.AppSettings.Settings["SGTZY_LXTZ"].Value, out lxtzbh);
}
if (conf.AppSettings.Settings.AllKeys.Contains("SGTZY_TZFL"))
{
int.TryParse(conf.AppSettings.Settings["SGTZY_TZFL"].Value, out tzflbh);
}
if (conf.AppSettings.Settings.AllKeys.Contains("SGTZY_NZZFDJ"))
{
int.TryParse(conf.AppSettings.Settings["SGTZY_NZZFDJ"].Value, out nzzfdjbh);
}
if (conf.AppSettings.Settings.AllKeys.Contains("SGTZY_TSFL"))
{
int.TryParse(conf.AppSettings.Settings["SGTZY_TSFL"].Value, out tsflbh);
}
if (conf.AppSettings.Settings.AllKeys.Contains("SGTZY_JRL"))
{
int.TryParse(conf.AppSettings.Settings["SGTZY_JRL"].Value, out jrlbh);
}
if (conf.AppSettings.Settings.AllKeys.Contains("SGTZY_TDGL"))
{
int.TryParse(conf.AppSettings.Settings["SGTZY_TDGL"].Value, out tdglbh);
}
if (conf.AppSettings.Settings.AllKeys.Contains("SGTZY_JCDX"))
{
int.TryParse(conf.AppSettings.Settings["SGTZY_JCDX"].Value, out jcdxbh);
}
if (conf.AppSettings.Settings.AllKeys.Contains("SGTZY_ZSYYD"))
{
int.TryParse(conf.AppSettings.Settings["SGTZY_ZSYYD"].Value, out zsyydbh);
}
if (conf.AppSettings.Settings.AllKeys.Contains("SGTZY_RXNL"))
{
int.TryParse(conf.AppSettings.Settings["SGTZY_RXNL"].Value, out rxnlbh);
}
if (conf.AppSettings.Settings.AllKeys.Contains("SGTZY_PHYY"))
{
int.TryParse(conf.AppSettings.Settings["SGTZY_PHYY"].Value, out phyybh);
}
if (conf.AppSettings.Settings.AllKeys.Contains("SGTZY_JKZS"))
{
int.TryParse(conf.AppSettings.Settings["SGTZY_JKZS"].Value, out jkzsbh);
}
string sj = sgtz;
sgtz = "";
int pos = sj.IndexOf("*******当前测量项测量结果*******");
if (pos < 0)
return;
sj = sj.Substring(pos);
//MessageBox.Show(sj);
try
{
pos = sj.IndexOf("身高");
if (pos < 0)
return;
double sg = 0;
string ssg = "";
pos = pos + 2;
while (true)
{
string a = sj.Substring(pos, 1);
if (a == "c")
{
break;
}
ssg += a;
pos++;
}
double.TryParse(ssg.Trim(), out sg);
pos = sj.IndexOf("体重");
if (pos < 0)
return;
double tz = 0;
string stz = "";
pos = pos + 2;
while (true)
{
string a = sj.Substring(pos, 1);
if (a == "k")
{
break;
}
stz += a;
pos++;
}
double.TryParse(stz.Trim(), out tz);
pos = sj.IndexOf("BMI");
if (pos < 0)
return;
double bmi = 0;
string sbmi = "";
pos = pos + 3;
while (true)
{
string a = sj.Substring(pos, 1);
if (a == "(")
{
break;
}
sbmi += a;
pos++;
}
double.TryParse(sbmi.Trim(), out bmi);
pos = sj.IndexOf("理想体重");
if (pos < 0)
return;
string slxtz = "";
pos = pos + 4;
while (true)
{
string a = sj.Substring(pos, 1);
if (a == "g")
{
break;
}
slxtz += a;
pos++;
}
pos = sj.IndexOf("体脂肪率");
if (pos < 0)
return;
string stzfl = "";
pos = pos + 4;
while (true)
{
string a = sj.Substring(pos, 1);
if (a == ")")
{
break;
}
stzfl += a;
pos++;
}
pos = sj.IndexOf("内脏脂肪等级");
if (pos < 0)
return;
string snzzfdj = "";
pos = pos + 6;
while (true)
{
string a = sj.Substring(pos, 1);
if (a == ")")
{
break;
}
snzzfdj += a;
pos++;
}
pos = sj.IndexOf("体水份率");
if (pos < 0)
return;
string stsfl = "";
pos = pos + 4;
while (true)
{
string a = sj.Substring(pos, 1);
if (a == ")")
{
break;
}
stsfl += a;
pos++;
}
pos = sj.IndexOf("肌肉量");
if (pos < 0)
return;
string sjrl = "";
pos = pos + 3;
while (true)
{
string a = sj.Substring(pos, 1);
if (a == ")")
{
break;
}
sjrl += a;
pos++;
}
pos = sj.IndexOf("推定骨量");
if (pos < 0)
return;
string stdgl = "";
pos = pos + 4;
while (true)
{
string a = sj.Substring(pos, 1);
if (a == "g")
{
break;
}
stdgl += a;
pos++;
}
pos = sj.IndexOf("基础代谢");
if (pos < 0)
return;
string sjcdx = "";
pos = pos + 4;
while (true)
{
string a = sj.Substring(pos, 1);
if (a == ")")
{
break;
}
sjcdx += a;
pos++;
}
pos = sj.IndexOf("最适宜运动");
if (pos < 0)
return;
string szsyyd = "";
pos = pos + 5;
while (true)
{
string a = sj.Substring(pos, 1);
if (a == ")")
{
break;
}
szsyyd += a;
pos++;
}
pos = sj.IndexOf("日需能量");
if (pos < 0)
return;
string srxnl = "";
pos = pos + 11;
while (true)
{
string a = sj.Substring(pos, 1);
if (a == "l")
{
break;
}
srxnl += a;
pos++;
}
pos = sj.IndexOf("平衡营养");
if (pos < 0)
return;
string sphyy = "";
pos = pos + 4;
while (true)
{
string a = sj.Substring(pos, 1);
if (a == "l")
{
break;
}
sphyy += a;
pos++;
}
pos = sj.IndexOf("健康指数");
if (pos < 0)
return;
string sjkzs = "";
pos = pos + 5;
while (true)
{
string a = sj.Substring(pos, 1);
if (a == ")")
{
break;
}
sjkzs += a;
pos++;
}
List<SOH.Entities.t_jglr> jg = dgvjcjg.DataSource as List<SOH.Entities.t_jglr>;
if (jg == null)
return;
var jggy = jg.FirstOrDefault(t => t.jcbm == sgbh && sgbh != 0);
if (jggy != null)
{
jggy.zcjg = sg.ToString();
}
var jgdy = jg.FirstOrDefault(t => t.jcbm == tzbh && tzbh != 0);
if (jgdy != null)
{
jgdy.zcjg = tz.ToString();
}
var jgxl = jg.FirstOrDefault(t => t.jcbm == bmibh && bmibh != 0);
if (jgxl != null)
{
jgxl.zcjg = bmi.ToString();
var jgzd1 = jg.FirstOrDefault(t => t.flag == 3);
if (bmi >= 24 && bmi <= 28)
{
if (jgzd1.zcjg.Trim() == "未见明显异常")
jgzd1.zcjg = "";
jgzd1.zcjg += "体重指数>24\r\n";
}
if (bmi > 28)
{
if (jgzd1.zcjg.Trim() == "未见明显异常")
jgzd1.zcjg = "";
jgzd1.zcjg += "体重指数>28\r\n";
}
if (bmi < 18)
{
if (jgzd1.zcjg.Trim() == "未见明显异常")
jgzd1.zcjg = "";
jgzd1.zcjg += "体重指数<18\r\n";
}
}
//淄博身高体重仪 增加代码
var jglxtz = jg.FirstOrDefault(t => t.jcbm == lxtzbh && lxtzbh != 0);
if (jglxtz != null)
{
jglxtz.zcjg = slxtz.Trim() + "g";
}
var jgtzfl = jg.FirstOrDefault(t => t.jcbm == tzflbh && tzflbh != 0);
if (jgtzfl != null)
{
jgtzfl.zcjg = stzfl.Trim() + ")";
}
var jgnzzfdj = jg.FirstOrDefault(t => t.jcbm == nzzfdjbh && nzzfdjbh != 0);
if (jgnzzfdj != null)
{
jgnzzfdj.zcjg = snzzfdj.Trim() + ")";
}
var jgtsfl = jg.FirstOrDefault(t => t.jcbm == tsflbh && tsflbh != 0);
if (jgtsfl != null)
{
jgtsfl.zcjg = stsfl.Trim() + ")";
}
var jgjrl = jg.FirstOrDefault(t => t.jcbm == jrlbh && jrlbh != 0);
if (jgjrl != null)
{
jgjrl.zcjg = sjrl.Trim() + ")";
}
var jgtdgl = jg.FirstOrDefault(t => t.jcbm == tdglbh && tdglbh != 0);
if (jgtdgl != null)
{
jgtdgl.zcjg = stdgl.Trim() + "g";
}
var jgjcdx = jg.FirstOrDefault(t => t.jcbm == jcdxbh && jcdxbh != 0);
if (jgjcdx != null)
{
jgjcdx.zcjg = sjcdx.Trim() + ")";
}
var jgzsyyd = jg.FirstOrDefault(t => t.jcbm == zsyydbh && zsyydbh != 0);
if (jgzsyyd != null)
{
jgzsyyd.zcjg = szsyyd.Trim() + ")";
}
var jgrxnl = jg.FirstOrDefault(t => t.jcbm == rxnlbh && rxnlbh != 0);
if (jgrxnl != null)
{
jgrxnl.zcjg = srxnl.Trim() + "l";
}
var jgphyy = jg.FirstOrDefault(t => t.jcbm == phyybh && phyybh != 0);
if (jgphyy != null)
{
jgphyy.zcjg = sphyy.Trim() + "l";
}
var jgjkzs = jg.FirstOrDefault(t => t.jcbm == jkzsbh && jkzsbh != 0);
if (jgjkzs != null)
{
jgjkzs.zcjg = sjkzs.Trim() + ")";
}
CrossDelegate dl = new CrossDelegate(shuaxin);
//string text = "test";
this.BeginInvoke(dl);
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}
private void clsgtz()
{
int sgbh = 0;
int tzbh = 0;
int bmibh = 0;
System.Configuration.Configuration conf = SOH.Configuration.LocalConfig.Config;
if (conf.AppSettings.Settings.AllKeys.Contains("SGTZY_SG"))
{
int.TryParse(conf.AppSettings.Settings["SGTZY_SG"].Value, out sgbh);
}
if (conf.AppSettings.Settings.AllKeys.Contains("SGTZY_TZ"))
{
int.TryParse(conf.AppSettings.Settings["SGTZY_TZ"].Value, out tzbh);
}
if (conf.AppSettings.Settings.AllKeys.Contains("SGTZY_TZZS"))
{
int.TryParse(conf.AppSettings.Settings["SGTZY_TZZS"].Value, out bmibh);
}
//throw new NotImplementedException();
string sj = sgtz;
//MessageBox.Show(sj);
sgtz = "";
int pos = sj.IndexOf("*******当前测量项测量结果*******");
if (pos < 0)
return;
sj = sj.Substring(pos);
pos = sj.IndexOf("身高");
if (pos < 0)
return;
double sg = 0;
string ssg = "";
pos = pos + 2;
while (true)
{
string a = sj.Substring(pos, 1);
if (a == "c")
{
break;
}
ssg += a;
pos++;
}
double.TryParse(ssg.Trim(), out sg);
pos = sj.IndexOf("体重");
if (pos < 0)
return;
double tz = 0;
string stz = "";
pos = pos + 2;
while (true)
{
string a = sj.Substring(pos, 1);
if (a == "k")
{
break;
}
stz += a;
pos++;
}
double.TryParse(stz.Trim(), out tz);
pos = sj.IndexOf("BMI");
if (pos < 0)
return;
double bmi = 0;
string sbmi = "";
pos = pos + 3;
while (true)
{
string a = sj.Substring(pos, 1);
if (a == "(")
{
break;
}
sbmi += a;
pos++;
}
double.TryParse(sbmi.Trim(), out bmi);
List<SOH.Entities.t_jglr> jg = dgvjcjg.DataSource as List<SOH.Entities.t_jglr>;
if (jg == null)
return;
var jggy = jg.FirstOrDefault(t => t.jcbm == sgbh && sgbh != 0);
//var jgxl = jg.FirstOrDefault(t => t.jcbm == bmibh && bmibh != 0);
if (jggy != null)
{
jggy.zcjg = bmi.ToString();
var jgzd1 = jg.FirstOrDefault(t => t.flag == 3);
if (bmi >= 24 && bmi <= 28)
{
if (jgzd1.zcjg.Trim() == "未见明显异常")
jgzd1.zcjg = "";
jgzd1.zcjg += "体重指数>24\r\n";
}
if (bmi > 28)
{
if (jgzd1.zcjg.Trim() == "未见明显异常")
jgzd1.zcjg = "";
jgzd1.zcjg += "体重指数>28\r\n";
}
if (bmi < 18)
{
if (jgzd1.zcjg.Trim() == "未见明显异常")
jgzd1.zcjg = "";
jgzd1.zcjg += "体重指数<18\r\n";
}
}
if (jggy != null)
{
jggy.zcjg = sg.ToString();
}
var jgdy = jg.FirstOrDefault(t => t.jcbm == tzbh && tzbh != 0);
if (jgdy != null)
{
jgdy.zcjg = tz.ToString();
}
var jgxl = jg.FirstOrDefault(t => t.jcbm == bmibh && bmibh != 0);
if (jgxl != null)
{
jgxl.zcjg = bmi.ToString();
}
CrossDelegate dl = new CrossDelegate(shuaxin);
//string text = "test";
this.BeginInvoke(dl);
}
private void button3_Click(object sender, EventArgs e)
{
string ksid = "0";
try
{
ksid = SOH.Configuration.LocalConfig.Config.AppSettings.Settings["wlks"].Value;
}
catch (Exception ex)
{
EAS.Loggers.Logger.Warn(ex.Message);
}
var vser = ServiceContainer.GetService<IPaiDuiJiaoHao>();
string ksname = vser.wctj(strBm, ksid);
if (!string.IsNullOrEmpty(ksname))
{
if (ksname != "NO")
MessageBox.Show("请到" + ksname + "体检!");
}
else
{
MessageBox.Show("体检结束");
}
}
private void button4_Click(object sender, EventArgs e)
{
openFileDialog1.Title = "请选择上传的图片";
//设置筛选的图片格式
openFileDialog1.Filter = "图片格式|*.jpg";
//设置是否允许多选
openFileDialog1.Multiselect = false;
if (this.openFileDialog1.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
pathName = this.openFileDialog1.FileName;
System.Drawing.Image img = System.Drawing.Image.FromFile(pathName);
this.pictureBox1.Image = img;
}
}
private void tabControl1_SelectedIndexChanged(object sender, EventArgs e)
{
if (tabControl1.SelectedTab == tabPage3)
{
var tjjdservice = ServiceContainer.GetService<It_tjjd>();
t_tjjd tjjd = tjjdservice.getTjjd(tbxtm.Text.ToString(), 21);
try
{
System.IO.MemoryStream ms = new System.IO.MemoryStream(tjjd.image);
pictureBox1.Image = Image.FromStream(ms);
}
catch
{
}
}
}
List<Image> imgs = new List<Image>();
private void lv_caiji_MouseDoubleClick(object sender, MouseEventArgs e)
{
var item = lv_caiji.FocusedItem;
frm_img_show fis = new frm_img_show();
fis.setimg(imgs[item.ImageIndex] as Bitmap);
fis.ShowDialog();
}
private void button5_Click(object sender, EventArgs e)
{
SGTZY_START();
}
private void button6_Click(object sender, EventArgs e)
{
for (int i = 0; i < dgvjcjg.Rows.Count; i++)
{
String flag = dgvjcjg.Rows[i].Cells["flag"].Value.ToString();
if (flag.Equals("3"))
{
if ("CT".Equals(dgvbks.SelectedRows[0].Cells["ksmc"].Value.ToString()))
{
//t_tjjd tjjd = new t_tjjd();
/*tjjd.tm = Convert.ToInt32(tbxtm.Text);
tjjd.ksbm = Convert.ToInt16(dgvbks.SelectedRows[0].Cells["ksbm"].Value);
tjjd.czy = "王元玺";
var vservice = ServiceContainer.GetService<It_tjjd>();
vservice.Update(tjjd, false, short.Parse(LoginUser.yydm));
MessageBox.Show(vservice.Update1(tjjd).Message);*/
t_tjjd tjjd = new t_tjjd();
tjjd.tm = Convert.ToInt32(tbxtm.Text);
tjjd.ksbm = Convert.ToInt16(dgvbks.SelectedRows[0].Cells["ksbm"].Value);
if (dgvjcjg.Rows[i].Cells["zcjg"].Value.ToString().Trim() == "")
{
MessageBox.Show("体检诊断不能为空!");
return;
}
tjjd.zdjg = dgvjcjg.Rows[i].Cells["zcjg"].Value.ToString().Trim();
tjjd.zdys = LoginUser.xm;
tjjd.czy = "王元玺";
tjjd.djsj = DateTime.Now.ToString("yyyy-MM-dd");
if (LoginUser.yydm.ToString() == "2")
{
var vservice1 = ServiceContainer.GetService<IZongJian>();
tjjd.bz = vservice1.fanhuiJbtj(Convert.ToInt32(tbxtm.Text), Convert.ToInt16(dgvbks.SelectedRows[0].Cells["ksbm"].Value));
}
if (pathName != "")
{
//将图像读入到字节数组
System.IO.FileStream fs = new System.IO.FileStream(pathName, System.IO.FileMode.Open, System.IO.FileAccess.Read);
byte[] buffByte = new byte[fs.Length];
fs.Read(buffByte, 0, (int)fs.Length);
fs.Close();
fs = null;
tjjd.image = buffByte;
}
var vservice = ServiceContainer.GetService<It_tjjd>();
//vservice.Update1(tjjd);
MessageBox.Show(vservice.Update1(tjjd).Message);
}
}
}
}
private void button7_Click(object sender, EventArgs e)
{
if (dgvbks.SelectedRows.Count <= 0)
{
MessageBox.Show("请选择体检人员!");
return;
}
frmZDYXSB zdyxsb = new frmZDYXSB(this);
zdyxsb.StartPosition = FormStartPosition.CenterScreen;
zdyxsb.ShowDialog();
}
}
}