public void SetValue()
        {
            QueryConditionItem condition = this.Condition;

            if (condition == null)
            {
                return;
            }

            if (condition.Mode == QueryConditionMode.Single)
            {
                this.rbSingle.Checked = true;
                this.cboOperator.Text = condition.Operator;
                this.txtValue.Text    = condition.Value;
            }
            else if (condition.Mode == QueryConditionMode.Range)
            {
                this.rbRange.Checked = true;
                this.txtFrom.Text    = condition.From;
                this.txtTo.Text      = condition.To;
            }
            else if (condition.Mode == QueryConditionMode.Series)
            {
                this.rbSeries.Checked = true;
                this.txtValues.Text   = string.Join(",", condition.Values);
            }

            this.SetControlEnabled();
        }
Esempio n. 2
0
        void ComboQueryConditions_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            //加载相应的内容
            var queryCondition = this.ComboQueryConditions.SelectedItem;

            if (queryCondition == null)
            {
                return;
            }
            string StrQueryCode = (queryCondition as QueryConditionInfo).QueryCode.ToString();
            List <QueryConditionItem> ListQueryItems = new List <QueryConditionItem>();

            ListQueryItems = S6101App.mListQueryItems.Where(p => p.QueryConditionCode.ToString() == StrQueryCode).ToList();
            for (int i = 0; i < ListQueryItems.Count; i++)
            {
                QueryConditionItem queryItem = ListQueryItems[i];
                switch (queryItem.QueryItemCode)
                {
                case (long)Const6101.Query_RecordTime:
                    this.CBXLoggedTime.SelectedIndex = Convert.ToInt32(queryItem.Value3);
                    this.UC_DateTime_Begin.Text      = queryItem.Value1;
                    this.UC_DateTime_End.Text        = queryItem.Value2;
                    break;

                case (long)Const6101.Query_KeyWords:

                    break;

                case (long)Const6101.Query_ReportType:
                    this.CBTypeOfReport.SelectedIndex = Convert.ToInt32(queryItem.Value1);
                    break;
                }
            }
        }
Esempio n. 3
0
        void ComboQueryConditions_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            //加载相应的内容
            var queryCondition = this.ComboQueryConditions.SelectedItem;

            if (queryCondition == null)
            {
                return;
            }
            string StrQueryCode = (queryCondition as QueryConditionInfo).QueryCode.ToString();
            List <QueryConditionItem> ListQueryItems = new List <QueryConditionItem>();

            ListQueryItems = S6101App.mListQueryItems.Where(p => p.QueryConditionCode.ToString() == StrQueryCode).ToList();
            for (int i = 0; i < ListQueryItems.Count; i++)
            {
                QueryConditionItem queryItem = ListQueryItems[i];
                switch (queryItem.QueryItemCode)
                {
                case (long)Const6101.Query_RecordTime:
                    this.CBXLoggedTime.SelectedIndex = Convert.ToInt32(queryItem.Value3);
                    this.UC_DateTime_Begin.Text      = queryItem.Value1;
                    this.UC_DateTime_End.Text        = queryItem.Value2;
                    break;

                case (long)Const6101.Query_Call:
                    if (queryItem.Value1 == "1")
                    {
                        this.Callin.IsChecked  = true;
                        this.Callout.IsChecked = false;
                    }
                    else if (queryItem.Value1 == "0")
                    {
                        this.Callin.IsChecked  = false;
                        this.Callout.IsChecked = true;
                    }
                    else
                    {
                        this.Callin.IsChecked  = true;
                        this.Callout.IsChecked = true;
                    }
                    break;

                case (long)Const6101.Query_ReportType:
                    this.CBTypeOfReport.SelectedIndex = Convert.ToInt32(queryItem.Value1);
                    break;

                case (long)Const6101.Query_RecordMachine:
                    LoadRecordMachine(StrQueryCode);
                    break;

                case (long)Const6101.Query_DepartmentBasic:
                    this.CBDepartBasic.SelectedIndex = Convert.ToInt32(queryItem.Value1);
                    break;
                }
            }
        }
        private void btnOK_Click(object sender, EventArgs e)
        {
            QueryConditionItem condition;

            if (!this.BuildCondition(out condition))
            {
                return;
            }

            this.Condition    = condition;
            this.DialogResult = DialogResult.OK;
            this.Close();
        }
Esempio n. 5
0
        private QueryConditionBuilder GetQueryConditionBuilder()
        {
            this.ConditionBuilder = new QueryConditionBuilder();

            foreach (DataGridViewRow row in this.dgvFilter.Rows)
            {
                QueryConditionItem condition = row.Tag as QueryConditionItem;

                if (condition != null)
                {
                    this.ConditionBuilder.Add(condition);
                }
            }

            return(this.ConditionBuilder);
        }
Esempio n. 6
0
        private void AddField(DataGridViewColumn column, QueryConditionItem condition = null)
        {
            foreach (DataGridViewRow row in this.dgvFilter.Rows)
            {
                if (row.Cells["ColumnName"].Value.ToString() == column.Name)
                {
                    return;
                }
            }

            int rowIndex = this.dgvFilter.Rows.Add(column.Name);

            this.dgvFilter.Rows[rowIndex].Tag = condition;

            if (condition != null)
            {
                this.dgvFilter.Rows[rowIndex].Cells["Filter"].Value = condition.ToString();
            }
        }
Esempio n. 7
0
        private List <string> SaveQueryConditionItems(List <string> mListData, long QueryCode, long QueryItemCode)
        {
            List <string> mListQueryCondition = new List <string>();
            int           num = mListData.Count;

            for (int i = 0; i < num; i += 5)
            {
                QueryConditionItem queryItem = new QueryConditionItem();
                queryItem.QueryConditionCode = QueryCode;
                queryItem.QueryItemCode      = QueryItemCode;
                queryItem.Type   = 1;
                queryItem.Sort   = i;
                queryItem.Value1 = mListData[i];
                if (i + 1 < num)
                {
                    queryItem.Value2 = mListData[i + 1];
                }
                if (i + 2 < num)
                {
                    queryItem.Value3 = mListData[i + 2];
                }
                if (i + 3 < num)
                {
                    queryItem.Value4 = mListData[i + 3];
                }
                if (i + 4 < num)
                {
                    queryItem.Value5 = mListData[i + 4];
                }

                OperationReturn optReturn = XMLHelper.SeriallizeObject <QueryConditionItem>(queryItem);
                if (!optReturn.Result)
                {
                    ShowException(CurrentApp.GetLanguageInfo("", "Save Fail!")); return(new List <string>());
                }
                mListQueryCondition.Add(optReturn.Data as string);
            }
            return(mListQueryCondition);
        }
Esempio n. 8
0
        private void dgvFilter_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            DataGridViewColumn column = this.dgvFilter.Columns[e.ColumnIndex];

            if (column.Name == "Filter" && e.RowIndex > -1 && e.ColumnIndex > -1)
            {
                string columnName = this.dgvFilter.Rows[e.RowIndex].Cells["ColumnName"].Value.ToString();

                frmDataFilterCondition filterCondition = new frmDataFilterCondition()
                {
                    Column = this.Columns.FirstOrDefault(item => item.Name == columnName)
                };
                filterCondition.Condition = this.dgvFilter.Rows[e.RowIndex].Tag as QueryConditionItem;

                if (filterCondition.ShowDialog() == DialogResult.OK)
                {
                    QueryConditionItem condition = filterCondition.Condition;

                    this.dgvFilter.Rows[e.RowIndex].Tag = condition;

                    this.dgvFilter.Rows[e.RowIndex].Cells["Filter"].Value = condition.ToString();
                }
            }
        }
Esempio n. 9
0
        private void SaveQueryCondition()
        {
            if (this.CbSaveConditions.IsChecked == true)
            {
                //循环找出是否有重名的,有的话覆盖资料
                string conditionName = this.ComboQueryConditions.Text;
                if (conditionName.Trim() == string.Empty)
                {
                    CurrentApp.ShowInfoMessage(CurrentApp.GetLanguageInfo("6101N0006", "Name cannot be Empty.")); return;
                }
                long           queryCode     = 0;
                List <string>  ListSaveDatas = new List <string>();
                QueryCondition SaveCondition = new QueryCondition();
                bool           Flag          = false;
                for (int i = 0; i < mListQueryConditions.Count; i++)
                {
                    if (mListQueryConditions[i].Name == conditionName)
                    {
                        SaveCondition.IsUse        = mListQueryConditions[i].IsUse;
                        SaveCondition.mName        = mListQueryConditions[i].Name;
                        SaveCondition.mDescription = mListQueryConditions[i].Description;
                        SaveCondition.Priority     = mListQueryConditions[i].Priority;
                        SaveCondition.QueryCode    = mListQueryConditions[i].QueryCode;
                        SaveCondition.UserID       = mListQueryConditions[i].UserID;
                        SaveCondition.ReportCode   = mListQueryConditions[i].ReportCode;
                        SaveCondition.SetTime      = mListQueryConditions[i].SetTime;
                        SaveCondition.LastUseTime  = mListQueryConditions[i].LastUseTime;
                        SaveCondition.Source       = mListQueryConditions[i].Source;
                        Flag = true;
                        break;
                    }
                }
                if (!Flag)//没找到,要新建
                {
                    SaveCondition.QueryCode    = 0;
                    SaveCondition.UserID       = CurrentApp.Session.UserID;
                    SaveCondition.ReportCode   = 61010021;
                    SaveCondition.SetTime      = DateTime.Now;
                    SaveCondition.Source       = 'S';
                    SaveCondition.LastUseTime  = DateTime.Now;
                    SaveCondition.mName        = this.ComboQueryConditions.Text;
                    SaveCondition.mDescription = this.ComboQueryConditions.Text;
                    SaveCondition.Priority     = mListQueryConditions.Count;
                    SaveCondition.IsUse        = true;
                }
                OperationReturn optReturn = XMLHelper.SeriallizeObject <QueryCondition>(SaveCondition);
                if (!optReturn.Result)
                {
                    ShowException(CurrentApp.GetLanguageInfo("", "Save Fail!")); return;
                }
                ListSaveDatas.Add(optReturn.Data as string);
                queryCode = SaveCondition.QueryCode;
                //添加detail。
                for (int i = 1; i <= 3; i++)
                {
                    QueryConditionItem queryItem = new QueryConditionItem();
                    queryItem.QueryConditionCode = queryCode;
                    queryItem.Sort = i;
                    queryItem.Type = 0;
                    switch (i)
                    {
                    case 1:    //录音时间
                        queryItem.QueryItemCode = (long)Const6101.Query_RecordTime;

                        queryItem.Value1 = this.UC_DateTime_Begin.Text;
                        queryItem.Value2 = this.UC_DateTime_End.Text;
                        queryItem.Value3 = this.CBXLoggedTime.SelectedIndex.ToString();
                        break;

                    case 2:    //呼叫方向
                        queryItem.QueryItemCode = (long)Const6101.Query_Call;
                        if (this.RButn2.IsChecked == true)
                        {
                            queryItem.Value1 = "1";
                        }
                        else if (this.RButn3.IsChecked == true)
                        {
                            queryItem.Value1 = "0";
                        }
                        else
                        {
                            queryItem.Value1 = "2";
                        }
                        break;

                    case 3:    //报表类型
                        queryItem.QueryItemCode = (long)Const6101.Query_ReportType;
                        queryItem.Value1        = this.CBTypeOfReport.SelectedIndex.ToString();
                        break;
                    }
                    OperationReturn optReturnItem = XMLHelper.SeriallizeObject <QueryConditionItem>(queryItem);
                    if (!optReturnItem.Result)
                    {
                        ShowException(CurrentApp.GetLanguageInfo("", "Save Fail!")); return;
                    }
                    ListSaveDatas.Add(optReturnItem.Data as string);
                }
                //调用函数方法保存
                WebRequest webRequest = new WebRequest();
                webRequest.Code     = (int)WebCodes.SaveQueryCondition;
                webRequest.ListData = ListSaveDatas;
                webRequest.Session  = CurrentApp.Session;
                Service61012Client client = new Service61012Client(WebHelper.CreateBasicHttpBinding(CurrentApp.Session),
                                                                   WebHelper.CreateEndpointAddress(CurrentApp.Session.AppServerInfo, "Service61012"));
                WebHelper.SetServiceClient(client);
                WebReturn webReturn = client.UMPReportOperation(webRequest);
                client.Close();
                if (!webReturn.Result)
                {
                    ShowException(string.Format("Fail.\t{0}\t{1}", webReturn.Code, webReturn.Message));
                    return;
                }
                S6101App.InitObjects();
                InitQueryCondition();
            }
        }
        private bool BuildCondition(out QueryConditionItem condition)
        {
            condition = new QueryConditionItem()
            {
                ColumnName = this.Column.Name, DataType = this.Column.ValueType
            };

            if (this.rbSingle.Checked)
            {
                if (this.cboOperator.SelectedIndex >= 0)
                {
                    if (string.IsNullOrEmpty(this.cboOperator.Text))
                    {
                        MessageBox.Show("Value can't be empty.");
                        return(false);
                    }

                    condition.Mode     = QueryConditionMode.Single;
                    condition.Operator = this.cboOperator.Text;
                    condition.Value    = this.txtValue.Text;
                }
                else
                {
                    MessageBox.Show("Please select operator.");
                    return(false);
                }
            }
            else if (this.rbRange.Checked)
            {
                string from = this.txtFrom.Text;
                string to   = this.txtTo.Text;

                if (string.IsNullOrWhiteSpace(from) || string.IsNullOrWhiteSpace(to))
                {
                    MessageBox.Show("From and To value can't be empty.");
                    return(false);
                }

                condition.Mode = QueryConditionMode.Range;
                condition.From = from.Trim();
                condition.To   = to.Trim();
            }
            else if (this.rbSeries.Checked)
            {
                string values = this.txtValues.Text;

                if (string.IsNullOrWhiteSpace(values))
                {
                    MessageBox.Show("Value can't be empty.");
                    return(false);
                }

                string[] items = values.Split(new char[] { ',', ';', ' ' }, StringSplitOptions.RemoveEmptyEntries);

                if (items.Length == 0)
                {
                    MessageBox.Show("Has no any valid value.");
                    return(false);
                }

                condition.Mode   = QueryConditionMode.Series;
                condition.Values = items.ToList();
            }

            return(true);
        }
 public void Add(QueryConditionItem condition)
 {
     this.conditions.Add(condition);
 }