public Result SaveImage(string tableName, string fieldName, byte[] image, string PK, string PKValue) { SaveImageRequest request = new SaveImageRequest(tableName, fieldName, image, PK, PKValue); SaveImageResponse response = this.SaveImage(request); return(response.SaveImageResult); }
public async Task GetImageWithBytesAsync_Test() { SaveImageByUrlRequest saveRequest = new SaveImageByUrlRequest() { ImageUrl = "https://www.baidu.com/img/bd_logo1.png?where=super" }; SaveImageResponse saveResponse = await _imageAppService.SaveImageByUrlAsync(saveRequest); GetImageRequest getRequest = new GetImageRequest() { BucketName = saveResponse.BucketName, ImageName = saveResponse.ImageName }; GetImageWithBytesResponse getResponse = await _imageAppService.GetImageWithBytesAsync(getRequest); using (MD5 md5Hash = MD5.Create()) { byte[] md5Bytes = md5Hash.ComputeHash(getResponse.ImageData); StringBuilder sb = new StringBuilder(); for (int i = 0; i < md5Bytes.Length; i++) { sb.Append(md5Bytes[i].ToString("X2")); } sb.ToString().ShouldBe("B15C113AEDDBEB606D938010B88CF8E6"); } }
private SaveImageResponse SaveImage(SaveImageRequest request) { CFInvokeInfo info = new CFInvokeInfo(); info.Action = "http://tempuri.org/IServiceBase/SaveImage"; info.RequestIsWrapped = true; info.ReplyAction = "http://tempuri.org/IServiceBase/SaveImageResponse"; info.ResponseIsWrapped = true; SaveImageResponse retVal = base.Invoke <SaveImageRequest, SaveImageResponse>(info, request); return(retVal); }
public async Task SaveImageByBase64Async_Test() { SaveImageByBase64Request request = new SaveImageByBase64Request() { ImageBase64 = ImageLoader.ConvertToBase64("images/image2.png") }; SaveImageResponse response = await _imageAppService.SaveImageByBase64Async(request); response.Location.ShouldBe("us-east-1"); response.BucketName.ShouldBe(DateTime.Today.ToString("yyyy-MM-dd")); response.ImageName.ShouldBe("384E5061724501F88E9EE4854CEDE6CA"); }
public async Task SaveImageByUrlAsync_Test() { SaveImageByUrlRequest request = new SaveImageByUrlRequest() { ImageUrl = "https://www.baidu.com/img/bd_logo1.png?where=super" }; SaveImageResponse response = await _imageAppService.SaveImageByUrlAsync(request); response.Location.ShouldBe("us-east-1"); response.BucketName.ShouldBe(DateTime.Today.ToString("yyyy-MM-dd")); response.ImageName.ShouldBe("B15C113AEDDBEB606D938010B88CF8E6"); }
public override async Task <SaveImageRpcResponse> SaveImageByBytesRpc( SaveImageByBytesRpcRequest request, ServerCallContext context) { SaveImageResponse result = await _imageAppService.SaveImageByBytesAsync(new SaveImageByBytesRequest() { ImageBytes = request.ImageData.ToByteArray() }).ConfigureAwait(false); return(new SaveImageRpcResponse() { BucketName = result.BucketName, ImageName = result.ImageName, Location = result.Location }); }
public async Task SaveImageByFormFileAsync_Test() { using (FileStream fs = new FileStream("images/image2.png", FileMode.Open)) { FormFile file = new FormFile(fs, 0, fs.Length, "file", "image2.png") { Headers = new HeaderDictionary(), ContentType = "image/png" }; SaveImageResponse response = await _imageAppService.SaveImageByFormFileAsync(file); response.Location.ShouldBe("us-east-1"); response.BucketName.ShouldBe(DateTime.Today.ToString("yyyy-MM-dd")); response.ImageName.ShouldBe("384E5061724501F88E9EE4854CEDE6CA"); } }
public UpdateOpportunityResponse UpdateOpportunity(UpdateOpportunityRequest request) { Logger.Current.Verbose("Request for updating an opportunity"); request.opportunityViewModel.IsDeleted = false; var opportunityViewModel = request.opportunityViewModel; hasAccess(request.opportunityViewModel.OpportunityID, request.RequestedBy, request.AccountId, request.RoleId); if (request.opportunityViewModel.Image != null) { SaveImageResponse imageResponse = imageService.SaveImage(new SaveImageRequest() { ImageCategory = ImageCategory.OpportunityProfile, ViewModel = request.opportunityViewModel.Image, AccountId = request.AccountId }); request.opportunityViewModel.Image = imageResponse.ImageViewModel; } Opportunity opportunity = Mapper.Map <OpportunityViewModel, Opportunity>(request.opportunityViewModel); bool isOpportunityUnique = opportunityRepository.IsOpportunityUnique(opportunity); if (!isOpportunityUnique) { var message = "[|Opportunity with name|] \"" + opportunity.OpportunityName + "\" [|already exists.|]"; throw new InvalidOperationException(message); } isOpportunityValid(opportunity); //opportunityRepository.Update(opportunity); // Opportunity updatedOpportunity = unitOfWork.Commit() as Opportunity; OpportunityTableType opportunityTableType = Mapper.Map <OpportunityViewModel, OpportunityTableType>(request.opportunityViewModel); OpportunityTableType newOpportunityType = opportunityRepository.InsertOpportunity(opportunityTableType); // opportunityRepository.Insert(opportunity); Opportunity updatedOpportunity = opportunityRepository.FindBy(newOpportunityType.OpportunityID); if (indexingService.Update <Opportunity>(updatedOpportunity) > 0) { Logger.Current.Verbose("Opportunity updated to elasticsearch successfully"); } if (request.opportunityViewModel.StageID != request.opportunityViewModel.PreviousStageID) { addToTopic(opportunityViewModel.OpportunityID, request.AccountId, opportunityViewModel.Contacts.Select(s => s.Id), opportunityViewModel.StageID); } return(new UpdateOpportunityResponse()); }
public async Task DownloadImageAsync_Test() { SaveImageByUrlRequest saveRequest = new SaveImageByUrlRequest() { ImageUrl = "https://www.baidu.com/img/bd_logo1.png?where=super" }; SaveImageResponse saveResponse = await _imageAppService.SaveImageByUrlAsync(saveRequest); DownloadImageRequest downloadRequest = new DownloadImageRequest() { BucketName = saveResponse.BucketName, ImageName = saveResponse.ImageName, ImageType = "png" }; FileStreamResult getResponse = await _imageAppService.DownloadImageAsync(downloadRequest); getResponse.FileStream.Length.ShouldBe(7877); }
public async Task GetImageStatusAsync_Test() { SaveImageByUrlRequest saveRequest = new SaveImageByUrlRequest() { ImageUrl = "https://www.baidu.com/img/bd_logo1.png?where=super" }; SaveImageResponse saveResponse = await _imageAppService.SaveImageByUrlAsync(saveRequest); GetImageRequest getRequest = new GetImageRequest() { BucketName = saveResponse.BucketName, ImageName = saveResponse.ImageName }; GetImageStatusResponse getResponse = await _imageAppService.GetImageStatusAsync(getRequest); getResponse.ImageName.ShouldBe("B15C113AEDDBEB606D938010B88CF8E6"); getResponse.Size.ShouldBe(7877); }
public override async Task <FaceDto> CreateAsync(FaceDto input) { foreach (var subImageInfoDto in input.SubImageList.SubImageInfoObject) { if (string.IsNullOrEmpty(subImageInfoDto.Data)) { continue; } SaveImageByBase64Request request = new SaveImageByBase64Request() { ImageBase64 = subImageInfoDto.Data }; SaveImageResponse response = await _imageAppService.SaveImageByBase64Async(request); subImageInfoDto.NodeId = response.BucketName; subImageInfoDto.ImageKey = response.ImageName; subImageInfoDto.StoragePath = $"{response.BucketName}:{response.ImageName}"; } return(await base.CreateAsync(input)); }
public override async Task <ResponseStatusList> CreateList(CreateOrUpdateListInputDto <FaceDto> input) { ResponseStatusList result = new ResponseStatusList(); foreach (var faceDto in input.List) { foreach (var subImageInfoDto in faceDto.SubImageList.SubImageInfoObject) { if (string.IsNullOrEmpty(subImageInfoDto.Data)) { continue; } SaveImageByBase64Request request = new SaveImageByBase64Request() { ImageBase64 = subImageInfoDto.Data }; SaveImageResponse response = await _imageAppService.SaveImageByBase64Async(request); subImageInfoDto.NodeId = response.BucketName; subImageInfoDto.ImageKey = response.ImageName; subImageInfoDto.StoragePath = $"{response.BucketName}:{response.ImageName}"; } var face = await base.CreateAsync(faceDto); result.ResponseStatusObject.Add(new ResponseStatus { Id = face.Id.ToString(), RequestURL = "", StatusCode = 0, StatusString = "", LocalTime = DateTime.Now }); } return(result); }
/// <summary> /// Insert Opportunity. /// </summary> /// <param name="request"></param> /// <returns>HttpResponseMessage</returns> public InsertOpportunityResponse InsertOpportunity(InsertOpportunityRequest request) { Logger.Current.Verbose("Request for inserting an opportunity"); if (request.opportunityViewModel.Image != null) { SaveImageResponse imageResponse = imageService.SaveImage(new SaveImageRequest() { ImageCategory = ImageCategory.OpportunityProfile, ViewModel = request.opportunityViewModel.Image, AccountId = request.AccountId }); request.opportunityViewModel.Image = imageResponse.ImageViewModel; } Opportunity opportunity = Mapper.Map <OpportunityViewModel, Opportunity>(request.opportunityViewModel); opportunity.IsDeleted = false; bool isOpportunityUnique = opportunityRepository.IsOpportunityUnique(opportunity); if (!isOpportunityUnique) { var message = "[|Opportunity with name|] \"" + opportunity.OpportunityName + "\" [|already exists.|]"; throw new UnsupportedOperationException(message); } isOpportunityValid(opportunity); OpportunityTableType opportunityTableType = Mapper.Map <OpportunityViewModel, OpportunityTableType>(request.opportunityViewModel); OpportunityTableType newOpportunityType = opportunityRepository.InsertOpportunity(opportunityTableType); // opportunityRepository.Insert(opportunity); Opportunity newOpportunity = opportunityRepository.FindBy(newOpportunityType.OpportunityID); if (indexingService.Index <Opportunity>(newOpportunity) > 0) { Logger.Current.Verbose("Indexed the opportunity successfully"); } return(new InsertOpportunityResponse()); }
private async void button1_Click(object sender, EventArgs e) { if (comboBox3.Text == "") { MessageBox.Show("Невыбрана должность!"); } else if (textBox1.Text == "") { MessageBox.Show("Не указан логин!"); } else if (textBox2.Text == "") { MessageBox.Show("Не указан пароль!"); } else if (textBox3.Text == "") { MessageBox.Show("Не указана фамилия!"); } else if (textBox4.Text == "") { MessageBox.Show("Не указано имя!"); } else if (textBox5.Text == "") { MessageBox.Show("Не указано отчество!"); } else if (textBox7.Text == "" && panel2.Visible) { MessageBox.Show("Не указан кабинет!"); } else if (textBox8.Text == "" && panel2.Visible) { MessageBox.Show("Не указано образование!"); } else if (textBox6.Text == "" && panel2.Visible) { MessageBox.Show("Не указан стаж!"); } else { if (panel2.Visible) { try { Convert.ToInt32(textBox7.Text); } catch { MessageBox.Show("В поле 'Кабинет' должно быть указанно число!"); return; } try { Convert.ToInt32(textBox6.Text); } catch { MessageBox.Show("В поле 'Стаж' должно быть указанно число!"); return; } } //хеширование MD5 Hasher = MD5.Create(); byte[] data = Hasher.ComputeHash(Encoding.Default.GetBytes(textBox2.Text)); StringBuilder sBuilder = new StringBuilder(); for (int i = 0; i < data.Length; i++) { sBuilder.Append(data[i].ToString("x2")); } string hash = sBuilder.ToString(); if (image_path != "") { // Format of image int index = image_path.LastIndexOf('.'); string format_string = image_path.Substring(index, image_path.Length - index); if (format_string == ".png" || format_string == ".jpg" || format_string == ".jpeg" || format_string == ".bmp") { ImageFormat format = null; if (format_string == ".png") { format = ImageFormat.Png; } else if (format_string == ".jpg" || format_string == ".jpeg") { format = ImageFormat.Jpeg; } else if (format_string == ".bmp") { format = ImageFormat.Bmp; } //binary array image MemoryStream memoryStream = new MemoryStream(); pictureBox1.Image.Save(memoryStream, format); byte[] array = memoryStream.ToArray(); SaveImageResponse response = await Program.image_service.SaveImageAsync(array, format_string); image_path = response.Body.SaveImageResult; } } if (Convert.ToString(comboBox2.SelectedValue) == "") { DataBase.Insert("fun_ins_worker", textBox1.Text, hash, textBox3.Text, textBox4.Text, textBox5.Text, Convert.ToInt32(comboBox3.SelectedValue), DateTime.Today, dateTimePicker1.Value, image_path); if (!DataBase.HasError) { MessageBox.Show("Сотрудник зачислен в штат."); } else { MessageBox.Show(DataBase.ErrorMessage); } } else { bool is_doc = Convert.ToBoolean(DataBase.Scalar("fun_scal_is_doc", comboBox3.SelectedValue)); if (is_doc) { DataBase.Insert("fun_ins_doctor", textBox1.Text, hash, textBox3.Text, textBox4.Text, textBox5.Text, Convert.ToInt32(comboBox3.SelectedValue), DateTime.Today, dateTimePicker1.Value, image_path, Convert.ToInt32(comboBox2.SelectedValue), Convert.ToInt32(textBox7.Text), textBox8.Text, Convert.ToInt32(textBox6.Text)); if (!DataBase.HasError) { MessageBox.Show("Сотрудник зачислен в штат."); } else { MessageBox.Show(DataBase.ErrorMessage); } } else { DataBase.Insert("fun_ins_medworker", textBox1.Text, hash, textBox3.Text, textBox4.Text, textBox5.Text, Convert.ToInt32(comboBox3.SelectedValue), DateTime.Today, dateTimePicker1.Value, image_path, Convert.ToInt32(comboBox2.SelectedValue)); if (!DataBase.HasError) { MessageBox.Show("Сотрудник зачислен в штат."); } else { MessageBox.Show(DataBase.ErrorMessage); } } } Clear(); } }
private async void button1_Click(object sender, EventArgs e) { if (image_path != "") { await Program.image_service.RemoveImageAsync(path); // Format of image int index = image_path.LastIndexOf('.'); string format_string = image_path.Substring(index, image_path.Length - index); if (format_string == ".png" || format_string == ".jpg" || format_string == ".jpeg" || format_string == ".bmp") { ImageFormat format = null; if (format_string == ".png") { format = ImageFormat.Png; } else if (format_string == ".jpg" || format_string == ".jpeg") { format = ImageFormat.Jpeg; } else if (format_string == ".bmp") { format = ImageFormat.Bmp; } //binary array image MemoryStream memoryStream = new MemoryStream(); pictureBox1.Image.Save(memoryStream, format); byte[] array = memoryStream.ToArray(); SaveImageResponse response = await Program.image_service.SaveImageAsync(array, format_string); path = response.Body.SaveImageResult; } } if (ch == 'W' || ch == 'M') { // ToString("yyyy-MM-dd") DataBase.Insert("fun_upd_worker_medworker", Convert.ToString(comboBox4.SelectedValue), textBox3.Text, textBox4.Text, textBox5.Text, dateTimePicker1.Value, path); if (!DataBase.HasError) { MessageBox.Show("Изменения сохранены!"); } } else { DataBase.Insert("fun_upd_doctor", Convert.ToString(comboBox4.SelectedValue), textBox3.Text, textBox4.Text, textBox5.Text, dateTimePicker1.Value, path, Convert.ToInt32(textBox7.Text), textBox8.Text, Convert.ToInt32(textBox6.Text)); if (!DataBase.HasError) { MessageBox.Show("Изменения сохранены!"); } } Content2_VisibleChanged(sender, e); }
public SaveImageResponse SaveImage(SaveImageRequest request) { SaveImageResponse response = new SaveImageResponse(); if (request != null) { ImageViewModel viewModel = request.ViewModel; if (viewModel.ImageContent != null) { if (!string.IsNullOrEmpty(viewModel.StorageName) && viewModel.ImageContent.Contains(viewModel.StorageName)) { response.ImageViewModel = viewModel; return(response); } if (viewModel.OriginalName == null) { response.ImageViewModel = null; return(response); } Image Image; string storageName = string.Empty; if (viewModel.ImageID != 0) { storageName = viewModel.StorageName; } else { storageName = Guid.NewGuid().ToString() + viewModel.ImageType; } string imagePath = CreateFolder(request.ImageCategory, request.AccountId.ToString()); imagePath = Path.Combine(imagePath, storageName); if (System.IO.File.Exists(imagePath)) { System.IO.File.Delete(imagePath); } if (!System.IO.File.Exists(imagePath)) { if (viewModel.ImageContent.Split(',').Length == 2) { string imageContent = viewModel.ImageContent.Split(',')[1]; byte[] imageData = Convert.FromBase64String(imageContent); using (MemoryStream ms = new MemoryStream(imageData)) { Image = Image.FromStream(ms); Image.Save(imagePath); } viewModel.ImageContent = null; viewModel.StorageName = storageName; viewModel.FriendlyName = viewModel.OriginalName; viewModel.ImageCategoryID = request.ImageCategory; viewModel.AccountID = Convert.ToInt16(request.AccountId); } else { viewModel = null; } } response.ImageViewModel = viewModel; } } else { response.ImageViewModel = null; } return(response); }