@ -110,76 +110,76 @@ namespace XGLFinishPro.Views
{
{
List < FoamingMacModel > orderList = new List < FoamingMacModel > ( ) ;
List < FoamingMacModel > orderList = new List < FoamingMacModel > ( ) ;
int currHour = DateTime . Now . Hour ;
//int currHour = DateTime.Now.Hour ;
int currMinute = DateTime . Now . Minute ;
//int currMinute = DateTime.Now.Minute ;
//modelWareHouse = new List<WorkOrder>();
// //modelWareHouse = new List<WorkOrder>();
//userDbWareHouse = new DBService();
// //userDbWareHouse = new DBService();
int shiftId = 0 ;
//int shiftId = 0 ;
DataTable shiftlist = formingMachineService . GetShiftList ( ) ;
//DataTable shiftlist = formingMachineService.GetShiftList() ;
string endTimeRecord = "" ;
//string endTimeRecord = "" ;
string startTimeRecord = "" ;
//string startTimeRecord = "" ;
foreach ( DataRow shift in shiftlist . Rows )
//foreach (DataRow shift in shiftlist.Rows )
{
// {
string [ ] timeStart = shift [ "Shift_Start_Time" ] . ToString ( ) . Split ( ':' ) ;
// string[] timeStart = shift["Shift_Start_Time"].ToString().Split(':');
string [ ] timeEnd = shift [ "Shift_End_Time" ] . ToString ( ) . Split ( ':' ) ;
// string[] timeEnd = shift["Shift_End_Time"].ToString().Split(':');
// 创建两个不带日期的时间点
// // 创建两个不带日期的时间点
TimeSpan currTime = new TimeSpan ( currHour , currMinute , 0 ) ; // 获取当前小时+分钟数
// TimeSpan currTime = new TimeSpan(currHour, currMinute, 0); // 获取当前小时+分钟数
TimeSpan startTime = new TimeSpan ( Convert . ToInt32 ( timeStart [ 0 ] ) , Convert . ToInt32 ( timeStart [ 1 ] ) , 0 ) ; // 表示9小时45分钟0秒
// TimeSpan startTime = new TimeSpan(Convert.ToInt32(timeStart[0]), Convert.ToInt32(timeStart[1]), 0); // 表示9小时45分钟0秒
TimeSpan endTime = new TimeSpan ( Convert . ToInt32 ( timeEnd [ 0 ] ) , Convert . ToInt32 ( timeEnd [ 1 ] ) , 0 ) ;
// TimeSpan endTime = new TimeSpan(Convert.ToInt32(timeEnd[0]), Convert.ToInt32(timeEnd[1]), 0);
// 比较当前时间点和班次开始的时间点
// // 比较当前时间点和班次开始的时间点
int comparisonResultStart = TimeSpan . Compare ( currTime , startTime ) ;
// int comparisonResultStart = TimeSpan.Compare(currTime, startTime);
// 比较当前时间点和班次结束的时间点
// // 比较当前时间点和班次结束的时间点
int comparisonResultEnd = TimeSpan . Compare ( currTime , endTime ) ;
// int comparisonResultEnd = TimeSpan.Compare(currTime, endTime);
//if (comparisonResultStart > 0) { Console.WriteLine("time1 大于 time2"); }
// //if (comparisonResultStart > 0) { Console.WriteLine("time1 大于 time2"); }
if ( comparisonResultStart > = 0 & & comparisonResultEnd < 0 )
// if (comparisonResultStart >= 0 && comparisonResultEnd < 0)
{
// {
endTimeRecord = shift [ "Shift_Start_Time" ] . ToString ( ) ;
// endTimeRecord = shift["Shift_Start_Time"].ToString();
startTimeRecord = shift [ "Shift_End_Time" ] . ToString ( ) ;
// startTimeRecord = shift["Shift_End_Time"].ToString();
shiftId = Convert . ToInt32 ( shift [ "shift_id" ] . ToString ( ) ) ;
// shiftId = Convert.ToInt32(shift["shift_id"].ToString());
break ;
// break;
}
// }
else if ( comparisonResultStart > = 0 | | comparisonResultEnd < 0 )
// else if (comparisonResultStart >= 0 || comparisonResultEnd < 0)
{
// {
endTimeRecord = shift [ "Shift_Start_Time" ] . ToString ( ) ;
// endTimeRecord = shift["Shift_Start_Time"].ToString();
startTimeRecord = shift [ "Shift_End_Time" ] . ToString ( ) ;
// startTimeRecord = shift["Shift_End_Time"].ToString();
shiftId = Convert . ToInt32 ( shift [ "shift_id" ] . ToString ( ) ) ;
// shiftId = Convert.ToInt32(shift["shift_id"].ToString());
break ;
// break;
}
// }
//if (Convert.ToInt32(timeStart[0]) <= currHourWithDecimal && currHourWithDecimal < Convert.ToInt32(timeEnd[0]))
// //if (Convert.ToInt32(timeStart[0]) <= currHourWithDecimal && currHourWithDecimal < Convert.ToInt32(timeEnd[0]))
//{
// //{
// shiftId = shift.shiftId;
// // shiftId = shift.shiftId;
// break;
// // break;
//}
// //}
//else if (currHourWithDecimal >= Convert.ToInt32(timeStart[0]) || currHourWithDecimal < Convert.ToInt32(timeEnd[0]))
// //else if (currHourWithDecimal >= Convert.ToInt32(timeStart[0]) || currHourWithDecimal < Convert.ToInt32(timeEnd[0]))
//{
// //{
// shiftId = shift.shiftId;
// // shiftId = shift.shiftId;
// break;
// // break;
//}
// //}
}
// }
string [ ] endTimeReally = endTimeRecord . Split ( ':' ) ;
//string[] endTimeReally = endTimeRecord.Split(':') ;
string [ ] startTimeReally = startTimeRecord . Split ( ':' ) ;
//string[] startTimeReally = startTimeRecord.Split(':') ;
DateTime currShiftDate = DateTime . Now . Date ;
//DateTime currShiftDate = DateTime.Now.Date ;
TimeSpan currTimeNew = new TimeSpan ( currHour , currMinute , 0 ) ; // 获取当前小时+分钟数
//TimeSpan currTimeNew = new TimeSpan(currHour, currMinute, 0); // 获取当前小时+分钟数
TimeSpan startTimeNew = new TimeSpan ( Convert . ToInt32 ( startTimeReally [ 0 ] ) , Convert . ToInt32 ( startTimeReally [ 1 ] ) , 0 ) ; // 表示9小时45分钟0秒
//TimeSpan startTimeNew = new TimeSpan(Convert.ToInt32(startTimeReally[0]), Convert.ToInt32(startTimeReally[1]), 0); // 表示9小时45分钟0秒
TimeSpan endTimeNew = new TimeSpan ( Convert . ToInt32 ( endTimeReally [ 0 ] ) , Convert . ToInt32 ( endTimeReally [ 1 ] ) , 0 ) ; // 表示9小时45分钟0秒
//TimeSpan endTimeNew = new TimeSpan(Convert.ToInt32(endTimeReally[0]), Convert.ToInt32(endTimeReally[1]), 0); // 表示9小时45分钟0秒
//计算白夜班工作日期用
// //计算白夜班工作日期用
int resultstart = TimeSpan . Compare ( currTimeNew , startTimeNew ) ;
//int resultstart = TimeSpan.Compare(currTimeNew, startTimeNew) ;
// 比较当前时间点和班次结束的时间点
// // 比较当前时间点和班次结束的时间点
int resultEnd = TimeSpan . Compare ( currTimeNew , endTimeNew ) ;
//int resultEnd = TimeSpan.Compare(currTimeNew, endTimeNew) ;
//夜班、
// //夜班、
if ( resultstart < 0 & & resultEnd < 0 )
//if (resultstart < 0 && resultEnd < 0 )
{
// {
currShiftDate = DateTime . Now . Date . AddDays ( - 1 ) ;
// currShiftDate = DateTime.Now.Date.AddDays(-1);
}
// }
//modelWareHouse = new List<WorkOrder>();
//modelWareHouse = new List<WorkOrder>();
DataTable dt = userDbWareHouse . GetWetPlanInfo ( deviceCode , currShiftDate. ToString ( ) ) ; //formingMachineService.GetFormingMachineInfo(deviceCode, currShiftDate.ToString());
DataTable dt = userDbWareHouse . GetWetPlanInfo ( deviceCode , LoginUser. WorkDate ) ; //formingMachineService.GetFormingMachineInfo(deviceCode, currShiftDate.ToString());
if ( dt = = null ) return ;
if ( dt = = null ) return ;
if ( orderList ! = null )
if ( orderList ! = null )
@ -208,76 +208,76 @@ namespace XGLFinishPro.Views
{
{
List < FoamingMacModel > orderList = new List < FoamingMacModel > ( ) ;
List < FoamingMacModel > orderList = new List < FoamingMacModel > ( ) ;
int currHour = DateTime . Now . Hour ;
//int currHour = DateTime.Now.Hour ;
int currMinute = DateTime . Now . Minute ;
//int currMinute = DateTime.Now.Minute ;
//modelWareHouse = new List<WorkOrder>();
// //modelWareHouse = new List<WorkOrder>();
//userDbWareHouse = new DBService();
// //userDbWareHouse = new DBService();
int shiftId = 0 ;
//int shiftId = 0 ;
DataTable shiftlist = formingMachineService . GetShiftList ( ) ;
//DataTable shiftlist = formingMachineService.GetShiftList() ;
string endTimeRecord = "" ;
//string endTimeRecord = "" ;
string startTimeRecord = "" ;
//string startTimeRecord = "" ;
foreach ( DataRow shift in shiftlist . Rows )
//foreach (DataRow shift in shiftlist.Rows )
{
// {
string [ ] timeStart = shift [ "Shift_Start_Time" ] . ToString ( ) . Split ( ':' ) ;
// string[] timeStart = shift["Shift_Start_Time"].ToString().Split(':');
string [ ] timeEnd = shift [ "Shift_End_Time" ] . ToString ( ) . Split ( ':' ) ;
// string[] timeEnd = shift["Shift_End_Time"].ToString().Split(':');
// 创建两个不带日期的时间点
// // 创建两个不带日期的时间点
TimeSpan currTime = new TimeSpan ( currHour , currMinute , 0 ) ; // 获取当前小时+分钟数
// TimeSpan currTime = new TimeSpan(currHour, currMinute, 0); // 获取当前小时+分钟数
TimeSpan startTime = new TimeSpan ( Convert . ToInt32 ( timeStart [ 0 ] ) , Convert . ToInt32 ( timeStart [ 1 ] ) , 0 ) ; // 表示9小时45分钟0秒
// TimeSpan startTime = new TimeSpan(Convert.ToInt32(timeStart[0]), Convert.ToInt32(timeStart[1]), 0); // 表示9小时45分钟0秒
TimeSpan endTime = new TimeSpan ( Convert . ToInt32 ( timeEnd [ 0 ] ) , Convert . ToInt32 ( timeEnd [ 1 ] ) , 0 ) ;
// TimeSpan endTime = new TimeSpan(Convert.ToInt32(timeEnd[0]), Convert.ToInt32(timeEnd[1]), 0);
// 比较当前时间点和班次开始的时间点
// // 比较当前时间点和班次开始的时间点
int comparisonResultStart = TimeSpan . Compare ( currTime , startTime ) ;
// int comparisonResultStart = TimeSpan.Compare(currTime, startTime);
// 比较当前时间点和班次结束的时间点
// // 比较当前时间点和班次结束的时间点
int comparisonResultEnd = TimeSpan . Compare ( currTime , endTime ) ;
// int comparisonResultEnd = TimeSpan.Compare(currTime, endTime);
//if (comparisonResultStart > 0) { Console.WriteLine("time1 大于 time2"); }
// //if (comparisonResultStart > 0) { Console.WriteLine("time1 大于 time2"); }
if ( comparisonResultStart > = 0 & & comparisonResultEnd < 0 )
// if (comparisonResultStart >= 0 && comparisonResultEnd < 0)
{
// {
endTimeRecord = shift [ "Shift_Start_Time" ] . ToString ( ) ;
// endTimeRecord = shift["Shift_Start_Time"].ToString();
startTimeRecord = shift [ "Shift_End_Time" ] . ToString ( ) ;
// startTimeRecord = shift["Shift_End_Time"].ToString();
shiftId = Convert . ToInt32 ( shift [ "shift_id" ] . ToString ( ) ) ;
// shiftId = Convert.ToInt32(shift["shift_id"].ToString());
break ;
// break;
}
// }
else if ( comparisonResultStart > = 0 | | comparisonResultEnd < 0 )
// else if (comparisonResultStart >= 0 || comparisonResultEnd < 0)
{
// {
endTimeRecord = shift [ "Shift_Start_Time" ] . ToString ( ) ;
// endTimeRecord = shift["Shift_Start_Time"].ToString();
startTimeRecord = shift [ "Shift_End_Time" ] . ToString ( ) ;
// startTimeRecord = shift["Shift_End_Time"].ToString();
shiftId = Convert . ToInt32 ( shift [ "shift_id" ] . ToString ( ) ) ;
// shiftId = Convert.ToInt32(shift["shift_id"].ToString());
break ;
// break;
}
// }
//if (Convert.ToInt32(timeStart[0]) <= currHourWithDecimal && currHourWithDecimal < Convert.ToInt32(timeEnd[0]))
// //if (Convert.ToInt32(timeStart[0]) <= currHourWithDecimal && currHourWithDecimal < Convert.ToInt32(timeEnd[0]))
//{
// //{
// shiftId = shift.shiftId;
// // shiftId = shift.shiftId;
// break;
// // break;
//}
// //}
//else if (currHourWithDecimal >= Convert.ToInt32(timeStart[0]) || currHourWithDecimal < Convert.ToInt32(timeEnd[0]))
// //else if (currHourWithDecimal >= Convert.ToInt32(timeStart[0]) || currHourWithDecimal < Convert.ToInt32(timeEnd[0]))
//{
// //{
// shiftId = shift.shiftId;
// // shiftId = shift.shiftId;
// break;
// // break;
//}
// //}
}
// }
string [ ] endTimeReally = endTimeRecord . Split ( ':' ) ;
//string[] endTimeReally = endTimeRecord.Split(':') ;
string [ ] startTimeReally = startTimeRecord . Split ( ':' ) ;
//string[] startTimeReally = startTimeRecord.Split(':') ;
DateTime currShiftDate = DateTime . Now . Date ;
//DateTime currShiftDate = DateTime.Now.Date ;
TimeSpan currTimeNew = new TimeSpan ( currHour , currMinute , 0 ) ; // 获取当前小时+分钟数
//TimeSpan currTimeNew = new TimeSpan(currHour, currMinute, 0); // 获取当前小时+分钟数
TimeSpan startTimeNew = new TimeSpan ( Convert . ToInt32 ( startTimeReally [ 0 ] ) , Convert . ToInt32 ( startTimeReally [ 1 ] ) , 0 ) ; // 表示9小时45分钟0秒
//TimeSpan startTimeNew = new TimeSpan(Convert.ToInt32(startTimeReally[0]), Convert.ToInt32(startTimeReally[1]), 0); // 表示9小时45分钟0秒
TimeSpan endTimeNew = new TimeSpan ( Convert . ToInt32 ( endTimeReally [ 0 ] ) , Convert . ToInt32 ( endTimeReally [ 1 ] ) , 0 ) ; // 表示9小时45分钟0秒
//TimeSpan endTimeNew = new TimeSpan(Convert.ToInt32(endTimeReally[0]), Convert.ToInt32(endTimeReally[1]), 0); // 表示9小时45分钟0秒
//计算白夜班工作日期用
// //计算白夜班工作日期用
int resultstart = TimeSpan . Compare ( currTimeNew , startTimeNew ) ;
//int resultstart = TimeSpan.Compare(currTimeNew, startTimeNew) ;
// 比较当前时间点和班次结束的时间点
// // 比较当前时间点和班次结束的时间点
int resultEnd = TimeSpan . Compare ( currTimeNew , endTimeNew ) ;
//int resultEnd = TimeSpan.Compare(currTimeNew, endTimeNew) ;
//夜班、
// //夜班、
if ( resultstart < 0 & & resultEnd < 0 )
//if (resultstart < 0 && resultEnd < 0 )
{
// {
currShiftDate = DateTime . Now . Date . AddDays ( - 1 ) ;
// currShiftDate = DateTime.Now.Date.AddDays(-1);
}
// }
//modelWareHouse = new List<WorkOrder>();
//modelWareHouse = new List<WorkOrder>();
DataTable dt = userDbWareHouse . GetWetPlanInfo ( deviceCode , currShiftDate. ToString ( ) ) ;
DataTable dt = userDbWareHouse . GetWetPlanInfo ( deviceCode , LoginUser. WorkDate ) ;
if ( dt = = null ) return ;
if ( dt = = null ) return ;
this . dgWorkOrderInfo . ItemsSource = null ;
this . dgWorkOrderInfo . ItemsSource = null ;
@ -316,9 +316,7 @@ namespace XGLFinishPro.Views
PauseOrderWin pauseOrderWin = new PauseOrderWin ( ) ;
PauseOrderWin pauseOrderWin = new PauseOrderWin ( ) ;
if ( pauseOrderWin . ShowDialog ( ) = = true )
if ( pauseOrderWin . ShowDialog ( ) = = true )
{
{
PauseRecoverOrderS ( workordercode , "w4" , pauseOrderWin ) ;
formingMachineService . UpdateWorkOrder ( workordercode , "w4" , pauseOrderWin . remark , pauseOrderWin . type , deviceCode ) ;
GetWorkOrderInfo ( ) ;
GetWorkOrderInfo ( ) ;
}
}
//MessageBoxResult result = MessageBox.Show("你确定要暂停该工单吗?", "温馨提示", MessageBoxButton.YesNo, MessageBoxImage.Information);
//MessageBoxResult result = MessageBox.Show("你确定要暂停该工单吗?", "温馨提示", MessageBoxButton.YesNo, MessageBoxImage.Information);
@ -327,6 +325,26 @@ namespace XGLFinishPro.Views
}
}
private bool PauseRecoverOrderS ( string workordercode , string status , PauseOrderWin pauseOrderWin )
{
bool updatestatus = formingMachineService . UpdateWorkOrder ( workordercode , status , pauseOrderWin . remark , pauseOrderWin . type , deviceCode ) ;
if ( ! updatestatus )
{
CustomMessageBox . Show ( "操作失败!" , CustomMessageBoxButton . OK , CustomMessageBoxIcon . Warning ) ;
}
DataTable dtSubOrders = userDbWareHouse . GetSubOrderInfo ( workordercode ) ;
if ( dtSubOrders ! = null )
{
// 递归更新子单状态
foreach ( DataRow subOrder in dtSubOrders . Rows )
{
UpdateOrderStatus ( subOrder [ "workorder_code" ] . ToString ( ) ) ;
}
}
return true ;
}
private void btnRecover_Click ( object sender , RoutedEventArgs e )
private void btnRecover_Click ( object sender , RoutedEventArgs e )
{
{
//var selectedRow = dgWorkOrderInfo.SelectedItem as FoamingMacModel;
//var selectedRow = dgWorkOrderInfo.SelectedItem as FoamingMacModel;
@ -349,7 +367,8 @@ namespace XGLFinishPro.Views
PauseOrderWin pauseOrderWin = new PauseOrderWin ( ) ;
PauseOrderWin pauseOrderWin = new PauseOrderWin ( ) ;
if ( pauseOrderWin . ShowDialog ( ) = = true )
if ( pauseOrderWin . ShowDialog ( ) = = true )
{
{
formingMachineService . UpdateWorkOrder ( workordercode , "w2" , pauseOrderWin . remark , pauseOrderWin . type , deviceCode ) ;
PauseRecoverOrderS ( workordercode , "w2" , pauseOrderWin ) ;
//formingMachineService.UpdateWorkOrder(workordercode, "w2", pauseOrderWin.remark, pauseOrderWin.type, deviceCode);
GetWorkOrderInfo ( ) ;
GetWorkOrderInfo ( ) ;
}
}
@ -439,12 +458,7 @@ namespace XGLFinishPro.Views
newReportCode = ( Convert . ToInt64 ( dtNewReportCode . Rows [ 0 ] [ "report_code" ] . ToString ( ) ) + 1 ) . ToString ( ) ;
newReportCode = ( Convert . ToInt64 ( dtNewReportCode . Rows [ 0 ] [ "report_code" ] . ToString ( ) ) + 1 ) . ToString ( ) ;
}
}
}
}
newReportCode = DateTime . Now . ToString ( "yyyyMMdd" ) + "0001" ;
}
else
{
newReportCode = ( Convert . ToInt64 ( dtNewReportCode . Rows [ 0 ] [ "report_code" ] . ToString ( ) ) + 1 ) . ToString ( ) ;
}
ExecReportWorkWin execReport = new ExecReportWorkWin ( selectedRow [ "workorder_code" ] . ToString ( ) , selectedRow [ "quantity_split" ] . ToString ( ) ) ;
ExecReportWorkWin execReport = new ExecReportWorkWin ( selectedRow [ "workorder_code" ] . ToString ( ) , selectedRow [ "quantity_split" ] . ToString ( ) ) ;
@ -535,7 +549,7 @@ namespace XGLFinishPro.Views
return ;
return ;
}
}
string workorderID = ( dgWorkOrderInfo . SelectedItem as DataRowView ) [ "workorder_ id "] . ToString ( ) ;
string workorderID = ( dgWorkOrderInfo . SelectedItem as DataRowView ) [ "workorder_ code "] . ToString ( ) ;
string status = ( dgWorkOrderInfo . SelectedItem as DataRowView ) [ "status" ] . ToString ( ) ;
string status = ( dgWorkOrderInfo . SelectedItem as DataRowView ) [ "status" ] . ToString ( ) ;
@ -547,9 +561,8 @@ namespace XGLFinishPro.Views
return ;
return ;
}
}
}
}
//更新工单状态
//更新工单状态
var updatestatus = userDbWareHouse . UpdateSycnFlag ( workorderID ) ;
if ( ! UpdateOrderStatus ( workorderID ) )
if ( ! updatestatus )
{
{
CustomMessageBox . Show ( "开始工单失败!" , CustomMessageBoxButton . OK , CustomMessageBoxIcon . Warning ) ;
CustomMessageBox . Show ( "开始工单失败!" , CustomMessageBoxButton . OK , CustomMessageBoxIcon . Warning ) ;
}
}
@ -558,6 +571,26 @@ namespace XGLFinishPro.Views
TimerDeciveState_Elapsed ( null , null ) ;
TimerDeciveState_Elapsed ( null , null ) ;
}
}
}
}
private bool UpdateOrderStatus ( string workorderID )
{
//更新工单状态
var updatestatus = userDbWareHouse . UpdateSycnFlag ( workorderID ) ;
if ( ! updatestatus )
{
CustomMessageBox . Show ( "开始工单失败!" , CustomMessageBoxButton . OK , CustomMessageBoxIcon . Warning ) ;
}
DataTable dtSubOrders = userDbWareHouse . GetSubOrderInfo ( workorderID ) ;
if ( dtSubOrders ! = null )
{
// 递归更新子单状态
foreach ( DataRow subOrder in dtSubOrders . Rows )
{
UpdateOrderStatus ( subOrder [ "workorder_code" ] . ToString ( ) ) ;
}
}
return true ;
}
}
}
public class ReportWork
public class ReportWork
{
{