|
AddOrder方法输入参数中的ProductInOrder对象作了修改,请修改客户端代码或使用wsdl文件地址重新生成代码。
AddOrder 生成订单
输入:int memberId,
string out_trade_no,
int payType, int sendType,
decimal sendFee, decimal totalMoney,
int area, string address, string zip,
string name, string idCard, string mobile, string phone, string email,
string tips, string earlyTime, string lastTime,
ProductInOrder [] products,
string partnerId, string sign
out_trade_no:保存在自己网站数据库中订单记录的唯一标识Id,可为空
payType:1-票到付款、2-支付宝、3-农行支付
sendType:1-送票上门、2-现场取票
sendFee:运费
totalMoney:总价,包含运费
area:收货地区Id
address:收货地址
zip:邮编
name:姓名
idCard:身份证号
mobile:手机
phone:电话
email:电子邮箱
tips:其他需求
earlyTime:期望最早收货时间
lastTime:期望最晚收货时间
ProductInOrder [] products:购买的产品列表
ProductInOrder对象的属性{
int productId; 产品productId
string productName; 产品名称,不能为空
int runId; 购买的班次Id
int[] ticketId; 购买的班次下的票种列表(如果订酒店,则为ProductHotelRoom.Id,表示房间类别)
int[] ticketNum; 购买的每种票的数量(如果订酒店,则为订购该类别的房间数目)
string hotel_in_date; 宾馆入住日期
string hotel_out_date;宾馆退房日期,该天不计费
}
sign:MD5(products前所有参数之和+src+partnerId+partnerKey)
将products数组中所有对象的属性相加得到src:- String src = "";
- for (ProductInOrder a : products){
- src += a.getProductId();
- src += a.getProductName();
- src += a.getRunId();
- List<Integer> ls1 = a.getTicketId().getInt();
- for (Integer i : ls1){
- src += i.intValue();
- }
- List<Integer> ls2 = a.getTicketNum().getInt();
- for (Integer i : ls2){
- src += i.intValue();
- }
- src += a.getHotelInDate();
- src += a.getHotelOutDate();
- }
复制代码 输出:OrderRs
OrderRs的属性
int orderId;生成的订单的Id
string out_trade_no;
decimal price;生成的订单的总价
string sign;MD5(orderId+out_trade_no+price+partnerKey)
注:可以利用sign验证函数返回值是否来自旅游集散网。
|
|