151 lines
3.7 KiB
C#
151 lines
3.7 KiB
C#
using Newtonsoft.Json;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel.DataAnnotations;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
|
|
namespace IRaCIS.Core.Application.Contracts
|
|
{
|
|
|
|
public class UnionStudyBaseModel
|
|
{
|
|
public Guid TrialId { get; set; }
|
|
|
|
public Guid SiteId { get; set; }
|
|
|
|
public Guid SubjectId { get; set; }
|
|
|
|
public Guid SubjectVisitId { get; set; }
|
|
|
|
|
|
public string SubjectCode { get; set; } = String.Empty;
|
|
|
|
public string VisitName { get; set; } = string.Empty;
|
|
|
|
public decimal VisitNum { get; set; }
|
|
|
|
public string TrialSiteCode { get; set; } = string.Empty;
|
|
|
|
public string TrialSiteAliasName { get; set; } = string.Empty;
|
|
|
|
public string Uploader { get; set; } = string.Empty;
|
|
|
|
public DateTime UploadTime { get; set; }
|
|
|
|
public string StudyCode { get; set; }
|
|
|
|
|
|
//[JsonIgnore]
|
|
//public string DicomStudyCode { get; set; } = string.Empty;
|
|
//[JsonIgnore]
|
|
//public int NoneDicomCode { get; set; }
|
|
|
|
public bool IsDicom { get; set; }
|
|
}
|
|
|
|
public class UnionStudyMonitorModel : UnionStudyBaseModel
|
|
{
|
|
public Guid StudyId { get; set; }
|
|
|
|
|
|
|
|
|
|
|
|
public string UploadStartTimeStr => UploadStartTime.ToString("yyyy-MM-dd HH:mm:ss.fff");
|
|
public string UploadFinishedTimeStr => UploadFinishedTime.ToString("yyyy-MM-dd HH:mm:ss.fff");
|
|
|
|
|
|
public double TotalMillisecondsInterval { get; set; }
|
|
|
|
|
|
public string TimeInterval
|
|
{
|
|
get
|
|
{
|
|
|
|
var uploadTimeSpan = UploadFinishedTime - UploadStartTime;
|
|
|
|
return $" {uploadTimeSpan.Hours}:{uploadTimeSpan.Minutes}:{uploadTimeSpan.Seconds}.{uploadTimeSpan.Milliseconds}";
|
|
//if (uploadTimeSpan.Seconds == 0 && uploadTimeSpan.Minutes==0 && uploadTimeSpan.Hours == 0)
|
|
//{
|
|
// return $"{uploadTimeSpan.Milliseconds}毫秒";
|
|
//}
|
|
//else if (uploadTimeSpan.Minutes == 0 && uploadTimeSpan.Hours == 0)
|
|
//{
|
|
// return $"{uploadTimeSpan.Seconds}秒";
|
|
//}
|
|
//else if (uploadTimeSpan.Hours == 0)
|
|
//{
|
|
// return $"{uploadTimeSpan.Minutes} 分钟 {uploadTimeSpan.Seconds} 秒";
|
|
//}
|
|
//else
|
|
//{
|
|
// return $" {uploadTimeSpan.Hours} 小时 {uploadTimeSpan.Minutes} 分钟 {uploadTimeSpan.Seconds} 秒 {uploadTimeSpan.Milliseconds}毫秒";
|
|
//}
|
|
}
|
|
}
|
|
|
|
public DateTime UploadStartTime { get; set; }
|
|
|
|
|
|
public DateTime UploadFinishedTime { get; set; }
|
|
|
|
|
|
public decimal FileSize { get; set; }
|
|
|
|
public string IP { get; set; } = String.Empty;
|
|
|
|
|
|
public bool IsDicomReUpload { get; set; }
|
|
|
|
|
|
public int FileCount { get; set; }
|
|
|
|
public bool IsSuccess = true;
|
|
|
|
public string Note = string.Empty;
|
|
|
|
}
|
|
|
|
|
|
public class UnionStudyViewModel:UnionStudyBaseModel
|
|
{
|
|
|
|
public Guid Id { get; set; }
|
|
|
|
|
|
|
|
public int? Count { get; set; }
|
|
|
|
|
|
public string Modalities { get; set; } = string.Empty;
|
|
|
|
public string Bodypart { get; set; } = string.Empty;
|
|
|
|
public DateTime? StudyTime { get; set; }
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
public class StudyQuery:PageInput
|
|
{
|
|
[NotDefault]
|
|
public Guid TrialId { get; set; }
|
|
|
|
public Guid? SubjectId { get; set; }
|
|
|
|
public Guid? SiteId { get; set; }
|
|
public Guid? SubjectVisitId { get; set; }
|
|
|
|
public string SubjectInfo { get; set; } = String.Empty;
|
|
|
|
|
|
public string[]? VisitPlanArray { get; set; }
|
|
|
|
}
|
|
}
|