Commit bf6663ac authored by liudong1993's avatar liudong1993

1

parent cf009c3f
......@@ -1072,9 +1072,77 @@ namespace REBORN.Module.DMCModule
/// <param name="service"></param>
private void CreateSingleContractToLYJ(RB_Travel_Contract_Extend htModel, TourismContractService service)
{
//这一套合同 没有客人列表,走 合同里抓取
//查询旅客名单
var ContractGuestList = new List<OrderGuestList>();
if (htModel.OrderId > 0)
{
if (htModel.Type == Common.Enum.ResourceTypeEnum.TeamPrice)
{
var glist = GetTravelGuestList(new RB_Travel_Guest_Extend() { IsAllograph = 2, OrderId = htModel.OrderId });
foreach (var item in glist) {
ContractGuestList.Add(new OrderGuestList()
{
Name = item.SurName + item.Name,
Birthday = item.Birthday
});
}
}
else if (htModel.Type == Common.Enum.ResourceTypeEnum.Visa)
{
var glist = GetTravelGuestList(new RB_Travel_Guest_Extend() { IsAllograph = 1, OrderId = htModel.OrderId });
foreach (var item in glist)
{
ContractGuestList.Add(new OrderGuestList()
{
Name = item.SurName + item.Name,
Birthday = item.Birthday
});
}
}
else if (htModel.Type == Common.Enum.ResourceTypeEnum.Hotel)
{
var orderModel = GetHotelOrder(htModel.OrderId);
if (!string.IsNullOrWhiteSpace(orderModel.GuestInfo))
{
ContractGuestList = JsonConvert.DeserializeObject<List<OrderGuestList>>(orderModel.GuestInfo);
}
}
else if (htModel.Type == Common.Enum.ResourceTypeEnum.TicketCoupons)
{
var orderModel = GetTicketOrder(htModel.OrderId);
if (!string.IsNullOrWhiteSpace(orderModel.GuestInfo))
{
ContractGuestList = JsonConvert.DeserializeObject<List<OrderGuestList>>(orderModel.GuestInfo);
}
}
else if (htModel.Type == Common.Enum.ResourceTypeEnum.SingleTicket)
{
var orderModel = GetcRMTicketOrder(htModel.OrderId);
if (!string.IsNullOrWhiteSpace(orderModel.GuestInfo))
{
ContractGuestList = JsonConvert.DeserializeObject<List<OrderGuestList>>(orderModel.GuestInfo);
}
}
}
if (ContractGuestList.Any()) {
//判断是否 儿童
foreach (var item in ContractGuestList)
{
bool IsChild = false;
if (item.Birthday.HasValue && htModel.C_StartDate.HasValue)
{
// 计算基础年龄(年份差)
int age = htModel.C_StartDate.Value.Year - item.Birthday.Value.Year;
// 如果今年生日还没过,年龄减1
if (item.Birthday.Value.Date > htModel.C_StartDate.Value.AddYears(-age)) { age--; }
if (age < 12) { IsChild = true; }
}
item.PassportNo = IsChild ? "1" : "0";
}
}
htModel.ContractGuestList = Common.Plugin.JsonHelper.DeserializeObject<List<ContractGuest>>(htModel.GuestJson);
List<object> GuestInfo = new List<object>();
List<Tourist> Tourist = new List<Tourist>();
......@@ -1090,6 +1158,8 @@ namespace REBORN.Module.DMCModule
var TouristId = new TouristId { IDType = (int)IDType.IDCard, IDNumber = item.CGuestCertificateNum };
if (item.CGuestCertificateType == "护照") { TouristId = new TouristId { IDType = (int)IDType.Passport, IDNumber = item.CGuestCertificateNum }; }
string IsChild = ContractGuestList.Where(x => x.Name == item.CGuestName).FirstOrDefault()?.PassportNo ?? "0";
Tourist.Add(new Tourist
{
Number = Number++,
......@@ -1098,7 +1168,8 @@ namespace REBORN.Module.DMCModule
Phone = item.CGuestTel,
Race = "",
Health = item.CGuestHealth,
ID = TouristId
ID = TouristId,
IsChild = IsChild == "1" ? true : false
});
if (!string.IsNullOrEmpty(htModel.Tourists_Name) && htModel.Tourists_Name == item.CGuestName)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment