//
//  JSUMSEntities.h
//  ThirdAppDemo
//
//  Created by suzq on 14-7-23.
//  Copyright (c) 2014年 suzq. All rights reserved.
//

#import <Foundation/Foundation.h>
#import "JsonEntity.h"
/**
 *  订单消费
 */
@interface OrderConsumeEntity : NSObject<JsonEntity>
//应用接入ID
@property (nonatomic,strong) NSString *appAccessKeyId;
//商户订单号
@property (nonatomic,strong) NSString *extOrderNo;
//订单描述
//@property (nonatomic,strong) NSString *orderDesc;
//订单支付途径
@property (nonatomic,strong) NSString *orderWay;
//商户号
@property (nonatomic,strong) NSString *mrchNo;
//订单金额
@property (nonatomic,strong) NSString *amount;
//货币种类
@property (nonatomic,strong) NSString *currency;
//拓展域01
@property (nonatomic,strong) NSString *ext01;
//拓展域02
@property (nonatomic,strong) NSString *ext02;
//拓展域03
@property (nonatomic,strong) NSString *ext03;
//签名数据
@property (nonatomic,strong) NSString *signData;

-(id)initWithExtOrderNo:(NSString *)extOrderNo mrchNo:(NSString *)mrchNo amount:(NSString *)amount currency:(NSString *)currency ext01:(NSString *)ext01 ext02:(NSString *)ext02 ext03:(NSString *)ext03;

@end

/**
 *  订单撤销
 */
@interface OrderRevocationEntity : NSObject<JsonEntity>
//应用接入ID
@property (nonatomic,strong) NSString *appAccessKeyId;
//商户订单号
@property (nonatomic,strong) NSString *extOrderNo;
//商户号
@property (nonatomic,strong) NSString *mrchNo;
//订单号
@property (nonatomic,strong) NSString *orderNo;
//订单支付途径
@property (nonatomic,strong) NSString *orderWay;
//拓展域01
@property (nonatomic,strong) NSString *ext01;
//拓展域02
@property (nonatomic,strong) NSString *ext02;
//拓展域03
@property (nonatomic,strong) NSString *ext03;
//签名数据
@property (nonatomic,strong) NSString *signData;

-(id)initWithExtOrderNo:(NSString *)extOrderNo mrchNo:(NSString *)mrchNo orderNo:(NSString *)orderNo ext01:(NSString *)ext01 ext02:(NSString *)ext02 ext03:(NSString *)ext03;

@end

/**
 *  订单同步
 */
@interface OrderSyncEntity : NSObject<JsonEntity>
//应用接入ID
@property (nonatomic,strong) NSString *appAccessKeyId;
//商户订单号
@property (nonatomic,strong) NSString *extOrderNo;
//商户号
@property (nonatomic,strong) NSString *mrchNo;
//签名数据
@property (nonatomic,strong) NSString *signData;

-(id)initWithExtOrderNo:(NSString *)extOrderNo mrchNo:(NSString *)mrchNo;

@end

/**
 *  订单批量查询
 */
@interface OrderBatchQueryEntity : NSObject<JsonEntity>
//应用接入ID
@property (nonatomic,strong) NSString *appAccessKeyId;
//商户号
@property (nonatomic,strong) NSString *mrchNo;
//起始记录
@property (nonatomic,strong) NSString *startIndex;
//每页大小
@property (nonatomic,strong) NSString *pageSize;
//订单状态
/* 0 未支付  1支付成功  3已撤销  6支付失败  8状态未知 */
@property (nonatomic,strong) NSString *orderStatus;
//拓展域01
@property (nonatomic,strong) NSString *ext01;
//拓展域02
@property (nonatomic,strong) NSString *ext02;
//拓展域03
@property (nonatomic,strong) NSString *ext03;
//1表示APP调用 2表示插件调用
@property (nonatomic,strong) NSString *orderWay;
//签名数据
@property (nonatomic,strong) NSString *signData;

-(id)initWithMrchNo:(NSString *)mrchNo startIndex:(NSString *)startIndex pageSize:(NSString *)pageSize orderStatus:(NSString *)orderStatus ext01:(NSString *)ext01 ext02:(NSString *)ext02 ext03:(NSString *)ext03;

@end

/**
 *  订单对象
 */
@interface OrderInfoEntity : NSObject<JsonEntity>
//订单号
@property (nonatomic,strong) NSString *orderNo;
//商户订单号
@property (nonatomic,strong) NSString *extOrderNo;
//商户号
@property (nonatomic,strong) NSString *mrchNo;
//流水号
@property (nonatomic,strong) NSString *flowNo;
//商户名称
@property (nonatomic,strong) NSString *mrchName;
//订单时间
@property (nonatomic,strong) NSString *orderTime;
//订单时间
@property (nonatomic,strong) NSString *timestamp;
//订单金额
@property (nonatomic,strong) NSString *amount;
//货币种类
@property (nonatomic,strong) NSString *currency;
//订单状态
@property (nonatomic,strong) NSString *orderStatus;
//拓展域01
@property (nonatomic,strong) NSString *ext01;
//拓展域02
@property (nonatomic,strong) NSString *ext02;
//拓展域03
@property (nonatomic,strong) NSString *ext03;
@property (nonatomic,strong) NSString *sysExt;
@property (nonatomic,strong) NSString *mrchOrderNo;
@property (nonatomic,strong) NSString *selfDefined063;
@property (nonatomic,strong) NSString *trmnlNo;
@property (nonatomic,strong) NSString *ext05;
@property (nonatomic,strong) NSString *ext06;

@end

/**
 *  返回第三方结果
 */
@interface OrderThirdResEntity : NSObject<JsonEntity>
// 返回码
@property (nonatomic, strong) NSString *resultCode;
// 返回信息
@property (nonatomic, strong) NSString *resultMsg;
// 订单信息
@property (nonatomic, strong) OrderInfoEntity *order;
// 签名数据
@property (nonatomic, strong) NSString *signData;

-(id)initWithResultCode:(NSString *)resultCode resultMsg:(NSString *)resultMsg orderInfoEntity:(OrderInfoEntity *)entity signData:(NSString *)signData;

@end

/**
 *  返回第三方批量查询结果
 */
@interface OrderThirdBatchQueryResEntity : NSObject<JsonEntity>

// 返回码
@property (nonatomic, strong) NSString *resultCode;
// 返回信息
@property (nonatomic, strong) NSString *resultMsg;
// 起始记录
@property (nonatomic, strong) NSString *startIndex;
// 每页大小
@property (nonatomic, strong) NSString *pageSize;
// 总订单数目
@property (nonatomic, strong) NSString *totalSize;
// 所有订单
@property (nonatomic, strong) NSArray *orders;
// 签名数据
@property (nonatomic, strong) NSString *signData;

@end


