Esempio n. 1
0
        public List <EmployeeDepartmentViewModel> GetEmployeeDepartment()
        {
            SqlConnection connection = new SqlConnection(connectionString);
            SqlCommand    command    = new SqlCommand("sPGetEmployeeDepartments", connection);

            command.CommandType = CommandType.StoredProcedure;
            connection.Open();
            SqlDataReader reader = command.ExecuteReader();
            List <EmployeeDepartmentViewModel> employeeDepartmentList = new List <EmployeeDepartmentViewModel>();

            while (reader.Read())
            {
                int      employeeId     = Convert.ToInt32(reader["EmployeeId"]);
                string   employeeName   = reader["EmployeeName"].ToString();
                string   Designation    = reader["Designation"].ToString();
                string   NID            = reader["NID"].ToString();
                string   BloodGroup     = reader["BloodGroup"].ToString();
                DateTime JoiningDate    = Convert.ToDateTime(reader["JoiningDate"]);
                int      DepartmentId   = Convert.ToInt32(reader["Departmentid"]);
                string   code           = reader["Code"].ToString();
                string   departmentName = reader["DepartmentName"].ToString();

                EmployeeDepartmentViewModel em = new EmployeeDepartmentViewModel(employeeId, employeeName, Designation, NID, JoiningDate, BloodGroup, DepartmentId, code, departmentName);
                employeeDepartmentList.Add(em);
            }
            reader.Close();
            connection.Close();
            return(employeeDepartmentList);
        }
        public List <EmployeeDepartmentViewModel> GetEmployeeDepartmentViewModels()
        {
            List <EmployeeDepartmentViewModel> employeeDepartmentViewModelList = new List <EmployeeDepartmentViewModel>();

            SqlConnection connection = new SqlConnection(conString);
            SqlCommand    command    = new SqlCommand("sPGetEmployeesWithDepartment", connection);

            command.CommandType = CommandType.StoredProcedure;
            connection.Open();

            SqlDataReader reader = command.ExecuteReader();

            while (reader.Read())
            {
                int      employeeId  = Convert.ToInt32(reader["EmployeeId"]);
                string   name        = reader["EmployeeName"].ToString();
                string   designation = reader["Designation"].ToString();
                string   nid         = reader["NID"].ToString();
                DateTime joiningDate = Convert.ToDateTime(reader["JoiningDate"]);
                string   bloodGroup  = reader["BloodGroup"].ToString();
                int      deptId      = Convert.ToInt32(reader["DepartmentId"]);
                string   deptName    = reader["DepartmentName"].ToString();
                string   code        = reader["Code"].ToString();

                EmployeeDepartmentViewModel viewModel = new EmployeeDepartmentViewModel(employeeId, name, designation, nid, joiningDate, bloodGroup, deptId, deptName, code);
                employeeDepartmentViewModelList.Add(viewModel);
            }

            reader.Close();
            connection.Close();

            return(employeeDepartmentViewModelList);
        }
Esempio n. 3
0
        public async Task <IActionResult> AssignEmployeeDepartments([FromBody] EmployeeDepartmentViewModel vm)
        {
            var response = new ResposeViewModel();

            try
            {
                foreach (var deptId in vm.DepartmentIds)
                {
                    var ed = new DepartmentEmployeeModel()
                    {
                        DepartmentId = deptId,
                        EmployeeId   = vm.EmployeeId,
                        AssignedDate = DateTime.UtcNow,
                        IsActive     = true
                    };

                    _departmentContext.Add(ed);

                    await _departmentContext.SaveChangesAsync();
                }

                response.IsSuccess = true;
            }
            catch (Exception ex)
            {
                response.Message = ex.ToString();
            }

            return(Ok(response));
        }
Esempio n. 4
0
        public ActionResult Create(EmployeeDepartmentViewModel viewModel)
        {
            try
            {
                using (SqlConnection conn = Connection)
                {
                    conn.Open();
                    using (SqlCommand cmd = conn.CreateCommand())
                    {
                        cmd.CommandText = @"INSERT INTO Employee
                ( FirstName, LastName, DepartmentId )
                VALUES
                ( @firstName, @lastName, @departmentId )";
                        cmd.Parameters.Add(new SqlParameter("@firstName", viewModel.employee.FirstName));
                        cmd.Parameters.Add(new SqlParameter("@lastName", viewModel.employee.LastName));

                        cmd.Parameters.Add(new SqlParameter("@departmentId", viewModel.employee.DepartmentId));
                        cmd.ExecuteNonQuery();

                        return(RedirectToAction(nameof(Index)));
                    }
                }
            }
            catch
            {
                return(View());
            }
        }
        public async Task <IActionResult> AddNewEmployee([FromBody] EmployeeViewModel emp)
        {
            if (emp == null)
            {
                return(BadRequest("EMployee cann't be null"));
            }

            if (emp.Departments == null || !emp.Departments.Any())
            {
                return(BadRequest("Employee must assigned to at least one department"));
            }

            var newEmp = new EmployeeModel()
            {
                Email     = emp.Email,
                FirstName = emp.FirstName,
                IsActive  = emp.IsActive,
                LastName  = emp.LastName
            };

            newEmp = await _employeeService.CreateEmployee(newEmp);

            var empDeptVm = new EmployeeDepartmentViewModel()
            {
                EmployeeId    = newEmp.Id,
                DepartmentIds = emp.Departments.Select(d => d.Id).ToList()
            };

            var response = await _departmentService.AssignEmployeeDepartments(empDeptVm);

            emp.Id = newEmp.Id;

            return(Ok(emp));
        }
        public async Task <IActionResult> Details(int id)
        {
            var returnUrl = Request.Headers["Referer"].ToString();

            var employeeDepartment = await _employeeDeparment.GetEmployeeDepartment(id);

            EmployeeDepartmentViewModel department = EmployeeDepartmentViewModelFactory.Details(employeeDepartment, returnUrl);

            return(View("Edit", department));
        }
        public async Task <IActionResult> Delete(EmployeeDepartmentViewModel employeeDepartmentVM)
        {
            await _employeeDeparment.DeleteEmployeeDepartment(employeeDepartmentVM.EmployeeDepartment);

            TempData["message"]     = "Your data has been deleted successfully.";
            TempData["toasterType"] = ToasterType.success;

            //return RedirectToAction(nameof(Index));

            return(Redirect(employeeDepartmentVM.ReturnUrl));
        }
Esempio n. 8
0
        public async Task <ResposeViewModel> AssignEmployeeDepartments(EmployeeDepartmentViewModel vm)
        {
            var empoyeeeDepartment = new StringContent(JsonConvert.SerializeObject(vm), System.Text.Encoding.UTF8, "application/json");
            var response           = await _httpClient.PostAsync(_urls.Department + UrlsConfig.DepartmentOperations.AssignEmployeeDepartments(), empoyeeeDepartment);

            response.EnsureSuccessStatusCode();

            var responseString = await response.Content.ReadAsStringAsync();


            return(JsonConvert.DeserializeObject <ResposeViewModel>(responseString));
        }
        public async Task <IActionResult> Edit(int id, string returnUrl = null)
        {
            if (String.IsNullOrEmpty(returnUrl))
            {
                returnUrl = Request.Headers["Referer"].ToString();
            }

            var employeeDepartment = await _employeeDeparment.GetEmployeeDepartment(id);

            EmployeeDepartmentViewModel deparment = EmployeeDepartmentViewModelFactory.Edit(employeeDepartment, returnUrl);

            return(View("Edit", deparment));
        }
Esempio n. 10
0
        // GET: Employees/Create
        public ActionResult Create()

        {
            using (SqlConnection conn = Connection)
            {
                conn.Open();
                using (SqlCommand cmd = conn.CreateCommand())
                {
                    // Select all the cohorts
                    cmd.CommandText = @"SELECT Department.Id, Department.Name FROM Department";

                    SqlDataReader reader = cmd.ExecuteReader();

                    // Create a new instance of our view model
                    EmployeeDepartmentViewModel viewModel = new EmployeeDepartmentViewModel();
                    while (reader.Read())
                    {
                        // Map the raw data to our cohort model
                        Department department = new Department
                        {
                            Id   = reader.GetInt32(reader.GetOrdinal("Id")),
                            Name = reader.GetString(reader.GetOrdinal("Name"))
                        };

                        // Use the info to build our SelectListItem
                        SelectListItem departmentOptionTag = new SelectListItem()
                        {
                            Text  = department.Name,
                            Value = department.Id.ToString()
                        };

                        // Add the select list item to our list of dropdown options
                        viewModel.departments.Add(departmentOptionTag);
                    }

                    reader.Close();


                    // send it all to the view
                    return(View(viewModel));
                }
            }
        }
        public async Task <IActionResult> Edit([FromForm] EmployeeDepartmentViewModel employeeDepartmentVM)
        {
            if (ModelState.IsValid)
            {
                await _employeeDeparment.UpdateEmployeeDepartment(employeeDepartmentVM.EmployeeDepartment);

                TempData["message"]     = "Your data has been updated successfully.";
                TempData["toasterType"] = ToasterType.success;

                return(RedirectToAction(nameof(Edit), new { id = employeeDepartmentVM.EmployeeDepartment.Id, returnUrl = employeeDepartmentVM.ReturnUrl }));
            }
            else
            {
                TempData["message"]     = "A problem has been ocurred while updating your data.";
                TempData["toasterType"] = ToasterType.info;
            }

            return(View("Edit", EmployeeDepartmentViewModelFactory.Edit(employeeDepartmentVM.EmployeeDepartment, employeeDepartmentVM.ReturnUrl)));
        }
        public async Task <IActionResult> Create([FromForm] EmployeeDepartmentViewModel employeeDepartmentVM)
        {
            if (ModelState.IsValid)
            {
                var newEmployeeDepartment = await _employeeDeparment.AddEmployeeDepartment(employeeDepartmentVM.EmployeeDepartment);

                TempData["message"]     = "Your data has been submitted successfully.";
                TempData["toasterType"] = ToasterType.success;

                //return RedirectToAction(nameof(Index));

                return(RedirectToAction(nameof(Edit), new { id = newEmployeeDepartment.Id, returnUrl = employeeDepartmentVM.ReturnUrl }));
            }

            TempData["message"]     = "A problem has been ocurred while submitting your data.";
            TempData["toasterType"] = ToasterType.info;

            return(View("Edit", EmployeeDepartmentViewModelFactory.Create(employeeDepartmentVM.EmployeeDepartment, employeeDepartmentVM.ReturnUrl)));
        }
Esempio n. 13
0
        public ActionResult Index()
        {
            var employees = _repository.GetEmployees();
            List <EmployeeDepartmentViewModel> evm = new List <EmployeeDepartmentViewModel>();

            foreach (var item in employees)
            {
                EmployeeDepartmentViewModel emp = new EmployeeDepartmentViewModel();
                emp.Id             = item.Id;
                emp.Name           = $"{item.Fname} {item.Mname} {item.Lname}";
                emp.Age            = item.Age ?? 1;
                emp.DepartmentName = item.department.Name;
                evm.Add(emp);
            }
            return(View(evm));
            //return Json(new {
            //Id=1,
            //Fname="Pushpinder",
            //Lname="Kaur"
            //});
        }
Esempio n. 14
0
        public async Task <IActionResult> UpdateDepartment([FromRoute] int id, [FromBody] EmployeeDepartmentViewModel departments)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != departments.EmployeeId)
            {
                return(BadRequest());
            }
            try
            {
                _employee.UpdateEmployeeDepartment(departments);
                return(Ok());
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
        public void UpdateEmployeeDepartment(EmployeeDepartmentViewModel empDep)
        {
            var selectEmployee = (from dept in _db.DepartmentEmployee
                                  where dept.EmployeeID == empDep.EmployeeId
                                  select dept).FirstOrDefault();

            if (selectEmployee == null)
            {
                var assignDepartmentToEmployee = new DepartmentEmployee
                {
                    EmployeeID   = empDep.EmployeeId,
                    DepartmentID = empDep.DepartmentID
                };
                _db.DepartmentEmployee.Add(assignDepartmentToEmployee);
            }
            else
            {
                selectEmployee.DepartmentID = empDep.DepartmentID;
                _db.DepartmentEmployee.Update(selectEmployee);
            }
            _db.SaveChanges();
        }