// CRUD
        public long RegisterUserAccount(UserDto userDto, long userId)
        {
            // gen random string and hash
            var unhashedPassword = CommonHelperAppService.RandomString(8);

            userDto.Password = unhashedPassword;

            var user = Mapper.Map <User>(userDto);

            user.Password = HashPassword(unhashedPassword);

            _unitOfWork.UserRepository.Create(user);
            _unitOfWork.Save();


            // Mail
            MailerService.SendUserRegisteredEmail(userDto);

            // Audit
            _auditLogAppService.Audit(
                AppConstants.ActionTypeCreate,
                AppConstants.UserTableName,
                userId,
                user.Id);

            return(user.Id);
        }
        // CRUD
        public void Create(ResourceDto resourceDto, long userId)
        {
            var resource = Mapper.Map <Resource>(resourceDto);

            _unitOfWork.ResourceRepository.Create(resource);
            _unitOfWork.Save();

            // Audit
            _auditLogAppService.Audit(
                AppConstants.ActionTypeCreate,
                AppConstants.ResourceTableName,
                userId,
                resource.Id);
        }
        // CRUD
        public void Create(SitePersonnelLookupDto sitePersonnelLookupDto, long userId)
        {
            var sitePersonnelLookup = Mapper.Map <SitePersonnelLookup>(sitePersonnelLookupDto);

            _unitOfWork.SitePersonnelLookupRepository.Create(sitePersonnelLookup);
            _unitOfWork.Save();

            // Audit
            _auditLogAppService.Audit(
                AppConstants.ActionTypeCreate,
                AppConstants.SitePersonnelLookupTableName,
                userId,
                sitePersonnelLookup.Id);
        }
示例#4
0
        // CRUD
        public void Create(PersonnelLeaveProfileDto personnelLeaveProfileDto, long userId)
        {
            var leaveProfile = Mapper.Map <PersonnelLeaveProfile>(personnelLeaveProfileDto);

            _unitOfWork.PersonnelLeaveProfileRepository.Create(leaveProfile);
            _unitOfWork.Save();

            // Audit
            _auditLogAppService.Audit(
                AppConstants.ActionTypeCreate,
                AppConstants.PersonnelLeaveProfileTableName,
                userId,
                leaveProfile.Id);
        }
        // CRUD
        public void Create(EmployeeTypeDto employeeTypeDto, long userId)
        {
            var employeeType = Mapper.Map <EmployeeType>(employeeTypeDto);

            _unitOfWork.EmployeeTypeRepository.Create(employeeType);
            _unitOfWork.Save();

            // Audit
            _auditLogAppService.Audit(
                AppConstants.ActionTypeCreate,
                AppConstants.EmployeeTypeTableName,
                userId,
                employeeType.Id);
        }
示例#6
0
        // CRUD
        public void Create(GenderDto genderDto, long userId)
        {
            var gender = Mapper.Map <Gender>(genderDto);

            _unitOfWork.GenderRepository.Create(gender);
            _unitOfWork.Save();

            // Audit
            _auditLogAppService.Audit(
                AppConstants.ActionTypeCreate,
                AppConstants.GenderTableName,
                userId,
                gender.Id);
        }
        // CRUD
        public void Create(SubSiteDto subSiteDto, long userId)
        {
            var subSite = Mapper.Map <SubSite>(subSiteDto);

            _unitOfWork.SubSiteRepository.Create(subSite);
            _unitOfWork.Save();

            // Audit
            _auditLogAppService.Audit(
                AppConstants.ActionTypeCreate,
                AppConstants.SubSiteTableName,
                userId,
                subSite.Id);
        }
示例#8
0
        // CRUD
        public void Create(BudgetPeriodDto budgetPeriodDto, long userId)
        {
            var budgetPeriod = Mapper.Map <BudgetPeriod>(budgetPeriodDto);

            _unitOfWork.BudgetPeriodRepository.Create(budgetPeriod);
            _unitOfWork.Save();

            // Audit
            _auditLogAppService.Audit(
                AppConstants.ActionTypeCreate,
                AppConstants.BudgetPeriodTableName,
                userId,
                budgetPeriod.Id);
        }
示例#9
0
        // CRUD
        public void Create(SystemAccessRoleDto systemAccessRoleDto, long userId)
        {
            var systemAccessRole = Mapper.Map <SystemAccessRole>(systemAccessRoleDto);

            _unitOfWork.SystemAccessRoleRepository.Create(systemAccessRole);
            _unitOfWork.Save();

            // Audit
            _auditLogAppService.Audit(
                AppConstants.ActionTypeCreate,
                AppConstants.SystemAccessRoleTableName,
                userId,
                systemAccessRole.Id);
        }
        // CRUD
        public void Create(LeaveTypeDto leaveTypeDto, long userId)
        {
            var leaveType = Mapper.Map <LeaveType>(leaveTypeDto);

            _unitOfWork.LeaveTypeRepository.Create(leaveType);
            _unitOfWork.Save();

            // Audit
            _auditLogAppService.Audit(
                AppConstants.ActionTypeCreate,
                AppConstants.LeaveTypeTableName,
                userId,
                leaveType.Id);
        }
        // CRUD
        public void Create(ContractDto contractDto, long userId)
        {
            var contract = Mapper.Map <Contract>(contractDto);

            _unitOfWork.ContractRepository.Create(contract);
            _unitOfWork.Save();

            // Audit
            _auditLogAppService.Audit(
                AppConstants.ActionTypeCreate,
                AppConstants.ContractTableName,
                userId,
                contract.Id);
        }
        // CRUD
        public void Create(CompanyDto compannyDto, long userId)
        {
            var company = Mapper.Map <Company>(compannyDto);

            _unitOfWork.CompanyRepository.Create(company);
            _unitOfWork.Save();

            // Audit
            _auditLogAppService.Audit(
                AppConstants.ActionTypeCreate,
                AppConstants.CompanyTableName,
                userId,
                company.Id);
        }
示例#13
0
        // CRUD
        public void Create(ShiftTypeDto shiftTypeDto, long userId)
        {
            var shiftType = Mapper.Map <ShiftType>(shiftTypeDto);

            _unitOfWork.ShiftTypeRepository.Create(shiftType);
            _unitOfWork.Save();

            // Audit
            _auditLogAppService.Audit(
                AppConstants.ActionTypeCreate,
                AppConstants.ShiftTypeTableName,
                userId,
                shiftType.Id);
        }
示例#14
0
        // CRUD
        public void Create(CalendarDto calendarDto, long userId)
        {
            var calendar = Mapper.Map <Calendar>(calendarDto);

            _unitOfWork.CalendarRepository.Create(calendar);
            _unitOfWork.Save();

            // Audit
            _auditLogAppService.Audit(
                AppConstants.ActionTypeCreate,
                AppConstants.CalendarTableName,
                userId,
                calendar.Id);
        }
示例#15
0
        // CRUD
        public void Create(ResourceRateModifierDto rateModifierDto, long userId)
        {
            var rateModifier = Mapper.Map <ResourceRateModifier>(rateModifierDto);

            _unitOfWork.ResourceRateModifierRepository.Create(rateModifier);
            _unitOfWork.Save();

            // Audit
            _auditLogAppService.Audit(
                AppConstants.ActionTypeCreate,
                AppConstants.ResourceRateModifierTableName,
                userId,
                rateModifier.Id);
        }
示例#16
0
        // CRUD
        public long Create(CalendarResourceRequirementDto calendarResourceRequirementDto, long userId)
        {
            var calResRq = Mapper.Map <CalendarResourceRequirement>(calendarResourceRequirementDto);

            _unitOfWork.CalendarResourceRequirementRepository.Create(calResRq);
            _unitOfWork.Save();

            // Audit
            _auditLogAppService.Audit(
                AppConstants.ActionTypeCreate,
                AppConstants.CalendarResourceRequirementTableName,
                userId,
                calResRq.Id);

            return(calResRq.Id);
        }
示例#17
0
        // CRUD
        public void Update(UserDto userDto, long userId)
        {
            var user = _unitOfWork.UserRepository.GetById(userDto.Id);

            CommonHelperAppService.MapDtoToEntityForUpdating(userDto, user);

            _unitOfWork.UserRepository.Update(user);
            _unitOfWork.Save();

            // Audit
            _auditLogAppService.Audit(
                AppConstants.ActionTypeUpdate,
                AppConstants.UserTableName,
                userId,
                user.Id);
        }
        // CRUD
        public void Create(ShiftDto shiftDto, long userId)
        {
            var shift = Mapper.Map <Shift>(shiftDto);

            _unitOfWork.ShiftRepository.Create(shift);
            _unitOfWork.Save();

            // Audit
            _auditLogAppService.Audit(
                AppConstants.ActionTypeCreate,
                AppConstants.ShiftTableName,
                userId,
                shift.Id);

            // TEMP FOR BALDOCK
            //SendTempEmailToMaddie(shiftDto);
        }
        // CRUD
        public void Create(ShiftProfileDto shiftProfileDto, long userId)
        {
            shiftProfileDto.HoursWorked =
                CommonHelperAppService.ReturnCalculatedTimespanBetweenTwoDateTimeObjects(
                    shiftProfileDto.ActualStartDateTime, shiftProfileDto.ActualEndDateTime, shiftProfileDto.Status);

            var shiftProfile = Mapper.Map <ShiftProfile>(shiftProfileDto);

            _unitOfWork.ShiftProfileRepository.Create(shiftProfile);
            _unitOfWork.Save();

            // Audit
            _auditLogAppService.Audit(
                AppConstants.ActionTypeCreate,
                AppConstants.ShiftProfileTableName,
                userId,
                shiftProfile.Id);

            UpdateAndDeleteNoShow(shiftProfileDto.ShiftId, userId);
        }
示例#20
0
        public void Create(TimeAdjustmentFormDto timeAdjustmentFormDto, long userId)
        {
            var timeAdjustmentForm = Mapper.Map <TimeAdjustmentForm>(timeAdjustmentFormDto);

            _unitOfWork.TimeAdjustmentFormRepository.Create(timeAdjustmentForm);
            _unitOfWork.Save();

            // trip IsModified flag to remove from User Dash
            var shiftProfile = _unitOfWork.ShiftProfileRepository.GetById(timeAdjustmentFormDto.ShiftProfileId);

            shiftProfile.IsModified = true;
            _unitOfWork.ShiftProfileRepository.Update(shiftProfile);
            _unitOfWork.Save();


            // Audit
            _auditLogAppService.Audit(
                AppConstants.ActionTypeCreate,
                AppConstants.TimeAdjustmentFormTableName,
                userId,
                timeAdjustmentForm.Id);
        }
        public void Update(UserDefinedSystemConfigDto udscDto, long userId)
        {
            var systemConfig = _unitOfWork.UserDefinedSystemConfigRepository.GetById(udscDto.Id);

            CommonHelperAppService.MapDtoToEntityForUpdating(udscDto, systemConfig);

            _unitOfWork.UserDefinedSystemConfigRepository.Update(systemConfig);
            _unitOfWork.Save();

            // Audit
            _auditLogAppService.Audit(
                AppConstants.ActionTypeUpdate,
                AppConstants.UserDefinedSystemConfigTableName,
                userId,
                systemConfig.Id);
        }
        // CRUD
        public int Create(LeaveRequestDto leaveRequestDto, long userId)
        {
            if (CheckIfStaffOnShift(leaveRequestDto))
            {
                return((int)StaffOn.Shift);
            }

            if (CheckIfStaffOnAnnual(leaveRequestDto))
            {
                return((int)StaffOn.Annual);
            }

            if (CheckIfStaffOnMaternity(leaveRequestDto))
            {
                return((int)StaffOn.Maternity);
            }

            if (CheckIfStaffOnPaternity(leaveRequestDto))
            {
                return((int)StaffOn.Paternity);
            }

            if (CheckIfStaffOnSick(leaveRequestDto))
            {
                return((int)StaffOn.Sick);
            }

            if (CheckIfStaffOnSuspension(leaveRequestDto))
            {
                return((int)StaffOn.Suspension);
            }

            if (CheckIfStaffOnOther(leaveRequestDto))
            {
                return((int)StaffOn.Other);
            }

            if (CheckIfStaffOnTraining(leaveRequestDto))
            {
                return((int)StaffOn.Training);
            }


            // All good, so go ahead and create
            var leaveRequest = Mapper.Map <LeaveRequest>(leaveRequestDto);

            _unitOfWork.LeaveRequestRepository.Create(leaveRequest);
            _unitOfWork.Save();

            // Audit
            _auditLogAppService.Audit(
                AppConstants.ActionTypeCreate,
                AppConstants.LeaveRequestTableName,
                userId,
                leaveRequest.Id);

            // Email Manager for Approval (no need if coming via admin route?)
            //MailerService.SendLeaveRequestEmail(leaveRequestDto);

            return((int)StaffOn.None);
        }