public bool Update(GetUserVM userVM, int id)
        {
            using (OracleConnection con = new OracleConnection(_connectionString))
            {
                using (OracleCommand cmd = con.CreateCommand())
                {
                    try
                    {
                        con.Open();
                        cmd.CommandText = "update users set Email='" + userVM.Email + "', Password='******' where UserId='" + id + "'";

                        //OracleParameter userId = new OracleParameter("id", id);
                        //OracleParameter mail = new OracleParameter("mail", userVM.Email);
                        //OracleParameter pass = new OracleParameter("pass", userVM.Password);
                        //cmd.Parameters.Add(userId);
                        //cmd.Parameters.Add(mail);
                        //cmd.Parameters.Add(pass);
                        var update = cmd.ExecuteNonQuery(); //result is int
                        return(true);
                    }
                    catch
                    {
                        return(false);
                    }
                }
            }
        }
        public async Task <IEnumerable <GetUserVM> > getAll()
        {
            List <GetUserVM> list = new List <GetUserVM>();

            using (OracleConnection con = new OracleConnection(_connectionString))
            {
                using (OracleCommand cmd = con.CreateCommand())
                {
                    try
                    {
                        con.Open();
                        cmd.CommandText = "select * from users Order by userId";

                        //Execute the command and use DataReader to display the data
                        OracleDataReader reader = cmd.ExecuteReader();
                        while (reader.Read())
                        {
                            var user = new GetUserVM()
                            {
                                Id       = Convert.ToInt32(reader["userId"]),
                                Email    = reader["Email"].ToString(),
                                Password = reader.GetString(2),
                            };
                            list.Add(user);
                        }
                        reader.Dispose();
                        return(list.AsEnumerable());
                    }
                    catch
                    {
                        return(null);
                    }
                }
            }
        }
        public IActionResult Register(GetUserVM getUserVM)
        {
            var getUser = _context.Users.Where(x => x.Email == getUserVM.Email);

            if (getUser.Count() == 0)
            {
                if (ModelState.IsValid)
                {
                    var checkRole = _context.Roles.SingleOrDefault(x => x.RoleName == "User");
                    var usr       = new User
                    {
                        Name       = getUserVM.Name,
                        Email      = getUserVM.Email,
                        Password   = Bcrypt.HashPassword(getUserVM.Password),
                        RoleId     = checkRole.RoleId,
                        VerifyCode = null,
                        CreateDate = DateTimeOffset.Now,
                        isDelete   = false
                    };
                    _context.Users.Add(usr);
                    _context.SaveChanges();

                    return(Ok("Successfully Created"));
                }
                return(BadRequest("Register Not Successfully"));
            }
            return(BadRequest("Email Already Exists "));
        }
        public bool Create(GetUserVM userVM)
        {
            using (OracleConnection con = new OracleConnection(_connectionString))
            {
                using (OracleCommand cmd = con.CreateCommand())
                {
                    try
                    {
                        con.Open();
                        cmd.CommandText = "insert into users(Email, Password) Values (:mail, :pass)";

                        OracleParameter mail = new OracleParameter("mail", userVM.Email);
                        OracleParameter pass = new OracleParameter("pass", userVM.Password);
                        cmd.Parameters.Add(mail);
                        cmd.Parameters.Add(pass);
                        var create = cmd.ExecuteNonQuery(); //result is int
                        return(true);
                    }
                    catch
                    {
                        return(false);
                    }
                }
            }
        }
        public IActionResult Update(int id, GetUserVM dataVM)
        {
            if (ModelState.IsValid)
            {
                var getData = _context.Users.Include("Role").SingleOrDefault(x => x.Id == id);
                getData.Name  = dataVM.Name;
                getData.Email = dataVM.Email;
                if (dataVM.Password != null)
                {
                    if (!Bcrypt.Verify(dataVM.Password, getData.Password))
                    {
                        getData.Password = Bcrypt.HashPassword(dataVM.Password);
                    }
                }
                if (dataVM.RoleName != null)
                {
                    var getRoleID = _context.Roles.SingleOrDefault(x => x.RoleName == dataVM.RoleName);
                    getData.RoleId = getRoleID.RoleId;
                }
                _context.Users.Update(getData);
                _context.SaveChanges();

                return(Ok("Successfully Updated"));
            }
            return(BadRequest("Not Successfully"));
        }
        public IActionResult Update(GetUserVM getUserVM, int id)
        {
            var data = _repo.Update(getUserVM, id);

            if (data == true)
            {
                return(Ok(new { msg = "Successfully Updated" }));
            }
            return(BadRequest(new { msg = "Not Success" }));
        }
        public IActionResult Create(GetUserVM getUserVM)
        {
            var data = _repo.Create(getUserVM);

            if (data == true)
            {
                return(Ok(new { msg = "Successfully Created" }));
            }
            return(BadRequest(new { msg = "Not Success" }));
        }
 public UserVM GetUser(GetUserVM model)
 {
     if (ModelState.IsValid)
     {
         return(userOperation.GetUser(model.Email, model.Password));
     }
     else
     {
         return(new UserVM());
     }
 }
        public async Task <IActionResult> Single(int id)
        {
            var user = await _unitOfWork.UserRepo.GetUser(id);

            var connectionReport = await _unitOfWork.UserRepo.GetConnectedUsersReport(id);

            var vm = new GetUserVM {
                User = user, ConnectionReport = connectionReport
            };

            return(View(vm));
        }
Exemple #10
0
        public IActionResult Update(string id, GetUserVM dataVM)
        {
            if (ModelState.IsValid)
            {
                if (dataVM.Session == null)
                {
                    return(BadRequest("Session ID must be filled"));
                }
                var getSession = _context.Users.SingleOrDefault(x => x.Id == dataVM.Session);
                if (getSession != null)
                {
                    var getData = _context.UserRole.Include("Role").Include("User").Include(x => x.User.Employee).SingleOrDefault(x => x.UserId == id);
                    getData.User.Employee.Name           = dataVM.Name;
                    getData.User.Employee.NIK            = dataVM.NIK;
                    getData.User.Employee.AssignmentSite = dataVM.Site;
                    getData.User.Employee.Phone          = dataVM.Phone;
                    getData.User.Employee.ProfileImage   = dataVM.ProfileImages;
                    getData.User.Employee.Address        = dataVM.Address;
                    getData.User.Employee.Province       = dataVM.Province;
                    getData.User.Employee.City           = dataVM.City;
                    getData.User.Employee.SubDistrict    = dataVM.SubDistrict;
                    getData.User.Employee.Village        = dataVM.Village;
                    getData.User.Employee.ZipCode        = dataVM.ZipCode;
                    getData.User.Employee.DepartmentId   = dataVM.DepartmentID;
                    getData.User.Email = dataVM.Email;
                    if (dataVM.Password != null)
                    {
                        if (!Bcrypt.Verify(dataVM.Password, getData.User.Password))
                        {
                            getData.User.Password = Bcrypt.HashPassword(dataVM.Password);
                        }
                    }
                    if (dataVM.RoleName != null)
                    {
                        var getRoleID = _context.Roles.SingleOrDefault(x => x.Name == dataVM.RoleName);
                        getData.RoleId = getRoleID.Id;
                    }
                    _context.UserRole.Update(getData);
                    _context.SaveChanges();


                    Sendlog(getSession.Email + " Update User Successfully", getSession.Email);

                    return(Ok("Successfully Updated"));
                }
                return(BadRequest("You Don't Have access"));
            }
            return(BadRequest("Not Successfully"));
        }
        public IActionResult InsertOrUpdate(GetUserVM data, string id)
        {
            try
            {
                AuthController controller = new AuthController();
                data.Session = HttpContext.Session.GetString("id");
                var json        = JsonConvert.SerializeObject(data);
                var buffer      = System.Text.Encoding.UTF8.GetBytes(json);
                var byteContent = new ByteArrayContent(buffer);
                byteContent.Headers.ContentType = new MediaTypeHeaderValue("application/json");
                client.DefaultRequestHeaders.Add("Authorization", HttpContext.Session.GetString("token"));
                if (data.Id == null)
                {
                    var result = client.PostAsync("users/", byteContent).Result;
                    if (result.IsSuccessStatusCode)
                    {
                        controller.SendLogs(HttpContext.Session.GetString("email") + " Create Account", HttpContext.Session.GetString("email"));
                        return(Json(result));
                    }
                    var getdata = result.Content.ReadAsStringAsync().Result;
                    return(Json(new { result, msg = getdata }));
                }
                else if (data.Id == id)
                {
                    var result = client.PutAsync("users/" + id, byteContent).Result;
                    if (result.IsSuccessStatusCode)
                    {
                        controller.SendLogs(HttpContext.Session.GetString("email") + " Update Account", HttpContext.Session.GetString("email"));
                        return(Json(result));
                    }
                    var getdata = result.Content.ReadAsStringAsync().Result;
                    return(Json(new { result, msg = getdata }));
                }

                return(Json(404));
            }
            catch (Exception ex)
            {
                return(Json(new { msg = ex }));
            }
        }
Exemple #12
0
        public GetUserVM getId(int id)
        {
            using (OracleConnection con = new OracleConnection(_connectionString))
            {
                using (OracleCommand cmd = con.CreateCommand())
                {
                    try
                    {
                        con.Open();
                        cmd.BindByName = true;

                        cmd.CommandText = "select * from users where userId = :id";

                        // Assign id to the department number 50
                        OracleParameter userId = new OracleParameter("id", id);
                        cmd.Parameters.Add(userId);

                        //Execute the command and use DataReader to display the data
                        OracleDataReader reader = cmd.ExecuteReader();
                        var user = new GetUserVM();
                        while (reader.Read())
                        {
                            user = new GetUserVM()
                            {
                                Id       = Convert.ToInt32(reader["userId"]),
                                Email    = reader["Email"].ToString(),
                                Password = reader.GetString(2),
                            };
                        }
                        reader.Dispose();
                        return(user);
                    }
                    catch
                    {
                        return(null);
                    }
                }
            }
        }
        public IActionResult GetById(string Id)
        {
            GetUserVM data = null;

            client.DefaultRequestHeaders.Add("Authorization", HttpContext.Session.GetString("token"));
            var resTask = client.GetAsync("users/" + Id);

            resTask.Wait();

            var result = resTask.Result;

            if (result.IsSuccessStatusCode)
            {
                var json = JsonConvert.DeserializeObject(result.Content.ReadAsStringAsync().Result).ToString();
                data = JsonConvert.DeserializeObject <GetUserVM>(json);
            }
            else
            {
                ModelState.AddModelError(string.Empty, "Server Error.");
            }
            return(Json(data));
        }
        public IActionResult UpdProfile(GetUserVM data)
        {
            var id = HttpContext.Session.GetString("id");

            try
            {
                AuthController controller = new AuthController();
                data.ProfileImages = Path.GetFileName(data.ProfileImages);
                data.Session       = HttpContext.Session.GetString("id");
                var json        = JsonConvert.SerializeObject(data);
                var buffer      = System.Text.Encoding.UTF8.GetBytes(json);
                var byteContent = new ByteArrayContent(buffer);
                byteContent.Headers.ContentType = new MediaTypeHeaderValue("application/json");

                if (data.Id == id)
                {
                    client.DefaultRequestHeaders.Add("Authorization", HttpContext.Session.GetString("token"));
                    var result = client.PutAsync("users/" + id, byteContent).Result;
                    if (result.IsSuccessStatusCode)
                    {
                        HttpContext.Session.Remove("name");
                        HttpContext.Session.Remove("img");
                        HttpContext.Session.SetString("name", data.Name);
                        HttpContext.Session.SetString("img", data.ProfileImages);
                        controller.SendLogs(HttpContext.Session.GetString("email") + " Update Account", HttpContext.Session.GetString("email"));
                        return(Json(result));
                    }
                    var getdata = result.Content.ReadAsStringAsync().Result;
                    return(Json(new { result, msg = getdata }));
                }

                return(Json(404));
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
 public IActionResult Login(GetUserVM getUserVM)
 {
     if (ModelState.IsValid)
     {
         var getData = _context.Users.Include("Role").SingleOrDefault(x => x.Email == getUserVM.Email);
         if (getData == null)
         {
             return(NotFound("Email Not Found"));
         }
         else if (getUserVM.Password == null || getUserVM.Password.Equals(""))
         {
             return(BadRequest("Password must filled"));
         }
         else if (!Bcrypt.Verify(getUserVM.Password, getData.Password))
         {
             return(BadRequest("Password is Wrong"));
         }
         else
         {
             if (getData != null)
             {
                 var user = new UserVM()
                 {
                     Id         = getData.Id,
                     Name       = getData.Name,
                     Email      = getData.Email,
                     RoleName   = getData.Role.RoleName,
                     VerifyCode = getData.VerifyCode,
                 };
                 return(Ok(GetJWT(user)));
             }
             return(BadRequest("Invalid credentials"));
         }
     }
     return(BadRequest("Data Not Valid"));
 }
Exemple #16
0
        public IActionResult Create(GetUserVM getUserVM)
        {
            var getUser = _context.Users.Where(x => x.Email == getUserVM.Email);

            if (getUser.Count() == 0)
            {
                if (ModelState.IsValid)
                {
                    if (getUserVM.Session == null)
                    {
                        return(BadRequest("Session ID must be filled"));
                    }
                    var getSession = _context.Users.SingleOrDefault(x => x.Id == getUserVM.Session);
                    if (getSession != null)
                    {
                        var user = new UserVM
                        {
                            Email      = getUserVM.Email,
                            Password   = getUserVM.Password,
                            VerifyCode = null,
                        };
                        var create = _repo.Create(user);
                        if (create > 0)
                        {
                            var getUserId = getUser.SingleOrDefault();
                            var getRoleId = _context.Roles.SingleOrDefault(x => x.Name == getUserVM.RoleName);
                            var uRole     = new UserRole
                            {
                                UserId = getUserId.Id,
                                RoleId = getRoleId.Id
                            };
                            _context.UserRole.Add(uRole);
                            var emp = new Employee
                            {
                                UserId         = getUserId.Id,
                                Name           = getUserVM.Name,
                                NIK            = getUserVM.NIK,
                                AssignmentSite = getUserVM.Site,
                                Phone          = getUserVM.Phone,
                                ProfileImage   = getUserVM.ProfileImages,
                                Address        = getUserVM.Address,
                                Province       = getUserVM.Province,
                                City           = getUserVM.City,
                                SubDistrict    = getUserVM.SubDistrict,
                                Village        = getUserVM.Village,
                                ZipCode        = getUserVM.ZipCode,
                                DepartmentId   = getUserVM.DepartmentID,
                                CreateDate     = DateTimeOffset.Now,
                                isDelete       = false
                            };
                            _context.Employees.Add(emp);
                            _context.SaveChanges();

                            Sendlog(getSession.Email + " Create User Successfully", getSession.Email);

                            return(Ok("Successfully Created"));
                        }
                        return(BadRequest("Input User Not Successfully"));
                    }
                    return(BadRequest("You Don't Have access"));
                }
                return(BadRequest("Not Successfully"));
            }
            return(BadRequest("Email Already Exists "));
        }