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.

66 lines
2.3 KiB

  1. package com.example.demo.mapper;
  2. import com.example.demo.domain.entity.Activity;
  3. import org.apache.ibatis.annotations.*;
  4. import java.util.List;
  5. @Mapper
  6. public interface ActivityMapper {
  7. //增加活动信息
  8. @Insert({"insert into activity",
  9. "(admin_id,start_time,end_time,recharge_ratio,activity_name,activity_flag,create_time) " ,
  10. "values",
  11. "(#{adminId},#{startTime},#{endTime},#{rechargeRatio},#{activityName},1,now())"
  12. })
  13. @Options(useGeneratedKeys = true,keyColumn = "activity_id",keyProperty = "activityId")
  14. int add(Activity activity);
  15. // 修改活动信息
  16. @Update({
  17. "<script>",
  18. "update activity",
  19. "<set>",
  20. "<if test='dept != null '>dept=#{dept},</if>",
  21. "<if test='startTime != null '>start_time=#{startTime},</if>",
  22. "<if test='adminId != null '>admin_id=#{adminId},</if>",
  23. "<if test='endTime != null '>end_time=#{endTime},</if>",
  24. "<if test='rechargeRatio != null '>recharge_ratio=#{rechargeRatio},</if>",
  25. "<if test='activityName != null and activityName.length>0'>activity_name=#{activityName},</if>",
  26. "<if test='activityFlag != null'>`activity_flag`=#{activityFlag},</if>",
  27. "<if test='status != null'>`status`=#{status},</if>",
  28. "</set>",
  29. "where activity_id=#{activityId}",
  30. "</script>"
  31. })
  32. int edit(Activity activity);
  33. //查询--根据活动id查询活动信息
  34. @Select({
  35. "select activity_id from activity where activity_id=#{activityId}"
  36. })
  37. Activity selectById(Integer activityId);
  38. //模糊查询--根据活动id查询活动信息
  39. @Select({
  40. "<script>",
  41. "select activity.*,admin.name from activity",
  42. "inner join admin on activity.admin_id=admin.admin_id ",
  43. "<where>",
  44. "`activity_flag`=1",
  45. "<if test='startDate != null and endDate != null'>AND activity.create_time BETWEEN #{startDate} AND #{endDate}</if>",
  46. "<if test='activityName!=null and activityName.length>0'>and activity_name like concat('%',#{activityName},'%')</if>",
  47. "</where>",
  48. "</script>"
  49. })
  50. List<Activity> select(Activity activity);
  51. //
  52. }