public async Task EditAsync(VendorEditModel model) { var vendor = await _vendorRepository.GetAsync(model.Id); VendorFactory.Create(model, vendor, _userId); _vendorRepository.Edit(vendor); await _unitOfWork.SaveChangesAsync(); }
public async Task <ActionResult <VendorForGetDTO> > Post(VendorForAddDTO model) { if (await _vendorRepository.IsExist(model.Name, model.CategoryId).ConfigureAwait(true)) { return(Conflict(new ApiResponse(409, StringConsts.EXISTED))); } if (await _vendorUserRepository.IsExistByPhone(model.VendorUser.Phone).ConfigureAwait(true)) { return(Conflict(new ApiResponse(409, StringConcatenates.Exist("Phone", model.VendorUser.Phone)))); } if (await _vendorUserRepository.IsExistByEmail(model.VendorUser.Email).ConfigureAwait(true)) { return(Conflict(new ApiResponse(409, StringConcatenates.Exist("Email", model.VendorUser.Email)))); } Vendor vendor = _mapper.Map <Vendor>(model); VendorUser vendorUser = _mapper.Map <VendorUser>(model.VendorUser); string password = SecurePassword.GeneratePassword(8); SecurePassword.CreatePasswordHash(password, out byte[] passwordHash, out byte[] passwordSalt); vendorUser.PasswordHash = passwordHash; vendorUser.PasswordSalt = passwordSalt; vendorUser.Role = VendorUserRoleEnum.GroupAdmin; vendor.VendorUsers.Add(vendorUser); await _vendorRepository.AddAsync(vendor).ConfigureAwait(true); await _unitOfWork.CompleteAsync().ConfigureAwait(true); Email.Send("Momen", vendorUser.Email, "password", password); vendor = await _vendorRepository.GetAsync(vendor.Id).ConfigureAwait(true); VendorForGetDTO vendorDto = _mapper.Map <VendorForGetDTO>(vendor); return(Ok(vendorDto)); }
public async Task <ActionResult <VendorRejectForGetDTO> > Post(VendorRejectForAddDTO model) { if (!await _vendorRepository.IsExist(model.VendorId).ConfigureAwait(true)) { return(NotFound(new ApiResponse(404, StringConcatenates.NotExist("Vendor", model.VendorId)))); } VendorReject vendorReject = _mapper.Map <VendorReject>(model); await _vendorRejectRepository.AddAsync(vendorReject).ConfigureAwait(true); Vendor vendor = await _vendorRepository.GetAsync(model.VendorId).ConfigureAwait(true); vendor.Status = VendorStatusEnum.Rejected; _vendorRepository.Edit(vendor); await _unitOfWork.CompleteAsync().ConfigureAwait(true); VendorRejectForGetDTO vendorRejectDto = _mapper.Map <VendorRejectForGetDTO>(vendorReject); return(Ok(vendorRejectDto)); }
public async Task <IEnumerable <VendorResponse> > GetVendorsAsync() { var result = await _vendorRepository.GetAsync(); return(result.Select(x => _vendorMapper.Map(x))); }