Пример #1
0
        public static async void Search(CustomSearchControl SearchControl)
        {
            var client = Helper.getServiceClient();
            var query  = new BankQuery(); //by default we have an empty query

            if (SearchControl.OptionOne.IsChecked == true)
            {
                query = new BankQuery()
                {
                    BankCode = SearchControl.SearchTextBox.Text
                };
            }
            else if (SearchControl.OptionTwo.IsChecked == true)
            {
                query = new BankQuery()
                {
                    BankName = SearchControl.SearchTextBox.Text
                };
            }

            int pagesize     = SearchControl.PageSize;
            int pagePosition = SearchControl.PagePosition;
            var response     = await client.QueryBankAsync(query, pagesize, pagePosition);

            //No response; exit
            if (response == null)
            {
                MessageBox.Show("Service isn't responding, please try again later", "Message", MessageBoxButton.OK, MessageBoxImage.Information);
                return;
            }
            SearchControl.ResultCount = response.TotalResultCount;
            //Fill the datagrid with the results
            SearchControl.ResultsGrid.ItemsSource = new ObservableCollection <FIN_Bank>(response.Result.ToList <FIN_Bank>());;
        }
Пример #2
0
        private void SendButton_Click(object sender, EventArgs e)
        {
            Client    client = new Client(17, FirstNameForm.Text, FatherNameForm.Text, SurNameForm.Text, 0, new Card());
            Employee  emp    = new Employee(1005);
            BankQuery bq     = new BankQuery();

            bq.OpenConnection(@"Data Source = (local)\SQLEXPRESS; Initial Catalog = MyDB; Integrated Security = True");
            try
            {
                client = new Client(18, FirstNameForm.Text + "Mad", FatherNameForm.Text, SurNameForm.Text, 0, new Card());
                bq.UpdateClientData(client, emp.EmployeeID);
            }

            catch (Exception) { }

            bq.CloseConnection();
        }
        public async Task <QueryResult <Bank> > GetBanksAsync(BankQuery queryObj, string languageId)
        {
            var result = new QueryResult <Bank>();

            var query = this.context.Banks
                        .Include(b => b.Translations)
                        .AsQueryable();

            if (!string.IsNullOrWhiteSpace(queryObj.Name))
            {
                query = query.Where(b => b.Translations.Select(t => t.LanguageId).Contains(languageId));
            }

            if (queryObj.IsActive.HasValue)
            {
                query = query.Where(u => u.IsActive == queryObj.IsActive.Value);
            }

            var columnsMap = new Dictionary <string, Expression <Func <Bank, object> > >()
            {
                ["name"] = b => (
                    b.Translations.Where(bt => bt.LanguageId == languageId).FirstOrDefault() != null ? (
                        b.Translations.Where(bt => bt.LanguageId == languageId).Select(bt => bt.Name).FirstOrDefault()
                        ) : (
                        b.KeyName
                        )
                    )
            };

            result.TotalItems = await query.CountAsync();

            query = query.ApplyOrdering(queryObj, columnsMap);
            query = query.ApplyPaging(queryObj);

            result.Items = await query.ToListAsync();

            return(result);
        }