Exemple #1
0
        // This method will be called when the thread is started.


        public void Send_Results_Link(QuerryParameters p)
        {
            DBConnect db           = new DBConnect();
            string    emailaddress = db.getEmail(p.userID);

            using (MailMessage mm = new MailMessage("*****@*****.**", emailaddress))
            {
                mm.Subject = "Perceptron: Protein Search Results";
                string body = "Hello " + p.userID + ",";
                body += "<br /><br /> The results for protein search query submitted at " + "##-##-####" + " job title " + p.title + " have been computed. To see the results please click on following link(s).<br />";
                for (int hijk = 0; hijk < p.peakListFile.Length; hijk++)
                {
                    body += "<br />" + hijk.ToString() + ". Title: " + p.peakListFile[hijk].Substring(28 + p.userID.Length);
                    body += "&nbsp;&nbsp;&nbsp;&nbsp;<a href = \'http://*****:*****@gmail.com", "hawking1900");
                smtp.UseDefaultCredentials = true;
                smtp.Credentials           = NetworkCred;
                smtp.Port = 587;
                smtp.Send(mm);
            }
        }
Exemple #2
0
 public void SetPriority(int n, QuerryParameters a)
 {
     if (n >= 0 && n < 3)
     {
         priority = n;
     }
 }
Exemple #3
0
        public static void ProteinSearch(QuerryParameters parameters)
        {/////////prg
            int location;

            if (CurrentJobs.current == null)
            {
                location = 0;
            }
            else
            {
                location = CurrentJobs.current.Count;
            }

            Job newJob = new Job();

            newJob.qid      = parameters.queryid;
            newJob.uid      = parameters.userID;
            newJob.progress = "Initiating Search!";//prg
            CurrentJobs.Initialize();
            CurrentJobs.current.Add(newJob);
            ////prg

            int q = db.queryStore(parameters);

            ////////////////////////////////////////////////////////////////////////////////////
            Worker workerObject = new Worker();

            workerObject.location   = location;
            workerObject.parameters = parameters;
            //  Thread workerThread = new Thread(workerObject.DoWork);
            //workerThread.Name = "searchThread";
            //workerThread.Start();
            workerObject.DoWork();
            // return "ok";
        }//function
Exemple #4
0
        public static void Entry(QuerryParameters p)
        {
            Attributes element = new Attributes();

            element.querrpara = p;
            element.priority  = 0;
            int vv;

            vv = p.peakListFile.Length;
            if (vv == 1)
            {
                medium.Add(element);
            }
            else
            {
                low.Add(element);
            }

            IA.checkQueuee();
        }
Exemple #5
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);
        }
Exemple #6
0
        //Store Query parameters
        public int queryStore(QuerryParameters param)
        {
            bool success = false;

            if (this.OpenConnection() == true)
            {
                try
                {
                    string filename = string.Join("<", param.peakListFile);
                    success = true;
                    string dateTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm");

                    string query1 = "INSERT INTO query VALUES('" + param.queryid + "','" + param.userID + "','" + param.title + "','" + param.protDB + "','" + param.outputFormat + "','" + param.insilico_frag_type + "','" + param.filterDB + "','" + param.ptm_tolerance + "','"
                                    + param.MWTolUnit + "','" + param.MW_tolerance + "','" + param.hopThreshhold + "','" + param.minimum_est_length + "','" + param.maximum_est_length + "','" + param.GUI_mass + "','" + param.HandleIons + "'," + param.autotune + ",'" + filename + "','" + param.fileType +
                                    "','" + param.hopTolUnit + "'," + param.MW_sweight + "," + param.PST_sweight + "," + param.Insilico_sweight + "," + param.NumberOfOutputs + "," + param.denovo_allow + "," + param.ptm_allow + ",'" + dateTime + "')";


                    MySqlCommand cmd = new MySqlCommand(query1, connection);
                    cmd.ExecuteNonQuery();

                    string query2;
                    for (int i = 0; i < param.ptm_code_var.Count; i++)
                    {
                        query2 = "INSERT INTO variable_modifications VALUES('" + param.queryid + "','" + param.ptm_code_var[i] + "')";
                        cmd    = new MySqlCommand(query2, connection);
                        cmd.ExecuteNonQuery();
                    }


                    string query3;
                    for (int i = 0; i < param.ptm_code_fix.Count; i++)
                    {
                        query3 = "INSERT INTO fixed_modifications VALUES('" + param.queryid + "','" + param.ptm_code_fix[i] + "')";
                        cmd    = new MySqlCommand(query3, connection);
                        cmd.ExecuteNonQuery();
                    }



                    string query6 = "INSERT INTO server_status VALUES('" + param.queryid + "','" + param.userID + "',0" + ")";
                    cmd = new MySqlCommand(query6, connection);
                    cmd.ExecuteNonQuery();
                }
                catch (Exception e)
                {
                    string x = e.Message;
                    success = false;
                }
            }

            this.CloseConnection();

            if (success == false)
            {
                return(-1);
            }
            else
            {
                return(1);////
            }
        }
Exemple #7
0
        //Returns Search History of specific query ie. search Parameters and Results
        public Searchview retrieve_searchview_db(string qid)
        {
            var result = new Searchview();
            var qp     = new QuerryParameters();
            var res    = new Results();
            var qidArr = qid.Split('z');

            qid = qidArr[0];
            var fileId = Convert.ToInt32(qidArr[1]);
            var query1 = "SELECT * FROM proteomics.query where QueryId='" + qid + "';";
            var queryT = "SELECT * FROM proteomics.timings where querry_ID='" + qid + "';";

            if (OpenConnection())
            {
                try
                {
                    using (var trans = _connection.BeginTransaction())
                    {
                        var cmd    = new MySqlCommand(queryT, _connection);
                        var reader = cmd.ExecuteReader();
                        if (reader.Read())
                        {
                            res.Times.InsilicoTime = reader.GetValue(1).ToString();
                            res.Times.PtmTime      = reader.GetValue(2).ToString();
                            res.Times.TunerTime    = reader.GetValue(3).ToString();
                            res.Times.MwFilterTime = reader.GetValue(4).ToString();
                            res.Times.PstTime      = reader.GetValue(5).ToString();
                            res.Times.TotalTime    = reader.GetValue(6).ToString();
                            res.Times.FileName     = 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.InsilicoFragType = reader.GetValue(5).ToString();
                            qp.FilterDb         = Convert.ToInt32(reader.GetValue(6));
                            qp.PtmTolerance     = Convert.ToDouble(reader.GetValue(7));
                            qp.MwTolUnit        = reader.GetValue(8).ToString();
                            qp.MwTolerance      = Convert.ToDouble(reader.GetValue(9));
                            qp.HopThreshhold    = Convert.ToDouble(reader.GetValue(10));
                            qp.MinimumEstLength = Convert.ToInt32(reader.GetValue(11));
                            qp.MaximumEstLength = Convert.ToInt32(reader.GetValue(12));
                            qp.GuiMass          = 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();
                            qp.HopTolUnit       = reader.GetValue(18).ToString();
                            qp.MwSweight        = Convert.ToDouble(reader.GetValue(19));
                            qp.PstSweight       = Convert.ToDouble(reader.GetValue(20));
                            qp.InsilicoSweight  = Convert.ToDouble(reader.GetValue(21));
                            qp.NumberOfOutputs  = Convert.ToInt32(reader.GetValue(22));
                            qp.DenovoAllow      = Convert.ToInt32(reader.GetValue(23));
                            qp.PtmAllow         = Convert.ToInt32(reader.GetValue(24));
                            qp.NeutralLoss      = Convert.ToDouble(reader.GetValue(25)); //NeutralLoss Added!!!
                            qp.PSTTolerance     = Convert.ToDouble(reader.GetValue(26)); //PSTTolerance Added!!!
                        }

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

                        reader.Close();
                        query1 = "SELECT variable_mod FROM variable_modifications where QueryId='" + qid + "';";
                        cmd    = new MySqlCommand(query1, _connection);
                        using (reader = cmd.ExecuteReader())
                        {
                            qp.PtmCodeVar = new List <int>();
                            while (reader.Read())
                            {
                                qp.PtmCodeVar.Add(Convert.ToInt32(reader["variable_mod"]));
                            }
                        }
                        reader.Close();
                        var query2 = "SELECT * FROM results where Querry_ID='" + qid + "' AND file_ID = " + fileId +
                                     " ORDER BY Score DESC LIMIT " + qp.NumberOfOutputs + ";";
                        cmd           = new MySqlCommand(query2, _connection);
                        res.QueryId   = qid;
                        res.FinalProt = new List <Proteins>();
                        var resid = new List <string>();

                        using (reader = cmd.ExecuteReader())
                        {
                            while (reader.Read())
                            {
                                var tempProt = new Proteins();
                                resid.Add(reader.GetValue(0).ToString());
                                tempProt.Header        = reader.GetValue(2).ToString();
                                tempProt.Sequence      = reader.GetValue(3).ToString();
                                tempProt.EstScore      = Convert.ToDouble(reader.GetValue(4));
                                tempProt.InsilicoScore = Convert.ToDouble(reader.GetValue(5));
                                tempProt.PtmScore      = Convert.ToDouble(reader.GetValue(6));
                                tempProt.Score         = Convert.ToDouble(reader.GetValue(7));
                                tempProt.MwScore       = Convert.ToDouble(reader.GetValue(8));
                                tempProt.Mw            = Convert.ToDouble(reader.GetValue(9));

                                res.FinalProt.Add(tempProt);
                            }
                        }
                        reader.Close();


                        for (var 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())
                                {
                                    var tempSite = new Sites
                                    {
                                        Index     = Convert.ToInt32(reader.GetValue(1)),
                                        Score     = Convert.ToInt32(reader.GetValue(2)),
                                        ModWeight = Convert.ToInt32(reader.GetValue(3)),
                                        ModName   = reader.GetValue(4).ToString(),
                                        Site      = Convert.ToChar(reader.GetValue(5))
                                    };
                                    var tempaa = reader.GetValue(6).ToString();

                                    foreach (char aminoacid in tempaa)
                                    {
                                        tempSite.AminoAcid.Add(aminoacid);
                                    }


                                    res.FinalProt[i].PtmParticulars.Add(tempSite);
                                }
                            }
                        }
                        reader.Close();
                        string xx;
                        for (var 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())
                            {
                                if (reader.Read())
                                {
                                    xx = reader.GetValue(0).ToString();

                                    res.FinalProt[i].InsilicoDetails.PeaklistMassLeft =
                                        xx.Split(',').Select(double.Parse).ToList();
                                }
                            }

                            query2 = "SELECT Ions FROM leftions where ProteinID='" + res.FinalProt[i].Header + "';";
                            cmd    = new MySqlCommand(query2, _connection);
                            using (reader = cmd.ExecuteReader())
                            {
                                if (!reader.Read())
                                {
                                    continue;
                                }
                                xx = reader.GetValue(0).ToString();
                                xx = Decompress(xx);
                                res.FinalProt[i].InsilicoDetails.InsilicoMassLeft =
                                    xx.Split(',').Select(double.Parse).ToList();
                            }
                        }
                        reader.Close();

                        for (var 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())
                            {
                                if (reader.Read())
                                {
                                    xx = reader.GetValue(0).ToString();
                                    res.FinalProt[i].InsilicoDetails.PeaklistMassRight =
                                        xx.Split(',').Select(double.Parse).ToList();
                                }
                            }


                            query2 = "SELECT Ions FROM rightions where ProteinID='" + res.FinalProt[i].Header + "';";
                            cmd    = new MySqlCommand(query2, _connection);
                            using (reader = cmd.ExecuteReader())
                            {
                                if (reader.Read())
                                {
                                    xx = reader.GetValue(0).ToString();
                                    xx = Decompress(xx);
                                    res.FinalProt[i].InsilicoDetails.InsilicoMassRight =
                                        xx.Split(',').Select(double.Parse).ToList();
                                }
                            }
                        }
                        reader.Close();
                        result.Param  = qp;
                        result.Result = res;
                        trans.Commit();
                        _connection.Close();
                    }
                }


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

                return(result);
            }
            return(result);
        }
Exemple #8
0
        protected async void Button2_Click(object sender, EventArgs e)
        {
            var fileNameArray = new string[File_Upload.PostedFiles.Count];

            if (File_Upload.HasFile)
            {
                try
                {
                    for (var i = 0; i < File_Upload.PostedFiles.Count; i++)
                    {
                        fileNameArray[i] = Path.Combine(@"C:\inetpub\wwwroot\shifaa\Peaklists\" + Session["ID"],
                                                        File_Upload.PostedFiles[i].FileName);
                        File_Upload.SaveAs(fileNameArray[i]);
                    }
                    var ext = Path.GetExtension(File_Upload.FileName);

                    if (Session["ID"] == null)
                    {
                        Response.Redirect("~/Account/Login", false);
                    }

                    var sessionId = Session["ID"];
                    if (sessionId != null)
                    {
                        var userId = sessionId.ToString();

                        var fixedMods    = fixi.Value.Split(",".ToCharArray(), StringSplitOptions.RemoveEmptyEntries);
                        var variableMods = vari.Value.Split(",".ToCharArray(), StringSplitOptions.RemoveEmptyEntries);


                        var fixedItems       = fixedMods.Select(mods => Convert.ToInt32(mods)).ToList();
                        var variableItems    = variableMods.Select(mods => Convert.ToInt32(mods)).ToList();
                        var querryParameters = new QuerryParameters();
                        var qId = Guid.NewGuid();
                        Session["Qid"] = qId;

                        //General Info
                        querryParameters.userID       = userId;
                        querryParameters.queryid      = qId.ToString();
                        querryParameters.title        = search_title.Text;
                        querryParameters.fileType     = ext;
                        querryParameters.peakListFile = fileNameArray;
                        if (pro_mass.Text == "")
                        {
                            pro_mass.Text = "-1";
                        }
                        querryParameters.GUI_mass        = Convert.ToDouble(pro_mass.Text);
                        querryParameters.protDB          = database.Value;
                        querryParameters.NumberOfOutputs = Convert.ToInt32(No_of_outputs.Text);


                        //////     MS/MS
                        querryParameters.insilico_frag_type = fragtype.Value;
                        querryParameters.HandleIons         = ss.Value;
                        if (peptide_tol.Text == "")
                        {
                            peptide_tol.Text = "0.5";
                        }
                        querryParameters.hopThreshhold = Convert.ToDouble(peptide_tol.Text);
                        querryParameters.hopTolUnit    = "Da";


                        ////         Protein Filter
                        if (filterDB.Checked)
                        {
                            querryParameters.MWTolUnit = "Da";
                            if (protein_tol.Text == "")
                            {
                                protein_tol.Text = "100";
                            }
                            querryParameters.MW_tolerance = Convert.ToDouble(protein_tol.Text);
                            querryParameters.filterDB     = 1;
                        }
                        else
                        {
                            querryParameters.MW_tolerance = 1000;
                            querryParameters.MWTolUnit    = "Da";
                            querryParameters.filterDB     = 0;
                        }


                        //          Tuner
                        if (optionsRadios3.Checked)
                        {
                            if (!filterDB.Checked)
                            {
                                if (protein_tol.Text == "")
                                {
                                    protein_tol.Text = "100";
                                }
                                querryParameters.MW_tolerance = Convert.ToDouble(protein_tol.Text);
                            }
                            querryParameters.autotune = 1;
                        }
                        else
                        {
                            querryParameters.autotune = 0;
                        }


                        ////////         Denovo
                        if (optionsRadios5.Checked)
                        {
                            querryParameters.denovo_allow = 1;


                            //////////         Length base
                            if (length.Checked)
                            {
                                querryParameters.maximum_est_length = Convert.ToInt32(PST_Length_max.SelectedItem.Value);
                                querryParameters.minimum_est_length = Convert.ToInt32(PST_Length_min.SelectedItem.Value);
                            }
                            else
                            {
                                querryParameters.maximum_est_length = -1;
                                querryParameters.minimum_est_length = -1;
                            }
                        }
                        else
                        {
                            querryParameters.denovo_allow       = 0;
                            querryParameters.maximum_est_length = -1;
                            querryParameters.minimum_est_length = -1;
                        }


                        //      PTM Filter
                        if (optionsRadios9.Checked)
                        {
                            querryParameters.ptm_allow = 1;
                            if (ptm_tol.Text == "")
                            {
                                ptm_tol.Text = "0.5";
                            }
                            querryParameters.ptm_tolerance = Convert.ToDouble(ptm_tol.Text);
                            querryParameters.ptm_code_fix  = fixedItems;
                            querryParameters.ptm_code_var  = variableItems;

                            if ((fixedItems.Count == 0) && (variableItems.Count == 0))
                            {
                                querryParameters.ptm_allow = 0;
                            }
                        }
                        else
                        {
                            querryParameters.ptm_allow     = 0;
                            querryParameters.ptm_tolerance = -1;
                            fixedItems.Clear();
                            variableItems.Clear();
                            querryParameters.ptm_code_fix = fixedItems;
                            querryParameters.ptm_code_var = variableItems;
                        }


                        //          Final weightage
                        if (optionsRadios11.Checked)
                        {
                            if (Insilico_Wei.Text == "")
                            {
                                Insilico_Wei.Text = "1";
                            }

                            if (MW_Wei.Text == "")
                            {
                                MW_Wei.Text = "1";
                            }


                            if (PST_Wei.Text == "")
                            {
                                PST_Wei.Text = "1";
                            }

                            querryParameters.Insilico_sweight = Convert.ToDouble(Insilico_Wei.Text);
                            querryParameters.MW_sweight       = Convert.ToDouble(MW_Wei.Text);
                            querryParameters.PST_sweight      = Convert.ToDouble(PST_Wei.Text);
                        }
                        else
                        {
                            querryParameters.Insilico_sweight = 1;
                            querryParameters.MW_sweight       = 1;
                            querryParameters.PST_sweight      = 1;
                        }


                        var         paramContent = JsonConvert.SerializeObject(querryParameters);
                        var         client       = new HttpClient();
                        HttpContent httpCont     = new StringContent(paramContent);
                        httpCont.Headers.ContentType = new MediaTypeHeaderValue("application/json");
                        const string uri = "http://localhost:14625//api/search/Post_search";
                        string       result;

                        try
                        {
                            var getStringTask = client.PostAsync(uri, httpCont);
                            var xyz           = await getStringTask;
                            result = xyz.Content.ReadAsStringAsync().Result;
                            Response.Redirect("~/jobQueue.aspx", false);
                        }
                        catch (Exception tt)
                        {
                            stat.Text = tt.Message;
                            result    = "noty noty !";
                        }
                    }
                }


                catch (Exception w)
                {
                    stat.Text = w.Message;
                    Debug.WriteLine(w.Message);
                    Debug.WriteLine(PST_Length_max.SelectedItem.Value);
                    optionsRadios3.Checked  = false;
                    optionsRadios5.Checked  = false;
                    optionsRadios9.Checked  = false;
                    optionsRadios11.Checked = false;
                    filterDB.Checked        = false;
                    length.Checked          = false;
                    optionsRadios4.Checked  = true;
                    optionsRadios6.Checked  = true;
                    optionsRadios10.Checked = true;
                    optionsRadios12.Checked = true;
                }
            }
            else
            {
                ClientScript.RegisterStartupScript(GetType(), "myalert", "alert('Please Uploa File to Continue!');",
                                                   true);
                optionsRadios3.Checked  = false;
                optionsRadios5.Checked  = false;
                optionsRadios9.Checked  = false;
                optionsRadios11.Checked = false;
                filterDB.Checked        = false;
                length.Checked          = false;
                optionsRadios4.Checked  = true;
                optionsRadios6.Checked  = true;
                optionsRadios10.Checked = true;
                optionsRadios12.Checked = true;
            }
        }
Exemple #9
0
 public void Post_search([FromBody] QuerryParameters a)
 {
     UsersQueueMember.Entry(a);
 }
Exemple #10
0
 public int GetPriority(QuerryParameters a)
 {
     return(priority);
 }