tijian_jichuang/Code/TiJianJieGuo/frmYiShengJieGuoLuRuNew.cs
2025-02-20 11:54:48 +08:00

2790 lines
108 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

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

using System;
using System.Collections.Generic;
using System.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();
}
}
}