Пример #1
0
        public void WriteData()
        {
            List <RecordDate> dates = new List <RecordDate>();

            foreach (DateTime date in master.Keys)
            {
                RecordDate rdate = new RecordDate();
                rdate.date = String.Format("new Date({0},{1},{2},{3},{4},{5})", date.Year, date.Month, date.Day, date.Hour, date.Minute, date.Second);

                SpeciesRecords recs = master[date];
                foreach (SpeciesRepItem item in recs.records)
                {
                    rdate.items.Add(item);
                }


                dates.Add(rdate);
            }



            JavaScriptSerializer js = new JavaScriptSerializer();

            Response.Write(js.Serialize(dates));
        }
Пример #2
0
        public void WriteTable()
        {
            foreach (DateTime date in master.Keys)
            {
                SpeciesRecords recs = master[date];
                foreach (SpeciesRepItem item in recs.records)
                {
                    Response.Write("<tr>");

                    Response.Write("<td>" + date.ToString("yyyy-MM-dd") + "</td>");
                    Response.Write("<td>" + date.ToString("HH:mm:ss") + "</td>");

                    Response.Write("<td>" + Server.HtmlEncode(item.commonName) + "</td>");
                    Response.Write("<td>" + Server.HtmlEncode(item.scientName) + "</td>");
                    Response.Write("<td>" + Server.HtmlEncode(item.flying.ToString()) + "</td>");
                    Response.Write("<td>" + Server.HtmlEncode(item.sitting.ToString()) + "</td>");

                    Response.Write("</tr>");
                }
            }
        }
Пример #3
0
        SpeciesRecords LoadRecords(String query, List <int> filteredSpecies)
        {
            int            prevTransect      = -1;
            bool           speciesInTransect = true;
            SpeciesRepItem prevItem          = null;


            SpeciesRecords records = new SpeciesRecords();

            using (SqlConnection connection = new SqlConnection(DataSources.dbConSpecies))
            {
                connection.Open();
                using (SqlCommand command = new SqlCommand(query, connection))
                {
                    using (SqlDataReader set = command.ExecuteReader())
                    {
                        while (set.Read())
                        {
                            int      fStationID = (int)set["fStationID"];
                            DateTime date       = (DateTime)set["fStartDate"];
                            DateTime time1      = new DateTime(2010, 1, 1, 12, 0, 0);
                            DateTime time2      = new DateTime(2010, 1, 1, 12, 0, 0);

                            if (transects.ContainsKey(fStationID) == false)
                            {
                                Transect tr = new Transect();
                                tr.Date      = String.Format("{0}-{1}-{2}", date.Year, date.Month.ToString("D2"), date.Day.ToString("D2"));
                                tr.StartTime = String.Format("{0}:{1}:{2}", time1.Hour.ToString("D2"), time1.Minute.ToString("D2"), time1.Second.ToString("D2"));
                                tr.EndTime   = String.Format("{0}:{1}:{2}", time2.Hour.ToString("D2"), time2.Minute.ToString("D2"), time2.Second.ToString("D2"));
                                tr.StartLat  = set["fStartLat"].ToString();
                                tr.StartLong = set["fStartLng"].ToString();
                                tr.EndLat    = set["fEndLat"].ToString();
                                tr.EndLong   = set["fEndLng"].ToString();

                                tr.Cruise   = set["fSurveyLabel"].ToString();
                                tr.transect = set["fLevel3Name"].ToString();


                                transects[fStationID] = tr;
                            }

                            Transect trans = transects[fStationID];

                            int speciesID = (int)set["fSpeciesID"];
                            if (filteredSpecies == null || filteredSpecies.Contains(speciesID))
                            {
                                String speciesName = set["fCommonName"].ToString();

                                species[speciesName] = speciesID;

                                if (trans.counts.ContainsKey(speciesID) == false)
                                {
                                    trans.counts[speciesID] = new TCount();
                                }
                                TCount tc = trans.counts[speciesID];

                                if (set["fOccurance"] != DBNull.Value)
                                {
                                    int flying = (int)set["fOccurance"];
                                    if (tc.flying == "")
                                    {
                                        tc.flying = "0";
                                    }
                                    tc.flying = (int.Parse(tc.flying) + flying).ToString();
                                }
                            }



                            if (prevTransect != fStationID)
                            {
                                if (speciesInTransect == false)
                                {
                                    if (filteredSpecies != null && prevItem != null)
                                    {
                                        // add null species record
                                        prevItem.commonName = "None observed";
                                        prevItem.scientName = "None observed";
                                        prevItem.flying     = 0;
                                        prevItem.sitting    = 0;
                                        records.records.Add(prevItem);
                                    }
                                }

                                prevTransect      = fStationID;
                                speciesInTransect = false;
                            }



                            SpeciesRepItem item = new SpeciesRepItem();
                            item.species    = (int)set["fSpeciesID"];
                            item.commonName = set["fCommonName"].ToString();
                            item.scientName = set["fSpeciesName"].ToString();

                            item.flying = (int)set["fOccurance"];

                            DateTime time = new DateTime(2010, 1, 1, 12, 0, 0);
                            item.date = new DateTime(date.Year, date.Month, date.Day, time.Hour, time.Minute, time.Second);

                            item.startLat     = (double)set["fStartLat"];
                            item.startLng     = (double)set["fStartLng"];
                            item.endLat       = set["fEndLat"].ToString();
                            item.endLng       = set["fEndLng"].ToString();
                            item.LatitudeEnd  = set["fEndLat"].ToString();
                            item.LongitudeEnd = set["fEndLng"].ToString();


                            if (filteredSpecies == null || filteredSpecies.Contains(item.species))
                            {
                                speciesInTransect = true;
                                records.records.Add(item);
                            }

                            prevItem = item;
                        }
                    }
                }
            }

            if (speciesInTransect == false)
            {
                if (filteredSpecies != null && prevItem != null)
                {
                    // add null species record
                    prevItem.commonName = "None observed";
                    prevItem.scientName = "None observed";
                    prevItem.flying     = 0;
                    prevItem.sitting    = 0;
                    records.records.Add(prevItem);
                }
            }


            return(records);
        }
Пример #4
0
        protected void Page_Load(object sender, EventArgs e)
        {
            String transects = Request["items"];

            if (Request["trm"] != null && Request["trm"] != "" && Request["items"] != null && Request["items"] != "")
            {
                String trm = Request["trm"];

                String   filter = "1 = 0";
                String[] items  = Request["items"].Split(',');
                foreach (String t in items)
                {
                    if (t.Trim() != "")
                    {
                        switch (trm)
                        {
                        case "vessel":
                            filter += " OR VesselID = " + int.Parse(t);
                            break;

                        case "cruise":
                            filter += " OR fSurveyID = " + int.Parse(t);
                            break;

                        case "transect":
                            filter += " OR fStationID = " + int.Parse(t);
                            break;
                        }
                    }
                }

                SpeciesRecords recs = LoadTransects(filter);
                for (var i = 0; i < recs.records.Count; i++)
                {
                    SpeciesRepItem record = recs.records[i];
                    if (master.ContainsKey(record.date) == false)
                    {
                        master[record.date] = new SpeciesRecords();
                    }
                    master[record.date].records.Add(record);
                }
            }
            else
            {
                String species = Request["species"];
                if (species != null && species != "")
                {
                    String[] items = species.Split(',');
                    foreach (String item in items)
                    {
                        SpeciesRecords recs = LoadSpeciesSeries(int.Parse(item));
                        for (var i = 0; i < recs.records.Count; i++)
                        {
                            SpeciesRepItem record = recs.records[i];
                            if (master.ContainsKey(record.date) == false)
                            {
                                master[record.date] = new SpeciesRecords();
                            }
                            master[record.date].records.Add(record);
                        }
                    }
                }
            }
        }