CostCalculationItem/IRaCIS.Core.Application/ViewModels/Pay/PaymentViewModel.cs

138 lines
4.1 KiB
C#

using IRaCIS.Common.Model;
using System;
using System.Collections.Generic;
namespace IRaCIS.Application.ViewModels
{
public class PaymentDTO
{
public PageOutput<PaymentViewModel> CostList { get; set; }
public double ExchangeRate { get; set; }
}
public class PaymentViewModel
{
public Guid Id { get; set; }
public string RankName { get; set; }
public Guid DoctorId { get; set; }
public string YearMonth { get; set; }
public DateTime YearMonthDate { get; set; }
public DateTime? CalculateTime { get; set; }
public string CalculateUser { get; set; }
//额外信息
public string Code { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
public string ChineseName { get; set; }
public string Phone { get; set; }
public string DoctorNameInBank { get; set; }
public string IDCard { get; set; }
public string BankCardNumber { get; set; }
public string BankName { get; set; }
public bool IsLock { get; set; } = false;
public double ExchangeRate { get; set; }
public double PaymentCNY { get; set; }
public double AdjustPaymentCNY { get; set; }
public double TotalPaymentCNY => AdjustPaymentCNY + PaymentCNY;
public double PaymentUSD { get; set; }
public double AdjustPaymentUSD { get; set; }
public double TotalPaymentUSD => AdjustPaymentUSD + PaymentUSD;
}
public class PaymentCommand
{
public Guid Id { get; set; }
public Guid DoctorId { get; set; }
public string YearMonth => new DateTime(Year, Month, 1).ToString("yyyy-MM");
public int Year { get; set; }
public int Month { get; set; }
public double PaymentUSD { get; set; }
public DateTime CalculateTime { get; set; }
public double PaymentCNY { get; set; }
public double ExchangeRate { get; set; }
public string CalculateUser { get; set; }
}
public class MonthlyPaymentQueryDTO : PageInput
{
public DateTime StatisticsDate { get; set; }
public string KeyWord { get; set; }
}
public class TrialAnalysisDTO
{
public Guid TrialId { get; set; }
public string Indication { get; set; }
public string TrialCode { get; set; }
public string Cro { get; set; } = string.Empty;
public int Expedited { get; set; }
public string Type { get; set; }
public double PaymentUSD { get; set; }
public double RevenusUSD { get; set; }
public double GrossProfit => RevenusUSD - PaymentUSD;
public double GrossProfitMargin
{
get {
if (RevenusUSD == 0)
return 0;
else
{
return GrossProfit / RevenusUSD;
}
}
}
}
public class ReviewerAnalysisDTO
{
public List<string> MissingTrialCodes = new List<string>();
public string ChineseName { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
public Guid ReviewerId { get; set; }
public string ReviewerCode { get; set; }
public double PaymentUSD { get; set; }
public double RevenusUSD { get; set; }
public double GrossProfit => RevenusUSD - PaymentUSD;
public double GrossProfitMargin
{
get {
if (RevenusUSD == 0)
return 0;
else
{
return GrossProfit / RevenusUSD;
}
}
}
}
public class AnalysisQueryDTO
{
public string Reviewer { get; set; }
public DateTime BeginDate { get; set; }
public DateTime EndDate { get; set; }
}
public class TrialAnalysisQueryDTO
{
public Guid? CroId { get; set; }
public string TrialCode { get; set; }
public DateTime BeginDate { get; set; }
public DateTime EndDate { get; set; }
}
}