LifeUserOrderMapper.xml 5.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  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="offprice" property="finalPrice"/>
  25. <result column="store_id" property="storeId"/>
  26. <result column="store_name" property="storeName"/>
  27. <result column="commission_rate" property="commissionRate"/>
  28. <result column="img_url" property="imgUrl"/>
  29. <result column="user_name" property="userName"/>
  30. <result column="order_status" property="status"/>
  31. <result column="dist" property="dist"/>
  32. <result column="store_address" property="storeAddress"/>
  33. <result column="effective_date_type" property="effectiveDateType"/>
  34. <result column="effective_date_value" property="effectiveDateValue"/>
  35. <result column="use_rules" property="useRules"/>
  36. <result column="applicable_num" property="applicableNum"/>
  37. <result column="quota_type" property="quotaType"/>
  38. <result column="quota_value" property="quotaValue"/>
  39. <result column="business_type" property="businessType"/>
  40. <result column="business_date" property="businessDate"/>
  41. <result column="start_time" property="startTime"/>
  42. <result column="end_time" property="endTime"/>
  43. <collection property="orderCouponMiddleList" ofType="shop.alien.entity.store.vo.OrderCouponMiddleVo">
  44. <id column="ocmId" property="id" />
  45. <result column="status" property="status"/>
  46. <result column="coupon_code" property="couponCode"/>
  47. <result column="refund_time" property="refundTime"/>
  48. <result column="refund_reason" property="refundReason"/>
  49. <result column="refundPrice" property="price"/>
  50. </collection>
  51. </resultMap>
  52. <!-- 查询用户订单详情 -->
  53. <select id="queryUserOrderDetail" resultMap="BaseResultMap">
  54. with total_coupon as(
  55. select id coupon_id,2 coupon_type,lgbm.group_name coupon_name,preferential_price offprice,SUBSTRING_INDEX(image_id, ',', 1) AS image_id,
  56. effective_date_type,effective_date_value,use_rules,reservation_rules,applicable_num,quota_type,quota_value
  57. from life_group_buy_main lgbm where lgbm.delete_flag = 0
  58. union all
  59. select id coupon_id,1 coupon_type,lc.name coupon_name,lc.offprice offprice,SUBSTRING_INDEX(image_path, ',', 1) AS image_id,
  60. 0 effective_date_type,expiration_date effective_date_value,use_rule use_rules,reservation_rules,applicable_num,1 quota_type,buy_limit quota_value
  61. from life_coupon lc where lc.delete_flag = 0
  62. )
  63. select luo.id,luo.order_no,luo.created_time , luo.price ,luo.final_price
  64. ,luo.pay_method,luo.buy_time,luo.cancel_time,luo.pay_time,luo.finish_time,luo.status order_status,
  65. tc.*,
  66. ldc.nominal_value,
  67. lu.user_phone,lu.user_name,lu.id user_id,
  68. ocm.id ocmId,ocm.status,ocm.coupon_code,ocm.refund_time,ocm.refund_reason,ocm.price refundPrice,
  69. si.id store_id,si.store_name,si.commission_rate,si.store_address,
  70. <if test="position != null and position != ''">
  71. ROUND(
  72. ST_Distance_Sphere(
  73. ST_GeomFromText(CONCAT('POINT(', REPLACE(#{position}, ',', ' '), ')')),
  74. ST_GeomFromText(CONCAT('POINT(', REPLACE(si.store_position, ',', ' '), ')'))
  75. ) / 1000,
  76. 2
  77. ) AS dist,
  78. </if>
  79. simg.img_url,
  80. sbi.business_type,sbi.business_date,sbi.start_time,sbi.end_time
  81. from life_user_order luo
  82. left join store_info si on si.id = luo.store_id and si.delete_flag = 0
  83. left join order_coupon_middle ocm on ocm.order_id = luo.id and ocm.delete_flag = 0
  84. left join total_coupon tc on tc.coupon_id = ocm.coupon_id and tc.coupon_type = luo.coupon_type
  85. left join life_discount_coupon ldc on ldc.id = luo.quan_id and ldc.delete_flag = 0
  86. left join life_user lu on lu.id = luo.user_id and lu.delete_flag = 0
  87. left join store_img simg on simg.id = tc.image_id and simg.delete_flag = 0
  88. left join store_business_info sbi on sbi.store_id = si.id and sbi.delete_flag = 0
  89. where luo.id = #{orderId}
  90. order by luo.created_time desc
  91. </select>
  92. </mapper>