|
|
@@ -571,8 +571,6 @@ def get_group_rank_list(request):
|
|
|
else:
|
|
|
new_players = sorted(new_players,key=lambda x:x["org_total_income"],reverse=True)
|
|
|
|
|
|
- #new_players = []
|
|
|
-
|
|
|
#分页
|
|
|
page = int(kwargs.get("page",0))
|
|
|
page_size = int(kwargs.get("page_size",50))
|
|
|
@@ -733,6 +731,8 @@ def add_model(cls,**kwargs):
|
|
|
player_id = player.id,
|
|
|
stock_date = stock_date
|
|
|
)
|
|
|
+ usobj.fund = ts["fund"]
|
|
|
+ usobj.save()
|
|
|
ts["stock_id"] = stock_id
|
|
|
new_stock_list.append(ts)
|
|
|
except Exception as e:
|
|
|
@@ -2639,3 +2639,115 @@ def get_user_follows_v3(request):
|
|
|
return total,data
|
|
|
else:
|
|
|
return len(data),data
|
|
|
+
|
|
|
+
|
|
|
+def get_latest_match_info(request):
|
|
|
+ """
|
|
|
+ """
|
|
|
+ cur_match = cm.Match.objects.filter(match_status=3).order_by("-id").values().first()
|
|
|
+ cur_match_id = cur_match.get("id")
|
|
|
+ groups = list(cm.MatchGroup.objects.filter(match_id=cur_match_id,is_active=1).order_by("order").values())
|
|
|
+ cur_match["groups"] = groups
|
|
|
+ return cur_match
|
|
|
+
|
|
|
+def get_article_info(**kwargs):
|
|
|
+ """
|
|
|
+ """
|
|
|
+ _id = kwargs.get("id")
|
|
|
+ rst = cm.Article.objects.filter(id=_id).values().first()
|
|
|
+ rst["url"] = "https://www.hunanwanzhu.com/topic/article.html?id="+str(_id)
|
|
|
+ return rst
|
|
|
+
|
|
|
+
|
|
|
+def get_profit_list(**kwargs):
|
|
|
+ """盈亏列表
|
|
|
+ """
|
|
|
+ stock_date = kwargs.get("stock_date")
|
|
|
+ match_id = kwargs.get("match_id")
|
|
|
+ _type = kwargs.get("type")
|
|
|
+
|
|
|
+ if not stock_date:
|
|
|
+ stock_date = get_today_date()
|
|
|
+
|
|
|
+ qset = cm.PlayerRecord.get_db_model(match_id).objects.filter(stock_date=stock_date)
|
|
|
+ if _type == "win":
|
|
|
+ qset = qset.filter(today_income__gte=0).order_by("-today_income")
|
|
|
+ if _type == "loss":
|
|
|
+ qset = qset.filter(today_income__lt=0).order_by("today_income")
|
|
|
+
|
|
|
+ page = int(kwargs.get("page",0))
|
|
|
+ page_size = int(kwargs.get("page_size",20))
|
|
|
+
|
|
|
+ if page and page_size:
|
|
|
+ total,qset = ccc.get_page_qset(qset,page,page_size)
|
|
|
+ else:
|
|
|
+ total = qset.count()
|
|
|
+ data = list(qset.values())
|
|
|
+
|
|
|
+ return total,data
|
|
|
+
|
|
|
+
|
|
|
+def get_group_rank_list_v3(request):
|
|
|
+ """排名列表
|
|
|
+ """
|
|
|
+ qdata = request.json
|
|
|
+ kwargs = qdata
|
|
|
+
|
|
|
+ group_id = qdata.get("id")
|
|
|
+ match_id = qdata.get("match_id")
|
|
|
+
|
|
|
+ match_id = cm.MatchGroup.objects.filter(id=group_id).first().match_id
|
|
|
+
|
|
|
+ today = qdata.get("stock_date")
|
|
|
+ if not today:
|
|
|
+ today = get_today_date()
|
|
|
+
|
|
|
+ match = get_match_info(match_id)
|
|
|
+ group = get_group_info(group_id)
|
|
|
+ players = get_match_group_users(match_id,group_id)
|
|
|
+ new_players = []
|
|
|
+ for player in players:
|
|
|
+ user_id = player["user_id"]
|
|
|
+ username = player["username"]
|
|
|
+ match_group = group_id
|
|
|
+ today_record = ccc.get_today_record(user_id,match_id,match_group,today)
|
|
|
+
|
|
|
+ if today_record:
|
|
|
+ player.update(today_record)
|
|
|
+ player["username"] = username
|
|
|
+ player["org_today_income"] = player["today_income"]
|
|
|
+ player["org_total_income"] = player["total_income"]
|
|
|
+ player["total_income"] = "{}%".format(player["total_income"]*100)
|
|
|
+ player["today_income"] = "{}%".format(player["today_income"]*100)
|
|
|
+ player["fund"] = round(player["fund"],4)
|
|
|
+ player["init_fund"] = round(player["init_fund"],4)
|
|
|
+ player["today_fund"] = round(player["today_fund"],4)
|
|
|
+ player["today_stock_img"] = json.loads(player["today_stock_img"]) if player["today_stock_img"] else []
|
|
|
+ #player["win_rate"] = calc_win_rate(user_id,match_id)
|
|
|
+ player["zan_count"] = player["zans"]
|
|
|
+ new_players.append(player)
|
|
|
+
|
|
|
+ if kwargs.get("order_by") == "today_income__asc":
|
|
|
+ new_players = sorted(new_players,key=lambda x:x["org_today_income"])
|
|
|
+ elif kwargs.get("order_by") == "today_income__desc" :
|
|
|
+ new_players = sorted(new_players,key=lambda x:x["org_today_income"],reverse=True)
|
|
|
+ elif kwargs.get("order_by") == "total_income__asc":
|
|
|
+ new_players = sorted(new_players,key=lambda x:x["org_total_income"])
|
|
|
+ elif kwargs.get("order_by") == "total_income__desc":
|
|
|
+ new_players = sorted(new_players,key=lambda x:x["org_total_income"],reverse=True)
|
|
|
+ else:
|
|
|
+ new_players = sorted(new_players,key=lambda x:x["org_total_income"],reverse=True)
|
|
|
+
|
|
|
+ #分页
|
|
|
+ page = int(kwargs.get("page",0))
|
|
|
+ page_size = int(kwargs.get("page_size",50))
|
|
|
+ if page and page_size:
|
|
|
+ total,new_players = ccf.get_page_list(new_players,page,page_size)
|
|
|
+ else:
|
|
|
+ total = len(new_players)
|
|
|
+ return total,new_players
|
|
|
+
|
|
|
+
|
|
|
+def get_article_type_list(**kwargs):
|
|
|
+ rst = [u"每日点评",u"冠军心得",u"腰斩心得",u"牛人专访"]
|
|
|
+ return rst
|