138 lines
4.1 KiB
C#
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; }
|
|
}
|
|
} |