示例#1
0
        public async Task <SPSiteCreationDTO> SaveRequestData(SPSiteCreationDTO dto)
        {
            Mapper.Map(dto.MembersList, dto.DomainModel.ITSPSiteMember);
            bool IsAdminChecked = false;

            foreach (var item in dto.MembersList)
            {
                if (item.IsAdmin == true)
                {
                    dto.DomainModel.SiteOwnerEmail = item.MemberEmail;
                    IsAdminChecked = true;
                    break;
                }
            }
            if (IsAdminChecked == false)
            {
                dto.DomainModel.SiteOwnerEmail = dto.DomainModel.EmployeeEmail;
            }
            await AddNewRequest(dto.DomainModel);

            dto.DomainModel.JobId = await KtaService.CreateJobAsync(dto.SessionId, AppConfiguaraton.SPSiteCreationProcessIdID, dto.DomainModel.Id);
            await UpdateKtaJobID(dto.DomainModel.Id, dto.DomainModel.JobId);

            return(dto);
        }
        public async Task <ConsultationCompletionDTO> SaveRequestData(ConsultationCompletionDTO dto)
        {
            if (dto.IsTerminated)
            {
                dto.DomainModel.Status = "Terminated";
            }
            await AddNewRequest(dto.DomainModel);

            dto.DomainModel.JobId = await KtaService.CreateJobAsync(dto.SessionId, AppConfiguaraton.KTAProcessIdConsultationCompletion, dto.DomainModel.Id);

            await UpdateAvailability(dto);

            dto.ConsultantEvaluation = new ConsultantEvaluation();
            await UpdateKtaJobID(dto.DomainModel.Id, dto.DomainModel.JobId);

            dto.ConsultantEvaluation.ConsultationId           = dto.DomainModel.ConsultationRequestId;
            dto.ConsultantEvaluation.ConsultationCompletionId = dto.DomainModel.Id;
            dto.ConsultantEvaluation.Comments        = dto.Comments;
            dto.ConsultantEvaluation.Rating          = dto.Rating;
            dto.ConsultantEvaluation.ConsultantEmail = dto.ConsultantEmail;
            dto.ConsultantEvaluation.EmployeeEmail   = dto.DomainModel.EmployeeEmail;

            await AddEvaluation(dto);

            await _consultantEvaluationService.AddNewRequest(dto.ConsultantEvaluation);



            return(dto);
        }
        public async Task <ConsultationDTO> SaveRequestData(ConsultationDTO dto)
        {
            await AddNewRequest(dto.DomainModel);

            dto.DomainModel.JobId = await KtaService.CreateJobAsync(dto.SessionId, AppConfiguaraton.KTAProcessIdConsultation, dto.DomainModel.Id);

            await UpdateKtaJobID(dto.DomainModel.Id, dto.DomainModel.JobId);

            await AddAvailability(dto);

            var ConsulationViewModel = new NewConsultationViewModel();

            Mapper.Map(dto.DomainModel, ConsulationViewModel);

            var responce = await _uacService.PostConsultationData(ConsulationViewModel);

            if (dto.Attachement != null)
            {
                FileService.UploadRequestFiles(typeof(ConsultationDTO), dto,
                                               AppConfiguaraton.ConsultaionAttachementPath,
                                               dto.DomainModel.JobId, AppConfiguaraton.ConsultaionAttachementListName,
                                               string.Empty, dto.Requester.Username, multiTypes: true,
                                               uploadToSharepoint: true, multi: true);
            }
            return(dto);
        }
        public async Task <ITServerAccessDTO> SaveRequestData(ITServerAccessDTO dto)
        {
            Mapper.Map(dto.ServerDetailsItems, dto.DomainModel.RequiredServersDetails);
            await AddNewRequest(dto.DomainModel);

            logger.LogDebug($"SessionId {dto.SessionId} , process ID {AppConfiguaraton.ITServerAccessProcessID} , DomainModel.Id {dto.DomainModel.Id} ");

            dto.DomainModel.JobId = await KtaService.CreateJobAsync(dto.SessionId, AppConfiguaraton.ITServerAccessProcessID, dto.DomainModel.Id);

            logger.LogDebug($"Create Job ID fired {dto.DomainModel.JobId}");
            await UpdateKtaJobID(dto.DomainModel.Id, dto.DomainModel.JobId);

            logger.LogDebug($"Create Job ID fired {dto.DomainModel.JobId}");
            return(dto);
        }
        public async Task <SoftwareDTO> SaveRequestData(SoftwareDTO dto)
        {
            Mapper.Map(dto.ITSoftwareRequestItems, dto.DomainModel.ITSoftwareRequestItems);

            dto.DomainModel.RDate = DateTime.Now;
            await AddNewRequest(dto.DomainModel);

            logger.LogDebug($"SessionId {dto.SessionId} , process ID {AppConfiguaraton.ITSoftwareProcessID} , DomainModel.Id {dto.DomainModel.Id} ");

            dto.DomainModel.JobId = await KtaService.CreateJobAsync(dto.SessionId, AppConfiguaraton.ITSoftwareProcessID, dto.DomainModel.Id);

            logger.LogDebug($"Create Job ID fired {dto.DomainModel.JobId}");
            await UpdateKtaJobID(dto.DomainModel.Id, dto.DomainModel.JobId);

            logger.LogDebug($"Create Job ID fired {dto.DomainModel.JobId}");
            return(dto);
        }
        public async Task <EmailGroupDTO> SaveRequestData(EmailGroupDTO dto)
        {
            await AddGroupMemberItems(dto);
            await AddNewRequest(dto.DomainModel);

            logger.LogDebug($"SessionId {dto.SessionId} , process ID {AppConfiguaraton.KTAProcessIdEmailGroup} , DomainModel.Id {dto.DomainModel.Id} ");
            dto.DomainModel.JobId = await KtaService.CreateJobAsync(dto.SessionId, AppConfiguaraton.KTAProcessIdEmailGroup, dto.DomainModel.Id);

            logger.LogDebug($"Create Job ID fired {dto.DomainModel.JobId}");

            await UpdateKtaJobID(dto.DomainModel.Id, dto.DomainModel.JobId);

            logger.LogDebug($"Update Job ID fired {dto.DomainModel.JobId}");


            return(dto);
        }
        public async Task <ITAccountDTO> SaveRequestData(ITAccountDTO dto)
        {
            logger.LogDebug("SaveRequestData method fired with these parameters");
            var config = FactoryManager.Instance.Resolve <ICoreConfigurations>();

            if (dto.DomainModel.IsForTrainee)
            {
                dto.DomainModel.ContractorCompany  = config.TraineeCompany;
                dto.DomainModel.ContractorJobTitle = config.TraineeJobTitle;
                dto.DomainModel.ContractorProject  = config.TraineeProject;
            }
            await AddNewRequest(dto.DomainModel);

            dto.DomainModel.JobId = await KtaService.CreateJobAsync(dto.SessionId, AppConfiguaraton.KTAProcessIdITAccount, dto.DomainModel.Id);

            await UpdateKtaJobID(dto.DomainModel.Id, dto.DomainModel.JobId);

            return(dto);
        }
        public async Task <AdminTranslationDTO> SaveRequestData(AdminTranslationDTO dto)
        {
            logger.LogDebug("SaveRequestData method fired with these parameters");
            dto.DomainModel.NumberOfAttachment = dto.Attachement.Count();
            dto.DomainModel.RequestDate        = DateTime.Now;
            await AddNewRequest(dto.DomainModel);

            dto.DomainModel.JobId = await KtaService.CreateJobAsync(dto.SessionId, AppConfiguaraton.TranslationProcessID, dto.DomainModel.Id);

            await UpdateKtaJobID(dto.DomainModel.Id, dto.DomainModel.JobId);


            FileService.UploadRequestFiles(typeof(AdminTranslationDTO), dto,
                                           AppConfiguaraton.TranslationAttachementPath,
                                           dto.DomainModel.JobId, AppConfiguaraton.TranslationAttachementListName,
                                           string.Empty, dto.Requester.Username, multiTypes: false,
                                           uploadToSharepoint: true, multi: true);


            return(dto);
        }
        public async Task <ITResignationDTO> SaveRequestData(ITResignationDTO dto)
        {
            logger.LogDebug("SaveRequestData method fired with these parameters");

            dto.Requester = await GetResignedEmployeeData(dto.DomainModel.EmployeeEmail);

            if (dto.Requester != null)
            {
                await AddNewRequest(dto.DomainModel);

                logger.LogDebug($"SessionId {dto.SessionId} , process ID {AppConfiguaraton.ITResignationProcessID} , DomainModel.Id {dto.DomainModel.Id} ");

                dto.DomainModel.JobId = await KtaService.CreateJobAsync(dto.SessionId, AppConfiguaraton.ITResignationProcessID, dto.DomainModel.Id);

                await UpdateKtaJobID(dto.DomainModel.Id, dto.DomainModel.JobId);
            }
            else
            {
                logger.LogDebug($"{dto.DomainModel.EmployeeEmail} Resource Not Exist", dto.Requester);
            }

            return(dto);
        }