" ?>
.dtd" >
<sqlMap namespace="TmallTcMessage">
<typeAlias alias="TmallTcMessage"
type="com.founder.ec.product.model.TmallTcMessage" />
<typeAlias alias="OrderTcMessage" type="com.founder.ec.order.model.OrderTcMessage" />
<typeAlias alias="ecelMessage"
type="com.founder.ec.product.model.GoodsEvaluation" />
<typeAlias alias="Goods" type="com.founder.ec.product.model.Goods" />
<resultMap id="TmallTcMessageMap" class="TmallTcMessage">
<result column="TMALL_TC_MSG_ID" property="tmallTcMsgId" />
<result column="TMALL_ORDER_ID" property="tmallOrderId" />
<result column="MEMBER_NAME" property="memberName" />
<result column="ALIPAY_USER_NAME" property="alipayUserName" />
<result column="ALIPAY_PAID_FEE" property="alipayPaidFee" />
<result column="MESSAGE" property="message" />
<result column="MESSAGE_SOURCE" property="messageSource" />
<result column="RECEIVE_USER" property="receiveUser" />
<result column="RECEIVE_FULL_ADDRESS" property="receiveFullAddress" />
<result column="RECEIVE_TEL" property="receiveTel" />
<result column="RECEIVE_MOBILE" property="receiveMobile" />
<result column="ORDER_CREATE_TIME" property="orderCreateTime" />
<result column="GOODS_NO" property="goodsNo" />
<result column="GOODS_TOPIC" property="goodsTopic" />
<result column="IS_CALLBACK" property="isCallback" />
<result column="IS_BUY" property="isBuy" />
<result column="NOT_BUY_REASON" property="notBuyReason" />
<result column="NOT_BUY_REASON_NAME" property="notBuyReasonName" />
<result column="CALLBACK_TIME" property="callbackTime" />
<result column="COMMIT_USERNAME" property="commitUserName" />
<result column="CALLBACK_USERNAME" property="callbackUserName" />
<result column="SERVICE_NAME" property="serviceName" />
<result column="DISTRIBUTION_TYPE" property="distributionType" />
<result column="USER_TYPE" property="userType" />
<result column="MESSAGE_TIME" property="messageTime" />
<result column="IMPORT_ID" property="importId" />
<result column="GOODS_ID" property="goodsId" />
<result column="PRODUCT_ID" property="productId" />
<result column="CUSTOMER_NATURE" property="customerNature" />
<result column="HAS_LOG" property="hasLog" />
<result column="ASSIGN_NUM" property="assignNum" />
<result column="NOT_BUY_REASON_NOTE" property="notBuyReasonNote" />
<result column="ASSIGN_ID" property="assignId" />
<result column="ALIPAY_ORDER_FEE" property="alipayOrderFee" />
<result column="ALIPAY_DELIVERY_FEE" property="alipayDeliveryFee" />
<result column="ALIPAY_TOTAL_FEE" property="alipayTotalFee" />
<result column="NOTE" property="note" />
<result column="ORDER_ID" property="orderId" />
</resultMap>

<resultMap id="TmallMessageExportResultMap" class="TmallTcMessage">
<result column="TMALL_ORDER_ID" property="tmallOrderId" />
<result column="MEMBER_NAME" property="memberName" />
<result column="ALIPAY_USER_NAME" property="alipayUserName" />
<result column="ALIPAY_PAID_FEE" property="alipayPaidFee" />
<result column="MESSAGE" property="message" />
<result column="MESSAGE_SOURCE" property="messageSource" />
<result column="MESSAGE_SOURCE_NAME" property="messageSourceName" />
<result column="RECEIVE_USER" property="receiveUser" />
<result column="RECEIVE_FULL_ADDRESS" property="receiveFullAddress" />
<result column="RECEIVE_TEL" property="receiveTel" />
<result column="ORDER_CREATE_TIME" property="orderCreateTime" />
<result column="GOODS_NO" property="goodsNo" />
<result column="GOODS_TOPIC" property="goodsTopic" />
<result column="GOODS_COUNT" property="goodsCount" />
<result column="IS_CALLBACK" property="isCallback" />
<result column="IS_CALLBACK_NAME" property="isCallbackName" />
<result column="IS_BUY" property="isBuy" />
<result column="IS_BUY_NAME" property="isBuyName" />
<result column="NOT_BUY_REASON" property="notBuyReason" />
<result column="NOT_BUY_REASON_NAME" property="notBuyReasonName" />
<result column="CALLBACK_TIME" property="callbackTime" />
<result column="COMMIT_USERID" property="commitUserid" />
<result column="CALLBACK_USERID" property="callbackUserid" />
<result column="USER_TYPE" property="userType" />
<result column="USER_TYPE_NAME" property="userTypeName" />
<result column="DISTRIBUTION_TYPE" property="distributionType" />
<result column="DISTRIBUTION_TYPE_NAME" property="distributionTypeName" />
<result column="SERVICE_NAME" property="serviceName" />
<result column="CUSTOMER_NATURE" property="customerNature" />
<result column="CUSTOMER_NATURE_NAME" property="customerNatureName" />
<result column="NOT_BUY_REASON_NOTE" property="notBuyReasonNote" />
<result column="ASSIGN_NUM" property="assignNum" />
<result column="ASSIGN_ID" property="assignId" />
<result column="ALIPAY_ORDER_FEE" property="alipayOrderFee" />
<result column="ALIPAY_DELIVERY_FEE" property="alipayDeliveryFee" />
<result column="ALIPAY_TOTAL_FEE" property="alipayTotalFee" />
<result column="NOTE" property="note" />
<result column="ORDER_ID" property="orderId" />
</resultMap>

<!-- 商品相关 -->
<resultMap class="Goods" id="goodsTcQueryRes">
<result column="GOODS_ID" property="goodsId" />
<result column="PRODUCT_ID" property="goodsId" />
<result column="GOODS_NO" property="goodsNo" />
<result column="GOODS_NAME" property="goodsName" />
<result column="MARKET_PRICE" property="marketPrice" />
<result column="EC_PRICE" property="ecPrice" />
<result column="AVAILABLE_STOCK" property="availableStock" />
<result column="UNITNAME" property="unitName" />
</resultMap>
<resultMap class="TmallTcMessage" id="tcMessageResNew">
<result column="GOODS_NO" property="goodsNo" />
</resultMap>

<resultMap id="getMessageGainMap" class="TmallTcMessage">
<result column="TMALL_TC_MSG_ID" property="tmallTcMsgId" />
</resultMap>

<sql id="be_fy">
select * from (select row_.*, rownum rownum_ from (
</sql>
<sql id="ed_fy">
) row_
)
<isNotEmpty prepend="and" property="endRow">
<![CDATA[ rownum_ <= #endRow# ]]>
</isNotEmpty>
<isNotEmpty prepend="and" property="startRow">
<![CDATA[ rownum_ >= #startRow# ]]>
</isNotEmpty>
</sql>
<!-- 动态的拼接查询条件 -->
<sql id="queryTmallTcMessageParam">
<isEqual property="isRegister" compareValue="Y">
and exists (select
 from member m where m.is_delete='N' and
m.mobile_state='Y' and
receive_mobile = m.mobile)
</isEqual>
<isEqual property="isRegister" compareValue="N">
and not exists
( from member m where m.is_delete='N' and
m.mobile_state='Y'
and receive_mobile = m.mobile)
</isEqual>
<isNotEmpty prepend="and" property="assignId">
<![CDATA[ mai.ASSIGN_ID=#assignId# ]]>
</isNotEmpty>
<isNotEmpty prepend="and" property="receiveUser">
<![CDATA[ mai.RECEIVE_USER=#receiveUser# ]]>
</isNotEmpty>
<isNotEmpty prepend="and" property="receiveMobile">
<![CDATA[ mai.RECEIVE_MOBILE=#receiveMobile# ]]>
</isNotEmpty>
<isNotEmpty prepend="and" property="isCallback">
<![CDATA[ mai.IS_CALLBACK=#isCallback# ]]>
</isNotEmpty>
<isNotEmpty prepend="and" property="isBuy">
<![CDATA[ mai.IS_BUY=#isBuy# ]]>
</isNotEmpty>
<isNotEmpty prepend="and" property="goodsNo">
<![CDATA[ mai.GOODS_NO=#goodsNo# ]]>
</isNotEmpty>
<isNotEmpty prepend="and" property="receiveFullAddress">
<![CDATA[ mai.RECEIVE_FULL_ADDRESS like '%$receiveFullAddress$%' ]]>
</isNotEmpty>
<isNotEmpty prepend="and" property="bgMessageTime">
<![CDATA[ mai.MESSAGE_TIME>=#bgMessageTime# ]]>
</isNotEmpty>
<isNotEmpty prepend="and" property="endMessageTime">
<![CDATA[ mai.MESSAGE_TIME<=#endMessageTime# ]]>
</isNotEmpty>
<isNotEmpty prepend="and" property="callbackUserName">
<![CDATA[ mai.CALLBACK_USERNAME=#callbackUserName# ]]>
</isNotEmpty>
<isNotEmpty prepend="and" property="bgCallBackTime">
<![CDATA[ mai.CALLBACK_TIME>=#bgCallBackTime# ]]>
</isNotEmpty>
<isNotEmpty prepend="and" property="endCallBackTime">
<![CDATA[ mai.CALLBACK_TIME<=#endCallBackTime# ]]>
</isNotEmpty>
<isNotEmpty prepend="and" property="userType">
<![CDATA[ mai.USER_TYPE=#userType# ]]>
</isNotEmpty>
<isNotEmpty prepend="and" property="commitUserName">
<![CDATA[ mai.COMMIT_USERNAME=#commitUserName# ]]>
</isNotEmpty>
<isNotEmpty prepend="and" property="messageSource">
<![CDATA[ mai.MESSAGE_SOURCE=#messageSource# ]]>
</isNotEmpty>
<isNotEmpty prepend="and" property="notBuyReason">
<![CDATA[ mai.NOT_BUY_REASON=#notBuyReason# ]]>
</isNotEmpty>
<isNotEmpty prepend="and" property="codeTypeNo">
<![CDATA[ mai.CODE_TYPE_NO=#codeTypeNo# ]]>
</isNotEmpty>
<isNotEmpty prepend="and" property="distributionType">
<![CDATA[ mai.DISTRIBUTION_TYPE=#distributionType# ]]>
</isNotEmpty>
<isNotEmpty prepend="and" property="customerNature">
<![CDATA[ mai.CUSTOMER_NATURE=#customerNature# ]]>
</isNotEmpty>
<isNotEmpty prepend="and" property="serviceName">
<![CDATA[ mai.SERVICE_NAME=#serviceName# ]]>
</isNotEmpty>
<isNotEmpty prepend="and" property="assignNum">
<![CDATA[ mai.ASSIGN_NUM=#assignNum# ]]>
</isNotEmpty>
<isNotEmpty prepend="and" property="importId">
<![CDATA[ mai.IMPORT_ID=#importId# ]]>
</isNotEmpty>
<isNotEmpty prepend="and" property="orderId">
<![CDATA[ mai.ORDER_ID like '%$orderId$%' ]]>
</isNotEmpty>
</sql>
<select id="getTmallTcMessagePage" resultMap="TmallTcMessageMap"
parameterClass="TmallTcMessage">
<include refid="be_fy" />
select *
from (select ttm.ORDER_ID,
ttm.TMALL_TC_MSG_ID,
ttm.TMALL_ORDER_ID,
ttm.MEMBER_NAME,
ttm.ALIPAY_USER_NAME,
ttm.ALIPAY_PAID_FEE,
ttm.MESSAGE,
MESSAGE_SOURCE,
USER_TYPE,
MESSAGE_TIME,
DISTRIBUTION_TYPE,
CUSTOMER_NATURE,
RECEIVE_USER,
RECEIVE_FULL_ADDRESS,
RECEIVE_TEL,
RECEIVE_MOBILE,
ORDER_CREATE_TIME,
GOODS_NO,
GOODS_TOPIC,
IS_CALLBACK,
IS_BUY,
NOT_BUY_REASON,
NOT_BUY_REASON_NOTE,
CALLBACK_TIME,
ASSIGN_NUM,
(select user_name
from fecerp.sys_user
where user_id = commit_userid
and is_delete = 'N') AS COMMIT_USERNAME,
(select user_name
from fecerp.sys_user
where user_id = CALLBACK_USERID
and is_delete = 'N') AS CALLBACK_USERNAME,
(select user_name
from fecerp.sys_user
where user_id = SERVICE_NUM
and is_delete = 'N') AS SERVICE_NAME,
IMPORT_ID,
(select s.code_value
from sys_code s
where s.code_id = ttm.NOT_BUY_REASON
and s.is_delete = 'N') as NOT_BUY_REASON_NAME,
(SELECT GD.PRODUCT_ID
FROM GOODS GD
WHERE gd.goods_no = ttm.goods_no
AND gd.is_delete = 'N'
) AS PRODUCT_ID,
(SELECT GD.GOODS_ID
FROM GOODS GD
WHERE gd.goods_no = ttm.goods_no
AND gd.is_delete = 'N'
) AS GOODS_ID,
(), , 'N', 'Y') as cnt
from TMALL_TC_MESSAGE_LOG ttml
where ttml.is_delete = 'N'
and ttml.tmall_tc_msg_id =
ttm.tmall_tc_msg_id) as has_log,
(select user_id
from fecerp.sys_user
where user_name = ttm.ASSIGN_NUM
and is_delete = 'N') as ASSIGN_ID,
ALIPAY_ORDER_FEE,
ALIPAY_DELIVERY_FEE,
ALIPAY_TOTAL_FEE,
(select s.code_type_no
from sys_code s
where s.code_id = ttm.NOT_BUY_REASON
and s.is_delete = 'N') as CODE_TYPE_NO,
NOTE
from TMALL_TC_MESSAGE ttm
where IS_DELETE = 'N') mai

<include refid="queryTmallTcMessageParam" />
order by MESSAGE_TIME DESC
<include refid="ed_fy" />
</select>

<select id="getTmallTcMessageCount" resultClass="Integer"
parameterClass="TmallTcMessage">
) from (select ORDER_ID,
TMALL_TC_MSG_ID,TMALL_ORDER_ID,MEMBER_NAME,ALIPAY_USER_NAME,ALIPAY_PAID_FEE,MESSAGE,MESSAGE_SOURCE,RECEIVE_USER,
RECEIVE_FULL_ADDRESS,RECEIVE_TEL,RECEIVE_MOBILE,ORDER_CREATE_TIME,GOODS_NO,GOODS_TOPIC,IS_CALLBACK,
IS_BUY,NOT_BUY_REASON,CALLBACK_TIME,ASSIGN_NUM,(select user_name from
fecerp.sys_user where user_id = commit_userid and
is_delete='N') AS
COMMIT_USERNAME,
(select user_name from fecerp.sys_user where user_id =
CALLBACK_USERID and
is_delete='N') AS CALLBACK_USERNAME,
(select
user_name from fecerp.sys_user where user_id = SERVICE_NUM and
is_delete='N') AS
SERVICE_NAME,USER_TYPE,MESSAGE_TIME,DISTRIBUTION_TYPE,IMPORT_ID,CUSTOMER_NATURE,
(select user_id from fecerp.sys_user where user_name = ASSIGN_NUM and is_delete = 'N') as ASSIGN_ID,
(select s.code_type_no
from sys_code s
where s.code_id = NOT_BUY_REASON
and s.is_delete = 'N') as CODE_TYPE_NO
from
TMALL_TC_MESSAGE
where IS_DELETE='N') mai

<include refid="queryTmallTcMessageParam" />
</select>
<!-- 改为已回访 -->
<update id="updateVisited" parameterClass="TmallTcMessage">
update TMALL_TC_MESSAGE
<dynamic prepend="set">
<isNotEmpty prepend="," property="editUserId">
<![CDATA[ EDIT_USER_ID=#editUserId# ]]>
</isNotEmpty>

<isNotEmpty prepend="," property="isCallback">
<![CDATA[ IS_CALLBACK=#isCallback# ]]>
</isNotEmpty>

<isNotEmpty prepend="," property="callbackTime">
<![CDATA[ CALLBACK_TIME=#callbackTime# ]]>
</isNotEmpty>

<isNotEmpty prepend="," property="callbackUserid">
<![CDATA[ CALLBACK_USERID=#callbackUserid# ]]>
</isNotEmpty>

<isNotEmpty prepend="," property="editTime">
<![CDATA[ EDIT_TIME=#editTime# ]]>
</isNotEmpty>
</dynamic>
where TMALL_TC_MSG_ID=#tmallTcMsgId#
</update>
<!-- 改为已购买 -->
<update id="updateBuy" parameterClass="TmallTcMessage">
update TMALL_TC_MESSAGE
<dynamic prepend="set">
<isNotEmpty prepend="," property="editUserId">
<![CDATA[ EDIT_USER_ID=#editUserId# ]]>
</isNotEmpty>

<isNotEmpty prepend="," property="isBuy">
<![CDATA[ IS_BUY=#isBuy# ]]>
</isNotEmpty>

<isNotEmpty prepend="," property="editTime">
<![CDATA[ EDIT_TIME=#editTime# ]]>
</isNotEmpty>
</dynamic>
where TMALL_TC_MSG_ID=#tmallTcMsgId#
</update>
<!-- 更新操作 -->
<update id="update" parameterClass="TmallTcMessage">
update TMALL_TC_MESSAGE
<dynamic prepend="set">
<isNotEmpty prepend="," property="orderId">
<![CDATA[ ORDER_ID= ORDER_ID || #orderId# || ',']]>
</isNotEmpty>
<isNotEmpty prepend="," property="addUserId">
<![CDATA[ ADD_USER_ID=#addUserId# ]]>
</isNotEmpty>
<isNotEmpty prepend="," property="messageSource">
<![CDATA[ MESSAGE_SOURCE=#messageSource# ]]>
</isNotEmpty>
<isNotEmpty prepend="," property="receiveMobile">
<![CDATA[ RECEIVE_MOBILE=#receiveMobile# ]]>
</isNotEmpty>
<isNotEmpty prepend="," property="receiveUser">
<![CDATA[ RECEIVE_USER=#receiveUser# ]]>
</isNotEmpty>
<isNotEmpty prepend="," property="editUserId">
<![CDATA[ EDIT_USER_ID=#editUserId# ]]>
</isNotEmpty>
<isNotEmpty prepend="," property="commitUserid">
<![CDATA[ COMMIT_USERID=#commitUserid# ]]>
</isNotEmpty>
<isNotEmpty prepend="," property="memberName">
<![CDATA[ MEMBER_NAME=#memberName# ]]>
</isNotEmpty>
<isNotEmpty prepend="," property="orderCreateTime">
<![CDATA[ ORDER_CREATE_TIME=#orderCreateTime# ]]>
</isNotEmpty>
<isNotEmpty prepend="," property="goodsTopic">
<![CDATA[ GOODS_TOPIC=#goodsTopic# ]]>
</isNotEmpty>
<isNotEmpty prepend="," property="isCallback">
<![CDATA[ IS_CALLBACK=#isCallback# ]]>
</isNotEmpty>
<isNotEmpty prepend="," property="callbackUserid">
<![CDATA[ CALLBACK_USERID=#callbackUserid# ]]>
</isNotEmpty>
<isNotEmpty prepend="," property="editTime">
<![CDATA[ EDIT_TIME=#editTime# ]]>
</isNotEmpty>
<isNotEmpty prepend="," property="receiveFullAddress">
<![CDATA[ RECEIVE_FULL_ADDRESS=#receiveFullAddress# ]]>
</isNotEmpty>
<isNotEmpty prepend="," property="receiveTel">
<![CDATA[ RECEIVE_TEL=#receiveTel# ]]>
</isNotEmpty>
<isNotEmpty prepend="," property="isDelete">
<![CDATA[ IS_DELETE=#isDelete# ]]>
</isNotEmpty>
<isNotEmpty prepend="," property="addTime">
<![CDATA[ ADD_TIME=#addTime# ]]>
</isNotEmpty>
<isNotEmpty prepend="," property="userType">
<![CDATA[ USER_TYPE=#userType# ]]>
</isNotEmpty>
<isNotEmpty prepend="," property="goodsCount">
<![CDATA[ GOODS_COUNT=#goodsCount# ]]>
</isNotEmpty>
<isNotEmpty prepend="," property="goodsNo">
<![CDATA[ GOODS_NO=#goodsNo# ]]>
</isNotEmpty>
<isNotEmpty prepend="," property="alipayUserName">
<![CDATA[ ALIPAY_USER_NAME=#alipayUserName# ]]>
</isNotEmpty>
<isNotEmpty prepend="," property="message">
<![CDATA[ MESSAGE=#message# ]]>
</isNotEmpty>
<isNotEmpty prepend="," property="callbackTime">
<![CDATA[ CALLBACK_TIME=#callbackTime# ]]>
</isNotEmpty>
<isNotEmpty prepend="," property="notBuyReason">
<![CDATA[ NOT_BUY_REASON=#notBuyReason# ]]>
</isNotEmpty>
<isNotEmpty prepend="," property="notBuyReasonNote">
<![CDATA[ NOT_BUY_REASON_NOTE=#notBuyReasonNote# ]]>
</isNotEmpty>
<isNotEmpty prepend="," property="customerNature">
<![CDATA[ CUSTOMER_NATURE=#customerNature# ]]>
</isNotEmpty>
<isNotEmpty prepend="," property="tmallOrderId">
<![CDATA[ TMALL_ORDER_ID=#tmallOrderId# ]]>
</isNotEmpty>
<isNotEmpty prepend="," property="alipayPaidFee">
<![CDATA[ ALIPAY_PAID_FEE=#alipayPaidFee# ]]>
</isNotEmpty>
<isNotEmpty prepend="," property="isBuy">
<![CDATA[ IS_BUY=#isBuy# ]]>
</isNotEmpty>
<isNotEmpty prepend="," property="assignNum">
<![CDATA[ ASSIGN_NUM=#assignNum# ]]>
</isNotEmpty>
<isNotEmpty prepend="," property="distributionType">
<![CDATA[ DISTRIBUTION_TYPE=#distributionType# ]]>
</isNotEmpty>
</dynamic>

<isNotEmpty prepend="and" property="tmallTcMsgId">
<![CDATA[ TMALL_TC_MSG_ID=#tmallTcMsgId# ]]>
</isNotEmpty>
<isNotEmpty prepend="and" property="importId">
<![CDATA[ IMPORT_ID=#importId# ]]>
</isNotEmpty>
</update>

<select id="TmallMessageExportExcel" resultMap="TmallMessageExportResultMap"
parameterClass="TmallTcMessage">
select * from(
SELECT
TMM.ORDER_ID,
TMM.IMPORT_ID,
TMM.TMALL_ORDER_ID,
TMM.MEMBER_NAME,
TMM.ALIPAY_USER_NAME,
TMM.ALIPAY_PAID_FEE,
TMM.MESSAGE,
TMM.MESSAGE_SOURCE,
CASE TMM.MESSAGE_SOURCE
WHEN 'app' THEN
'app端'
WHEN 'pc' THEN
'PC端'
WHEN 'wap' THEN
'wap端'
WHEN 'tm' THEN
'天猫'
END AS MESSAGE_SOURCE_NAME,
TMM.RECEIVE_USER,
replace(TMM.RECEIVE_FULL_ADDRESS,substr(TMM.RECEIVE_FULL_ADDRESS,round(length(TMM.RECEIVE_FULL_ADDRESS)
, ),nvl(#strLength#,)),'*****') RECEIVE_FULL_ADDRESS,
replace(
TMM.RECEIVE_TEL, substr( TMM.RECEIVE_TEL, , nvl(#strLength#,)),
'****') AS RECEIVE_TEL,
TMM.ORDER_CREATE_TIME,
TMM.GOODS_NO,
TMM.GOODS_TOPIC,
TMM.GOODS_COUNT,
TMM.IS_CALLBACK,
DECODE(TMM.IS_CALLBACK,'N','未回访','Y','已回访') as IS_CALLBACK_NAME,
TMM.IS_BUY,
DECODE(tmm.IS_BUY,'N','未购买','Y','已购买') as IS_BUY_NAME,
TMM.NOT_BUY_REASON,
TMM.NOT_BUY_REASON_NOTE,
TMM.CALLBACK_TIME,
TMM.COMMIT_USERID,
TMM.CALLBACK_USERID,
TMM.USER_TYPE,
DECODE(tmm.USER_TYPE,'N','一次购买用户','Y','二次购买用户') as USER_TYPE_NAME,
TMM.CUSTOMER_NATURE,
CASE TMM.CUSTOMER_NATURE
WHEN 'dg' THEN
'代购'
WHEN 'zy' THEN
'自用'
WHEN 'yf' THEN
'药贩'
END AS CUSTOMER_NATURE_NAME,
DECODE(tmm.DISTRIBUTION_TYPE,'N','未分配','A','系统自动分配','H','手动分配') as DISTRIBUTION_TYPE_NAME,
TMM.DISTRIBUTION_TYPE,
(select user_name from fecerp.sys_user where user_id = tmm.SERVICE_NUM and
is_delete='N') AS SERVICE_NAME,
TMM.MESSAGE_TIME,
(select s.code_value from sys_code s where s.code_id=TMM.NOT_BUY_REASON and s.is_delete='N') as NOT_BUY_REASON_NAME,
tmm.ASSIGN_NUM,
(select user_id from fecerp.sys_user where user_name = TMM.ASSIGN_NUM and is_delete = 'N') as ASSIGN_ID,
ALIPAY_ORDER_FEE,
ALIPAY_DELIVERY_FEE,
ALIPAY_TOTAL_FEE,
(select s.code_type_no
from sys_code s
where s.code_id = NOT_BUY_REASON
and s.is_delete = 'N') as CODE_TYPE_NO,
NOTE
FROM TMALL_TC_MESSAGE TMM
where TMM.Is_Delete='N') mai

<include refid="queryTmallTcMessageParam" />
order by mai.MESSAGE_TIME desc
</select>
<insert id="save" parameterClass="TmallTcMessage">
<selectKey resultClass="Long" keyProperty="tmallTcMsgId">
SELECT
TMALL_TC_MESSAGE_SEQ.nextval AS id from dual
</selectKey>
insert into TMALL_TC_MESSAGE (
ADD_USER_ID,
MESSAGE_SOURCE,
TMALL_TC_MSG_ID,
RECEIVE_MOBILE,
RECEIVE_USER,
COMMIT_USERID,
MEMBER_NAME,
ORDER_CREATE_TIME,
GOODS_TOPIC,
IMPORT_ID,
CALLBACK_USERID,
RECEIVE_FULL_ADDRESS,
RECEIVE_TEL,
ADD_TIME,
USER_TYPE,
GOODS_COUNT,
GOODS_NO,
ALIPAY_USER_NAME,
MESSAGE,
CALLBACK_TIME,
NOT_BUY_REASON,
TMALL_ORDER_ID,
ALIPAY_PAID_FEE,
SERVICE_NUM,
MESSAGE_TIME,
CUSTOMER_NATURE
<isNotEmpty prepend="," property="alipayOrderFee">
ALIPAY_ORDER_FEE
</isNotEmpty>
<isNotEmpty prepend="," property="alipayDeliveryFee">
ALIPAY_DELIVERY_FEE
</isNotEmpty>
<isNotEmpty prepend="," property="alipayTotalFee">
ALIPAY_TOTAL_FEE
</isNotEmpty>
<isNotEmpty prepend="," property="distributionType">
DISTRIBUTION_TYPE
</isNotEmpty>
<isNotEmpty prepend="," property="note">
NOTE
</isNotEmpty>
)
values
(
#addUserId#,
#messageSource#,
#tmallTcMsgId#,
#receiveMobile#,
#receiveUser#,
#commitUserid#,
#memberName#,
#orderCreateTime#,
#goodsTopic#,
#importId#,
#callbackUserid#,
#receiveFullAddress#,
#receiveTel#,
#addTime#,
#userType#,
#goodsCount#,
#goodsNo#,
#alipayUserName#,
#message#,
#callbackTime#,
#notBuyReason#,
#tmallOrderId#,
#alipayPaidFee#,
#serviceNum#,
#messageTime#,
#customerNature#
<isNotEmpty prepend="," property="alipayOrderFee">
#alipayOrderFee#
</isNotEmpty>
<isNotEmpty prepend="," property="alipayDeliveryFee">
#alipayDeliveryFee#
</isNotEmpty>
<isNotEmpty prepend="," property="alipayTotalFee">
#alipayTotalFee#
</isNotEmpty>
<isNotEmpty prepend="," property="distributionType" >
#distributionType#
</isNotEmpty>
<isNotEmpty prepend="," property="note">
#note#
</isNotEmpty>
)
</insert>

<select id="querySelectGoods" resultMap="goodsTcQueryRes"
parameterClass="TmallTcMessage">
SELECT G.GOODS_ID,
G.PRODUCT_ID,
G.GOODS_NO,
G.GOODS_NAME,
G.MARKET_PRICE,
G.EC_PRICE,
G.AVAILABLE_STOCK,
PU.UNIT_NAME AS UNITNAME,
P.IS_ONSALE AS ISONSALE
FROM GOODS G
LEFT JOIN PRODUCT P
ON G.PRODUCT_ID
= P.PRODUCT_ID
AND P.IS_DELETE = 'N'
LEFT JOIN PRODUCT_UNIT PU
ON
P.UNIT_ID = PU.UNIT_ID
LEFT JOIN PRODUCT_YW_CATALOG_GOODS PYC
ON
G.GOODS_NO = PYC.GOODS_NO
WHERE G.IS_DELETE = 'N'
AND P.IS_ONSALE = 'Y'
AND G.IS_DEFAULT = 'Y'
<isNotEmpty prepend="and" property="goodsNos">
G.goods_no in
($goodsNos$)
</isNotEmpty>
</select>

<select id="getIsBuy" parameterClass="TmallTcMessage"
resultClass="Integer">
select count(*) from order_info oi where oi.is_delete='N'
and oi.receive_mobile = #receiveMobile#
</select>
<select id="getMessageGain" resultMap="getMessageGainMap" parameterClass="TmallTcMessage">

<isNotEmpty prepend="and" property="importId">
ee.import_id=#importId#
</isNotEmpty>
order by MESSAGE_TIME desc
</select>

<select id="getUnProcessedMsgCount" parameterClass="TmallTcMessage"
resultClass="Integer">
select count(*)
from TMALL_TC_MESSAGE t
where t.is_delete = 'N'
<isNotEmpty prepend="and" property="importId">
t.import_id = #importId#
</isNotEmpty>
and t.is_buy = 'N'
and (t.is_callback = 'N' or t.not_buy_reason is null)
and t.assign_num = #assignNum#
</select>

<select id="checkOrderInfo" parameterClass="java.util.HashMap" resultClass="Integer">
)
from ORDER_INFO t
where t.IS_DELETE='N'
<isNotEmpty prepend="and" property="orderId">
t.ORDER_ID = #orderId#
</isNotEmpty>
,,)
</select>
<select id="checkTmallTcMessage" parameterClass="java.util.HashMap" resultClass="Integer">
)
from TMALL_TC_MESSAGE ttm
where ttm.IS_DELETE='N'
<isNotEmpty prepend="and" property="orderId">
ttm.ORDER_ID like '%$orderId$%'
</isNotEmpty>
</select>

</sqlMap>

oracle(天猫处方药留言sql)的更多相关文章

  1. Oracle数据库之开发PL/SQL子程序和包

    Oracle数据库之开发PL/SQL子程序和包   PL/SQL块分为匿名块与命名块,命名块又包含子程序.包和触发器. 过程和函数统称为PL/SQL子程序,我们可以将商业逻辑.企业规则写成过程或函数保 ...

  2. 【ORACLE】记录通过执行Oracle的执行计划查询SQL脚本中的效率问题

    记录通过执行Oracle的执行计划查询SQL脚本中的效率问题   问题现象: STARiBOSS5.8.1R2版本中,河北对帐JOB执行时,无法生成发票对帐文件.   首先,Quartz表达式培植的启 ...

  3. Oracle安装步骤及PL/SQL Developer连接数据库

    一:Oracle安装步骤及PL/SQL Developer连接数据库 win7 64位 11g 点击(操作步骤):http://www.cnblogs.com/haoke/articles/27343 ...

  4. paip.oracle query export to insert sql

    paip.oracle query export to insert sql 作者Attilax ,  EMAIL:1466519819@qq.com  来源:attilax的专栏 地址:http:/ ...

  5. oracle 11g杀掉锁的sql

    oracle 11g杀掉锁的sql [引用 2013-3-6 17:19:12]     字号:大 中 小 --查询出出现锁的session_idselect session_id from v$lo ...

  6. Oracle学习DaySix(PL/SQL续)

    一.游标 在 PL/SQL 程序中,对于处理多行记录的事务经常使用游标来实现.游标是一个指向上下文的句柄( handle)或指针.通过游标,PL/SQL 可以控制上下文区和处理语句时上 下文区会发生些 ...

  7. Oracle使用技巧及PL/SQL Developer配置

    Oracle使用技巧及PL/SQL Developer配置 摘自:http://livenzhao.spaces.live.com/blog/cns!6E368BE9F6DDD872!595.entr ...

  8. Oracle数据库中,在SQL语句中连接字符串的方法是哪个?(选择1项)

    Oracle数据库中,在SQL语句中连接字符串的方法是哪个?(选择1项) A.cat B.concat C.join D.+ 解答:B

  9. Oracle数据库使用Analyze提升sql性能

    Oracle数据库使用Analyze提升sql性能 如果你不使用analyze完成sql优化,将意味着:你拒绝使用数据库的查询优化器,也失去了使用优化连接的机会.假设你创建了一张拥有100万条记录的临 ...

随机推荐

  1. C#基础语法总结

    C#笔记——基础篇 一.入门知识 VS中的常用快捷键 Ctrl+K+D:快速对齐代码 Ctrl+Z:撤销 Ctrl+S:保存(一定要经常保存!) Ctrl+J:快速弹出智能提示 Shift+End . ...

  2. System.Net网络编程--AuthenticationManager和IAuthenticationModule

    AuthenticationManager——管理客户端身份验证过程中调用的身份验证模块. public class Demo1 { private static string username, p ...

  3. Swift中的协议

    协议: 1.Swift协议用于定义多个类型应该遵守的规范 2.协议定义了一种规范, 不提供任何实现 3.协议统一了属性名, 方法, 下标, 但是协议并不提供任何实现 4.语法格式: [修饰符] pro ...

  4. include,include_once,require,require_once的区别

    1.include,require在其被调用的位置处包含一个文件. 2.include_once,require_once函数的作用与include相同,不过它会首先验证是否已包含该文件.如果已经包含 ...

  5. HTML学习笔记之meta标签

    一.meta标签的组成 meta标签共有两个属性,它们分别是http-equiv属性和name属性,不同的属性又有不同的参数值,这些不同的参数值就实现了不同的网页功能. 1.name属性 name属性 ...

  6. C++ Primer 5th 第6章 函数

    正如第一章所说:C++的函数是一个能够完成一个功能的模块或者说是一段命名了的代码块. 如下图所示,函数可以重载,是一段实现某些功能命名了的代码. 一个完整的函数的构成有四部分: 1.返回类型 2.函数 ...

  7. JQuery获取当前屏幕的高度宽度

    JQuery获取浏览器窗口宽高,文档宽高的代码,使用jquery的朋友可以参考下. <script type="text/javascript"> $(document ...

  8. iOS学习之懒加载

    懒加载——也称为延迟加载,即在需要的时候才加载(效率低,占用内存小).所谓懒加载,其实是重写getter方法. 注意:如果是懒加载的话则一定要注意先判断是否已经有了,如果没有那么再去进行实例化 使用懒 ...

  9. css 画竖着线条

    <p>table控制:<!-- height为横线的粗度,width为长度 --><table width=700>     <tr>    <t ...

  10. 一个ajax的后台controller

    @RequestMapping("/api/merBrand") @ResponseBody public ResultBrand merBrand(HttpServletRequ ...