public ActionResult CompanyDetails(int id) { if (Session["TenantId"] == null) { TempData["Info"] = "Nastąpiło automatyczne wylogowanie. Proszę ponownie się zalogować"; return(RedirectToAction("Login", "Home")); } else { HorseplayContext db = new HorseplayContext(); int tenantId = (int)Session["TenantId"]; var comp = db.Companies .Include(c => c.Address) .Include(c => c.ContactDetail) .Where(c => c.TenantId == tenantId && c.CompanyId == id); if (comp.Any()) { return(View(comp.FirstOrDefault())); } else { return(new HttpNotFoundResult("Nie znaleziono strony")); } } }
// GET: Admin //[Authorize(Roles ="Admin")] public ActionResult Users() { HorseplayContext db = new HorseplayContext(); var users = db.Users.ToList(); return(View(users)); }
public ActionResult AcceptInvitation(string id) { HorseplayContext db = new HorseplayContext(); var invs = db.Invitations.Where(i => i.InvitationToken == id.Trim() && i.IsAccepted == false); if (invs.Any()) { //correct token, let's add new user to that Tenant AddingUserViewModel vm = new AddingUserViewModel(); int tenantId = invs.FirstOrDefault().TenantId; TempData["TenantId"] = tenantId; TempData["InvitationToken"] = id; User user = new Models.User() { TenantId = tenantId, Email = invs.FirstOrDefault().InvitedMail }; vm.User = user; vm.Invitation = invs.FirstOrDefault(); return(View("AddUser", vm)); } else { return(new HttpNotFoundResult("Nie znaleziono strony")); } }
public ActionResult DeleteTransportOrder(int id) { if (Session["TenantId"] == null) { TempData["Info"] = "Nastąpiło automatyczne wylogowanie. Proszę ponownie się zalogować"; return(RedirectToAction("Login", "Home")); } else { HorseplayContext db = new HorseplayContext(); int tenantId = (int)Session["TenantId"]; var tos = db.TransportOrders .Include(to => to.Truck) .Include(to => to.Trailer) .Include(to => to.PrimaryDriver) .Include(to => to.SecondaryDriver) .Include(to => to.Carrier) .Include(to => to.Customer) .Include(to => to.Route.Stops.Select(s => s.Address)) .Where(t => t.TenantId == tenantId && t.TransportOrderId == id); if (tos.Any()) { return(View(tos.FirstOrDefault())); } else { return(new HttpNotFoundResult("Nie znaleziono strony")); } } }
public void DeleteDependentRoute(TransportOrder to, HorseplayContext db) { if (to.Route != null) { //delete route data if (to.Route.Stops.Any()) { Address oldAddress; RouteStop oldStop; List <int> stopIds = new List <int>(); //we have to delete all the stops first foreach (var stop in to.Route.Stops) { var ads = db.Addresses.Where(a => a.AddressId == stop.AddressId); if (ads.Any()) { oldAddress = stop.Address; db.Addresses.Remove(oldAddress); db.SaveChanges(); } stopIds.Add(stop.RouteStopId); } foreach (int i in stopIds) { oldStop = db.RouteStops.Where(rs => rs.RouteStopId == i).FirstOrDefault(); db.RouteStops.Remove(oldStop); db.SaveChanges(); } } Route oldRoute = db.Routes.Where(r => r.RouteId == to.Route.RouteId).FirstOrDefault(); db.Routes.Remove(oldRoute); db.SaveChanges(); } }
public ActionResult EditVehicle(int id) { if (Session["TenantId"] == null) { TempData["Info"] = "Nastąpiło automatyczne wylogowanie. Proszę ponownie się zalogować"; return(RedirectToAction("Login", "Home")); } else { HorseplayContext db = new HorseplayContext(); VehicleViewModel vm = new VehicleViewModel(); int tenantId = (int)Session["TenantId"]; var veh = db.Vehicles.Where(v => v.TenantId == tenantId && v.VehicleId == id); if (veh.Any()) { vm.Rebuild(db); vm.Vehicle = veh.FirstOrDefault(); return(View("EditVehicle", vm)); } else { return(new HttpNotFoundResult("Nie znaleziono strony")); } } }
public ActionResult EditEmployeeGroup(EmployeeGroup eg) { if (!ModelState.IsValid) { return(View("EditEmployeeGroup", eg)); } else { HorseplayContext db = new HorseplayContext(); int tenantId = (int)Session["TenantId"]; int userId = (int)Session["UserId"]; if (db.EmployeeGroups.Any(x => x.Name == eg.Name && x.TenantId == tenantId && x.EmployeeGroupId != eg.EmployeeGroupId)) { ModelState.AddModelError(string.Empty, "Grupa o takiej nazwie już istnieje. Podaj unikatową nazwę grupy"); return(View("EditEmployeeGroup", eg)); } else { var oldEg = db.EmployeeGroups.FirstOrDefault(e => e.EmployeeGroupId == eg.EmployeeGroupId && e.TenantId == tenantId); if (oldEg == null) { return(new HttpNotFoundResult("Wystąpił nieoczekiwany błąd")); } else { oldEg.Name = eg.Name; oldEg.dateModified = DateTime.Now; oldEg.modifiedBy = userId; db.Entry(oldEg).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("GetEmployeeGroups")); } } } }
public ActionResult DeleteCompany(Company comp) { HorseplayContext db = new HorseplayContext(); int tenantId = (int)Session["TenantId"]; var comps = db.Companies .Include(c => c.Address) .Include(c => c.ContactDetail) .Where(c => c.TenantId == tenantId && c.CompanyId == comp.CompanyId); if (comps.Any()) { Company oldComp = comps.FirstOrDefault(); Address oldAddress = db.Addresses.Where(a => a.AddressId == oldComp.Address.AddressId).FirstOrDefault(); ContactDetail oldCD = db.ContactDetails.Where(a => a.ContactDetailId == oldComp.ContactDetail.ContactDetailId).FirstOrDefault(); db.Addresses.Remove(oldAddress); db.SaveChanges(); db.ContactDetails.Remove(oldCD); db.SaveChanges(); //db.Companies.Remove(oldComp); //db.SaveChanges(); return(View("GetCompanies")); } else { return(new HttpNotFoundResult("Nieoczekiwany błąd")); } }
public ActionResult EditCompany(int id) { if (Session["TenantId"] == null) { TempData["Info"] = "Nastąpiło automatyczne wylogowanie. Proszę ponownie się zalogować"; return(RedirectToAction("Login", "Home")); } else { HorseplayContext db = new HorseplayContext(); int tenantId = (int)Session["TenantId"]; var comps = db.Companies .Include(c => c.Address) .Include(c => c.ContactDetail) .Where(c => c.CompanyId == id && c.TenantId == tenantId); if (comps.Any()) { CompanyViewModel vm = new CompanyViewModel(); vm.Company = comps.FirstOrDefault(); return(View(vm)); } else { return(new HttpNotFoundResult("Nieoczekiwany błąd")); } } }
// GET: Home public ActionResult Index() { using (HorseplayContext db = new HorseplayContext()) { return(View(db.Users.ToList())); } }
public ActionResult CreateEmployeeGroup(EmployeeGroup eg) { if (!ModelState.IsValid) { return(View("CreateEmployeeGroup", eg)); } else { HorseplayContext db = new HorseplayContext(); int tenantId = (int)Session["TenantId"]; if (db.EmployeeGroups.Any(x => x.Name == eg.Name && x.TenantId == tenantId)) { ModelState.AddModelError(string.Empty, "Grupa o takiej nazwie już istnieje. Podaj unikatową nazwę grupy"); return(View("CreateEmployeeGroup", eg)); } else { eg.addedBy = (int)Session["UserId"]; eg.dateAdded = DateTime.Now; eg.TenantId = tenantId; db.EmployeeGroups.Add(eg); db.SaveChanges(); return(RedirectToAction("GetEmployeeGroups")); } } }
public JsonResult SearchAddress(string Prefix) { HorseplayContext db = new HorseplayContext(); int tenantId = (int)Session["TenantId"]; var addresses = db.Addresses.Where(a => a.TenantId == tenantId && (a.Name.Contains(Prefix))).Select(y => new { y.Name, y.Street, y.ZipCode, y.City, y.Country }).Distinct().ToList(); return(Json(addresses, JsonRequestBehavior.AllowGet)); }
public ActionResult GetInvitations() { if (Session["TenantId"] == null) { TempData["Info"] = "Nastąpiło automatyczne wylogowanie. Proszę ponownie się zalogować"; return(RedirectToAction("Login", "Home")); } else { HorseplayContext db = new HorseplayContext(); int tenantId = (int)Session["TenantId"]; var invs = db.Invitations.Where(i => i.TenantId == tenantId).OrderBy(i => i.IsAccepted).ThenByDescending(i => i.DateAdded); return(View(invs)); } }
public ActionResult CreateTransportOrder() { if (Session["TenantId"] == null) { TempData["Info"] = "Nastąpiło automatyczne wylogowanie. Proszę ponownie się zalogować"; return(RedirectToAction("Login", "Home")); } else { HorseplayContext db = new HorseplayContext(); TransportOrderViewModel vm = new TransportOrderViewModel(); vm = FillTransportOrderViewModel(vm); return(View(vm)); } }
public ActionResult GetUsers() { if (Session["TenantId"] == null) { TempData["Info"] = "Nastąpiło automatyczne wylogowanie. Proszę ponownie się zalogować"; return(RedirectToAction("Login", "Home")); } else { HorseplayContext db = new HorseplayContext(); int tenantId = (int)Session["TenantId"]; var users = db.Users.Where(u => u.TenantId == tenantId); return(View(users)); } }
public ActionResult CreateCompany() { if (Session["TenantId"] == null) { TempData["Info"] = "Nastąpiło automatyczne wylogowanie. Proszę ponownie się zalogować"; return(RedirectToAction("Login", "Home")); } else { HorseplayContext db = new HorseplayContext(); CompanyViewModel vm = new CompanyViewModel(); int tenantId = (int)Session["TenantId"]; return(View(vm)); } }
public ActionResult GetEmployeeGroups() { if (Session["TenantId"] == null) { TempData["Info"] = "Nastąpiło automatyczne wylogowanie. Proszę ponownie się zalogować"; return(RedirectToAction("Login", "Home")); } else { int tenantId = (int)Session["TenantId"]; HorseplayContext db = new HorseplayContext(); var employeeGroups = db.EmployeeGroups.Where(eg => eg.TenantId == tenantId); return(View(employeeGroups)); } }
public ActionResult EditEmployee(HRCreateEmployeeViewModel vm) { if (!ModelState.IsValid) { return(View("EditEmployee", vm)); } else { int userId = (int)Session["UserId"]; HorseplayContext db = new HorseplayContext(); Employee oldEmp = db.Employees.Where(e => e.EmployeeId == vm.employee.EmployeeId).First(); oldEmp.Name = vm.employee.Name; oldEmp.Surname = vm.employee.Surname; oldEmp.Country = vm.employee.Country; oldEmp.ContractType = vm.employee.ContractType; oldEmp.PersonalIdentityNumber = vm.employee.PersonalIdentityNumber; oldEmp.IdNumber = vm.employee.IdNumber; oldEmp.ExpirationDate = vm.employee.ExpirationDate; oldEmp.modifiedBy = userId; oldEmp.dateModified = DateTime.Now; oldEmp.Mail = vm.employee.Mail; oldEmp.Mobile = vm.employee.Mobile; oldEmp.Phone = vm.employee.Phone; oldEmp.Address = vm.employee.Address; oldEmp.BirthDay = vm.employee.BirthDay; oldEmp.EmployedOn = vm.employee.EmployedOn; oldEmp.Groups.Clear(); if (vm.selectedGroups != null) { foreach (int i in vm.selectedGroups) { var result = (from eg in db.EmployeeGroups where eg.EmployeeGroupId == i select eg); foreach (var emp in result) { oldEmp.Groups.Add(emp); } } } db.Entry(oldEmp).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("GetEmployees")); } }
public ActionResult EditVehicle(VehicleViewModel vm) { if (!ModelState.IsValid) { return(View("EditVehicle", vm)); } else { HorseplayContext db = new HorseplayContext(); vm.Rebuild(db); string plate = vm.Vehicle.Plate.Trim(); if (db.Vehicles.Any(v => v.Plate == plate && v.VehicleId != vm.Vehicle.VehicleId)) { ModelState.AddModelError(string.Empty, "Pojazd o takiej tablicy rejestracyjnej już istnieje. Numer rejestracyjny musi być unikalny"); return(View("EditVehicle", vm)); } else { int tenantId = (int)Session["TenantId"]; var vehs = db.Vehicles.Where(v => v.VehicleId == vm.Vehicle.VehicleId && v.TenantId == tenantId); if (vehs.Any()) { Vehicle oldVeh = vehs.FirstOrDefault(); oldVeh.dateModified = DateTime.Now; oldVeh.modifiedBy = (int)Session["UserId"]; oldVeh.Plate = plate; oldVeh.Brand = vm.Vehicle.Brand; oldVeh.Model = vm.Vehicle.Model; oldVeh.ProductionYear = vm.Vehicle.ProductionYear; oldVeh.Capacity = vm.Vehicle.Capacity; oldVeh.RegistrationDate = vm.Vehicle.RegistrationDate; oldVeh.ServiceDate = vm.Vehicle.ServiceDate; oldVeh.Type = vm.Vehicle.Type; oldVeh.Vin = vm.Vehicle.Vin; oldVeh.DefaultUser = vm.IntToEmployee(vm.SelectedUser); oldVeh.Description = vm.Vehicle.Description; db.Entry(oldVeh).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("GetVehicles")); } else { return(new HttpNotFoundResult("Nie oczekiwany błąd")); } } } }
public ActionResult DeleteEmployee(Employee ee) { HorseplayContext db = new HorseplayContext(); int tenantId = (int)Session["TenantId"]; var oldEg = db.Employees.FirstOrDefault(e => e.EmployeeId == ee.EmployeeId && e.TenantId == tenantId); if (oldEg == null) { return(new HttpNotFoundResult("Wystąpił nieoczekiwany błąd")); } else { db.Employees.Remove(oldEg); db.SaveChanges(); return(RedirectToAction("GetEmployees")); } }
public ActionResult GetCompanies() { if (Session["TenantId"] == null) { TempData["Info"] = "Nastąpiło automatyczne wylogowanie. Proszę ponownie się zalogować"; return(RedirectToAction("Login", "Home")); } else { HorseplayContext db = new HorseplayContext(); int tenantId = (int)Session["TenantId"]; var comps = db.Companies .Include(c => c.Address) .Include(c => c.ContactDetail) .Where(c => c.TenantId == tenantId); return(View(comps)); } }
public ActionResult DeleteVehicle(Vehicle veh) { HorseplayContext db = new HorseplayContext(); int tenantId = (int)Session["Tenantid"]; var vehs = db.Vehicles.Where(v => v.VehicleId == veh.VehicleId && v.TenantId == tenantId); if (vehs.Any()) { Vehicle oldVeh = vehs.FirstOrDefault(); db.Vehicles.Remove(oldVeh); db.SaveChanges(); return(RedirectToAction("GetVehicles")); } else { return(new HttpNotFoundResult("Nieoczekiwany błąd")); } }
public ActionResult DeleteInvitation(Invitation Invitation) { HorseplayContext db = new HorseplayContext(); int tenantId = (int)Session["TenantId"]; var invs = db.Invitations.Where(i => i.TenantId == tenantId && i.InvitationId == Invitation.InvitationId); if (invs.Any()) { Invitation orgInv = invs.FirstOrDefault(); db.Invitations.Remove(orgInv); db.SaveChanges(); return(RedirectToAction("GetInvitations")); } else { return(new HttpNotFoundResult("Nie znaleziono strony")); } }
public ActionResult Login(User user) { using (HorseplayContext db = new HorseplayContext()) { var usr = (from us in db.Users where (us.Login.Trim() == user.Login.Trim() || us.Email.Trim() == user.Login.Trim()) && us.Password.Trim() == user.Password.Trim() select us ).FirstOrDefault(); if (usr != null) { if (!usr.IsConfirmed && usr.ExpirationDate < DateTime.Now) { //we've just go johny come lately string token = Utilities.uniqueToken(db); usr.ConfirmationToken = token.Trim(); var oldTerm = usr.ExpirationDate; usr.ConfirmPassword = usr.Password; //just to satisfy crazy EF validation thing db.Entry(usr).State = System.Data.Entity.EntityState.Modified; db.SaveChanges(); string result = SendVerificationToken(token, usr.Email); TempData["Error"] = "Konto nie zostało aktywowane, pomimo upływu terminu w dniu " + oldTerm + ". Na adres " + usr.Email + " została wysłana nowa wiadomość z linkiem aktywacyjnym. Dostęp do konta zostanie przywrócony, gdy użytkownik aktywuje konto korzystając z linka umieszczonego w otrzymanej wiadomości e-mail"; return(RedirectToAction("Index")); } else { //all ok, let's log him in Session["UserId"] = usr.UserId; Session["Login"] = usr.Login; Session["TenantId"] = usr.TenantId; usr.ConfirmPassword = usr.Password; //just to satisfy crazy EF validation thing usr.lastLogged = DateTime.Now; db.Entry(usr).State = System.Data.Entity.EntityState.Modified; db.SaveChanges(); ModelState.Clear(); return(RedirectToAction("Index", "Account")); } } else { ModelState.AddModelError(string.Empty, "Błędny login lub hasło!"); return(View("Login", user)); } } }
public ActionResult CreateVehicle(VehicleViewModel vm) { if (!ModelState.IsValid) { return(View("CreateVehicle", vm)); } else { string plate = vm.Vehicle.Plate.Trim(); int tenantId = (int)Session["TenantId"]; HorseplayContext db = new HorseplayContext(); if (plate.Length > 0) { if (db.Vehicles.Any(v => v.Plate == plate && v.TenantId == tenantId)) { ModelState.AddModelError(string.Empty, "Pojazd o takiej tablicy rejestracyjnej już istnieje. Numer rejestracyjny musi być unikalny"); return(View("CreateVehicle", vm)); } } vm.Rebuild(db); //all is fine. Let's create this m**********r Vehicle Vehicle = new Vehicle(); Vehicle.Plate = plate; Vehicle.Brand = vm.Vehicle.Brand; Vehicle.Model = vm.Vehicle.Model; Vehicle.ProductionYear = vm.Vehicle.ProductionYear; Vehicle.Capacity = vm.Vehicle.Capacity; Vehicle.RegistrationDate = vm.Vehicle.RegistrationDate; Vehicle.ServiceDate = vm.Vehicle.ServiceDate; Vehicle.Type = vm.Vehicle.Type; Vehicle.Vin = vm.Vehicle.Vin; Vehicle.DefaultUser = vm.IntToEmployee(vm.SelectedUser); Vehicle.TenantId = tenantId; Vehicle.addedBy = (int)Session["UserId"]; Vehicle.dateAdded = DateTime.Now; db.Vehicles.Add(Vehicle); db.SaveChanges(); return(RedirectToAction("GetVehicles")); } }
public ActionResult AddCompanyGroup(CompanyGroup companyGroup) { if (!ModelState.IsValid) { return(View("Add", companyGroup)); } else { HorseplayContext db = new HorseplayContext(); if (db.CompanyGroups.Any(x => x.Name == companyGroup.Name)) { ModelState.AddModelError(string.Empty, "Grupa o takiej nazwie już istnieje!"); return(View("Add", companyGroup)); } else { db.CompanyGroups.Add(companyGroup); db.SaveChanges(); return(View("companyGroupCreated", companyGroup)); } } }
public ActionResult DeleteInvitation(int id) { if (Session["TenantId"] == null) { TempData["Info"] = "Nastąpiło automatyczne wylogowanie. Proszę ponownie się zalogować"; return(RedirectToAction("Login", "Home")); } else { int tenantId = (int)Session["TenantId"]; HorseplayContext db = new HorseplayContext(); var invs = db.Invitations.Where(i => i.InvitationId == id && i.TenantId == tenantId); if (invs.Any()) { return(View(invs.FirstOrDefault())); } else { return(new HttpNotFoundResult("Nie znaleziono strony")); } } }
public ActionResult ConfirmUserMail(string id) { HorseplayContext db = new HorseplayContext(); var users = db.Users.Where(u => u.ConfirmationToken == id.Trim() && u.IsConfirmed == false); if (users.Any()) { User user = users.FirstOrDefault(); //correct token, let's confirm that account user.ConfirmationDate = DateTime.Now; user.IsConfirmed = true; user.ConfirmPassword = user.Password;//just to satisfy crazy EF validation thing db.Entry(user).State = System.Data.Entity.EntityState.Modified; try { db.SaveChanges(); }catch (DbEntityValidationException e) { foreach (var eve in e.EntityValidationErrors) { Debug.WriteLine("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:", eve.Entry.Entity.GetType().Name, eve.Entry.State); foreach (var ve in eve.ValidationErrors) { Debug.WriteLine("- Property: \"{0}\", Error: \"{1}\"", ve.PropertyName, ve.ErrorMessage); } } throw; } TempData["Info"] = "Twoje konto zostało aktywowane!"; return(RedirectToAction("Login")); } else { return(new HttpNotFoundResult("Nie znaleziono strony")); } }
public ActionResult EmployeeGroupDetails(int id) { if (Session["TenantId"] == null) { TempData["Info"] = "Nastąpiło automatyczne wylogowanie. Proszę ponownie się zalogować"; return(RedirectToAction("Login", "Home")); } else { HorseplayContext db = new HorseplayContext(); int tenantId = (int)Session["TenantId"]; var egs = db.EmployeeGroups.Where(e => e.EmployeeGroupId == id && e.TenantId == tenantId); if (egs.Any()) { return(View(egs.FirstOrDefault())); } else { return(new HttpNotFoundResult("Nie znaleziono strony")); } } }
public ActionResult DeleteTransportOrder(TransportOrder to) { HorseplayContext db = new HorseplayContext(); int tenantId = (int)Session["Tenantid"]; var tos = db.TransportOrders .Include(x => x.Route) .Include(x => x.Route.Stops) .Include(x => x.Route.Stops.Select(s => s.Address)) .Where(x => x.TransportOrderId == to.TransportOrderId && x.TenantId == tenantId); if (tos.Any()) { TransportOrder oldTo = tos.FirstOrDefault(); DeleteDependentRoute(oldTo, db); db.TransportOrders.Remove(oldTo); db.SaveChanges(); return(RedirectToAction("GetTransportOrders")); } else { return(new HttpNotFoundResult("Nieoczekiwany błąd")); } }