package com.hai.dao ;
import com.hai.entity.HighMerchantTripartitePlatform ;
import com.hai.entity.HighMerchantTripartitePlatformExample.Criteria ;
import com.hai.entity.HighMerchantTripartitePlatformExample.Criterion ;
import com.hai.entity.HighMerchantTripartitePlatformExample ;
import java.util.List ;
import java.util.Map ;
import org.apache.ibatis.jdbc.SQL ;
public class HighMerchantTripartitePlatformSqlProvider {
public String countByExample ( HighMerchantTripartitePlatformExample example ) {
SQL sql = new SQL ( ) ;
sql . SELECT ( "count(*)" ) . FROM ( "high_merchant_tripartite_platform" ) ;
applyWhere ( sql , example , false ) ;
return sql . toString ( ) ;
}
public String deleteByExample ( HighMerchantTripartitePlatformExample example ) {
SQL sql = new SQL ( ) ;
sql . DELETE_FROM ( "high_merchant_tripartite_platform" ) ;
applyWhere ( sql , example , false ) ;
return sql . toString ( ) ;
}
public String insertSelective ( HighMerchantTripartitePlatform record ) {
SQL sql = new SQL ( ) ;
sql . INSERT_INTO ( "high_merchant_tripartite_platform" ) ;
if ( record . getMerId ( ) ! = null ) {
sql . VALUES ( "mer_id" , "#{merId,jdbcType=BIGINT}" ) ;
}
if ( record . getPlatformType ( ) ! = null ) {
sql . VALUES ( "platform_type" , "#{platformType,jdbcType=INTEGER}" ) ;
}
if ( record . getPlatformMerName ( ) ! = null ) {
sql . VALUES ( "platform_mer_name" , "#{platformMerName,jdbcType=VARCHAR}" ) ;
}
if ( record . getPlatformMerNumber ( ) ! = null ) {
sql . VALUES ( "platform_mer_number" , "#{platformMerNumber,jdbcType=VARCHAR}" ) ;
}
if ( record . getPlatformMerKey ( ) ! = null ) {
sql . VALUES ( "platform_mer_key" , "#{platformMerKey,jdbcType=VARCHAR}" ) ;
}
if ( record . getProfitSharingStatus ( ) ! = null ) {
sql . VALUES ( "profit_sharing_status" , "#{profitSharingStatus,jdbcType=BIT}" ) ;
}
if ( record . getProfitSharingRatio ( ) ! = null ) {
sql . VALUES ( "profit_sharing_ratio" , "#{profitSharingRatio,jdbcType=DECIMAL}" ) ;
}
if ( record . getProfitSharingReceiversNumber ( ) ! = null ) {
sql . VALUES ( "profit_sharing_receivers_number" , "#{profitSharingReceiversNumber,jdbcType=VARCHAR}" ) ;
}
if ( record . getProfitSharingReceiversName ( ) ! = null ) {
sql . VALUES ( "profit_sharing_receivers_name" , "#{profitSharingReceiversName,jdbcType=VARCHAR}" ) ;
}
if ( record . getStatus ( ) ! = null ) {
sql . VALUES ( "`status`" , "#{status,jdbcType=INTEGER}" ) ;
}
if ( record . getCreateTime ( ) ! = null ) {
sql . VALUES ( "create_time" , "#{createTime,jdbcType=TIMESTAMP}" ) ;
}
if ( record . getUpdateTime ( ) ! = null ) {
sql . VALUES ( "update_time" , "#{updateTime,jdbcType=TIMESTAMP}" ) ;
}
if ( record . getExt1 ( ) ! = null ) {
sql . VALUES ( "ext_1" , "#{ext1,jdbcType=VARCHAR}" ) ;
}
if ( record . getExt2 ( ) ! = null ) {
sql . VALUES ( "ext_2" , "#{ext2,jdbcType=VARCHAR}" ) ;
}
if ( record . getExt3 ( ) ! = null ) {
sql . VALUES ( "ext_3" , "#{ext3,jdbcType=VARCHAR}" ) ;
}
return sql . toString ( ) ;
}
public String selectByExample ( HighMerchantTripartitePlatformExample example ) {
SQL sql = new SQL ( ) ;
if ( example ! = null & & example . isDistinct ( ) ) {
sql . SELECT_DISTINCT ( "id" ) ;
} else {
sql . SELECT ( "id" ) ;
}
sql . SELECT ( "mer_id" ) ;
sql . SELECT ( "platform_type" ) ;
sql . SELECT ( "platform_mer_name" ) ;
sql . SELECT ( "platform_mer_number" ) ;
sql . SELECT ( "platform_mer_key" ) ;
sql . SELECT ( "profit_sharing_status" ) ;
sql . SELECT ( "profit_sharing_ratio" ) ;
sql . SELECT ( "profit_sharing_receivers_number" ) ;
sql . SELECT ( "profit_sharing_receivers_name" ) ;
sql . SELECT ( "`status`" ) ;
sql . SELECT ( "create_time" ) ;
sql . SELECT ( "update_time" ) ;
sql . SELECT ( "ext_1" ) ;
sql . SELECT ( "ext_2" ) ;
sql . SELECT ( "ext_3" ) ;
sql . FROM ( "high_merchant_tripartite_platform" ) ;
applyWhere ( sql , example , false ) ;
if ( example ! = null & & example . getOrderByClause ( ) ! = null ) {
sql . ORDER_BY ( example . getOrderByClause ( ) ) ;
}
return sql . toString ( ) ;
}
public String updateByExampleSelective ( Map < String , Object > parameter ) {
HighMerchantTripartitePlatform record = ( HighMerchantTripartitePlatform ) parameter . get ( "record" ) ;
HighMerchantTripartitePlatformExample example = ( HighMerchantTripartitePlatformExample ) parameter . get ( "example" ) ;
SQL sql = new SQL ( ) ;
sql . UPDATE ( "high_merchant_tripartite_platform" ) ;
if ( record . getId ( ) ! = null ) {
sql . SET ( "id = #{record.id,jdbcType=BIGINT}" ) ;
}
if ( record . getMerId ( ) ! = null ) {
sql . SET ( "mer_id = #{record.merId,jdbcType=BIGINT}" ) ;
}
if ( record . getPlatformType ( ) ! = null ) {
sql . SET ( "platform_type = #{record.platformType,jdbcType=INTEGER}" ) ;
}
if ( record . getPlatformMerName ( ) ! = null ) {
sql . SET ( "platform_mer_name = #{record.platformMerName,jdbcType=VARCHAR}" ) ;
}
if ( record . getPlatformMerNumber ( ) ! = null ) {
sql . SET ( "platform_mer_number = #{record.platformMerNumber,jdbcType=VARCHAR}" ) ;
}
if ( record . getPlatformMerKey ( ) ! = null ) {
sql . SET ( "platform_mer_key = #{record.platformMerKey,jdbcType=VARCHAR}" ) ;
}
if ( record . getProfitSharingStatus ( ) ! = null ) {
sql . SET ( "profit_sharing_status = #{record.profitSharingStatus,jdbcType=BIT}" ) ;
}
if ( record . getProfitSharingRatio ( ) ! = null ) {
sql . SET ( "profit_sharing_ratio = #{record.profitSharingRatio,jdbcType=DECIMAL}" ) ;
}
if ( record . getProfitSharingReceiversNumber ( ) ! = null ) {
sql . SET ( "profit_sharing_receivers_number = #{record.profitSharingReceiversNumber,jdbcType=VARCHAR}" ) ;
}
if ( record . getProfitSharingReceiversName ( ) ! = null ) {
sql . SET ( "profit_sharing_receivers_name = #{record.profitSharingReceiversName,jdbcType=VARCHAR}" ) ;
}
if ( record . getStatus ( ) ! = null ) {
sql . SET ( "`status` = #{record.status,jdbcType=INTEGER}" ) ;
}
if ( record . getCreateTime ( ) ! = null ) {
sql . SET ( "create_time = #{record.createTime,jdbcType=TIMESTAMP}" ) ;
}
if ( record . getUpdateTime ( ) ! = null ) {
sql . SET ( "update_time = #{record.updateTime,jdbcType=TIMESTAMP}" ) ;
}
if ( record . getExt1 ( ) ! = null ) {
sql . SET ( "ext_1 = #{record.ext1,jdbcType=VARCHAR}" ) ;
}
if ( record . getExt2 ( ) ! = null ) {
sql . SET ( "ext_2 = #{record.ext2,jdbcType=VARCHAR}" ) ;
}
if ( record . getExt3 ( ) ! = null ) {
sql . SET ( "ext_3 = #{record.ext3,jdbcType=VARCHAR}" ) ;
}
applyWhere ( sql , example , true ) ;
return sql . toString ( ) ;
}
public String updateByExample ( Map < String , Object > parameter ) {
SQL sql = new SQL ( ) ;
sql . UPDATE ( "high_merchant_tripartite_platform" ) ;
sql . SET ( "id = #{record.id,jdbcType=BIGINT}" ) ;
sql . SET ( "mer_id = #{record.merId,jdbcType=BIGINT}" ) ;
sql . SET ( "platform_type = #{record.platformType,jdbcType=INTEGER}" ) ;
sql . SET ( "platform_mer_name = #{record.platformMerName,jdbcType=VARCHAR}" ) ;
sql . SET ( "platform_mer_number = #{record.platformMerNumber,jdbcType=VARCHAR}" ) ;
sql . SET ( "platform_mer_key = #{record.platformMerKey,jdbcType=VARCHAR}" ) ;
sql . SET ( "profit_sharing_status = #{record.profitSharingStatus,jdbcType=BIT}" ) ;
sql . SET ( "profit_sharing_ratio = #{record.profitSharingRatio,jdbcType=DECIMAL}" ) ;
sql . SET ( "profit_sharing_receivers_number = #{record.profitSharingReceiversNumber,jdbcType=VARCHAR}" ) ;
sql . SET ( "profit_sharing_receivers_name = #{record.profitSharingReceiversName,jdbcType=VARCHAR}" ) ;
sql . SET ( "`status` = #{record.status,jdbcType=INTEGER}" ) ;
sql . SET ( "create_time = #{record.createTime,jdbcType=TIMESTAMP}" ) ;
sql . SET ( "update_time = #{record.updateTime,jdbcType=TIMESTAMP}" ) ;
sql . SET ( "ext_1 = #{record.ext1,jdbcType=VARCHAR}" ) ;
sql . SET ( "ext_2 = #{record.ext2,jdbcType=VARCHAR}" ) ;
sql . SET ( "ext_3 = #{record.ext3,jdbcType=VARCHAR}" ) ;
HighMerchantTripartitePlatformExample example = ( HighMerchantTripartitePlatformExample ) parameter . get ( "example" ) ;
applyWhere ( sql , example , true ) ;
return sql . toString ( ) ;
}
public String updateByPrimaryKeySelective ( HighMerchantTripartitePlatform record ) {
SQL sql = new SQL ( ) ;
sql . UPDATE ( "high_merchant_tripartite_platform" ) ;
if ( record . getMerId ( ) ! = null ) {
sql . SET ( "mer_id = #{merId,jdbcType=BIGINT}" ) ;
}
if ( record . getPlatformType ( ) ! = null ) {
sql . SET ( "platform_type = #{platformType,jdbcType=INTEGER}" ) ;
}
if ( record . getPlatformMerName ( ) ! = null ) {
sql . SET ( "platform_mer_name = #{platformMerName,jdbcType=VARCHAR}" ) ;
}
if ( record . getPlatformMerNumber ( ) ! = null ) {
sql . SET ( "platform_mer_number = #{platformMerNumber,jdbcType=VARCHAR}" ) ;
}
if ( record . getPlatformMerKey ( ) ! = null ) {
sql . SET ( "platform_mer_key = #{platformMerKey,jdbcType=VARCHAR}" ) ;
}
if ( record . getProfitSharingStatus ( ) ! = null ) {
sql . SET ( "profit_sharing_status = #{profitSharingStatus,jdbcType=BIT}" ) ;
}
if ( record . getProfitSharingRatio ( ) ! = null ) {
sql . SET ( "profit_sharing_ratio = #{profitSharingRatio,jdbcType=DECIMAL}" ) ;
}
if ( record . getProfitSharingReceiversNumber ( ) ! = null ) {
sql . SET ( "profit_sharing_receivers_number = #{profitSharingReceiversNumber,jdbcType=VARCHAR}" ) ;
}
if ( record . getProfitSharingReceiversName ( ) ! = null ) {
sql . SET ( "profit_sharing_receivers_name = #{profitSharingReceiversName,jdbcType=VARCHAR}" ) ;
}
if ( record . getStatus ( ) ! = null ) {
sql . SET ( "`status` = #{status,jdbcType=INTEGER}" ) ;
}
if ( record . getCreateTime ( ) ! = null ) {
sql . SET ( "create_time = #{createTime,jdbcType=TIMESTAMP}" ) ;
}
if ( record . getUpdateTime ( ) ! = null ) {
sql . SET ( "update_time = #{updateTime,jdbcType=TIMESTAMP}" ) ;
}
if ( record . getExt1 ( ) ! = null ) {
sql . SET ( "ext_1 = #{ext1,jdbcType=VARCHAR}" ) ;
}
if ( record . getExt2 ( ) ! = null ) {
sql . SET ( "ext_2 = #{ext2,jdbcType=VARCHAR}" ) ;
}
if ( record . getExt3 ( ) ! = null ) {
sql . SET ( "ext_3 = #{ext3,jdbcType=VARCHAR}" ) ;
}
sql . WHERE ( "id = #{id,jdbcType=BIGINT}" ) ;
return sql . toString ( ) ;
}
protected void applyWhere ( SQL sql , HighMerchantTripartitePlatformExample example , boolean includeExamplePhrase ) {
if ( example = = null ) {
return ;
}
String parmPhrase1 ;
String parmPhrase1_th ;
String parmPhrase2 ;
String parmPhrase2_th ;
String parmPhrase3 ;
String parmPhrase3_th ;
if ( includeExamplePhrase ) {
parmPhrase1 = "%s #{example.oredCriteria[%d].allCriteria[%d].value}" ;
parmPhrase1_th = "%s #{example.oredCriteria[%d].allCriteria[%d].value,typeHandler=%s}" ;
parmPhrase2 = "%s #{example.oredCriteria[%d].allCriteria[%d].value} and #{example.oredCriteria[%d].criteria[%d].secondValue}" ;
parmPhrase2_th = "%s #{example.oredCriteria[%d].allCriteria[%d].value,typeHandler=%s} and #{example.oredCriteria[%d].criteria[%d].secondValue,typeHandler=%s}" ;
parmPhrase3 = "#{example.oredCriteria[%d].allCriteria[%d].value[%d]}" ;
parmPhrase3_th = "#{example.oredCriteria[%d].allCriteria[%d].value[%d],typeHandler=%s}" ;
} else {
parmPhrase1 = "%s #{oredCriteria[%d].allCriteria[%d].value}" ;
parmPhrase1_th = "%s #{oredCriteria[%d].allCriteria[%d].value,typeHandler=%s}" ;
parmPhrase2 = "%s #{oredCriteria[%d].allCriteria[%d].value} and #{oredCriteria[%d].criteria[%d].secondValue}" ;
parmPhrase2_th = "%s #{oredCriteria[%d].allCriteria[%d].value,typeHandler=%s} and #{oredCriteria[%d].criteria[%d].secondValue,typeHandler=%s}" ;
parmPhrase3 = "#{oredCriteria[%d].allCriteria[%d].value[%d]}" ;
parmPhrase3_th = "#{oredCriteria[%d].allCriteria[%d].value[%d],typeHandler=%s}" ;
}
StringBuilder sb = new StringBuilder ( ) ;
List < Criteria > oredCriteria = example . getOredCriteria ( ) ;
boolean firstCriteria = true ;
for ( int i = 0 ; i < oredCriteria . size ( ) ; i + + ) {
Criteria criteria = oredCriteria . get ( i ) ;
if ( criteria . isValid ( ) ) {
if ( firstCriteria ) {
firstCriteria = false ;
} else {
sb . append ( " or " ) ;
}
sb . append ( '(' ) ;
List < Criterion > criterions = criteria . getAllCriteria ( ) ;
boolean firstCriterion = true ;
for ( int j = 0 ; j < criterions . size ( ) ; j + + ) {
Criterion criterion = criterions . get ( j ) ;
if ( firstCriterion ) {
firstCriterion = false ;
} else {
sb . append ( " and " ) ;
}
if ( criterion . isNoValue ( ) ) {
sb . append ( criterion . getCondition ( ) ) ;
} else if ( criterion . isSingleValue ( ) ) {
if ( criterion . getTypeHandler ( ) = = null ) {
sb . append ( String . format ( parmPhrase1 , criterion . getCondition ( ) , i , j ) ) ;
} else {
sb . append ( String . format ( parmPhrase1_th , criterion . getCondition ( ) , i , j , criterion . getTypeHandler ( ) ) ) ;
}
} else if ( criterion . isBetweenValue ( ) ) {
if ( criterion . getTypeHandler ( ) = = null ) {
sb . append ( String . format ( parmPhrase2 , criterion . getCondition ( ) , i , j , i , j ) ) ;
} else {
sb . append ( String . format ( parmPhrase2_th , criterion . getCondition ( ) , i , j , criterion . getTypeHandler ( ) , i , j , criterion . getTypeHandler ( ) ) ) ;
}
} else if ( criterion . isListValue ( ) ) {
sb . append ( criterion . getCondition ( ) ) ;
sb . append ( " (" ) ;
List < ? > listItems = ( List < ? > ) criterion . getValue ( ) ;
boolean comma = false ;
for ( int k = 0 ; k < listItems . size ( ) ; k + + ) {
if ( comma ) {
sb . append ( ", " ) ;
} else {
comma = true ;
}
if ( criterion . getTypeHandler ( ) = = null ) {
sb . append ( String . format ( parmPhrase3 , i , j , k ) ) ;
} else {
sb . append ( String . format ( parmPhrase3_th , i , j , k , criterion . getTypeHandler ( ) ) ) ;
}
}
sb . append ( ')' ) ;
}
}
sb . append ( ')' ) ;
}
}
if ( sb . length ( ) > 0 ) {
sql . WHERE ( sb . toString ( ) ) ;
}
}
}