`

创建多人机票订单数据结构

    博客分类:
  • JAVA
阅读更多
public AirplaneCreateOrderResult createOrder(AirplaneCreateOrderBizDTO aCreateOrderBizDTO) {

		AirplaneCreateOrderResult aCreateOrderResult = new AirplaneCreateOrderResult();

		try {
			String hasInsurance = aCreateOrderBizDTO.getHasInsurance();

			String ori = aCreateOrderBizDTO.getOri();
			String des = aCreateOrderBizDTO.getDes();
			String fno = aCreateOrderBizDTO.getFno();
			String date = aCreateOrderBizDTO.getDate();
			String code = aCreateOrderBizDTO.getCode();
			String seat = aCreateOrderBizDTO.getSeat();

			String carrier = aCreateOrderBizDTO.getCarrier();
			String flightNo = aCreateOrderBizDTO.getFlightNo();
			String fromCity = aCreateOrderBizDTO.getFromCity();
			String arriveCity = aCreateOrderBizDTO.getArriveCity();
			String classCode = aCreateOrderBizDTO.getClassCode();
			String yPrice = aCreateOrderBizDTO.getyPrice();
			String classPrice = aCreateOrderBizDTO.getClassPrice();
			String fuelSurTax = aCreateOrderBizDTO.getFuelSurTax();
			String airportTax = aCreateOrderBizDTO.getAirportTax();
			String departureDate = aCreateOrderBizDTO.getDepartureDate();
			String departureTime = aCreateOrderBizDTO.getDepartureTime();
			String arrivalDate = aCreateOrderBizDTO.getArrivalDate();
			String arrivalTime = aCreateOrderBizDTO.getArrivalTime();

			String psgId = aCreateOrderBizDTO.getPsgId();
			String name = aCreateOrderBizDTO.getName();
			String psgType = aCreateOrderBizDTO.getPsgType();
			String cardType = aCreateOrderBizDTO.getCardType();
			String cardNo = aCreateOrderBizDTO.getCardNo();
			String birthDay = aCreateOrderBizDTO.getBirthDay();
			// String carrierPsgId = aCreateOrderBizDTO.getCarrierPsgId();
			String country = aCreateOrderBizDTO.getCountry();
			String mobilePhone = aCreateOrderBizDTO.getMobilePhone();
			String insueSum = aCreateOrderBizDTO.getInsueSum();
			String insueFee = aCreateOrderBizDTO.getInsueFee();

			String insueCnt = aCreateOrderBizDTO.getInsueCnt();
			String insuePrice = aCreateOrderBizDTO.getInsuePrice();
			String insueProductNo = aCreateOrderBizDTO.getInsueProductNo();

			String priceId = aCreateOrderBizDTO.getPriceId();
			String offerpsgType = aCreateOrderBizDTO.getOfferpsgType();
			String fare = aCreateOrderBizDTO.getFare();
			String agentComm = aCreateOrderBizDTO.getAgentComm();
			String offerfuelSurTax = aCreateOrderBizDTO.getOfferfuelSurTax();
			String offerairportTax = aCreateOrderBizDTO.getOfferairportTax();

			String linker = aCreateOrderBizDTO.getLinker();
			// String address = aCreateOrderBizDTO.getAddress();
			String telephone = aCreateOrderBizDTO.getTelephone();
			String isDomc = aCreateOrderBizDTO.getIsDomc();
			String ticketLimitDate = aCreateOrderBizDTO.getTicketLimitDate();
			String ticketLimitTime = aCreateOrderBizDTO.getTicketLimitTime();
			String balanceMoney = aCreateOrderBizDTO.getBalanceMoney();
			// String customerOrderNo = aCreateOrderBizDTO.getCustomerOrderNo();
			// String customerNo = aCreateOrderBizDTO.getCustomerNo();
			// String remark = aCreateOrderBizDTO.getRemark();

			String payType = aCreateOrderBizDTO.getPayType();
			// String linkeraddress = aCreateOrderBizDTO.getLinkeraddress();
			String linkerName = aCreateOrderBizDTO.getLinkerName();
			// String zip = aCreateOrderBizDTO.getZip();
			String telphone = aCreateOrderBizDTO.getTelephone();
			String linkermobilePhone = aCreateOrderBizDTO.getLinkermobilePhone();
			String sendTime = aCreateOrderBizDTO.getSendTime();
			String linkerEmail = aCreateOrderBizDTO.getLinkerEmail();
			String needInvoices = aCreateOrderBizDTO.getNeedInvoices();
			String invoicesSendType = aCreateOrderBizDTO.getInvoicesSendType();
			String sendTktsTypeCode = aCreateOrderBizDTO.getSendTktsTypeCode();
			// String isPrintSerial = aCreateOrderBizDTO.getIsPrintSerial();
			String sendTktDepId = aCreateOrderBizDTO.getSendTktDepId();
			String sendTktDepName = aCreateOrderBizDTO.getSendTktDepName();

			// String insuranceId = aCreateOrderBizDTO.getInsuranceId();
			// String shouldGath = aCreateOrderBizDTO.getShouldGath();
			// String shouldPay = aCreateOrderBizDTO.getShouldPay();
			// String retMoney = aCreateOrderBizDTO.getRetMoney();
			// String gain = aCreateOrderBizDTO.getGain();
			// String insuranceCount = aCreateOrderBizDTO.getInsuranceCount();
			// String insuranceSummary = aCreateOrderBizDTO.getInsuranceSummary();

			String[] spsgIdArray = psgId.split(",");
			String[] nameArray = name.split(",");
			String[] psgTypeArray = psgType.split(",");
			String[] cardTypeArray = cardType.split(",");
			String[] cardNoArray = cardNo.split(",");
			String[] birthDayArray = birthDay.split(",");
			String[] countryArray = country.split(",");
			String[] mobilePhoneArray = mobilePhone.split(",");
			String[] insueSumArray = insueSum.split(",");
			String[] insueFeeArray = insueFee.split(",");
			String[] insueCntArray = insueCnt.split(",");
			String[] insuePriceArray = insuePrice.split(",");
			String[] insueProductNoArray = insueProductNo.split(",");

			String[] priceIdArray = priceId.split(",");
			String[] offerpsgTypeArray = offerpsgType.split(",");
			String[] fareArray = fare.split(",");
			String[] agentCommArray = agentComm.split(",");
			String[] offerfuelSurTaxArray = offerfuelSurTax.split(",");
			String[] offerairportTaxArray = offerairportTax.split(",");

			String requestXml = "<data>";

			requestXml += "<checkCabinReq>";
			requestXml += StringUtil.joinXmlElement("ori", ori);
			requestXml += StringUtil.joinXmlElement("des", des);
			requestXml += StringUtil.joinXmlElement("fno", fno);
			requestXml += StringUtil.joinXmlElement("date", date);
			requestXml += StringUtil.joinXmlElement("code", code);
			requestXml += StringUtil.joinXmlElement("seat", seat);
			requestXml += "</checkCabinReq>";

			// 订单航程列表信息
			requestXml += "<orderReq>";
			requestXml += StringUtil.joinXmlElement("hasInsurance", hasInsurance);
			requestXml += "<orderFlightList>";
			requestXml += "<orderFlight>";
			requestXml += StringUtil.joinXmlElement("carrier", carrier);
			requestXml += StringUtil.joinXmlElement("flightNo", flightNo);
			requestXml += StringUtil.joinXmlElement("fromCity", fromCity);
			requestXml += StringUtil.joinXmlElement("arriveCity", arriveCity);
			requestXml += StringUtil.joinXmlElement("classCode", classCode);
			requestXml += StringUtil.joinXmlElement("yPrice", yPrice);
			requestXml += StringUtil.joinXmlElement("classPrice", classPrice);
			requestXml += StringUtil.joinXmlElement("fuelSurTax", fuelSurTax);
			requestXml += StringUtil.joinXmlElement("airportTax", airportTax);
			requestXml += StringUtil.joinXmlElement("departureDate", departureDate);
			requestXml += StringUtil.joinXmlElement("departureTime", departureTime);
			requestXml += StringUtil.joinXmlElement("arrivalDate", arrivalDate);
			requestXml += StringUtil.joinXmlElement("arrivalTime", arrivalTime);
			requestXml += "</orderFlight>";
			requestXml += "</orderFlightList>";

			// 乘客信息列表
			requestXml += "<passengerList>";

			for (int i = 0; i < spsgIdArray.length; i++) {
				requestXml += "<passengerInfo>";
				requestXml += StringUtil.joinXmlElement("psgId", spsgIdArray[i]);
				requestXml += StringUtil.joinXmlElement("name", nameArray[i]);
				requestXml += StringUtil.joinXmlElement("psgType", psgTypeArray[i]);
				requestXml += StringUtil.joinXmlElement("cardType", cardTypeArray[i]);
				requestXml += StringUtil.joinXmlElement("cardNo", cardNoArray[i]);
				requestXml += StringUtil.joinXmlElement("birthDay", birthDayArray[i]);
				// requestXml += StringUtil.joinXmlElement("carrierPsgId", carrierPsgId);
				requestXml += StringUtil.joinXmlElement("country", countryArray[i]);
				requestXml += StringUtil.joinXmlElement("mobilePhone", mobilePhoneArray[i]);
				requestXml += StringUtil.joinXmlElement("insueSum", insueSumArray[i]);
				requestXml += StringUtil.joinXmlElement("insueFee", insueFeeArray[i]);

				requestXml += StringUtil.joinXmlElement("insueCnt", insueCntArray[i]);
				requestXml += StringUtil.joinXmlElement("insuePrice", insuePriceArray[i]);
				requestXml += StringUtil.joinXmlElement("insueProductNo", insueProductNoArray[i]);
				requestXml += "</passengerInfo>";
			}
			requestXml += "</passengerList>";

			// 报价项列表
			requestXml += "<priceList>";
			for (int i = 0; i < priceIdArray.length; i++) {
				requestXml += "<priceInfo>";
				requestXml += StringUtil.joinXmlElement("priceId", priceIdArray[i]);
				requestXml += StringUtil.joinXmlElement("psgType", offerpsgTypeArray[i]);
				requestXml += StringUtil.joinXmlElement("fare", fareArray[i]);
				requestXml += StringUtil.joinXmlElement("agentComm", agentCommArray[i]);
				requestXml += StringUtil.joinXmlElement("fuelSurTax", offerfuelSurTaxArray[i]);
				requestXml += StringUtil.joinXmlElement("airportTax", offerairportTaxArray[i]);
				requestXml += "</priceInfo>";
			}
			requestXml += "</priceList>";

			// 订单信息
			requestXml += "<orderInfo>";
			for (int i = 0; i < 1; i++) {
				requestXml += StringUtil.joinXmlElement("linker", linker);
				// requestXml += StringUtil.joinXmlElement("address", address);
				requestXml += StringUtil.joinXmlElement("telephone", telephone);
				requestXml += StringUtil.joinXmlElement("isDomc", isDomc);
				requestXml += StringUtil.joinXmlElement("ticketLimitDate", ticketLimitDate);
				requestXml += StringUtil.joinXmlElement("ticketLimitTime", ticketLimitTime);
				requestXml += StringUtil.joinXmlElement("balanceMoney", balanceMoney);
				// requestXml += StringUtil.joinXmlElement("customerOrderNo", customerOrderNo);
				// requestXml += StringUtil.joinXmlElement("customerNo", customerNo);
				// requestXml += StringUtil.joinXmlElement("remark", remark);
			}
			requestXml += "</orderInfo>";

			// 联系人信息
			requestXml += "<linkerInfo>";
			for (int i = 0; i < 1; i++) {
				requestXml += StringUtil.joinXmlElement("payType", payType);
				// requestXml += StringUtil.joinXmlElement("address", linkeraddress);
				requestXml += StringUtil.joinXmlElement("linkerName", linkerName);
				// requestXml += StringUtil.joinXmlElement("zip", zip);
				requestXml += StringUtil.joinXmlElement("telphone", telphone);
				requestXml += StringUtil.joinXmlElement("mobilePhone", linkermobilePhone);
				requestXml += StringUtil.joinXmlElement("sendTime", sendTime);
				requestXml += StringUtil.joinXmlElement("linkerEmail", linkerEmail);
				requestXml += StringUtil.joinXmlElement("needInvoices", needInvoices);
				requestXml += StringUtil.joinXmlElement("invoicesSendType", invoicesSendType);
				requestXml += StringUtil.joinXmlElement("sendTktsTypeCode", sendTktsTypeCode);
				// requestXml += StringUtil.joinXmlElement("isPrintSerial", isPrintSerial);
				requestXml += StringUtil.joinXmlElement("sendTktDepId", sendTktDepId);
				requestXml += StringUtil.joinXmlElement("sendTktDepName", sendTktDepName);
			}
			requestXml += "</linkerInfo>";

			requestXml += "</orderReq>";

			requestXml += "</data>";

			String encryptCode = Md5.md5(requestXml + key);

			Map<String, String> paramasMap = new HashMap<String, String>();
			paramasMap.put("requestXml", requestXml);
			paramasMap.put("encryptCode", encryptCode);

			String xmlResult = HttpUtil.getUrlAsString(createOrderUrl, paramasMap);

			if (StringUtils.isNotEmpty(xmlResult)) {
				AirplaneProxyResult airplaneProxyResult = (AirplaneProxyResult) XmlUtil.xml2Object("data", xmlResult, AirplaneProxyResult.class);
				if (airplaneProxyResult != null && ReturnCodeEnum.SUCCESS.getCode().equals(airplaneProxyResult.getResultCode())) {
					aCreateOrderResult.setResultCode(airplaneProxyResult.getResultCode());
					aCreateOrderResult.setResultMsg(airplaneProxyResult.getResultMsg());

					OrderResult orderResult = airplaneProxyResult.getOrderResult();
					aCreateOrderResult.setSubsOrderNo(orderResult.getSubsOrderNo());
					aCreateOrderResult.setPnr(orderResult.getPnr());
					aCreateOrderResult.setPassengerCount(orderResult.getPassengerCount());
					aCreateOrderResult.setBalanceMoney(orderResult.getBalanceMoney());
					aCreateOrderResult.setStatus(orderResult.getStatus());
					aCreateOrderResult.setTicketLimitDt(orderResult.getTicketLimitDt());
					aCreateOrderResult.setTicketLimitTime(orderResult.getTicketLimitTime());

					orderResult = (OrderResult) XmlUtil.xml2Object("data/orderResult/priceList", xmlResult, OrderResult.class);
					aCreateOrderResult.setPriceList(orderResult.getPriceList());
				}
				log.info("飞机票生成订单, 发送结果 : " + airplaneProxyResult);
			}
		} catch (Exception e) {
			log.error("飞机票生成订单异常", e);
		}

		return aCreateOrderResult;

	}

 

分享到:
评论

相关推荐

    CrowdPose 多人姿态估计数据集

    CrowdPose 多人姿态估计数据集CrowdPose 多人姿态估计数据集CrowdPose 多人姿态估计数据集CrowdPose 多人姿态估计数据集CrowdPose 多人姿态估计数据集CrowdPose 多人姿态估计数据集CrowdPose 多人姿态估计数据集...

    多人办公数据同步管理系统的设计与实现(设计+源码)-kaic.rar

    中介接单统计工具 多人操作 实时更新数据 二次开发 中介接单统计工具 多人操作 实时更新数据 二次开发 中介接单统计工具 多人操作 实时更新数据 二次开发 中介接单统计工具 多人操作 实时更新数据 二次开发 中介接单...

    unity Pun2多人在线,数据同步,数据收发Demo

    Unity引擎是游戏开发领域广泛应用的一款跨平台开发工具,尤其在3D游戏开发中占据主导地位。PUN(Photon Unity Networking)...通过深入研究PUN2的API和最佳实践,开发者能够创建出高性能、低延迟、交互丰富的多人游戏。

    多人聊天程序 多人聊天程序 多人聊天程序 多人聊天程序

    在Java中,可以使用集合框架如ArrayList或LinkedList来存储用户信息,通过线程安全的数据结构确保在多线程环境下的正确操作。 此外,该课程设计还提到了用户注册和登录功能。这需要数据库的支持,用于存储用户的...

    VC++多人聊天室

    【VC++多人聊天室】是一个基于VC++编程环境开发的多用户实时通信应用程序,它旨在模仿像QQ这样的流行即时通讯软件的基本功能。该程序的核心目标是实现用户间的在线聊天,提供一个简单、易于操作的交互界面,使得多个...

    AD10多人协作设置

    AD10多人协作设置,联机多人操作进行PCB绘制

    socket 实现多人聊天

    总的来说,实现“socket多人聊天”涉及到的知识点包括TCP/IP协议基础、Socket编程、线程处理、数据传输以及错误处理等。通过理解和掌握这些技术,我们可以构建出一个高效、可靠的多人聊天系统。在提供的压缩包文件中...

    JAVA多人聊天经典源码

    总的来说,这个"JAVA多人聊天经典源码"是一个综合性的学习项目,它不仅涵盖了基础的Java网络编程,还涉及到多线程、设计模式、数据结构和安全实践等多个方面,对于提升Java开发者的实战技能非常有帮助。通过深入研究...

    多人聊天系统

    在这个多人聊天系统中,Servlet可能会负责接收用户发送的消息,将其存储在合适的数据结构中(如队列或数据库),并广播给其他在线用户。 此外,JavaScript将在客户端发挥关键作用,提供实时更新和用户交互。通过...

    数据结构飞机票管理系统

    设计一个飞机票管理系统,该系统尽可能模拟实际应用的票务系统,解决实际需求。至少包括如下功能:(1)航班基本信息管理包括但不限于以下信息的增填、删除、修改、查找:航班号,航空公司名称,航班起飞、降落、经...

    多人视频语音,并支持多人聊天

    在IT行业中,多人视频语音和多人聊天功能是现代通信技术的重要组成部分,特别是在远程协作和在线会议日益普及的今天。...通过合理的设计和实施,我们可以创建出一个高效、稳定的多人交流平台,满足现代协作的需求。

    Pads多人合作教程

    ### Pads多人合作教程知识点详解 #### 一、概述 在现代电子设计领域,团队协作变得日益重要。特别是在大规模项目中,多人合作可以显著提高工作效率并确保项目的顺利进行。Pads是一款广泛使用的电子设计自动化(EDA...

    Java 多人聊天系统

    在聊天系统中,消息可能包含文本、表情或其他复杂数据结构,这些都需要序列化为可传输的格式。到达目的地后,再进行反序列化恢复成原来的对象。 4. **SQL数据库**:系统使用SQL数据库(如MySQL或SQLite)存储用户...

    快考题多人在线考试创建方法.docx

    多人在线考试的创建,尤其对于大规模的考试,不仅需要系统具备强大的稳定性和并发处理能力,还要有用户友好的操作流程。接下来,我们将详细探讨如何使用快考题平台来创建一个多人在线考试。 首先,考核人员信息录入...

    Java 多人聊天室

    通过创建DatagramSocket实例,我们可以发送和接收数据报文,实现客户端和服务器之间的通信。 Socket通信是Java网络编程的核心,它提供了一种在不同机器间建立和维护连接的方式。在多人聊天室中,服务器端需要监听...

    java多人聊天功能

    这种广播机制可以使用Java集合框架中的数据结构,如ArrayList或LinkedList,来存储客户端的Socket对象。为了提高效率,服务器可能会使用多线程或者异步I/O(如NIO)来处理消息的分发。 此外,考虑到安全性,服务器...

    730410954025355大麦_8.5.X(支持多人订单).apk

    730410954025355大麦_8.5.X(支持多人订单).apk

    JAVA多人聊天室

    在本项目"JAVA多人聊天室"中,我们深入探讨了使用Java进行网络编程以及实现一个多人实时交流平台的关键技术和概念。这个项目包含了不同版本的源代码,这表明它可能经过了迭代和优化,以适应不同的需求和环境。下面将...

    基于UnixC的多人聊天程序

    这就需要高效的数据结构(如链表或队列)来存储客户端的套接字句柄。 在压缩包中的"简易多人聊天"可能包含了实现上述功能的源代码文件,例如服务器端的代码文件(server.c)、客户端的代码文件(client.c),以及...

    Git多人合作流程

    在多人合作开发中,创建分支可以帮助开发者独立工作,避免代码冲突。使用 `git branch` 命令可以创建一个新的分支,例如 `git branch dev` 创建一个名为 `dev` 的分支。不同的分支可以让开发者独立工作,避免代码...

Global site tag (gtag.js) - Google Analytics