Beispiel #1
0
        public async Task <IActionResult> GetUserList()
        {
            var results = await _userRepo.GetAllAsync();

            var userList = new List <UserVM>();

            foreach (var user in results)
            {
                var deptResults = await _departmentRepo.GetAsync(d => d.DepartmentId == user.DepartmentId);

                var posResults = await _positionRepo.GetAsync(p => p.PositionId == user.PositionId);

                var accountResults = await _accountRepo.GetAsync(a => a.AccountId == user.AccountId);

                var userShiftResults = await _userShiftRepo.GetAsync(u => u.UserId == user.UserId);

                var userShifts = new List <UserShiftVM>();
                foreach (var userShift in userShiftResults)
                {
                    var shiftResults = await _shiftRepo.GetAsync(s => s.ShiftId == userShift.ShiftId);

                    var shiftResult = shiftResults.FirstOrDefault();
                    var shift       = new ShiftVM {
                        ShiftId = shiftResult.ShiftId, TimeSlot = shiftResult.TimeSlot
                    };
                    userShifts.Add(new UserShiftVM {
                        UserShiftId = userShift.UserShiftId, UserId = userShift.UserId, Day = userShift.Day, ShiftId = userShift.ShiftId, Shift = shift
                    });
                }
                userList.Add(new UserVM
                {
                    Id           = user.UserId,
                    AccountId    = user.AccountId,
                    Email        = accountResults.FirstOrDefault().Email,
                    FirstName    = user.FirstName,
                    LastName     = user.LastName,
                    Gender       = user.Gender,
                    DepartmentId = user.DepartmentId,
                    Department   = deptResults.FirstOrDefault().Name,
                    PositionId   = user.PositionId,
                    Position     = posResults.FirstOrDefault().Name,
                    UserShifts   = userShifts
                });
            }
            return(Ok(userList));
        }
Beispiel #2
0
        public async Task <IActionResult> Register([FromBody] RegisterDto regsiterDto)
        {
            var accounts = await _accountRepo.GetAllAsync();

            var res = accounts.FirstOrDefault(a => a.Email == regsiterDto.Email);

            if (res == null)
            {
                var result = await _IdentityService.CreateAccountAsync(regsiterDto);

                if (result != null)
                {
                    var allAccount = await _accountRepo.GetAllAsync();

                    return(Ok(allAccount));
                }
                return(BadRequest(new { message = string.Format("Register failed:: {0}", result.Error) }));
            }
            else
            {
                return(Unauthorized());
            }
        }
Beispiel #3
0
        public async Task <IActionResult> GetLeaveList()
        {
            var results = await _leaveReqRepo.GetAllAsync(u => u.LeaveRequestId,
                                                          u => u.StartDate, u => u.LeaveCategory.LeaveType,
                                                          u => u.EndDate, u => u.IsApproved);

            var userresults = await _userRepo.GetAllAsync(u => u.Department, u => u.FirstName);

            var leaveList = new List <LeaveReqVM>();

            var leaveresults = from leave in results
                               join user in userresults on leave.UserId equals user.UserId
                               select new
            {
                leave.LeaveRequestId,
                leave.StartDate,
                leave.EndDate,
                leave.IsApproved,
                leave.LeaveCategory.LeaveType,
                leave.LeaveCategory.LeaveCategoryId,
                user.UserId,
                user.FirstName,
                user.Department.Name
            };

            foreach (var leaveinfo in leaveresults)
            {
                leaveList.Add(new LeaveReqVM
                {
                    LeaveRequestId  = leaveinfo.LeaveRequestId,
                    UserName        = leaveinfo.FirstName,
                    Dept            = leaveinfo.Name,
                    Leavetype       = leaveinfo.LeaveType,
                    LeaveCategoryId = leaveinfo.LeaveCategoryId,
                    StartDate       = leaveinfo.StartDate,
                    EndDate         = leaveinfo.EndDate,
                    Status          = leaveinfo.IsApproved,
                    UserId          = leaveinfo.UserId
                });
            }

            return(Ok(leaveList));
        }
        public IActionResult GetRegistrations()
        {
            try
            {
                var result = _dbContext.GetAllAsync();

                if (result == null)
                {
                    return(NotFound("No registration records found"));
                }
                else
                {
                    return(Ok(result));
                }
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }
Beispiel #5
0
        public IActionResult GetStudents()
        {
            try
            {
                var result = _dbContext.GetAllAsync();

                if (result == null)
                {
                    return(NotFound("No student records found"));
                }
                else
                {
                    return(Ok(result));
                }
            }
            catch (System.Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }
Beispiel #6
0
        public async Task <IActionResult> GetUserAccountList()
        {
            var accounts = await _accountRepo.GetAllAsync();

            return(Ok(accounts));
        }