示例#1
0
        public IActionResult Upsert(int?id)
        {
            PasswdModel = new PasswdModel();
            if (id == null)
            {
                //Przekazywanie do Insert ---->
                return(View(PasswdModel));
            }

            //Pobieranie do Update ---->
            PasswdModel = _db.PWallet.FirstOrDefault(u => u.ID == id);
            if (PasswdModel == null)
            {
                return(NotFound());
            }
            return(View(PasswdModel));
        }
示例#2
0
        public async Task <IActionResult> GetAll()
        {
            string userId = this.User.FindFirstValue(ClaimTypes.NameIdentifier);

            List <PasswdModel> passwdlist       = new List <PasswdModel>();
            string             connectionString = Configuration["ConnectionStrings:MySQLConnection"];

            MySqlConnection connection = new MySqlConnection(connectionString);

            //MySqlDataReader
            connection.Open();

            string          sql        = $"Select * From PWallet Where UserId='{userId}'";
            MySqlCommand    command    = new MySqlCommand(sql, connection);
            MySqlDataReader dataReader = command.ExecuteReader();

            while (dataReader.Read())
            {
                PasswdModel passmodel = new PasswdModel
                {
                    ID     = Convert.ToInt32(dataReader["ID"]),
                    Login  = Convert.ToString(dataReader["Login"]),
                    UrlP   = Convert.ToString(dataReader["UrlP"]),
                    Email  = Convert.ToString(dataReader["Email"]),
                    Passwd = Encryption.DecryptString(
                        Convert.ToString(dataReader["SaltKey"]),
                        Convert.ToString(dataReader["Passwd"]
                                         )),
                    UserId = Convert.ToString(dataReader["UserId"])
                };

                passwdlist.Add(passmodel);
            }

            connection.Close();
            await Task.Delay(1);

            return(Json(new { data = passwdlist }));

            /*string userId = this.User.FindFirstValue(ClaimTypes.NameIdentifier);
             *
             * return Json(new { data = await _db.PWallet.Where(e => e.UserId == userId).ToListAsync() });*/
        }
示例#3
0
        // GET: Wallet
        public ActionResult Detail(int Id)
        {
            List <PasswdModel> passwdlist       = new List <PasswdModel>();
            string             connectionString = Configuration["ConnectionStrings:MySQLConnection"];

            using (MySqlConnection connection = new MySqlConnection(connectionString))
            {
                //MySqlDataReader
                connection.Open();

                string       sql     = $"Select * From PWallet Where ID='{Id}'";
                MySqlCommand command = new MySqlCommand(sql, connection);
                using (MySqlDataReader dataReader = command.ExecuteReader())
                {
                    while (dataReader.Read())
                    {
                        PasswdModel passmodel = new PasswdModel
                        {
                            ID          = Convert.ToInt32(dataReader["ID"]),
                            Login       = Convert.ToString(dataReader["Login"]),
                            UrlP        = Convert.ToString(dataReader["UrlP"]),
                            Email       = Convert.ToString(dataReader["Email"]),
                            Description = Convert.ToString(dataReader["Description"]),

                            Passwd = Encryption.DecryptString(
                                Convert.ToString(dataReader["SaltKey"]),
                                Convert.ToString(dataReader["Passwd"]
                                                 ))
                        };

                        passwdlist.Add(passmodel);
                    }
                }
                connection.Close();
            }
            return(View(passwdlist));
        }
示例#4
0
        public IActionResult Upsert(PasswdModel passmodel)
        {//funkcja tworzenia edycji ------>
            if (ModelState.IsValid)
            {
                string userId           = this.User.FindFirstValue(ClaimTypes.NameIdentifier);
                string connectionString = Configuration["ConnectionStrings:MySQLConnection"];

                if (PasswdModel.ID == 0)
                {
                    //Tworzenie Create ---->
                    using (MySqlConnection connection = new MySqlConnection(connectionString))
                    {
                        string Salt = "salt";
                        string sql  = "";

                        sql = $"Select Salt From AspNetUsers Where Id='{userId}'";
                        MySqlCommand commandS = new MySqlCommand(sql, connection);
                        connection.Open();
                        using (MySqlDataReader dataReader = commandS.ExecuteReader())
                        {
                            while (dataReader.Read())
                            {
                                Salt = Convert.ToString(dataReader["Salt"]);
                            }
                        }
                        commandS.ExecuteNonQuery();
                        connection.Close();

                        string EncryptPass = Encryption.EncryptString(Salt, passmodel.Passwd);

                        sql = $"Insert Into PWallet (Email, UrlP, Login, Passwd, UserId, Description, SaltKey) Values (" +
                              $"'{passmodel.Email}', '{passmodel.UrlP}', '{passmodel.Login}', '{EncryptPass}'," +
                              $"'{userId}','{passmodel.Description}','{Salt}')";

                        using MySqlCommand command = new MySqlCommand(sql, connection)
                              {
                                  CommandType = CommandType.Text
                              };
                        connection.Open();
                        command.ExecuteNonQuery();
                        connection.Close();
                    }

                    return(RedirectToAction("Index"));
                }
                else
                {
                    //Aktualizacja Update ---->
                    using MySqlConnection connection = new MySqlConnection(connectionString);
                    string Salt = "salt";
                    string sql  = "";

                    sql = $"Select Salt From AspNetUsers Where Id='{userId}'";
                    MySqlCommand commandS = new MySqlCommand(sql, connection);
                    connection.Open();
                    using (MySqlDataReader dataReader = commandS.ExecuteReader())
                    {
                        while (dataReader.Read())
                        {
                            Salt = Convert.ToString(dataReader["Salt"]);
                        }
                    }
                    commandS.ExecuteNonQuery();
                    connection.Close();

                    string EncryptPass = Encryption.EncryptString(Salt, passmodel.Passwd);

                    sql = $"Update PWallet SET Email='{passmodel.Email}', UrlP='{passmodel.UrlP}'," +
                          $" Login='******', Description='{passmodel.Description}', Passwd='{EncryptPass}', SaltKey='{Salt}' " +
                          $"Where ID='{passmodel.ID}'";

                    using (MySqlCommand command = new MySqlCommand(sql, connection))
                    {
                        connection.Open();
                        command.ExecuteNonQuery();
                        connection.Close();
                    }

                    return(RedirectToAction("Index"));
                }
            }
            return(View(PasswdModel));
        }