Exemple #1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="groupID"></param>
        /// <returns></returns>
        public async Task <SOSTrackInfo> GetSOSTrackCountByGroupId(int groupID)
        {
            SOSTrackInfo _sosTrackCount = new SOSTrackInfo();

            var liveusers = (from loc in _guardianContext.LiveSessions
                             join grp in _guardianContext.GroupMemberships on loc.ProfileID equals grp.ProfileID
                             where grp.GroupID == groupID
                             select new
            {
                ProfileID = loc.ProfileID,
                IsSOS = loc.IsSOS,
            }).AsNoTracking().ToListAsync();

            var liveUsers = await liveusers;

            _sosTrackCount.SOSCount   = liveUsers.Count(x => x.IsSOS);
            _sosTrackCount.TrackCount = liveUsers.Count(x => !x.IsSOS);

            liveUsers.ForEach(liveUser =>
            {
                if (liveUser.IsSOS)
                {
                    _sosTrackCount.SOSProfileIds += liveUser.ProfileID + "'";
                }
                else
                {
                    _sosTrackCount.TotalProfileIds += liveUser.ProfileID + "'";
                }
            });

            return(_sosTrackCount);
        }
Exemple #2
0
 public static ServiceModel.SOSTrackCounts ConvertToSOSTrackCounts(this DTOModel.SOSTrackInfo sosTrackInfo)
 {
     return(AutoMapper.Mapper.Map <ServiceModel.SOSTrackCounts>(sosTrackInfo));
 }