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 led; List _zhxm; private List 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(); } private void TaoChanSheZhi_Load(object sender, EventArgs e) { initjbxx(); myinit(); } /// /// 初始化基本数据 /// private void myinit() { this.cbTCLX.SelectedIndex = 0; var vser = ServiceContainer.GetService(); //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(); 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(); zhxms=vzhxm.get #endregion*/ int ksbm = int.Parse(cbb_ks.SelectedValue.ToString()); bindkszhxm(ksbm); tzhxmBindingSource.DataSource = new List(); } 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(); tcs = vser.getTaoCanList(LoginUser.yydm); //List 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(); 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(); DataGridViewRow dgvr = dgv_tclist.Rows[e.RowIndex]; t_tc tc = dgvr.DataBoundItem as t_tc; List 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(); List tcmx = new List(); List zhxms = tzhxmBindingSource.DataSource as List; 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(); 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(); 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(); var tcmx = vser.getTCMX(tcbm); t_tc tc = vser.GetModelBytcbm(tcbm); List tzhxm; if (tzhxmBindingSource.DataSource is List) { tzhxm = tzhxmBindingSource.DataSource as List; } else { tzhxm = new List(); 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 al = ((System.Windows.Forms.BindingSource)(dgv_tczhxm.DataSource)).List as List; 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).Where(t => t.zhbm == zhxm.zhbm).Count() == 0) { tzhxmBindingSource.Add(zhxm); List al1 = ((System.Windows.Forms.BindingSource)(dgv_tczhxm.DataSource)).List as List; 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(); //throw new NotImplementedException(); List tcs = vser.getTaoCanList(LoginUser.yydm); ttcBindingSource.DataSource = tcs; } private void radioButton2_Click(object sender, EventArgs e) { this.radioButton1.Checked = false; var vser = ServiceContainer.GetService(); //throw new NotImplementedException(); List 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 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 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; } } } } }