Задача согласования документа в Telegram
При постановке в бизнес процессе задачи согласования документа, можно ее продублировать в Telegram:
public override void OnTaskCreate (ITaskBase task, P_SupplierAdvPayment context)
{
// d8ef716f-f819-4578-9cde-698ba71524b1 - Uid задачи на диаграмме
SMSHelper.ChatBotTelegram.LinkWorkflowTask(new Guid("d8ef716f-f819-4578-9cde-698ba71524b1"), task, model =>
{
// 542bdff7-8d93-4946-bbc3-e2941d210daf - Uid перехода Согласовано
model.Buttons.Add(new TelegramButton { Name = "Согласовано", Emoji = "✅", ConnectorUid = new Guid("542bdff7-8d93-4946-bbc3-e2941d210daf") });
// c17b1064-0dbf-4372-b74d-38c84af7d05a - Uid перехода Не согласовано
model.Buttons.Add(new TelegramButton { Name = "Отказано", Emoji = "❌", ConnectorUid = new Guid("c17b1064-0dbf-4372-b74d-38c84af7d05a") });
// Счет
if (context.Invoice != null)
model.Document = new TelegramDocument { Name = context.Invoice.Name, File = context.Invoice.CurrentVersion.File };
// Дополнительная информация
model.Details.Add("Покупатель: " + context.Invoice.IEECustomer.Name);
// Лист согласования документа
SMSHelper.ChatBotTelegram.AddApprovalList(model, context.Invoice);
});
}
Необходимо добавить:
using ITino.ELMA.SMS.Helpers;
using ITino.ELMA.SMS.Models;
В результате в Telegram придет блок сообщений с кнопками:
При выборе действия "Отказано" задачу будет завершена и в бизнес процессе произойдет переход "Не согласовано":