25 lines
909 B
C#
25 lines
909 B
C#
|
using System.Linq;
|
||
|
using System.Diagnostics;
|
||
|
using ttrss_co_client.ttrss;
|
||
|
using ttrss_co_client.ttrss.datastructures;
|
||
|
|
||
|
namespace ttrss_co_client.tasks
|
||
|
{
|
||
|
///<summary>Move to output</summary>
|
||
|
public class Publish : Phase2Task
|
||
|
{
|
||
|
public override async Task<Tuple<TaskStatus, WorkOrder>>ActOn(WorkOrder workOrder)
|
||
|
{
|
||
|
var wo = workOrder as PublishWorkOrder;
|
||
|
File.Move(wo.Path, wo.PublishTarget, true);
|
||
|
var article = (await TtrssClient.GetArticles(wo.articleId))?.FirstOrDefault();
|
||
|
await TtrssClient.UpdateArticleNote($"{article.note}\n[{DateTime.Now.ToShortDateString()}] - copied");
|
||
|
return new Tuple<TaskStatus, WorkOrder>(TaskStatus.Done, wo);
|
||
|
}
|
||
|
}
|
||
|
public class PublishWorkOrder : WorkOrder
|
||
|
{
|
||
|
public string Path => data["path"];
|
||
|
public string PublishTarget => data["publish-target"];
|
||
|
}
|
||
|
}
|