2022-05-06 10:58:52 +05:00
|
|
|
|
using AsbCloudDb.Model;
|
|
|
|
|
using AsbCloudInfrastructure.Services.DailyReport;
|
|
|
|
|
using Microsoft.EntityFrameworkCore;
|
2022-05-05 10:06:15 +05:00
|
|
|
|
using System;
|
2022-04-22 17:17:38 +05:00
|
|
|
|
using System.Linq;
|
2021-10-26 17:22:32 +05:00
|
|
|
|
|
|
|
|
|
namespace ConsoleApp1
|
2021-04-02 17:28:07 +05:00
|
|
|
|
{
|
2022-05-06 16:35:16 +05:00
|
|
|
|
class Cron
|
|
|
|
|
{
|
|
|
|
|
public DateTimeOffset Origin { get; set; }
|
|
|
|
|
public TimeSpan Period { get; set; }
|
|
|
|
|
|
|
|
|
|
public DateTimeOffset Next()
|
|
|
|
|
{
|
|
|
|
|
var delta = DateTimeOffset.Now - Origin;
|
|
|
|
|
var n = Math.Ceiling(delta / Period);
|
|
|
|
|
return Origin + n * Period;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2021-04-02 17:28:07 +05:00
|
|
|
|
class Program
|
2021-10-03 20:08:17 +05:00
|
|
|
|
{
|
2021-07-28 09:47:13 +05:00
|
|
|
|
static void Main(/*string[] args*/)
|
2021-11-17 10:52:03 +05:00
|
|
|
|
{
|
2022-04-12 10:01:56 +05:00
|
|
|
|
// use ServiceFactory to make services
|
2022-05-06 16:35:16 +05:00
|
|
|
|
var op = ServiceFactory.MakeWellOperationsService();
|
|
|
|
|
var d = op.FirstOperationDate(90);
|
2022-03-17 16:56:13 +05:00
|
|
|
|
|
2022-05-06 16:35:16 +05:00
|
|
|
|
var period = TimeSpan.FromHours(5);
|
|
|
|
|
var c = new Cron
|
|
|
|
|
{
|
|
|
|
|
Period = period,
|
|
|
|
|
Origin = new DateTimeOffset(2022, 5, 8, 0, 0, 7, TimeSpan.FromHours(5)),
|
|
|
|
|
};
|
2022-05-05 10:06:15 +05:00
|
|
|
|
|
2022-05-06 16:35:16 +05:00
|
|
|
|
Console.WriteLine($"origin: {c.Origin} next: {c.Next()}");
|
2021-12-02 15:36:51 +05:00
|
|
|
|
|
|
|
|
|
Console.WriteLine("End of Test");
|
|
|
|
|
Console.ReadLine();
|
2021-10-06 16:30:46 +05:00
|
|
|
|
}
|
2021-04-02 17:28:07 +05:00
|
|
|
|
}
|
|
|
|
|
}
|