Example #1
0
        public async Task <ActionResult <SiteModel> > PostAsync([FromBody] SiteModel model)
        {
            try
            {
                var newSite = _mapper.Map <Site>(model);

                if (!string.IsNullOrWhiteSpace(model.CategoryName))
                {
                    newSite.Category = await _repository.GetCategoryByNameAsync(model.CategoryName);
                }

                if (!string.IsNullOrWhiteSpace(model.RegionName))
                {
                    newSite.Region = await _repository.GetRegionByNameAsync(model.RegionName);
                }

                _repository.Add(newSite);
                if (await _repository.SaveAllAsync())
                {
                    return(CreatedAtRoute("SiteById", new { id = newSite.Id }, _mapper.Map <SiteModel>(newSite)));
                }
                else
                {
                    return(BadRequest());
                }
            }
            catch (Exception ex)
            {
                return(BadRequest($"Failed to create new site: {ex}"));
            }
        }
Example #2
0
        public void Add(SiteModel itemMasterModel)
        {
            Site newSite = new Site();

            newSite.UpdateSite(itemMasterModel);
            _siteRepository.Add(newSite);
        }
        public Task Handle(SiteCreatedEvent message)
        {
            Console.WriteLine("Handling TenantCreatedEvent.");

            Site site = new Site(
                message.Id,
                message.Name,
                message.Description,
                Guid.Parse(message.TenantId)
                );

            try
            {
                _siteRepository.Add(site);
                _siteRepository.SaveChanges();
                Console.WriteLine("SiteCreatedEvent handled.");

                return(Task.CompletedTask);
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
                Console.WriteLine(e.InnerException.Message);
                throw e;
            }
        }
        public async Task <SiteViewModelWithChilds> SaveSite(SiteViewModelWithChilds model)
        {
            Site entity;

            if (model.Id == 0)
            {
                entity           = _deepMapper.Map <Site>(model);
                entity.CreatedAt = DateTime.UtcNow;
                entity           = _siteRepository.Add(entity);
            }
            else
            {
                entity           = _simpleMapper.Map <Site>(model);
                entity.UpdatedAt = DateTime.UtcNow;
                entity           = _siteRepository.Update(entity);
                var modelEndpoints = model.Endpoints.Select(x => x.Id).ToArray();

                var removed = await _endpointRepository.Query()
                              .Where(x => x.SiteId == model.Id && !modelEndpoints.Any(me => me == x.Id)).ToListAsync();

                _endpointRepository.Delete(removed);

                model.Endpoints.ForEach(x => x.SiteId = model.Id);
                var endpoints = _simpleMapper.Map <Endpoint[]>(model.Endpoints);
                endpoints = _endpointRepository.AddOrUpdate(endpoints).ToArray();
            }



            await _uow.CommitAsync();

            var result = _deepMapper.Map <SiteViewModelWithChilds>(entity);

            return(result);
        }
Example #5
0
        public async Task <IActionResult> Index([Bind("SiteID,CustomerID,SiteName,Distance")] Site site)
        {
            var userID = _userManager.GetUserId(User);

            if (ModelState.IsValid)
            {
                var status = site.SiteID == 0 ? 1 : 2;
                site.CustomerID = User.IsInRole("Admin") && userID.Equals(site.CustomerID) ? userID : site.CustomerID;
                if (site.SiteID == 0)
                {
                    await siteRepository.Add(site);
                }
                else
                {
                    await siteRepository.Update(site);
                }
                return(RedirectToAction(nameof(Index), new { id = 0, status, customerID = "" }));
            }
            var sites = await siteRepository.FindAll(userID);

            if (!string.IsNullOrEmpty(site.Text))
            {
                ViewData["SiteList"] = sites.Where(p => p.SiteName.Contains(site.Text));
            }
            else
            {
                ViewData["SiteList"] = sites;
            }
            return(View(site));
        }
Example #6
0
        //Create Site:
        public Site CreateSite(int customerId, int addressId, string name, string phone, string email, bool franchise, bool headQuarters)
        {
            var customer = _repoCustomer.Get(customerId);
            var address  = _repoAddress.Get(addressId);
            var site     = new Site
            {
                CustomerId   = customerId,
                AddressId    = addressId,
                Name         = name,
                Phone        = phone,
                Email        = email,
                Franchise    = franchise,
                HeadQuarters = headQuarters
            };

            _repoSite.Add(site);
            return(site);
        }
        public async Task <IActionResult> AddUrlAsync([FromForm(Name = "url")] string website)
        {
            var site = await _siteRepository.GetByUrl(website);

            if (site == null)
            {
                site = _siteRepository.Add(new Website {
                    Url = website
                });
                await _siteRepository.UnitOfWork.SaveChangesAsync();
            }

            return(Ok(new ApiResponse
            {
                OriginalUrl = site.Url,
                ShortUrl = $"{Request.Scheme}://{Request.Host}{Request.PathBase}/api/shorturl/{site.Id}"
            }));
        }
Example #8
0
 public IActionResult AddSite([Bind] Site site)
 {
     if (ModelState.IsValid)
     {
         try
         {
             _siteRepository.Add(site);
             HttpContext.Session.Set("Data", Encoding.ASCII.GetBytes("Data"));
             //_siteRepository.SaveChangesAsync();
         }
         catch (DbUpdateConcurrencyException)
         {
             throw;
         }
         return(RedirectToAction(nameof(Index)));
     }
     return(View(site));
 }
Example #9
0
        public async Task <bool> SendTasksAsync(int priority, string siteDomain, int seId, int locId, string keywords, string siteUrl = null)
        {
            var httpClient = GetClient(false);

            var postObject = new Dictionary <int, object>();

            var rnd = new Random(DateTime.Now.Millisecond);

            var splited = keywords.Split(new[] { Environment.NewLine }, StringSplitOptions.RemoveEmptyEntries);

            for (var i = 0; i < splited.Length; i++)
            {
                postObject.Add(
                    i,
                    new
                {
                    priority = priority,
                    url      = siteUrl,
                    site     = siteDomain,
                    se_id    = seId,
                    loc_id   = locId,
                    key      = splited[i]
                });
            }

            var taskPostResponse = await httpClient.PostAsync("v2/rnk_tasks_post", new StringContent(JsonConvert.SerializeObject(new { data = postObject })));

            var response = JsonConvert.DeserializeObject <ApiResponseModel <TaskResponse> >(await taskPostResponse.Content.ReadAsStringAsync());

            if (response.Status != "error")
            {
                foreach (var task in response.Results)
                {
                    var dbObject = _mapper.Map <SiteDbo>(task);
                    _repository.Add(dbObject);
                }

                return(true);
            }

            return(false);
        }
Example #10
0
        public async Task <Site> ProvisionSite(TenantId tenantId, string siteName, string siteDescription, string contactName, string primaryTelephone, string secondaryTelephone, string emailAddress, bool active)
        {
            ContactInformation contactInformation = new ContactInformation(contactName, primaryTelephone, secondaryTelephone, emailAddress);

            Site site = new Site(tenantId, siteName, siteDescription, active, contactInformation);

            _siteRepository.Add(site);

            site.UpdateBranding(new byte[] { 0 }, "#", "#", "#", "#");

            await _businessIntegrationEventService.PublishThroughEventBusAsync(new SiteCreatedEvent(
                                                                                   tenantId.Id,
                                                                                   site.Id,
                                                                                   siteName,
                                                                                   siteDescription,
                                                                                   active,
                                                                                   contactInformation.ContactName,
                                                                                   contactInformation.PrimaryTelephone,
                                                                                   contactInformation.SecondaryTelephone));

            return(site);
        }
Example #11
0
        public ActionResult Add(Site site)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    site.CreatedBy = HttpContext.User.Identity.Name;
                    site           = siteRepository.Add(site);
                    return(Redirect("/Sites/"));
                }
                else
                {
                    ViewBag.ErrorMessage = "There is a problem with one of your response.";
                }
            }
            catch (Exception ex)
            {
                ViewBag.ErrorMessage = "An Error Occurred while attempting to save that site.";
            }

            return(View(site));
        }
Example #12
0
        public void RecordSiteOnDB(Dictionary <string, int> dictWords)
        {
            Site site = new Site()
            {
                Uri = CurrentUri.AbsoluteUri
            };

            List <Word> uniqueWords = new List <Word>();

            foreach (var uniqueWord in dictWords)
            {
                uniqueWords.Add(new Word()
                {
                    Name  = uniqueWord.Key,
                    Count = uniqueWord.Value
                });
            }

            site.UniqueWords = uniqueWords;

            _repository.Add(site);
        }
 public bool CreateSite(SiteDto site)
 {
     return(_siteRepository.Add(site));
 }
        public void Add(SiteModel siteModel)
        {
            var site = _mapper.Map <Site>(siteModel);

            _siteRepository.Add(site);
        }