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

1769 lines
66 KiB
C#

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 EAS.Loggers;
using System.IO;
namespace TiJianJieGuoGuanLi
{
[ModuleAttribute(ModuleID = "54926AA9-394F-418D-8681-2ACFCE8CBA3D", ModuleName = "医生检查结果录入")]
public partial class frmYiShengJieGuoLuRu : SOH.Window.baseChildForm
{
private String strBm = "";
private string pathName = "";
private String strJcxmmcStr = "";
public frmYiShengJieGuoLuRu()
{
InitializeComponent();
}
public frmYiShengJieGuoLuRu(String tm)
{
InitializeComponent();
tbxtm.Text = tm.ToString();
loadTm();
}
private void Form1_Load(object sender, EventArgs e)
{
dgvtjbw.AutoGenerateColumns = false;
dgvzdjg.AutoGenerateColumns = false;
dgvjgwh.AutoGenerateColumns = false;
dgvjcjg.AutoGenerateColumns = false;
dgbqtks.AutoGenerateColumns = false;
dgvqtksjcjg.AutoGenerateColumns = false;
inityi();
}
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")
{
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);
}
}
#endregion
//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")
{
this.button3.Visible = true;
}
else
{
this.button3.Visible = false;
}
}
//完成
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["ksbm"].Value.ToString() == "21")
{
if (pathName == "")
{
if (MessageBox.Show("没有选择心电图报告,是否现在上传?!", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Asterisk) == DialogResult.Yes)
{
tabControl1.SelectTab(2);
return;
}
}
}
ILogger logger = new TextLogger();
for (int i = 0; i < dgvjcjg.Rows.Count; i++)
{
String flag = dgvjcjg.Rows[i].Cells["flag"].Value.ToString();
if (flag.Equals("1"))
{
//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);
//2.更新体检登记项目表
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);
try
{
logger.Info("检查项目-完成-检查结果更新:" +
"条码号:" + tjjg.tm +
" 项目编码" + tjjg.xmbm +
" 结果:" + tjjg.jg +
" 操作员:" + tjjg.czy +
" 登记时间" + tempdjxm.djsj +
" 更新状态码:" + tempdjxm.ztz);
}
catch { }
}
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 (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));
try
{
logger.Info("科室体检结果-完成-检查结果更新:" +
" 科室编码" + tjjd.ksbm +
" 主要诊断" + tjjd.zdjg +
" 条码号:" + tjjd.tm +
" 登记时间:" + tjjd.djsj +
" 操作员:" + tjjd.czy);
}
catch { }
}
}
dgvbks.SelectedRows[0].Cells["ztz"].Value = "4";
dgvbks.SelectedRows[0].DefaultCellStyle.BackColor = Color.FromArgb(128, 255, 128);
MessageBox.Show("保存完成!");
pathName = "";
tbxtm.Focus();
}
private void textBox1_TextChanged(object sender, EventArgs e)
{
//if()
}
private void dgvjcjg_SelectionChanged(object sender, EventArgs e)
{
loadJcjg();
}
//load检查结果
private void loadJcjg()
{
if (dgvbks.SelectedRows.Count > 0)
{
int ksbm = Convert.ToInt32(dgvbks.SelectedRows[0].Cells["ksbm"].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);
String tm = tbxtm.Text;
var tjjdservice = ServiceContainer.GetService<It_tjjd>();
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);
}
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);
}
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);
}
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_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)
{
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();
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("39"))
{
double shengao = -1;
double tizhong = -1;
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) > cksx || Convert.ToDecimal(dgvjcjg.Rows[i].Cells["zcjg"].Value) < ckxx)
{
dgvjcjg.Rows[i].Cells["zcjg"].Style.BackColor = Color.FromArgb(255, 0, 255);
}
else
{
dgvjcjg.Rows[i].Cells["zcjg"].Style.BackColor = Color.White;
}
}
}
catch
{
}
}
}
}
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["ksbm"].Value.ToString() == "21")
{
if (pathName == "")
{
if (MessageBox.Show("没有选择心电图报告,是否现在上传?!", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Asterisk) == DialogResult.Yes)
{
tabControl1.SelectTab(2);
return;
}
}
}
ILogger logger = new TextLogger();
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);
try
{
logger.Info("检查项目-临时保存-检查结果更新:" +
"条码号:" + tjjg.tm +
" 项目编码" + tjjg.xmbm +
" 结果:" + tjjg.jg +
" 操作员:" + tjjg.czy +
" 更新状态码:" + tempdjxm.ztz);
}
catch { }
}
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 (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));
try
{
logger.Info("科室体检结果-临时保存-检查结果更新:" +
" 科室编码" + tjjd.ksbm +
" 主要诊断" + tjjd.zdjg +
"条码号:" + tjjd.tm +
" 登记时间:" + tjjd.djsj +
" 操作员:" + tjjd.czy);
}
catch { }
}
}
MessageBox.Show("临时保存完成!");
dgvbks.SelectedRows[0].Cells["ztz"].Value = "1";
dgvbks.SelectedRows[0].DefaultCellStyle.BackColor = Color.FromArgb(255, 0, 255);
logger.Info("flag: " + flag + " 已经修改状态:" + dgvbks.SelectedRows[0].Cells[0] + " 为临时保存 状态值ztz为" + dgvbks.SelectedRows[0].Cells["ztz"].Value);
pathName = "";
tbxtm.Focus();
}
private void loadTm()
{
String bm = tbxtm.Text;
strBm = bm;
var ttservice = ServiceContainer.GetService<It_ttgzb>();
int tm = -999;
try
{
tm = Convert.ToInt32(bm);
}
catch
{
MessageBox.Show("条码输入错误!");
return;
}
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;
lblxb.Text = grgzb.xb == 0 ? "男" : "女";
lblnl.Text = grgzb.nl.ToString();
lblhyzk.Text = grgzb.hyzk == 0 ? "未婚" : grgzb.hyzk == 1 ? "已婚" : "不限";
try
{
System.IO.MemoryStream ms = new System.IO.MemoryStream(grgzb.image);
pic_zp.Image = Image.FromStream(ms);
}
catch
{
}
}
else
{
try
{
System.IO.MemoryStream ms = new System.IO.MemoryStream(ttgzb.image);
pic_zp.Image = Image.FromStream(ms);
}
catch
{ }
lblxm.Text = ttgzb.xm;
lblxb.Text = ttgzb.xb == 0 ? "男" : "女";
lblnl.Text = ttgzb.nl.ToString();
lblhyzk.Text = ttgzb.hyzk1.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();
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")
{
kstj(tm);
}
}
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)
{
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);
if (jggy != null)
{
jggy.zcjg = gy;
}
var jgdy = jg.FirstOrDefault(t => t.jcbm == dyxmbh && dyxmbh != 0);
if (jgdy != null)
{
jgdy.zcjg = dy;
}
var jgxl = jg.FirstOrDefault(t => t.jcbm == xlbh && xlbh != 0);
if (jgxl != null)
{
jgxl.zcjg = xl;
}
CrossDelegate dl = new CrossDelegate(shuaxin);
//string text = "test";
this.BeginInvoke(dl);
}
private void frmYiShengJieGuoLuRu_FormClosing(object sender, FormClosingEventArgs e)
{
if (sp_dzxy.IsOpen)
sp_dzxy.Close();
if (sp_sgtz.IsOpen)
sp_sgtz.Close();
}
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"))
//clsgtz();
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 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);
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))
MessageBox.Show("请到" + ksname + "体检!");
else
MessageBox.Show("体检结束");
}
private void button4_Click(object sender, EventArgs e)
{
openFileDialog1.Title = "请选择上传的图片";
//设置筛选的图片格式
openFileDialog1.Filter = "图片格式|*.TIF";
//设置是否允许多选
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
{
}
}
}
}
}