Exemple #1
0
        // GET: List of Employees
        //Initial Page Load, checks Session Role, returns List of employees based on role and role parameters
        public ActionResult ViewEmployees(EmployeeVM employee)
        {
            //This view is not accessable to regular employees
            //if (!string.IsNullOrEmpty((string)Session["Roles"]))
            //{
            //    if (Session["Roles"].ToString().ToUpper().Trim().Contains("DIRECTOR") || Session["Roles"].ToString().ToUpper().Trim().Contains("ADMINISTRATOR"))
            //    {
            return(View(EmployeeMap.ReadEmployees()));
            //    }

            //    /*Service managers will team Leads and employees for specific Client AND Location*/
            //    else if (Session["Roles"].ToString().ToUpper().Trim().Contains("SERVICEMANAGER"))
            //    {
            //        return View(/*Returns a List of employees*/);
            //    }
            //    //else if (Session["Roles"].ToString().ToUpper().Trim().Contains("SERVICEMANAGER"))
            //    //{
            //        //return View(/*Returns a List of employees*/);
            //    //}

            //    /*Team Leads can only see employees within Team AND Location */
            //    else
            //        return View(/*Returns a List of employees*/);
            //}
            ////Else returns to Login if session is null or empty
            //else
            //    return RedirectToAction("", "", new { area = "" });
        }
Exemple #2
0
        public ActionResult CreateAssessment()
        {
            AssessmentVM assessment = new AssessmentVM();

            assessment.EmployeeList = EmployeeMap.ReadEmployees();
            return(View(assessment));
        }
        public HttpResponseMessage Bind([FromBody] EmployeeMap emp)
        {
            if (emp == null || string.IsNullOrEmpty(emp.Alias) || string.IsNullOrEmpty(emp.Captcha))
            {
                return(Request.CreateResponse(HttpStatusCode.BadRequest, Error.LackInfo));
            }

            emp.CaptchaExpiresTime = DateTime.UtcNow;
            string sql = @"select * from EmployeeMap where Alias = @Alias and Captcha=@Captcha and CaptchaExpiresTime>@CaptchaExpiresTime";

            try
            {
                using (IDbConnection connection = new SqlConnection(DBHelper.GetConnectionString()))
                {
                    var employeeMaps = connection.Query <EmployeeMap>(sql, emp);

                    if (employeeMaps == null || employeeMaps.Count() == 0)
                    {
                        return(Request.CreateResponse(HttpStatusCode.BadRequest, Error.LackInfo));
                    }
                    else
                    {
                        emp.OpenId = employeeMaps.ToList()[0].OpenId;
                        sql        = @"insert Employee(Alias, OpenId)
                                               values(@Alias, @OpenId)";
                        connection.Execute(sql, emp);
                        return(Request.CreateResponse(HttpStatusCode.OK, emp.OpenId));
                    }
                }
            }
            catch (Exception ex)
            {
                return(Request.CreateResponse(HttpStatusCode.InternalServerError, Error.Server));
            }
        }
Exemple #4
0
 public ActionResult Login(LoginVM info)
 {
     try
     {
         if (info.Email != null && LoginDAL.Login(Mapper.Map <LoginDM>(info)))
         {
             Session["LoggedIn"] = true;
             info.EmployeeId     = LoginDAL.ReadLoginByEmail(info.Email);
             info.Employee       = EmployeeMap.GetEmployeeById(info.EmployeeId);
             info.Role           = Mapper.Map <RolesVM>(RolesDAL.ReadRoleByID(info.Employee.RoleId));
             Session["Role"]     = info.Role.RoleName;
             Session["ID"]       = info.EmployeeId;
             if ((bool)Session["LoggedIn"])
             {
                 if ((string)Session["Role"] == "ADMIN" || ((string)Session["Role"] == "DIRECTOR"))
                 {
                     Session["Email"] = info.Email;
                     return(RedirectToAction("AdminDashboard", "Home", new { area = "Default" }));
                 }
                 else
                 {
                     Session["Email"] = info.Email;
                     return(RedirectToAction("ReadAccount", "Account", new { area = "Default" }));
                 }
             }
         }
         return(View());
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
Exemple #5
0
        private void DataGridEmployeesRow_MouseDoubleClick(object sender, MouseButtonEventArgs e)
        {
            DataGridRow dgr  = (DataGridRow)sender;
            Employee    empl = (Employee)dgr.Item;
            var         user = companyEntities.Employee.FirstOrDefault(e => e.id == Properties.Settings.Default.IdUser);

            if (empl.idPosition == (int)EnumPosition.Admin && user.idPosition != (int)EnumPosition.Admin)
            {
                return;
            }
            if (empl.idPosition == (int)EnumPosition.OfficeWorker && user.idPosition != (int)EnumPosition.Admin && empl.id != user.id)
            {
                return;
            }
            EmployeeSalary.IsEnabled    = !(Properties.Settings.Default.IdUser == empl.id && empl.idPosition != (int)EnumPosition.Admin);
            EmployeePosition.IsEnabled  = !(Properties.Settings.Default.IdUser == empl.id && empl.idPosition != (int)EnumPosition.Admin);
            BtnDeleteEmployee.IsEnabled = !(Properties.Settings.Default.IdUser == empl.id && empl.idPosition != (int)EnumPosition.Admin);
            if (empl.Address != null && empl.Address.Localization != null)
            {
                EmployeeMap.CheckingPushpin(e, new Location()
                {
                    Latitude = double.Parse(empl.Address.Localization.latitude), Longitude = double.Parse(empl.Address.Localization.longitude)
                });
            }
            DataContext = new EmployeeEditViewModel(empl, this);
            TurnOnOffEmployeePanel(false);
            BtnSaveEmployee.Content      = "Edytuj";
            BtnDeleteEmployee.Visibility = Visibility.Visible;
        }
        public async Task <HttpResponseMessage> GetTicket([FromUri] string code)
        {
            if (string.IsNullOrEmpty(code))
            {
                return(Request.CreateResponse(HttpStatusCode.BadRequest, Error.LackInfo));
            }

            string openid = await OpenIdHelper.GetOpenIdAsync(code);

            //string openid = "o5dhF1EKpj54qs6-GNoYtLPUSUOA";
            if (string.IsNullOrEmpty(openid))
            {
                return(Request.CreateResponse(HttpStatusCode.BadRequest, Error.LackInfo));
            }

            EmployeeMap employeeMap = new EmployeeMap();

            employeeMap.OpenId = openid;
            employeeMap.Code   = code;

            string sql = @"select * from Employee where OpenId = @OpenId";

            try
            {
                using (IDbConnection connection = new SqlConnection(DBHelper.GetConnectionString()))
                {
                    var employeeMaps = connection.Query <EmployeeMap>(sql, employeeMap);
                    if (employeeMaps == null || employeeMaps.Count() <= 0)
                    {
                        return(Request.CreateResponse(HttpStatusCode.NotFound, Error.NotFound));
                    }

                    sql = @"select top 1 * from AccessToken order by ExpireTime desc";
                    var tickets = connection.Query <AccessToken>(sql);
                    if (tickets == null || tickets.Count() <= 0)
                    {
                        return(Request.CreateResponse(HttpStatusCode.NotFound, Error.NotFound));
                    }

                    string noncestr  = ConfigurationManager.AppSettings["noncestr"].ToString();
                    string timestamp = ConfigurationManager.AppSettings["timestamp"].ToString();
                    string url       = HttpContext.Current.Request.UrlReferrer.AbsoluteUri;
                    string ticket    = tickets.ToList()[0].Ticket;

                    string  signature = Sha1Helper.SHA1Encrypt($"jsapi_ticket={ticket}&noncestr={noncestr}&timestamp={timestamp}&url={url}");
                    JObject result    = new JObject();
                    result["sig"]    = signature;
                    result["openid"] = openid;
                    return(Request.CreateResponse(HttpStatusCode.OK, result));
                    //HttpContext.Current.Response.Write(result);
                    //HttpContext.Current.Response.End();
                }
            }
            catch (Exception ex)
            {
                return(Request.CreateResponse(HttpStatusCode.InternalServerError, Error.Server));
            }
        }
        public HttpResponseMessage GetCaptcha([FromUri] Employee emp)
        {
            if (emp == null || string.IsNullOrEmpty(emp.Code) || string.IsNullOrEmpty(emp.Alias))
            {
                return(Request.CreateResponse(HttpStatusCode.BadRequest, Error.LackInfo));
            }

            EmployeeMap employeeMap = new EmployeeMap();

            employeeMap.Alias = emp.Alias;
            employeeMap.Code  = emp.Code;
            employeeMap.CaptchaExpiresTime = DateTime.UtcNow.AddMinutes(30);
            string sql = @"select * from EmployeeMap where Code = @Code";

            try
            {
                using (IDbConnection connection = new SqlConnection(DBHelper.GetConnectionString()))
                {
                    var employeeMaps = connection.Query <EmployeeMap>(sql, employeeMap);

                    if (employeeMaps == null || employeeMaps.Count() == 0)
                    {
                        return(Request.CreateResponse(HttpStatusCode.InternalServerError, Error.Server));
                    }
                    else
                    {
                        Random        random        = new Random();
                        StringBuilder stringBuilder = new StringBuilder();
                        for (int i = 0; i < 6; i++)
                        {
                            stringBuilder.Append(random.Next() % 10);
                        }

                        employeeMap.Captcha = stringBuilder.ToString();

                        //database
                        sql = @"update EmployeeMap set Alias = @Alias, Captcha = @Captcha, CaptchaExpiresTime = @CaptchaExpiresTime where Code = @Code";
                        connection.Execute(sql, employeeMap);

                        //email
                        CaptchaMessage message = new CaptchaMessage()
                        {
                            Alias = employeeMap.Alias, Captcha = employeeMap.Captcha
                        };

                        MessageHelper.SendMessage(message);

                        //SendEmail(employeeMap.Alias, employeeMap.Captcha);
                        return(Request.CreateResponse(HttpStatusCode.OK));
                    }
                }
            }
            catch (Exception ex)
            {
                return(Request.CreateResponse(HttpStatusCode.InternalServerError, Error.Server));
            }
        }
Exemple #8
0
 public ActionResult CreateEmployee(EmployeeVM employee)
 {
     try
     {
         EmployeeMap.CreateEmployee(employee);
         return(RedirectToAction("Register", "Login", new { area = "Default" }));
     }
     catch
     {
         return(View());
     }
 }
Exemple #9
0
 public ActionResult AccountCreation(EmployeeVM employee)
 {
     EmployeeMap.CreateEmployee(employee);
     employee.EmployeeId     = EmployeeMap.GetEmployeeId(employee.EmployeeNumber);
     employee.Login.Email    = employee.Address.Email;
     employee.Login.Salt     = Convert.ToBase64String(Salt.GenerateSalt());
     employee.Login.Password = ORA_Data.Hash.GetHash(employee.Login.Password + employee.Login.Salt);
     LoginDAL.Register(Mapper.Map <LoginDM>(employee.Login), employee.EmployeeId);
     AddressDAL.CreateAddress(Mapper.Map <AddressDM>(employee.Address), employee.EmployeeId);
     Work_StatusDAL.CreateStatus(Mapper.Map <StatusDM>(employee.Status), employee.EmployeeId);
     TimeDAL.CreateEmptyTime(employee.EmployeeId);
     return(View());
 }
Exemple #10
0
        private void TurnOnOffEmployeePanel(bool isOff)
        {
            if (isOff)
            {
                EmployeeScrollViewer.Visibility = Visibility.Hidden;
                EmployeeMap.ClearAllMap();
            }
            else
            {
                EmployeeScrollViewer.Visibility = Visibility.Visible;
            }

            PanelEmployees.IsEnabled = isOff;
        }
Exemple #11
0
 private void AddEmployee_CanExecute(object sender, CanExecuteRoutedEventArgs e)
 {
     if (EmployeeMap.GetPushpinLocation() == null)
     {
         e.CanExecute = false;
         MapBorder.BorderThickness = new Thickness(1);
     }
     else
     {
         e.CanExecute = _noOfErrorsOnScreen == 0;
         MapBorder.BorderThickness = new Thickness(0);
     }
     e.Handled = true;
 }
        public void TestCreateMapForInheritingClass([Values(false, true)] bool includeBaseProperties)
        {
            //--Act
            var employeeMap = new EmployeeMap(includeBaseProperties);

            DisplayTableMapColumns(employeeMap);

            //--Assert
            Assert.AreEqual("Employee", employeeMap.TableName);

            if (includeBaseProperties)
            {
                TestId();
            }
            else
            {
                Assert.Throws <KeyNotFoundException>(() => TestId(), "Id should not be mapped");
            }

            void TestId()
            {
                var id = employeeMap[x => x.Id];

                Assert.AreEqual("Id", id.ColumnName);
                Assert.AreEqual(ColumnBehavior.Key | ColumnBehavior.Generated, id.Behavior);
                Assert.AreEqual(SqlOperation.Insert | SqlOperation.Update, id.IgnoreOperations);
            }

            var userId = employeeMap[x => x.UserId];

            Assert.AreEqual("UserId", userId.ColumnName);
            Assert.AreEqual(ColumnBehavior.Key, userId.Behavior);
            Assert.AreEqual(SqlOperation.Update, userId.IgnoreOperations);

            var companyId = employeeMap[x => x.CompanyId];

            Assert.AreEqual("CompanyId", companyId.ColumnName);
            Assert.AreEqual(ColumnBehavior.Basic, companyId.Behavior);
            Assert.AreEqual(SqlOperation.None, companyId.IgnoreOperations);
        }
Exemple #13
0
 protected override void OnModelCreating(DbModelBuilder modelBuilder)
 {
     EmployeeMap.Map(modelBuilder);
     DepartmentMap.Map(modelBuilder);
 }
Exemple #14
0
 public ActionResult DeleteEmployee(int employeeId)
 {
     return(View(Mapper.Map <EmployeeVM>(EmployeeMap.GetEmployeeById(employeeId))));
 }
Exemple #15
0
 public ActionResult UpdateEmployee(EmployeeVM employee)
 {
     EmployeeMap.UpdateEmployee(employee);
     ModelState.Clear();
     return(RedirectToAction("ViewEmployees"));
 }
Exemple #16
0
 public ActionResult EmployeeDetails(int id)
 {
     return(View(Mapper.Map <EmployeeVM>(EmployeeMap.GetEmployeeById(id))));
 }
Exemple #17
0
 public ActionResult DeleteEmployee(EmployeeVM employee)
 {
     EmployeeMap.DeleteEmployee(employee);
     return(RedirectToAction("ViewEmployees"));
 }
Exemple #18
0
 private void EmployeeMap_MouseDoubleClick(object sender, MouseButtonEventArgs e)
 {
     e.Handled = true;
     EmployeeMap.ClearAllMap();
     EmployeeMap.CheckingPushpin(e);
 }