Ejemplo n.º 1
0
        // kontrollerar om medlem redan finns i aktivitet
        public void ExisterarMedlemAktivitet(MemberActivity M)
        {
            // Skapar och initierar ett anslutningsobjekt.
            using (SqlConnection conn = CreateConnection())
            {
                try
                {
                    // Skapar och initierar ett SqlCommand-objekt som används till att exekveras specifierad lagrad procedur.
                    SqlCommand cmd = new SqlCommand("appSchema.aktivitetMedlemexisterar", conn); // Den lagrade proceduren lägger in meddlem, kontaktinfo och Befattnings
                    cmd.CommandType = CommandType.StoredProcedure;

                    cmd.Parameters.Add("@medlemID", SqlDbType.Int).Value        = M.MedID;
                    cmd.Parameters.Add("@AktivitetstypID", SqlDbType.Int).Value = M.AktID;

                    // Hämtar data från den lagrade proceduren.
                    cmd.Parameters.Add("@intOutput", SqlDbType.Int, 4).Direction = ParameterDirection.Output;

                    // Öppnar anslutningen till databasen.
                    conn.Open();


                    // ExecuteNonQuery används för att exekvera den lagrade proceduren.
                    cmd.ExecuteNonQuery();

                    // Hämtar primärnyckelns värde för den nya posten och tilldelar Member-objektet värdet.
                    M.Existerar = (int)cmd.Parameters["@intOutput"].Value;
                }
                catch
                {
                    // Kastar ett eget undantag om ett undantag kastas.
                    throw new ApplicationException("Fel uppstod i  the data access layer.");
                }
            }
        }
Ejemplo n.º 2
0
        // Uppdaterar en post i medlemsaktivitettabellen.
        public void UpdateMemberActivity(MemberActivity memberActivity)
        {
            // Skapar och initierar ett anslutningsobjekt.
            using (SqlConnection conn = CreateConnection())
            {
                try
                {
                    SqlCommand cmd = new SqlCommand("appSchema.usp_UpdateMemberActivity", conn);
                    cmd.CommandType = CommandType.StoredProcedure;

                    // Lägger till den paramter den lagrade proceduren kräver för medlemsaktivitetID:t.
                    cmd.Parameters.AddWithValue("@MedAktID", memberActivity.MedAktID);

                    // Lägger till de paramterar den lagrade proceduren kräver.
                    cmd.Parameters.Add("@AktID", SqlDbType.Int).Value = memberActivity.AktID;
                    cmd.Parameters.Add("@MedID", SqlDbType.Int).Value = memberActivity.MedID;
                    cmd.Parameters.Add("@Avgiftstatus", SqlDbType.VarChar, 7).Value = memberActivity.Avgiftstatus;

                    // Öppnar anslutningen till databasen.
                    conn.Open();

                    // Den lagrade proceduren innehåller en UPDATE-sats och returnerar inga poster varför metoden
                    // ExecuteNonQuery används för att exekvera den lagrade proceduren.
                    cmd.ExecuteNonQuery();
                }
                catch
                {
                    // Kastar ett eget undantag om ett undantag kastas.
                    throw new ApplicationException("An error occured in the data access layer.");
                }
            }
        }
Ejemplo n.º 3
0
        public void MemberActivityFormView_InsertItem(MemberActivity memberActivity)
        {
            Service.ExisterarMedlemAktivitetInfo(memberActivity);

            if (memberActivity.Existerar == 0)
            {
                try
                {
                    Service.SaveMemberActivity(memberActivity);

                    // Sparar ett rättmeddelande i en temporär sessionsvariabel och dirigerar användaren till listan med medlemmar.
                    Page.SetTempData("SuccessMessage", "Medlem las till i aktiviteten!");
                    Response.RedirectToRoute("ActivityCreate", false);
                    Context.ApplicationInstance.CompleteRequest();
                }
                catch (Exception)
                {
                    ModelState.AddModelError(String.Empty, "Ett fel inträffade då medlemmen skulle läggas till.");
                }
            }
            else
            {
                // Sparar ett rättmeddelande i en temporär sessionsvariabel och dirigerar användaren till listan med medlemmar.
                Page.SetTempData("SuccessMessage", "Medlem finns redan i aktivtet");
                Response.RedirectToRoute("ActivityCreate", false);
                Context.ApplicationInstance.CompleteRequest();
            }
        }
Ejemplo n.º 4
0
        public async Task <ActionResult> GetView(string viewName, int memberId)
        {
            ModuleBase viewModel = null;
            var        viewPath  = "/Views/Member/";

            switch (viewName.ToLower())
            {
            case "awards":
            {
                viewModel = new MemberAwards(memberId);
                viewPath += "_MemberAwards.cshtml";
                break;
            }

            case "activity":
            {
                viewModel = new MemberContacts(memberId);
                viewPath += "_MemberActivity.cshtml";
                break;
            }

            case "messages":
            {
                viewModel = new MemberMessages(memberId);
                viewPath += "_MemberMessages.cshtml";
                break;
            }

            case "notes":
            {
                viewModel = new MemberNotes(memberId);
                viewPath += "_MemberNotes.cshtml";
                break;
            }

            case "history":
            {
                viewModel = new MemberActivity(memberId);
                viewPath += "_MemberHistory.cshtml";
                break;
            }


            default:
            {
                var mpjson = await _apiProvider.GetItemAsync("/api/member/GetProfile", $"id={memberId}");

                var mp = _apiProvider.DeserializeJson <cm.MemberProfile>(mpjson);
                viewModel = CopyMemberProfileToVm(mp);
                viewPath += "_MemberProfile.cshtml";
                break;
            }
            }

            return(PartialView(viewPath, viewModel));
        }
Ejemplo n.º 5
0
        public ActionResult Delete(int id, FormCollection collection)
        {
            // TODO: Add delete logic here
            AppContext     context = new AppContext();
            MemberActivity model   = context.MemberActivities.Find(id);

            context.MemberActivities.Remove(model);
            context.SaveChanges();
            return(RedirectToAction("About"));
        }
Ejemplo n.º 6
0
        public ActionResult Create(FormCollection collection)
        {
            // TODO: Add insert logic here
            AppContext     context = new AppContext();
            MemberActivity model   = context.MemberActivities.Add(new MemberActivity()
            {
                Member   = collection.Get("Member"),
                Activity = collection.Get("Activity")
            });

            context.SaveChanges();
            return(RedirectToAction("About"));
        }
Ejemplo n.º 7
0
        public void MemberActivityFormView_InsertItem(MemberActivity memberActivity)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    Service.SaveMemberActivity(memberActivity);

                    // Sparar ett rättmeddelande i en temporär sessionsvariabel och dirigerar användaren till listan med medlemmar.
                    Page.SetTempData("SuccessMessage", "Medlemsaktiviteten lades till!");
                    Response.RedirectToRoute("Members", null);
                    Context.ApplicationInstance.CompleteRequest();
                }
                catch (Exception)
                {
                    ModelState.AddModelError(String.Empty, "Ett fel inträffade då medlemmen skulle läggas till.");
                }
            }
        }
Ejemplo n.º 8
0
        // Skapar en ny post i tabellen Medlem.
        public void InsertMemberActivity(MemberActivity memberActivity)
        {
            // Skapar och initierar ett anslutningsobjekt.
            using (SqlConnection conn = CreateConnection())
            {
                try
                {
                    // Skapar och initierar ett SqlCommand-objekt som används till att exekveras specifierad lagrad procedur.
                    SqlCommand cmd = new SqlCommand("appSchema.usp_AddMedlemTillAktivtet", conn);
                    cmd.CommandType = CommandType.StoredProcedure;

                    // Lägger till de paramterar den lagrade proceduren kräver.
                    cmd.Parameters.Add("@MedlemID", SqlDbType.Int).Value        = memberActivity.MedID;
                    cmd.Parameters.Add("@AktivitetstypID", SqlDbType.Int).Value = memberActivity.AktID;
                    //cmd.Parameters.Add("@Avgiftstatus", SqlDbType.VarChar, 7).Value = memberActivity.Avgiftstatus;

                    // Hämtar data från den lagrade proceduren.
                    //cmd.Parameters.Add("@MedAktID", SqlDbType.Int, 4).Direction = ParameterDirection.Output;

                    // Öppnar anslutningen till databasen.
                    conn.Open();

                    // Den lagrade proceduren innehåller en INSERT-sats och returnerar inga poster varför metoden
                    // ExecuteNonQuery används för att exekvera den lagrade proceduren.
                    cmd.ExecuteNonQuery();

                    // Hämtar primärnyckelns värde för den nya posten och tilldelar MemberActivity-objektet värdet.
                    //memberActivity.MedAktID = (int)cmd.Parameters["@MedAktID"].Value;
                }
                catch
                {
                    // Kastar ett eget undantag om ett undantag kastas.
                    throw new ApplicationException("An error occured in the data access layer.");
                }
            }
        }