public void Add(AddActionViewModel clientActionViewModel, Guid clientId)
        {
            ActionViewModel lastNavigation = null;

            if (clientActionViewModel.ActionType == Misc.Common.Enums.ClientActionType.PageNavigation)
            {
                var action = _actionRepository.GetLastClientPageNavigation(clientId);
                if (action != null)
                {
                    lastNavigation = Mapper.Map(_actionRepository.GetLastClientPageNavigation(clientId));
                }
            }
            var entity = Mapper.Map(clientActionViewModel, clientId);

            _actionRepository.Add(entity);
            var currentNavigation = Mapper.Map(entity);

            if (entity.ActionType == Misc.Common.Enums.ClientActionType.PageNavigation)
            {
                var spentSeconds = CalculateSecondsSpentOnPage(lastNavigation, currentNavigation);
                if (spentSeconds == 0)
                {
                    return;
                }
                _timeOnPageRepository.Add(new DAL.Entities.TimeOnPage()
                {
                    SecondsSpent = spentSeconds,
                    Page         = lastNavigation.Url
                });
            }
        }
Beispiel #2
0
        public ActionResult RegisterAction([FromBody] AddActionViewModel action)
        {
            var cookieId = HttpContext.Request.Cookies["Id"];

            if (Guid.TryParse(cookieId, out Guid clientId))
            {
                _statisticsService.Add(action, clientId);
                return(Ok());
            }
            return(BadRequest());
        }
        public ActionResult Add(int id)
        {
            if (!Services.Authorizer.Authorize(StandardPermissions.SiteOwner, T("Not authorized to manage rules")))
            {
                return(new HttpUnauthorizedResult());
            }

            var viewModel = new AddActionViewModel {
                Id = id, Actions = _rulesManager.DescribeActions()
            };

            return(View(viewModel));
        }
Beispiel #4
0
 public static DAL.Entities.Action Map(AddActionViewModel viewModel, Guid clientId)
 {
     return(new DAL.Entities.Action()
     {
         ActionId = Guid.Empty,
         ClientId = clientId,
         ActionType = viewModel.ActionType,
         Url = viewModel.Url,
         FromUrl = String.IsNullOrWhiteSpace(viewModel.FromUrl) ? null : viewModel.FromUrl,
         DateTime = DateTime.Now,
         Description = viewModel.Description,
     });
 }
Beispiel #5
0
        public void ShouldAddActionToNonconformity()
        {
            var nonconformityViewModel = new AddNonconformityViewModel();

            nonconformityViewModel.Description = "Controlled materials stored without proper indication.";
            _nonconformityService.AddNonconformity(nonconformityViewModel);

            var nonconformityId = _nonconformityRepository.GetAll().OrderByDescending(p => p.Id).FirstOrDefault().Id;
            var actionViewModel = new AddActionViewModel();

            actionViewModel.Description = "Training team";
            _nonconformityService.AddAction(nonconformityId, actionViewModel);

            Assert.NotEmpty(_nonconformityRepository.GetAll().OrderByDescending(p => p.Id).FirstOrDefault().Actions);
        }
Beispiel #6
0
        public IActionResult PostActions(int id, [FromBody] AddActionViewModel request)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest());
            }
            ;
            var resultViewModel = _nonconformityService.AddAction(id, request);

            if (!resultViewModel.Success)
            {
                return(NotFound(resultViewModel));
            }
            return(new ObjectResult(resultViewModel));
        }
Beispiel #7
0
        public async Task <IActionResult> AddAction(AddActionViewModel viewModel)
        {
            bool isValid = AppActionType.TryParse(Request.Form["Type"], out AppActionType type);

            if (isValid)
            {
                AppAction action = new AppAction()
                {
                    AppRuleId = viewModel.AppRuleId,
                    Type      = viewModel.Type,
                    Field     = viewModel.Field,
                    Para      = viewModel.Para
                };
                db.AppActions.Add(action);
                await db.SaveChangesAsync();
            }
            return(Ok());
        }
        public ResultViewModel AddAction(int id, AddActionViewModel request)
        {
            var nonconformity = _nonconformityRepository.GetById(id);

            if (nonconformity == null)
            {
                return(new ResultViewModel(false, id, "Nonconformity does not exist!"));
            }
            Action           action           = new Action(id, request.Description);
            ValidationResult validationResult = action.isValid();

            if (!validationResult.IsValid)
            {
                return(new ResultViewModel(false, action.Id, validationResult.ToString()));
            }
            _nonconformityRepository.AddActionToNonconformity(id, action);
            _actionRepository.Add(action);
            return(new ResultViewModel(true, nonconformity.Id, "Action successfully added!"));
        }