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

519 lines
19 KiB
C#
Raw Permalink 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 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;
}
}
}