public async Task UnTag(CloudTag param) { var validator = await new TagParamValidator().ValidateAsync(param); if (!validator.IsValid) { var validatorMessage = validator.Errors.Select(failure => failure.ErrorMessage).JoinStr("\n"); await SendMessageTextAsync(validatorMessage); return; } await SendMessageTextAsync($"Sedang menghapus tag '{param.Tag}'.."); var deleteTag = await _tagsService.DeleteTag(Chat.Id, param.Tag); if (deleteTag) { await EditMessageTextAsync($"Menghapus tag '{param.Tag}' berhasil. Gunakan /tags untuk menampilkan perubahan."); await _tagsService.UpdateCacheAsync(ChatId); } else { await EditMessageTextAsync($"Gagal menghapus tag '{param.Tag}', silakan di coba kembali nanti."); } }
private async Task ProcessingTag(CloudTag tagData) { var content = tagData.Content; var buttonStr = tagData.BtnData; var typeData = tagData.TypeData; var idData = tagData.FileId; var buttonMarkup = buttonStr.ToButtonMarkup(); if (idData.IsNotNullOrEmpty()) { await _telegramService.SendMediaAsync( fileId : idData, mediaType : typeData, caption : content, replyMarkup : buttonMarkup ); } else { await _telegramService.SendTextMessageAsync( sendText : content, replyMarkup : buttonMarkup, disableWebPreview : true ); } }
public async Task <int> SaveTagAsync(CloudTag data) { var insert = await _queryService .CreateMySqlFactory() .FromTable(TableName) .InsertAsync(data); Log.Information("SaveTag: {Insert}", insert); return(insert); }
private async Task PrepareSend(CloudTag tag) { var tagContent = tag.Content; var tagSlug = tag.Tag; var htmlString = new HtmlString() .Text(tagContent); var messageId = RawUpdate.Message.MessageId; await SendMessageTextAsync(htmlString, replyToMessageId : messageId); }
private async Task ProcessingSave( CloudTag param, bool reTag ) { if (reTag) { await _tagsService.DeleteTag(Chat.Id, param.Tag); } var validator = await new TagParamValidator().ValidateAsync(param); if (!validator.IsValid) { var validatorMessage = validator.Errors.Select(failure => failure.ErrorMessage).JoinStr("\n"); await SendMessageTextAsync(validatorMessage); return; } if (reTag) { await _tagsService.DeleteTag(Chat.Id, param.Tag); } if (await _tagsService.IsExist(Chat.Id, param.Tag)) { await SendMessageTextAsync( $"Sepertinya tag '{param.Tag}' sudah ada. " + $"silakan gunakan nama lain nya atau gunakan /retag." ); return; } await SendMessageTextAsync($"Sedang menyimpan tag '{param.Tag}'.."); var saveTag = await _tagsService.SaveTagAsync(param); if (saveTag == 1) { await EditMessageTextAsync($"Sedang memperbarui cache.."); await _tagsService.UpdateCacheAsync(Chat.Id); await EditMessageTextAsync($"Tag berhasil disimpan, gunakan #{param.Tag} untuk mengambil kembali."); } else { await EditMessageTextAsync($"Tag '{param.Tag}' gagal disimpan"); } }
public void ValidateTest() { var tagData = new CloudTag { ChatId = 123, FromId = 123, Tag = "tag" }; var validationResult = tagData.Validate <TagParamValidator, CloudTag>(); validationResult.Errors.Should().HaveCount(0); validationResult.IsValid.Should().BeTrue(); }
public async Task ReTag(CloudTag param) { await ProcessingSave(param, true); }
public async Task Tag(CloudTag param) { await ProcessingSave(param, false); }