コード例 #1
0
        public PartialViewResult _OpenDataStat(int TVItemID)
        {
            ViewBag.OpenDataStat = null;

            OpenDataStat openDataStat = _OpenDataService.GetOpenDataStatDB(TVItemID);

            ViewBag.OpenDataStat = openDataStat;

            return(PartialView());
        }
コード例 #2
0
        public OpenDataStat GetOpenDataStatDB(int TVItemID)
        {
            string routineTxt = ((int)SampleTypeEnum.Routine).ToString() + ",";

            TVItemModel tvItemModel = _TVItemService.GetTVItemModelWithTVItemIDDB(TVItemID);

            if (!string.IsNullOrWhiteSpace(tvItemModel.Error))
            {
                return new OpenDataStat()
                       {
                           Error = tvItemModel.Error
                       }
            }
            ;

            using (CSSPDBEntities dd = new CSSPDBEntities())
            {
                OpenDataStat openDataStat = (from c in dd.TVItems
                                             let samples = (from d in dd.TVItems
                                                            from s in dd.MWQMSamples
                                                            where d.TVItemID == s.MWQMSiteTVItemID &&
                                                            d.TVPath.StartsWith(c.TVPath) &&
                                                            d.TVType == (int)TVTypeEnum.MWQMSite &&
                                                            s.SampleTypesText.Contains(routineTxt)
                                                            select new { s.UseForOpenData })
                                                           let totalSampleCount = (from s in samples select s).Count()
                                                                                  let useForOpenDataSampleCount = (from s in samples
                                                                                                                   where s.UseForOpenData == true
                                                                                                                   select s).Count()
                                                                                                                  where c.TVItemID == TVItemID
                                                                                                                  select new OpenDataStat
                {
                    Error = "",
                    TotalNumberOfSamples = totalSampleCount,
                    NumberOfUseForOpenDataSamples = useForOpenDataSampleCount,
                }).FirstOrDefault <OpenDataStat>();

                return(openDataStat);
            }
        }