Beispiel #1
0
        private void PopulateInvestigatedIndividuals()
        {
            CheckIndividualNames.Items.Clear();
            var table = _dal.GetInvestigatedIndividuals(_investigationId);

            CheckIndividualNames.DataSource    = table;
            CheckIndividualNames.DataTextField = table.individual_nameColumn.ColumnName;
            CheckIndividualNames.DataBind();
        }
        private void DoSearchAllIndividualsinSEC()
        {
            var dal  = new IndividualManager();
            var dalL = new LinkManager();
            var dalI = new InvestigationManager();
            var aux  = new Batch2WebAux(Response, BatchManager.BatchNamesEnum.SECLookupIndividuals);

            aux.AddHead();
            var table           = dalI.GetInvestigatedIndividuals();
            var c               = 0D;
            var alreadySearched = new List <string>();

            foreach (var ii in table)
            {
                if (alreadySearched.Contains(ii.individual_name.ToLower()))
                {
                    c++;
                    continue;
                }
                var names = new List <string> {
                    ii.individual_name
                };
                var aliases = dalL.GetIILByName(ii.individual_name);
                foreach (var alias in aliases)
                {
                    if (alias.link_type == "alias" & !names.Contains(alias.individual_alias))
                    {
                        names.Add(alias.individual_alias);
                    }
                }
                NameAnalyzer.AutoAliases(ii.individual_name, names);
                foreach (var name in names)
                {
                    if (alreadySearched.Contains(name.ToLower()))
                    {
                        continue;
                    }
                    try
                    {
                        if (ii.individual_name != name)
                        {
                            aux.WriteLine("Searcing ALL SEC filings for: " + ii.individual_name + " under alias: " + name);
                        }
                        else
                        {
                            aux.WriteLine("Searcing ALL SEC filings for: " + ii.individual_name);
                        }
                        dal.ImportIndividualFromSrc10(ii.individual_name, name);
                    }catch (Exception ex2)
                    { aux.WriteLine(string.Format("<hr /><b>Exception:<br />\r\n</b>{0}<hr/>", ex2)); }
                    alreadySearched.Add(name.ToLower());
                }
                c++;
                aux.SetProgress(c / table.Rows.Count);
            }
            aux.AddFoot();
            aux.Save();
        }
Beispiel #3
0
        void DrawChart1()
        {
            Chart1.Visible = (CheckChart.Checked);
            Chart1.Width   = int.Parse(DropSize.SelectedValue);
            Chart1.Height  = (int)((Chart1.Width.Value) * 3 / 4);
            var investigationId = int.Parse(DropDownList1.SelectedValue);
            var table           = new LinkManager().GetIndividualCompanyLink(investigationId);

            if (CheckExcel.Checked)
            {
                AddExcelAttachment(table);
                return;
            }
            var invManager = new InvestigationManager();
            var tableI     = invManager.GetInvestigatedIndividuals(investigationId);

            Chart1.Series.Clear();
            var companies = new List <string>();

            foreach (var individual in tableI)
            {
                var s = Chart1.Series.Add(individual.individual_name, 1);
                s.SmartLabels.Enabled = true;
                s.ChartType           = SeriesChartType.Point.ToString();
                s.YValueType          = ChartValueTypes.Date;
                Chart1.ChartAreas[0].AxisY.LabelStyle.Format = "yyyy";
                var v = new DataView(table, "individual_name='" + individual.individual_name.Replace("'", "''") + "'",
                                     table.company_nameColumn.ColumnName + " asc", DataViewRowState.CurrentRows);
                foreach (DataRowView viewRow in v)
                {
                    var link = (DtstCOI.individual_company_linkRow)viewRow.Row;
                    if (link.Islink_dateNull())
                    {
                        continue;
                    }
                    if (companies.IndexOf(link.company_name) == -1)
                    {
                        companies.Add(link.company_name);
                    }
                    var xVal  = companies.IndexOf(link.company_name);
                    var point = new DataPoint();
                    point.SetValueXY(xVal + 1, link.link_date);
                    if (!link.IspositionNull())
                    {
                        point.Label = link.position;
                    }
                    point.AxisLabel = link.company_name;
                    s.Points.Add(point);
                }
            }
            if (!CheckData.Checked)
            {
                return;
            }
            GridView1.DataSource = table;
            GridView1.DataBind();
        }
        protected void ButtonSerachMentions_Click(object sender, EventArgs e)
        {
            if (TextBoxPrimaryName.Text.Trim() == string.Empty)
            {
                LabelAlarm.Text = "Please specify at least the primary name";
                return;
            }
            TextBoxPrimaryName.Text = NameAnalyzer.NameCapitalizer(TextBoxPrimaryName.Text);
            if (TextBoxAliases.Text.Trim() == string.Empty)
            {
                TextBoxAliases.Text = TextBoxPrimaryName.Text;
            }
            var aliases     = TextBoxAliases.Text.Replace("\r\n", "\n").Split('\n');
            var aliasesList = new List <string> ();

            foreach (var s in aliases)
            {
                if (!aliasesList.Contains(s))
                {
                    aliasesList.Add(s);
                }
            }
            foreach (var s in aliasesList)
            {
                try
                {
                    var dal = new IndividualManager();
                    dal.ImportIndividualFromSrc10(TextBoxPrimaryName.Text, s);
                }
                catch (Exception ex)
                {
                    LabelAlarm.Text += ex.Message + "<br />";
                    return;
                }
            }
            if (CheckUseInvestigation.Checked)
            {
                var dali  = new InvestigationManager();
                var invID = int.Parse(DropInvestigations.SelectedValue);
                var table = dali.GetInvestigatedIndividuals(invID);
                var row   = table.FindByindividual_nameinvestigation_id(TextBoxPrimaryName.Text, invID);
                if (row == null)
                {
                    table.Addinvestigated_individualRow(TextBoxPrimaryName.Text, invID);
                }
                dali.Save(table);
            }
            LabelAlarm.Text = "processed with no errors";
        }
Beispiel #5
0
        void DrawChart3()
        {
            var investigationId = int.Parse(DropDownList1.SelectedValue);
            var beginDate       = new DateTime(int.Parse(DropY1.SelectedValue), 1, 1);
            var endDate         = new DateTime(int.Parse(DropY2.SelectedValue), 12, 31);
            var ct        = CheckAutoYears.Checked ? new ChartTools(investigationId, Chart2, 0, 0) : new ChartTools(investigationId, beginDate, endDate, Chart2, 0, 0);
            var positions = new List <string>()
            {
                "mentioned in filing"
            };

            Chart2.Visible = CheckChart.Checked;
            Chart2.Width   = int.Parse(DropSize.SelectedValue);
            Chart2.Height  = (int)((Chart2.Width.Value) * 3D / 4D);
            //series are for positions
            Chart2.Series.Clear();
            var s = Chart2.Series.Add(positions[0]);

            s.ChartType  = SeriesChartType.Point.ToString();
            s.XValueType = ChartValueTypes.Date;
            Chart2.ChartAreas[0].AxisX.LabelStyle.Format = "yyyy";
            Chart2.ChartAreas[0].AxisX.IntervalType      = DateTimeIntervalType.Years;
            Chart2.ChartAreas[0].AxisX.Interval          = 1;
            //
            var table = new LinkManager().GetIndividualCompanyLink(investigationId);

            if (CheckExcel.Checked)
            {
                AddExcelAttachment(table);
                return;
            }
            var invManager = new InvestigationManager();
            var tableI     = invManager.GetInvestigatedIndividuals(investigationId);
            var tableC     = invManager.GetInvestigatedCompanies(investigationId);
            var yIndex     = 0;
            var count      = 0;

            foreach (var company in tableC)
            {
                var inds     = 0;
                var indsList = new List <DtstCOI.investigated_individualRow>();
                foreach (var individual in tableI)
                {
                    var sort = table.company_nameColumn.ColumnName + "='"
                               + company.company_name.Replace("'", "''") + "' and "
                               + table.individual_nameColumn.ColumnName + "='"
                               + individual.individual_name.Replace("'", "''") + "'";
                    var useIndividual = false;
                    var links         = new DataView(table, sort, "link_date asc",
                                                     DataViewRowState.CurrentRows);
                    if (links.Count == 0)
                    {
                        continue;
                    }
                    foreach (DataRowView rv in links)
                    {
                        var link = (DtstCOI.individual_company_linkRow)rv.Row;
                        if (!ct.IsPointUsable(link))
                        {
                            continue;
                        }
                        useIndividual = true;
                    }
                    if (useIndividual)
                    {
                        inds++; indsList.Add(individual);
                    }
                }
                if (inds <= 1)
                {
                    continue;
                }
                foreach (var individual in indsList)
                {
                    var sort = table.company_nameColumn.ColumnName + "='"
                               + company.company_name.Replace("'", "''") + "' and "
                               + table.individual_nameColumn.ColumnName + "='"
                               + individual.individual_name.Replace("'", "''") + "'";
                    var links = new DataView(table, sort, "link_date asc", DataViewRowState.CurrentRows);
                    if (links.Count == 0)
                    {
                        continue;
                    }
                    yIndex++;
                    Chart2.ChartAreas[0].AxisY.CustomLabels.Add(yIndex - 0.5, yIndex + 0.5,
                                                                individual.individual_name);
                    foreach (DataRowView rv in links)
                    {
                        var link = (DtstCOI.individual_company_linkRow)rv.Row;
                        if (!ct.IsPointUsable(link))
                        {
                            continue;
                        }
                        string position;
                        int    positionSeriesIndex;
                        if (link.IspositionNull() || link.position.Trim() == string.Empty)
                        {
                            position            = positions[0];
                            positionSeriesIndex = 0;
                        }
                        else
                        {
                            position            = link.position.Trim().ToLower();
                            positionSeriesIndex = positions.IndexOf(position);
                            if (positionSeriesIndex == -1)
                            {
                                s            = Chart2.Series.Add(position);
                                s.ChartType  = SeriesChartType.Point.ToString();
                                s.XValueType = ChartValueTypes.Date;
                                s.MarkerSize = (int)Chart2.Height.Value / 100;
                                positions.Add(position);
                                positionSeriesIndex = positions.Count - 1;
                            }
                        }
                        var point = new Dundas.Charting.WebControl.DataPoint();
                        point.SetValueXY(link.link_date, yIndex);
                        Chart2.Series[positionSeriesIndex].Points.Add(point);
                        count++;
                    }
                }
                yIndex++;
                Chart2.ChartAreas[0].AxisY.CustomLabels.Add(yIndex - 0.5, yIndex + 0.5, company.company_name);
                Chart2.ChartAreas[0].AxisY.StripLines.Add(new StripLine
                {
                    IntervalOffset = yIndex - 0.1,
                    BackColor      = Color.LightGray,
                    StripWidth     = 0.2
                });
            }
            yIndex++;
            Chart2.ChartAreas[0].AxisY.Maximum = yIndex;
            Chart2.Titles[1].Text += " " + count + " matches found";
            if (!CheckData.Checked)
            {
                return;
            }
            GridView1.DataSource = table;
            GridView1.DataBind();
        }