コード例 #1
0
        //Returns Search History of specific query ie. search parameters and Results
        public searchview retrieve_searchview_db(string qid)
        {
            searchview       result = new searchview();
            QuerryParameters qp     = new QuerryParameters();
            Results          r      = new Results();

            string[] QIDArr = qid.Split('z');
            qid = QIDArr[0];
            int file_id = Convert.ToInt32(QIDArr[1]);

            string query1 = "SELECT * FROM proteomics.query where QueryId='" + qid + "';";
            string queryT = "SELECT * FROM proteomics.timings where querry_ID='" + qid + "';";

            if (this.OpenConnection() == true)
            {
                try
                {
                    using (MySqlTransaction trans = connection.BeginTransaction())
                    {
                        MySqlCommand    cmd    = new MySqlCommand(queryT, connection);
                        MySqlDataReader reader = cmd.ExecuteReader();
                        if (reader.Read())
                        {
                            r.times.insilico_time  = reader.GetValue(1).ToString();
                            r.times.ptm_time       = reader.GetValue(2).ToString();
                            r.times.tuner_time     = reader.GetValue(3).ToString();
                            r.times.mw_filter_time = reader.GetValue(4).ToString();
                            r.times.pst_time       = reader.GetValue(5).ToString();
                            r.times.total_time     = reader.GetValue(6).ToString();
                            r.times.file           = reader.GetValue(7).ToString();
                        }
                        reader.Close();



                        cmd    = new MySqlCommand(query1, connection);
                        reader = cmd.ExecuteReader();


                        if (reader.Read())
                        {
                            qp.queryid            = reader.GetValue(0).ToString();
                            qp.userID             = reader.GetValue(1).ToString();
                            qp.title              = reader.GetValue(2).ToString();
                            qp.protDB             = reader.GetValue(3).ToString();
                            qp.outputFormat       = Convert.ToInt32(reader.GetValue(4));
                            qp.insilico_frag_type = reader.GetValue(5).ToString();
                            qp.filterDB           = Convert.ToInt32(reader.GetValue(6));

                            qp.ptm_tolerance = Convert.ToDouble(reader.GetValue(7));
                            qp.MWTolUnit     = reader.GetValue(8).ToString();
                            qp.MW_tolerance  = Convert.ToDouble(reader.GetValue(9));
                            qp.hopThreshhold = Convert.ToDouble(reader.GetValue(10));

                            qp.minimum_est_length = Convert.ToInt32(reader.GetValue(11));
                            qp.maximum_est_length = Convert.ToInt32(reader.GetValue(12));
                            // public double pst_tolerance;
                            qp.GUI_mass   = Convert.ToDouble(reader.GetValue(13));
                            qp.HandleIons = reader.GetValue(14).ToString();
                            qp.autotune   = Convert.ToInt32(reader.GetValue(15));


                            qp.peakListFile = reader.GetValue(16).ToString().Split('<');
                            qp.fileType     = reader.GetValue(17).ToString();
                            // public double peptideTol;

                            //added
                            qp.hopTolUnit = reader.GetValue(18).ToString();


                            qp.MW_sweight       = Convert.ToDouble(reader.GetValue(19));
                            qp.PST_sweight      = Convert.ToDouble(reader.GetValue(20));
                            qp.Insilico_sweight = Convert.ToDouble(reader.GetValue(21));

                            qp.NumberOfOutputs = Convert.ToInt32(reader.GetValue(22));
                            /////
                            qp.denovo_allow = Convert.ToInt32(reader.GetValue(23));
                            qp.ptm_allow    = Convert.ToInt32(reader.GetValue(24));
                        }

                        reader.Close();
                        query1 = "SELECT fixed_mod FROM fixed_modifications where QuerryId='" + qid + "';";
                        cmd    = new MySqlCommand(query1, connection);
                        using (reader = cmd.ExecuteReader())
                        {
                            qp.ptm_code_fix = new List <int>();
                            while (reader.Read())
                            {
                                qp.ptm_code_fix.Add(Convert.ToInt32(reader["fixed_mod"]));
                            }
                        }

                        reader.Close();
                        query1 = "SELECT variable_mod FROM variable_modifications where QuerryId='" + qid + "';";
                        cmd    = new MySqlCommand(query1, connection);
                        using (reader = cmd.ExecuteReader())
                        {
                            qp.ptm_code_var = new List <int>();
                            while (reader.Read())
                            {
                                qp.ptm_code_var.Add(Convert.ToInt32(reader["variable_mod"]));
                            }
                        }
                        reader.Close();
                        // SELECT * FROM proteomics.results Where Querry_ID = 'fe29e39e-97ee-4f5e-9cab-4d414b5e902a' ORDER BY score DESC LIMIT 3;



                        string query2 = "SELECT * FROM results where Querry_ID='" + qid + "' AND file_ID = " + file_id + " ORDER BY score DESC LIMIT " + qp.NumberOfOutputs + ";";
                        cmd          = new MySqlCommand(query2, connection);
                        r.querryID   = qid;
                        r.final_prot = new List <proteins>();
                        proteins      temp_prot = new proteins();
                        List <string> resid     = new List <string>();

                        using (reader = cmd.ExecuteReader())
                        {
                            while (reader.Read())
                            {
                                temp_prot = new proteins();
                                resid.Add(reader.GetValue(0).ToString());
                                temp_prot.header         = reader.GetValue(2).ToString();
                                temp_prot.sequence       = reader.GetValue(3).ToString();
                                temp_prot.est_score      = Convert.ToDouble(reader.GetValue(4));
                                temp_prot.insilico_score = Convert.ToDouble(reader.GetValue(5));
                                temp_prot.ptm_score      = Convert.ToDouble(reader.GetValue(6));
                                temp_prot.score          = Convert.ToDouble(reader.GetValue(7));
                                temp_prot.MW_score       = Convert.ToDouble(reader.GetValue(8));
                                temp_prot.MW             = Convert.ToDouble(reader.GetValue(9));

                                r.final_prot.Add(temp_prot);
                            }
                        }
                        reader.Close();



                        Sites  temp_site = new Sites();
                        string tempaa;
                        for (int i = 0; i < resid.Count; i++)
                        {
                            query2 = "SELECT * FROM ptm_sites where result_id='" + resid[i] + "';";
                            cmd    = new MySqlCommand(query2, connection);
                            using (reader = cmd.ExecuteReader())
                            {
                                while (reader.Read())
                                {
                                    temp_site            = new Sites();
                                    temp_site.i          = Convert.ToInt32(reader.GetValue(1));
                                    temp_site.score      = Convert.ToInt32(reader.GetValue(2));
                                    temp_site.mod_weight = Convert.ToInt32(reader.GetValue(3));
                                    temp_site.mod_name   = reader.GetValue(4).ToString();
                                    temp_site.site       = Convert.ToChar(reader.GetValue(5));
                                    tempaa = reader.GetValue(6).ToString();

                                    for (int j = 0; j < tempaa.Length; j++)
                                    {
                                        temp_site.AA.Add(tempaa[j]);
                                    }


                                    r.final_prot[i].ptm_particulars.Add(temp_site);
                                }
                            }
                        }
                        reader.Close();
                        ///////////



                        //temp_p.insilico_details.insilico_mass_left = dataPs[3].Split(',').Select(t => double.Parse(t)).ToList<double>();

                        string xx;
                        for (int i = 0; i < resid.Count; i++)
                        {
                            query2 = "SELECT matched_peak_left FROM insilico_matches_left where result_id='" + resid[i] + "';";



                            cmd = new MySqlCommand(query2, connection);
                            using (reader = cmd.ExecuteReader())
                            {
                                temp_site = new Sites();

                                if (reader.Read())
                                {
                                    xx = reader.GetValue(0).ToString();

                                    r.final_prot[i].insilico_details.peaklist_mass_left = xx.Split(',').Select(t => double.Parse(t)).ToList <double>();
                                }
                            }



                            query2 = "SELECT Ions FROM leftions where ProteinID='" + r.final_prot[i].header + "';";



                            cmd = new MySqlCommand(query2, connection);
                            using (reader = cmd.ExecuteReader())
                            {
                                temp_site = new Sites();

                                if (reader.Read())
                                {
                                    xx = reader.GetValue(0).ToString();
                                    xx = Decompress(xx);
                                    r.final_prot[i].insilico_details.insilico_mass_left = xx.Split(',').Select(t => double.Parse(t)).ToList <double>();
                                }
                            }
                        }
                        reader.Close();

                        //////////////////////////////////////////////////////////////



                        for (int i = 0; i < resid.Count; i++)
                        {
                            query2 = "SELECT matchedpeak_right FROM insilico_matches_right where result_id='" + resid[i] + "';";



                            cmd = new MySqlCommand(query2, connection);
                            using (reader = cmd.ExecuteReader())
                            {
                                temp_site = new Sites();

                                if (reader.Read())
                                {
                                    xx = reader.GetValue(0).ToString();

                                    r.final_prot[i].insilico_details.peaklist_mass_right = xx.Split(',').Select(t => double.Parse(t)).ToList <double>();
                                }
                            }



                            query2 = "SELECT Ions FROM rightions where ProteinID='" + r.final_prot[i].header + "';";



                            cmd = new MySqlCommand(query2, connection);
                            using (reader = cmd.ExecuteReader())
                            {
                                temp_site = new Sites();

                                if (reader.Read())
                                {
                                    xx = reader.GetValue(0).ToString();
                                    xx = Decompress(xx);
                                    r.final_prot[i].insilico_details.insilico_mass_right = xx.Split(',').Select(t => double.Parse(t)).ToList <double>();
                                }
                            }
                        }
                        reader.Close();

                        //////////////////////////////////////////////////////////////



                        //for (int i = 0; i < resid.Count; i++)
                        //{
                        //    query2 = "SELECT * FROM insilico_mass_right where result_id='" + resid[i] + "';";
                        //    cmd = new MySqlCommand(query2, connection);
                        //    using (reader = cmd.ExecuteReader())
                        //    {

                        //        while (reader.Read())
                        //        {
                        //            temp_site = new Sites();
                        //            r.final_prot[i].insilico_details.insilico_mass_right.Add(Convert.ToDouble(reader.GetValue(1)));
                        //            r.final_prot[i].insilico_details.peaklist_mass_right.Add(Convert.ToDouble(reader.GetValue(2)));


                        //        }
                        //    }

                        //}
                        //reader.Close();



                        ////////////
                        result.param  = qp;
                        result.result = r;



                        trans.Commit();
                        connection.Close();
                    }
                }


                catch (Exception e)
                {
                    System.Diagnostics.Debug.WriteLine(e.Message);
                }
            }


            // result.result.final_prot = result.result.final_prot.OrderByDescending(o => o.score).ToList();
            return(result);
        }
コード例 #2
0
ファイル: UsersController.cs プロジェクト: maziesmith/FYP
        //string querrry id
        public searchview Get_viewsearch(string em)
        {
            searchview answer = abc.retrieve_searchview(em);

            return(answer);
        }
コード例 #3
0
        protected async void Page_Load(object sender, EventArgs e)
        {
            if (IsPostBack)
            {
                return;
            }
            try
            {
                if (string.IsNullOrEmpty(Session["ID"].ToString()))
                {
                    Response.Redirect("~/Account/Login", false);
                }
                var    client   = new HttpClient();
                var    userId   = Session["ID"].ToString();
                var    sessionG = Session["guid"].ToString();
                string result;
                var    uri = "http://localhost:14625//api/users/Get_Session/" + userId + "/" + sessionG;

                try
                {
                    var task = client.GetStringAsync(uri);
                    result = await task;
                }
                catch (Exception k)
                {
                    result = k.Message;
                }

                if (result == "F")
                {
                    Response.Redirect("~/Account/Login", false);
                }
                else
                {
                    var regBtn = (HtmlAnchor)Master.FindControl("reg");
                    var heyBtn = (HtmlAnchor)Master.FindControl("hello");
                    regBtn.Style.Add("display", "none");
                    heyBtn.Style.Remove("display");
                    heyBtn.InnerHtml = Session["ID"].ToString();
                    client           = new HttpClient();
                    userId           = Session["ID"].ToString();
                    uri = "http://localhost:14625//api/users/Get_my_searches/" + userId;
                    var searchlists = new List <searchlist>();

                    try
                    {
                        var task  = client.GetStringAsync(uri);
                        var value = await task;
                        searchlists = JsonConvert.DeserializeObject <List <searchlist> >(value);
                        searchlists = searchlists.OrderByDescending(e11 => DateTime.Parse(e11.date)).ToList();
                    }
                    catch (Exception k)
                    {
                        var result1 = k.Message;
                    }

                    var searchRec = (HtmlAnchor)Master.FindControl("A1");
                    var lgnBtn    = (HtmlAnchor)Master.FindControl("lin");
                    searchRec.Style.Remove("display");
                    searchRec.InnerHtml = "Searches: " + searchlists.Count;
                    lgnBtn.InnerHtml    = "Logout";
                    lgnBtn.HRef         = "~/Account/Logout";

                    Result_table.Rows[0].Cells[0].Attributes.Add("style", "text-align:center !important;");
                    Result_table.Rows[0].Cells[1].Attributes.Add("style", "text-align:center !important;");
                    Result_table.Rows[0].Cells[2].Attributes.Add("style", "text-align:center !important;");
                    Result_table.Rows[0].Cells[3].Attributes.Add("style", "text-align:center !important;");

                    client = new HttpClient();
                    var qid = !string.IsNullOrEmpty(Request.QueryString["Qid"])
                        ? Request.QueryString["Qid"]
                        : Guid.Empty.ToString();
                    uri = "http://localhost:14625//api/users/Get_viewsearch/" + qid;

                    var qidArr = qid.Split('z');
                    qid = qidArr[0];
                    var fileId     = Convert.ToInt32(qidArr[1]);
                    var resultList = new searchview();

                    try
                    {
                        var task  = client.GetStringAsync(uri);
                        var value = await task;
                        resultList = JsonConvert.DeserializeObject <searchview>(value);
                    }
                    catch (Exception k)
                    {
                        var result1 = k.Message;
                    }

                    Session["Qid"] = qid;
                    Session[qid]   = resultList;

                    var querryParameters = resultList.param;
                    P_Search1.Text  = querryParameters.title;
                    P_ProMass1.Text = querryParameters.GUI_mass.ToString();
                    var xx = resultList.param.peakListFile[fileId].Substring(31 + querryParameters.userID.Length);
                    P_Data1.Text = xx;
                    P_PT1.Text   = querryParameters.hopThreshhold.ToString();
                    P_PTU1.Text  = "Da";
                    P_DB1.Text   = querryParameters.protDB;

                    if (querryParameters.insilico_frag_type == "*")
                    {
                        P_FRGL.Style.Add(HtmlTextWriterStyle.Color, "gray");
                    }
                    else
                    {
                        P_FRG1.Text = querryParameters.insilico_frag_type;
                    }

                    if (querryParameters.insilico_frag_type == "*")
                    {
                        P_SIL.Style.Add(HtmlTextWriterStyle.Color, "gray");
                    }
                    else
                    {
                        P_SI1.Text = querryParameters.HandleIons;
                    }

                    if (querryParameters.autotune == 1)
                    {
                        P_AU1.Text = "Yes";
                        if (querryParameters.filterDB == 1)
                        {
                        }
                        else
                        {
                            P_MT1.Text  = querryParameters.MW_tolerance.ToString();
                            P_MTU1.Text = "Da";
                        }
                    }
                    else
                    {
                        P_AU1.Text = "No";
                    }

                    if (querryParameters.filterDB == 1)
                    {
                        P_FDB1.Text = "Yes";
                        P_MT1.Text  = querryParameters.MW_tolerance.ToString();
                        P_MTU1.Text = "Da"; // qu.MWTolUnit;
                    }

                    else
                    {
                        P_FDB1.Text = "No";
                        P_MTL.Style.Add(HtmlTextWriterStyle.Color, "gray");
                        P_MTUL.Style.Add(HtmlTextWriterStyle.Color, "gray");
                    }

                    if (querryParameters.denovo_allow == 1)
                    {
                        P_EPT1.Text = "Yes";

                        if ((querryParameters.maximum_est_length == -1) &&
                            (querryParameters.minimum_est_length == -1))
                        {
                            P_MINL.Style.Add(HtmlTextWriterStyle.Color, "gray");
                            P_MAXL.Style.Add(HtmlTextWriterStyle.Color, "gray");
                        }
                        else
                        {
                            P_MIN1.Text = querryParameters.minimum_est_length.ToString();
                            P_MAX1.Text = querryParameters.maximum_est_length.ToString();
                        }
                    }
                    else
                    {
                        P_EPT1.Text = "No";
                        P_MINL.Style.Add(HtmlTextWriterStyle.Color, "gray");
                        P_MAXL.Style.Add(HtmlTextWriterStyle.Color, "gray");
                    }

                    if (querryParameters.ptm_allow == 1)
                    {
                        P_PTM1.Text = "Yes";
                        P_NOS1.Text =
                            (querryParameters.ptm_code_fix.Count + querryParameters.ptm_code_var.Count).ToString();
                        P_PTMT1.Text = querryParameters.ptm_tolerance.ToString();
                        P_NOSL.Style.Add(HtmlTextWriterStyle.Color, "black");
                    }
                    else
                    {
                        P_PTM1.Text = "No";
                        P_NOSL.Style.Add(HtmlTextWriterStyle.Color, "gray");
                        P_PTMTL.Style.Add(HtmlTextWriterStyle.Color, "gray");
                    }

                    P_MWSW1.Text = querryParameters.MW_sweight.ToString();
                    P_PSTW1.Text = querryParameters.PST_sweight.ToString();
                    P_INSW1.Text = querryParameters.Insilico_sweight.ToString();
                    P_NO1.Text   = querryParameters.NumberOfOutputs.ToString();

                    var results  = resultList.result;
                    var tableRow = new TableRow();
                    Result_table.Rows.Add(tableRow);

                    if (results.final_prot != null)
                    {
                        for (var index = 0;
                             (index < results.final_prot.Count) && (index < querryParameters.NumberOfOutputs);
                             index++)
                        {
                            tableRow = new TableRow();
                            Result_table.Rows.Add(tableRow);
                            var tableCell = new TableCell();
                            tableRow.Cells.Add(tableCell);
                            tableCell.Text            = (index + 1).ToString();
                            tableCell.HorizontalAlign = HorizontalAlign.Center;
                            tableCell = new TableCell();
                            tableRow.Cells.Add(tableCell);
                            tableCell.Text            = results.final_prot[index].header;
                            tableCell.HorizontalAlign = HorizontalAlign.Center;
                            tableCell = new TableCell();
                            tableRow.Cells.Add(tableCell);
                            tableCell.Text            = results.final_prot[index].score.ToString();
                            tableCell.HorizontalAlign = HorizontalAlign.Center;
                            tableCell = new TableCell();
                            tableRow.Cells.Add(tableCell);
                            tableCell.Text = results.final_prot[index].ptm_particulars != null
                                ? results.final_prot[index].ptm_particulars.Count.ToString()
                                : "0";
                            tableCell.HorizontalAlign = HorizontalAlign.Center;

                            var htmlAnchor = new HtmlAnchor
                            {
                                ClientIDMode = ClientIDMode.Static,
                                InnerHtml    = "[Details]",
                                HRef         = "~/Detailed_Results.aspx?ID=" + index + "z" + fileId,
                                Target       = "_blank"
                            };

                            tableCell = new TableCell();
                            tableCell.Controls.Add(htmlAnchor);
                            tableCell.HorizontalAlign = HorizontalAlign.Center;
                            tableRow.Cells.Add(tableCell);

                            if (index % 2 == 0)
                            {
                                tableRow.CssClass = "active";
                            }
                        }
                    }
                }
            }

            catch
            {
                Response.Redirect("~/Account/Login", false);
            }
        }