520 lines
17 KiB
C#
520 lines
17 KiB
C#
using SOH.Kernel;
|
|
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 EAS;
|
|
using SOH.Data;
|
|
using EAS.Services;
|
|
using SOH.BLL;
|
|
using SOH.Entities;
|
|
|
|
namespace SOH.BasicSettings
|
|
{
|
|
[ModuleAttribute(ModuleID = "C7FEBF6C-7C8A-4AD5-B1C9-5BC53FFDC271", ModuleName = "体检套餐维护")]
|
|
public partial class TaoChanSheZhi : SOH.Window.baseChildForm
|
|
{
|
|
private short fddm; //分店代码
|
|
DataTable dt_xb = new DataTable();
|
|
DataTable dt_hy = new DataTable();
|
|
private List<Entities.t_zhxm> led;
|
|
List<Entities.t_zhxm> _zhxm;
|
|
private List<Entities.t_tc> tcs;
|
|
|
|
public TaoChanSheZhi()
|
|
{
|
|
InitializeComponent();
|
|
}
|
|
|
|
private void btn_new_Click(object sender, EventArgs e)
|
|
{
|
|
//txt_yhjg.Enabled = false;
|
|
lbl_bm.Text = "";
|
|
txt_klx.Text = txt_ssxx.Text = txt_tcmc.Text = txt_tcjg.Text = txt_yhjg.Text = "";
|
|
rb_zjf.Checked = false;
|
|
rb_zjs.Checked = false;
|
|
cbb_hyqk.SelectedValue = 2;
|
|
cbb_xb.SelectedValue = 2;
|
|
cbTCLX.SelectedIndex = 0;
|
|
tzhxmBindingSource.DataSource = new List<t_zhxm>();
|
|
}
|
|
|
|
private void TaoChanSheZhi_Load(object sender, EventArgs e)
|
|
{
|
|
initjbxx();
|
|
myinit();
|
|
}
|
|
|
|
/// <summary>
|
|
/// 初始化基本数据
|
|
/// </summary>
|
|
private void myinit()
|
|
{
|
|
this.cbTCLX.SelectedIndex = 0;
|
|
var vser = ServiceContainer.GetService<ITaoCan>();
|
|
//throw new NotImplementedException();
|
|
|
|
|
|
|
|
tcs = vser.getTaoCanListByZX(LoginUser.yydm);
|
|
ttcBindingSource.DataSource = tcs;
|
|
//dgv_tclist.ClearSelection();
|
|
cbb_tclist.DataSource = tcs.Where(t => t.zhuxiao == 0).ToList();
|
|
|
|
#region 绑定科室信息
|
|
var vks = ServiceContainer.GetService<It_ks>();
|
|
var kslist = vks.GetAllks("", -1, int.Parse(LoginUser.yydm));
|
|
cbb_ks.DataSource = kslist.Where(t => t.zhuxiao == 0).ToList();
|
|
|
|
#endregion
|
|
|
|
/*
|
|
#region 获取所有组合项目
|
|
var vzhxm = ServiceContainer.GetService<It_zhxm>();
|
|
zhxms=vzhxm.get
|
|
#endregion*/
|
|
int ksbm = int.Parse(cbb_ks.SelectedValue.ToString());
|
|
bindkszhxm(ksbm);
|
|
tzhxmBindingSource.DataSource = new List<t_zhxm>();
|
|
}
|
|
|
|
private void initjbxx()
|
|
{
|
|
#region 绑定性别
|
|
|
|
dt_xb.Columns.Add("xbbm", typeof(short));
|
|
dt_xb.Columns.Add("xbmc", typeof(string));
|
|
DataRow dr = dt_xb.NewRow();
|
|
dr["xbbm"] = 0;
|
|
dr["xbmc"] = "男";
|
|
dt_xb.Rows.Add(dr);
|
|
dr = dt_xb.NewRow();
|
|
dr["xbbm"] = 1;
|
|
dr["xbmc"] = "女";
|
|
dt_xb.Rows.Add(dr);
|
|
dr = dt_xb.NewRow();
|
|
dr["xbbm"] = 2;
|
|
dr["xbmc"] = "不限";
|
|
dt_xb.Rows.Add(dr);
|
|
cbb_xb.DataSource = dt_xb;
|
|
#endregion
|
|
|
|
#region 绑定婚姻
|
|
dt_hy.Columns.Add("hybm", typeof(short));
|
|
dt_hy.Columns.Add("hymc", typeof(string));
|
|
dr = dt_hy.NewRow();
|
|
dr["hybm"] = 0;
|
|
dr["hymc"] = "未婚";
|
|
dt_hy.Rows.Add(dr);
|
|
dr = dt_hy.NewRow();
|
|
dr["hybm"] = 1;
|
|
dr["hymc"] = "已婚";
|
|
dt_hy.Rows.Add(dr);
|
|
dr = dt_hy.NewRow();
|
|
dr["hybm"] = 2;
|
|
dr["hymc"] = "不限";
|
|
dt_hy.Rows.Add(dr);
|
|
cbb_hyqk.DataSource = dt_hy;
|
|
#endregion
|
|
}
|
|
|
|
public void ShuaXin()
|
|
{
|
|
var vser = ServiceContainer.GetService<ITaoCan>();
|
|
tcs = vser.getTaoCanList(LoginUser.yydm); //List<Entities.t_tc>
|
|
ttcBindingSource.DataSource = tcs;
|
|
//dgv_tclist.ClearSelection();
|
|
cbb_tclist.DataSource = tcs.Where(t => t.zhuxiao == 0).ToList();
|
|
}
|
|
|
|
private void bindkszhxm(int ksbm)
|
|
{
|
|
//throw new NotImplementedException();
|
|
var vzhxm = ServiceContainer.GetService<It_zhxm>();
|
|
var zhxms = vzhxm.GetzhxmByks(ksbm, Convert.ToInt32(LoginUser.yydm));
|
|
bs_kszhxm.DataSource = zhxms.Where(t => t.zhuxiao == "0").ToList();
|
|
led = vzhxm.GetzhxmByks(-1, Convert.ToInt32(LoginUser.yydm));
|
|
}
|
|
|
|
private void dgv_tclist_DataBindingComplete(object sender, DataGridViewBindingCompleteEventArgs e)
|
|
{
|
|
foreach (DataGridViewRow dgvr in dgv_tclist.Rows)
|
|
{
|
|
t_tc tc = dgvr.DataBoundItem as t_tc;
|
|
if (tc.m_zhuxiao == zhuxiaomj.注销)
|
|
{
|
|
dgvr.DefaultCellStyle.BackColor = Color.Red;
|
|
|
|
}
|
|
}
|
|
|
|
}
|
|
|
|
private void dgv_tclist_CellClick(object sender, DataGridViewCellEventArgs e)
|
|
{
|
|
var vser = ServiceContainer.GetService<ITaoCan>();
|
|
DataGridViewRow dgvr = dgv_tclist.Rows[e.RowIndex];
|
|
t_tc tc = dgvr.DataBoundItem as t_tc;
|
|
List<t_zhxm> tcmx = vser.getTCMX(tc.tcbm);
|
|
lbl_bm.Text = tc.tcbm.ToString();
|
|
txt_tcmc.Text = tc.tcmc;
|
|
txt_ssxx.Text = tc.xssx.ToString();
|
|
rb_zjs.Checked = tc.zjdisplay == 1;
|
|
rb_zjf.Checked = tc.zjdisplay == 0;
|
|
txt_tcjg.Text = tc.tcjg.ToString();
|
|
txt_yhjg.Text = tc.yhjg_x.ToString();
|
|
if ("1".Equals(tc.upflag))
|
|
{
|
|
txt_yhjg.Enabled = false;
|
|
}
|
|
else
|
|
{
|
|
txt_yhjg.Enabled = true;
|
|
}
|
|
cbb_hyqk.SelectedValue = tc.hyzk;
|
|
cbb_xb.SelectedValue = tc.xb;
|
|
cbTCLX.SelectedIndex = Convert.ToInt16(tc.upflag);
|
|
tzhxmBindingSource.DataSource = tcmx;
|
|
}
|
|
private void settc()
|
|
{
|
|
//throw new NotImplementedException();
|
|
try
|
|
{
|
|
|
|
t_tc tc = new t_tc();
|
|
int tcbm = 0;
|
|
int.TryParse(lbl_bm.Text, out tcbm);
|
|
tc.tcbm = (short)tcbm;
|
|
tc.tcmc = txt_tcmc.Text;
|
|
tc.xssx = short.Parse(txt_ssxx.Text.Trim());
|
|
tc.zjdisplay = (short)(rb_zjs.Checked ? 1 : 0);
|
|
tc.tcjg = double.Parse(txt_tcjg.Text);
|
|
tc.yhjg_x = double.Parse(txt_yhjg.Text);
|
|
tc.hyzk = short.Parse(cbb_hyqk.SelectedValue.ToString());
|
|
tc.xb = short.Parse(cbb_xb.SelectedValue.ToString());
|
|
tc.klx = txt_klx.Text;
|
|
tc.fddm = short.Parse(LoginUser.yydm);
|
|
tc.upflag = cbTCLX.SelectedIndex.ToString();
|
|
var vser = ServiceContainer.GetService<ITaoCan>();
|
|
List<t_tcxmmx> tcmx = new List<t_tcxmmx>();
|
|
List<t_zhxm> zhxms = tzhxmBindingSource.DataSource as List<t_zhxm>;
|
|
foreach (t_zhxm zhxm in zhxms)
|
|
{
|
|
t_tcxmmx mx = new t_tcxmmx();
|
|
mx.tcbm = tc.tcbm;
|
|
mx.zhbm = zhxm.zhbm;
|
|
tcmx.Add(mx);
|
|
}
|
|
OperationResult or = vser.SetTaoCan(tc, tcmx);
|
|
MessageBox.Show(or.Message);
|
|
if (or.State == 1)
|
|
{
|
|
if (tc.tcbm == 0)
|
|
{
|
|
//ttcBindingSource.Add(tc);
|
|
myinit();
|
|
}
|
|
else
|
|
{
|
|
// myinit();
|
|
ShuaXin();
|
|
}
|
|
}
|
|
}
|
|
catch (System.Exception ex)
|
|
{
|
|
MessageBox.Show(ex.Message);
|
|
}
|
|
}
|
|
private void btn_zhuxiao_Click(object sender, EventArgs e)
|
|
{
|
|
if (dgv_tclist.SelectedRows.Count == 0)
|
|
{
|
|
MessageBox.Show("没有选中的套餐,请先选择套餐!");
|
|
return;
|
|
}
|
|
t_tc tc = dgv_tclist.SelectedRows[0].DataBoundItem as t_tc;
|
|
if (tc.zhuxiao == 1)
|
|
{
|
|
MessageBox.Show("已经注销的套餐不能再注销!");
|
|
return;
|
|
}
|
|
var vser = ServiceContainer.GetService<ITaoCan>();
|
|
OperationResult or = vser.SetZhuxiao(tc.tcbm, 1);
|
|
MessageBox.Show(or.Message);
|
|
if (or.State == 1)
|
|
{
|
|
tc.zhuxiao = 1;
|
|
dgv_tclist.Refresh();
|
|
|
|
dgv_tclist.SelectedRows[0].DefaultCellStyle.BackColor = Color.Red;
|
|
}
|
|
}
|
|
|
|
private void btn_quxiaozhuxiao_Click(object sender, EventArgs e)
|
|
{
|
|
if (dgv_tclist.SelectedRows.Count == 0)
|
|
{
|
|
MessageBox.Show("没有选中的套餐,请先选择套餐!");
|
|
return;
|
|
}
|
|
t_tc tc = dgv_tclist.SelectedRows[0].DataBoundItem as t_tc;
|
|
if (tc.zhuxiao == 0)
|
|
{
|
|
MessageBox.Show("你选择的套餐没有被注销,不能取消注销!");
|
|
return;
|
|
}
|
|
var vser = ServiceContainer.GetService<ITaoCan>();
|
|
OperationResult or = vser.SetZhuxiao(tc.tcbm, 0);
|
|
MessageBox.Show(or.Message);
|
|
if (or.State == 1)
|
|
{
|
|
tc.zhuxiao = 0;
|
|
dgv_tclist.Refresh();
|
|
dgv_tclist.SelectedRows[0].DefaultCellStyle.BackColor = Color.White;
|
|
}
|
|
}
|
|
|
|
private void btn_add_Click(object sender, EventArgs e)
|
|
{
|
|
if (!string.IsNullOrEmpty(lbl_bm.Text.Trim()))
|
|
{
|
|
MessageBox.Show("请先点击新建按钮!");
|
|
return;
|
|
}
|
|
settc();
|
|
}
|
|
|
|
private void btn_modf_Click(object sender, EventArgs e)
|
|
{
|
|
if (dgv_tclist.SelectedRows.Count == 0)
|
|
{
|
|
MessageBox.Show("请选择要修改的套餐!");
|
|
return;
|
|
}
|
|
t_tc tc = dgv_tclist.SelectedRows[0].DataBoundItem as t_tc;
|
|
if (tc.m_zhuxiao == zhuxiaomj.注销)
|
|
{
|
|
MessageBox.Show("您选择的套餐已经注销不能修改!");
|
|
return;
|
|
}
|
|
settc();
|
|
|
|
}
|
|
|
|
|
|
|
|
private void btn_daoru_Click(object sender, EventArgs e)
|
|
{
|
|
double zj = 0;
|
|
short tcbm = short.Parse(cbb_tclist.SelectedValue.ToString());
|
|
var vser = ServiceContainer.GetService<ITaoCan>();
|
|
var tcmx = vser.getTCMX(tcbm);
|
|
t_tc tc = vser.GetModelBytcbm(tcbm);
|
|
List<t_zhxm> tzhxm;
|
|
if (tzhxmBindingSource.DataSource is List<t_zhxm>)
|
|
{
|
|
tzhxm = tzhxmBindingSource.DataSource as List<t_zhxm>;
|
|
}
|
|
else
|
|
{
|
|
tzhxm = new List<t_zhxm>();
|
|
tzhxmBindingSource.DataSource = tzhxm;
|
|
}
|
|
tcmx.ForEach(t =>
|
|
{
|
|
if (!(tzhxm.Where(p => p.zhbm == t.zhbm).Any()))
|
|
{
|
|
zj += t.jg_v;
|
|
tzhxmBindingSource.Add(t);
|
|
}
|
|
});
|
|
txt_tcjg.Text = zj.ToString();
|
|
txt_yhjg.Text = tc.yhjg_x.ToString();
|
|
//tzhxmBindingSource.
|
|
dgv_tczhxm.Refresh();
|
|
}
|
|
|
|
private void cbb_ks_SelectedValueChanged(object sender, EventArgs e)
|
|
{
|
|
bindkszhxm(int.Parse(cbb_ks.SelectedValue.ToString()));
|
|
}
|
|
|
|
private void dgv_tczhxm_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
|
|
{
|
|
t_zhxm zhxm = dgv_tczhxm.Rows[e.RowIndex].DataBoundItem as t_zhxm;
|
|
tzhxmBindingSource.Remove(zhxm);
|
|
|
|
List<t_zhxm> al = ((System.Windows.Forms.BindingSource)(dgv_tczhxm.DataSource)).List as List<t_zhxm>;
|
|
double zj = 0;
|
|
double yhjg = 0;
|
|
if (txt_yhjg.Text != "")
|
|
{
|
|
yhjg = Convert.ToDouble(txt_yhjg.Text);
|
|
yhjg = yhjg - zhxm.jg_v;
|
|
}
|
|
|
|
foreach (t_zhxm m in al)
|
|
{
|
|
zj += m.jg_v;
|
|
}
|
|
txt_tcjg.Text = zj.ToString();
|
|
txt_yhjg.Text = yhjg.ToString();
|
|
}
|
|
|
|
|
|
|
|
private void dgv_kszhxm_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
|
|
{
|
|
t_zhxm zhxm = dgv_kszhxm.Rows[e.RowIndex].DataBoundItem as t_zhxm;
|
|
if ((tzhxmBindingSource.DataSource as List<t_zhxm>).Where(t => t.zhbm == zhxm.zhbm).Count() == 0)
|
|
{
|
|
tzhxmBindingSource.Add(zhxm);
|
|
List<t_zhxm> al1 = ((System.Windows.Forms.BindingSource)(dgv_tczhxm.DataSource)).List as List<t_zhxm>;
|
|
double zj = 0;
|
|
double yhjg = 0;
|
|
foreach (t_zhxm m in al1)
|
|
{
|
|
zj += m.jg_v;
|
|
}
|
|
if (txt_yhjg.Text != "")
|
|
{
|
|
yhjg = Convert.ToDouble(txt_yhjg.Text);
|
|
yhjg = yhjg + zhxm.jg_v;
|
|
}
|
|
else
|
|
{
|
|
yhjg = yhjg + zhxm.jg_v;
|
|
}
|
|
txt_tcjg.Text = zj.ToString();
|
|
txt_yhjg.Text = yhjg.ToString();
|
|
}
|
|
|
|
else
|
|
{
|
|
MessageBox.Show("不能重复添加项目。");
|
|
}
|
|
|
|
|
|
}
|
|
|
|
private void dgv_tczhxm_RowPostPaint(object sender, DataGridViewRowPostPaintEventArgs e)
|
|
{
|
|
SolidBrush b = new SolidBrush(this.dgv_tczhxm.RowHeadersDefaultCellStyle.ForeColor);
|
|
e.Graphics.DrawString((e.RowIndex + 1).ToString(System.Globalization.CultureInfo.CurrentUICulture), this.dgv_tczhxm.DefaultCellStyle.Font, b, e.RowBounds.Location.X + 10, e.RowBounds.Location.Y + 4);
|
|
}
|
|
|
|
private void radioButton1_Click(object sender, EventArgs e)
|
|
{
|
|
this.radioButton2.Checked = false;
|
|
var vser = ServiceContainer.GetService<ITaoCan>();
|
|
//throw new NotImplementedException();
|
|
|
|
List<Entities.t_tc> tcs = vser.getTaoCanList(LoginUser.yydm);
|
|
ttcBindingSource.DataSource = tcs;
|
|
}
|
|
|
|
private void radioButton2_Click(object sender, EventArgs e)
|
|
{
|
|
this.radioButton1.Checked = false;
|
|
var vser = ServiceContainer.GetService<ITaoCan>();
|
|
//throw new NotImplementedException();
|
|
|
|
List<Entities.t_tc> tcs = vser.getTaoCanListByZX(LoginUser.yydm);
|
|
ttcBindingSource.DataSource = tcs;
|
|
}
|
|
|
|
private void tb_tcmcZJF_KeyDown(object sender, KeyEventArgs e)
|
|
{
|
|
if (e.KeyCode == Keys.Enter)
|
|
{
|
|
Load_tab1_TC2(tb_tcmcZJF.Text.ToString(), cbTCLX2.SelectedIndex.ToString());
|
|
}
|
|
}
|
|
|
|
private void Load_tab1_TC2(string tcmc, string tclx)
|
|
{
|
|
if (tcs != null)
|
|
{
|
|
var data = tcs.Where(t => t.tcmc.Contains(tcmc) && t.upflag == tclx);
|
|
if (data.Any())
|
|
{
|
|
List<t_tc> newtc = data.ToList();
|
|
ttcBindingSource.DataSource = newtc;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
ttcBindingSource.DataSource = null;
|
|
}
|
|
|
|
|
|
}
|
|
|
|
private void button1_Click(object sender, EventArgs e)
|
|
{
|
|
tb_tcmcZJF.Text = "";
|
|
ttcBindingSource.DataSource = tcs;
|
|
}
|
|
|
|
private void tbTJKSZJM_KeyDown(object sender, KeyEventArgs e)
|
|
{
|
|
if (e.KeyCode == Keys.Enter)
|
|
{
|
|
short xb = (short)this.cbb_xb.SelectedIndex;
|
|
short hyzk = (short)this.cbb_hyqk.SelectedIndex;
|
|
string zjf = this.tbTJKSZJM.Text.Trim();
|
|
zjf = zjf.ToLower();
|
|
Load_tab1_ZHXM(zjf, xb, hyzk);
|
|
}
|
|
}
|
|
|
|
private void Load_tab1_ZHXM(string zjf, short xb, short hyzk)
|
|
{
|
|
|
|
if (led == null)
|
|
{
|
|
return;
|
|
}
|
|
//var data = led.Where(t => (xb == 2 ? true : (t.xb == xb || t.xb == 2)) && (hyzk == 2 ? true : (t.hyzk == hyzk || t.hyzk == 2)) && ((zjf == null || zjf == "") ? true : (t.zjm.Contains(zjf))));
|
|
var data = led.Where(t => ((zjf == null || zjf == "") ? true : (t.zjm.Contains(zjf))));
|
|
if (data.Any())
|
|
{
|
|
List<Entities.t_zhxm> ld = data.ToList();
|
|
bs_kszhxm.DataSource = null;
|
|
bs_kszhxm.DataSource = ld.OrderBy(t => t.ksbm).ToList();
|
|
_zhxm = ld.OrderBy(t => t.ksbm).ToList();
|
|
}
|
|
else
|
|
{
|
|
bs_kszhxm.DataSource = null;
|
|
}
|
|
}
|
|
|
|
private void cbTCLX2_SelectedIndexChanged(object sender, EventArgs e)
|
|
{
|
|
Load_tab1_TC2(tb_tcmcZJF.Text.ToString(), cbTCLX2.SelectedIndex.ToString());
|
|
}
|
|
|
|
private void cbTCLX_SelectionChangeCommitted(object sender, EventArgs e)
|
|
{
|
|
if (this.cbTCLX.Text != "System.Data.DataRowView")
|
|
{
|
|
if (this.cbTCLX.SelectedIndex==0)
|
|
{
|
|
txt_yhjg.Enabled = true;
|
|
}
|
|
else
|
|
{
|
|
txt_yhjg.Enabled = false;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|