金币系统后端
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

90 lines
4.3 KiB

  1. package com.example.demo.mapper;
  2. import com.example.demo.domain.entity.Recharge;
  3. import com.example.demo.domain.vo.RechargeA;
  4. import com.example.demo.domain.vo.RechargeVo;
  5. import org.apache.ibatis.annotations.*;
  6. import java.util.List;
  7. @Mapper
  8. public interface RechargeMapper {
  9. List<RechargeA> getRechargeA(@Param("flags") List<Integer> flags);
  10. @Insert({
  11. "INSERT INTO recharge",
  12. "(jwcode,order_code,activity_id,paid_gold,free_gold,recharge_gold,pay_way,recharge_way,recharge_time,recharge_voucher,admin_id,remark,flag,admin_name)",
  13. "values ",
  14. "(#{jwcode},#{orderCode},#{activityId},#{paidGold},#{freeGold},#{rechargeGold},#{payWay},#{rechargeWay},#{rechargeTime},#{rechargeVoucher},#{adminId},#{remark},1,#{adminName})"
  15. })
  16. @Options(useGeneratedKeys = true,keyColumn = "recharge_id",keyProperty = "rechargeId")
  17. int insert(Recharge recharge);
  18. @Insert({
  19. "<script>",
  20. "INSERT INTO recharge (",
  21. "jwcode, order_code, activity_id, paid_gold, free_gold, recharge_gold, pay_way, recharge_way, recharge_time, recharge_voucher, admin_id, remark, flag)",
  22. "VALUES ",
  23. "<foreach collection='list' item='item' separator=','>",
  24. "(#{item.jwcode}, #{item.orderCode}, #{item.activityId}, #{item.paidGold}, #{item.freeGold}, #{item.rechargeGold}, #{item.payWay}, #{item.rechargeWay}, #{item.rechargeTime}, #{item.rechargeVoucher}, #{item.adminId}, #{item.remark}, 1)",
  25. "</foreach>",
  26. "</script>"
  27. })
  28. @Options(useGeneratedKeys = false)
  29. int insertBatch(@Param("list") List<Recharge> list);
  30. @Update({
  31. "<script>",
  32. "UPDATE recharge",
  33. "<set>",
  34. "<if test= 'flag!=null '>flag=#{flag},</if>",
  35. "</set>",
  36. "where recharge_id=#{rechargeId}",
  37. "</script>"
  38. })
  39. int update(Recharge recharge);
  40. @Select({
  41. "<script>",
  42. "SELECT user.`name` as user_name,recharge.jwcode,recharge.create_time,recharge.recharge_time," +
  43. "recharge.recharge_way,recharge.remark,recharge.paid_gold,recharge.free_gold,recharge.recharge_gold,recharge.pay_way,recharge.recharge_voucher," +
  44. "recharge.recharge_id,recharge.activity_id,recharge.admin_id,activity.activity_name,audit.`status`,audit.audit_id,audit.reson, admin.name,user.area,audit.detail_id FROM recharge",
  45. "LEFT JOIN audit ON recharge.recharge_id = audit.recharge_id",
  46. "LEFT JOIN `user` ON recharge.jwcode = `user`.jwcode",
  47. "LEFT JOIN activity on recharge.activity_id = activity.activity_id",
  48. "LEFT JOIN `admin` on recharge.admin_id = `admin`.admin_id",
  49. "<where>",
  50. "flag='1'",
  51. "<if test='jwcode!=null and jwcode.length>0'>and recharge.jwcode=#{jwcode}</if>",
  52. "<if test='activityId!=null'>and recharge.activity_id=#{activityId}</if>",
  53. "<if test='adminId!=null'>and recharge.admin_id=#{adminId}</if>",
  54. "<if test='startDate != null and endDate != null'>AND recharge.create_time BETWEEN #{startDate} AND #{endDate}</if>",
  55. "<if test='payWay!=null and payWay.length>0 '>and pay_way like concat('%',#{payWay},'%')</if>",
  56. "<if test='rechargeWay!=null and rechargeWay.length>0 '>and recharge_way like concat('%',#{rechargeWay},'%')</if>",
  57. "<if test='area!=null and area.length>0'>and user.area=#{area}</if>",
  58. "<if test='status!=null'>and audit.status=#{status}</if>",
  59. "</where>",
  60. "<choose>",
  61. " <!-- 优先使用前端传入的排序参数 -->",
  62. " <when test='sortField != null or sortOrder != null'>",
  63. " ORDER BY ${sortField} ${sortOrder}",
  64. " </when>",
  65. " <!-- 默认排序 -->",
  66. " <otherwise>",
  67. "ORDER BY recharge.create_time DESC",
  68. " </otherwise>",
  69. "</choose>",
  70. "</script>"
  71. })
  72. List<RechargeVo> select(RechargeVo rechargeVo);
  73. //根据jwcode和充值类型判断有没有,有首充标识设为0,否者设为1
  74. @Select({"select count(*) from detail",
  75. "where jwcode=#{jwcode} and update_type='0'"})
  76. int getAllByjwAndup(String jwcode);
  77. }