Example #1
0
    protected void Page_Load(object sender, EventArgs e)
    {
        //HmTrace.WriteWarn("我来了这里99");
        if (!IsPostBack)
        {
            // 引发反向工程
            ThreadPoolX.QueueUserWorkItem(delegate() { EntityFactory.CreateOperate(ManageProvider.Provider.ManageUserType).FindCount(); });

            IManageUser user = ManageProvider.Provider.Current;
            //HmTrace.WriteWarn("我来了这里99");

            if (user != null)
            {
                if (String.Equals("logout", Request["action"], StringComparison.OrdinalIgnoreCase))
                {
                    IAdministrator admin = user as IAdministrator;
                    if (admin == null)
                    {
                        admin.Logout();
                    }
                }
                else
                {
                    Response.Redirect("Default.aspx");
                }
            }
        }
    }
        internal ICollection <Administrator> FindMultipleAdministrators(IAdministrator a)
        {
            var query = repo.Administrators.AsQueryable();

            query = BuildFindAdministratorQuery(a, query);

            return(FindMultipleResults(query));
        }
        internal IAdministrator FindAdministrator(IAdministrator a)
        {
            var query = repo.Administrators.AsQueryable();

            query = BuildFindAdministratorQuery(a, query);

            return(FindAResult(query));
        }
Example #4
0
        ///// <summary>
        ///// Http状态,名称必须和管理员类中一致
        ///// </summary>
        //static HttpState<IAdministrator> http = new HttpState<IAdministrator>("Admin");
        //internal static IAdministrator DefaultAdministrator;
        ///// <summary>
        ///// 创建指定动作的日志实体。通过Http状态访问当前管理员对象,创建日志实体
        ///// </summary>
        ///// <param name="action"></param>
        ///// <returns></returns>
        //public static ILog CreateLog(String action)
        //{
        //    //IAdministrator admin = http.Current;
        //    //if (admin == null) admin = DefaultAdministrator;
        //    IAdministrator admin = Administrator.CurrentAdministrator;
        //    if (admin == null) return null;

        //    return admin.CreateLog(typeof(TEntity), action);
        //}

        /// <summary>
        /// 写日志
        /// </summary>
        /// <param name="action">操作</param>
        /// <param name="remark">备注</param>
        public static void WriteLog(String action, String remark)
        {
            IAdministrator admin = Administrator.CurrentAdministrator;

            if (admin != null)
            {
                admin.WriteLog(typeof(TEntity), action, remark);
            }
        }
        internal bool DeleteAdministrator(IAdministrator a)
        {
            EntityEntry entry = null;
            EntityState state = EntityState.Unchanged;

            entry = repo.Remove(a);

            state = CheckEntryState(state, entry);
            return(VerifyEntryState(state, EntityState.Deleted));
        }
        internal bool AddAdministrator(IAdministrator a)
        {
            EntityEntry entry = null;
            EntityState state = EntityState.Unchanged;

            entry = repo.Add(a);

            state = CheckEntryState(state, entry);
            return(VerifyEntryState(state, EntityState.Added));
        }
 private static void AssertAdministrator(IAdministrator expectedAdministrator, IAdministrator administrator)
 {
     Assert.AreEqual(expectedAdministrator.Id, administrator.Id);
     Assert.AreEqual(expectedAdministrator.EmailAddress, administrator.EmailAddress);
     Assert.AreEqual(expectedAdministrator.FirstName, administrator.FirstName);
     Assert.AreEqual(expectedAdministrator.LastName, administrator.LastName);
     Assert.AreEqual(expectedAdministrator.IsActivated, administrator.IsActivated);
     Assert.AreEqual(expectedAdministrator.IsEnabled, administrator.IsEnabled);
     Assert.AreEqual(expectedAdministrator.IsActivated, administrator.IsActivated);
 }
        internal bool UpdateAdministrator(IAdministrator a)
        {
            EntityEntry entry = null;
            EntityState state = EntityState.Unchanged;

            entry = repo.Update(a);

            state = CheckEntryState(state, entry);
            return(VerifyEntryState(state, EntityState.Modified));
        }
Example #9
0
        private void Start()
        {
            RootController.OnModuleAreReady -= Start;

            environmentController = RootController.GetControllerByType <IEnvironmentController>();
            administrator         = new GameObject("Administrator").AddComponent <Administrator>();
            administrator.Init(this);

            administrator.GetTableHall();
        }
Example #10
0
    protected override void OnPreLoad(EventArgs e)
    {
        base.OnPreLoad(e);

        IManageUser user = ManageProvider.Provider.Current;

        if (user == null)
        {
            Response.Redirect("../Login.aspx");
        }

        ICommonManageProvider provider = CommonManageProvider.Provider;
        IMenu root = null;

        if (provider != null)
        {
            root = provider.MenuRoot;
        }

        IAdministrator admin = user as IAdministrator;

        if (Request["act"] == "logout")
        {
            admin.Logout();
            HmTrace.WriteWarn("我来了这里5555");
            if (string.IsNullOrEmpty(Request["tohome"]))
            {
                // 再跳一次,除去Url中的尾巴
                if (!String.IsNullOrEmpty(Request.Url.Query))
                {
                    Response.Redirect("Default.aspx");
                }
                return;
            }
            else
            {
                Response.Redirect("~/");
                return;
            }
        }

        if (root != null)
        {
            root.CheckMenuName("Admin", "管理平台")
            .CheckMenuName(@"Admin\Sys", "系统管理")
            .CheckMenuName(@"Admin\Advance", "高级设置");

            IMenu menu = root.FindByPath(@"Admin");
            if (menu != null && String.Equals(menu.Url, "../Admin/Default.aspx", StringComparison.OrdinalIgnoreCase))
            {
                menu.Url = "../Admin/Main.aspx";
                menu.Save();
            }
        }
    }
Example #11
0
        public object InsertAdministrator(IAdministrator administrator)
        {
            var newId = Guid.NewGuid();

            var dataModel = mapper.Map <AdministratorDataModel>(administrator);

            dataModel.ID = newId;

            administrators.Add(newId, dataModel);
            return(newId);
        }
Example #12
0
        public void UpdateAdministrator(IAdministrator updatedAdministrator)
        {
            Guid id    = (Guid)updatedAdministrator.ID;
            var  model = mapper.Map <AdministratorDataModel>(administrators[id]);

            model.InternalPhoneNumber = updatedAdministrator.InternalPhoneNumber;
            model.OfficeNumber        = updatedAdministrator.OfficeNumber;
            model.Phone        = updatedAdministrator.Phone;
            model.Email        = updatedAdministrator.Email;
            model.Supervisor   = updatedAdministrator.Supervisor;
            administrators[id] = model;
        }
        // There should be one query for each case in either 'Find' or 'FindMultiple',
        // meaning if there is a case to find YourDomainClass in both methods,
        // then there should be one query builder, meant to build queries for YourDomainClass
        // as both find methods make use of the same query, only the amount of elements returned are different.

        /*
         * private IQueryable<YourDomainClass> BuildFindYourDomainClassQuery(IYourDomainClass y, IQueryable<YourDomainClass> query)
         * {
         *  Check whether or not a property has been set, if it has been set, add a where to the query including the property.
         *
         *  // e.g
         *  if (y.PropertyA != default(PropertyAType))
         *      query = query.Where(x => x.PropertyA == y.PropertyA);
         *
         *  // If it is a string then use the method 'IsNullOrEmpty' and the method 'Contains'
         *
         *  if (!y.PropertyB.IsNullOrEmpty())
         *      query = query.Where(x => x.PropertyB.Contains(y.PropertyB));
         *  return query;
         * }
         */

        private IQueryable <Administrator> BuildFindAdministratorQuery(IAdministrator a, IQueryable <Administrator> query)
        {
            if (!a.Email.IsNullOrEmpty())
            {
                query = query.Where(x => x.Email.Contains(a.Email));
            }
            if (!a.Name.IsNullOrEmpty())
            {
                query = query.Where(x => x.Name.Contains(a.Name));
            }
            return(query);
        }
Example #14
0
    protected void Page_Load(object sender, EventArgs e)
    {
        this.Title = SysConfig.Current.DisplayName;

        if (!IsPostBack)
        {
            IManageUser user = Provider.Current;
            if (user != null)
            {
                if (String.Equals("logout", Request["action"], StringComparison.OrdinalIgnoreCase))
                {
                    IAdministrator admin = user as IAdministrator;
                    if (admin == null)
                    {
                        admin.Logout();
                    }
                }
                else
                {
                    Response.Redirect("Default.aspx");
                }
            }
            else
            {
                // 单一用户自动填写密码
                IEntityOperate eop = EntityFactory.CreateOperate(Provider.ManageUserType);
                if (eop.Count == 1)
                {
                    user = eop.FindAll(null, null, null, 0, 1)[0] as IManageUser;
                    if (user != null)
                    {
                        // 使用admin或者用户名做密码,认为是默认密码,默认填写
                        if (user.Password == DataHelper.Hash("admin"))
                        {
                            UserName.Text = user.Account;
                            //Password.Text = "admin";
                            SetPass("admin");
                        }
                        else if (user.Password == DataHelper.Hash(user.Account))
                        {
                            UserName.Text = user.Account;
                            //Password.Text = user.Account;
                            SetPass(user.Account);
                        }
                    }
                }
            }
        }
    }
Example #15
0
        static public IAdministrator Create(string type, IBLLLoanAPound bll)
        {
            IAdministrator administrator = null;

            switch (type)
            {
            case "test":
                administrator = new Administrator(bll);
                break;

            default:
                administrator = null;
                break;
            }
            return(administrator);
        }
        public void Insert_Administrator()
        {
            PersonalDataDB pddb = PddbTestingInstance.GetPddbInstanceForTesting();

            IAdministrator admin      = pddb.ListAdministrators().Single();
            object         newAdminId = pddb.InsertAdministrator(admin.ID, new AdministratorInsertModel("Karel Varel", "123456789", "*****@*****.**", null, null, null));

            var administrators = pddb.ListAdministrators();

            Assert.Equal(2, administrators.Count());

            Assert.Contains(administrators, t => t.ID.Equals(newAdminId));

            IAdministrator newAdmin = administrators.FirstOrDefault(t => t.ID.Equals(newAdminId));

            Assert.Equal("Karel Varel", newAdmin.FullName);
            Assert.Equal("123456789", newAdmin.Phone);
            Assert.Equal("*****@*****.**", newAdmin.Email);
        }
        public void Update_Administrator()
        {
            PersonalDataDB pddb  = PddbTestingInstance.GetPddbInstanceForTesting();
            IAdministrator admin = pddb.ListAdministrators().Single();

            pddb.UpdateAdministrator(admin.ID, new AdministratorUpdateModel(admin.ID, "999", "*****@*****.**", "666", "satan", "super"));

            var administrators = pddb.ListAdministrators();

            Assert.Single(administrators);

            admin = pddb.ListAdministrators().Single();

            Assert.Equal("Karel Admin", admin.FullName);
            Assert.Equal("999", admin.Phone);
            Assert.Equal("*****@*****.**", admin.Email);
            Assert.Equal("666", admin.OfficeNumber);
            Assert.Equal("satan", admin.InternalPhoneNumber);
            Assert.Equal("super", admin.Supervisor);
        }
Example #18
0
        public async Task <IActionResult> CreateKim(int id, KIM kim)
        {
            try
            {
                var user = await Request.GetUser();

                administrator = UserProxy.GetAdministratorProxy(user, _userService);
                var model = await administrator.CreateNewKIM(id, kim);

                if (model == null)
                {
                    return(BadRequest(new { message = "Username or password is incorrect" }));
                }
                return(Ok(model));
            }
            catch (System.Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }
Example #19
0
    void DoBatch(String action, Func <IAdministrator, Boolean> callback)
    {
        Int32[] vs = gvExt.SelectedIntValues;
        if (vs == null || vs.Length < 1)
        {
            return;
        }

        Int32          n   = 0;
        IEntityOperate eop = EntityFactory.CreateOperate(EntityType);

        eop.BeginTransaction();
        try
        {
            foreach (Int32 item in vs)
            {
                IEntity        entity = eop.FindByKey(item);
                IAdministrator admin  = entity as IAdministrator;
                if (admin != null && callback(admin))
                {
                    entity.Save();
                    n++;
                }
            }

            eop.Commit();

            WebHelper.Alert("成功" + action + n + "个管理员!");
        }
        catch (Exception ex)
        {
            eop.Rollback();

            WebHelper.Alert("操作失败!" + ex.Message);
        }

        if (n > 0)
        {
            gv.DataBind();
        }
    }
Example #20
0
        public void Update_User()
        {
            PersonalDataDB pddb  = PddbTestingInstance.GetPddbInstanceForTesting();
            var            users = pddb.ListUsers();

            Assert.Empty(users);

            IAdministrator admin = pddb.ListAdministrators().Single();
            object         newId = pddb.InsertUser(admin.ID, new UserInsertModel("Karel", "123", "*****@*****.**", "5", "6", "Some Supervisor"));

            pddb.UpdateUser(admin.ID, new UserUpdateModel(newId, "99999", "*****@*****.**", null, null, null));

            var insertedUser = pddb.ListUsers().Single();

            Assert.Equal("Karel", insertedUser.FullName);
            Assert.Equal("99999", insertedUser.Phone);
            Assert.Equal("*****@*****.**", insertedUser.Email);
            Assert.Null(insertedUser.OfficeNumber);
            Assert.Null(insertedUser.InternalPhoneNumber);
            Assert.Null(insertedUser.Supervisor);
        }
        public void List_Administrators()
        {
            var            builder = PddbTestingInstance.GetFake();
            PersonalDataDB pddb    = new PersonalDataDB(new InMemoryDataProvider());

            pddb.CreateDatabase(builder);

            IEnumerable <IAdministrator> administrators = pddb.ListAdministrators();

            Assert.NotEmpty(administrators);
            Assert.Single(administrators);

            IAdministrator administrator = administrators.Single();

            Assert.Equal(builder.Administrator !.FullName, administrator.FullName);
            Assert.Equal(builder.Administrator !.Email, administrator.Email);
            Assert.Equal(builder.Administrator !.InternalPhoneNumber, administrator.InternalPhoneNumber);
            Assert.Equal(builder.Administrator !.OfficeNumber, administrator.OfficeNumber);
            Assert.Equal(builder.Administrator !.Phone, administrator.Phone);
            Assert.Equal(builder.Administrator !.Supervisor, administrator.Supervisor);
        }
        public void AdminCanCreateALoanType()
        {
            //Inject DAL and BLL classes for testing
            IDALLoanAPound dal = null;

            dal = DALLoanAPoundCreator.Create("test");
            IBLLLoanAPound bll = null;

            bll = BLLLoanAPoundCreator.Create("test", dal);


            IAdministrator administrator = null;

            administrator = AdministratorCreator.Create("test", bll);

            //Act
            administrator.SetUpLoanType(1, "Type1", 1, 25, 4.5);

            //Assert
            Assert.AreEqual(dal.loantypes.Count, 1);
        }
Example #23
0
        public void LoanEngineCanProcessALoan()
        {
            //Arrange - Add a loan type
            IAdministrator administrator = null;

            administrator = AdministratorCreator.Create("test", bll);
            administrator.SetUpLoanType(1, "Type1", 1, 25, 4.5);

            bool applied = applicant.ApplyForALoan(1, 1, 20000);

            //Act
            bool processed = loanEngine.ProcessALoan(dal.loans.Count);

            var loanProcessed = dal.loans.Where(x => x.LoanID == dal.loans.Count).FirstOrDefault();

            //Assert
            Assert.AreEqual(processed, true);
            Assert.IsNotNull(loanProcessed.LoanApprovedRejectedByEngineDate);
            Assert.AreNotSame(loanProcessed.LoanStatus, 1);
            Assert.AreNotSame(loanProcessed.CreditChecker, 0);
        }
Example #24
0
        private static string GetContent(IRegisteredUser employer, IAdministrator administrator)
        {
            var sb = new StringBuilder();

            sb.AppendLine("<p>Hi " + employer.FirstName + "</p>");
            sb.AppendLine("<p>");
            sb.AppendLine("  Thank you for using LinkMe for your candidate sourcing");
            sb.AppendLine("  - our records show that your unlimited access to LinkMe is due to expire in 1 month.");
            sb.AppendLine("</p>");
            sb.AppendLine("<p>");
            sb.AppendLine("  To continue uninterrupted access to the LinkMe database for your candidate");
            sb.AppendLine("  sourcing and management,");
            sb.AppendLine("  please contact me on 1800 LINK ME or alternatively email me at");
            sb.AppendLine("  <a href=\"mailto:" + administrator.EmailAddress.Address + "\">" + administrator.EmailAddress.Address + "</a>");
            sb.AppendLine("  to discuss continuing your subscription,");
            sb.AppendLine("  if you have not done so already.");
            sb.AppendLine("</p>");
            sb.AppendLine("<p>");
            sb.AppendLine("  I look forward to speaking with you about continuing your LinkMe access.");
            sb.AppendLine("</p>");
            return(sb.ToString());
        }
Example #25
0
        public void List_And_Insert_Users()
        {
            PersonalDataDB pddb  = PddbTestingInstance.GetPddbInstanceForTesting();
            var            users = pddb.ListUsers();

            Assert.Empty(users);

            IAdministrator admin = pddb.ListAdministrators().Single();
            object         newId = pddb.InsertUser(admin.ID, new UserInsertModel("Karel", "123", "*****@*****.**", "5", "6", "Some Supervisor"));

            users = pddb.ListUsers();
            Assert.Single(users);
            Assert.Equal(newId, users.Single().ID);

            var insertedUser = users.Single();

            Assert.Equal("Karel", insertedUser.FullName);
            Assert.Equal("123", insertedUser.Phone);
            Assert.Equal("*****@*****.**", insertedUser.Email);
            Assert.Equal("5", insertedUser.OfficeNumber);
            Assert.Equal("6", insertedUser.InternalPhoneNumber);
            Assert.Equal("Some Supervisor", insertedUser.Supervisor);
        }
 public LoginController(PostgresContext ctxpost, IAdministrator administrator)
 {
     _administrator = administrator;
     db             = ctxpost;
 }
Example #27
0
 public JobBoardActivityReportRunner(ICreditReportsQuery creditReportsQuery, IJobAdReportsQuery jobAdReportsQuery, IRecruitersQuery recruitersQuery, IOrganisationsQuery organisationsQuery, JobBoardActivityReport report, bool includeCredits, IOrganisation organisation, IAdministrator accountManager, DateRange dateRange)
     : base(organisation, accountManager, dateRange)
 {
     _creditReportsQuery = creditReportsQuery;
     _jobAdReportsQuery  = jobAdReportsQuery;
     _recruitersQuery    = recruitersQuery;
     _organisationsQuery = organisationsQuery;
     _report             = report;
     _includeCredits     = includeCredits;
 }
Example #28
0
    protected override void OnPreLoad(EventArgs e)
    {
        base.OnPreLoad(e);

        IManageUser user = ManageProvider.Provider.Current;

        if (user == null)
        {
            Response.Redirect("Login.aspx");
        }

        ICommonManageProvider provider = CommonManageProvider.Provider;
        IMenu root = null;

        if (provider != null)
        {
            root = provider.MenuRoot;
        }

        IAdministrator admin = user as IAdministrator;

        if (admin == null)
        {
            if (root != null)
            {
                menuItem.DataSource = root.Childs;
                menuItem.DataBind();
            }
            return;
        }

        if (Request["act"] == "logout")
        {
            admin.Logout();
            // 再跳一次,除去Url中的尾巴
            if (!String.IsNullOrEmpty(Request.Url.Query))
            {
                Response.Redirect("Default.aspx");
            }
        }

        if (admin.Role != null)
        {
            //List<IMenu> list = admin.Role.GetMySubMenus(root.ID);
            IList <IMenu> list = provider.GetMySubMenus(root.ID);
            menuItem.DataSource = list;
            menuItem.DataBind();

            if (list != null && list.Count > 0)
            {
                IMenu first = list[0];
                DefaultLeft = String.Format("Frame/Left.aspx?ID={0}", first.ID);
                DefaultMain = first.Url;
            }
        }

        #region 自动修正菜单
        // 自动修正菜单中英文
        if (root != null)
        {
            using (EntityTransaction trans = new EntityTransaction(EntityFactory.CreateOperate(root.GetType())))
            {
                root.CheckMenuName("Admin", "管理平台")
                .CheckMenuName(@"Admin\Sys", "系统管理")
                .CheckMenuName(@"Admin\Advance", "高级设置")
                .CheckMenuName(@"Admin\Help", "帮助手册");

                // 自动挂载Main.aspx
                IMenu menu = root.FindByPath("Admin");
                if (menu != null && menu.Url == "../Admin/Default.aspx")
                {
                    menu.Url = "../Admin/Main.aspx";
                    menu.Save();
                }
                if (menu != null)
                {
                    #region 自动排序
                    IMenu menu2 = menu.FindByPath("Sys");
                    if (menu2 != null)
                    {
                        menu2.Sort = 3;
                        menu2.Save();
                    }
                    menu2 = menu.FindByPath("Advance");
                    if (menu2 != null)
                    {
                        menu2.Sort = 2;
                        menu2.Save();
                    }
                    menu2 = menu.FindByPath("Help");
                    if (menu2 != null)
                    {
                        menu2.Sort = 1;
                        menu2.Save();
                    }
                    #endregion
                }

                trans.Commit();
            }
        }
        #endregion
    }
Example #29
0
 public void UpdateAdministrator(IAdministrator administrator)
 {
     throw new NotImplementedException();
 }
        public WelcomeController()
        {
            var bl = new BusinessManager();

            _admin = bl.GetAdministrator();
        }