private async void CountingSensor_OnPinValueChanged(object sender, GPIOPin.PinValueChangedEventArgs e) { if (e.Edge == Edge.Rise) { //await LockObject.WaitAsync(); if (PlanView.remain > 0) { var Plans = (await Api.Controller.GetProductionPlanAsync(Setting.SelectedLine.ID)). Where(x => x.Is_Active == true).ToList(); if (Plans != null) { int count = Plans.Count; var Plan = Plans.Where(x => x.Product_ID == Setting.SelectedProduct.ID).FirstOrDefault(); if (Plan != null) { if (Plan.Remain_Qty > 0) { Plan.Good_Prod_Qty += 1; Plan.Remain_Qty--; await Api.Controller.UpdatePlan(Plan); } } } } //LockObject.Release(); } }
private async void CountingSensor_OnPinValueChanged(object sender, GPIOPin.PinValueChangedEventArgs e) { if (e.Edge == Edge.Rise) { await LockObject.WaitAsync(); //if (PlanView.remain > 0) { var Plan = await Api.Controller.GetProductionPlanAsync(Setting.SelectedLine.LineInfoID, Setting.SelectedProduct.ProductID); if (Plan != null) { if (Plan.Remain > 0) { Plan.Elapsed += 1; Plan.Remain--; await Api.Controller.UpdatePlan(Plan); } } } LockObject.Release(); } }