LifeUserOrderMapper.xml 9.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155
  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <!DOCTYPE mapper
  3. PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  4. "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  5. <mapper namespace="shop.alien.mapper.LifeUserOrderMapper">
  6. <!-- 通用查询映射结果 -->
  7. <resultMap id="BaseResultMap" type="shop.alien.entity.store.vo.LifeUserOrderVo">
  8. <id column="id" property="id" />
  9. <result column="order_no" property="orderNo"/>
  10. <result column="created_time" property="createdTime"/>
  11. <result column="price" property="price"/>
  12. <result column="final_price" property="finalPrice"/>
  13. <result column="coupon_name" property="couponName"/>
  14. <result column="nominal_value" property="nominalValue"/>
  15. <result column="user_phone" property="userPhone"/>
  16. <result column="commission_rate" property="commissionRate"/>
  17. <result column="img_url" property="imgUrl"/>
  18. <result column="pay_method" property="payMethod"/>
  19. <result column="buy_time" property="buyTime"/>
  20. <result column="cancel_time" property="cancelTime"/>
  21. <result column="pay_time" property="payTime"/>
  22. <result column="finish_time" property="finishTime"/>
  23. <result column="coupon_type" property="couponType"/>
  24. <result column="coupon_id" property="couponId"/>
  25. <result column="offprice" property="offprice"/>
  26. <result column="store_id" property="storeId"/>
  27. <result column="store_name" property="storeName"/>
  28. <result column="commission_rate" property="commissionRate"/>
  29. <result column="img_url" property="imgUrl"/>
  30. <result column="user_name" property="userName"/>
  31. <result column="order_status" property="status"/>
  32. <result column="dist" property="dist"/>
  33. <result column="store_address" property="storeAddress"/>
  34. <result column="effective_date_type" property="effectiveDateType"/>
  35. <result column="effective_date_value" property="effectiveDateValue"/>
  36. <result column="use_rules" property="useRules"/>
  37. <result column="applicable_num" property="applicableNum"/>
  38. <result column="quota_type" property="quotaType"/>
  39. <result column="quota_value" property="quotaValue"/>
  40. <result column="store_tel" property="storeTel"/>
  41. <result column="quan_id" property="quanId"/>
  42. <result column="total_refund_time" property="totalRefundTime"/>
  43. <result column="business_status" property="businessStatus"/>
  44. <result column="type" property="type"/>
  45. <result column="store_type" property="storeType"/>
  46. <result column="store_status" property="storeStatus"/>
  47. <result column="business_type" property="businessType"/>
  48. <result column="collect_num" property="collectNum"/>
  49. <result column="business_date" property="businessDate"/>
  50. <result column="start_time" property="startTime"/>
  51. <result column="end_time" property="endTime"/>
  52. <result column="end_date" property="endDate"/>
  53. <result column="reservation_rules" property="reservationRules"/>
  54. <result column="original_price" property="originalPrice"/>
  55. <result column="order_str" property="orderStr"/>
  56. <result column="store_user_tel" property="storeUserTel"/>
  57. <collection property="orderCouponMiddleList" ofType="shop.alien.entity.store.vo.OrderCouponMiddleVo">
  58. <id column="ocmId" property="id" />
  59. <result column="status" property="status"/>
  60. <result column="coupon_code" property="couponCode"/>
  61. <result column="refund_time" property="refundTime"/>
  62. <result column="refund_reason" property="refundReason"/>
  63. <result column="refundPrice" property="price"/>
  64. <result column="used_time" property="usedTime"/>
  65. </collection>
  66. </resultMap>
  67. <!-- 查询用户订单详情 -->
  68. <select id="queryUserOrderDetail" resultMap="BaseResultMap">
  69. with total_coupon as(
  70. select id coupon_id,2 coupon_type,lgbm.group_name coupon_name,preferential_price offprice,original_price, SUBSTRING_INDEX(image_id, ',', 1) AS image_id,
  71. effective_date_type,effective_date_value,use_rules,reservation_rules,applicable_num,quota_type,quota_value,inventory_num single_qty
  72. from life_group_buy_main lgbm where lgbm.delete_flag = 0
  73. union all
  74. select id coupon_id,1 coupon_type,lc.name coupon_name,lc.offprice offprice,price original_price,SUBSTRING_INDEX(image_path, ',', 1) AS image_id,
  75. 0 effective_date_type,expiration_date effective_date_value,use_rule use_rules,reservation_rules,applicable_num,1 quota_type,buy_limit quota_value,single_qty
  76. from life_coupon lc where lc.delete_flag = 0
  77. )
  78. select luo.id,luo.order_no,luo.created_time , luo.price ,
  79. CASE
  80. WHEN luo.final_price IS NOT NULL AND luo.final_price != '' THEN
  81. FORMAT(CAST(luo.final_price AS DECIMAL(10,2)), 2)
  82. ELSE '0.00'
  83. END as final_price,
  84. luo.order_str,
  85. luo.pay_method,luo.buy_time,luo.cancel_time,luo.pay_time,luo.finish_time,luo.status order_status,luo.quan_id,luo.refund_time total_refund_time,
  86. tc.*,
  87. ldc.nominal_value,ldc.type,
  88. lu.user_phone,lu.user_name,lu.id user_id,
  89. ocm.id ocmId,ocm.status,ocm.coupon_code,ocm.refund_time,ocm.refund_reason,ocm.price refundPrice,
  90. si.id store_id,si.store_name,si.commission_rate,si.store_address,si.store_tel,si.business_status,si.collect_num,si.business_section store_type,si.store_status,
  91. su.phone store_user_tel,
  92. <if test="position != null and position != ''">
  93. ROUND(
  94. ST_Distance_Sphere(
  95. ST_GeomFromText(CONCAT('POINT(', REPLACE(#{position}, ',', ' '), ')')),
  96. ST_GeomFromText(CONCAT('POINT(', REPLACE(si.store_position, ',', ' '), ')'))
  97. ) / 1000,
  98. 2
  99. ) AS dist,
  100. </if>
  101. simg.img_url,
  102. sbi.business_type,sbi.business_date,sbi.start_time,sbi.end_time
  103. from life_user_order luo
  104. left join store_info si on si.id = luo.store_id and si.delete_flag = 0
  105. left join order_coupon_middle ocm on ocm.order_id = luo.id and ocm.delete_flag = 0
  106. left join total_coupon tc on tc.coupon_id = ocm.coupon_id and tc.coupon_type = luo.coupon_type
  107. left join life_discount_coupon_user ldcu on ldcu.id = luo.quan_id and ldcu.delete_flag = 0
  108. left join life_discount_coupon ldc on ldc.id = ldcu.coupon_id and ldc.delete_flag = 0
  109. left join life_user lu on lu.id = luo.user_id and lu.delete_flag = 0
  110. left join store_img simg on simg.id = tc.image_id and simg.delete_flag = 0
  111. left join store_business_info sbi on sbi.store_id = si.id and sbi.delete_flag = 0
  112. left join store_user su on su.store_id = si.id and su.delete_flag = 0
  113. where luo.id = #{orderId}
  114. order by luo.created_time desc
  115. </select>
  116. <select id="selectRefundList" resultMap="BaseResultMap">
  117. with total_coupon as(
  118. select id coupon_id,2 coupon_type,lgbm.group_name coupon_name,preferential_price offprice,SUBSTRING_INDEX(image_id, ',', 1) AS image_id,
  119. effective_date_type,effective_date_value,use_rules,reservation_rules,applicable_num,quota_type,quota_value,inventory_num single_qty,end_time end_date
  120. from life_group_buy_main lgbm where lgbm.delete_flag = 0
  121. union all
  122. select id coupon_id,1 coupon_type,lc.name coupon_name,lc.offprice offprice,SUBSTRING_INDEX(image_path, ',', 1) AS image_id,
  123. 0 effective_date_type,expiration_date effective_date_value,use_rule use_rules,reservation_rules,applicable_num,1 quota_type,buy_limit quota_value,single_qty,end_date
  124. from life_coupon lc where lc.delete_flag = 0
  125. )
  126. select luo.id,luo.order_no,luo.created_time , luo.price ,luo.final_price
  127. ,luo.pay_method,luo.buy_time,luo.cancel_time,luo.pay_time,luo.finish_time,luo.status order_status,luo.quan_id,
  128. tc.*,
  129. ldc.nominal_value,
  130. lu.user_phone,lu.user_name,lu.id user_id,
  131. ocm.id ocmId,ocm.status,ocm.coupon_code,ocm.refund_time,ocm.refund_reason,ocm.price refundPrice,
  132. si.id store_id,si.store_name,si.commission_rate,si.store_address,si.store_tel,
  133. simg.img_url,
  134. sbi.business_type,sbi.business_date,sbi.start_time,sbi.end_time
  135. from life_user_order luo
  136. left join store_info si on si.id = luo.store_id and si.delete_flag = 0
  137. left join order_coupon_middle ocm on ocm.order_id = luo.id and ocm.delete_flag = 0
  138. inner join total_coupon tc on tc.coupon_id = ocm.coupon_id and tc.coupon_type = luo.coupon_type
  139. left join life_discount_coupon_user ldcu on ldcu.id = luo.quan_id and ldcu.delete_flag = 0
  140. left join life_discount_coupon ldc on ldc.id = ldcu.coupon_id and ldc.delete_flag = 0
  141. left join life_user lu on lu.id = luo.user_id and lu.delete_flag = 0
  142. left join store_img simg on simg.id = tc.image_id and simg.delete_flag = 0
  143. left join store_business_info sbi on sbi.store_id = si.id and sbi.delete_flag = 0
  144. <where>
  145. <!-- 引用 LambdaQueryWrapper 构建的条件 -->
  146. ${ew.sqlSegment}
  147. </where>
  148. order by luo.created_time desc
  149. </select>
  150. </mapper>