public ActionResult CompanyDetails() { var user = User as MPrincipal; var login = user.UserDetails.Login; ViewBag.UserName = user.UserDetails.Login; ViewBag.UserRole = 4; CompanyDetailsVM compDetVM = null; using (ApplicationDbContext db = new ApplicationDbContext()) { var company = db.Companies.SingleOrDefault(x => x.Login == login); CompanyInfoVM companyInfoVM = Controllers.PublicCompanyController.CompanyInfo(company.Id); bool tag = false; if (companyInfoVM.CompanyTagList != null) { tag = true; } var city = db.Cities.SingleOrDefault(x => x.ID == company.CityId); compDetVM = new CompanyDetailsVM(); compDetVM.Pricing = company.Pricing; compDetVM.Services = company.Services; compDetVM.Speciality = company.Speciality; compDetVM.SelectedCityID = company.City.ID; compDetVM.CityName = city.Name; compDetVM.CompanyTagList = companyInfoVM.CompanyTagList; compDetVM.TagExist = tag; } return(View(compDetVM)); }
public void OpenXMLFile() { dao = new SOA_DataAccess(); System.Windows.Forms.OpenFileDialog dlg = new System.Windows.Forms.OpenFileDialog(); dlg.CheckFileExists = true; dlg.Filter = "XML Files (*.xml)|*.xml|All Files(*.*)|*.*"; dlg.Multiselect = false; //string path = dlg.FileName; try { if (dlg.ShowDialog() != DialogResult.OK) { return; } FullPath = dlg.FileName; dao.load(dlg.FileName); SampleSOA = dao.SOADataMaster; Helper.LoadCompanyInfoFromSoaObjectToOpen(SampleSOA, CompanyM); // assigns info extracted from XML to the Company info form CompanyInfoVM.LoadCompanyInfo(); // copies info into local parameters to be shown in the view ActivateItem(CompanyInfoVM); } catch (Exception) { System.Windows.Forms.MessageBox.Show("The data file is invalid!"); return; } }
public ActionResult InfoAboutCompany(int id) { var user = User as MPrincipal; if (user != null) { var login = user.UserDetails.Login; ViewBag.UserName = user.UserDetails.Login; using (ApplicationDbContext db = new ApplicationDbContext()) { var comp = db.Companies.FirstOrDefault(u => u.Login.Equals(login)); var cust = db.Customers.FirstOrDefault(u => u.Login.Equals(login)); if (cust != null) { ViewBag.UserRole = cust.RoleId; } else if (comp != null) { ViewBag.UserRole = comp.RoleId; } } } CompanyInfoVM companyInfoVM = CompanyInfo(id); return(View(companyInfoVM)); }
public ActionResult SearchView(MainViewVM model) { BasicCompanyInfoListVM searched = new BasicCompanyInfoListVM(); var user = User as MPrincipal; if (user != null) { var login = user.UserDetails.Login; ViewBag.UserName = user.UserDetails.Login; using (ApplicationDbContext db = new ApplicationDbContext()) { var compUser = db.Companies.FirstOrDefault(u => u.Login.Equals(login)); var custUser = db.Customers.FirstOrDefault(u => u.Login.Equals(login)); if (compUser != null) { ViewBag.UserRole = compUser.RoleId; } else if (custUser != null) { ViewBag.UserRole = custUser.RoleId; } } } var dbCompany = SearchCompany(model.NameSearch, Convert.ToInt32(model.PlaceSearch)).Select(c => c.Id).Distinct(); List <BasicCompanyInfoVM> basicCompanyInfoList = new List <BasicCompanyInfoVM>(); foreach (var item in dbCompany) { CompanyInfoVM company = CompanyInfo(item); BasicCompanyInfoVM basicInfo = new BasicCompanyInfoVM() { IdCompany = company.IdCompany, CityName = company.CityName, CompanyName = company.CompanyName, CompanyMainImage = company.CompanyMainImage, CompanyTagList = company.CompanyTagList, AverageRating = company.AverageRating, Services = company.Services, Speciality = company.Speciality, NearestFreeDate = company.NearestFreeDate, OpinionsCount = company.OpinionsCount }; basicCompanyInfoList.Add(basicInfo); } searched.basicCompanyInfoVMlist = basicCompanyInfoList; searched.ListCount = basicCompanyInfoList.Count(); return(View(searched)); }
public static CompanyInfoVM CompanyInfo(int companyId) { using (ApplicationDbContext db = new ApplicationDbContext()) { var company = db.Companies.SingleOrDefault(x => x.Id == companyId); List <Tag> tagList = new List <Tag>(); tagList = db.Tags.Where(t => t.CompanyTag.Any(c => c.CompanyId == company.Id)).ToList(); bool tagExist = false; if (tagList != null) { tagExist = true; } List <CompanyTermVM> compTermList = Controllers.TermController.CompanyTermToList(company.Id).Where(c => c.Actual == true && c.CustomerID == null).ToList(); CompanyTermVM nearestTerm = compTermList.FirstOrDefault(t => t.DateStart > DateTime.Now); string nearestFreeTerm = "Brak wolnych terminów"; if (nearestTerm != null) { nearestFreeTerm = nearestTerm.DateStart.ToShortDateString(); } List <Image> imageList = new List <Image>(); imageList = db.Images.Where(t => t.CompanyId == company.Id && t.IsDelete == false).ToList(); Image imageMain = new Image(); imageMain = db.Images.FirstOrDefault(i => i.CompanyId == company.Id && i.MainPicture == true); if (imageMain == null) { imageMain = new Image() { Link = "~/Content/images/brakZdj.jpg" }; } var opinionList = db.Opinions.Where(o => o.CompanyId == company.Id && o.IsDelete == false && o.AdminAccept == true).ToList(); List <OpinionVM> opinionListVM = new List <OpinionVM>(); List <int> gradeValues = new List <int>(); for (int i = 0; i < opinionList.Count(); i++) { var customName = opinionList[i].Reservation.Term.Customer.Name + " " + opinionList[i].Reservation.Term.Customer.Surname; OpinionVM opinionVM = new OpinionVM { Description = opinionList[i].Description, CustomerName = customName, GradeValue = opinionList[i].GradeValue }; opinionListVM.Add(opinionVM); gradeValues.Add(opinionList[i].GradeValue); } double average = 0; if (gradeValues.Count > 0) { average = gradeValues.Average(); } CompanyInfoVM companyInfoVM = new CompanyInfoVM() { IdCompany = company.Id, CityName = company.City.Name, CompanyName = company.CompanyName, Speciality = company.Speciality, Services = company.Services, Pricing = company.Pricing, PhoneNumer = company.PhoneNumer, CompanyTagList = tagList, CompanyTermVMList = compTermList, CompanyImageList = imageList, TagExist = tagExist, NearestFreeDate = nearestFreeTerm, CompanyMainImage = imageMain, CompanyOpinionList = opinionListVM, AverageRating = average, OpinionsCount = opinionListVM.Count() }; return(companyInfoVM); }; }