public override List <MIDAS.GBX.BusinessObjects.BusinessValidation> Validate <T>(T entity)
        {
            BO.UserPersonalSetting userPersonalSetting = (BO.UserPersonalSetting)(object) entity;
            var result = userPersonalSetting.Validate(userPersonalSetting);

            return(result);
        }
        public override Object GetByUserAndCompanyId(int userId, int companyId)
        {
            var acc = _context.UserPersonalSettings.Include("User").Include("Company").Where(p => p.UserId == userId && p.CompanyId == companyId && (p.IsDeleted.HasValue == false || (p.IsDeleted.HasValue == true && p.IsDeleted.Value == false))).FirstOrDefault();

            BO.UserPersonalSetting acc_ = Convert <BO.UserPersonalSetting, UserPersonalSetting>(acc);

            if (acc_ == null)
            {
                return(new BO.ErrorObject {
                    ErrorMessage = "No record found.", errorObject = "", ErrorLevel = ErrorLevel.Error
                });
            }

            return((object)acc_);
        }
        public PushNotificationStatus PushNotification(string username, int compnayid, string message, string eventName)
        {
            try
            {
                using (UserPersonalSettingRepository cmp = new UserPersonalSettingRepository(_context))
                {
                    BO.UserPersonalSetting userSettings = (BO.UserPersonalSetting)cmp.GetByUserNameAndCompanyId(username, compnayid);

                    if (userSettings != null)
                    {
                        if (userSettings.IsPushNotificationEnabled)
                        {
                            var subscription = GetSubscriptionByEventName(username, eventName);
                            if (subscription != null)
                            {
                                var result = PushNotification(username, message, subscription.EventID);
                                if (result)
                                {
                                    return(PushNotificationStatus.Delivered);
                                }
                                else
                                {
                                    return(PushNotificationStatus.Failed);
                                }
                            }
                            else
                            {
                                return(PushNotificationStatus.EventNotSubscribed);
                            }
                        }
                        {
                            return(PushNotificationStatus.NotificationNotEnabled);
                        }
                    }
                    else
                    {
                        return(PushNotificationStatus.NotificationNotEnabled);
                    }
                }
            }
            catch (Exception e)
            {
                return(PushNotificationStatus.NotificationNotEnabled);
            }
        }
示例#4
0
        public PreferedModeOfComunication GetModeOfComunication(string userName, int companyid)
        {
            using (UserPersonalSettingRepository cmp = new UserPersonalSettingRepository(_context))

            {
                BO.UserPersonalSetting userSettings = (BO.UserPersonalSetting)cmp.GetByUserNameAndCompanyId(userName, companyid);


                if (userSettings != null)
                {
                    return((PreferedModeOfComunication)userSettings.PreferredModeOfCommunication);
                }
                else
                {
                    return(PreferedModeOfComunication.Both);
                }
            }
        }
        public override object Save <T>(T entity)
        {
            BO.UserPersonalSetting userPersonalSettingBO = (BO.UserPersonalSetting)(object) entity;
            UserPersonalSetting    userPersonalSettingDB = new UserPersonalSetting();


            if (userPersonalSettingBO != null)
            {
                bool Add_userPersonalsetting = false;
                userPersonalSettingDB = _context.UserPersonalSettings.Where(p => p.UserId == userPersonalSettingBO.UserId && p.CompanyId == userPersonalSettingBO.CompanyId &&
                                                                            (p.IsDeleted.HasValue == false || (p.IsDeleted.HasValue == true && p.IsDeleted.Value == false)))
                                        .FirstOrDefault();

                if (userPersonalSettingDB == null)
                {
                    userPersonalSettingDB   = new UserPersonalSetting();
                    Add_userPersonalsetting = true;
                }

                userPersonalSettingDB.UserId                       = userPersonalSettingBO.UserId;
                userPersonalSettingDB.CompanyId                    = userPersonalSettingBO.CompanyId;
                userPersonalSettingDB.IsPublic                     = userPersonalSettingBO.IsPublic;
                userPersonalSettingDB.IsSearchable                 = userPersonalSettingBO.IsSearchable;
                userPersonalSettingDB.IsCalendarPublic             = userPersonalSettingBO.IsCalendarPublic;
                userPersonalSettingDB.SlotDuration                 = userPersonalSettingBO.SlotDuration;
                userPersonalSettingDB.PreferredModeOfCommunication = userPersonalSettingBO.PreferredModeOfCommunication;
                userPersonalSettingDB.IsPushNotificationEnabled    = userPersonalSettingBO.IsPushNotificationEnabled;

                if (Add_userPersonalsetting == true)
                {
                    userPersonalSettingDB = _context.UserPersonalSettings.Add(userPersonalSettingDB);
                }
                _context.SaveChanges();
            }

            userPersonalSettingDB = _context.UserPersonalSettings.Include("User")
                                    .Include("Company")
                                    .Where(p => p.Id == userPersonalSettingDB.Id).FirstOrDefault <UserPersonalSetting>();


            var res = Convert <BO.UserPersonalSetting, UserPersonalSetting>(userPersonalSettingDB);

            return((object)res);
        }
        public override T Convert <T, U>(U entity)
        {
            UserPersonalSetting userPersonalSetting = entity as UserPersonalSetting;

            if (userPersonalSetting == null)
            {
                return(default(T));
            }

            BO.UserPersonalSetting userPersonalSettingBO = new BO.UserPersonalSetting();

            userPersonalSettingBO.ID                           = userPersonalSetting.Id;
            userPersonalSettingBO.UserId                       = userPersonalSetting.UserId;
            userPersonalSettingBO.CompanyId                    = userPersonalSetting.CompanyId;
            userPersonalSettingBO.IsPublic                     = userPersonalSetting.IsPublic;
            userPersonalSettingBO.IsSearchable                 = userPersonalSetting.IsSearchable;
            userPersonalSettingBO.IsCalendarPublic             = userPersonalSetting.IsCalendarPublic;
            userPersonalSettingBO.SlotDuration                 = userPersonalSetting.SlotDuration;
            userPersonalSettingBO.PreferredModeOfCommunication = userPersonalSetting.PreferredModeOfCommunication;
            userPersonalSettingBO.IsPushNotificationEnabled    = userPersonalSetting.IsPushNotificationEnabled;
            userPersonalSettingBO.IsDeleted                    = userPersonalSetting.IsDeleted;
            userPersonalSettingBO.CreateByUserID               = userPersonalSetting.CreateByUserID;
            userPersonalSettingBO.UpdateByUserID               = userPersonalSetting.UpdateByUserID;

            if (userPersonalSetting.User != null)
            {
                if (userPersonalSetting.User.IsDeleted.HasValue == false || (userPersonalSetting.User.IsDeleted.HasValue == true && userPersonalSetting.User.IsDeleted.Value == false))
                {
                    BO.User boUser = new BO.User();
                    using (UserRepository cmp = new UserRepository(_context))
                    {
                        boUser = cmp.Convert <BO.User, User>(userPersonalSetting.User);
                        userPersonalSettingBO.User = boUser;
                    }
                }
            }


            return((T)(object)userPersonalSettingBO);
        }