121 lines
3.6 KiB
C#
121 lines
3.6 KiB
C#
using System;
|
|
using Newtonsoft.Json;
|
|
|
|
namespace 報到系統客戶端.Data.Models
|
|
{
|
|
/// <summary>
|
|
/// 本地 SignUps 表資料項目
|
|
/// 對應後端 DAC_SignUp1.cs 的 SignUpItem
|
|
/// </summary>
|
|
public class LocalSignUpItem
|
|
{
|
|
[JsonProperty("ID")]
|
|
public int ID { get; set; }
|
|
|
|
[JsonProperty("CourseID")]
|
|
public int CourseID { get; set; }
|
|
|
|
[JsonProperty("SeqNo")]
|
|
public int SeqNo { get; set; }
|
|
|
|
[JsonProperty("Name")]
|
|
public string Name { get; set; }
|
|
|
|
[JsonProperty("Mobile")]
|
|
public string Mobile { get; set; }
|
|
|
|
[JsonProperty("QRCode")]
|
|
public string QRCode { get; set; }
|
|
|
|
[JsonProperty("SignUpType")]
|
|
public string SignUpType { get; set; }
|
|
|
|
[JsonProperty("IDNumber")]
|
|
public string IDNumber { get; set; }
|
|
|
|
[JsonProperty("IDType")]
|
|
public string IDType { get; set; }
|
|
|
|
[JsonProperty("MealType")]
|
|
public string MealType { get; set; }
|
|
|
|
[JsonProperty("Email")]
|
|
public string Email { get; set; }
|
|
|
|
[JsonProperty("LossJobTimes")]
|
|
public int? LossJobTimes { get; set; }
|
|
|
|
[JsonProperty("Gender")]
|
|
public string Gender { get; set; }
|
|
|
|
[JsonProperty("AgreementStatus")]
|
|
public string AgreementStatus { get; set; }
|
|
|
|
[JsonProperty("CheckInTime")]
|
|
public string CheckInTime { get; set; }
|
|
|
|
[JsonProperty("CheckOutTime")]
|
|
public string CheckOutTime { get; set; }
|
|
|
|
[JsonProperty("CreatedAt")]
|
|
public DateTime CreatedAt { get; set; }
|
|
|
|
[JsonProperty("UpdatedAt")]
|
|
public DateTime UpdatedAt { get; set; }
|
|
|
|
/// <summary>
|
|
/// 轉換為後端 API 使用的模型
|
|
/// </summary>
|
|
public static 報到系統客戶端.Models.SignUpItem ConvertToApiModel(LocalSignUpItem local)
|
|
{
|
|
if (local == null) return null;
|
|
|
|
return new 報到系統客戶端.Models.SignUpItem
|
|
{
|
|
ID = local.ID,
|
|
CourseID = local.CourseID,
|
|
Name = local.Name,
|
|
Mobile = local.Mobile,
|
|
QRCode = local.QRCode,
|
|
SignUpType = local.SignUpType,
|
|
Email = local.Email,
|
|
LossJobTimes = local.LossJobTimes,
|
|
Gender = local.Gender,
|
|
AgreementStatus = local.AgreementStatus,
|
|
CheckInTime = local.CheckInTime,
|
|
CheckOutTime = local.CheckOutTime
|
|
};
|
|
}
|
|
|
|
/// <summary>
|
|
/// 從後端 API 模型轉換
|
|
/// </summary>
|
|
public static LocalSignUpItem ConvertFromApiModel(報到系統客戶端.Models.SignUpItem apiModel)
|
|
{
|
|
if (apiModel == null) return null;
|
|
|
|
return new LocalSignUpItem
|
|
{
|
|
ID = apiModel.ID,
|
|
CourseID = apiModel.CourseID,
|
|
SeqNo = apiModel.SeqNo,
|
|
Name = apiModel.Name,
|
|
Mobile = apiModel.Mobile,
|
|
QRCode = apiModel.QRCode,
|
|
SignUpType = apiModel.SignUpType,
|
|
IDNumber = apiModel.IDNumber,
|
|
IDType = apiModel.IDType,
|
|
MealType = apiModel.MealType,
|
|
Email = apiModel.Email,
|
|
LossJobTimes = apiModel.LossJobTimes,
|
|
Gender = apiModel.Gender,
|
|
AgreementStatus = apiModel.AgreementStatus,
|
|
CheckInTime = apiModel.CheckInTime,
|
|
CheckOutTime = apiModel.CheckOutTime,
|
|
CreatedAt = DateTime.Now,
|
|
UpdatedAt = DateTime.Now
|
|
};
|
|
}
|
|
}
|
|
}
|