Authored by wangnan9279

cs_search_resource_fuzzy

package com.yoho.search.dal;
import com.yoho.search.dal.model.CsSearchResourceFuzzy;
import org.apache.ibatis.annotations.Param;
import java.util.List;
public interface CsSearchResourceFuzzyMapper {
int deleteByPrimaryKey(Integer id);
int insert(CsSearchResourceFuzzy record);
int insertSelective(CsSearchResourceFuzzy record);
CsSearchResourceFuzzy selectByPrimaryKey(Integer id);
int updateByPrimaryKeySelective(CsSearchResourceFuzzy record);
int updateByPrimaryKey(CsSearchResourceFuzzy record);
int selectCount();
List<CsSearchResourceFuzzy> selectPageLists(@Param(value = "start") Integer start, @Param(value = "limit") Integer limit);
}
\ No newline at end of file
... ...
<?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.yoho.search.dal.CsSearchResourceFuzzyMapper">
<resultMap id="BaseResultMap" type="com.yoho.search.dal.model.CsSearchResourceFuzzy">
<id column="id" property="id" jdbcType="INTEGER"/>
<result column="keyword" property="keyword" jdbcType="VARCHAR"/>
<result column="description" property="description" jdbcType="VARCHAR"/>
<result column="image" property="image" jdbcType="VARCHAR"/>
<result column="link_url" property="linkUrl" jdbcType="VARCHAR"/>
<result column="order_by" property="orderBy" jdbcType="INTEGER"/>
<result column="begin_time" property="beginTime" jdbcType="INTEGER"/>
<result column="end_time" property="endTime" jdbcType="INTEGER"/>
<result column="update_time" property="updateTime" jdbcType="INTEGER"/>
</resultMap>
<sql id="Base_Column_List">
id, keyword, description, image, link_url, order_by, begin_time, end_time, update_time
</sql>
<select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.Integer">
select
<include refid="Base_Column_List"/>
from cs_search_resource_fuzzy
where id = #{id,jdbcType=INTEGER}
</select>
<delete id="deleteByPrimaryKey" parameterType="java.lang.Integer">
delete from cs_search_resource_fuzzy
where id = #{id,jdbcType=INTEGER}
</delete>
<insert id="insert" parameterType="com.yoho.search.dal.model.CsSearchResourceFuzzy">
insert into cs_search_resource_fuzzy (id, keyword, description,
image, link_url, order_by,
begin_time, end_time, update_time
)
values (#{id,jdbcType=INTEGER}, #{keyword,jdbcType=VARCHAR}, #{description,jdbcType=VARCHAR},
#{image,jdbcType=VARCHAR}, #{linkUrl,jdbcType=VARCHAR}, #{orderBy,jdbcType=INTEGER},
#{beginTime,jdbcType=INTEGER}, #{endTime,jdbcType=INTEGER}, #{updateTime,jdbcType=INTEGER}
)
</insert>
<insert id="insertSelective" parameterType="com.yoho.search.dal.model.CsSearchResourceFuzzy">
insert into cs_search_resource_fuzzy
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="id != null">
id,
</if>
<if test="keyword != null">
keyword,
</if>
<if test="description != null">
description,
</if>
<if test="image != null">
image,
</if>
<if test="linkUrl != null">
link_url,
</if>
<if test="orderBy != null">
order_by,
</if>
<if test="beginTime != null">
begin_time,
</if>
<if test="endTime != null">
end_time,
</if>
<if test="updateTime != null">
update_time,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="id != null">
#{id,jdbcType=INTEGER},
</if>
<if test="keyword != null">
#{keyword,jdbcType=VARCHAR},
</if>
<if test="description != null">
#{description,jdbcType=VARCHAR},
</if>
<if test="image != null">
#{image,jdbcType=VARCHAR},
</if>
<if test="linkUrl != null">
#{linkUrl,jdbcType=VARCHAR},
</if>
<if test="orderBy != null">
#{orderBy,jdbcType=INTEGER},
</if>
<if test="beginTime != null">
#{beginTime,jdbcType=INTEGER},
</if>
<if test="endTime != null">
#{endTime,jdbcType=INTEGER},
</if>
<if test="updateTime != null">
#{updateTime,jdbcType=INTEGER},
</if>
</trim>
</insert>
<update id="updateByPrimaryKeySelective" parameterType="com.yoho.search.dal.model.CsSearchResourceFuzzy">
update cs_search_resource_fuzzy
<set>
<if test="keyword != null">
keyword = #{keyword,jdbcType=VARCHAR},
</if>
<if test="description != null">
description = #{description,jdbcType=VARCHAR},
</if>
<if test="image != null">
image = #{image,jdbcType=VARCHAR},
</if>
<if test="linkUrl != null">
link_url = #{linkUrl,jdbcType=VARCHAR},
</if>
<if test="orderBy != null">
order_by = #{orderBy,jdbcType=INTEGER},
</if>
<if test="beginTime != null">
begin_time = #{beginTime,jdbcType=INTEGER},
</if>
<if test="endTime != null">
end_time = #{endTime,jdbcType=INTEGER},
</if>
<if test="updateTime != null">
update_time = #{updateTime,jdbcType=INTEGER},
</if>
</set>
where id = #{id,jdbcType=INTEGER}
</update>
<update id="updateByPrimaryKey" parameterType="com.yoho.search.dal.model.CsSearchResourceFuzzy">
update cs_search_resource_fuzzy
set keyword = #{keyword,jdbcType=VARCHAR},
description = #{description,jdbcType=VARCHAR},
image = #{image,jdbcType=VARCHAR},
link_url = #{linkUrl,jdbcType=VARCHAR},
order_by = #{orderBy,jdbcType=INTEGER},
begin_time = #{beginTime,jdbcType=INTEGER},
end_time = #{endTime,jdbcType=INTEGER},
update_time = #{updateTime,jdbcType=INTEGER}
where id = #{id,jdbcType=INTEGER}
</update>
<select id="selectCount" resultType="int">
select count(0) from cs_search_resource_fuzzy
</select>
<select id="selectPageLists" resultMap="BaseResultMap" timeout="20000">
select
<include refid="Base_Column_List"/>
from cs_search_resource_fuzzy limit #{start}, #{limit}
</select>
</mapper>
\ No newline at end of file
... ...
package com.yoho.search.consumer.index.fullbuild;
import com.yoho.search.dal.CsSearchResourceFuzzyMapper;
import com.yoho.search.dal.model.CsSearchResourceFuzzy;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.List;
/**
* @author wangnan
* @version 2019/10/10
*/
@Component
public class CsSearchResourceFuzzyIndexBuilder extends IIndexBuilder {
@Autowired
private CsSearchResourceFuzzyMapper csSearchResourceFuzzyMapper;
@Override
public int getTotalCount() throws Exception {
return csSearchResourceFuzzyMapper.selectCount();
}
@Override
public List<?> getPageLists(int offset, int limit) throws Exception {
return csSearchResourceFuzzyMapper.selectPageLists(offset, limit);
}
@Override
public String getId(Object object) {
return ((CsSearchResourceFuzzy) object).getId().toString();
}
}
... ...
package com.yoho.search.consumer.index.increment.yhb_operations;
import com.alibaba.fastjson.JSONObject;
import com.yoho.search.base.utils.ConvertUtils;
import com.yoho.search.base.utils.ISearchConstants;
import com.yoho.search.consumer.common.IYohoIndexService;
import com.yoho.search.consumer.index.increment.AbstractMqListener;
import com.yoho.search.consumer.service.daoService.CsSearchResourceFuzzyService;
import com.yoho.search.core.message.beans.SearchMqConsumerListerner;
import com.yoho.search.dal.model.CsSearchResourceFuzzy;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
/**
* @author wangnan
* @version 2019/10/10
*/
@Component
@SearchMqConsumerListerner(dbName = "yhb_operations", tableName = "cs_search_resource_fuzzy")
public class CsSearchResourceFuzzyMqListener extends AbstractMqListener {
@Autowired
private IYohoIndexService indexService;
@Autowired
private CsSearchResourceFuzzyService csSearchResourceFuzzyService;
@Override
public String getIndexName() {
return ISearchConstants.INDEX_NAME_CS_SEARCH_RESOURCE_FUZZY;
}
@Override
protected void deleteData(String id) throws Exception {
csSearchResourceFuzzyService.delete(Integer.valueOf(id));
indexService.deleteIndexData(this.getIndexName(), id);
}
@Override
protected void updateData(JSONObject data) throws Exception {
CsSearchResourceFuzzy csSearchResourceFuzzy = ConvertUtils.toJavaObject(CsSearchResourceFuzzy.class, data);
if (csSearchResourceFuzzy == null || csSearchResourceFuzzy.getId() == null) {
return;
}
csSearchResourceFuzzyService.saveOrUpdate(csSearchResourceFuzzy);
String idValue = csSearchResourceFuzzy.getId().toString();
indexService.updateIndexData(this.getIndexName(), idValue, csSearchResourceFuzzy);
}
}
... ...
... ... @@ -100,6 +100,7 @@ public class IndexRebuildJob implements ApplicationEventPublisherAware {
this.rebuildIndexWithlog(ISearchConstants.INDEX_NAME_CS_SEARCH_KEYWORD_CONFIG);
this.rebuildIndexWithlog(ISearchConstants.INDEX_NAME_CS_SEARCH_FIELD_BOOST_CONFIG);
this.rebuildIndexWithlog(ISearchConstants.INDEX_NAME_PRODUCT_COVER_ACTIVITY);
this.rebuildIndexWithlog(ISearchConstants.INDEX_NAME_CS_SEARCH_RESOURCE_FUZZY);
//重建pi
this.rebuildIndexWithlog(ISearchConstants.INDEX_NAME_PRODUCT_INDEX);
logger.info("executeYohoIndex end----[end={}][cost={}]", System.currentTimeMillis(), (System.currentTimeMillis() - begin));
... ...
{
"cssearchresourcefuzzy": {
"_all": {
"enabled": false
},
"_source": {
"enabled": true
},
"properties": {
"id": {
"type": "integer"
},
"keyword": {
"type": "keyword"
},
"description": {
"type": "keyword",
"index": "no"
},
"image": {
"type": "keyword"
},
"linkUrl": {
"type": "keyword"
},
"orderBy": {
"type": "keyword"
},
"beginTime": {
"type": "integer"
},
"endTime": {
"type": "integer"
},
"updateTime": {
"type": "integer"
}
}
}
}
\ No newline at end of file
... ...
package com.yoho.search.consumer.service.daoService;
import com.yoho.search.dal.CsSearchResourceFuzzyMapper;
import com.yoho.search.dal.model.CsSearchResourceFuzzy;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
/**
* @author wangnan
* @version 2019/10/10
*/
@Component
public class CsSearchResourceFuzzyService {
@Autowired
private CsSearchResourceFuzzyMapper csSearchResourceFuzzyMapper;
public CsSearchResourceFuzzy getById(Integer id) {
return csSearchResourceFuzzyMapper.selectByPrimaryKey(id);
}
public int insert(CsSearchResourceFuzzy csSearchResourceFuzzy) {
return csSearchResourceFuzzyMapper.insert(csSearchResourceFuzzy);
}
public int update(CsSearchResourceFuzzy csSearchResourceFuzzy) {
return csSearchResourceFuzzyMapper.updateByPrimaryKeySelective(csSearchResourceFuzzy);
}
public int saveOrUpdate(CsSearchResourceFuzzy csSearchResourceFuzzy) {
if (csSearchResourceFuzzy.getId() == null || csSearchResourceFuzzyMapper.selectByPrimaryKey(csSearchResourceFuzzy.getId()) == null) {
return csSearchResourceFuzzyMapper.insert(csSearchResourceFuzzy);
} else {
return csSearchResourceFuzzyMapper.updateByPrimaryKeySelective(csSearchResourceFuzzy);
}
}
public int delete(Integer id) {
return csSearchResourceFuzzyMapper.deleteByPrimaryKey(id);
}
}
... ...
... ... @@ -808,5 +808,19 @@
<rebuildPageSize>2500</rebuildPageSize>
</index>
<index>
<name>cssearchresourcefuzzy</name>
<properties>
<property key="number_of_shards" value="1"/>
<property key="number_of_replicas" value="auto"/>
<property key="refresh_interval" value="10s"/>
<property key="translog.flush_threshold_size" value="100mb"/>
</properties>
<builderClass>com.yoho.search.consumer.index.fullbuild.CsSearchResourceFuzzyIndexBuilder</builderClass>
<mappingFile>esmapping/cssearchresourcefuzzy.json</mappingFile>
<analysisFile>analysis/default.yml</analysisFile>
<rebuildPageSize>2500</rebuildPageSize>
</index>
</client>
</IndexConfigs>
\ No newline at end of file
... ...
... ... @@ -812,5 +812,20 @@
<rebuildPageSize>${search.index.batch.limit}</rebuildPageSize>
</index>
<index>
<name>cssearchresourcefuzzy</name>
<properties>
<property key="number_of_shards" value="1"/>
<property key="number_of_replicas" value="auto"/>
<property key="refresh_interval" value="${search.index.refresh_interval}"/>
<property key="translog.flush_threshold_size" value="${search.index.translog.flush_threshold_size}"/>
</properties>
<builderClass>com.yoho.search.consumer.index.fullbuild.CsSearchResourceFuzzyIndexBuilder</builderClass>
<mappingFile>esmapping/cssearchresourcefuzzy.json</mappingFile>
<analysisFile>analysis/default.yml</analysisFile>
<rebuildPageSize>${search.index.batch.limit}</rebuildPageSize>
</index>
</client>
</IndexConfigs>
... ...