Commit e62b63fe authored by lixiaofang's avatar lixiaofang

add

parent a9ef95a2
...@@ -255,25 +255,10 @@ class GroupUtils(object): ...@@ -255,25 +255,10 @@ class GroupUtils(object):
} }
q["sort"] = [ q["sort"] = [
{ {
"latest_real_reply_time": { "real_user_activate_time": {
"order": "desc" "order": "desc"
} }
}, },
{
"latest_real_topic_time": {
"order": "desc"
}
},
# {
# "_script": {
# "type": "number",
# "script": {
# "lang": "expression",
# "source": "_score+doc['offline_score']"
# },
# "order": "desc"
# }
# },
{ {
"_score": { "_score": {
"order": "desc" "order": "desc"
......
...@@ -22,8 +22,8 @@ ...@@ -22,8 +22,8 @@
"is_cover":{"type":"boolean"}, "is_cover":{"type":"boolean"},
"topic_vote_number":{"type":"long"}, "topic_vote_number":{"type":"long"},
"latest_real_reply_time":{"type":"date", "format":"date_time_no_millis"}, "latest_real_reply_time":{"type":"date", "format":"date_time_no_millis"},
"latest_real_topic_time":{"type":"date", "format":"date_time_no_millis"} "latest_real_topic_time":{"type":"date", "format":"date_time_no_millis"},
"real_user_activate_time":{"type":"date", "format":"date_time_no_millis"}
} }
} }
......
...@@ -181,7 +181,8 @@ class Pictorial(models.Model): ...@@ -181,7 +181,8 @@ class Pictorial(models.Model):
datetime_list = list() datetime_list = list()
if reply_query_results.count() > 0: if reply_query_results.count() > 0:
for reply in reply_query_results: for reply in reply_query_results:
UserExtra_results = UserExtra.objects.using(settings.SLAVE_DB_NAME).filter(user_id=reply['user_id']).values('is_shadow') UserExtra_results = UserExtra.objects.using(settings.SLAVE_DB_NAME).filter(
user_id=reply['user_id']).values('is_shadow')
if UserExtra_results.count() > 0: if UserExtra_results.count() > 0:
if not UserExtra_results[0]['is_shadow']: if not UserExtra_results[0]['is_shadow']:
datetime_list.append(reply['create_time']) datetime_list.append(reply['create_time'])
...@@ -229,6 +230,51 @@ class Pictorial(models.Model): ...@@ -229,6 +230,51 @@ class Pictorial(models.Model):
except: except:
return datetime.datetime(1980, 1, 1, 0, 0, 0, tzinfo=datetime.timezone(datetime.timedelta(hours=8))) return datetime.datetime(1980, 1, 1, 0, 0, 0, tzinfo=datetime.timezone(datetime.timedelta(hours=8)))
def get_real_user_activate_time(self):
try:
reply_query_results = Reply.objects.using(settings.SLAVE_DB_NAME).filter(pictorial_id=self.id, is_deleted=0,
is_online=1).values("user_id",
"create_time")
datetime_list = list()
if reply_query_results.count() > 0:
for reply in reply_query_results:
UserExtra_results = UserExtra.objects.using(settings.SLAVE_DB_NAME).filter(
user_id=reply['user_id']).values('is_shadow')
if UserExtra_results.count() > 0:
if not UserExtra_results[0]['is_shadow']:
datetime_list.append(reply['create_time'])
else:
datetime_list.append(reply['create_time'])
topic_id_list = list(
PictorialTopics.objects.filter(pictorial_id=self.id, is_online=True, is_deleted=False).values_list(
"topic_id", flat=True))
topic_info = Topic.objects.filter(id__in=topic_id_list).values("user_id", "create_time")
if topic_info.count() > 0:
for topic in topic_info:
UserExtra_results = UserExtra.objects.using(settings.SLAVE_DB_NAME).filter(
user_id=topic['user_id']).values('is_shadow')
if UserExtra_results.count() > 0:
if not UserExtra_results[0]['is_shadow']:
datetime_list.append(topic['create_time'])
else:
datetime_list.append(topic['create_time'])
logging.info("get datetime_list:%s" % datetime_list)
if len(datetime_list) > 0:
dt = max(datetime_list)
logging.info("get max datetime_list:%s" % dt)
return datetime.datetime(dt.year, dt.month, dt.day, dt.hour, dt.minute, dt.second,
tzinfo=datetime.timezone(datetime.timedelta(hours=8)))
else:
return datetime.datetime(1980, 1, 1, 0, 0, 0, tzinfo=datetime.timezone(datetime.timedelta(hours=8)))
except:
return datetime.datetime(1980, 1, 1, 0, 0, 0, tzinfo=datetime.timezone(datetime.timedelta(hours=8)))
class PictorialTag(models.Model): class PictorialTag(models.Model):
"""画报关注标签""" """画报关注标签"""
......
...@@ -72,7 +72,7 @@ class PictorialTransfer(object): ...@@ -72,7 +72,7 @@ class PictorialTransfer(object):
res["activity_join"] = instance.get_activity_join() res["activity_join"] = instance.get_activity_join()
res["latest_real_reply_time"] = instance.get_latest_real_reply_time() res["latest_real_reply_time"] = instance.get_latest_real_reply_time()
res["latest_real_topic_time"] = instance.get_latest_real_topic_time() res["latest_real_topic_time"] = instance.get_latest_real_topic_time()
res["real_user_activate_time"] = instance.get_real_user_activate_time()
logging.info("get data:%s" % res) logging.info("get data:%s" % res)
return res return res
except: except:
......
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