diff --git a/SlnMesnac.Repository/service/Impl/RecordStaffAttendanceServiceImpl.cs b/SlnMesnac.Repository/service/Impl/RecordStaffAttendanceServiceImpl.cs
index afd21bf..4d4a189 100644
--- a/SlnMesnac.Repository/service/Impl/RecordStaffAttendanceServiceImpl.cs
+++ b/SlnMesnac.Repository/service/Impl/RecordStaffAttendanceServiceImpl.cs
@@ -57,7 +57,8 @@ namespace SlnMesnac.Repository.service.Impl
public RecordStaffAttendance GetLastestOffRecord()
{
- RecordStaffAttendance recordStaffAttendances = _rep.AsQueryable().Where(x => x.AttendanceType == "1").OrderByDescending(x => x.CreateTime).First();
+ RecordStaffAttendance recordStaffAttendances = _rep.AsQueryable().Where(x => x.AttendanceType == "1")
+ .OrderByDescending(x => x.CreateTime).First();
return recordStaffAttendances;
}
}
diff --git a/SlnMesnac.WPF/ViewModel/ExecuteViewModel.cs b/SlnMesnac.WPF/ViewModel/ExecuteViewModel.cs
index bd02dc8..c4d090f 100644
--- a/SlnMesnac.WPF/ViewModel/ExecuteViewModel.cs
+++ b/SlnMesnac.WPF/ViewModel/ExecuteViewModel.cs
@@ -36,7 +36,7 @@ namespace SlnMesnac.WPF.ViewModel
private ProdPlanDetailService _prodPlanDetailService;
private IRecordStaffAttendanceService _recordStaffAttendanceService;
private string StationCode;
- private bool isComplete = true;
+ public static bool isComplete = true;
///
/// 按钮文字转换事件
@@ -62,6 +62,11 @@ namespace SlnMesnac.WPF.ViewModel
///
public ICommand ExecuteCommand { get; private set; }
+ #region
+ public delegate void RefreshDelegate(ProdPLanInfo pLanInfo);
+ public static event RefreshDelegate? RefreshEvent;
+ #endregion
+
public ExecuteViewModel()
{
_prodPlanInfoService = App.ServiceProvider.GetService();
@@ -78,6 +83,7 @@ namespace SlnMesnac.WPF.ViewModel
ProductionReportCommand = new RelayCommand(ProductionReport);
SearchCommand = new RelayCommand(Search);
ExecuteCommand = new RelayCommand(Execute);
+ ProductionReportViewModel.RefreshDelegateEvent += Refresh;
}
///
@@ -148,7 +154,15 @@ namespace SlnMesnac.WPF.ViewModel
_prodPlanInfoService.Update(pLanInfo);
Search();
//查明细表显示出来
- ProdPlanDetail planDetail = _prodPlanDetailService.GetPlanDetailsByPlanCode(pLanInfo.PlanCode);
+ Refresh(pLanInfo);
+ isComplete = false;
+ }
+ }
+
+ //刷新明细
+ private void Refresh(ProdPLanInfo pLanInfo)
+ {
+ ProdPlanDetail planDetail = _prodPlanDetailService.GetPlanDetailsByPlanCode(pLanInfo.PlanCode);
PlanCodeText = planDetail.PlanCode;
OrderCodeText = pLanInfo.OrderCode;
MaterialCodeText = planDetail.MaterialCode;
@@ -158,11 +172,8 @@ namespace SlnMesnac.WPF.ViewModel
ProdPLanDetailDataGrid.Clear();
ProdPLanDetailDataGrid.Add(planDetail);
}));
- isComplete = false;
- }
-
}
-
+
#region
///
/// 订单
diff --git a/SlnMesnac.WPF/ViewModel/HandOverViewModel.cs b/SlnMesnac.WPF/ViewModel/HandOverViewModel.cs
index 607065a..c904672 100644
--- a/SlnMesnac.WPF/ViewModel/HandOverViewModel.cs
+++ b/SlnMesnac.WPF/ViewModel/HandOverViewModel.cs
@@ -19,20 +19,25 @@ namespace SlnMesnac.WPF.ViewModel
private IBaseStaffService _baseStaffService;
private ProdPlanInfoService _prodPlanInfoService;
private ProdPlanDetailService _prodPlanDetailService;
+ private IRecordStaffAttendanceService _recordStaffAttendanceService;
private ProdPLanInfo planInfo;
private ProdPlanDetail planDetail;
private int times;
+ #region
///
/// 按钮文字转换事件
///
public event PropertyChangedEventHandler PropertyChanged = delegate { };
+ #endregion
+
public HandOverViewModel()
{
_prodPlanDetailService = App.ServiceProvider.GetService();
_prodPlanInfoService = App.ServiceProvider.GetService();
+ _recordStaffAttendanceService = App.ServiceProvider.GetService();
planInfo = _prodPlanInfoService.GetRecordStaffAttendancesByConditions("", "", "", "", "1").FirstOrDefault();
HandoverCommand = new RelayCommand(Handover);
Init();
@@ -45,6 +50,7 @@ namespace SlnMesnac.WPF.ViewModel
private void Init()
{
planDetail = _prodPlanDetailService.GetPlanDetailsByPlanCode(planInfo.PlanCode);
+ //_recordStaffAttendanceService.GetLastestOffRecord();
PlanAmountText = planDetail.PlanAmount.ToString();
CompleteAmountText = planDetail.CompleteAmount.ToString();
var hidUtils = EmployeeLoginViewModel.hidUtils;
@@ -61,13 +67,31 @@ namespace SlnMesnac.WPF.ViewModel
string staffType = user.StaffType;
if (staffType == "1")//判断是否为班长
{
- //显示记录
- StaffIdText = user.StaffId;
- StaffNameText = user.StaffName;
- StaffTypeText = user.StaffType;
- TeamCodeText = user.TeamCode;
- //数量+1
- times++;
+ if (times == 0 && planDetail.CurrentStaffId == user.StaffId)
+ {
+ //显示记录
+ StaffIdText = user.StaffId;
+ StaffNameText = user.StaffName;
+ StaffTypeText = user.StaffType;
+ TeamCodeText = user.TeamCode;
+ //数量+1
+ times++;
+ }
+ else if (times == 1)
+ {
+ StaffIdText = user.StaffId;
+ planDetail.CurrentStaffId = user.StaffId;
+ StaffNameText = user.StaffName;
+ StaffTypeText = user.StaffType;
+ TeamCodeText = user.TeamCode;
+ _prodPlanDetailService.Insert(planDetail);//更换班组长后插入一条明细记录
+ //数量+1
+ times++;
+ }
+ else
+ {
+ HintText = "当前班组长先打卡!";
+ }
}
else
{
diff --git a/SlnMesnac.WPF/ViewModel/ProductionReportViewModel.cs b/SlnMesnac.WPF/ViewModel/ProductionReportViewModel.cs
index 276be28..27106e0 100644
--- a/SlnMesnac.WPF/ViewModel/ProductionReportViewModel.cs
+++ b/SlnMesnac.WPF/ViewModel/ProductionReportViewModel.cs
@@ -22,11 +22,17 @@ namespace SlnMesnac.WPF.ViewModel
private ProdPLanInfo planInfo;
private ProdPlanDetail planDetail;
+ #region
///
/// 按钮文字转换事件
///
public event PropertyChangedEventHandler PropertyChanged = delegate { };
+ //刷新委托
+ public delegate void RefreshDelegate(ProdPLanInfo pLanInfo);
+ public static event RefreshDelegate RefreshDelegateEvent;
+ #endregion
+
public ProductionReportViewModel()
{
_prodPlanDetailService = App.ServiceProvider.GetService();
@@ -129,6 +135,8 @@ namespace SlnMesnac.WPF.ViewModel
Refresh();
NewAmountText = null;
HintText = "已提交!";
+ RefreshDelegateEvent?.Invoke(planInfo);
+ ExecuteViewModel.isComplete = true;
}
else
{