tijian_jichuang/Code/KeFu/frmBaoGaoLingQu.cs

519 lines
19 KiB
C#
Raw Normal View History

2025-02-20 11:54:48 +08:00
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using SOH.Kernel;
using EAS.Services;
using SOH.BLL;
using SOH.Entities;
using xiaoy.Excel;
using WinForm_Test;
using EAS;
using EAS.Data;
using SOH.Data;
using SOH.Entities.DTO;
using System.Configuration;
using SOH.Configuration;
using System.Reflection;
using System.Drawing.Imaging;
using System.IO;
namespace SOH.KeFu
{
[ModuleAttribute(ModuleID = "68B12AF1-E11C-464C-8974-812A5161FDF2", ModuleName = "报告领取")]
public partial class frmBaoGaoLingQu : SOH.Window.baseChildForm
{
public string plbglqr = "";
public string bglqr = "";
public bool upload = false;
public int upcounts = 0;
public frmBaoGaoLingQu()
{
InitializeComponent();
}
private void frmBaoGaoLingQu_Load(object sender, EventArgs e)
{
}
private void tb1_TM_KeyUp(object sender, KeyEventArgs e)
{
bool ifgr = false;
if (e.KeyCode == Keys.Enter)
{
string tmstr = this.tb1_TM.Text.Trim();
//if (string.IsNullOrEmpty(tmstr) || tmstr.Length != 10)
//{
// MessageBox.Show("条码格式错误");
// return;
//}
//else
//{
int tm1 = -999;
try
{
tm1 = Convert.ToInt32(tmstr);
}
catch
{
MessageBox.Show("条码输入错误!");
return;
}
var ttservice = ServiceContainer.GetService<It_ttgzb>();
t_ttgzb ttgzb = ttservice.GetModelBytm(tm1);
if (ttgzb == null)
{
ifgr = true;
//以0开头的tm是个人的
}
int tm = 0;
if (Int32.TryParse(tmstr, out tm))
{
if (ifgr) //个人体检
{
t_grgzb b = ServiceContainer.GetService<It_grgzb>().GetGrgzbByTm(tm);
if (b == null)
{
return;
}
bglqr = b.xm;
this.tbxm.Text = b.xm;
this.tbnl.Text = b.nl.ToString();
this.tbxb.Text = (b.xb == 0) ? "男" : "女";
switch (b.hyzk.ToString())
{
case "0":
this.tbtjztz.Text = "未婚";
break;
case "1":
this.tbtjztz.Text = "已婚";
break;
case "2":
this.tbtjztz.Text = "未知";
break;
}
this.tbhyh.Text = b.hyh.ToString();
switch (b.tmztz.ToString())
{
case "-2":
this.tbtjztz.Text = "待查状态";
break;
case "0":
this.tbtjztz.Text = "待查状态";
break;
case "1":
this.tbtjztz.Text = "登记未交费状态";
break;
case "2":
this.tbtjztz.Text = "交费在检查状态";
break;
case "3":
this.tbtjztz.Text = "加项未收费状态";
break;
case "4":
this.tbtjztz.Text = "体检结束状态";
break;
case "5":
this.tbtjztz.Text = "待分析状态";
break;
case "6":
this.tbtjztz.Text = "待打印报告状态";
break;
case "7":
this.tbtjztz.Text = "打印完成状态";
break;
case "8":
this.tbtjztz.Text = "客服交接状态";
break;
case "9":
this.tbtjztz.Text = "报告送达客户状态";
break;
}
}
else//团检
{
t_ttgzb b = ServiceContainer.GetService<It_ttgzb>().GetModelBytm(tm);
if (b == null)
{
return;
}
bglqr = b.xm;
this.tbbm.Text = b.ssbm;
this.tbxm.Text = b.xm;
this.tbnl.Text = b.nl.ToString();
this.tbxb.Text = (b.xb == 0) ? "男" : "女";
switch (b.hyzk.ToString())
{
case "0":
this.tbtjztz.Text = "未婚";
break;
case "1":
this.tbtjztz.Text = "已婚";
break;
case "2":
this.tbtjztz.Text = "未知";
break;
}
this.tbhyh.Text = b.hyh.ToString();
switch (b.tmztz.ToString())
{
case "-2":
this.tbtjztz.Text = "待查状态";
break;
case "0":
this.tbtjztz.Text = "待查状态";
break;
case "1":
this.tbtjztz.Text = "登记未交费状态";
break;
case "2":
this.tbtjztz.Text = "交费在检查状态";
break;
case "3":
this.tbtjztz.Text = "加项未收费状态";
break;
case "4":
this.tbtjztz.Text = "体检结束状态";
break;
case "5":
this.tbtjztz.Text = "待分析状态";
break;
case "6":
this.tbtjztz.Text = "待打印报告状态";
break;
case "7":
this.tbtjztz.Text = "打印完成状态";
break;
case "8":
this.tbtjztz.Text = "客服交接状态";
break;
case "9":
this.tbtjztz.Text = "报告送达客户状态";
break;
}
var vtjxx = ServiceContainer.GetService<IShouFei>();
var khfz = vtjxx.getkhfzbytm(tm);
this.tbdw.Text = khfz.khmc;
}
if (checkBox1.Checked == true)
{
this.txt_bglqrxm.Text = plbglqr;
}
else
{
this.txt_bglqrxm.Text = bglqr;
}
this.lab_bglqczy.Text = LoginUser.xm;
}
//}
}
}
private void button1_Click(object sender, EventArgs e)
{
if (tbtjztz.Text == "打印完成状态")
{
string tmstr = this.tb1_TM.Text.Trim();
//if (string.IsNullOrEmpty(tmstr) || tmstr.Length != 10)
//{
// MessageBox.Show("条码格式错误");
// return;
//}
//else
//{
int tm = 0;
if (Int32.TryParse(tmstr, out tm))
{
bool ifgr = tm.ToString("0000000000").StartsWith("1");
//以0开头的tm是个人的
if (!ifgr) //个人体检
{
var d = ServiceContainer.GetService<It_grgzb>();
t_grgzb b = d.GetGrgzbByTm(tm);
if (b == null)
{
return;
}
b.tmztz = 9;
b.dcrq = DateTime.Now;
b.sbczy = this.lab_bglqczy.Text;
if (!string.IsNullOrEmpty(this.txt_bglqrxm.Text))
{
b.dysj = this.txt_bglqrxm.Text;
}
else
{
MessageBox.Show("报告领取人姓名不能为空!");
}
if (d.Updategrgzb(b).State == 1)
{
MessageBox.Show("可领取报告。");
clear();
}
}
else//团检
{
var d = ServiceContainer.GetService<It_ttgzb>();
t_ttgzb b = d.GetModelBytm(tm);
b.tmztz = 9;
b.dcrq = DateTime.Now;
b.sbczy = this.lab_bglqczy.Text;
if (!string.IsNullOrEmpty(this.txt_bglqrxm.Text))
{
b.dysj = this.txt_bglqrxm.Text;
}
else
{
MessageBox.Show("报告领取人姓名不能为空!");
}
if (d.UpdateModel(b).State == 1)
{
MessageBox.Show("可领取报告。");
clear();
}
}
}
// }
}
else
{
MessageBox.Show("打印完成状态才可以领取报告!");
}
}
public void clear()
{
tb1_TM.Text = "";
tbhyh.Text = "";
tbxm.Text = "";
tbnl.Text = "";
tbxb.Text = "";
tbhyzk.Text = "";
tbdw.Text = "";
tbygh.Text = "";
tbbm.Text = "";
tbtjztz.Text = "";
this.txt_bglqrxm.Text = "";
this.lab_bglqczy.Text = "";
}
private void checkBox1_CheckedChanged(object sender, EventArgs e)
{
if (checkBox1.Checked == true)
{
if (!string.IsNullOrEmpty(txt_bglqrxm.Text))
{
plbglqr = txt_bglqrxm.Text;
}
else
{
MessageBox.Show("报告领取人姓名不能为空!");
}
}
else
{
plbglqr = "";
//this.txt_bglqrxm.Text = "";
}
}
private void button3_Click(object sender, EventArgs e)
{
upcounts = 0;
upload = true;
bool ifgr = false;
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
string excelVersion = ExcelVersion.Excel8;
//确定导入文件的版本
excelVersion = ExcelVersion.Excel3;
//关键语句调用ExcelFile组件执行导入操作。
DataTable showTabe = new DataTable();
frmWaitingBox f = new frmWaitingBox((obj, args) =>
{
DataTable[] dtExcelDatas = ExcelFile.GetData(openFileDialog1.FileName, excelVersion, HDRType.Yes, true);
showTabe = dtExcelDatas[0].Clone();
for (int i = 0; i < dtExcelDatas[0].Rows.Count; i++)
{
showTabe.Rows.Add(dtExcelDatas[0].Rows[i].ItemArray);
}
}, 100000, "请等待...", false, false);
f.ShowDialog();
dataGridView1.DataSource = showTabe;
frmWaitingBox f1 = new frmWaitingBox((obj, args) =>
{
//DataTable dt = dataGridView9.DataSource as DataTable;
for (int i = 0; i < dataGridView1.Rows.Count - 1; i++)
{
ifgr = false;
string tmhs = dataGridView1.Rows[i].Cells["条码号"].Value.ToString();
int tm1 = -999;
if(string.IsNullOrEmpty(tmhs))
{
continue;
}
try
{
tm1 = Convert.ToInt32(tmhs);
}
catch
{
MessageBox.Show("条码输入错误!");
dataGridView1.Rows[i].Cells["条码号"].Style.BackColor = Color.Red;
upload = false;
upcounts = upcounts + 1;
return;
}
var ttservice = ServiceContainer.GetService<It_ttgzb>();
t_ttgzb ttgzb = ttservice.GetModelBytm(tm1);
if (ttgzb == null)
{
ifgr = true;
//以0开头的tm是个人的
}
int tm = 0;
if (Int32.TryParse(tmhs, out tm))
{
if (ifgr) //个人体检
{
t_grgzb b = ServiceContainer.GetService<It_grgzb>().GetGrgzbByTm(tm);
if (b == null)
{
dataGridView1.Rows[i].Cells["条码号"].Style.BackColor = Color.Red;
upload = false;
upcounts = upcounts + 1;
return;
}
bglqr = b.xm;
if (b.tmztz != 7)
{
dataGridView1.Rows[i].Cells["条码号"].Style.BackColor = Color.Red;
upload = false;
upcounts = upcounts + 1;
return;
}
}
else//团检
{
t_ttgzb b = ServiceContainer.GetService<It_ttgzb>().GetModelBytm(tm);
if (b == null)
{
dataGridView1.Rows[i].Cells["条码号"].Style.BackColor = Color.Red;
upload = false;
upcounts = upcounts + 1;
return;
}
bglqr = b.xm;
if (b.tmztz != 7)
{
dataGridView1.Rows[i].Cells["条码号"].Style.BackColor = Color.Red;
upload = false;
upcounts = upcounts + 1;
return;
}
}
//if (checkBox1.Checked == true)
//{
// this.txt_bglqrxm.Text = plbglqr;
//}
//else
//{
// this.txt_bglqrxm.Text = bglqr;
//}
//this.lab_bglqczy.Text = LoginUser.xm;
}
}
}, 100000, "审核数据中请稍后...", false, false);
f1.ShowDialog();
}
}
private void button4_Click(object sender, EventArgs e)
{
if (upcounts > 0 || upload == false)
{
MessageBox.Show("导入数据不符合要求!请调整后再导入!");
return;
}
upcounts = 0;
upload = true;
DataTable dt = dataGridView1.DataSource as DataTable;
for (int i = 0; i < dt.Rows.Count; i++)
{
string tmstr = dt.Rows[i]["条码号"].ToString();
int tm = 0;
if (Int32.TryParse(tmstr, out tm))
{
bool ifgr = tm.ToString("0000000000").StartsWith("1");
//以0开头的tm是个人的
if (!ifgr) //个人体检
{
var d = ServiceContainer.GetService<It_grgzb>();
t_grgzb b = d.GetGrgzbByTm(tm);
if (b == null)
{
return;
}
b.tmztz = 9;
b.dcrq = DateTime.Now;
b.sbczy = this.lab_bglqczy.Text;
b.dysj = "批量领取";
d.Updategrgzb(b);
}
else//团检
{
var d = ServiceContainer.GetService<It_ttgzb>();
t_ttgzb b = d.GetModelBytm(tm);
b.tmztz = 9;
b.dcrq = DateTime.Now;
b.sbczy = this.lab_bglqczy.Text;
b.dysj = "批量领取";
d.UpdateModel(b);
}
}
}
MessageBox.Show("批量领取报告完成。");
dataGridView1.DataSource = null;
}
}
}