private void BindExternalInterfaceInfo(Service.Organization.Domain.ExternalInterfaceSetting setting) { lblSecurityCode.Text = setting.SecurityCode; if (setting.InterfaceInvokeMethod != null) { foreach (var item in setting.InterfaceInvokeMethod) { if (item == "PNRImport") { chkPNRImport.Checked = true; continue; } if (item == "PNRImportWithoutPat") { chkPNRImportWithoutPat.Checked = true; continue; } if (item == "ProduceOrder") { chkProduceOrder.Checked = true; continue; } if (item == "ApplyRefund") { chkApplyRefund.Checked = true; continue; } if (item == "ApplyPostpone") { chkApplyPostpone.Checked = true; continue; } if (item == "OrderPay") { chkOrderPay.Checked = true; continue; } if (item == "PayOrderByPayType") { chkPayOrderByPayType.Checked = true; continue; } if (item == "PayApplyform") { chkPayApplyform.Checked = true; continue; } if (item == "PayApplyformByPayType") { chkPayApplyformByPayType.Checked = true; continue; } if (item == "QueryOrder") { chkQueryOrder.Checked = true; continue; } if (item == "QueryApplyform") { chkQueryApplyform.Checked = true; continue; } if (item == "AutoPay") { chkAutoPay.Checked = true; continue; } if (item == "QueryFlights") { chkQueryFlights.Checked = true; continue; } if (item == "QueryFlight") { chkQueryFlight.Checked = true; continue; } if (item == "QueryFlightStop") { chkQueryFlightStop.Checked = true; continue; } if (item == "ProduceOrder2") { chkProduceOrder2.Checked = true; continue; } if (item == "ManualPay") { chkManualPay.Checked = true; continue; } } } if ((setting.PolicyTypes & Common.Enums.PolicyType.Normal) == Common.Enums.PolicyType.Normal) { chkNormal.Checked = true; } if ((setting.PolicyTypes & Common.Enums.PolicyType.Bargain) == Common.Enums.PolicyType.Bargain) { chkBargain.Checked = true; } if ((setting.PolicyTypes & Common.Enums.PolicyType.Team) == Common.Enums.PolicyType.Team) { chkTeam.Checked = true; } if ((setting.PolicyTypes & Common.Enums.PolicyType.Special) == Common.Enums.PolicyType.Special) { chkSpecial.Checked = true; } if (!string.IsNullOrWhiteSpace(setting.ConfirmSuccessAddress)) { txtConfirmSuccessAddress.Text = setting.ConfirmSuccessAddress; } if (!string.IsNullOrWhiteSpace(setting.ConfirmFailAddress)) { txtConfirmFailAddress.Text = setting.ConfirmFailAddress; } if (!string.IsNullOrWhiteSpace(setting.PaySuccessAddress)) { txtPaySuccessAddress.Text = setting.PaySuccessAddress; } if (!string.IsNullOrWhiteSpace(setting.DrawSuccessAddress)) { txtDrawSuccessAddress.Text = setting.DrawSuccessAddress; } if (!string.IsNullOrWhiteSpace(setting.RefuseAddress)) { txtRefuseAddress.Text = setting.RefuseAddress; } if (!string.IsNullOrWhiteSpace(setting.AgreedAddress)) { txtAgreedAddress.Text = setting.AgreedAddress; } if (!string.IsNullOrWhiteSpace(setting.RefundSuccessAddress)) { txtRefundSuccessAddress.Text = setting.RefundSuccessAddress; } if (!string.IsNullOrWhiteSpace(setting.ReturnTicketSuccessAddress)) { txtReturnTicketSuccessAddress.Text = setting.ReturnTicketSuccessAddress; } if (!string.IsNullOrWhiteSpace(setting.ReschedulingAddress)) { txtReschedulingAddress.Text = setting.ReschedulingAddress; } if (!string.IsNullOrWhiteSpace(setting.RefuseTicketAddress)) { txtRefuseTicketAddress.Text = setting.RefuseTicketAddress; } if (!string.IsNullOrWhiteSpace(setting.ReschPaymentAddress)) { txtReschPaymentAddress.Text = setting.ReschPaymentAddress; } if (!string.IsNullOrWhiteSpace(setting.RefuseChangeAddress)) { txtRefuseChangeAddress.Text = setting.RefuseChangeAddress; } if (!string.IsNullOrWhiteSpace(setting.CanceldulingAddress)) { txtCanceldulingAddress.Text = setting.CanceldulingAddress; } if (!string.IsNullOrWhiteSpace(setting.RefundApplySuccessAddress)) { txtRefundApplySuccessAddress.Text = setting.RefundApplySuccessAddress; } txtIP.Text = setting.BindIP; }
private static void Vaild(string flights, string passengers, string contact, string policyType, Service.Organization.Domain.ExternalInterfaceSetting setting) { if (string.IsNullOrEmpty(flights)) { InterfaceInvokeException.ThrowParameterMissException("flights"); } if (string.IsNullOrEmpty(passengers)) { InterfaceInvokeException.ThrowParameterMissException("passengers"); } if (string.IsNullOrEmpty(policyType)) { InterfaceInvokeException.ThrowParameterMissException("policyType"); } if (flights.Split('|').Count() != 16) { InterfaceInvokeException.ThrowParameterErrorException("flights"); } foreach (var item in passengers.Split('^')) { if (item.Split('|').Count() != 4) { InterfaceInvokeException.ThrowParameterErrorException("passengers"); } } if (contact != "" && contact.Split('|').Count() != 3) { InterfaceInvokeException.ThrowParameterErrorException("contact"); } if ((setting.PolicyTypes & PolicyType.Bargain) != (PolicyType)byte.Parse(policyType) && (setting.PolicyTypes & PolicyType.Normal) != (PolicyType)byte.Parse(policyType) && (setting.PolicyTypes & PolicyType.Team) != (PolicyType)byte.Parse(policyType) && (setting.PolicyTypes & PolicyType.Special) != (PolicyType)byte.Parse(policyType)) { InterfaceInvokeException.ThrowNoAccessException(); } if (policyType != "2" && policyType != "4" && policyType != "8" && policyType != "16") { InterfaceInvokeException.ThrowParameterErrorException("policyType"); } }
public static void GetPolicy(List <MatchedPolicy> matchedPolicies, List <MatchedPolicy> matchedSpeciafPolicies, StringBuilder str, PolicyType policyType, List <DataTransferObject.FlightQuery.FlightView> flights, Service.Organization.Domain.ExternalInterfaceSetting interfaceSetting) { if ((policyType & PolicyType.Special) != PolicyType.Special) { var list = from item in matchedPolicies let generalPolicy = item.OriginalPolicy as IGeneralPolicy let regulation = item.OriginalPolicy as IHasRegulation select new { Id = item.Id, Type = item.PolicyType == PolicyType.BargainDefault ? (int)PolicyType.Bargain : item.PolicyType == PolicyType.NormalDefault ? (int)PolicyType.Normal : (int)item.PolicyType, Fare = item.ParValue == 100000 ? "" : FormatUtility.FormatAmount(item.ParValue), Rebate = FormatUtility.FormatAmount(item.Commission * 100), Commission = item.ParValue == 100000 ? "" : FormatUtility.FormatAmount(item.ParValue - item.SettleAmount), Amount = FormatUtility.FormatAmount(item.SettleAmount), Ticket = (int)(item.OriginalPolicy == null ? TicketType.BSP : item.OriginalPolicy.TicketType), EI = ReplaceEnter((regulation == null ? getEI(flights) : getProvision(regulation))), OfficeNo = item.OriginalPolicy == null && item.NeedAUTH ? item.OfficeNumber : (item.OriginalPolicy != null && item.OriginalPolicy.NeedAUTH ? item.OriginalPolicy.OfficeCode : ""), Condition = item.OriginalPolicy == null ? "" : item.OriginalPolicy.Condition, Confirm = item.ConfirmResource ? "1" : "0", ChangePNR = generalPolicy == null ? false : generalPolicy.ChangePNR, EtdzTime = getTimeRange(item.WorkStart, item.WorkEnd), RefundTime = getTimeRange(item.WorkStart, item.WorkEnd), ScrapTime = getTimeRange(item.RefundStart, item.RefundEnd), EtdzSpeed = item.Speed == null ? 0 : item.Speed.ETDZ / 60, RefundSpeed = item.Speed == null ? 0 : item.Speed.Refund / 60 }; foreach (var item in list) { if (((interfaceSetting.PolicyTypes & PolicyType.Normal) == (PolicyType)item.Type) || ((interfaceSetting.PolicyTypes & PolicyType.Bargain) == (PolicyType)item.Type) || ((interfaceSetting.PolicyTypes & PolicyType.Team) == (PolicyType)item.Type)) { str.Append("<policy>"); str.AppendFormat("<id>{0}</id>", item.Id); str.AppendFormat("<type>{0}</type>", item.Type); str.AppendFormat("<fare>{0}</fare>", item.Fare); str.AppendFormat("<rebate>{0}</rebate>", item.Rebate); str.AppendFormat("<commission>{0}</commission>", item.Commission); str.AppendFormat("<amount>{0}</amount>", item.Amount); str.AppendFormat("<ticket>{0}</ticket>", item.Ticket); str.AppendFormat("<ei>{0}</ei>", item.EI); //需要授权的office号才有,否则为空字符 str.AppendFormat("<officeNo>{0}</officeNo>", item.OfficeNo); str.AppendFormat("<condition>{0}</condition>", item.Condition); str.AppendFormat("<confirm>{0}</confirm>", item.Confirm); str.AppendFormat("<changePNR>{0}</changePNR>", item.ChangePNR ? 1 : 0); str.AppendFormat("<etdzTime>{0}</etdzTime>", item.EtdzTime); str.AppendFormat("<refundTime>{0}</refundTime>", item.RefundTime); str.AppendFormat("<scrapTime>{0}</scrapTime>", item.ScrapTime); str.AppendFormat("<etdzSpeed>{0}</etdzSpeed>", item.EtdzSpeed); str.Append("</policy>"); } } if ((policyType & PolicyType.Team) != PolicyType.Team) { var queryList = from item in matchedSpeciafPolicies where item != null && item.OriginalPolicy != null let specialPolicy = item.OriginalPolicy as SpecialPolicyInfo let specialPolicyInfo = SpecialProductService.Query(specialPolicy.Type) select new { Id = item.Id, Type = (int)item.PolicyType, Fare = item.ParValue == 100000 ? "" : FormatUtility.FormatAmount(item.ParValue), Rebate = FormatUtility.FormatAmount(item.Commission * 100), Commission = item.ParValue == 100000 ? "" : FormatUtility.FormatAmount(item.ParValue - item.SettleAmount), Amount = FormatUtility.FormatAmount(item.SettleAmount), Ticket = (int)(item.OriginalPolicy == null ? TicketType.BSP : item.OriginalPolicy.TicketType), EI = ReplaceEnter(getProvision(item.OriginalPolicy as IHasRegulation)), OfficeNo = item.OriginalPolicy == null && item.NeedAUTH ? item.OfficeNumber : (item.OriginalPolicy != null && item.OriginalPolicy.NeedAUTH ? item.OriginalPolicy.OfficeCode : ""), Condition = item.OriginalPolicy == null ? "" : item.OriginalPolicy.Condition, Confirm = item.ConfirmResource ? "1" : "0", ChangePNR = "0", EtdzTime = getTimeRange(item.WorkStart, item.WorkEnd), RefundTime = getTimeRange(item.WorkStart, item.WorkEnd), ScrapTime = getTimeRange(item.RefundStart, item.RefundEnd), EtdzSpeed = item.Speed == null ? 0 : item.Speed.ETDZ / 60, RefundSpeed = item.Speed == null ? 0 : item.Speed.Refund / 60 }; foreach (var item in queryList) { if (((interfaceSetting.PolicyTypes & PolicyType.Team) == (PolicyType)item.Type)) { str.Append("<policy>"); str.AppendFormat("<id>{0}</id>", item.Id); str.AppendFormat("<type>{0}</type>", item.Type); str.AppendFormat("<fare>{0}</fare>", item.Fare); str.AppendFormat("<rebate>{0}</rebate>", item.Rebate); str.AppendFormat("<commission>{0}</commission>", item.Commission); str.AppendFormat("<amount>{0}</amount>", item.Amount); str.AppendFormat("<ticket>{0}</ticket>", item.Ticket); str.AppendFormat("<ei>{0}</ei>", item.EI); //需要授权的office号才有,否则为空字符 str.AppendFormat("<officeNo>{0}</officeNo>", item.OfficeNo); str.AppendFormat("<condition>{0}</condition>", item.Condition); str.AppendFormat("<confirm>{0}</confirm>", item.Confirm); str.AppendFormat("<changePNR>{0}</changePNR>", item.ChangePNR); str.AppendFormat("<etdzTime>{0}</etdzTime>", item.EtdzTime); str.AppendFormat("<refundTime>{0}</refundTime>", item.RefundTime); str.AppendFormat("<scrapTime>{0}</scrapTime>", item.ScrapTime); str.AppendFormat("<etdzSpeed>{0}</etdzSpeed>", item.EtdzSpeed); str.Append("</policy>"); } } foreach (var item in matchedSpeciafPolicies) { if (!matchedPolicies.Contains(item)) { matchedPolicies.Add(item); } } } } else { var queryList = from item in matchedPolicies let specialPolicy = item.OriginalPolicy as SpecialPolicyInfo let specialPolicyInfo = SpecialProductService.Query(specialPolicy.Type) where item != null && item.OriginalPolicy != null && !specialPolicy.ConfirmResource select new { Id = item.Id, Type = (int)item.PolicyType, Fare = item.ParValue == 100000 ? "" : FormatUtility.FormatAmount(item.ParValue), Rebate = FormatUtility.FormatAmount(item.Commission * 100), Commission = 0, Amount = FormatUtility.FormatAmount(item.SettleAmount), Ticket = (int)(item.OriginalPolicy == null ? TicketType.BSP : item.OriginalPolicy.TicketType), EI = ReplaceEnter(getProvision(item.OriginalPolicy as IHasRegulation)), OfficeNo = item.OriginalPolicy == null && item.NeedAUTH ? item.OfficeNumber : (item.OriginalPolicy != null && item.OriginalPolicy.NeedAUTH ? item.OriginalPolicy.OfficeCode : ""), Condition = item.OriginalPolicy == null ? "" : item.OriginalPolicy.Condition, Confirm = item.ConfirmResource ? "1" : "0", ChangePNR = "0", EtdzTime = getTimeRange(item.WorkStart, item.WorkEnd), RefundTime = getTimeRange(item.WorkStart, item.WorkEnd), ScrapTime = getTimeRange(item.RefundStart, item.RefundEnd), EtdzSpeed = item.Speed == null ? 0 : item.Speed.ETDZ / 60, RefundSpeed = item.Speed == null ? 0 : item.Speed.Refund / 60, OrganizaPolicy = item.OriginalPolicy }; foreach (var item in queryList) { if (((interfaceSetting.PolicyTypes & PolicyType.Special) == (PolicyType)item.Type)) { str.Append("<policy>"); str.AppendFormat("<id>{0}</id>", item.Id); str.AppendFormat("<type>{0}</type>", item.Type); str.AppendFormat("<fare>{0}</fare>", item.Fare); str.AppendFormat("<rebate>{0}</rebate>", item.Rebate); str.AppendFormat("<commission>{0}</commission>", item.Commission); str.AppendFormat("<amount>{0}</amount>", item.Amount); str.AppendFormat("<ticket>{0}</ticket>", item.Ticket); str.AppendFormat("<ei>{0}</ei>", item.EI); //需要授权的office号才有,否则为空字符 str.AppendFormat("<officeNo>{0}</officeNo>", item.OfficeNo); str.AppendFormat("<condition>{0}</condition>", item.Condition); str.AppendFormat("<confirm>{0}</confirm>", item.Confirm); str.AppendFormat("<changePNR>{0}</changePNR>", item.ChangePNR); str.AppendFormat("<etdzTime>{0}</etdzTime>", item.EtdzTime); str.AppendFormat("<refundTime>{0}</refundTime>", item.RefundTime); str.AppendFormat("<scrapTime>{0}</scrapTime>", item.ScrapTime); str.AppendFormat("<etdzSpeed>{0}</etdzSpeed>", item.EtdzSpeed); str.Append("</policy>"); } } } }