Пример #1
0
 static private void SupportSitesUpdateSite(HydroService.HydroServiceClient theHydro, int theType)
 {
     try
     {
         foreach (var site in theHydro.GetSiteList(theType))
         {
             HydroDataCenterEntity.Models.Site theSite = null;
             int site_code = Convert.ToInt32(site.SiteCode);
             theSite = Site.GetByCode(site_code, site.Type.Id);
             if (theSite == null)
             {
                 theSite = new Site();
             }
             theSite.Code          = Convert.ToInt32(site.SiteCode);
             theSite.Name          = site.Name;
             theSite.ExtID         = site.SiteId;
             theSite.TypeID        = site.Type.Id;
             theSite.TypeName      = site.Type.Name;
             theSite.TypeNameShort = site.Type.ShortName;
             if (theSite.ID == 0)
             {
                 theSite.Save();
             }
             else
             {
                 theSite.Update();
             }
         }
     }
     catch (Exception ex)
     {
         string err = ex.Message;
         if (ex.InnerException != null)
         {
             err += "\n\r" + ex.InnerException.Message;
         }
         Console.WriteLine(err);
     }
 }
Пример #2
0
        public ActionResult Datas(int SiteCode)
        {
            try
            {
                HydroDataCenterEntity.Models.Site theSiteAgk       = HydroDataCenterEntity.Models.Site.GetByCode(SiteCode, 6);
                HydroDataCenterEntity.Models.Site theSiteHydroPost = HydroDataCenterEntity.Models.Site.GetByCode(SiteCode, 2);

                ViewBag.theSiteAgk = theSiteAgk;

                var theHydro = new HydroDataCenterEntity.HydroService.HydroServiceClient();

                DateTime dateEnd = DateTime.UtcNow;
                DateTime dateBgn = dateEnd.AddDays(-5);

                var ListResult          = theHydro.GetDataValues(theSiteAgk.ExtID, dateBgn, dateEnd, 2, null, null, null);
                var ListResultHydroPost = theHydro.GetDataValues(theSiteHydroPost.ExtID, dateBgn, dateEnd, 2, null, null, null);

                ViewBag.theDataValuesAgk = ListResult;

                HydroDataCenterWeb.Models.DataValues theData = new DataValues();
                theData.SiteCode = SiteCode;


                for (var dateCurr = dateBgn; dateCurr <= dateEnd; dateCurr = dateCurr.AddHours(1))
                {
                    int i = dateCurr.Hour;
                    //for (int i = 0; i < 24; i++)
                    {
                        DataValues.Value theValue = new DataValues.Value();
                        theValue.DateUTC = new DateTime(dateCurr.Year, dateCurr.Month, dateCurr.Day, i, 0, 0);



                        if (ListResult != null && ListResult.Count() > 0)
                        {
                            var valueWhere = ListResult.Where(x => x.DateUTC.Year == dateCurr.Year && x.DateUTC.Month == dateCurr.Month && x.DateUTC.Day == dateCurr.Day && x.DateUTC.Hour == i).ToList();
                            if (valueWhere != null)
                            {
                                if (valueWhere.Count() > 0)
                                {
                                    theValue.valueAgk = valueWhere.Last().Value;
                                    theValue.Date     = valueWhere.Last().Date;
                                }
                            }
                        }


                        if (ListResultHydroPost != null && ListResultHydroPost.Count() > 0)
                        {
                            var valueWhere = ListResultHydroPost.Where(x => x.DateUTC.Year == dateCurr.Year && x.DateUTC.Month == dateCurr.Month && x.DateUTC.Day == dateCurr.Day && x.DateUTC.Hour == i).ToList();
                            if (valueWhere != null)
                            {
                                if (valueWhere.Count() > 0)
                                {
                                    theValue.valueHydroPost = valueWhere.Last().Value;
                                }
                            }
                        }

                        if (dateCurr.Hour == 10 || dateCurr.Hour == 22)
                        {
                            theValue.delta = Math.Abs(theValue.valueAgk - theValue.valueHydroPost);
                        }

                        theData.theValueList.Add(theValue);
                    }
                }

                return(View(theData));
            }
            catch (Exception ex)
            {
                return(Content(ex.Message));
            }
        }