<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE sqlMap
PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN"
"http://ibatis.apache.org/dtd/sql-map-2.dtd">
<sqlMap namespace="order">
<typeAlias alias="failOrderinfo" type="com.tempus.OTAServer.outer.qunar.order.orderBaseVo.FailOrderInfoVo" />
<typeAlias alias="successOrderInfo" type="com.tempus.OTAServer.outer.qunar.order.orderBaseVo.SuccessOrderInfoVo" />
<typeAlias alias="orderNo" type="com.tempus.OTAServer.outer.qunar.order.orderBaseVo.OrderNoVo" />
<resultMap id="failOrderinfoResult" class="failOrderinfo">
<result property="orderNo" column="ORDER_NO" />
<result property="errorMsg" column="ERROR_MSG" />
<result property="type" column="TYPE" />
<result property="status" column="STATUS" />
</resultMap>
<resultMap id="successOrderInfoResult" class="successOrderInfo">
<result property="b2cOrderNo" column="B2C_ORDER_NO" />
<result property="qnrOrderNo" column="QNR_ORDER_NO" />
<result property="payStatus" column="PAY_STATUS" />
<result property="isTicketNoFlag" column="IS_TICKET_NO_FLAG" />
<result property="isItineraryFlag" column="IS_ITINERARY_FLAG" />
<result property="createTime" column="CREATE_TIME" />
</resultMap>
<resultMap id="orderNoResult" class="orderNo" >
<result property="orderNo" column="ORDER_NO"/>
<result property="type" column="TYPE"/>
</resultMap>
<!-- 添加失败订单 -->
<insert id="insertFailOrderInfo" parameterClass="failOrderinfo">
<![CDATA[
INSERT INTO FAIL_ORDER_INFO (
ORDER_NO,
ERROR_MSG,
TYPE,
STATUS
)
VALUES(
#orderNo#,#errorMsg#,#type#,#status#
)
]]>
</insert>
<!-- 添加成功订单 -->
<insert id="insertSuccessOrderInfo" parameterClass="successOrderInfo">
<![CDATA[
INSERT INTO SUCCESS_ORDER_INFO (
B2C_ORDER_NO,
QNR_ORDER_NO,
PAY_STATUS,
IS_TICKET_NO_FLAG,
IS_ITINERARY_FLAG,
CREATE_TIME
)
VALUES(
#b2cOrderNo#,#qnrOrderNo#,#payStatus#,#isTicketNoFlag#,#isItineraryFlag#,#createTime#
)
]]>
</insert>
<!-- 查询失败订单 -->
<select id="selectFailOrderInfoList" resultMap="failOrderinfoResult" parameterClass="failOrderinfo">
<![CDATA[
SELECT * FROM FAIL_ORDER_INFO WHERE 1=1
]]>
<isNotEmpty property="status" prepend="AND">
STATUS = #status#
</isNotEmpty>
<isNotEmpty property="type" prepend="AND">
TYPE = #type#
</isNotEmpty>
</select>
<!-- 更新失败订单状态 -->
<update id="updateFailOrderStatus" parameterClass="failOrderinfo">
<![CDATA[
UPDATE FAIL_ORDER_INFO SET STATUS = #status#, ERROR_MSG =#errorMsg# WHERE 1=1
]]>
<isNotEmpty property="orderNo" prepend="AND">
ORDER_NO = #orderNo#
</isNotEmpty>
<isNotEmpty property="type" prepend="AND">
TYPE = #type#
</isNotEmpty>
</update>
<!-- 更改增量导出订单的订单号 -->
<update id="updateOrderNo" parameterClass="orderNo">
<![CDATA[
UPDATE ADD_ORDERNO SET ORDER_NO = #orderNo# WHERE type = #type#
]]>
</update>
<!-- 查询增量导出订单号 -->
<select id="getOrderNo" resultMap="orderNoResult" parameterClass="orderNo">
<![CDATA[
SELECT * FROM ADD_ORDERNO WHERE TYPE = #type#
]]>
</select>
<!-- 批量查询淘宝订单信息 -->
<select id="queryQunarOrderFlag" parameterClass="java.util.HashMap" resultMap="successOrderInfoResult">
<![CDATA[
SELECT * FROM SUCCESS_ORDER_INFO
WHERE 1=1
]]>
<isPropertyAvailable property="lstB2cOrder">
<isNotNull property="lstB2cOrder" prepend=" and B2C_ORDER_NO IN ">
<iterate property="lstB2cOrder" conjunction="," close=")" open="(">
<![CDATA[ #lstB2cOrder[]# ]]>
</iterate>
</isNotNull>
</isPropertyAvailable>
<isPropertyAvailable property="lstQNROrder">
<isNotNull property="lstQNROrder" prepend=" and QNR_ORDER_NO IN ">
<iterate property="lstQNROrder" conjunction="," close=")" open="(">
<![CDATA[ #lstQNROrder[]# ]]>
</iterate>
</isNotNull>
</isPropertyAvailable>
<isNotEmpty property="payStatus" prepend="AND">
PAY_STATUS=#payStatus#
</isNotEmpty>
<isNotEmpty property="isTicketNoFlag" prepend="AND">
IS_TICKET_NO_FLAG=#isTicketNoFlag#
</isNotEmpty>
<isNotEmpty property="isItineraryFlag" prepend="AND">
IS_ITINERARY_FLAG=#isItineraryFlag#
</isNotEmpty>
</select>
<!-- 根据订单号查询失败订单 -->
<select id="getFailOrderInfoByOrderNo" resultMap="failOrderinfoResult" parameterClass="java.util.HashMap">
<![CDATA[
SELECT * FROM FAIL_ORDER_INFO WHERE ORDER_NO = #orderNo#
]]>
<isNotEmpty property="type" prepend="AND">
TYPE = #type#
</isNotEmpty>
</select>
<!-- 修改异常订单的标识 -->
<update id="updateFailOrderFlag" parameterClass="java.util.HashMap">
<![CDATA[
UPDATE FAIL_ORDER_INFO SET STATUS = '0'
WHERE ORDER_NO = #orderNo#
AND TYPE = #type#
]]>
</update>
<!-- 修改成功订单支付状态 -->
<update id="updateSuccessOrderPayStatus" parameterClass="java.util.HashMap">
<![CDATA[
UPDATE SUCCESS_ORDER_INFO SET PAY_STATUS = '1'
WHERE B2C_ORDER_NO = #b2cOrderNo#
]]>
</update>
<!-- 修改成功订单票号推送状态 -->
<update id="updateSuccessTicketNoFlag" parameterClass="java.util.HashMap">
<![CDATA[
UPDATE SUCCESS_ORDER_INFO SET IS_TICKET_NO_FLAG = '1'
WHERE B2C_ORDER_NO = #b2cOrderNo#
]]>
</update>
<!-- 修改成功订单快递配送推送状态 -->
<update id="updateSuccessItineraryFlag" parameterClass="java.util.HashMap">
<![CDATA[
UPDATE SUCCESS_ORDER_INFO SET IS_ITINERARY_FLAG = '1'
WHERE B2C_ORDER_NO = #b2cOrderNo#
]]>
</update>
<!-- 批量查询淘宝订单信息 -->
<select id="selectQnrOrderNo" parameterClass="java.util.HashMap" resultMap="successOrderInfoResult">
<![CDATA[
SELECT * FROM SUCCESS_ORDER_INFO
WHERE 1=1
]]>
<isNotEmpty property="qnrOrderNo" prepend="AND">
QNR_ORDER_NO = #qnrOrderNo#
</isNotEmpty>
</select>
</sqlMap>