Commit 8c1f9b75 authored by lixiaofang's avatar lixiaofang

add

parent 165a5238
......@@ -24,5 +24,29 @@
<option name="ITERATION_ELEMENTS_WRAPPING" value="chop_down_if_not_single" />
</formatting-settings>
</DBN-SQL>
<DBN-PSQL>
<case-options enabled="false">
<option name="KEYWORD_CASE" value="lower" />
<option name="FUNCTION_CASE" value="lower" />
<option name="PARAMETER_CASE" value="lower" />
<option name="DATATYPE_CASE" value="lower" />
<option name="OBJECT_CASE" value="preserve" />
</case-options>
<formatting-settings enabled="false" />
</DBN-PSQL>
<DBN-SQL>
<case-options enabled="false">
<option name="KEYWORD_CASE" value="lower" />
<option name="FUNCTION_CASE" value="lower" />
<option name="PARAMETER_CASE" value="lower" />
<option name="DATATYPE_CASE" value="lower" />
<option name="OBJECT_CASE" value="preserve" />
</case-options>
<formatting-settings enabled="false">
<option name="STATEMENT_SPACING" value="one_line" />
<option name="CLAUSE_CHOP_DOWN" value="chop_down_if_statement_long" />
<option name="ITERATION_ELEMENTS_WRAPPING" value="chop_down_if_not_single" />
</formatting-settings>
</DBN-SQL>
</code_scheme>
</component>
\ No newline at end of file
......@@ -15,7 +15,7 @@ from libs.es import ESPerform
from libs.cache import redis_client
from trans2es.models.face_user_contrast_similar import FaceUserContrastSimilar, UserSimilarScore
from linucb.utils.register_user_tag import RegisterUserTag
from trans2es.models.tag import RegisterShowTag, Tag
from trans2es.models.tag import Tag, SettingsConfig
@shared_task
......@@ -113,10 +113,16 @@ def sync_user_similar_score():
def get_tag_count():
try:
# 获取搜索推荐热词
results_registr_tag = list(set(RegisterShowTag.objects.filter(is_deleted=False, is_online=1).values_list("tag_id", flat=True)))
results_registr_tag = list(set(SettingsConfig.objects.filter(is_deleted=False).values_list("val", flat=True)))
tag_val_list =set()
for item in results_registr_tag:
for word in item.split():
tag_val_list.add(word)
# 获取符合条件的核心词
results_tag = list(set(Tag.objects.filter(is_online=True, is_deleted=False, collection=1).values_list("id", flat=True)))
results_tag = list(
set(Tag.objects.filter(is_online=True, is_deleted=False, collection=1).values_list("id", flat=True)))
redis_registr_tag = "physical:search_hotword:results_registr_tag"
redis_tag = "physical:search_hotword:results_tag"
......
......@@ -12,7 +12,7 @@ from search.utils.group import GroupUtils
from search.utils.common import GroupSortTypes
from libs.es import ESPerform
from trans2es.models.pictorial import PictorialTopics
from trans2es.models.tag import RegisterShowTag, Tag
from trans2es.models.tag import SettingsConfig, Tag
from libs.cache import redis_client
......@@ -36,20 +36,33 @@ def search_hotword(device_id=-1):
results_registr_tag = json.loads(redis_client.get("physical:search_hotword:results_registr_tag"))
results_tag = json.loads(redis_client.get("physical:search_hotword:results_tag"))
# 先获取搜索推荐热词
for num in range(0, len(results_registr_tag) - 1):
tag_id = random.randint(0, len(results_registr_tag) - 1)
results_tag_chose = list(
set(RegisterShowTag.objects.filter(tag_id=results_registr_tag[tag_id], is_online=True).values_list(
"tag_id", flat=True)))
if results_tag_chose:
results_tag_recommend = list(
set(Tag.objects.filter(id=results_tag_chose[0], is_online=True).values_list("name",
flat=True)))
if results_tag_recommend:
all_tag_name_list.add(results_tag_recommend[0])
results_registr_tag = list(set(SettingsConfig.objects.filter(is_deleted=False).values_list("val", flat=True)))
tag_val_list = set()
for item in results_registr_tag:
for word in item.split():
tag_val_list.add(word)
tag_id_list = random.sample(range(0, len(tag_val_list)), 6)
for tag_id in tag_id_list:
tag_val = list(tag_val_list)[tag_id]
all_tag_name_list.add(tag_val)
# if len(all_tag_name_list) == 6 or num == len(tag_val_list):
# break
if len(all_tag_name_list) == 6 or num == results_tag:
break
# for num in range(0, len(results_registr_tag) - 1):
# tag_id = random.randint(0, len(results_registr_tag) - 1)
# results_tag_chose = list(
# set(RegisterShowTag.objects.filter(tag_id=results_registr_tag[tag_id], is_online=True).values_list(
# "tag_id", flat=True)))
# if results_tag_chose:
# results_tag_recommend = list(
# set(Tag.objects.filter(id=results_tag_chose[0], is_online=True).values_list("name",
# flat=True)))
# if results_tag_recommend:
# all_tag_name_list.add(results_tag_recommend[0])
#
# if len(all_tag_name_list) == 6 or num == results_tag:
# break
logging.info("get all_tag_name_list:%s" % all_tag_name_list)
# 获取个性化标签
......@@ -62,22 +75,18 @@ def search_hotword(device_id=-1):
set(Tag.objects.filter(id=item, is_online=True).values_list("name", flat=True)))
if results_tag_recommend:
all_tag_name_list.add(results_tag_recommend[0])
logging.info("get all_tag_name_list:%s" % all_tag_name_list)
if len(all_tag_name_list) == 12:
return {"recommend_tag_name": list(all_tag_name_list)}
# 取不够数则取核心标签
if len(all_tag_name_list) < 12:
for i in range(0, 12):
tag_id = random.randint(1, len(results_tag))
results_tag_hexin = Tag.objects.filter(id=results_tag[tag_id], is_online=True,
collection=1).values_list("name",
flat=True)
for i in range(0, results_tag):
tag_id = random.randint(1, results_tag)
results_tag_hexin = Tag.objects.filter(id=tag_id, is_online=True, collection=1).values_list("name",
flat=True).first()
if results_tag_hexin:
if results_tag_hexin[0] not in all_tag_name_list:
all_tag_name_list.add(results_tag_hexin[0])
logging.info("get all_tag_name_list:%s" % all_tag_name_list)
if results_tag_hexin not in all_tag_name_list:
all_tag_name_list.add(results_tag_hexin)
if len(all_tag_name_list) >= 12:
return {"recommend_tag_name": list(all_tag_name_list)}
......
......@@ -96,13 +96,13 @@ class CommunityTagType(models.Model):
update_time = models.DateTimeField(verbose_name=u'更新时间', default=datetime.datetime.fromtimestamp(0))
class RegisterShowTag(models.Model):
class SettingsConfig(models.Model):
class Meta:
verbose_name = "搜索热词"
db_table = "register_show_tag"
db_table = "settingsconfig"
id = models.IntegerField(primary_key=True, verbose_name=u"主键ID")
is_deleted = models.IntegerField(verbose_name=u"是否删除")
is_online = models.IntegerField(verbose_name=u"是否在线")
tag_id = models.IntegerField(verbose_name="标签ID")
key = models.IntegerField(verbose_name=u"值")
val = models.IntegerField(verbose_name="标签内容")
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment