Ejemplo n.º 1
0
        public ActionResult Support()
        {
            using (TehnicalDepartmentDb db = new TehnicalDepartmentDb())
            {
                string         CreatedByName = User.Identity.Name;
                string         Company       = Request.Cookies["companyCookie"].Value;
                int            id            = db.Users.Where(m => m.company == Company && m.username == CreatedByName).FirstOrDefault().userId;
                List <Request> requests      = db.Requests.Where(m => m.createdBy == id).ToList();
                List <myIncidentRequestViewModel> myIncidentRequestViewModels = new List <myIncidentRequestViewModel>();

                foreach (var req in requests)
                {
                    List <RequestHistory> s = new List <RequestHistory>();
                    s = db.RequestHistories.Where(m => m.requestId == req.requestId).ToList();
                    string statusString = s.Last().status;

                    myIncidentRequestViewModels.Add(new myIncidentRequestViewModel
                    {
                        Id = req.requestId,
                        IncidentRequest    = req.type == false ? "Incident" : "Request",
                        Title              = req.title,
                        CreatedBy          = db.Users.Where(m => m.userId == req.createdBy).FirstOrDefault().username,
                        DepartmentAssigned = req.departmentAssigned,
                        Priority           = req.priority == 0 ? "Low" : req.priority == 1 ? "Medium" : "High",
                        Status             = statusString
                    });
                }
                return(View(myIncidentRequestViewModels));
            }
        }
Ejemplo n.º 2
0
        public async Task <ActionResult> Register(RegisterViewModel model)
        {
            if (ModelState.IsValid)
            {
                {
                    using (TehnicalDepartmentDb db = new TehnicalDepartmentDb())
                    {
                        User check = db.Users.FirstOrDefault(u => u.company == model.Company);
                        if (check != null)
                        {
                            return(View(model));
                        }


                        var user = new ApplicationUser {
                            UserName = model.User, Email = model.Email
                        };

                        var result = await UserManager.CreateAsync(user, model.Password);

                        if (result.Succeeded)

                        {
                            // await SignInManager.SignInAsync(user, isPersistent: false, rememberBrowser: false);
                            createRolesandUsers(user.Id);
                            User newUser = new User
                            {
                                company  = model.Company,
                                type     = 0,
                                username = model.User,
                                password = model.Password,
                                email    = model.Email
                            };
                            db.Users.Add(newUser);
                            db.SaveChanges();

                            // For more information on how to enable account confirmation and password reset please visit https://go.microsoft.com/fwlink/?LinkID=320771
                            // Send an email with this link
                            // string code = await UserManager.GenerateEmailConfirmationTokenAsync(user.Id);
                            // var callbackUrl = Url.Action("ConfirmEmail", "Account", new { userId = user.Id, code = code }, protocol: Request.Url.Scheme);
                            // await UserManager.SendEmailAsync(user.Id, "Confirm your account", "Please confirm your account by clicking <a href=\"" + callbackUrl + "\">here</a>");

                            return(RedirectToAction("sucessfullyRegistered", "Account"));
                        }

                        AddErrors(result);
                    }
                }
            }

            // If we got this far, something failed, redisplay form
            return(View(model));
        }
Ejemplo n.º 3
0
        public async Task <ActionResult> Login(LoginViewModel model, string returnUrl)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }
            {
                using (TehnicalDepartmentDb db = new TehnicalDepartmentDb())
                {
                    User check = db.Users.FirstOrDefault(u => u.company == model.Company && u.username == model.User && u.password == model.Password);
                    if (check == null)
                    {
                        return(View(model));
                    }



                    // This doesn't count login failures towards account lockout
                    // To enable password failures to trigger account lockout, change to shouldLockout: true
                    var result = await SignInManager.PasswordSignInAsync(model.User, model.Password, model.RememberMe, shouldLockout : false);

                    Session["Company"] = check.company;

                    HttpCookie myCookie = new HttpCookie("companyCookie");


                    switch (result)
                    {
                    case SignInStatus.Success:
                        myCookie.Value   = check.company;
                        myCookie.Expires = DateTime.Now.AddDays(7);
                        Response.Cookies.Add(myCookie);
                        return(RedirectToAction("Index", "Manage"));

                    //return RedirectToLocal(returnUrl);
                    case SignInStatus.LockedOut:
                        return(View("Lockout"));

                    case SignInStatus.RequiresVerification:
                        return(RedirectToAction("SendCode", new { ReturnUrl = returnUrl, RememberMe = model.RememberMe }));

                    case SignInStatus.Failure:
                    default:
                        ModelState.AddModelError("", "Invalid login attempt.");
                        return(View(model));
                        //return RedirectToAction("Manage", "Home");
                    }
                }
            }
        }
Ejemplo n.º 4
0
        public async Task <ActionResult> Create(IncidentRequestViewModel model)
        {
            if (ModelState.IsValid)
            {
                using (TehnicalDepartmentDb db = new TehnicalDepartmentDb())
                {
                    string  CreatedByName = User.Identity.Name;
                    int     CreatedById   = db.Users.FirstOrDefault(u => u.username == CreatedByName).userId;
                    Request request       = new Request
                    {
                        createdBy          = CreatedById,
                        title              = model.title,
                        description        = model.description,
                        type               = model.type == "0" ? false : true,
                        departmentAssigned = model.departmentAssigned,
                        employeeAssigned   = null,
                        priority           = model.priority
                    };

                    db.Requests.Add(request);
                    await db.SaveChangesAsync();

                    List <Request> newRequestList = db.Requests.Where(u => u.createdBy == CreatedById).ToList();
                    List <Request> newRequestListDescendingOrder = newRequestList.OrderByDescending(u => u.requestId).ToList();
                    int            newRequestId   = newRequestListDescendingOrder.First().requestId;
                    RequestHistory requestHistory = new RequestHistory
                    {
                        requestId = newRequestId,
                        from      = CreatedByName,
                        to        = model.departmentAssigned,
                        data      = DateTime.Now,
                        status    = "Pending"
                    };

                    db.RequestHistories.Add(requestHistory);
                    await db.SaveChangesAsync();



                    return(RedirectToAction("Support"));
                }
            }

            // ViewBag.createdBy = new SelectList(db.Users, "userId", "company", request.createdBy);
            return(View(model));
        }
Ejemplo n.º 5
0
        // GET: IncidentRequest/Create
        public ActionResult Create()
        {
            IncidentRequestViewModel model = new IncidentRequestViewModel();

            using (TehnicalDepartmentDb db = new TehnicalDepartmentDb())
            {
                List <Department> departments = db.Departments.ToList();
                foreach (var d in departments)
                {
                    model.departmentsList.Add(new SelectListItem {
                        Text = d.name, Value = d.name.ToString()
                    });
                }

                return(View(model));
            }
        }
Ejemplo n.º 6
0
        // GET: UsersManagement/Create
        public ActionResult Create()
        {
            CompanyUsersRegisterViewModel model = new CompanyUsersRegisterViewModel();

            using (TehnicalDepartmentDb db = new TehnicalDepartmentDb())
            {
                List <Department> departments = db.Departments.ToList();
                foreach (var d in departments)
                {
                    model.departmentsList.Add(new SelectListItem {
                        Text = d.name, Value = d.departmentId.ToString()
                    });
                }

                model.userTypes.Add(new SelectListItem {
                    Text = "Employee", Value = 1.ToString()
                });
                model.userTypes.Add(new SelectListItem {
                    Text = "Customer", Value = 2.ToString()
                });

                return(View(model));
            }
        }
Ejemplo n.º 7
0
        public async Task <ActionResult> Create(IncidentRequestViewModel model)
        {
            if (ModelState.IsValid)
            {
                using (TehnicalDepartmentDb db = new TehnicalDepartmentDb())
                {
                    string CreatedByName           = User.Identity.Name;
                    int    CreatedById             = db.Users.FirstOrDefault(u => u.username == CreatedByName).userId;
                    int?   fileval                 = null;
                    DatabaseConnection.File fileDb = null;
                    if (model.file != null && model.file.ContentLength > 0)
                    {
                        try
                        {
                            string path = Path.Combine(Server.MapPath("~/Files"),
                                                       Path.GetFileName(model.file.FileName));
                            model.file.SaveAs(path);

                            fileDb = new DatabaseConnection.File
                            {
                                fileName = model.file.FileName,
                                fileType = model.file.ContentType
                            };


                            db.Files.Add(fileDb);
                            await db.SaveChangesAsync();

                            fileval = fileDb.fileId;
                        }
                        catch (Exception ex)
                        {
                            ViewBag.Message = "ERROR:" + ex.Message.ToString();
                        }
                    }
                    else
                    {
                        ViewBag.Message = "You have not specified a file.";
                        fileval         = null;
                    }



                    Request request = new Request
                    {
                        createdBy          = CreatedById,
                        title              = model.title,
                        description        = model.description,
                        type               = model.type == "0" ? false : true,
                        departmentAssigned = model.departmentAssigned,
                        fileId             = fileval,
                        employeeAssigned   = null,
                        priority           = model.priority,
                    };
                    db.Requests.Add(request);
                    await db.SaveChangesAsync();

                    List <Request> newRequestList = db.Requests.Where(u => u.createdBy == CreatedById).ToList();
                    List <Request> newRequestListDescendingOrder = newRequestList.OrderByDescending(u => u.requestId).ToList();
                    int            newRequestId   = newRequestListDescendingOrder.First().requestId;
                    RequestHistory requestHistory = new RequestHistory
                    {
                        requestId = newRequestId,
                        from      = CreatedByName,
                        to        = model.departmentAssigned,
                        data      = DateTime.Now,
                        status    = "Pending"
                    };

                    db.RequestHistories.Add(requestHistory);
                    await db.SaveChangesAsync();



                    return(RedirectToAction("Support"));
                }
            }

            // ViewBag.createdBy = new SelectList(db.Users, "userId", "company", request.createdBy);
            return(View(model));
        }