예제 #1
0
        public async Task <ActionResult> EmployeeInfoDataCreate(EmployeeInfoDataModel employeeInfoDataModel, HttpPostedFileBase uploadedphoto, string sessionid)
        {
            ViewBag.SessionID          = sessionid;
            ViewBag.AllDepartmentName  = new SelectList(await departmentDataDbContext.DepartmentDataDbSet.OrderBy(model => model.depname).Select(model => model.depname).ToListAsync());
            ViewBag.AllDesignationName = new SelectList(await designationDataDbContext.DesignationDataDbSet.OrderBy(model => model.desgname).Select(model => model.desgname).ToListAsync());
            ViewBag.AllDivisionName    = new SelectList(await divisionDataDbContext.DivisionDataDbSet.OrderBy(model => model.divname).Select(model => model.divname).ToListAsync());
            ViewBag.AllReportingTo     = new SelectList(await employeeInfoDataDbContext.EmployeeInfoDataDbSet.Where(model => model.empexitdate.Equals(null)).OrderBy(model => model.empname).Select(model => model.empname).ToListAsync());
            if (Authenticate("EmployeeInfoDataCreate"))
            {
                try
                {
                    if (ModelState.IsValid)
                    {
                        if (uploadedphoto != null)
                        {
                            employeeInfoDataModel.empphoto = ConvertToByte(uploadedphoto);
                        }
                        employeeInfoDataDbContext.EmployeeInfoDataDbSet.Add(employeeInfoDataModel);

                        // login id/password generation
                        EmployeeLoginDataModel employeeLoginDataModel = new EmployeeLoginDataModel();
                        employeeLoginDataModel.empid    = employeeInfoDataModel.empid;
                        employeeLoginDataModel.password = Encrypt("welcome@1234");
                        //System.Diagnostics.Debug.WriteLine(encrypass);
                        employeeLoginDataModel.role = "user";
                        employeeLoginDataDbContext.EmployeeLoginDataDbSet.Add(employeeLoginDataModel);

                        await employeeLoginDataDbContext.SaveChangesAsync();

                        await employeeInfoDataDbContext.SaveChangesAsync();

                        return(RedirectToAction("EmployeeInfoDataIndex", new { sessionid = ViewBag.SessionID }));
                    }
                }
                catch
                {
                    Response.Write("<script>alert('Server Error!!');</script>");
                    ViewBag.errormssg = "Server Error!!";
                }
                return(View(employeeInfoDataModel));
            }

            return(Redirect(new Uri(Request.Url, Url.Action("AuthenticationError", "Error", new { sessionid = ViewBag.SessionID })).ToString()));
        }
        public async Task <ActionResult> EmployeeLoginDataEdit(EmployeeLoginDataModel employeeLoginDataModel, string sessionid)
        {
            ViewBag.SessionID = sessionid;
            if (Authenticate("EmployeeLoginData") && employeeLoginDataModel.role != "superuser")
            {
                try
                {
                    if (ModelState.IsValid)
                    {
                        var oldvalues = await employeeLoginDataDbContext.EmployeeLoginDataDbSet.Where(model => model.empid.Equals(employeeLoginDataModel.empid)).FirstOrDefaultAsync();

                        oldvalues.role = employeeLoginDataModel.role;

                        if (oldvalues != null)
                        {
                            if (oldvalues.role != "superuser")
                            {
                                await employeeLoginDataDbContext.SaveChangesAsync();

                                return(RedirectToAction("EmployeeLoginDataIndex", new { sessionid = ViewBag.SessionID }));
                            }
                        }
                        return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
                    }
                }

                catch
                {
                    Response.Write("<script>alert('Server Error!!');</script>");
                    ViewBag.errormssg = "Server Error!!";
                }
                ViewBag.AllRoles = new SelectList(await roleDataDbContext.RoleDataDbSet.OrderBy(model => model.rolename).Where(model => model.rolename != "superuser").Select(model => model.rolename).ToListAsync());
                return(View(employeeLoginDataModel));
            }
            return(Redirect(new Uri(Request.Url, Url.Action("AuthenticationError", "Error", new { sessionid = ViewBag.SessionID })).ToString()));
        }
예제 #3
0
        public async Task <ActionResult> ChangePassword(string sessionid, string newpassword)
        {
            ViewBag.SessionID = sessionid;
            Authenticate();
            try
            {
                if (newpassword != null)
                {
                    using (EmployeeLoginDataDbContext employeeLoginDataDbContext = new EmployeeLoginDataDbContext())
                    {
                        var oldvalues = await employeeLoginDataDbContext.EmployeeLoginDataDbSet.Where(model => model.empid.Equals(sessionid)).FirstOrDefaultAsync();

                        oldvalues.password = Encrypt(newpassword);
                        await employeeLoginDataDbContext.SaveChangesAsync();

                        MailMessage mailMessage = new MailMessage();
                        mailMessage.To.Add("*****@*****.**");
                        mailMessage.From       = new MailAddress("*****@*****.**");
                        mailMessage.Subject    = "Password Change/Modified";
                        mailMessage.Body       = "Password of Employee ID : " + sessionid + " has been changed/modified recently <br> at <strong>" + DateTime.Now + "<strong>.";
                        mailMessage.IsBodyHtml = true;
                        SmtpClient smtp = new SmtpClient();
                        smtp.Host = "smtp.gmail.com";
                        smtp.Port = 587;
                        smtp.UseDefaultCredentials = false;
                        smtp.Credentials           = new NetworkCredential("*****@*****.**", "{LFTnoreply@ERPsys};"); //username password
                        smtp.EnableSsl             = true;
                        smtp.Send(mailMessage);
                        return(Redirect("/Home/Home/" + sessionid));
                    }
                }
                else
                {
                    return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
                }
            }
            catch
            {
                Response.Write("<script>alert('Server error please try again after sometime');</script>");
            }
            return(View());
        }