private async Task <IActionResult> UpdText() { ProductFunction = new ProductFunction(); string product_name = OriginalMessage.Substring(EnterTextForceReply.Length); Product = ProductFunction.GetProduct(product_name); string units = UnitsList(); if (Product != null && ReplyToMessageText.Length <= 100) { Product = ProductFunction.UpdateText(Product.Id, ReplyToMessageText); ProductFunction.Dispose(); await SendTextMessageAndForceReply("Еденица измерения:" + units, EnterUnitForceReply + Product.Name); return(OkResult); } if (Product != null && ReplyToMessageText.Length > 100) { ProductFunction.Dispose(); return(await SendTextMessageAndForceReply("Ошибка! Максимум 100 символов", EnterTextForceReply + Product.Name)); } else { ProductFunction.Dispose(); return(await SendTextMessageAndForceReply("Введите краткое описание вашего товара. Максмимум 100 символов", EnterTextForceReply + Product.Name)); } }
/// <summary> /// Добавить доп фото /// </summary> /// <returns></returns> private async Task <IActionResult> InsertAdditionallyPhoto() { AttachmentTelegram TgAttach = null; int ProductId = ProductGet(ProductAdditionallyPhotoReply); ProductFunction = new ProductFunction(); var ProductPhoto = ProductFunction.InsertAdditionallPhoto(ProductId, await base.GetFileAsync(base.PhotoId), base.Caption); if (ProductPhoto != null && base.PhotoId != null) { TgAttach = AttachmentTelegramFunction.AddAttachmentTelegram(ProductPhoto.AttachmentFsId, BotInfo.Id, base.PhotoId); } var product = ProductFunction.GetProduct(ProductId); ProductFunction.Dispose(); if (ProductPhoto != null && ProductPhoto.AttachmentFsId > 0 && TgAttach != null && TgAttach.Id > 0) { await SendMessage(new BotMessage { TextMessage = "Добавлено" }); } return(await SendProductFunc(product)); }
/// <summary> /// Обновить стоимость /// </summary> /// <returns></returns> private async Task <IActionResult> UpdateProductPrice() { double NewPrice = 0.0; try { int ProductId = ProductGet(ProductEditPriceRelpy); ProductFunction = new ProductFunction(); NewPrice = Convert.ToDouble(base.ReplyToMessageText); var product = ProductFunction.UpdatePrice(ProductId, NewPrice, Convert.ToInt32(BotInfo.Configuration.CurrencyId)); ProductFunction.Dispose(); return(await SendProductFunc(product)); } catch { return(await ErrorMessage(ProductEditPriceRelpy)); } }
private async Task <IActionResult> UpdPrice() { ProductFunction = new ProductFunction(); string product_name = OriginalMessage.Substring(EnterPriceForceReply.Length); var product = ProductFunction.GetProduct(product_name); try { double price = Convert.ToDouble(ReplyToMessageText); if (price > 0 && product != null) { product = ProductFunction.UpdatePrice(product.Id, price, Convert.ToInt32(BotInfo.Configuration.CurrencyId)); ProductFunction.Dispose(); return(await SendForceReplyMessage(StockValueForceReply + product.Name)); } else { return(await SendTextMessageAndForceReply(product.Name + "Ошибка! Значение должно быть больше 0", EnterPriceForceReply + product.Name)); } } catch { return(await SendTextMessageAndForceReply(product_name + "Ошибка! Неверный формат данных", EnterPriceForceReply + product_name)); } }
private async Task <IActionResult> UpdStock() { ProductFunction = new ProductFunction(); string product_name = OriginalMessage.Substring(StockValueForceReply.Length); var product = ProductFunction.GetProduct(product_name); try { int balance = Convert.ToInt32(ReplyToMessageText); if (balance >= 0 && product != null) { product = ProductFunction.UpdateStock(product.Id, balance, "Добавление нового товара через диалог с ботом"); ProductFunction.Dispose(); return(await SendForceReplyMessage(UploadImageForceReply + product.Name)); } else { return(await SendTextMessageAndForceReply(product.Name + " /adminproduct" + product.Id + " Ошибка! Значение должно быть больше 0", StockValueForceReply + product.Name)); } } catch { return(await SendTextMessageAndForceReply(product_name + "Ошибка! Неверный формат данных", StockValueForceReply + product_name)); } }
public async Task <IActionResult> Save(Product SaveProduct, IFormFile image = null, int balance = 0) { bool NameIsProhibited = false; BotInfo = Bot.GeneralFunction.GetBotInfo(); ProductFunc = new ProductFunction(); if (SaveProduct != null) { NameIsProhibited = ProductFunc.NameIsProhibited(SaveProduct.Name); } if (NameIsProhibited) { return(Json("Данное имя запрещено")); } if (SaveProduct != null && SaveProduct.CurrentPrice.Value <= 0) { return(Json("Стоимость должна быть больше 0")); } if (SaveProduct != null && SaveProduct.CategoryId < 1) { return(Json("Выбертие категорию")); } if (SaveProduct != null && SaveProduct.Text != null && SaveProduct.Text.Length > 100) { return(Json("Ошибка. Максимальная длина описания 100 символов")); } if (!NameIsProhibited && SaveProduct != null && SaveProduct.Id > 0) // обновление уже сущ. товара { await UpdateProduct(SaveProduct, image); ProductFunc.Dispose(); return(new RedirectResult("Editor\\" + SaveProduct.Id)); } ///добавление нового товара if (!NameIsProhibited && SaveProduct != null && SaveProduct.Name != null && SaveProduct.Id == 0 && SaveProduct.CurrentPrice.Value > 0 && SaveProduct.CategoryId > 0) { int id = await CreateProduct(SaveProduct, image, balance); return(new RedirectResult("Editor\\" + id)); } else { return(Json("Ошибка")); } }
private async Task <IActionResult> UpdUnit() { string product_name = OriginalMessage.Substring(EnterUnitForceReply.Length); string unit_name = ReplyToMessageText.Trim(); var UnitList = UnitsList(); ProductFunction = new ProductFunction(); var product = ProductFunction.GetProduct(product_name); var Unit = UnitsFunction.GetUnits(unit_name); ProductFunction = new ProductFunction(); if (Unit != null && product != null) { product = ProductFunction.UpdateUnit(product.Id, Unit.Id); ProductFunction.Dispose(); } if (Unit == null && product != null) // пользваотель указа ед. измерения но ее не удалось найти. Выбираем первую из существующих { var list = UnitsFunction.UnitsList(); await SendMessage(new BotMessage { TextMessage = "Не удалось найти еденицу измерения. Выбрано:" + list.FirstOrDefault().Name }); product = ProductFunction.UpdateUnit(product.Id, list.FirstOrDefault().Id); ProductFunction.Dispose(); } if (product != null && product.UnitId > 0) { return(await SendTextMessageAndForceReply(product.Name + " /adminproduct" + product.Id, EnterPriceForceReply + product.Name)); } else { return(await SendTextMessageAndForceReply(product.Name + " /adminproduct" + product.Id + " Еденицы измерения:" + UnitList, EnterUnitForceReply + product.Name)); } }
/// <summary> /// Сохрнаяем новоем значение Ед. измерения для товара /// </summary> /// <returns></returns> private async Task <IActionResult> UpdateUnit() { int ProductId = Argumetns[0]; int UnitId = Argumetns[1]; ProductFunction = new ProductFunction(); var product = ProductFunction.UpdateUnit(ProductId, UnitId); ProductFunction.Dispose(); return(await SendProductFunc(product, base.MessageId)); }
private async Task <IActionResult> UpdCategory() { string product_name = OriginalMessage.Substring(EnterCategoryForceReply.Length); string category_name = ReplyToMessageText; var category = CategoryFunction.GetCategory(category_name); var category_list = CategoryList(); ProductFunction = new ProductFunction(); Product = ProductFunction.GetProduct(product_name); if (category == null) { category = CategoryFunction.InsertCategory(category_name); } if (category != null && Product != null) { Product = ProductFunction.GetProduct(product_name); ProductFunction.UpdateCategory(Product.Id, category.Id); ProductFunction.Dispose(); return(await SendTextMessageAndForceReply("Введите краткое описание вашего товара. Максмимум 100 символов", EnterTextForceReply + Product.Name)); } else { ProductFunction.Dispose(); return(await SendTextMessageAndForceReply("Введите название новой категории или выберите уже существующую." + "Список категорий:" + category_list, EnterCategoryForceReply + product_name)); } }
/// <summary> /// Обновить имя /// </summary> /// <returns></returns> private async Task <IActionResult> UpdateProductName() { ProductFunction = new ProductFunction(); string NewName = base.ReplyToMessageText; int ProductId = ProductGet(ProductEditNameRelpy); var Product = ProductFunction.UpdateName(ProductId, NewName); ProductFunction.Dispose(); return(await SendProductFunc(Product)); }
/// <summary> /// Обновить категорию /// </summary> /// <returns></returns> private async Task <IActionResult> UpdateProductCategory() { ProductFunction = new ProductFunction(); int ProductId = ProductGet(ProductEditCategoryReply); string CatName = base.ReplyToMessageText; var category = CategoryFunction.GetCategory(CatName); if (category != null) { var product = ProductFunction.UpdateCategory(ProductId, category.Id); ProductFunction.Dispose(); return(await SendProductFunc(product)); } else { ProductFunction.Dispose(); await SendMessage(new BotMessage { TextMessage = "Категория не найдена!" }); return(await SendCategoryList()); } }
public async Task <IActionResult> AddPhoto(int ProductId, IList <IFormFile> image) { ProductFunc = new ProductFunction(); foreach (var img in image) { var photo = ProductFunc.InsertAdditionallPhoto(ProductId, img.OpenReadStream(), img.Name); await this.SendPhotoAndSaveFileId(photo.AttachmentFs); } ProductFunc.Dispose(); return(new RedirectResult("Photos\\" + ProductId)); }
/// <summary> /// Обновить главную фотографию товара /// </summary> /// <returns></returns> private async Task <IActionResult> UpdateMainProductPhoto() { int fs_id = await base.InsertToAttachmentFs(base.PhotoId); int Id = ProductGet(ProductEditPhotoReply); ProductFunction = new ProductFunction(); var product = ProductFunction.UpdateMainPhoto(Id, fs_id); AttachmentTelegramFunction.AddAttachmentTelegram(fs_id, BotInfo.Id, base.PhotoId); ProductFunction.Dispose(); return(await SendProductFunc(product)); }
public IActionResult Editor(int id) { ProductFunc = new ProductFunction(); if (id > 0) { var product = ProductFunc.GetProduct(id); if (product.MainPhotoNavigation != null) // вытаскиваем главную фотографию и готовим ее к отображению на странице { string imageBase64Data = Convert.ToBase64String(product.MainPhotoNavigation.Fs); string imageDataURL = string.Format("data:image/png;base64,{0}", imageBase64Data); ViewBag.ImageData = imageDataURL; } ViewBag.Category = new SelectList(CategoryFunction.GetListCategory(), "Id", "Name", product.CategoryId); ViewBag.Currency = CurrencyFunction.CurrencyList(); ViewBag.Unit = new SelectList(UnitsFunction.UnitsList(), "Id", "Name", product.UnitId); ProductFunc.Dispose(); if (product != null) { return(View(product)); } else { return(NoContent()); } } else { return(null); } }
/// <summary> /// Удалить доп.фото у товара /// </summary> /// <returns></returns> private async Task <IActionResult> RemoveAdditionalPhoto() { ProductId = Argumetns[0]; int Attachid = Argumetns[1]; ProductFunction = new ProductFunction(); if (ProductFunction.RemoveAdditionalPhoto(ProductId, Attachid) > 0) { await AnswerCallback("Фотография удалена", true); } else { await AnswerCallback("Фотографии не существует", true); } ProductFunction.Dispose(); return(OkResult); }
/// <summary> /// Обновить ссылку на заметку /// </summary> /// <returns></returns> private async Task <IActionResult> UpdateProductNoteUrl() { if (WebUrl != null && WebUrl.Length > 0) { ProductFunction = new ProductFunction(); string Url = base.ReplyToMessageText; int ProductId = ProductGet(ProductEditUrlReply); var Product = ProductFunction.UpdateUrl(ProductId, Url); ProductFunction.Dispose(); return(await SendProductFunc(Product)); } else { return(await ErrorMessage(ProductEditUrlReply, "Ошибка. Введите Url")); } }
/// <summary> /// Обновить описание /// </summary> /// <returns></returns> private async Task <IActionResult> UpdateProductText() { if (base.ReplyToMessageText.Length <= 100) { ProductFunction = new ProductFunction(); string Text = base.ReplyToMessageText; int ProductId = ProductGet(ProductEditNameRelpy); var Product = ProductFunction.UpdateText(ProductId, Text); ProductFunction.Dispose(); return(await SendProductFunc(Product)); } else { await SendMessage(new BotMessage { TextMessage = "Ошибка! Максимум 100 символов" }); return(OkResult); } }
private async Task <IActionResult> UpdPhoto() { ProductFunction = new ProductFunction(); string product_name = OriginalMessage.Substring(UploadImageForceReply.Length); Product = ProductFunction.GetProduct(product_name); int ProductId = -1; if (base.PhotoId != null && Product != null) { int FsId = await InsertToAttachmentFs(base.PhotoId); Product = ProductFunction.UpdateMainPhoto(Product.Id, FsId); AttachmentTelegramFunction.AddAttachmentTelegram(FsId, base.BotInfo.Id, base.PhotoId); ProductFunction.Dispose(); ProductId = Product.Id; } if (Product != null) // удалось загрузить файл { ProductFuncMsg = new ProductFuncMessage(Product); await SendMessage(ProductFuncMsg.BuildMsg()); } else { await SendMessage(new BotMessage { TextMessage = "Не удалось загрузить файл!" }); ProductFuncMsg = new ProductFuncMessage(ProductId); await SendMessage(ProductFuncMsg.BuildMsg()); } return(OkResult); }
/// <summary> /// Обновить остатки /// </summary> /// <returns></returns> private async Task <IActionResult> UpdateProductStock() { int Value = 0; int ProductId = ProductGet(ProductEditStockReply); ProductFunction = new ProductFunction(); try { Value = Convert.ToInt32(base.ReplyToMessageText); var product = ProductFunction.UpdateStock(ProductId, Value, "Значение изменено через панель администратора"); ProductFunction.Dispose(); return(await SendProductFunc(product)); } catch { return(await ErrorMessage(ProductEditStockReply, "Неверный формат данных!")); } }