private async Task <ITResignationDTO> AddResignationItems(ITResignationDTO dto) { var resignatoinItemStatus = new List <ITResignationItemStatus>(); foreach (var item in dto.ItemStatus) { if (dto.ManagerDecision != null && dto.ManagerDecision.Id == ((int)EnumITStatus.Executed).ToString()) { if (item.Status == null) { item.Status = ((int)EnumITStatus.Executed).ToString(); } } else if (dto.ManagerDecision != null && dto.ManagerDecision.Id == ((int)EnumITStatus.NotExecuted).ToString()) { if (item.Status == null) { item.Status = ((int)EnumITStatus.NotExecuted).ToString(); } } item.RequestId = dto.DomainModel.Id; item.UpdatedBy = dto.Requester.Username; item.Status = ((EnumITStatus)int.Parse(item.Status)).ToString(); var tobeAdded = Mapper.Map <ITResignationItemStatus>(item); resignatoinItemStatus.Add(tobeAdded); } dto.DomainModel.ITResignationItemStatus = resignatoinItemStatus; await _itResignationItemStatusService.AddMultiple(dto.DomainModel.ITResignationItemStatus.ToList()); return(dto); }
public async Task <ITResignationDTO> ProcessRequest(ITResignationDTO dto) { logger.LogDebug($"ProcessRequest method fired {dto.JobID} and {dto.NodeID}"); logger.LogDebug($"TakeActivity method fired {dto.SessionId} and {dto.DomainModel.JobId} and { dto.NodeID} and {dto.EPC}"); if (dto.activity == null) { dto.activity = await KtaService.TakeActivityAsync(dto.SessionId, dto.DomainModel.JobId, dto.NodeID, dto.EPC); } if (dto.activity.Identity.NodeId == dto.NodeID && (dto.activity.Identity.NodeId == ConstantNodes.NodeId_SharePoint || dto.activity.Identity.NodeId == ConstantNodes.NodeId_VPN || dto.activity.Identity.NodeId == ConstantNodes.NodeId_Email_AD || dto.activity.Identity.NodeId == ConstantNodes.NodeId_Software_Licenses || dto.activity.Identity.NodeId == ConstantNodes.NodeId_SFTP || dto.activity.Identity.NodeId == ConstantNodes.NodeId_ERP || dto.activity.Identity.NodeId == ConstantNodes.NodeId_FAX || dto.activity.Identity.NodeId == ConstantNodes.NodeId_TelePhone || dto.activity.Identity.NodeId == ConstantNodes.NodeId_Port || dto.activity.Identity.NodeId == ConstantNodes.NodeId_Muraslat)) { await AddResignationItems(dto); } logger.LogDebug($"CompleteActivity method fired SessionId {dto.SessionId} and Username {dto.Requester.Username} and Id { dto.ManagerDecision.Id} and Comment {dto.ManagerDecision.Comment} and Identity {dto.activity.Identity}"); await KtaService.CompleteActivityAsync(dto.SessionId, dto.Requester.Username, dto.ManagerDecision.Id, dto.ManagerDecision.Comment, dto.activity.Identity); 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); }
private async Task <ITResignationDTO> PrepareDTO(RequestDataModel data, bool reviewMode = false) { ITResignationDTO dto = new ITResignationDTO(); dto.DomainModel = FindOneByJobId(data.JobId); if (reviewMode == true) { var nodeItems = _itResignationItemStatusService.GetQuerable().Where(x => x.RequestId == dto.DomainModel.Id).Include(x => x.ITResignationItem); dto.ItemStatus = Mapper.Map <List <ITResignationStatusModel> >(nodeItems); } else { var nodeItems = _itResingantionItemService.Find(x => x.NodeId == data.NodeId); dto.ItemStatus = Mapper.Map <List <ITResignationStatusModel> >(nodeItems); } dto.Requester = await GetResignedEmployeeData(dto.DomainModel.EmployeeEmail); return(dto); }