RecapitalizeMapper.xml 3.34 KB
<?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="com.lframework.xingyun.sc.mappers.RecapitalizeMapper">

    <resultMap id="Recapitalize" type="com.lframework.xingyun.sc.entity.Recapitalize">
        <id column="id" property="id"/>
        <result column="recapitalize_date" property="recapitalizeDate"/>
        <result column="ordering_unit" property="orderingUnit"/>
        <result column="ordering_unit_name" property="orderingUnitName"/>
        <result column="returned_amount" property="returnedAmount"/>
        <result column="dept_id" property="deptId"/>
        <result column="dept_name" property="deptName"/>
        <result column="factory_type" property="factoryType"/>
        <result column="create_by_id" property="createById"/>
        <result column="create_by" property="createBy"/>
        <result column="update_by_id" property="updateById"/>
        <result column="update_by" property="updateBy"/>
        <result column="create_time" property="createTime"/>
        <result column="update_time" property="updateTime"/>
    </resultMap>

    <sql id="Recapitalize_sql">
        SELECT
            tb.id,
            tb.recapitalize_date,
            tb.ordering_unit,
            cu.name AS ordering_unit_name,
            tb.returned_amount,
            tb.dept_id,
            d.name AS dept_name,
            tb.factory_type,
            tb.create_by_id,
            tb.create_by,
            tb.update_by_id,
            tb.update_by,
            tb.create_time,
            tb.update_time
        FROM tbl_recapitalize AS tb
        left join base_data_customer as cu on cu.id = tb.ordering_unit
        left join sys_dept d on tb.dept_id = d.id
    </sql>

    <select id="query" resultMap="Recapitalize">
        <include refid="Recapitalize_sql"/>
        <where>
            <if test="vo.recapitalizeDateStart != null and vo.recapitalizeDateStart != ''">
                AND tb.recapitalize_date >= #{vo.recapitalizeDateStart}
            </if>
            <if test="vo.recapitalizeDateEnd != null and vo.recapitalizeDateEnd != ''">
                <![CDATA[
               AND tb.recapitalize_date <= #{vo.recapitalizeDateEnd}
                ]]>
            </if>
            <if test="vo.orderingUnit != null and vo.orderingUnit != ''">
                AND tb.ordering_unit = #{vo.orderingUnit}
            </if>
            <if test="vo.orderingUnitName != null and vo.orderingUnitName != ''">
                AND cu.name LIKE CONCAT('%', #{vo.orderingUnitName}, '%')
            </if>
            <if test="vo.deptId != null and vo.deptId != ''">
                AND tb.dept_id = #{vo.deptId}
            </if>
            <if test="vo.deptName != null and vo.deptName != ''">
                AND d.name LIKE CONCAT('%', #{vo.deptName}, '%')
            </if>
            <if test="vo.factoryType != null and vo.factoryType != ''">
                AND tb.factory_type = #{vo.factoryType}
            </if>
        </where>
        ORDER BY tb.create_time DESC
    </select>

    <select id="findById" resultType="com.lframework.xingyun.sc.entity.Recapitalize">
        <include refid="Recapitalize_sql"/>
        <where>
            <if test="id != null and id != ''">
                AND tb.id = #{id}
            </if>
        </where>
    </select>
</mapper>