| | |
| | | |
| | | <select id="find" resultType="java.util.HashMap" parameterType="kr.wisestone.owl.web.condition.CompanyFieldCondition"> |
| | | SELECT |
| | | c.id as id, |
| | | c.name as name, |
| | | c.email as email, |
| | | c.tel as tel, |
| | | c.desc as desc |
| | | cf.id as id, |
| | | cf.name as name, |
| | | cf.manager as manager, |
| | | cf.tel as tel, |
| | | cf.email as email, |
| | | cf.url as url, |
| | | cf.ip_start as ipStart, |
| | | cf.ip_end as ipEnd, |
| | | concat(cf.ip_start, "~", cf.ip_end) AS ipRange, |
| | | cf.memo as memo, |
| | | cf.isp_id as ispId, |
| | | cf.hosting_id as hostingId, |
| | | cf.company_type_id as companyTypeId, |
| | | cf.parent_sector_id as parentSectorId, |
| | | cf.child_sector_id as childSectorId, |
| | | cf.region_id as regionId, |
| | | cf.status_id as statusId, |
| | | cf.status_name as statusName, |
| | | sf.name AS ispName, |
| | | hf.name AS hostingName |
| | | FROM |
| | | company c |
| | | company_field cf |
| | | LEFT OUTER JOIN isp_field sf ON cf.isp_id = sf.id |
| | | LEFT OUTER JOIN hosting_field hf ON cf.hosting_id = hf.id |
| | | WHERE 1=1 |
| | | <if test="name != '' and name != null"> |
| | | AND c.name like CONCAT('%',#{name},'%') |
| | | AND cf.name like CONCAT('%',#{name},'%') |
| | | </if> |
| | | <if test="id != '' and id != null"> |
| | | AND c.id like CONCAT('%',#{id},'%') |
| | | AND cf.id like CONCAT('%',#{id},'%') |
| | | </if> |
| | | <choose> |
| | | <when test="url != null and url.size != 0"> |
| | | AND |
| | | <foreach collection="url" item="item" index="index" separator="or" open="(" close=")"> |
| | | cf.url LIKE CONCAT('%',#{item},'%') |
| | | </foreach> |
| | | </when> |
| | | </choose> |
| | | <if test="ip != '' and ip != null"> |
| | | AND INET_ATON(cf.ip_start) <![CDATA[ <= ]]> #{ip} AND INET_ATON(cf.ip_end) >= #{ip} |
| | | </if> |
| | | ORDER BY cf.register_date DESC |
| | | <if test="pageSize != '' and pageSize != null"> |
| | | limit #{pageSize} offset #{page}; |
| | | </if> |
| | |
| | | |
| | | <select id="count" resultType="java.lang.Long" parameterType="kr.wisestone.owl.web.condition.CompanyFieldCondition"> |
| | | SELECT |
| | | count(c.id) |
| | | count(DISTINCT cf.id) |
| | | FROM |
| | | company c |
| | | company_field cf |
| | | WHERE 1=1 |
| | | <if test="name != '' and name != null"> |
| | | AND c.name like CONCAT('%',#{name},'%') |
| | | AND cf.name like CONCAT('%',#{name},'%') |
| | | </if> |
| | | <if test="id != '' and id != null"> |
| | | AND c.id like CONCAT('%',#{id},'%') |
| | | AND cf.id like CONCAT('%',#{id},'%') |
| | | </if> |
| | | </select> |
| | | |
| | | <select id="findByUrls" resultType="kr.wisestone.owl.domain.CompanyField" parameterType="kr.wisestone.owl.web.condition.CompanyFieldCondition"> |
| | | SELECT |
| | | cf.id as id, |
| | | cf.name as name, |
| | | cf.email as email, |
| | | cf.url as url |
| | | FROM |
| | | company_field cf |
| | | WHERE 1=1 |
| | | <choose> |
| | | <when test="url != null and url.size != 0"> |
| | | AND |
| | | <foreach collection="url" item="item" index="index" separator="or" open="(" close=")"> |
| | | cf.url LIKE CONCAT('%',#{item},'%') |
| | | </foreach> |
| | | </when> |
| | | </choose> |
| | | </select> |
| | | |
| | | <select id="findByUrlsAndIdNot" resultType="kr.wisestone.owl.domain.CompanyField" parameterType="kr.wisestone.owl.web.condition.CompanyFieldCondition"> |
| | | SELECT |
| | | cf.id as id, |
| | | cf.name as name, |
| | | cf.email as email, |
| | | cf.url as url |
| | | FROM |
| | | company_field cf |
| | | WHERE 1=1 |
| | | <choose> |
| | | <when test="url != null and url.size != 0"> |
| | | AND |
| | | <foreach collection="url" item="item" index="index" separator="or" open="(" close=")"> |
| | | cf.url LIKE CONCAT('%',#{item},'%') |
| | | </foreach> |
| | | </when> |
| | | </choose> |
| | | <if test="id != '' and id != null"> |
| | | AND cf.id not like CONCAT('%',#{id},'%') |
| | | </if> |
| | | </select> |
| | | </mapper> |