コード例 #1
0
        private async Task Get_Time()
        {
            IEnumerable <ResultParticipant> resultParticipations = await resultParticipationServise.Get();

            IEnumerable <Participation> participations = await participationService.Get();

            IEnumerable <Distantion> distantions = await distantionsServise.Get();

            IEnumerable <Competentions> competentions = await competentionsServise.Get();

            IEnumerable <InfoUser> infoUsers = await registrationUsersService.Get_user();

            var info = from r in resultParticipations
                       join p in participations on r.IdParticipation equals p.IdParticipation
                       join c in competentions on p.IdCompetentions equals c.IdCompetentions
                       join d in distantions on c.IdDistantion equals d.IdDistantion
                       join i in infoUsers on p.IdUser equals i.IdUsers
                       select new
            {
                r.ResultTime,
                r.Mesto,
                d.NameDistantion,
                i.Login,
                r.IdResultParticipation
            };

            var res = info.ToList();

            if (counts < res.Count || counts > res.Count)
            {
                lstData.ItemsSource = res;
                counts = res.Count;
            }
        }
コード例 #2
0
        private async Task Get_Time()
        {
            IEnumerable <InfoUser> infoUsers = await registrationUsersService.Get_user();

            IEnumerable <CategoriYars> categoriYars = await categoriYarsServise.Get();

            IEnumerable <Participation> participations = await participationService.Get();

            IEnumerable <Distantion> distantions = await distantionsServise.Get();

            IEnumerable <Competentions> competentions = await competentionsServise.Get();

            var info = from p in participations
                       join k in competentions on p.IdCompetentions equals k.IdCompetentions
                       join d in distantions on k.IdDistantion equals d.IdDistantion
                       join i in infoUsers on p.IdUser equals i.IdUsers
                       select new
            {
                p.IdUser,
                i.Login,
                k.Date,
                p.IdStatusVerification,
                d.NameDistantion,
            };
            var res = info.ToList();

            if (counts < res.Count || counts > res.Count)
            {
                lstData.ItemsSource = res;
                counts = res.Count;
            }
        }
コード例 #3
0
        private async Task Poisk(string filtr)
        {
            InfoUser loginUsers = await loginUsersService.Get(App.Current.Properties["token"].ToString());

            IEnumerable <ResultParticipant> resultParticipations = await resultParticipationServise.Get();

            IEnumerable <Participation> participations = await participationService.Get();

            IEnumerable <Distantion> distantions = await distantionsServise.Get();

            IEnumerable <Competentions> competentions = await competentionsServise.Get();

            IEnumerable <InfoUser> infoUsers = await registrationUsersService.Get_user();

            var info = from r in resultParticipations
                       join p in participations on r.IdParticipation equals p.IdParticipation
                       join c in competentions on p.IdCompetentions equals c.IdCompetentions
                       join d in distantions on c.IdDistantion equals d.IdDistantion
                       join i in infoUsers on p.IdUser equals i.IdUsers
                       select new
            {
                r.ResultTime,
                r.Mesto,
                d.NameDistantion,
                c.Date,
                i.IdUsers,
                p.IdStatusVerification,
                r.IdResultParticipation,
            };

            info = info.Where(x => x.IdUsers == loginUsers.IdUsers);
            switch (filtr)
            {
            case "PoiskNameDistans": info = info.Where(p => p.NameDistantion == PoiskNameDistans.Text || p.NameDistantion.StartsWith(PoiskNameDistans.Text)); break;

            case "PoiskDate": info = info.Where(p => p.Date == ID_Time); break;
            }
            var res = info.ToList();

            if (res.Count != 0)
            {
                lstData.ItemsSource = res;
                YesRecords.Height   = new GridLength(1, GridUnitType.Star);
                NoRecords.Height    = 0;
            }
            else
            {
                lstData.ItemsSource = res;
                YesRecords.Height   = 0;
                NoRecords.Height    = new GridLength(1, GridUnitType.Star);
            }
        }
コード例 #4
0
        private async Task GetInfomationAsync()
        {
            IEnumerable <InfoUser> infoUsers = await registrationUsersService.Get_user();

            IEnumerable <CategoriYars> categoriYars = await categoriYarsServise.Get();

            IEnumerable <Participation> participations = await participationService.Get();

            IEnumerable <Distantion> distantions = await distantionsServise.Get();

            IEnumerable <Competentions> competentions = await competentionsServise.Get();

            var info = from p in participations
                       join k in competentions on p.IdCompetentions equals k.IdCompetentions
                       join d in distantions on k.IdDistantion equals d.IdDistantion
                       join i in infoUsers on p.IdUser equals i.IdUsers
                       select new
            {
                p.IdUser,
                i.Login,
                k.Date,
                p.IdStatusVerification,
                d.NameDistantion,
            };
            var res = info.ToList();
        }
コード例 #5
0
        private async Task Get()
        {
            IEnumerable <ResultParticipant> resultParticipations = await resultParticipationServise.Get();

            IEnumerable <Participation> participations = await participationService.Get();

            IEnumerable <Distantion> distantions = await distantionsServise.Get();

            IEnumerable <Competentions> competentions = await competentionsServise.Get();

            IEnumerable <InfoUser> infoUsers = await registrationUsersService.Get_user();

            var info = from r in resultParticipations
                       join p in participations on r.IdParticipation equals p.IdParticipation
                       join c in competentions on p.IdCompetentions equals c.IdCompetentions
                       join d in distantions on c.IdDistantion equals d.IdDistantion
                       join i in infoUsers on p.IdUser equals i.IdUsers
                       select new
            {
                d.NameDistantion,
                i.Login,
                r.IdResultParticipation
            };

            var groups = from p in info
                         group p by p.NameDistantion into g
                         select new
            {
                g.Key,
                Count = g.Count()
            };

            List <Entry> entries = new List <Entry>(groups.Count());

            int k = 0;

            string[] color = new string[] { "#dbf720", "#42d62b", "#cf2934", "#f20acb", "#9090e8", "#183bed", "#926eae", "#FF1943", "#ab5b68", "#0af2bc", "#cac4b0", "#fa0f0f", "#18ed54" };
            foreach (var item in groups)
            {
                if (color.Length == k++)
                {
                    k = 0;
                }
                entries.Add(new Entry(item.Count)
                {
                    Color      = SKColor.Parse(color[k]),
                    Label      = item.Key,
                    ValueLabel = item.Count.ToString()
                });
            }
            Chart2.Chart = new LineChart()
            {
                Entries = entries
            };
            // Chart4.Chart = new BarChart() { Entries = entries };
        }
コード例 #6
0
        private async void lstData_ItemSelected(object sender, SelectedItemChangedEventArgs e)
        {
            if (e.SelectedItem != null)
            {
                Distantion obj = (Distantion)e.SelectedItem;
                string     res = await DisplayActionSheet("Выберите операцию", "Отмена", null, "Обновить данные", "Удалить данные");

                switch (res)
                {
                case "Обновить данные":
                    await Navigation.PushModalAsync(new AddDistantionsPage(obj.IdDistantion), animate);

                    break;

                case "Удалить данные":
                    bool result = await DisplayAlert("Подтвердить действие", "Вы хотите удалить элемент?", "Да", "Нет");

                    if (result == true)
                    {
                        Distantion Del_Distantion = await distantionsServise.Delete(obj.IdDistantion);

                        IEnumerable <Competentions> competentions = await competentionsServise.Get();

                        var selectad_del_compitentions = competentions.FirstOrDefault(p => p.IdDistantion == obj.IdDistantion);
                        if (selectad_del_compitentions != null)
                        {
                            Competentions Del_compitentions = await competentionsServise.Delete(selectad_del_compitentions.IdCompetentions);

                            IEnumerable <Participation> participations = await participationService.Get();

                            var selectad = participations.FirstOrDefault(p => p.IdCompetentions == selectad_del_compitentions.IdCompetentions);
                            if (selectad != null)
                            {
                                int id_part = selectad.IdParticipation;
                                IEnumerable <ResultParticipant> res_participations = await resultParticipationServise.Get();

                                Participation Del_Participation = await participationService.Delete(id_part);

                                var res_selectad = res_participations.FirstOrDefault(p => p.IdParticipation == id_part);
                                if (res_selectad != null)
                                {
                                    int id_res_part = res_selectad.IdResultParticipation;
                                    ResultParticipant Del_ResultPartisipation = await resultParticipationServise.Delete(id_res_part);
                                }
                            }
                        }
                        await showEmployeeAsync();
                        await DisplayAlert("Уведомление", "Дистанция успешно удалена", "Ok");
                    }
                    break;
                }
                lstData.SelectedItem = null;
            }
        }
コード例 #7
0
        private async void lstData_ItemSelected(object sender, SelectedItemChangedEventArgs e)
        {
            if (e.SelectedItem != null)
            {
                string obj = e.SelectedItem.ToString();
                obj = obj.Substring(obj.LastIndexOf(',') + 1).Replace("IdCompetentions = ", string.Empty).Replace("}", string.Empty);

                string res = await DisplayActionSheet("Выберите операцию", "Отмена", null, "Обновить данные", "Удалить данные");

                switch (res)
                {
                case "Обновить данные":
                    await Navigation.PushModalAsync(new AddCompitentionsPage(Convert.ToInt32(obj)), animate);

                    break;

                case "Удалить данные":
                    bool result = await DisplayAlert("Подтвердить действие", "Вы хотите удалить элемент?", "Да", "Нет");

                    if (result == true)
                    {
                        IEnumerable <Participation> participations = await participationService.Get();

                        Competentions Del_compitentions = await competentionsServise.Delete(Convert.ToInt32(obj));

                        var selectad = participations.FirstOrDefault(p => p.IdCompetentions == Convert.ToInt32(obj));
                        if (selectad != null)
                        {
                            int id_part = selectad.IdParticipation;
                            IEnumerable <ResultParticipant> res_participations = await resultParticipationServise.Get();

                            Participation Del_Participation = await participationService.Delete(id_part);

                            var res_selectad = res_participations.FirstOrDefault(p => p.IdParticipation == id_part);
                            if (res_selectad != null)
                            {
                                int id_res_part = res_selectad.IdResultParticipation;
                                ResultParticipant Del_ResultPartisipation = await resultParticipationServise.Delete(id_res_part);
                            }
                        }
                        await showEmployeeAsync(false);
                        await DisplayAlert("Уведомление", "Компетенция успешно удалена", "Ok");
                    }
                    break;
                }
                lstData.SelectedItem = null;
            }
        }
コード例 #8
0
        private async Task Date_TestAsync()
        {
            IEnumerable <Participation> participations = await participationService.Get();

            IEnumerable <Distantion> distantions = await distantionsServise.Get();

            IEnumerable <Competentions> competentions = await competentionsServise.Get();

            var info = from p in participations
                       join k in competentions on p.IdCompetentions equals k.IdCompetentions
                       join d in distantions on k.IdDistantion equals d.IdDistantion
                       select new
            {
                d.NameDistantion,
                k.Date,
            };

            var picker_list = info.FirstOrDefault(x => x.NameDistantion == CompetentionsPicer.Items[CompetentionsPicer.SelectedIndex].ToString());

            if (picker_list.Date >= DateTime.Today.AddDays(2))
            {
                await DisplayAlert("Ошибка", "На эту дату запись уже недоступна", "Ок");
            }
        }
コード例 #9
0
        public async Task Criate()
        {
            InfoUser loginUsers = await loginUsersService.Get(App.Current.Properties["token"].ToString());

            IEnumerable <InfoUser> infoUsers = await registrationUsersService.Get_user();

            IEnumerable <Participation> participations = await participationService.Get();

            IEnumerable <Distantion> distantions = await distantionsServise.Get();

            IEnumerable <Competentions> competentions = await competentionsServise.Get();

            var info = from p in participations
                       join k in competentions on p.IdCompetentions equals k.IdCompetentions
                       join d in distantions on k.IdDistantion equals d.IdDistantion
                       join i in infoUsers on p.IdUser equals i.IdUsers
                       select new
            {
                p.IdUser,
                i.Login,
                k.Date,
                p.IdStatusVerification,
                d.NameDistantion,
            };
            DateTime selectd_date = Convert.ToDateTime(SelectDate.Items[SelectDate.SelectedIndex]);
            var      picker_list  = info.FirstOrDefault(x => x.IdUser == loginUsers.IdUsers &&
                                                        x.NameDistantion == CompetentionsPicer.Items[CompetentionsPicer.SelectedIndex] && x.Date == selectd_date);

            if (picker_list == null)
            {
                if (await Date_TestAsync())
                {
                    if (IDUser != 0 && IDCompitention != 0)
                    {
                        Participation participation = new Participation
                        {
                            IdCompetentions      = IDCompitention,
                            IdUser               = IDUser,
                            IdStatusVerification = true
                        };

                        await participationService.Add(participation);
                        await DownloadBage();

                        await Navigation.PopModalAsync();
                    }
                    else
                    {
                        if (!await DisplayAlert("Ошибка", "Вы заполнили не все поля", "Заполнить", "Выйти"))
                        {
                            await Navigation.PopModalAsync();
                        }
                    }
                }
            }
            else
            {
                if (!await DisplayAlert("Предупреждение", "Вы уже зарегистрированы на эту дисциплину", "Зарегистрироваться на другую", "Выйти"))
                {
                    await Navigation.PopModalAsync();
                }
            }
        }
コード例 #10
0
        private async Task Criate_LoginPicer(bool status)
        {
            IEnumerable <Participation> participations = await participationService.Get();

            IEnumerable <InfoUser> infoUsers = await registrationUsersService.Get_user();

            IEnumerable <Competentions> competentions = await competentionsServise.Get();

            var info = from p in participations
                       join i in infoUsers on p.IdUser equals i.IdUsers
                       join c in competentions on p.IdCompetentions equals c.IdCompetentions
                       select new
            {
                i.Login,
                i.Name,
                i.Fam,
                i.Patronimic,
                i.Email,
                i.Years,
                i.Isman,
                i.IdHelth,
                p.IdParticipation,
                c.Date
            };

            LoginPicer = new Picker {
                Margin = new Thickness(10, -10, 10, 5)
            };
            if (status)
            {
                info = info.Where(p => p.Login == PoiskLogin.Text || p.Login.StartsWith(PoiskLogin.Text));
            }
            foreach (var item in info)
            {
                DateTime today = DateTime.Now;
                DateTime start = item.Date;
                if (today <= start && today.AddMonths(3) >= start)
                {
                    LoginPicer.Items.Add(item.Login);
                }
            }

            LoginPicer.SelectedIndexChanged += async(s, e) =>
            {
                IEnumerable <UserHelth> userHelths = await registrationUsersService.get_hels_status();

                var picker_list      = info.FirstOrDefault(x => x.Login == LoginPicer.Items[LoginPicer.SelectedIndex].ToString());
                var picker_list_Hels = userHelths.FirstOrDefault(x => x.IdHealth == picker_list.IdHelth);
                Criate_SelectCompitentions(true, true);
                Info_Editor.Text  = "";
                Info_Editor.Text  = "Login: "******"\r\n";
                Info_Editor.Text += "E-mail: " + picker_list.Email + "\r\n";
                Info_Editor.Text += "ФИО: " + picker_list.Fam + " " + picker_list.Name + " " + picker_list.Patronimic + "\r\n";
                Info_Editor.Text += "Возраст: " + picker_list.Years + "\r\n";
                Info_Editor.Text += "Статус здоровья: " + picker_list_Hels.NameHealth + "\r\n";
                if (picker_list.Isman == true)
                {
                    Info_Editor.Text += "Пол: Мужской" + "\r\n";
                }
                else
                {
                    Info_Editor.Text += "Пол: Женский" + "\r\n";
                }
            };

            GridMain.Children.Add(LoginPicer, 1, 2);
        }