change -业务闭环

main
frankiecao 1 year ago
commit 4edbed6746

@ -57,7 +57,8 @@ namespace SlnMesnac.Repository.service.Impl
public RecordStaffAttendance GetLastestOffRecord() 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; return recordStaffAttendances;
} }
} }

@ -36,7 +36,7 @@ namespace SlnMesnac.WPF.ViewModel
private ProdPlanDetailService _prodPlanDetailService; private ProdPlanDetailService _prodPlanDetailService;
private IRecordStaffAttendanceService _recordStaffAttendanceService; private IRecordStaffAttendanceService _recordStaffAttendanceService;
private string StationCode; private string StationCode;
private bool isComplete = true; public static bool isComplete = true;
/// <summary> /// <summary>
/// 按钮文字转换事件 /// 按钮文字转换事件
@ -62,6 +62,11 @@ namespace SlnMesnac.WPF.ViewModel
/// </summary> /// </summary>
public ICommand ExecuteCommand { get; private set; } public ICommand ExecuteCommand { get; private set; }
#region
public delegate void RefreshDelegate(ProdPLanInfo pLanInfo);
public static event RefreshDelegate? RefreshEvent;
#endregion
public ExecuteViewModel() public ExecuteViewModel()
{ {
_prodPlanInfoService = App.ServiceProvider.GetService<ProdPlanInfoService>(); _prodPlanInfoService = App.ServiceProvider.GetService<ProdPlanInfoService>();
@ -78,6 +83,7 @@ namespace SlnMesnac.WPF.ViewModel
ProductionReportCommand = new RelayCommand(ProductionReport); ProductionReportCommand = new RelayCommand(ProductionReport);
SearchCommand = new RelayCommand(Search); SearchCommand = new RelayCommand(Search);
ExecuteCommand = new RelayCommand(Execute); ExecuteCommand = new RelayCommand(Execute);
ProductionReportViewModel.RefreshDelegateEvent += Refresh;
} }
/// <summary> /// <summary>
@ -148,6 +154,14 @@ namespace SlnMesnac.WPF.ViewModel
_prodPlanInfoService.Update(pLanInfo); _prodPlanInfoService.Update(pLanInfo);
Search(); Search();
//查明细表显示出来 //查明细表显示出来
Refresh(pLanInfo);
isComplete = false;
}
}
//刷新明细
private void Refresh(ProdPLanInfo pLanInfo)
{
ProdPlanDetail planDetail = _prodPlanDetailService.GetPlanDetailsByPlanCode(pLanInfo.PlanCode); ProdPlanDetail planDetail = _prodPlanDetailService.GetPlanDetailsByPlanCode(pLanInfo.PlanCode);
PlanCodeText = planDetail.PlanCode; PlanCodeText = planDetail.PlanCode;
OrderCodeText = pLanInfo.OrderCode; OrderCodeText = pLanInfo.OrderCode;
@ -158,9 +172,6 @@ namespace SlnMesnac.WPF.ViewModel
ProdPLanDetailDataGrid.Clear(); ProdPLanDetailDataGrid.Clear();
ProdPLanDetailDataGrid.Add(planDetail); ProdPLanDetailDataGrid.Add(planDetail);
})); }));
isComplete = false;
}
} }
#region #region

@ -19,20 +19,25 @@ namespace SlnMesnac.WPF.ViewModel
private IBaseStaffService _baseStaffService; private IBaseStaffService _baseStaffService;
private ProdPlanInfoService _prodPlanInfoService; private ProdPlanInfoService _prodPlanInfoService;
private ProdPlanDetailService _prodPlanDetailService; private ProdPlanDetailService _prodPlanDetailService;
private IRecordStaffAttendanceService _recordStaffAttendanceService;
private ProdPLanInfo planInfo; private ProdPLanInfo planInfo;
private ProdPlanDetail planDetail; private ProdPlanDetail planDetail;
private int times; private int times;
#region
/// <summary> /// <summary>
/// 按钮文字转换事件 /// 按钮文字转换事件
/// </summary> /// </summary>
public event PropertyChangedEventHandler PropertyChanged = delegate { }; public event PropertyChangedEventHandler PropertyChanged = delegate { };
#endregion
public HandOverViewModel() public HandOverViewModel()
{ {
_prodPlanDetailService = App.ServiceProvider.GetService<ProdPlanDetailService>(); _prodPlanDetailService = App.ServiceProvider.GetService<ProdPlanDetailService>();
_prodPlanInfoService = App.ServiceProvider.GetService<ProdPlanInfoService>(); _prodPlanInfoService = App.ServiceProvider.GetService<ProdPlanInfoService>();
_recordStaffAttendanceService = App.ServiceProvider.GetService<IRecordStaffAttendanceService>();
planInfo = _prodPlanInfoService.GetRecordStaffAttendancesByConditions("", "", "", "", "1").FirstOrDefault(); planInfo = _prodPlanInfoService.GetRecordStaffAttendancesByConditions("", "", "", "", "1").FirstOrDefault();
HandoverCommand = new RelayCommand(Handover); HandoverCommand = new RelayCommand(Handover);
Init(); Init();
@ -45,6 +50,7 @@ namespace SlnMesnac.WPF.ViewModel
private void Init() private void Init()
{ {
planDetail = _prodPlanDetailService.GetPlanDetailsByPlanCode(planInfo.PlanCode); planDetail = _prodPlanDetailService.GetPlanDetailsByPlanCode(planInfo.PlanCode);
//_recordStaffAttendanceService.GetLastestOffRecord();
PlanAmountText = planDetail.PlanAmount.ToString(); PlanAmountText = planDetail.PlanAmount.ToString();
CompleteAmountText = planDetail.CompleteAmount.ToString(); CompleteAmountText = planDetail.CompleteAmount.ToString();
var hidUtils = EmployeeLoginViewModel.hidUtils; var hidUtils = EmployeeLoginViewModel.hidUtils;
@ -60,6 +66,8 @@ namespace SlnMesnac.WPF.ViewModel
{ {
string staffType = user.StaffType; string staffType = user.StaffType;
if (staffType == "1")//判断是否为班长 if (staffType == "1")//判断是否为班长
{
if (times == 0 && planDetail.CurrentStaffId == user.StaffId)
{ {
//显示记录 //显示记录
StaffIdText = user.StaffId; StaffIdText = user.StaffId;
@ -69,6 +77,22 @@ namespace SlnMesnac.WPF.ViewModel
//数量+1 //数量+1
times++; 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 else
{ {
HintText = "打卡人员非班长,打卡无效!"; HintText = "打卡人员非班长,打卡无效!";

@ -22,11 +22,17 @@ namespace SlnMesnac.WPF.ViewModel
private ProdPLanInfo planInfo; private ProdPLanInfo planInfo;
private ProdPlanDetail planDetail; private ProdPlanDetail planDetail;
#region
/// <summary> /// <summary>
/// 按钮文字转换事件 /// 按钮文字转换事件
/// </summary> /// </summary>
public event PropertyChangedEventHandler PropertyChanged = delegate { }; public event PropertyChangedEventHandler PropertyChanged = delegate { };
//刷新委托
public delegate void RefreshDelegate(ProdPLanInfo pLanInfo);
public static event RefreshDelegate RefreshDelegateEvent;
#endregion
public ProductionReportViewModel() public ProductionReportViewModel()
{ {
_prodPlanDetailService = App.ServiceProvider.GetService<ProdPlanDetailService>(); _prodPlanDetailService = App.ServiceProvider.GetService<ProdPlanDetailService>();
@ -129,6 +135,8 @@ namespace SlnMesnac.WPF.ViewModel
Refresh(); Refresh();
NewAmountText = null; NewAmountText = null;
HintText = "已提交!"; HintText = "已提交!";
RefreshDelegateEvent?.Invoke(planInfo);
ExecuteViewModel.isComplete = true;
} }
else else
{ {

Loading…
Cancel
Save