// // GET: /Component/ public ActionResult Index(int? componentid) { var myComponentDataUtil = new ComponentDataUtil(); var myComponents = new Components(); var selectedComponent = new Component(); var userCommentsList = new List<MvcHtmlString>(); var sortedList = new List<Component>(); var emptylist = new List<MvcHtmlString>(); LoanDataUtil ldu = new LoanDataUtil(); myComponents._LoanInformations = ldu.GetAllLoanInformation(); foreach (var component in myComponentDataUtil.GetAllComponents()) { myComponents._components.Add(component); } foreach (var component in myComponents._components) { if (component.ComponentID == componentid) selectedComponent = component; } foreach (var component in myComponents._components) { if (selectedComponent.ComponentName==component.ComponentName) sortedList.Add(component); } foreach (var component in sortedList) { if (!String.IsNullOrEmpty(component.UserComment)) userCommentsList.Add(MvcHtmlString.Create(HttpUtility.HtmlEncode(component.UserComment + "\n\n Skrevet omkring komponent nummer: " + component.ComponentNumber).Replace("\n", "<br />"))); } if (userCommentsList.Count < 1) { emptylist.Add(MvcHtmlString.Create(HttpUtility.HtmlEncode("Ingen kommentarer fundet"))); ViewData["UserComments"] = emptylist; } else { ViewData["UserComments"] = userCommentsList.Distinct().ToList(); } if (sortedList.Count > 0) { ViewData["AvailableQuantity"] = myComponents.GetAvailableQuantity(sortedList[0].ComponentName); return View(sortedList[0]); } ViewData["AvailableQuantity"] = 0; return View(); }
public ActionResult Remove(Component component) { var loanDataUtil = new LoanDataUtil(); var loanInfo = loanDataUtil.GetLoanInformation(component); if (Session["User"] == null) return RedirectToAction("Index", "Home"); if (Session["User"].ToString() == loanInfo.ReservationID) { loanDataUtil.RemoveReservation(component.ComponentID); } return RedirectToAction("Reserve","Account"); }
//[AllowAnonymous] public ActionResult Reserve() { var myLoanDataUtil = new LoanDataUtil(); var myloanedComponents = new Components(); var myreservedComponents = new Components(); if (Session["User"] == null) return RedirectToAction("Index","Home"); // Tjekker om der er indtastet en s�gning, hvis ja, hentes en komponentliste med de indtastede tags if (!String.IsNullOrEmpty(Session["User"].ToString())) { var studieNr =Session["User"].ToString(); foreach (var component in myLoanDataUtil.GetLoanedComponentFromStudentId(studieNr)) { myloanedComponents._components.Add(component); } foreach (var component in myLoanDataUtil.GetReservedComponentFromStudentId(studieNr)) { myreservedComponents._components.Add(component); } var SortedReserveList = myreservedComponents._components.OrderBy(c => c.ComponentName).ToList(); var SortedLoanList= myloanedComponents._components.OrderBy(c => c.ComponentName).ToList(); var SortedReserveLoanInformationList = new List<string>(); var SortedLoanedLoanInformationList = new List<string>(); ViewData["ReservedComponents"] = SortedReserveList; ViewData["LoanedComponents"] = SortedLoanList; foreach (var component in SortedReserveList) { SortedReserveLoanInformationList.Add(myLoanDataUtil.GetLoanInformation(component).ReservationDate.Value.Value.ToShortDateString()); } foreach (var component in SortedLoanList) { SortedLoanedLoanInformationList.Add(myLoanDataUtil.GetLoanInformation(component).ReturnDate.Value.Value.ToShortDateString()); } ViewData["ReservedLoanInformation"] = SortedReserveLoanInformationList; ViewData["LoanedLoanInformation"] = SortedLoanedLoanInformationList; } return View(); }
public List <Component> LoanTimeExceeded() { List <Component> nlist = GetAllComponents(); List <Component> compList = new List <Component>(); foreach (var comp in nlist) { LoanDataUtil loanDatautil = new LoanDataUtil(); LoanInformation lf = loanDatautil.GetLoanInformation(comp); if (lf.ReturnDate != DateTime.MinValue && lf.LoanDate != DateTime.MinValue) { if (lf.ReturnDate < DateTime.Now) { compList.Add(comp); } } } return(compList); }
// // GET: /Home/ public ActionResult Index(string searchString, string category, int? page) { var componentsPerPage = new int?(); var mySearcher = new Searcher(); var myComponentDataUtil = new ComponentDataUtil(); var myComponents = new Components(); var emptyComponent = new Component(); var listOfQuantity = new List<int>(); LoanDataUtil ldu = new LoanDataUtil(); myComponents._LoanInformations = ldu.GetAllLoanInformation(); emptyComponent.ComponentName="Ingen Komponenter Fundet"; componentsPerPage = 20; // Tjekker om der er indtastet en s�gning, hvis ja, hentes en komponentliste med de indtastede tags if (!String.IsNullOrEmpty(searchString)) { var SearchTags = mySearcher.SplitString(searchString); myComponents._components.AddRange(myComponentDataUtil.GetComponents(SearchTags)); } else { //Tjekker om man har trykket p� en kategori, hvis ja, hentes en komponentliste med den kategori if (!String.IsNullOrEmpty(category)) { foreach (var component in myComponentDataUtil.GetAllComponents()) { if (component.Category == category) myComponents._components.Add(component); } } else { myComponents._components.AddRange(myComponentDataUtil.GetAllComponents()); } } //Sorterer listen med komponenter, s� den er i alfabetisk r�kkef�lge og komponenterne kun ankommer en gang. var sortedList = myComponents._components.DistinctBy(c => c.ComponentName).OrderBy(c => c.ComponentName).ToList(); //Opretter liste med alle kategorier var listOfCategories = myComponents.GetAllCategories(); //S�tter listen med kategorier i alfabetisk r�kkef�lge listOfCategories.Sort(); //Opretter liste til hvis der ikke eksisterer nogen kategorier var noneFound = new List<string> { "Ingen kategorier fundet" }; if (listOfCategories.Count != 0) ViewData["Categories"] = listOfCategories; else ViewData["Categories"] = noneFound; //Udregner hvor mange sider, der skal v�re p� hjemmesiden ViewData["NumberOfPages"] = (sortedList.Count + componentsPerPage - 1) / componentsPerPage; //Udregner hvor mange der er af hver komponent type(taget ud af Componentname), l�gger det derefter over i en ny liste foreach (var component in sortedList) { mySearcher= new Searcher(); listOfQuantity.Add(myComponents.GetAvailableQuantity(component.ComponentName)); component.ComponentInfo = mySearcher.TruncateAtWord(component.ComponentInfo, 300); } //Hvis dette tjek g�r igennem, er der ikke nok komponenter til at vise den �nskede side if (((componentsPerPage * page.GetValueOrDefault())) >= sortedList.Count || page < 0) { myComponents._components.Clear(); myComponents._components.Add(emptyComponent); listOfQuantity.Clear(); listOfQuantity.Add(0); return View(myComponents._components); } ViewData["AvailableQuantity"] = listOfQuantity; //Hvis dette tjek g�r igennem har man komponenter til overs, men ikke nok til at lave en "hel" side if(((componentsPerPage*page.GetValueOrDefault())+componentsPerPage)>sortedList.Count) return View(sortedList.GetRange((page * componentsPerPage).GetValueOrDefault(), sortedList.Count - (componentsPerPage * page).GetValueOrDefault())); //Returnerer componentsPerPage, startende fra den side man er kommet til return View(sortedList.GetRange(((page * componentsPerPage).GetValueOrDefault()), componentsPerPage.GetValueOrDefault())); }
public List<Component> LoanTimeExceeded() { List<Component> nlist = GetAllComponents(); List<Component> compList = new List<Component>(); foreach (var comp in nlist) { LoanDataUtil loanDatautil = new LoanDataUtil(); LoanInformation lf = loanDatautil.GetLoanInformation(comp); if (lf.ReturnDate != DateTime.MinValue && lf.LoanDate != DateTime.MinValue) { if (lf.ReturnDate < DateTime.Now) compList.Add(comp); } } return compList; }
// bool CreateComponent(Component cp) public bool CreateComponent(Component cp) { try { // Open the connection _conn.Open(); // prepare command string using paramters in string and returning the given identity string insertStringParam = @"INSERT INTO [Component] (ComponentNumber, SerieNr, ComponentName, ComponentInfo, Category, Datasheet, Image, OwnerID, ReservationID) OUTPUT INSERTED.ComponentID VALUES (@Data1, @Data2,@Data3,@Data4,@Data5,@Data6,@Data7,@Data8, @Data9)"; //Alternative // ; SELECT SCOPE_IDENTITY()"; object componentInfoParam = DBNull.Value; object categoryParam = DBNull.Value; object datasheetParam = DBNull.Value; object imageParam = DBNull.Value; object ownerIdParam = DBNull.Value; object resIdParam = DBNull.Value; object serieNrParam = DBNull.Value; using (SqlCommand cmd = new SqlCommand(insertStringParam, _conn)) { // Get your parameters ready cmd.Parameters.Add(cmd.CreateParameter()).ParameterName = "@Data1"; cmd.Parameters.Add(cmd.CreateParameter()).ParameterName = "@Data2"; cmd.Parameters.Add(cmd.CreateParameter()).ParameterName = "@Data3"; cmd.Parameters.Add(cmd.CreateParameter()).ParameterName = "@Data4"; cmd.Parameters.Add(cmd.CreateParameter()).ParameterName = "@Data5"; cmd.Parameters.Add(cmd.CreateParameter()).ParameterName = "@Data6"; cmd.Parameters.Add(cmd.CreateParameter()).ParameterName = "@Data7"; cmd.Parameters.Add(cmd.CreateParameter()).ParameterName = "@Data8"; cmd.Parameters.Add(cmd.CreateParameter()).ParameterName = "@Data9"; cmd.Parameters["@Data1"].Value = cp.ComponentNumber; cmd.Parameters["@Data2"].Value = cp.SerieNr ?? serieNrParam; cmd.Parameters["@Data3"].Value = cp.ComponentName; // Hvis parameterne er null, så brug DBNULL.Value. cmd.Parameters["@Data4"].Value = cp.ComponentInfo ?? componentInfoParam; cmd.Parameters["@Data5"].Value = cp.Category ?? categoryParam; cmd.Parameters["@Data6"].Value = cp.Datasheet ?? datasheetParam; cmd.Parameters["@Data7"].Value = cp.Image ?? imageParam; cmd.Parameters["@Data8"].Value = cp.OwnerID != 0 ? cp.OwnerID : ownerIdParam; cmd.Parameters["@Data9"].Value = cp.ReservationID != 0 ? cp.ReservationID : resIdParam; //var id cp.ComponentID = (int)cmd.ExecuteScalar(); //Returns the identity of the new tuple/record //hv.HID = (int)cmd.ExecuteNonQuery(); //Does not workReturns row affected and not the identity of the new tuple/record CurrentComponent = cp; var loanInfo = new LoanInformation(); var loan = new LoanDataUtil(); loan.CreateLoanInformation(loanInfo, cp); } } catch (Exception e) { Console.WriteLine(e.Message); return false; } finally { // Close the connection if (_conn != null) { _conn.Close(); } } return true; }
// bool CreateComponent(Component cp) public bool CreateComponent(Component cp) { try { // Open the connection _conn.Open(); // prepare command string using paramters in string and returning the given identity string insertStringParam = @"INSERT INTO [Component] (ComponentNumber, SerieNr, ComponentName, ComponentInfo, Category, Datasheet, Image, OwnerID, ReservationID) OUTPUT INSERTED.ComponentID VALUES (@Data1, @Data2,@Data3,@Data4,@Data5,@Data6,@Data7,@Data8, @Data9)"; //Alternative // ; SELECT SCOPE_IDENTITY()"; object componentInfoParam = DBNull.Value; object categoryParam = DBNull.Value; object datasheetParam = DBNull.Value; object imageParam = DBNull.Value; object ownerIdParam = DBNull.Value; object resIdParam = DBNull.Value; object serieNrParam = DBNull.Value; using (SqlCommand cmd = new SqlCommand(insertStringParam, _conn)) { // Get your parameters ready cmd.Parameters.Add(cmd.CreateParameter()).ParameterName = "@Data1"; cmd.Parameters.Add(cmd.CreateParameter()).ParameterName = "@Data2"; cmd.Parameters.Add(cmd.CreateParameter()).ParameterName = "@Data3"; cmd.Parameters.Add(cmd.CreateParameter()).ParameterName = "@Data4"; cmd.Parameters.Add(cmd.CreateParameter()).ParameterName = "@Data5"; cmd.Parameters.Add(cmd.CreateParameter()).ParameterName = "@Data6"; cmd.Parameters.Add(cmd.CreateParameter()).ParameterName = "@Data7"; cmd.Parameters.Add(cmd.CreateParameter()).ParameterName = "@Data8"; cmd.Parameters.Add(cmd.CreateParameter()).ParameterName = "@Data9"; cmd.Parameters["@Data1"].Value = cp.ComponentNumber; cmd.Parameters["@Data2"].Value = cp.SerieNr ?? serieNrParam; cmd.Parameters["@Data3"].Value = cp.ComponentName; // Hvis parameterne er null, så brug DBNULL.Value. cmd.Parameters["@Data4"].Value = cp.ComponentInfo ?? componentInfoParam; cmd.Parameters["@Data5"].Value = cp.Category ?? categoryParam; cmd.Parameters["@Data6"].Value = cp.Datasheet ?? datasheetParam; cmd.Parameters["@Data7"].Value = cp.Image ?? imageParam; cmd.Parameters["@Data8"].Value = cp.OwnerID != 0 ? cp.OwnerID : ownerIdParam; cmd.Parameters["@Data9"].Value = cp.ReservationID != 0 ? cp.ReservationID : resIdParam; //var id cp.ComponentID = (int)cmd.ExecuteScalar(); //Returns the identity of the new tuple/record //hv.HID = (int)cmd.ExecuteNonQuery(); //Does not workReturns row affected and not the identity of the new tuple/record CurrentComponent = cp; var loanInfo = new LoanInformation(); var loan = new LoanDataUtil(); loan.CreateLoanInformation(loanInfo, cp); } } catch (Exception e) { Console.WriteLine(e.Message); return(false); } finally { // Close the connection if (_conn != null) { _conn.Close(); } } return(true); }