Esempio n. 1
0
        public async Task <VisitorResponse> Create([FromBody] CreateVisitorRequest request)
        {
            JsonConvert.SerializeObject(DateTime.UtcNow);
            var cmd = new CreateVisitorCommand(request);
            await _cqrsDispatcher.ExecuteCommand(cmd, null, new CancellationToken());

            var query    = new GetVisitorQuery(cmd.Id);
            var response = await _cqrsDispatcher.ExecuteQuery <GetVisitorQuery, VisitorResponse>(query, null, new CancellationToken());

            return(response);
        }
Esempio n. 2
0
        public IActionResult Create([FromBody] CreateVisitorRequest request)
        {
            VisitorModel visitor = _visitorManager.CreateVisitor(request.LinkId,
                                                                 request.IPAddress,
                                                                 request.UserAgent,
                                                                 request.OSInfo,
                                                                 request.DeviceInfo,
                                                                 request.BrowserInfo);

            if (visitor == null)
            {
                return(BadRequest());
            }

            return(CreatedAtAction(nameof(GetById), new { id = visitor.Id }, null));
        }
Esempio n. 3
0
        public CreateVisitorCommand(CreateVisitorRequest request)
        {
            if (request == null)
            {
                throw new ArgumentNullException(nameof(request), "Не переданы данные для создания");
            }

            Id          = ObjectId.GenerateNewId().ToString();
            FirstName   = request.FirstName;
            LastName    = request.LastName;
            MiddleName  = request.MiddleName;
            PhoneNumber = request.PhoneNumber;
            Description = request.Description;
            Meeting     = request.Meeting;
            DateFrom    = request.DateFrom;
            DateTo      = request.DateTo;
            Floors      = request.Floors;
        }
Esempio n. 4
0
        /// <inheritdoc />
        public Task CreateVisitorAsync(string visitId, VisitorDetails visitor)
        {
            if (string.IsNullOrEmpty(visitId))
            {
                throw new ArgumentException("Visit Id has to be set.", nameof(visitId));
            }

            if (visitor == null)
            {
                throw new ArgumentException("Visitor details has to be set.", nameof(visitor));
            }

            var request = new CreateVisitorRequest
            {
                VisitId = visitId,
                Visitor = visitor
            };

            return(PostAsync <object>($"{TrackingEndpointRoutePrefix}/visitor", JsonConvert.SerializeObject(request)));
        }