Esempio n. 1
0
 internal ManagerResponse(MemberManagerVm m)
 {
     Identity   = m.Identity;
     Name       = m.Name;
     CreateDate = m.CreateDate;
     UpdateDate = m.UpdateDate;
     Settings   = new ManagerSettingsResponse(m.Identity, m.Settings);
 }
Esempio n. 2
0
        /// <summary>
        /// Update an existing Manager
        /// </summary>
        /// <param name="manager">MemberManagerVm</param>
        /// <returns><![CDATA[ (MemberManagerVm Application, bool IsSuccess, string Message) ]]></returns>
        public (MemberManagerVm Manager, bool IsSuccess, string Message) UpdateApplication(MemberManagerVm manager)
        {
            var dbManager = DataAccess.MemberManager.GetById(manager.Id);

            if (dbManager == null)
            {
                return(manager, false, MemberManagerMessages.Error.MANAGER_UPDATE);
            }

            dbManager = manager.ToEntity(dbManager);

            DataAccess.MemberManager.Update(dbManager);
            DataAccess.Save();

            manager = new MemberManagerVm(dbManager);
            return(manager, true, MemberManagerMessages.Success.MANAGER_UPDATE);
        }
Esempio n. 3
0
        /// <summary>
        /// Create a new Manager
        /// </summary>
        /// <param name="userId">User Id</param>
        /// <param name="manager">Manager</param>
        /// <param name="settings">Settings</param>
        /// <returns><![CDATA[ (MemberManagerVm Application, MemberManagerSettingsVm Settings) ]]></returns>
        public (MemberManagerVm Manager, MemberManagerSettingsVm Settings, bool IsSuccess, string Message) Create(int userId, MemberManagerVm manager, MemberManagerSettingsVm settings)
        {
            try
            {
                // Check if the Manager Name is already been used by the user.
                var checkData = DataAccess.MemberManager.Any(f => f.Name.ToLower().Trim() == manager.Name.ToLower().Trim() &&
                                                             f.OwnerId == userId);

                if (checkData)
                {
                    return(null, null, false, MemberManagerMessages.Error.MANAGER_ALREADY_EXISTS);
                }

                // Create the Application
                var dbView = manager.ToEntityCreate(userId);
                dbView = DataAccess.MemberManager.Create(dbView);

                // Create the Application Properties
                var dbSettings = settings.ToEntityCreate(dbView);
                dbSettings = DataAccess.MemberManagerSettings.Create(dbSettings);

                DataAccess.Save();

                manager  = new MemberManagerVm(dbView);
                settings = new MemberManagerSettingsVm(dbSettings);

                return(manager, settings, true, MemberManagerMessages.Success.MANAGER_CREATED);
            }
            catch (DbEntityValidationException ex)
            {
#if (DEBUG)
                // for debuging entity framework
                foreach (var error in ex.EntityValidationErrors.SelectMany(valError => valError.ValidationErrors))
                {
                    Console.WriteLine(error.ErrorMessage);
                }
#endif
                throw;
            }
            catch
            {
                throw;
            }
        }
        public void RegisterManager()
        {
            #region Master
            var app = new MemberManagerVm()
            {
                Name = "Test Manager"
            };

            var settings = new MemberManagerSettingsVm()
            {
                AutoValidateUser = false,
                RestrictEmail    = true,
                Status           = MemberManagerStatus.Pending
            };

            var dbRes = ManagerSvc.Create(1, app, settings);

            _managerVm         = dbRes.Manager;
            _managerSettingsVm = dbRes.Settings;
            #endregion Master

            Assert.AreNotEqual(dbRes.Manager.Id, 0);
        }