You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

271 lines
12 KiB

using SchedulingSystem.EntityClass;
using SchedulingSystemClient.EntityClass;
using SchedulingSystemClient.InsertWindow;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows;
using System.Windows.Controls;
namespace SchedulingSystemClient
{
/// <summary>
/// RJSSWindow.xaml 的交互逻辑
/// </summary>
public partial class RJSSWindow : UserControl
{
public RJSSWindow(SYS_YHB yh)
{
InitializeComponent();
user = yh;
}
SYS_YHB user = new SYS_YHB();
SurgerySchedulingEntities myModel = new SurgerySchedulingEntities();
Cus_SSPB selectedRow = new Cus_SSPB();
List<Cus_SSPB> listsspb = new List<Cus_SSPB>();
private void sspbdata_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
selectedRow = sspbdata.SelectedItem as Cus_SSPB;
}
bool? IsSDPB;
private void UserControl_Loaded(object sender, RoutedEventArgs e)
{
List<ComboBoxBinding> listsss = new List<ComboBoxBinding>();
List<ComboBoxBinding> listzt = new List<ComboBoxBinding>();
listsss = (from tbsss in myModel.SYS_SSSB
where tbsss.SFRJ ==true
select new ComboBoxBinding
{
ID = tbsss.ID,
Name = tbsss.SSSMC
}).ToList();
listzt = (from tbsss in myModel.SYS_PBZTB
select new ComboBoxBinding
{
ID = tbsss.ID,
Name = tbsss.Name
}).ToList();
listsss.Add(new ComboBoxBinding() { ID = 0, Name = "全部" });
listzt.Add(new ComboBoxBinding() { ID = 0, Name = "全部" });
sss.ItemsSource = listsss.OrderBy(a => a.ID);
sss.SelectedValuePath = "ID";
sss.DisplayMemberPath = "Name";
sss.SelectedValue = 0;
zt.ItemsSource = listzt.OrderBy(a => a.ID);
zt.SelectedValuePath = "ID";
zt.DisplayMemberPath = "Name";
zt.SelectedValue = 0;
SelectPBXX();
}
List<Cus_Sqjl> listsqjl = new List<Cus_Sqjl>();
/// <summary>
/// 查询排班信息
/// </summary>
private void SelectPBXX()
{
PaiBan.RiJianPaiBan();
listsspb = (from tbsspbb in myModel.Bus_RJSSB
join tbsssb in myModel.SYS_SSSB on tbsspbb.SSSID equals tbsssb.ID into joinsssb
from sssb in joinsssb.DefaultIfEmpty()
join tbssxxb in myModel.SYS_SSXXB on tbsspbb.SSID equals tbssxxb.ID
join tbssdjb in myModel.SYS_SSDJB on tbssxxb.SSDJID equals tbssdjb.ID
join tbqklxb in myModel.SYS_SSQKLXB on tbssxxb.SSQKLXID equals tbqklxb.ID
join tbssscb in myModel.SYS_SSSCB on tbssxxb.SSSCID equals tbssscb.ID
join tbqjscb in myModel.SYS_SSSCB on tbqklxb.QJSCID equals tbqjscb.ID
join tbksb in myModel.SYS_KSB on tbsspbb.KSID equals tbksb.ID
join tbysb in myModel.SYS_SSYSB on tbsspbb.ZDYS equals tbysb.ID
join tbmz1 in myModel.SYS_MZYSB on tbsspbb.MZYS1 equals tbmz1.ID into joinmz1
from mz1 in joinmz1.DefaultIfEmpty()
join tbmz2 in myModel.SYS_MZYSB on tbsspbb.MZYS2 equals tbmz2.ID into joinmz2
from mz2 in joinmz2.DefaultIfEmpty()
join tbmz3 in myModel.SYS_MZYSB on tbsspbb.MZYS3 equals tbmz3.ID into joinmz3
from mz3 in joinmz3.DefaultIfEmpty()
join tbxs1 in myModel.SYS_HSB on tbsspbb.XSHS1 equals tbxs1.ID into joinxs1
from xs1 in joinxs1.DefaultIfEmpty()
join tbxs2 in myModel.SYS_HSB on tbsspbb.XSHS2 equals tbxs2.ID into joinxs2
from xs2 in joinxs2.DefaultIfEmpty()
join tbxh1 in myModel.SYS_HSB on tbsspbb.XHHS1 equals tbxh1.ID into joinxh1
from xh1 in joinxh1.DefaultIfEmpty()
join tbxh2 in myModel.SYS_HSB on tbsspbb.XHHS2 equals tbxh2.ID into joinxh2
from xh2 in joinxh2.DefaultIfEmpty()
join tbzs1 in myModel.SYS_SSYSB on tbsspbb.ZS1 equals tbzs1.ID into joinzs1
from zs1 in joinzs1.DefaultIfEmpty()
join tbzs2 in myModel.SYS_SSYSB on tbsspbb.ZS2 equals tbzs2.ID into joinzs2
from zs2 in joinzs2.DefaultIfEmpty()
join tbzs3 in myModel.SYS_SSYSB on tbsspbb.ZS3 equals tbzs3.ID into joinzs3
from zs3 in joinzs1.DefaultIfEmpty()
join tbzt in myModel.SYS_PBZTB on tbsspbb.PBZT equals tbzt.ID
join tbqklx in myModel.SYS_SSQKLXB on tbssxxb.SSQKLXID equals tbqklx.ID
join tbssdj in myModel.SYS_SSDJB on tbssxxb.SSDJID equals tbssdj.ID
where sssb.SFRJ == true
select new Cus_SSPB
{
ID = tbsspbb.ID,
BZ = tbsspbb.BZ,
HZXM = tbsspbb.HZXM,
KSID = tbsspbb.KSID,
KSMC = tbksb.KSMC,
SSMC = tbssxxb.SSMC,
MZYS1 = mz1.YSMC,
MZYS1ID = tbsspbb.MZYS1,
MZYS2 = mz2.YSMC,
MZYS2ID = tbsspbb.MZYS2,
MZYS3 = mz3.YSMC,
MZYS3ID = tbsspbb.MZYS3,
PBZT = tbzt.Name,
PBZTID = tbsspbb.PBZT,
SQDH = tbsspbb.SQDH,
SSKSSJ = tbsspbb.SSKSSJ,
SSSID = tbsspbb.SSSID,
SSSMC = sssb.SSSMC,
SSZSC = tbsspbb.SSZSC,
XSHS1 = xs1.HSMC,
XSHS1ID = tbsspbb.XSHS1,
XSHS2 = xs2.HSMC,
XSHS2ID = tbsspbb.XSHS2,
XHHS1 = xh1.HSMC,
XHHS1ID = tbsspbb.XHHS1,
XHHS2 = xh2.HSMC,
XHHS2ID = tbsspbb.XHHS2,
ZDYS = tbysb.YSXM,
ZDYSID = tbsspbb.ZDYS,
ZS1 = zs1.YSXM,
ZS1ID = tbsspbb.ZS1,
ZS2 = zs2.YSXM,
ZS2ID = tbsspbb.ZS2,
ZS3 = zs3.YSXM,
ZS3ID = tbsspbb.ZS3,
QKLX = tbqklx.QKLX,
SSDJ = tbssdj.SSDJ,
QJSC = tbsspbb.QJSC,
QZ = tbsspbb.QZ,
SFJZ = tbsspbb.SFJZ,
SQSJ = tbsspbb.SQSJ,
SQZD = tbsspbb.SQZD,
SSJSSJ = tbsspbb.SSJSSJ,
SSRQ = tbsspbb.SSRQ,
ZLKH = tbsspbb.ZLKH,
ZYH = tbsspbb.ZYH,
SSSC = tbsspbb.SSSC,
SSID = tbsspbb.SSID,
}).ToList();
string strtj = tj.Text;
if (strtj != string.Empty)
{
listsspb = listsspb.Where(a => a.SSMC.Contains(strtj) || a.HZXM.Contains(strtj) || a.ZDYS.Contains(strtj)).ToList();
}
int sssid = Convert.ToInt32(sss.SelectedValue);
int ztid = Convert.ToInt32(zt.SelectedValue);
if (sssid != 0)
{
listsspb = listsspb.Where(a => Convert.ToInt32(a.SSSID) == sssid).ToList();
}
if (ztid != 0)
{
listsspb = listsspb.Where(a => a.PBZTID == ztid).ToList();
}
//DateTime? sskssj = Convert.ToDateTime(kssj.SelectedDate).Date;
//DateTime? ssjssj = Convert.ToDateTime(jssj.SelectedDate).Date.AddDays(1).AddSeconds(-1);
//listsspb = listsspb.Where(a => a.SSKSSJ > sskssj && a.SSKSSJ < ssjssj).ToList();
sspbdata.ItemsSource = listsspb;
}
private void btn_xz_Click(object sender, RoutedEventArgs e)
{
XZRJSSWindow window = new XZRJSSWindow(user);
window.ShowDialog();
SelectPBXX();
}
private void btn_xg_Click(object sender, RoutedEventArgs e)
{
if (selectedRow == null)
{
MessageBox.Show("请选择需要修改的内容");
return;
}
if (selectedRow.ID != 0)
{
if (selectedRow.PBZTID == 4)
{
MessageBox.Show("已完成不能修改");
return;
}
if (selectedRow.PBZTID == 3)
{
MessageBox.Show("已取消不能修改");
return;
}
RJRYPBWindow window = new RJRYPBWindow(selectedRow);
window.ShowDialog();
SelectPBXX();
}
}
/// <summary>
/// 取消
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btn_qx_Click(object sender, RoutedEventArgs e)
{
if (selectedRow.ID != 0)
{
if (selectedRow.PBZTID == 3)
{
MessageBox.Show("该排班已经取消!");
return;
}
if (selectedRow.PBZTID == 4)
{
MessageBox.Show("该排班已完成!");
return;
}
MessageBoxResult dr = MessageBox.Show("确定要取消排班吗?", "提示", MessageBoxButton.OKCancel, MessageBoxImage.Question);
if (dr == MessageBoxResult.OK)
{
try
{
var pbb = (from tbpbb in myModel.Bus_RJSSB
where tbpbb.ID == selectedRow.ID
select new
{
tbpbb,
}).Single();
Bus_RJSSB buspbb = new Bus_RJSSB();
buspbb = pbb.tbpbb;
buspbb.PBZT = 3;
Bus_PBRZB pbrz = new Bus_PBRZB();
pbrz.CZLX = 6;
pbrz.CZRYID = user.ID;
pbrz.SQDH = buspbb.SQDH;
myModel.Bus_PBRZB.Add(pbrz);
myModel.SaveChanges();
myModel.Entry(buspbb).State = System.Data.Entity.EntityState.Modified;
myModel.SaveChanges();
MessageBox.Show("取消成功");
SelectPBXX();
}
catch (Exception ex)
{
MessageBox.Show("取消失败" + ex.ToString());
}
}
}
else
{
MessageBox.Show("请选择需要取消的排班");
}
}
/// <summary>
/// 刷新
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btn_sx_Click(object sender, RoutedEventArgs e)
{
SelectPBXX();
}
}
}