⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 admincontroller.cs

📁 人物传记/成功经验人物传记/成功经验人物传记/成功经验人物传记/成功经验人物传记/成功经验
💻 CS
📖 第 1 页 / 共 2 页
字号:
using System;
using System.Collections.Generic;
using System.Globalization;
using System.Linq;
using System.Security.Principal;
using System.Web;
using System.Web.Mvc;
using System.Web.Security;
using System.Web.UI;
using System.Data;
using System.Data.SqlClient;
using System.Web.Profile;
using SkyiSite.Tooltip;
using System.IO;
//该源码下载自www.51aspx.com(51aspx.com)
namespace SkyiSite.Controllers
{
    [HandleError]
    public class AdminController : Controller
    {
        SkyiSite.Models.SkyiSiteDBDataContext SkyiSiteDBDataContext = new SkyiSite.Models.SkyiSiteDBDataContext();
       
        #region ==========Index==========
        [Authorize]
        public ActionResult Index()
        {
            List<SkyiSite.DBUtility.UserInfo> n = SkyiSite.DBUtility.User.Instance.All() as List<SkyiSite.DBUtility.UserInfo>;
            int size = 5;
            int show = n.Count / size + (n.Count % size > 0 ? 1 : 0);
            if (Request["page"] != null)
            {
                ViewData["page"] = SkyiSite.Models.SQLHelper.Pager(Request.RawUrl.Substring(0, Request.RawUrl.IndexOf("?")), Convert.ToInt32(Request["page"]), n.Count(), size, show);
                n = n.Skip((Convert.ToInt32(Request["page"]) - 1) * 5).Take(5).ToList();
            }
            else
            {
                ViewData["page"] = SkyiSite.Models.SQLHelper.Pager(Request.RawUrl, 1, n.Count(), size, show);
                n = n.Skip(0).Take(5).ToList();
            }
            ViewData["AllUser"] = n;
            return View();
        }
        #endregion

        #region ========CreateUser=======
        [Authorize]
        public ActionResult CreateUser()
        {
            return View();
        }
        [Authorize]
        [AcceptVerbs(HttpVerbs.Post)]
        public ActionResult CreateUser(string UserName, string RealityName, string UserType,
            string PassWord, string Tele, string Mobile, string Corporation, string Email,
            bool IsAudited, bool IsStoped, string Address, string PostCode)
        {
            string emailPath = System.AppDomain.CurrentDomain.BaseDirectory + "Files/Admin/Email.xml";
            if (Membership.GetUser(UserName) != null)
            {
                ModelState.AddModelError("_FORM", "此用户已存在,请选择其它用户名!");
                return View();
            }
            if (UserType == null)
            {
                ModelState.AddModelError("_FORM", "请选择用户类别!.");
                return View();
            }
            if (Membership.FindUsersByEmail(Email) != null)
            {
                if (Membership.FindUsersByEmail(Email).Count > 0)
                {
                    ModelState.AddModelError("_FORM", "此Email已经存在,请选择其它Email!.");
                    return View();
                }
            }
            if (UserType == "管理员")
            {
                if (Roles.GetUsersInRole("管理员").Length >= 3)
                {
                    ModelState.AddModelError("_FORM", "最多只能有三个管理员,请选择其它角色!");
                    return View();
                }
            }
            MembershipCreateStatus ss;
            SkyiSite.DBUtility.ProfileInfo profileInfo = new SkyiSite.DBUtility.ProfileInfo(Mobile, Tele, RealityName, Corporation, IsAudited, IsStoped, Address, PostCode);
            SkyiSite.DBUtility.User.Instance.Add(UserName, PassWord, Email, profileInfo, out ss);
            if (ss == MembershipCreateStatus.Success)
            {
                Roles.AddUserToRole(UserName, UserType);
            }
            else
            {
                ModelState.AddModelError("_FORM", SkyiSite.DBUtility.User.Instance.ErrorCodeToString(ss));
                return View();
            }
            return RedirectToAction("Empty", new { id = SkyiSite.Tooltip.PassWordHelper.Instance.Encrypt_DES_String("添加用户成功") });
        }
        #endregion

        #region =========UserEditor===========
        [Authorize]
        public ActionResult UserEditor(string id)
        {
            ViewData["User"] = SkyiSite.DBUtility.User.Instance.Get(Membership.GetUser(SkyiSite.Tooltip.PassWordHelper.Instance.Decrypt_DES_String( id)));
            //ViewData["Roles"] = SkyiSite.DBUtility.Role.Instance.GetRoleList(null);
            return View();
        }
        [Authorize]
        [AcceptVerbs(HttpVerbs.Post)]
        public ActionResult UserEditor(string UserName, String PassWord, string OldPassWord, string RealityName, string UserType, string Tele, string Mobile, string Corporation, string Email, bool IsAudited, bool IsStoped, string Address, string PostCode)
        {
            ViewData["User"] = SkyiSite.DBUtility.User.Instance.Get(Membership.GetUser(UserName));
            if (UserType == null || UserType == "")
            {
                ModelState.AddModelError("_FORM", "请选择用户类别!.");
                return View();
            }
            if (UserType == "管理员")
            {
                if (Roles.GetUsersInRole("管理员").Length >= 3)
                {
                    ModelState.AddModelError("_FORM", "最多只能有三个管理员,请选择其它角色!");
                    return View();
                }
            }
            if (Membership.GetUser(UserName).Email != Email)
            {
                if (Membership.FindUsersByEmail(Email) != null)
                {
                    if (Membership.FindUsersByEmail(Email).Count > 0)
                    {
                        ModelState.AddModelError("_FORM", "此Email已经存在,请选择其它Email!.");
                        return View();
                    }
                }
            }
            MembershipUser mem = Membership.GetUser(UserName);
            mem.Email = Email;
            Membership.UpdateUser(mem);
            mem.ChangePassword(PassWordHelper.Instance.Encrypt_DES_String(OldPassWord), PassWordHelper.Instance.Encrypt_DES_String(PassWord));
            Membership.UpdateUser(mem);
            SkyiSite.DBUtility.ProfileInfo profileInfo = new SkyiSite.DBUtility.ProfileInfo(Mobile, Tele, RealityName, Corporation, IsAudited, IsStoped, Address, PostCode);
            SkyiSite.DBUtility.Profile.Instance.Add(UserName, profileInfo);
            if (!Roles.IsUserInRole(UserName, UserType))
            {
                Roles.RemoveUserFromRoles(UserName, Roles.GetRolesForUser(UserName));
                Roles.AddUserToRole(UserName, UserType);
            }
            return RedirectToAction("Empty", new { id = SkyiSite.Tooltip.PassWordHelper.Instance.Encrypt_DES_String("用户信息编辑成功") });
        }
        #endregion

        #region ==========Function==========
        [Authorize]
        public ActionResult Function()
        {
            return View();
        }
        #endregion

        #region ==========DeleteUser==========
        [Authorize]
        public ActionResult DeleteUser(string id)
        {
            id = SkyiSite.Tooltip.PassWordHelper.Instance.Decrypt_DES_String(id);
            if (id.ToLower() == User.Identity.Name.ToLower())
            {
                return RedirectToAction("Empty", new { id =SkyiSite.Tooltip.PassWordHelper.Instance.Encrypt_DES_String( "不能删除自己") });
            }
            string Msg;
            SkyiSite.DBUtility.User.Instance.Delete(id, out Msg);
            return RedirectToAction("Empty", new { id = SkyiSite.Tooltip.PassWordHelper.Instance.Encrypt_DES_String(Msg) });
        }
        #endregion

        #region ==========Role==========
        [Authorize]
        public ActionResult Role(string id)
        {
            if(id.Trim() != "0")
                id = SkyiSite.Tooltip.PassWordHelper.Instance.Decrypt_DES_String(id);
            ViewData["Data"] =id;
            return View();
        }

        //[Authorize]
        //[AcceptVerbs(HttpVerbs.Post)]
        //public ActionResult Role(string id, string[] UserName, string[] RoleName, bool[] Checked)
        //{

        //    for (int i = 0; i < UserName.Length; i++)
        //    {
        //        if (Checked[i])
        //        {

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -