using System; using System.Collections.Generic; using System.Text; namespace Ips.Library.Entity { public class ExeResult : ExeResult { public static ExeResult Create(T result, string arguments, DateTime startTime = default, DateTime exitTime = default, int exitCode = default, string errMsg = "") { return new ExeResult() { ExitCode = exitCode, StartTime = startTime, ExitTime = exitTime, Result = result, ExitMsg = errMsg, Arguments = arguments }; } public static ExeResult Create(T result, string arguments, DateTimeOffset startTime, DateTimeOffset exitTime, int exitCode = default, string errMsg = "") { return new ExeResult() { ExitCode = exitCode, StartTime = startTime.LocalDateTime, ExitTime = exitTime.LocalDateTime, Result = result, ExitMsg = errMsg, Arguments = arguments }; } } public class ExeResult { public int ExitCode { get; set; } public string ExitMsg { get; set; } public DateTime StartTime { get; set; } public DateTime ExitTime { get; set; } public TimeSpan RunTime { get { return ExitTime - StartTime; } } public int RunTimeMs { get { return (int)RunTime.TotalMilliseconds; } } public T Result { get; set; } public string Arguments { get; set; } public override string ToString() { return Result.ToString(); } } }