<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="cn.iocoder.mall.pay.biz.dao.PayTransactionExtensionMapper"> <sql id="FIELDS"> id, transaction_id, pay_channel, transaction_code, extension_data, create_ip, status, create_time </sql> <insert id="insert" parameterType="PayTransactionExtensionDO" useGeneratedKeys="true" keyColumn="id" keyProperty="id"> INSERT INTO transaction_extension ( transaction_id, pay_channel, transaction_code, extension_data, create_ip, status ) VALUES ( #{transactionId}, #{payChannel}, #{transactionCode}, #{extensionData}, #{createIp}, #{status} ) </insert> <update id="update"> UPDATE transaction_extension <set> <if test="entity.extensionData != null"> , extension_data = #{entity.extensionData} </if> <if test="entity.status != null"> , status = #{entity.status} </if> </set> WHERE id = #{entity.id} <if test="whereStatus != null"> AND status = #{whereStatus} </if> </update> <select id="selectByTransactionCode" parameterType="String" resultType="PayTransactionExtensionDO"> SELECT <include refid="FIELDS"/> FROM transaction_extension WHERE transaction_code = #{transactionCode} LIMIT 1 </select> <select id="selectById" parameterType="Integer" resultType="PayTransactionExtensionDO"> SELECT <include refid="FIELDS"/> FROM transaction_extension WHERE id = #{id} </select> </mapper>