Ejemplo n.º 1
0
 /// <summary>
 /// SetParametersAsync 方法
 /// </summary>
 /// <returns></returns>
 public override System.Threading.Tasks.Task SetParametersAsync(ParameterView parameters)
 {
     parameters.SetParameterProperties(this);
     QueryModel.Category   = "";
     QueryModel.IsResource = -1;
     QueryApp.AddRange(DictHelper.RetrieveApps().Select(app => new SelectedItem()
     {
         Text = app.Value, Value = app.Key
     }));
     DefineApp.AddRange(DictHelper.RetrieveApps().Select(app => new SelectedItem()
     {
         Text = app.Value, Value = app.Key
     }));
     return(base.SetParametersAsync(ParameterView.Empty));
 }
Ejemplo n.º 2
0
 public QueryController(IFactoryConnection connection)
 {
     _connection = connection;
     _QueryApp   = new QueryApp(connection);
 }
Ejemplo n.º 3
0
        private void InicializarComponetesPesquisa(int queryId)
        {
            var query = new QueryApp().FindId(queryId);

            if (query == null)
            {
                return;
            }
            Query = query.Sql;
            var filters = query.Filters;

            panel1.Controls.Clear();
            var localionY = 10;

            foreach (var item in filters)
            {
                var typeItem = item.TypeComponent;
                var display  = GlobalUser.Translates.FirstOrDefault(c => c.PropertyName == item.Display)?.Portugues ?? item.Display;

                IComponent componete;
                switch (typeItem)
                {
                case TypeFilterComponent.ComboBox:
                    var cb = new SComboBox();
                    cb.SetEnumItems(Type.GetType(item.NameColumn));
                    componete = cb;
                    break;

                case TypeFilterComponent.Numeric:
                    componete = new SNumeric();
                    break;

                case TypeFilterComponent.TextBox:
                    componete = new STextBox();
                    break;

                case TypeFilterComponent.Date:
                    componete = new SDateTimePicker
                    {
                        Format       = DateTimePickerFormat.Custom,
                        CustomFormat = "dd/MM/yyyy"
                    };
                    break;

                case TypeFilterComponent.Time:
                    componete = new SDateTimePicker
                    {
                        Format       = DateTimePickerFormat.Custom,
                        CustomFormat = "hh:mm:ss"
                    };
                    break;

                case TypeFilterComponent.DateTime:
                    componete = new SDateTimePicker
                    {
                        Format       = DateTimePickerFormat.Custom,
                        CustomFormat = "dd/MM/yyyy hh:mm:ss"
                    };
                    break;

                case TypeFilterComponent.CheckBox:
                    componete = new SCheckBox();
                    break;

                default:
                    continue;
                }
                componete.Caption  = display;
                componete.Location = new Point(10, localionY);
                //componete. = item.NameTable;
                componete.Name           = item.NameColumn;
                componete.ToolTipContext = item.Code;
                componete.Others         = item.NameTable;
                componete.Visible        = true;
                componete.Width          = 200;
                componete.Height         = 52;

                var comboBox = new SComboBox()
                {
                    Caption    = "Selecione o Filtro",
                    Location   = new Point(200 + 20, localionY),
                    Name       = "F" + item.NameColumn,
                    SComponent = { Name = "F" + item.NameColumn },
                    Visible    = true,
                    Width      = 200,
                    Height     = 52
                };

                comboBox.SetEnumItems <TypeFilter>(item.DefaultTypeFilter);
                var removeFilters = comboBox.SComponent.DataSource as IList <SEnum <TypeFilter> >;
                var newFilters    = new List <SEnum <TypeFilter> >();

                foreach (var filter in removeFilters)
                {
                    if (!item.InactiveFilters.Any(c => c.TypeFilter == filter.Id))
                    {
                        newFilters.Add(filter);
                    }
                }

                comboBox.SComponent.DataSource = newFilters;

                comboBox.SComponent.SelectedValue = item.DefaultTypeFilter;

                comboBox.SComponent.Tag = item.TypeComponent;

                comboBox.SComponent.SelectedIndexChanged += SComponentOnSelectedIndexChanged;
                Control[] controls =
                {
                    (Control)componete,
                    comboBox
                };
                panel1.Controls.AddRange(controls);
                localionY = localionY + 55;
                if (typeItem != TypeFilterComponent.CheckBox)
                {
                    continue;
                }
                ((SCheckBox)componete).SComponent.Parent.Dock     = DockStyle.Bottom;
                ((SCheckBox)componete).SComponent.Parent.AutoSize = false;
                ((SCheckBox)componete).SComponent.Parent.Height   = 30;
            }
        }