public async Task CreateAsync(CreateWorkPostsInputModel input, string userId)
        {
            var city = this.cityRepository.All().FirstOrDefault(x => x.Name == input.City);

            if (city == null)
            {
                city = new City {
                    Name = input.City, CountryId = input.CountryId
                };
            }

            var address = this.addressRepository.All().FirstOrDefault(x => x.Name == input.Address);

            if (address == null)
            {
                address = new Address {
                    Name = input.Address, City = city
                };
            }

            var workPost = new WorkPost()
            {
                Title          = input.Title,
                Description    = input.Description,
                Requirement    = input.Requirement,
                CountryId      = input.CountryId,
                Address        = address,
                City           = city,
                PaymentPerDay  = input.PaymentPerDay,
                Responsibility = input.Responsibility,
                CategoryId     = input.CategoryId,
                AddedByUserId  = userId,
                Providing      = input.Providing,
            };

            foreach (var image in input.Images)
            {
                if (image != null)
                {
                    var resultUrl = await Cloud.UploadAsync(this.cloudinary, image);

                    var imageCloud = new Image
                    {
                        AddedByUserId  = userId,
                        WorkPost       = workPost,
                        RemoteImageUrl = resultUrl,
                    };
                    workPost.Images.Add(imageCloud);
                }
            }

            await this.workPostRepository.AddAsync(workPost);

            await this.workPostRepository.SaveChangesAsync();
        }
Ejemplo n.º 2
0
        public async Task <WorkPost> CreateAsync(WorkPost item)
        {
            if (item != null)
            {
                db.WorkPosts.Add(item);

                await db.SaveChangesAsync();

                return(item);
            }

            return(null);
        }
        public async Task <IActionResult> Post(WorkPost workPost)
        {
            WorkPost _workPost;

            if (workPost == null)
            {
                return(BadRequest(new WorkPost()));
            }

            _workPost = await db.WorkPosts.CreateAsync(workPost);

            return(Ok(_workPost));
        }
Ejemplo n.º 4
0
        public async Task <WorkPost> DeleteAsync(int id)
        {
            WorkPost item = await db.WorkPosts.FindAsync(id);

            if (item != null)
            {
                db.WorkPosts.Remove(item);

                await db.SaveChangesAsync();

                return(item);
            }

            return(null);
        }
        public async Task <IActionResult> Put(int id, WorkPost workPost)
        {
            if (workPost == null)
            {
                return(BadRequest());
            }

            if (id != workPost.WorkPostId)
            {
                return(BadRequest());
            }

            await db.WorkPosts.UpdateAsync(workPost);

            return(Ok(workPost));
        }
Ejemplo n.º 6
0
 public override int GetHashCode()
 {
     return(WorkPost.GetHashCode() ^ WorkExperience.GetHashCode() ^ base.GetHashCode());
     // return base.GetHashCode();
 }
Ejemplo n.º 7
0
 public async Task UpdateAsync(WorkPost item)
 {
     db.Entry(item).State = EntityState.Modified;
     await db.SaveChangesAsync();
 }