/// <summary>
        /// Add required results.
        /// </summary>
        public override void PreCloneInitialize(PriceFactorList factors, BaseTimeGrid baseTimes, RequiredResults resultsRequired)
        {
            base.PreCloneInitialize(factors, baseTimes, resultsRequired);

            if (resultsRequired.Result <AddOnProfiles>() == null)
            {
                var addOnProfiles = new AddOnProfiles(resultsRequired.Result <PVProfiles>().VectorSize);
                resultsRequired.Add(addOnProfiles);
            }

            if (resultsRequired.Result <PositiveMtmProfiles>() == null)
            {
                var mtmPositiveProfiles = new PositiveMtmProfiles(resultsRequired.Result <PVProfiles>().VectorSize);
                resultsRequired.Add(mtmPositiveProfiles);
            }
        }
Exemplo n.º 2
0
        public void SetRequests()
        {
            RequiredResults.Clear();
            foreach (Request request in ActualRequests)
            {
                if (IsMy)
                {
                    if (request.AuthorID == Storage.User.Id)
                    {
                        Client client = Users.GetInfoAboutUser(request.AuthorID).User;
                        RequiredResults.Add(new Models.RequestModel()
                        {
                            AuthorID       = request.AuthorID.ToString(),
                            AuthorName     = client.Surname + " " + client.Name,
                            BloodGroup     = request.BloodGroup,
                            RFactor        = request.RFactor,
                            ExtraBloodData = request.ExtraBloodData,
                            Region         = request.Region,
                            Description    = request.Descripton
                        });
                    }
                }
                else
                //If we have no data about user's blood we need to show to him/her all the results
                if ((request.BloodGroup == Storage.User.BloodGroup || Storage.User.BloodGroup == "") &&
                    (request.RFactor == Storage.User.RFactor || Storage.User.RFactor == "") &&
                    request.Solved == false)
                {
                    Client client = Users.GetInfoAboutUser(request.AuthorID).User;
                    RequiredResults.Add(new Models.RequestModel()
                    {
                        AuthorID       = request.AuthorID.ToString(),
                        AuthorName     = client.Surname + " " + client.Name,
                        BloodGroup     = request.BloodGroup,
                        RFactor        = request.RFactor,
                        ExtraBloodData = request.ExtraBloodData,
                        Region         = request.Region,
                        Description    = request.Descripton
                    });
                }
            }

            if (RequiredResults.Count == 0)
            {
                RequiredResults.Add(new Models.RequestModel()
                {
                    AuthorID       = "-1",
                    AuthorName     = "Нет данных",
                    BloodGroup     = "Нет данных",
                    RFactor        = "Нет данных",
                    ExtraBloodData = "Нет данных",
                    Description    = "Поиск не дал результатов"
                });
            }

            NotifList.ItemsSource = RequiredResults;
        }
Exemplo n.º 3
0
        private void SearchRequests(object sender, System.EventArgs e)
        {
            string text = SearchEntry.Text;

            if (!string.IsNullOrEmpty(text))
            {
                RequiredResults.Clear();

                string[] data = text.Split();

                foreach (Request request in ActualRequests)
                {
                    foreach (string str in data)
                    {
                        if ((str != null) && (request.ToString().ToLower().IndexOf(str.ToLower()) != -1))
                        {
                            if (IsMy)
                            {
                                if (request.AuthorID == Storage.User.Id)
                                {
                                    Client client = Users.GetInfoAboutUser(request.AuthorID).User;
                                    RequiredResults.Add(new Models.RequestModel()
                                    {
                                        AuthorID       = request.AuthorID.ToString(),
                                        AuthorName     = client.Surname + " " + client.Name,
                                        BloodGroup     = request.BloodGroup,
                                        RFactor        = request.RFactor,
                                        ExtraBloodData = request.ExtraBloodData,
                                        Region         = request.Region,
                                        Description    = request.Descripton
                                    });
                                }
                            }
                            else
                            {
                                if ((request.BloodGroup == Storage.User.BloodGroup || Storage.User.BloodGroup == "") &&
                                    (request.RFactor == Storage.User.RFactor || Storage.User.RFactor == "") &&
                                    request.Solved == false)
                                {
                                    Client client = Users.GetInfoAboutUser(request.AuthorID).User;
                                    RequiredResults.Add(new Models.RequestModel()
                                    {
                                        AuthorID       = request.AuthorID.ToString(),
                                        AuthorName     = client.Surname + " " + client.Name,
                                        BloodGroup     = request.BloodGroup,
                                        RFactor        = request.RFactor,
                                        ExtraBloodData = request.ExtraBloodData,
                                        Region         = request.Region,
                                        Description    = request.Descripton
                                    });
                                }
                            }
                        }
                        break;
                    }
                }
            }
            else
            {
                RequiredResults.Clear();
                SetRequests();
            }

            if (RequiredResults.Count == 0)
            {
                RequiredResults.Add(new Models.RequestModel()
                {
                    AuthorID       = "-1",
                    AuthorName     = "Нет данных",
                    BloodGroup     = "Нет данных",
                    RFactor        = "Нет данных",
                    ExtraBloodData = "Нет данных",
                    Description    = "Поиск не дал результатов"
                });
            }

            NotifList.ItemsSource = RequiredResults;
        }