示例#1
0
        public async Task <IActionResult> WorkPlace(Employee_OldWorkPlace_WorkPlace _workplace)
        {
            if (ModelState.IsValid)
            {
                context.WorkPlaces.Add(_workplace.GetWorkPlace);
                await context.SaveChangesAsync();

                return(RedirectToAction("Profile", new { id = _workplace.GetWorkPlace.EmployeeId }));
            }
            return(View());
        }
示例#2
0
        public async Task <IActionResult> Profile(int id)
        {
            List <SelectListItem> departments = new List <SelectListItem>();
            AppUser user = await userManager.FindByNameAsync(User.Identity.Name);

            int companyId = await context.WorkPlaces.Where(x => x.EmployeeId == user.EmployeeId).Select(x => x.Branch.CompanyId).FirstOrDefaultAsync();

            var departmentId = context.CompanyDepartments
                               .Where(x => x.CompanyId == companyId)
                               .Select(x => x.DepartmentId);

            foreach (var item in departmentId)
            {
                var _departments = context.Departments.Where(x => x.Id == item).Select(x => new SelectListItem {
                    Text = x.Name, Value = x.Id.ToString()
                }).ToList();

                departments.AddRange(_departments);
            }

            Employee employe = context.Employees.Include(x => x.OldWorkPlaces).Include(x => x.WorkPlaces).Where(x => x.Id == id).Select(x => x).FirstOrDefault();

            var WorkplaceModel = context.WorkPlaces.Where(x => x.EmployeeId == id)
                                 .Join(context.Positions, w => w.PositionId, p => p.Id, (w, p) => new { w.Id, w.BranchId, w.EntryDate, w.ExitDate, p.Namme, p.DepartmentId })
                                 .Join(context.Branches, w => w.BranchId, b => b.Id, (w, b) => new { w.DepartmentId, w.Id, w.EntryDate, w.ExitDate, w.Namme, b.Name })
                                 .Join(context.Departments, w => w.DepartmentId, d => d.Id,
                                       (w, d) => new WorkPlace_Model
            {
                EntryDate = w.EntryDate, ExitDate = w.ExitDate, Id = w.Id, BranchName = w.Name, PositionNamme = w.Namme, DepartmentName = d.Name
            }).ToList();


            Employee_OldWorkPlace_WorkPlace employee_OldWorkPlace_WorkPlace = new Employee_OldWorkPlace_WorkPlace()
            {
                Employee = employe,
                Branches = context.Branches.Where(x => x.CompanyId == companyId).Select(x => new SelectListItem {
                    Text = x.Name, Value = x.Id.ToString()
                }).ToList(),
                Departments      = departments,
                workPlace_Models = WorkplaceModel
            };

            return(View(employee_OldWorkPlace_WorkPlace));
        }