internal void SelectUser_OnClick(object sender, EventArgs e)
        {
            if (_isAsTask)
            {
                findText = null;
                BusinessProcess.GlobalVariables.Remove(Parameters.IsAsTask);
                Navigation.ModalMove(nameof(AddTaskScreen),
                                     new Dictionary <string, object>
                {
                    { Parameters.IdUserId, ((VerticalLayout)sender).Id }
                });
            }
            else
            {
                try
                {
                    var eventId = (string)Variables[Parameters.IdCurrentEventId];
                    Utils.TraceMessage($"{eventId.GetType()}");
                    var currentEvent = (Event)DBHelper.LoadEntity(eventId);
                    var user         = (User)DBHelper.LoadEntity(((VerticalLayout)sender).Id);

                    Dialog.Ask(Translator.Translate("assign_on") + " " + user.Description + "?", (o, args) =>
                    {
                        if (args.Result == Dialog.Result.No)
                        {
                            return;
                        }

                        currentEvent.UserMA = user.Id;
                        DBHelper.SaveEntity(currentEvent);

                        try
                        {
                            PushNotification.PushMessage(Translator.Translate("assign_task"), new[] { $"{user.Id.Guid}" });
                        }
                        catch (Exception exception)
                        {
                            Utils.TraceMessage($"{exception.Message}{Environment.NewLine}" +
                                               $"{exception.StackTrace}");
                        }
                        finally
                        {
                            findText = null;
                            Navigation.CleanStack();
                            Navigation.ModalMove(nameof(EventListScreen));
                        }
                    });
                }
                catch (Exception exception)
                {
                    Utils.TraceMessage($"{exception.Message}" +
                                       $"{Environment.NewLine} {exception.StackTrace}");
                }
            }
        }
Exemple #2
0
        private void SendMessage()
        {
            var recipiences = GetRecipiences();

            if (recipiences == null)
            {
                Utils.TraceMessage($"Не нашлось пользователей, которым нужно отправлять сообщения.");
                return;
            }

            var currenTender = (Tender)DBHelper.LoadEntity($"{Variables[Parameters.IdTenderId]}");

            PushNotification.PushMessage($"Новое сообщение по тендеру {currenTender.Number}", recipiences);
        }
Exemple #3
0
        internal void CreateTask_OnClick(object sender, EventArgs e)
        {
            if (!CheckAllEventData())
            {
                return;
            }

            _event.Id     = DbRef.CreateInstance("Document_Event", Guid.NewGuid());
            _event.Status = StatusyEvents.GetDbRefFromEnum(StatusyEventsEnum.Appointed);
            _event.Date   = DateTime.Now;
            _event.Author = Settings.UserDetailedInfo.Id;

            DBHelper.SaveEntity(_event);
            PushNotification.PushMessage(Translator.Translate("new_task"),
                                         new[] { $"{_event.UserMA.Guid}" });
            _event = null;
            Variables[Parameters.IdClientId] = null;
            Navigation.Back();
        }