@ -301,4 +301,103 @@
AND status = 0
AND version = #{version}
</update>
<select id= "performanceSelect" resultType= "com.example.demo.domain.vo.cash.CashCollection" >
select cr.order_type, cr.id,cr.jwcode,cr.name,cr.market,
m1.name as marketName, ra.id as activityId,
ra.activity_name as activity,cr.order_code,cr.bank_code,
cr.goods_name,cr.good_num,
cr.num_unit,
cr.permanent_gold/100 as permanentGold,cr.free_gold/100 as freeGold,cr.payment_amount/100 as paymentAmount,
r1.rate_name as paymentCurrency,
r2.rate_name as receivedCurrency,
m2.name as receivedMarket,
cr.received_amount/100 as receivedAmount,cr.handling_charge/100 as handlingCharge,
cr.pay_type,cr.pay_time,cr.received_time,
cr.status,cr.submitter_id,cr.submitter_market,cr.voucher,cr.remark,cr.reject_reason,
cr.audit_id,cr.create_time,cr.update_time,cr.audit_time,
a1.admin_name as submitterName,
a2.admin_name as auditName
from cash_record_collection cr
left join admin a1 on cr.submitter_id = a1.id
left join admin a2 on cr.audit_id = a2.id
left join market m1 on m1.id = cr.market
left join market m2 on m2.id = cr.received_market
left join rate r1 on r1.id = cr.payment_currency
left join rate r2 on r2.id = cr.received_currency
left join recharge_activity ra on ra.id = cr.activity
<where >
1 = 1
<if test= "cashCollection.market != null and cashCollection.market != ''" >
AND cr.market = #{cashCollection.market}
</if>
<if test= "cashCollection.jwcode != null and cashCollection.jwcode!=''" >
AND cr.jwcode = #{cashCollection.jwcode}
</if>
<if test= "cashCollection.name!=null and cashCollection.name !=''" >
AND cr.name like concat('%',#{cashCollection.name},'%')
</if>
<if test= "cashCollection.submitterId!=null and cashCollection.submitterId !=''" >
AND cr.submitter_id = #{cashCollection.submitterId}
</if>
<!-- 其他原有条件不变 -->
<choose >
<when test= "cashCollection.status != null and (cashCollection.status == 46||cashCollection.status == 13)" >
<if test= "cashCollection.receivedMarket != null and cashCollection.receivedMarket != ''" >
AND (cr.received_market = #{cashCollection.receivedMarket}
<if test= "cashCollection.submitterMarket != null and cashCollection.submitterMarket != ''" >
OR cr.submitter_market = #{cashCollection.submitterMarket}
</if>
)
</if>
<if test= "(cashCollection.receivedMarket = = n u l l o r cashCollection.receivedMarket = = ' ' )
and cashCollection.submitterMarket != null and cashCollection.submitterMarket != ''">
AND cr.submitter_market = #{cashCollection.submitterMarket}
</if>
</when>
<!-- 非 status=46 保持原逻辑:同时满足 -->
<otherwise >
<if test= "cashCollection.receivedMarket != null and cashCollection.receivedMarket != ''" >
AND cr.received_market = #{cashCollection.receivedMarket}
</if>
<if test= "cashCollection.submitterMarket != null and cashCollection.submitterMarket != ''" >
AND cr.submitter_market = #{cashCollection.submitterMarket}
</if>
</otherwise>
</choose>
<if test= "cashCollection.activity!=null and cashCollection.activity!=''" >
AND cr.activity =#{cashCollection.activity}
</if>
<if test= "cashCollection.paymentCurrency!=null and cashCollection.paymentCurrency!=''" >
AND cr.payment_currency like concat('%',#{cashCollection.paymentCurrency},'%')
</if>
<if test= "cashCollection.goodsName!=null and cashCollection.goodsName!=''" >
AND cr.goods_name like concat('%',#{cashCollection.goodsName},'%')
</if>
<if test= "cashCollection.payType!=null and cashCollection.payType!=''" >
AND cr.pay_type = #{cashCollection.payType}
</if>
<if test= "cashCollection.status != null" >
AND cr.status IN
<foreach collection= "cashCollection.status.toString().toCharArray()" item= "digit" open= "(" separator= "," close= ")" >
#{digit}
</foreach>
</if>
<if test= "cashCollection.startTime!=null and cashCollection.endTime!=null" >
AND cr.pay_time between #{cashCollection.startTime} and #{cashCollection.endTime}
</if>
and cr.order_type=1
</where>
<choose >
<when test= "cashCollection.sortField != null and cashCollection.sortField.length > 0 or cashCollection.sortOrder != null and cashCollection.sortOrder.length > 0" >
ORDER BY ${cashCollection.sortField} ${cashCollection.sortOrder}
</when>
<otherwise >
ORDER BY create_time DESC
</otherwise>
</choose>
</select>
</mapper>