CostCalculationItem/IRaCIS.Core.Application.Con.../Trial/DTO/DoctorWorkLoadViewModel.cs

248 lines
7.2 KiB
C#
Raw Blame History

This file contains invisible Unicode characters!

This file contains invisible Unicode characters that may be processed differently from what appears below. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to reveal hidden characters.

using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using IRaCIS.Core.Application.Contracts.RequestAndResponse;
using IRaCIS.Core.Domain.Share;
namespace IRaCIS.Application.ViewModels
{
/// <summary>
///后台 工作量审核视图模型
/// </summary>
public class WorkLoadDetailDTO : WorkloadDTO
{
public DateTime CreateTime { get; set; }
public string ChineseName { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
public string Code { get; set; }
public string Indication { get; set; }
public int RowIntId { get; set; }
public Guid RowGuid { get; set; }
public string YearMonthStr { get; set; }
public string WorkTimeStr => YearMonthStr;
public bool IsLock { get; set; } = false;
}
public class WorkLoadDetailViewModel : WorkloadDTO
{
public DateTime CreateTime { get; set; }
public string ChineseName { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
public string Code { get; set; }
public string Indication { get; set; }
public Guid RowGuid { get; set; }
public string YearMonthStr { get; set; }
public bool IsLock { get; set; } = false;
public string DeclareTimeStr => CreateTime.ToString("yyyy-MM-dd");
public string WorkTimeStr => WorkTime.ToString("yyyy-MM-dd");
}
public class CalculatePaymentDTO : WorkloadDTO
{
public string TrialCode { get; set; }
public decimal? TrialAdditional { get; set; }
public decimal AdjustmentMultiple { get; set; }
//public double RankPrice { get; set; }
public decimal PersonalAdditional { get; set; }
public decimal TimepointPrice { get; set; }
public decimal TimepointIn24HPrice { get; set; }
public decimal TimepointIn48HPrice { get; set; }
public decimal AdjudicationPrice { get; set; }
public decimal AdjudicationIn24HPrice { get; set; }
public decimal AdjudicationIn48HPrice { get; set; }
public decimal GlobalPrice { get; set; }
public decimal TrainingPrice { get; set; }
public bool IsNewTrial { get; set; }
public decimal DowntimePrice { get; set; }
public decimal RefresherTrainingPrice { get; set; }
public decimal AdditionalCharge1Price { get; set; }
public decimal AdditionalCharge2Price { get; set; }
public decimal AdditionalCharge3Price { get; set; }
}
/// <summary>
/// 工作量审核数据库查询模型
/// </summary>
public class WorkloadDTO
{
public Guid? Id { get; set; }
public Guid TrialId { get; set; }
public Guid DoctorId { get; set; }
public int DataFrom { get; set; }
public DateTime WorkTime { get; set; }
public decimal Training { get; set; }
public decimal Downtime { get; set; }
public int Timepoint { get; set; }
public int TimepointIn24H { get; set; }
public int TimepointIn48H { get; set; }
public int Adjudication { get; set; }
public int AdjudicationIn24H { get; set; }
public int AdjudicationIn48H { get; set; }
public int Global { get; set; }
public decimal RefresherTraining { get; set; }
public decimal AdditionalCharge1 { get; set; }
public decimal AdditionalCharge2 { get; set; }
public decimal AdditionalCharge3 { get; set; }
public string Note { get; set; }
}
/// <summary>
/// 工作量分页列表模型 医生端查询模型
/// </summary>
public class WorkLoadQueryDTO : PageInput
{
public Guid TrialId { get; set; }
public int WorkLoadFromStatus { get; set; } // 关联枚举
public DateTime? SearchBeginDateTime { get; set; }
public DateTime? SearchEndDateTime { get; set; }
}
/// <summary>
/// 后台查询模型
/// </summary>
public class WorkLoadStatsQueryDTO : PageInput
{
public Guid? TrialId { get; set; }
public Guid? DoctorId { get; set; } = Guid.Empty;
public List<int> WorkLoadFromStatus { get; set; } = new List<int>(); // 关联枚举
public DateTime? SearchBeginDateTime { get; set; }
public DateTime? SearchEndDateTime { get; set; }
}
public class WorkLoadDetailQueryDTO
{
public Guid TrialId { get; set; } = Guid.Empty;
public Guid DoctorId { get; set; } = Guid.Empty;
public string YearMonthStr { get; set; }
}
public class CalculateDoctorAndMonthDTO
{
[Required(ErrorMessage = "需要有效的时间")]
public DateTime CalculateMonth { get; set; }
[Required(ErrorMessage = "需要有效的医生列表")]
public List<Guid> NeedCalculateReviewers { get; set; }
}
public class WorkLoadDoctorQueryDTO : PageInput
{
public Guid TrialId { get; set; } = Guid.Empty;
}
public class WorkLoadCommand : WorkloadDTO
{
public Guid CreateUserId { get; set; }
public int CreateUserType { get; set; }
public Guid UpdateUserId { get; set; }
}
public class ExistWorkloadViewModel
{
public bool IsExist { get; set; }
public WorkloadDTO WorkLoad { get; set; }
}
public class WorkloadCommand : WorkloadDTO
{
}
public class WorkloadExistQueryDTO
{
public Guid TrialId { get; set; }
public Guid DoctorId { get; set; }
public DateTime WorkDate { get; set; }
}
public class WorkLoadAndTrainingDTO
{
public Guid DoctorId { get; set; }/*=Guid.Empty;*/
public string Code { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
public string ChineseName { get; set; }
public DateTime? EnrollTime { get; set; }
public int ReviewerReadingType { get; set; }
public string EnrollTimeStr => EnrollTime?.ToString("yyyy-MM-dd HH:mm:ss");
public DateTime? UpdateTime { get; set; }
public string UpdateTimeStr => UpdateTime?.ToString("yyyy-MM-dd HH:mm:ss");
public decimal TrainingTimes { get; set; }
public decimal Downtime { get; set; }
//读片点
public int Timepoint { get; set; }
public int TimepointIn24H { get; set; }
public int TimepointIn48H { get; set; }
//裁判阅片
public int Adjudication { get; set; }
public int AdjudicationIn24H { get; set; }
public int AdjudicationIn48H { get; set; }
//全局阅片
public int Global { get; set; }
public decimal RefresherTraining { get; set; }
public decimal AdditionalCharge1 { get; set; }
public decimal AdditionalCharge2 { get; set; }
public decimal AdditionalCharge3 { get; set; }
}
public class WorkLoadAndAgreementDTO : WorkLoadAndTrainingDTO
{
public Guid AgreementId { get; set; }
public string AgreementPath { get; set; }
public string AgreementFileName => AgreementPath?.Split('/').Last();
public string AgreementFullPath => SystemConfig.RootUrl + AgreementPath;
}
}