<?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.ruoyi.business.mapper.SCompanyMapper">
    
    <resultMap type="com.ruoyi.business.domain.SCompany" id="SCompanyResult">
        <result property="companyId"    column="company_id"    />
        <result property="areaName"    column="area_name"    />
        <result property="company"    column="company"    />
        <result property="org"    column="org"    />
        <result property="person"    column="person"    />
        <result property="register"    column="register"    />
        <result property="setupTime"    column="setup_time"    />
        <result property="addr"    column="addr"    />
        <result property="state"    column="state"    />
        <result property="gange"    column="gange"    />
        <result property="inviteBid"    column="invite_bid"    />
        <result property="winBid"    column="win_bid"    />
        <result property="inviteCount"    column="invite_count"    />
        <result property="winCount"    column="win_count"    />
        <result property="inviteSum"    column="invite_sum"    />
        <result property="winSum"    column="win_sum"    />
        <result property="storeNumber"    column="store_number"    />
        <result property="createTime"    column="create_time"    />
        <result property="updateTime"    column="update_time"    />
    </resultMap>

    <sql id="selectSCompanyVo">
        select company_id, area_name, company, org, person, register, setup_time, addr, state, gange, invite_bid, win_bid, invite_count, win_count, invite_sum, win_sum, store_number, create_time, update_time from s_company
    </sql>

    <select id="selectSCompanyList" parameterType="com.ruoyi.business.domain.SCompany" resultMap="SCompanyResult">
        <include refid="selectSCompanyVo"/>
        <where>  
            <if test="areaName != null  and areaName != ''"> and area_name like concat('%', #{areaName}, '%')</if>
            <if test="company != null  and company != ''"> and company = #{company}</if>
            <if test="org != null  and org != ''"> and org = #{org}</if>
            <if test="person != null  and person != ''"> and person = #{person}</if>
            <if test="register != null  and register != ''"> and register = #{register}</if>
            <if test="setupTime != null "> and setup_time = #{setupTime}</if>
            <if test="addr != null  and addr != ''"> and addr = #{addr}</if>
            <if test="state != null  and state != ''"> and state = #{state}</if>
            <if test="gange != null  and gange != ''"> and gange = #{gange}</if>
            <if test="inviteBid != null "> and invite_bid = #{inviteBid}</if>
            <if test="winBid != null "> and win_bid = #{winBid}</if>
            <if test="inviteCount != null "> and invite_count = #{inviteCount}</if>
            <if test="winCount != null "> and win_count = #{winCount}</if>
            <if test="inviteSum != null "> and invite_sum = #{inviteSum}</if>
            <if test="winSum != null "> and win_sum = #{winSum}</if>
            <if test="storeNumber != null "> and store_number = #{storeNumber}</if>
        </where>
    </select>
    
    <select id="selectSCompanyByCompanyId" parameterType="Long" resultMap="SCompanyResult">
        <include refid="selectSCompanyVo"/>
        where company_id = #{companyId}
    </select>
        
    <insert id="insertSCompany" parameterType="com.ruoyi.business.domain.SCompany" useGeneratedKeys="true" keyProperty="companyId">
        insert into s_company
        <trim prefix="(" suffix=")" suffixOverrides=",">
            <if test="areaName != null and areaName != ''">area_name,</if>
            <if test="company != null and company != ''">company,</if>
            <if test="org != null">org,</if>
            <if test="person != null">person,</if>
            <if test="register != null">register,</if>
            <if test="setupTime != null">setup_time,</if>
            <if test="addr != null">addr,</if>
            <if test="state != null">state,</if>
            <if test="gange != null">gange,</if>
            <if test="inviteBid != null">invite_bid,</if>
            <if test="winBid != null">win_bid,</if>
            <if test="inviteCount != null">invite_count,</if>
            <if test="winCount != null">win_count,</if>
            <if test="inviteSum != null">invite_sum,</if>
            <if test="winSum != null">win_sum,</if>
            <if test="storeNumber != null">store_number,</if>
            <if test="createTime != null">create_time,</if>
            <if test="updateTime != null">update_time,</if>
         </trim>
        <trim prefix="values (" suffix=")" suffixOverrides=",">
            <if test="areaName != null and areaName != ''">#{areaName},</if>
            <if test="company != null and company != ''">#{company},</if>
            <if test="org != null">#{org},</if>
            <if test="person != null">#{person},</if>
            <if test="register != null">#{register},</if>
            <if test="setupTime != null">#{setupTime},</if>
            <if test="addr != null">#{addr},</if>
            <if test="state != null">#{state},</if>
            <if test="gange != null">#{gange},</if>
            <if test="inviteBid != null">#{inviteBid},</if>
            <if test="winBid != null">#{winBid},</if>
            <if test="inviteCount != null">#{inviteCount},</if>
            <if test="winCount != null">#{winCount},</if>
            <if test="inviteSum != null">#{inviteSum},</if>
            <if test="winSum != null">#{winSum},</if>
            <if test="storeNumber != null">#{storeNumber},</if>
            <if test="createTime != null">#{createTime},</if>
            <if test="updateTime != null">#{updateTime},</if>
         </trim>
    </insert>

    <update id="updateSCompany" parameterType="com.ruoyi.business.domain.SCompany">
        update s_company
        <trim prefix="SET" suffixOverrides=",">
            <if test="areaName != null and areaName != ''">area_name = #{areaName},</if>
            <if test="company != null and company != ''">company = #{company},</if>
            <if test="org != null">org = #{org},</if>
            <if test="person != null">person = #{person},</if>
            <if test="register != null">register = #{register},</if>
            <if test="setupTime != null">setup_time = #{setupTime},</if>
            <if test="addr != null">addr = #{addr},</if>
            <if test="state != null">state = #{state},</if>
            <if test="gange != null">gange = #{gange},</if>
            <if test="inviteBid != null">invite_bid = #{inviteBid},</if>
            <if test="winBid != null">win_bid = #{winBid},</if>
            <if test="inviteCount != null">invite_count = #{inviteCount},</if>
            <if test="winCount != null">win_count = #{winCount},</if>
            <if test="inviteSum != null">invite_sum = #{inviteSum},</if>
            <if test="winSum != null">win_sum = #{winSum},</if>
            <if test="storeNumber != null">store_number = #{storeNumber},</if>
            <if test="createTime != null">create_time = #{createTime},</if>
            <if test="updateTime != null">update_time = #{updateTime},</if>
        </trim>
        where company_id = #{companyId}
    </update>

    <delete id="deleteSCompanyByCompanyId" parameterType="Long">
        delete from s_company where company_id = #{companyId}
    </delete>

    <delete id="deleteSCompanyByCompanyIds" parameterType="String">
        delete from s_company where company_id in 
        <foreach item="companyId" collection="array" open="(" separator="," close=")">
            #{companyId}
        </foreach>
    </delete>

</mapper>