コード例 #1
0
 private Guild getGuild(string name)
 {
     using (var context = new Models.AccountContext())
     {
         return(context.Guilds.Single(g => g.G_Name == name));
     }
 }
コード例 #2
0
 private Character GetCharacter(string name)
 {
     using (var context = new Models.AccountContext())
     {
         return(context.Characters.Single(c => c.Name == name));
     }
 }
コード例 #3
0
        public JsonResult EditUser(User model)
        {
            ContractMvcWeb.Models.AccountContext dbContext = new Models.AccountContext();
            JsonResult jsonResult = new JsonResult();
            Result result = null;

            if (string.IsNullOrEmpty(model.username))
            {
                result = new Result( (int)ResultCodeEnum.Error , "请输入用户名",null);
                jsonResult.Data = result;
                return jsonResult;
            }

            bool isExist = dbContext.ExistUserName(model.username, model.userid);
            if (isExist)
            {
                result = new Result((int)ResultCodeEnum.Error, "用户名已经存在", null);
                jsonResult.Data = result;
                return jsonResult;
            }
            

            bool isSuccess = dbContext.EditUser(model);
            result = new Result(isSuccess ? (int)ResultCodeEnum.Success : (int)ResultCodeEnum.Error, isSuccess ? "更新成功" : "更新失败", null);
            jsonResult.Data = result;

            return jsonResult;
        }
コード例 #4
0
        private string ResetChar(string Name)
        {
            if (!CheckOnline())
            {
                return("You must log out before reseting.");
            }
            using (var context = new Models.AccountContext())
            {
                Character character = context.Characters.Find(Name);
                if (character == null)
                {
                    return("Character not found. Contact admin.");
                }
                if (character.AccountID != User.Identity.Name)
                {
                    return("This character doesn't belong to you. Contact admin.");                                           //Should never happen
                }
                else
                {
                    //if (!Config.isResetable(character) && !CheckOnline()) return false;
                    if (character.cLevel < Config.RESET_LEVEL)
                    {
                        return("You need " + Config.RESET_LEVEL.ToString() + " level to reset. You are only " + character.Resets);
                    }
                    else if (character.Money < Config.getCost(character.Resets))
                    {
                        return("You don't have enough money.\nYou need " + (Config.getCost(character.Resets) - character.Money).ToString() + " more zen to reset.");
                    }
                    else
                    {
                        try
                        {
                            //var args = new DbParameter[]{
                            //    new SqlParameter{ParameterName="name",Value=character.Name},
                            //    new SqlParameter{ParameterName="acc",Value=User.Identity.Name},
                            //    new SqlParameter{ParameterName="cost",Value=Config.getCost(character.Resets)}
                            //};
                            //context.Database.ExecuteSqlCommand("Update Character SET cLevel=1, Resets=Resets+1, Money=Money - @cost, Experience = 0, MapNumber = 0, MapPosX = 182, MapPosY = 128 WHERE AccountID=@acc and Name=@name", args);
                            character.cLevel     = 1;
                            character.Resets    += 1;
                            character.Money     -= Config.getCost(character.Resets);
                            character.Experience = 0;
                            character.MapNumber  = 0;
                            character.MapPosX    = 182;
                            character.MapPosY    = 128;
                            context.SaveChanges();
                            context.Entry(character).GetDatabaseValues();
                        }
                        catch (Exception e)
                        {
                            return("A problem occured. Contact admin with Error Code:" + e.HResult.ToString());
                        }
                    }
                }
            }

            return(Name + " succesfully reseted.");
        }
コード例 #5
0
 public ActionResult ChangePassword(Models.Beans.LocalPasswordModel model)
 {
     ContractMvcWeb.Models.AccountContext dbContext = new Models.AccountContext();
     string msg = string.Empty;
     bool  issuccess =  dbContext.ChangePassword(model, User.Identity.Name , out msg );
     if(issuccess == false ){
         ModelState.AddModelError("", msg );
     }
     return View();
 }
コード例 #6
0
 public JsonResult DeleteUser(int userid)
 {
     ContractMvcWeb.Models.AccountContext dbContext = new Models.AccountContext();
     string msg = string.Empty;
     bool isok = dbContext.DeleteUser(userid);
     JsonResult jsonResult = new JsonResult();
     Result result = new Result(isok ? (int)ResultCodeEnum.Success : (int)ResultCodeEnum.Error, "", null);
     jsonResult.Data = result;
     return jsonResult;
 }
コード例 #7
0
 private bool CheckOnline()
 {
     using (var context = new Models.AccountContext())
     {
         if (context.Status.Single(c => c.memb___id == User.Identity.Name).ConnectStat != 0)
         {
             return(false);
         }
         else
         {
             return(true);
         }
     }
 }
コード例 #8
0
        public JsonResult AddUser(ContractMvcWeb.Models.Beans.User user)
        {
            JsonResult jsonResult = new JsonResult();
            Result result = null;


            ContractMvcWeb.Models.AccountContext dbContext = new Models.AccountContext();
            bool exist = dbContext.ExistUserName(user.username );
            if (exist)
            {
                result = new Result((int)ResultCodeEnum.Error, "用户名已经存在!", null);
                jsonResult.Data = result;
                return jsonResult;
            }

            int row = dbContext.AddUser(user);
            result = new Result(row > 0 ? (int)ResultCodeEnum.Success : (int)ResultCodeEnum.Error, row > 0 ? "新增成功" : "新增失败", null);
            jsonResult.Data = result;
            return jsonResult;
        }
コード例 #9
0
 public AccountService()
 {
     database = new Models.AccountContext();
 }
コード例 #10
0
 private AccountCharacter GetAccountCharacter()
 {
     using (var context = new Models.AccountContext()) {
         return(context.AccountCharacters.Single(c => c.Id == User.Identity.Name));
     }
 }
コード例 #11
0
        public ActionResult EditUser(User model)
        {

            SetDropDownlist((int)EnableEnum.ENABLE);

            SetUserTypeDropDownlist(((int)UserTypeEnum.QUERY).ToString());

            ContractMvcWeb.Models.AccountContext dbContext = new Models.AccountContext();



            if (model == null) return View();
            if (string.IsNullOrEmpty(model.username))
            {
                ModelState.AddModelError("", "请输入用户名");
                return View();
            }
            

            bool isSuccess = dbContext.EditUser(model);
            return new RedirectResult("~/user/userlist");
        }
コード例 #12
0
        public ActionResult EditUser( int userid)
        {

            ContractMvcWeb.Models.AccountContext dbContext = new Models.AccountContext();
            User model = dbContext.GetModel(userid);

            SetDropDownlist( model.enable );
            SetUserTypeDropDownlist( model.usertype);

            return View( model );
        }
コード例 #13
0
        //[MyAuthorize (Roles="2")]
        public ActionResult AddUser( ContractMvcWeb.Models.Beans.User  user)
        {
            SetDropDownlist(user.enable);


            SetUserTypeDropDownlist( user.usertype);

            if (ModelState.IsValid == false)
            {
                return View();
            }

            if (user == null)
            {
                return View();
            }

           


            if (string.IsNullOrEmpty(user.password))
            {
                ModelState.AddModelError("password","密码不能为空!");
                return View();
            }

            if (user.password != user.comfirmPassword)
            {
                ModelState.AddModelError("password", "密码不一致!");
                return View();
            }

            ContractMvcWeb.Models.AccountContext dbContext = new Models.AccountContext();
            bool exist = dbContext.ExistUserName(user.username);
            if (exist)
            {
                ModelState.AddModelError("username", "用户名已经存在!");
                return View ();
            }

            int result = dbContext.AddUser(user);
          return new RedirectResult("~/user/userList");

        }
コード例 #14
0
        //[MyAuthorize(Roles="2")]
        public ActionResult UserList( string username , string usertype = "2" , int state=2 ,  int pageidx = 1)
        {
            Models.AccountContext dbContext = new Models.AccountContext();
            Page<User> page = dbContext.QueryByPage(username, (EnableEnum)state, pageidx);

            SetDropDownlist(state);


            SetUserTypeDropDownlist(usertype);
          
            return View(page);
        }
コード例 #15
0
        public JsonResult ChangePwd(string username , string oldpassword, string newpassword)
        {
            JsonResult json = new JsonResult();
            Result result =null;

            ContractMvcWeb.Models.AccountContext dbContext = new Models.AccountContext();
            string msg = string.Empty;
            LocalPasswordModel model = new LocalPasswordModel();
            
            model.OldPassword = oldpassword;
            model.NewPassword = newpassword;
            model.ConfirmPassword = newpassword;

            bool issuccess = dbContext.ChangePassword(model, username , out msg);
            if (issuccess == false)
            {
                result = new Result((int)ResultCodeEnum.Error, msg,null);

            }
            else
            {
                result = new Result((int)ResultCodeEnum.Success, "修改密码成功", null);
            }

            json.JsonRequestBehavior = JsonRequestBehavior.AllowGet;
            json.Data = result;
            return json;
        }
コード例 #16
0
        public JsonResult GetUserList(String name, int pageidx = 0, int pagesize = 20)
        {
            ContractMvcWeb.Models.AccountContext db = new Models.AccountContext();
            ContractMvcWeb.Models.Beans.User query = new Models.Beans.User();
            query.username = name;
            query.realname = name;
            query.phone = name;

            Models.Beans.Page<ContractMvcWeb.Models.Beans.User> list = db.QueryByPage(query, pageidx, pagesize);

            Models.Result result = new Result((int)ResultCodeEnum.Success, "", list);

            JsonResult jsonresult = new JsonResult();
            jsonresult.Data = result;
            jsonresult.JsonRequestBehavior = JsonRequestBehavior.AllowGet;
            return jsonresult;
        }