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
90 lines
4.3 KiB
package com.example.demo.mapper;
|
|
|
|
|
|
import com.example.demo.domain.entity.Recharge;
|
|
import com.example.demo.domain.vo.RechargeA;
|
|
import com.example.demo.domain.vo.RechargeVo;
|
|
import org.apache.ibatis.annotations.*;
|
|
|
|
import java.util.List;
|
|
|
|
@Mapper
|
|
public interface RechargeMapper {
|
|
|
|
List<RechargeA> getRechargeA(@Param("flags") List<Integer> flags);
|
|
|
|
@Insert({
|
|
"INSERT INTO recharge",
|
|
"(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)",
|
|
"values ",
|
|
"(#{jwcode},#{orderCode},#{activityId},#{paidGold},#{freeGold},#{rechargeGold},#{payWay},#{rechargeWay},#{rechargeTime},#{rechargeVoucher},#{adminId},#{remark},1,#{adminName})"
|
|
})
|
|
@Options(useGeneratedKeys = true,keyColumn = "recharge_id",keyProperty = "rechargeId")
|
|
int insert(Recharge recharge);
|
|
|
|
|
|
@Insert({
|
|
"<script>",
|
|
"INSERT INTO recharge (",
|
|
"jwcode, order_code, activity_id, paid_gold, free_gold, recharge_gold, pay_way, recharge_way, recharge_time, recharge_voucher, admin_id, remark, flag)",
|
|
"VALUES ",
|
|
"<foreach collection='list' item='item' separator=','>",
|
|
"(#{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)",
|
|
"</foreach>",
|
|
"</script>"
|
|
})
|
|
@Options(useGeneratedKeys = false)
|
|
int insertBatch(@Param("list") List<Recharge> list);
|
|
|
|
|
|
@Update({
|
|
"<script>",
|
|
"UPDATE recharge",
|
|
"<set>",
|
|
"<if test= 'flag!=null '>flag=#{flag},</if>",
|
|
"</set>",
|
|
"where recharge_id=#{rechargeId}",
|
|
"</script>"
|
|
})
|
|
int update(Recharge recharge);
|
|
|
|
@Select({
|
|
"<script>",
|
|
"SELECT user.`name` as user_name,recharge.jwcode,recharge.create_time,recharge.recharge_time," +
|
|
"recharge.recharge_way,recharge.remark,recharge.paid_gold,recharge.free_gold,recharge.recharge_gold,recharge.pay_way,recharge.recharge_voucher," +
|
|
"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",
|
|
"LEFT JOIN audit ON recharge.recharge_id = audit.recharge_id",
|
|
"LEFT JOIN `user` ON recharge.jwcode = `user`.jwcode",
|
|
"LEFT JOIN activity on recharge.activity_id = activity.activity_id",
|
|
"LEFT JOIN `admin` on recharge.admin_id = `admin`.admin_id",
|
|
"<where>",
|
|
"flag='1'",
|
|
"<if test='jwcode!=null and jwcode.length>0'>and recharge.jwcode=#{jwcode}</if>",
|
|
"<if test='activityId!=null'>and recharge.activity_id=#{activityId}</if>",
|
|
"<if test='adminId!=null'>and recharge.admin_id=#{adminId}</if>",
|
|
"<if test='startDate != null and endDate != null'>AND recharge.create_time BETWEEN #{startDate} AND #{endDate}</if>",
|
|
"<if test='payWay!=null and payWay.length>0 '>and pay_way like concat('%',#{payWay},'%')</if>",
|
|
"<if test='rechargeWay!=null and rechargeWay.length>0 '>and recharge_way like concat('%',#{rechargeWay},'%')</if>",
|
|
"<if test='area!=null and area.length>0'>and user.area=#{area}</if>",
|
|
"<if test='status!=null'>and audit.status=#{status}</if>",
|
|
"</where>",
|
|
"<choose>",
|
|
" <!-- 优先使用前端传入的排序参数 -->",
|
|
" <when test='sortField != null or sortOrder != null'>",
|
|
" ORDER BY ${sortField} ${sortOrder}",
|
|
" </when>",
|
|
" <!-- 默认排序 -->",
|
|
" <otherwise>",
|
|
"ORDER BY recharge.create_time DESC",
|
|
" </otherwise>",
|
|
"</choose>",
|
|
|
|
"</script>"
|
|
})
|
|
List<RechargeVo> select(RechargeVo rechargeVo);
|
|
//根据jwcode和充值类型判断有没有,有首充标识设为0,否者设为1
|
|
@Select({"select count(*) from detail",
|
|
"where jwcode=#{jwcode} and update_type='0'"})
|
|
int getAllByjwAndup(String jwcode);
|
|
|
|
}
|