您的位置:首页 > 其它

工作中ibatis中的连表查询及in()的使用案例

2015-07-10 19:12 405 查看
public class CbExchangeOrderArr extends BaseBean implements Serializable {

/**

*

*/

private static final long serialVersionUID = -1213585508833130943L;

/**

* 订单号

*/

private Long id;

/**

* 创建时间

*/

private Date createTime;

/**

* 修改时间

*/

private Date modifyTime;

/**

* 有效期截止时间

*/

private Date expirationTime;

/**

* 商户端系统的订单号/流水号

*/

private String orderIdIn3rdSys;

/**

* 批次号

*/

private String batchNumber;

/**

* 子批次号

*/

private String subBatchNumber;

/**

* 付款人ID

*/

private String payerId;

/**

* 是否商户

*/

private String isMerchant;

/**

* 付款人信息

*/

private Long payerInfoId;

/**

* 源币种

*/

private String sourceCurrency;

/**

* 源金额

*/

private BigDecimal sourceAmount;

/**

* 源实付金额

*/

private BigDecimal sourceActualAmount;

/**

* 汇率

*/

private String exchangeRate;

/**

* 收款人ID

*/

private Long payeeId;

/**

* 是否商户

*/

private String isMerchantPayee;

/**

* 收款人信息

*/

private Long payeeInfoId;

/**

* 目的币种

*/

private String targetCurrency;

/**

* 目的金额

*/

private BigDecimal targetAmount;

/**

* MCC code

*/

private String mccCode;

/**

* 状态, invalid:无效 valid:有效

*/

private String status;

/**

* 汇兑状态

*/

private String exchangeStatus;

/**

* 付款状态

*/

private String paymentStatus;

/**

* 是否被处理,Y:是 ,N:否

*/

private String isProcessed;

/**

* 是否手工退款 红冲单标识 Y:是 N:否

*/

private String isManualRefund;

/**

* 付款人类型

*/

private String payerType;

/**

* 收款人类型

*/

private String payeeType;

/**

* 冗余收款人表中的姓名

*/

private String name;

/**

* 冗余收款人表中的银行账号

*/

private String bankAccount;





/**

* 国家代码

*/

private String countryCode;

/**

* 证件类型

*/

private String idType;

/**

* 证件号

*/

private String idNumber;

/**

* 收款人地址

*/

private String address;

/**

* 收款公司名称

*/

private String companyName;

/**

* 收款银行名称

*/

private String bankName;

/**

* 收款行国别

*/

private String bankCountryCode;

/**

* 收款行地址

*/

private String bankAddress;

/**

* swift code

*/

private String swiftCode;

/**

* 大额行号

*/

private String cnapsCode;

/**

* bic

*/

private String bic;

/**

* iban

*/

private String iban;

/**

* 用户在商户下的账户

*/

private String account;

/**

* 所属商户号下的用户账号

*/

private String userIdIn3rdSys;

/**

* 账户类型(c:个人、b企业)

*/

private String bankAccountType;



private String[] orderArray;



private List<String> idList;

下面是get set方法就不贴出来了,

<typeAlias type="com.lianpay.lcpay.cb.exchangeorderserver.share.domain.CbExchangeOrderArr"

alias="CbExchangeOrderArr" />

<resultMap id="CbExchangeOrderArr" class="CbExchangeOrderArr">

<result column="ID" property="id" jdbcType="DECIMAL" />

<result column="ORDER_ID_IN3RD_SYS" property="orderIdIn3rdSys"

jdbcType="VARCHAR" />

<result column="PAYEE_INFO_ID" property="payerInfoId" jdbcType="DECIMAL" />



<result column="SOURCE_CURRENCY" property="sourceCurrency"

jdbcType="VARCHAR" />

<result column="SOURCE_AMOUNT" property="sourceAmount"

jdbcType="DECIMAL" />

<result column="EXCHANGE_RATE" property="exchangeRate"

jdbcType="VARCHAR" />

<result column="PAYER_ID" property="payeeId" jdbcType="DECIMAL" />

<result column="TARGET_CURRENCY" property="targetCurrency"

jdbcType="VARCHAR" />

<result column="TARGET_AMOUNT" property="targetAmount"

jdbcType="DECIMAL" />

<result column="MCC_CODE" property="mccCode" jdbcType="VARCHAR" />

<result column="NAME" property="name" jdbcType="VARCHAR" />

<result column="COUNTRY_CODE" property="countryCode" jdbcType="VARCHAR" />

<result column="BANK_ACCOUNT_TYPE" property="bankAccountType" jdbcType="VARCHAR" />

<result column="id_type" property="idType" jdbcType="VARCHAR" />

<result column="id_number" property="idNumber" jdbcType="VARCHAR" />

<result column="address" property="address" jdbcType="VARCHAR" />

<result column="company_name" property="companyName" jdbcType="VARCHAR" />

<result column="bank_name" property="bankName" jdbcType="VARCHAR" />

<result column="bank_account" property="bankAccount" jdbcType="VARCHAR" />

<result column="bank_country_code" property="bankCountryCode" jdbcType="VARCHAR" />

<result column="swift_code" property="swiftCode" jdbcType="VARCHAR" />

<result column="cnaps_code" property="cnapsCode" jdbcType="VARCHAR" />

<result column="bic" property="bic" jdbcType="VARCHAR" />

<result column="iban" property="iban" jdbcType="VARCHAR" />

</resultMap>

<select id="listByPrimary3rdOrderId" resultMap="CbExchangeOrderArr"

parameterClass="CbExchangeOrderArr">

select

EX.ID as ID,EX.ORDER_ID_IN3RD_SYS as ORDER_ID_IN3RD_SYS,EX.PAYER_ID as PAYER_ID ,

EX.SOURCE_CURRENCY as SOURCE_CURRENCY,EX.SOURCE_AMOUNT as SOURCE_AMOUNT,EX.EXCHANGE_RATE as EXCHANGE_RATE,

EX.PAYEE_INFO_ID as PAYEE_INFO_ID,EX.TARGET_CURRENCY as TARGET_CURRENCY ,EX.TARGET_AMOUNT as TARGET_AMOUNT,

EX.MCC_CODE as MCC_CODE

,PEE.NAME as NAME,PEE.COUNTRY_CODE as COUNTRY_CODE,PEE.BANK_ACCOUNT_TYPE as BANK_ACCOUNT_TYPE,

PEE.id_type as id_type,PEE.id_number as id_number,PEE.address as address,PEE.company_name as company_name,

PEE.bank_name as bank_name,PEE.bank_account as bank_account,PEE.bank_country_code as bank_country_code,

PEE.swift_code as swift_code,PEE.cnaps_code as cnaps_code,PEE.bic as bic, PEE.iban as iban

from

cb_exchange_order EX left join cb_payee_info PEE on (EX.payee_info_id=PEE.id)

where

EX.PAYER_ID=#payerId:DECIMAL#

and EX.STATUS=#status:VARCHAR#

and EX.ORDER_ID_IN3RD_SYS in

<iterate property="idList" open="(" close=")" conjunction=",">

<![CDATA[#idList[]#]]>

</iterate>

</select>

本人感觉还是挺笨的方法,还在改进中,上面的实体类原本为两个实体类,把他们合并成一个实体类来处理的
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: