Esempio n. 1
0
 // PUT: api/User/5
 public IHttpActionResult Put(string id, [FromBody] UserViewModel value)
 {
     if (string.IsNullOrWhiteSpace(id))
     {
         return(BadRequest("用户名不能为空"));
     }
     if (value == null || (value.User == null && value.Privilege == null))
     {
         return(BadRequest("数据不能为空"));
     }
     if (value.User != null)
     {
         value.User.UserName = id;
         if (string.IsNullOrWhiteSpace(value.User.Password))
         {
             var oldUI = UserInfoPersistence.Instance.GetInfo(id);
             if (oldUI != null)
             {
                 value.User.Password = oldUI.Password;
             }
         }
         else
         {
             //MD5加密
             value.User.Password = MD5Encryptor.GetMD5Hash(value.User.Password);
         }
         UserInfoPersistence.Instance.Put(id, value.User);
     }
     if (value.Privilege != null)
     {
         value.Privilege.UserName = id;
         UserPrivilegePersistence.Instance.Put(id, value.Privilege);
     }
     return(Ok("修改用户信息成功"));
 }
Esempio n. 2
0
        // POST: api/User
        public IHttpActionResult Post([FromBody] UserViewModel uvm)
        {
            if (uvm == null || uvm.User == null)
            {
                return(BadRequest("数据不能为空"));
            }
            if (string.IsNullOrWhiteSpace(uvm.User.UserName) || string.IsNullOrWhiteSpace(uvm.User.Password))
            {
                return(BadRequest("用户名或密码不能为空"));
            }
            var oldUser = UserInfoPersistence.Instance.GetInfo(uvm.User.UserName);

            if (oldUser != null)
            {
                return(BadRequest($"用户 {uvm.User.UserName} 已存在。"));
            }
            //MD5加密
            uvm.User.Password = MD5Encryptor.GetMD5Hash(uvm.User.Password);
            UserInfoPersistence.Instance.Put(uvm.User.UserName, uvm.User);
            if (uvm.Privilege != null)
            {
                uvm.Privilege.UserName = uvm.User.UserName;
                UserPrivilegePersistence.Instance.Put(uvm.User.UserName, uvm.Privilege);
            }
            return(Ok("添加用户信息成功"));
        }
Esempio n. 3
0
        public IHttpActionResult Login(CCTVUserInfo ui)
        {
            if (ui == null)
            {
                return(BadRequest("登录用户信息不能为空"));
            }
            if (string.IsNullOrWhiteSpace(ui.UserName))
            {
                return(BadRequest("用户名不能为空"));
            }
            var user = UserInfoPersistence.Instance.GetInfo(ui.UserName);

            if (user == null)
            {
                if (ui.UserName != "admin")
                {
                    return(BadRequest($"用户 {ui.UserName} 不存在"));
                }
                else
                {
                    if (ui.Password == "admin")
                    {
                        return(Ok(new CCTVUserInfo()
                        {
                            UserName = "******",
                            IsAdmin = true,
                            ChineseName = "超级管理员"
                        }));
                    }
                    else
                    {
                        return(BadRequest("密码错误"));
                    }
                }
            }
            if (!user.Password.Equals(MD5Encryptor.GetMD5Hash(ui.Password)))
            {
                return(BadRequest("密码错误"));
            }
            return(Ok(cloneUser(user)));
        }