public async Task <bool> EditPartner(PartnerRequestModel partnerModel, string cdnPath, string webRootPath) { if (partnerModel == null) { throw new ArgumentNullException(nameof(partnerModel)); } var userEntityToUpdate = await _db.Users.GetAsync(partnerModel.PartnerId); if (userEntityToUpdate == null) { return(false); } var updatedPartnerDescriptionEntity = new DescriptionEntityModel { Id = userEntityToUpdate.DescriptionId, Description = partnerModel.Description, }; await _db.Descriptions.UpdateAsync(updatedPartnerDescriptionEntity); if (partnerModel.PartnerImage != null) { var newPartnerImageEntity = new ImageEntityModel(); var cdnContext = new CdnContext(cdnPath, webRootPath); newPartnerImageEntity.FileName = await cdnContext.Upload(partnerModel.PartnerImage); newPartnerImageEntity.InsertDate = DateTime.Now; newPartnerImageEntity.Id = await _db.Images.CreateAsync(newPartnerImageEntity); userEntityToUpdate.ImageId = newPartnerImageEntity.Id; } if (!string.IsNullOrEmpty(partnerModel.Password) || !string.IsNullOrWhiteSpace(partnerModel.Password)) { var hashContext = new HashContext(); var newHashedPassword = hashContext.MD5(partnerModel.Password); userEntityToUpdate.Password = newHashedPassword; } userEntityToUpdate.Login = partnerModel.Login; userEntityToUpdate.UserName = partnerModel.Username; userEntityToUpdate.Email = partnerModel.Email; userEntityToUpdate.PhoneNumber = partnerModel.PhoneNumber; await _db.Users.UpdateAsync(userEntityToUpdate); return(true); }
public async Task EditGood(GoodRequestModel model, string cdnPath, string webRootPath) { if (model == null || string.IsNullOrEmpty(cdnPath) || string.IsNullOrEmpty(webRootPath)) { throw new ArgumentNullException(); } if (model.GoodId == null) { throw new ArgumentException(); } var goodToUpdate = await _db.Goods.GetAsync(model.GoodId.Value); if (goodToUpdate == null) { return; } var descriptionModel = new DescriptionEntityModel() { Id = goodToUpdate.DescriptionId, Description = model.GoodDescription }; await _db.Descriptions.UpdateAsync(descriptionModel); goodToUpdate.CategoryId = model.CategoryId; goodToUpdate.DescriptionId = descriptionModel.Id; goodToUpdate.InsertDate = DateTime.Now; goodToUpdate.Name = model.GoodName; goodToUpdate.Removed = !model.Active; goodToUpdate.UserId = model.PartnerId; goodToUpdate.Id = model.GoodId.Value; if (model.GoodImage != null) { var newGoodImage = new ImageEntityModel(); var cdnContext = new CdnContext(cdnPath, webRootPath); newGoodImage.FileName = await cdnContext.Upload(model.GoodImage); newGoodImage.InsertDate = DateTime.Now; newGoodImage.Id = await _db.Images.CreateAsync(newGoodImage); goodToUpdate.ImageId = newGoodImage.Id; } await _db.Goods.UpdateAsync(goodToUpdate); }
public async Task CreateNewPartner(PartnerRequestModel partnerRequestModel, string cdnPath, string webRootPath) { if (partnerRequestModel == null) { throw new ArgumentNullException(nameof(partnerRequestModel)); } var newPartnerDescriptionEntity = new DescriptionEntityModel { Description = partnerRequestModel.Description, }; newPartnerDescriptionEntity.Id = await _db.Descriptions.CreateAsync(newPartnerDescriptionEntity); var newPartnerImageEntity = new ImageEntityModel(); var cdnContext = new CdnContext(cdnPath, webRootPath); newPartnerImageEntity.FileName = await cdnContext.Upload(partnerRequestModel.PartnerImage); newPartnerImageEntity.InsertDate = DateTime.Now; newPartnerImageEntity.Id = await _db.Images.CreateAsync(newPartnerImageEntity); var hashContext = new HashContext(); var hashedPassword = hashContext.MD5(partnerRequestModel.Password); var newPartner = new UserEntityModel() { DescriptionId = newPartnerDescriptionEntity.Id, ImageId = newPartnerImageEntity.Id, InsertDate = DateTime.Now, Login = partnerRequestModel.Login, Password = hashedPassword, Removed = false, RoleId = RolesContext.Partner, UserName = partnerRequestModel.Username, Email = partnerRequestModel.Email, PhoneNumber = partnerRequestModel.PhoneNumber }; newPartner.Id = await _db.Users.CreateAsync(newPartner); }
public async Task <GoodResponseModel> CreateNewGood(GoodRequestModel model, string cdnPath, string webRootPath) { if (model == null || string.IsNullOrEmpty(cdnPath) || string.IsNullOrEmpty(webRootPath)) { throw new ArgumentNullException(); } var descriptionModel = new DescriptionEntityModel() { Description = model.GoodDescription }; descriptionModel.Id = await _db.Descriptions.CreateAsync(descriptionModel); var newGoodImage = new ImageEntityModel(); var cdnContext = new CdnContext(cdnPath, webRootPath); newGoodImage.FileName = await cdnContext.Upload(model.GoodImage); newGoodImage.InsertDate = DateTime.Now; newGoodImage.Id = await _db.Images.CreateAsync(newGoodImage); var entityModel = new GoodEntityModel() { CategoryId = model.CategoryId, DescriptionId = descriptionModel.Id, ImageId = newGoodImage.Id, InsertDate = DateTime.Now, Name = model.GoodName, Removed = model.Active != true, UserId = model.PartnerId }; entityModel.Id = await _db.Goods.CreateAsync(entityModel); var responseModel = await _db.GoodsResponse.GetAsync(entityModel.Id); return(responseModel); }