using SchedulingSystem.EntityClass;
using SchedulingSystemClient.EntityClass;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows;
using System.Windows.Controls;
namespace SchedulingSystemClient
{
///
/// SSPBWindow.xaml 的交互逻辑
///
public partial class SSPBWindow : UserControl
{
public SSPBWindow(SYS_YHB yh)
{
InitializeComponent();
user = yh;
}
SYS_YHB user = new SYS_YHB();
SurgerySchedulingEntities myModel = new SurgerySchedulingEntities();
List listsspb = new List();
private void UserControl_Loaded(object sender, RoutedEventArgs e)
{
List listsss = new List();
List listzt = new List();
listsss = (from tbsss in myModel.SYS_SSSB
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;
kssj.Text = DateTime.Now.ToString();
jssj.Text = DateTime.Now.AddDays(6).ToString();
//SmartScheduling();
SelectPBXX();
}
///
/// 查询排班信息
///
private void SelectPBXX()
{
PaiBan.GengXinZhuangTai();
PaiBan.SmartScheduling();
listsspb = (from tbsspbb in myModel.Bus_SSPBB
join tbsssqb in myModel.Bus_SSSQB on tbsspbb.SQDH equals tbsssqb.SQDH
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 tbsssqb.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 tbsssqb.KSID equals tbksb.ID
join tbysb in myModel.SYS_SSYSB on tbsssqb.ZDYSID 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
select new Cus_SSPB
{
ID = tbsspbb.ID,
BZ = tbsspbb.BZ,
HZXM = tbsssqb.HZXM,
KSID = tbsssqb.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 = tbsssqb.SQDH,
SSKSSJ = tbsspbb.SSKSSJ,
SSSID = tbsspbb.SSSID,
SSSMC = sssb.SSSMC,
SSZSC = tbssscb.SSSC,
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 = tbsssqb.ZDYSID,
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;
}
Cus_SSPB selectedRow = new Cus_SSPB();
private void sspbdata_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
selectedRow = sspbdata.SelectedItem as Cus_SSPB;
}
//private void btn_pb_Click(object sender, RoutedEventArgs e)
//{
// try
// {
// PaiBan.GengXinZhuangTai();
// PaiBan.SmartScheduling();
// MessageBox.Show("排班成功");
// SelectPBXX();
// }
// catch (Exception ex)
// {
// MessageBox.Show(ex.ToString());
// }
//}
private void btn_xg_Click(object sender, RoutedEventArgs e)
{
RYPBWindow window = new RYPBWindow(selectedRow);
window.ShowDialog();
}
private void btn_sx_Click(object sender, RoutedEventArgs e)
{
SelectPBXX();
}
}
}