Пример #1
0
        private ProcessAction ToProcessAction(IActionKeeper item)
        {
            ProcessAction pa = new ProcessAction();

            pa.ActionId        = item.ActionId;
            pa.ProcessActionId = 0;
            pa.ActionName      = item.ActionName;
            pa.GivenTime       = item.GivenTime;
            pa.IsChecked       = item.IsChecked;
            pa.LastChecks      = item.LastChecks;
            pa.PlaceId         = item.PlaceId;
            pa.PlaceName       = item.PlaceName;
            pa.CreatedOn       = DateTime.Now;
            pa.CreatedBy       = RuntimeSettings.CurrentUser.UserId;
            return(pa);
        }
Пример #2
0
        async void Handle_ItemTapped(object sender, ItemTappedEventArgs e)
        {
            if (e.Item == null)
            {
                return;
            }
            if ((bool)((IActionKeeper)e.Item).IsMutable)
            {
                if ((bool)((IActionKeeper)e.Item).IsChecked)
                {
                    ((IActionKeeper)e.Item).IsChecked = false;
                    IActionKeeper item = ((IActionKeeper)e.Item);
                    if (vm.CheckedItems.Any(i => i.ActionId == item.ActionId))
                    {
                        vm.CheckedItems.Remove(vm.CheckedItems.FirstOrDefault(i => i.ActionId == item.ActionId));
                    }
                }
                else
                {
                    ((IActionKeeper)e.Item).IsChecked = true;
                    IActionKeeper item = ((IActionKeeper)e.Item);
                    if (!vm.CheckedItems.Any(i => i.ActionId == item.ActionId))
                    {
                        vm.CheckedItems.Add(ToProcessAction(item));
                    }
                }
            }
            else
            {
                DependencyService.Get <IToaster>().LongAlert($"Czynność została oznaczona jako wykonana w innej obsłudze i nie można jej zmienić..");
            }



            //Deselect Item
            ((ListView)sender).SelectedItem = null;
        }