| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962 |
- # coding=utf-8
- from __future__ import unicode_literals
- import requests
- import random,datetime,time
- import json
- import uuid
- from django.contrib import auth
- from django.core.cache import cache
- from django.conf import settings
- from django.http import FileResponse,HttpResponse
- from wsgiref.util import FileWrapper
- import common.error_info as ce
- from common import core_views as cv
- import common.common_control as ccc
- import common.common_functions as ccf
- import manage.control_auth as ca
- import manage.controls as ctl
- import common.models as cm
- class UploadFileView(cv.AdminView):
- def post(self, request):
- """
- #文件上传(平台管理后台)
- @file:"",文件对象
- @type:"",前端自定义参数
- """
- try:
- rst = ccc.upload_file(request)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class UserInfoListView(cv.AdminView):
- def get(self, request):
- """#用户列表(平台管理后台)
- @username:"用户名"
- @usercode:"用户代码"
- @page:1
- @page_size:20
- """
- qdata = request.json
- try:
- total,rst = ctl.get_list_info(self,**qdata)
- return cv.to_suc({"total":total,"list":rst})
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class UserInfoView(cv.AdminView):
- def get(self, request):
- """#用户详情(平台管理后台)
- @id:1
- """
- qdata = request.json
- need_params = ["id"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.get_detail_info(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- def gen_code(self):
- """
- """
- code = ""
- while True:
- code = "".join([str(random.choice([0,1,2,3,5,6,7,8,9])) for x in range(0,6)])
- if cm.UserInfo.objects.filter(usercode=code).exists():
- time.sleep(0.1)
- continue
- break
- return code
- def post(self,request):
- """#新增用户(平台管理后台)
- @username:"用户名"
- @usercode:"用户代码(非必填限制6位数字)"
- """
- return cv.to_suc({})
- qdata = request.json
- need_params = ["username"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- need_params.extend(["usercode","badge","zq","cw","df","avatar","player_type","phone","intro"])
- vals = ccf.get_need_params(*need_params,**qdata)
- if not vals.get("usercode"):
- vals["usercode"] = self.gen_code()
- rst = ctl.add_model(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- def put(self,request):
- """#修改账号(平台管理后台)
- @id:"1"
- @username:"用户名"
- @usercode:"用户代码(非必填限制6位数字)"
- @is_bind:"是否绑定",0/1
- """
- qdata = request.json
- need_params = ["id","username","usercode"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- need_params.extend(["is_bind","badge","zq","cw","df","avatar","player_type","phone","intro"])
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.update_model(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- def delete(self,request):
- """#删除用户(平台管理后台)
- @id:"1",多个逗号分隔
- """
- qdata = request.json
- need_params = ["id"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.delete_model(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class PlayerListView(cv.AdminView):
- def get(self, request):
- """#选手列表(平台管理后台)
- @user_id:""
- @match_id:""
- @match_group:""
- @page:1
- @page_size:20
- """
- qdata = request.json
- try:
- total,rst = ctl.get_list_info(self,**qdata)
- return cv.to_suc({"total":total,"list":rst})
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class PlayerView(cv.AdminView):
- def get(self, request):
- """#选手详情(平台管理后台)
- @id:1
- """
- qdata = request.json
- need_params = ["id"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.get_detail_info(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- def post(self,request):
- """#新增选手(平台管理后台)
- @user_id:"用户id"
- @fund:"资金"
- @match_id:"比赛id"
- @match_group:"比赛分组"
- """
- qdata = request.json
- need_params = ["user_id","match_id","match_group"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- need_params.extend(["match_status","fund"])
- vals = ccf.get_need_params(*need_params,**qdata)
- vals["fund"] = round(float(vals.get("fund",0)),4)
- rst = ctl.add_model(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- def put(self,request):
- """#修改选手(平台管理后台)
- @id:"1"
- @fund:"资金"
- @match_id:"比赛id"
- @match_group:"比赛分组"
- """
- qdata = request.json
- need_params = ["id","user_id","match_id","match_group"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- need_params.extend(["match_status","fund","username"])
- vals = ccf.get_need_params(*need_params,**qdata)
- vals["fund"] = round(float(vals.get("fund",0)),4)
- rst = ctl.update_model(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- def delete(self,request):
- """#删除选手(平台管理后台)
- @id:"1",多个逗号分隔
- """
- qdata = request.json
- need_params = ["id"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.delete_model(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class MatchListView(cv.AdminView):
- def get(self, request):
- """#赛事列表(平台管理后台)
- @name:""
- @page:1
- @page_size:20
- """
- qdata = request.json
- try:
- total,rst = ctl.get_list_info(self,**qdata)
- return cv.to_suc({"total":total,"list":rst})
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class MatchView(cv.AdminView):
- def get(self, request):
- """#赛事详情(平台管理后台)
- @id:1
- """
- qdata = request.json
- need_params = ["id"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.get_detail_info(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- def post(self,request):
- """#新增赛事(平台管理后台)
- @name:"赛事名称"
- @start_time:"开始时间"
- @end_time:"结束时间"
- """
- qdata = request.json
- need_params = ["name","start_time","end_time"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- need_params.extend(["calendar","valid_dates","player_price","viewer_price",
- "match_status","signup_start_time","signup_end_time","post_start_time","awards_content"])
- vals = ccf.get_need_params(*need_params,**qdata)
- vals["valid_dates"] = json.dumps(vals["valid_dates"])
- rst = ctl.add_model(self,**vals)
- match_id = rst
- from tools.split_table import create_table
- create_table(match_id)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- def put(self,request):
- """#修改赛事(平台管理后台)
- @id:"1"
- @name:"赛事名称"
- @start_time:"开始时间"
- @end_time:"结束时间"
- """
- qdata = request.json
- need_params = ["id","name","start_time","end_time","player_price","viewer_price"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- need_params.extend(["calendar","valid_dates","signup_start_time","signup_end_time",
- "match_status","post_start_time","awards_content"])
- vals = ccf.get_need_params(*need_params,**qdata)
- vals["valid_dates"] = json.dumps(vals["valid_dates"])
- rst = ctl.update_model(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- def delete(self,request):
- """#删除赛事(平台管理后台)
- @id:"1",多个逗号分隔
- """
- qdata = request.json
- need_params = ["id"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.delete_model(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class MatchGroupListView(cv.AdminView):
- def get(self, request):
- """#分组列表(平台管理后台)
- @name:""
- @page:1
- @page_size:20
- """
- qdata = request.json
- try:
- total,rst = ctl.get_list_info(self,**qdata)
- return cv.to_suc({"total":total,"list":rst})
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class MatchGroupView(cv.AdminView):
- def get(self, request):
- """#分组详情(平台管理后台)
- @id:1
- """
- qdata = request.json
- need_params = ["id"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.get_detail_info(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- def post(self,request):
- """#新增分组(平台管理后台)
- @match_id:"赛事id"
- @name:"分组名称"
- """
- qdata = request.json
- need_params = ["match_id","name"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- need_params.extend(["is_active"])
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.add_model(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- def put(self,request):
- """#修改赛事(平台管理后台)
- @id:"1"
- @match_id:"赛事id"
- @name:"分组名称"
- """
- qdata = request.json
- need_params = ["id","match_id","name"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- need_params.extend(["is_active","order"])
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.update_model(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- def delete(self,request):
- """#删除分组(平台管理后台)
- @id:"1",多个逗号分隔
- """
- qdata = request.json
- need_params = ["id"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.delete_model(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class PlayerRecordListView(cv.AdminView):
- def get(self, request):
- """#数据列表(平台管理后台)
- @name:""
- @page:1
- @page_size:20
- """
- qdata = request.json
- try:
- total,rst = ctl.get_list_info(self,**qdata)
- return cv.to_suc({"total":total,"list":rst})
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class PlayerRecordView(cv.AdminView):
- def get(self, request):
- """#数据详情(平台管理后台)
- @id:1
- """
- qdata = request.json
- need_params = ["id","match_id"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.get_detail_info(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- def post(self,request):
- """#新增数据(平台管理后台)
- @player_id:"选手id"
- @match_id:"赛事id"
- @stock_date:"持股日期"
- @today_fund:"今日净资产"
- @today_stock:"今日持股"
- @today_stock_img:"今日持股截图"
- """
- qdata = request.json
- need_params = ["player_id","match_id","today_fund"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- need_params.extend(["stock_date","is_markt","today_stock","today_stock_img"])
- vals = ccf.get_need_params(*need_params,**qdata)
- vals["today_fund"] = round(float(vals["today_fund"]),4)
- rst = ctl.add_model(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- def put(self,request):
- """#修改数据(平台管理后台)
- @id:"1"
- @match_id:"赛事id"
- @name:"分组名称"
- """
- qdata = request.json
- need_params = ["id","user_id","match_id","today_fund"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- need_params.extend(["stock_date","is_markt","today_stock","today_stock_img","yesterday_fund","init_fund","experience"])
- vals = ccf.get_need_params(*need_params,**qdata)
- vals["today_fund"] = round(float(vals["today_fund"]),4)
- vals["yesterday_fund"] = round(float(vals["yesterday_fund"]),4)
- vals["init_fund"] = round(float(vals["init_fund"]),4)
- rst = ctl.update_model(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- def delete(self,request):
- """#删除数据(平台管理后台)
- @id:"1",多个逗号分隔
- """
- qdata = request.json
- need_params = ["id","match_id"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.delete_model(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class MatchSearchView(cv.AdminView):
- def get(self, request):
- """#比赛搜索列表(管理后台)
- @name:赛事名称
- """
- try:
- qdata = request.json
- rst = ctl.get_search_list(self,**qdata)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class MatchGroupSearchView(cv.AdminView):
- def get(self, request):
- """#分组搜索列表(管理后台)
- @match_id:赛事id
- @name:分组名称
- """
- try:
- qdata = request.json
- rst = ctl.get_search_list(self,**qdata)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class PlayerSearchView(cv.AdminView):
- def get(self, request):
- """#选手搜索列表(管理后台)
- @match_id:赛事id
- @username:选手名称
- """
- try:
- qdata = request.json
- rst = ctl.get_search_list(self,**qdata)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class StockSearchView(cv.AdminView):
- def get(self, request):
- """#股票搜索列表(管理后台)
- @name:选手名称
- """
- try:
- qdata = request.json
- rst = ctl.get_search_list(self,**qdata)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class UserInfoSearchView(cv.AdminView):
- def get(self, request):
- """#用户搜索列表(管理后台)
- @name:选手名称
- """
- try:
- qdata = request.json
- rst = ctl.get_search_list(self,**qdata)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class PlayerRecordDownloadView(cv.AdminView):
- def get(self, request):
- """#数据详情(平台管理后台)
- @id:1
- """
- try:
- xlsdata = ctl.download_records(request)
- filename = u"%s参数数据.xls" % datetime.datetime.now().strftime("%Y-%m-%d")
- return cv.stream_file(xlsdata,"application/vnd.ms-excel",filename)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class PlayerRecordDownloadImageView(cv.BaseView):
- def get(self, request):
- """download player record as image
- """
- try:
- zipfile = ctl.download_records_image(request)
- wrapper = FileWrapper(zipfile)
- response = HttpResponse(wrapper, content_type='application/zip')
- response['Content-Disposition'] = 'attachment;filename={}'\
- .format(ccf.datetime_to_str(datetime.datetime.now(),"%Y%m%d%H%M%S")+".zip")
- return response
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class PlayerFastSaveView(cv.AdminView):
- def gen_code(self):
- """
- """
- code = ""
- while True:
- code = "".join([str(random.choice([0,1,2,3,5,6,7,8,9])) for x in range(0,6)])
- if cm.UserInfo.objects.filter(usercode=code).exists():
- time.sleep(0.1)
- continue
- break
- return code
- def post(self,request):
- """#快速创建用户与选手(平台管理后台)
- @username:"用户名"
- @usercode:"用户代码"
- @fund:"资金"
- @match_id:"比赛id"
- @match_group:"比赛分组"
- @match_status:"比赛状态"
- """
- qdata = request.json
- need_params = ["username","match_id","match_group"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- need_params.extend(["usercode","match_status","fund"])
- vals = ccf.get_need_params(*need_params,**qdata)
- if not vals.get("usercode"):
- vals["usercode"] = self.gen_code()
- if vals.get("fund"):
- vals["fund"] = round(float(vals["fund"]),4)
- rst = ctl.fast_save_player(**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class PlayerAutoRecordView(cv.AdminView):
- def post(self,request):
- """#自动补全数据(平台管理后台)
- """
- return cv.to_suc()
- qdata = request.json
- stock_date = qdata.get("stock_date")
- from tools.autocomplete_record import auto_gen_record
- auto_gen_record(stock_date)
- return cv.to_suc()
- class ArticleView(cv.AdminView):
- def get(self, request):
- """#赛事详情(平台管理后台)
- @id:1
- """
- qdata = request.json
- need_params = ["id"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.get_detail_info(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- def post(self,request):
- """#新增赛事(平台管理后台)
- @name:"赛事名称"
- @content:"详情"
- """
- qdata = request.json
- need_params = ["name","content","status"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- need_params.extend(["type","img","category","isbanner","ishot"])
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.add_model(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- def put(self,request):
- """#修改赛事(平台管理后台)
- @id:"1"
- @name:"名称"
- @content:"详情"
- """
- qdata = request.json
- need_params = ["id","name","content","status"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- need_params.extend(["type","img","category","isbanner","ishot"])
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.update_model(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- def delete(self,request):
- """#删除赛事(平台管理后台)
- @id:"1",多个逗号分隔
- """
- qdata = request.json
- need_params = ["id"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.delete_model(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class ArticleListView(cv.AdminView):
- def get(self, request):
- """#文章列表(平台管理后台)
- @name:""
- @page:1
- @page_size:20
- """
- qdata = request.json
- try:
- total,rst = ctl.get_list_info(self,**qdata)
- return cv.to_suc({"total":total,"list":rst})
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class ArticleSpiderView(cv.BaseView):
- def get(self, request):
- """#文章抓取(平台管理后台)
- """
- qdata = request.json
- try:
- data = ctl.spider_article(**qdata)
- return cv.to_suc(data)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
-
- class FlushRankView(cv.AdminView):
- def get(self, request):
- """#更新排名(平台管理后台)
- @name:""
- @page:1
- @page_size:20
- """
- qdata = request.json
- need_params = ["stock_date","match_id","groupId"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- stock_date = qdata.get("stock_date")
- match_id = qdata.get("match_id")
- groupId = qdata.get("groupId")
- ctl.update_group_rank(stock_date,match_id,groupId)
- return cv.to_suc()
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class StockView(cv.AdminView):
- def get(self, request):
- """#赛事详情(平台管理后台)
- @id:1
- """
- qdata = request.json
- need_params = ["id"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.get_detail_info(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- def post(self,request):
- """#新增股票(平台管理后台)
- @name:"赛事名称"
- @content:"详情"
- """
- qdata = request.json
- need_params = ["name","code"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- need_params.extend(["desc","img"])
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.add_model(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- def put(self,request):
- """#修改股票(平台管理后台)
- @id:"1"
- @name:"名称"
- @content:"详情"
- """
- qdata = request.json
- need_params = ["id","name","code"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- need_params.extend(["desc","img"])
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.update_model(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- def delete(self,request):
- """#删除股票(平台管理后台)
- @id:"1",多个逗号分隔
- """
- qdata = request.json
- need_params = ["id"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.delete_model(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class PlayerRecordCommentView(cv.AdminView):
- def put(self,request):
- """#顽主点评(平台管理后台)
- @id:"1"
- @wanzhu_comment:"顽主点评"
- """
- qdata = request.json
- need_params = ["id","wanzhu_comment","match_id"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.update_comment(**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class StockListView(cv.AdminView):
- def get(self, request):
- """#股票仓库列表(平台管理后台)
- @name:"用户名"
- @page:1
- @page_size:20
- """
- qdata = request.json
- try:
- total,rst = ctl.get_list_info(self,**qdata)
- return cv.to_suc({"total":total,"list":rst})
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class ResetInitFundView(cv.AdminView):
- def post(self,request):
- """#重置初始资金(平台管理后台)
- @match_id:"1"
- """
- qdata = request.json
- need_params = ["match_id"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.reset_initfund(**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class SignupOrderListView(cv.AdminView):
- def get(self, request):
- """#订单列表(平台管理后台)
- @name:"用户名"
- @page:1
- @page_size:20
- """
- qdata = request.json
- try:
- total,rst = ctl.get_list_info(self,**qdata)
- return cv.to_suc({"total":total,"list":rst})
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class StockCommentsListView(cv.AdminView):
- def get(self, request):
- """#股票评论列表(平台管理后台)
- @name:"股票名称"
- @page:1
- @page_size:20
- """
- qdata = request.json
- try:
- total,rst = ctl.get_stock_comments_list(**qdata)
- return cv.to_suc({"total":total,"list":rst})
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class RecordCommentsListView(cv.AdminView):
- def get(self, request):
- """#作业评论列表(平台管理后台)
- @name:"股票名称"
- @page:1
- @page_size:20
- """
- qdata = request.json
- try:
- total,rst = ctl.get_record_comments_list(**qdata)
- return cv.to_suc({"total":total,"list":rst})
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class ConsultListView(cv.AdminView):
- def get(self, request):
- """#顽主咨询列表(平台管理后台)
- @name:"股票名称"
- @page:1
- @page_size:20
- """
- qdata = request.json
- try:
- total,rst = ctl.get_wanzhu_consult_list(**qdata)
- return cv.to_suc({"total":total,"list":rst})
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class WanzhuConsultView(cv.AdminView):
- def get(self, request):
- """#顽主咨询详情(平台管理后台)
- @id:1
- """
- qdata = request.json
- need_params = ["id"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.get_detail_info(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- def delete(self,request):
- """#删除咨询(平台管理后台)
- @id:"1",多个逗号分隔
- """
- qdata = request.json
- need_params = ["id"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.delete_consult(**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class WanzhuConsultReplyView(cv.AdminView):
- def post(self, request):
- """#顽主咨询回复(平台管理后台)
- @id:1
- """
- qdata = request.json
- need_params = ["reply_content","user_id"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- need_params.extend(["pid","action"])
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.reply_wanzhu_consult(**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class SignupOrderView(cv.AdminView):
- def get(self, request):
- """#订单详情(平台管理后台)
- @id:1
- """
- qdata = request.json
- need_params = ["id"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.get_detail_info(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- def delete(self,request):
- """#删除订单(平台管理后台)
- @id:"1",多个逗号分隔
- """
- qdata = request.json
- need_params = ["id"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.delete_model(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- def put(self,request):
- """#修改订单(平台管理后台)
- @id:"1"
- @order_status:0/1/-1
- @remark:""
- """
- qdata = request.json
- need_params = ["id"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- need_params.extend(["order_status","remark"])
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.update_model(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class PlayerTypeView(cv.AdminView):
- def put(self,request):
- """#修改选手类型(平台管理后台)
- @player_id:"1"
- @player_type:0/1/2/3
- @phone:"",手机号
- """
- qdata = request.json
- need_params = ["player_id"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- need_params.extend(["player_type","phone","user_id"])
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.update_player_type(**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class CommentsTopView(cv.AdminView):
- def put(self,request):
- """#置顶与取消置顶(平台管理后台)
- @id:"1"
- """
- qdata = request.json
- need_params = ["id"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.comments_top(**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class CommentsBlackView(cv.AdminView):
- def put(self,request):
- """#拉黑评论(平台管理后台)
- @id:"1"
- """
- qdata = request.json
- need_params = ["id"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.comments_black(**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class CommentsView(cv.AdminView):
- def delete(self,request):
- """#删除用户(平台管理后台)
- @id:"1",多个逗号分隔
- """
- qdata = request.json
- need_params = ["id"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.delete_model(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class UeditorUploadView(cv.BaseView):
- def get(self, request):
- """#ueditor(管理后台)
- @name:名称
- """
- try:
- rst = '{"videoMaxSize":102400000,"videoActionName":"uploadvideo","fileActionName":"uploadfile","fileManagerListPath":"/ueditor/jsp/upload/file/","imageCompressBorder":1600,"imageManagerAllowFiles":[".png",".jpg",".jpeg",".gif",".bmp"],"imageManagerListPath":"/ueditor/jsp/upload/image/","fileMaxSize":51200000,"fileManagerAllowFiles":[".png",".jpg",".jpeg",".gif",".bmp",".flv",".swf",".mkv",".avi",".rm",".rmvb",".mpeg",".mpg",".ogg",".ogv",".mov",".wmv",".mp4",".webm",".mp3",".wav",".mid",".rar",".zip",".tar",".gz",".7z",".bz2",".cab",".iso",".doc",".docx",".xls",".xlsx",".ppt",".pptx",".pdf",".txt",".md",".xml"],"fileManagerActionName":"listfile","snapscreenInsertAlign":"none","scrawlActionName":"uploadscrawl","videoFieldName":"upfile","imageCompressEnable":true,"videoUrlPrefix":"","fileManagerUrlPrefix":"","catcherAllowFiles":[".png",".jpg",".jpeg",".gif",".bmp"],"imageManagerActionName":"listimage","snapscreenPathFormat":"/ueditor/jsp/upload/image/{yyyy}{mm}{dd}/{time}{rand:6}","scrawlPathFormat":"/ueditor/jsp/upload/image/{yyyy}{mm}{dd}/{time}{rand:6}","scrawlMaxSize":2048000,"imageInsertAlign":"none","catcherPathFormat":"/ueditor/jsp/upload/image/{yyyy}{mm}{dd}/{time}{rand:6}","catcherMaxSize":2048000,"snapscreenUrlPrefix":"","imagePathFormat":"/ueditor/jsp/upload/image/{yyyy}{mm}{dd}/{time}{rand:6}","imageManagerUrlPrefix":"","scrawlUrlPrefix":"http://192.168.101.81:8001","scrawlFieldName":"upfile","imageMaxSize":2048000,"imageAllowFiles":[".png",".jpg",".jpeg",".gif",".bmp"],"snapscreenActionName":"uploadimage","catcherActionName":"catchimage","fileFieldName":"upfile","fileUrlPrefix":"","imageManagerInsertAlign":"none","catcherLocalDomain":["127.0.0.1","localhost","img.baidu.com"],"filePathFormat":"/ueditor/jsp/upload/file/{yyyy}{mm}{dd}/{time}{rand:6}","videoPathFormat":"/ueditor/jsp/upload/video/{yyyy}{mm}{dd}/{time}{rand:6}","fileManagerListSize":20,"imageActionName":"uploadimage","imageFieldName":"upfile","imageUrlPrefix":"","scrawlInsertAlign":"none","fileAllowFiles":[".png",".jpg",".jpeg",".gif",".bmp",".flv",".swf",".mkv",".avi",".rm",".rmvb",".mpeg",".mpg",".ogg",".ogv",".mov",".wmv",".mp4",".webm",".mp3",".wav",".mid",".rar",".zip",".tar",".gz",".7z",".bz2",".cab",".iso",".doc",".docx",".xls",".xlsx",".ppt",".pptx",".pdf",".txt",".md",".xml"],"catcherUrlPrefix":"","imageManagerListSize":20,"catcherFieldName":"source","videoAllowFiles":[".flv",".swf",".mkv",".avi",".rm",".rmvb",".mpeg",".mpg",".ogg",".ogv",".mov",".wmv",".mp4",".webm",".mp3",".wav",".mid"]}'
- return cv.to_response(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- def post(self, request):
- """
- #文件上传(平台管理后台)
- @file:"",文件对象
- @type:"",前端自定义参数
- """
- try:
- url = ccc.ueditor_to_oss(request)
- data = {
- "original":"base.jpg",
- "state":"SUCCESS",
- "title":"base.jpg",
- "url":url
- }
- return cv.to_response(json.dumps(data))
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class PlayerRoleView(cv.AdminView):
- def put(self,request):
- """#修改选手角色(平台管理后台)
- @player_id:"1"
- @player_type:0/1/2/3
- @phone:"",手机号
- """
- qdata = request.json
- need_params = ["player_id"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- need_params.extend(["role"])
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.update_player_role(**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class RelationOldView(cv.AdminView):
- def put(self,request):
- """#修改选手角色(平台管理后台)
- @player_id:"1"
- @player_type:0/1/2/3
- @phone:"",手机号
- """
- qdata = request.json
- need_params = ["user_id","old_user_id"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.relation_old_user(**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class OpenidMissView(cv.AdminView):
- def get(self, request):
- """#用户列表(平台管理后台)
- @username:"用户名"
- @usercode:"用户代码"
- @page:1
- @page_size:20
- """
- qdata = request.json
- try:
- rst = ctl.get_openid_miss(**qdata)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class SignupOldUserView(cv.AdminView):
- def put(self,request):
- """#老用户处理(平台管理后台)
- @id:"1"
- @match_group:1
- @player_type:""
- @role_type:""
- """
- qdata = request.json
- need_params = ["id","signup_type","match_group"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- need_params.extend(["player_type","role_type","match_id"])
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.signup_old_user(**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class FundInOutView(cv.AdminView):
- def get(self, request):
- """#资金出入详情(平台管理后台)
- @id:1
- """
- qdata = request.json
- need_params = ["id"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.get_detail_info(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- def delete(self,request):
- """#删除资金出入(平台管理后台)
- @id:"1",多个逗号分隔
- """
- qdata = request.json
- need_params = ["id"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.delete_model(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class FundInOutListView(cv.AdminView):
- def get(self, request):
- """#资金出入列表(平台管理后台)
- @name:""
- @page:1
- @page_size:20
- """
- qdata = request.json
- try:
- total,rst = ctl.get_list_info(self,**qdata)
- return cv.to_suc({"total":total,"list":rst})
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class FundInOutCaculateView(cv.AdminView):
- def get(self, request):
- """#资金出入计算(平台管理后台)
- """
- qdata = request.json
- try:
- rst = ctl.caculate_inout(**qdata)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
-
- class UserConsultDetailView(cv.AdminView):
- def get(self, request):
- """#咨询详情(平台管理后台)
- @user_id:1
- """
- qdata = request.json
- try:
- rst = ctl.get_consult_detail(**qdata)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class BaikeCategoryListView(cv.AdminView):
- def get(self, request):
- """#百科词条分类列表(平台管理后台)
- @name:"股票名称"
- @page:1
- @page_size:20
- """
- qdata = request.json
- try:
- rst = ctl.get_baike_category_tree(**qdata)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class BaikeDetailView(cv.AdminView):
- def get(self, request):
- """#词条详情(平台管理后台)
- @id:1
- """
- qdata = request.json
- need_params = ["id"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.get_detail_info(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- def post(self,request):
- """#新增词条(平台管理后台)
- @user_id:"用户id"
- @fund:"资金"
- @match_id:"比赛id"
- @match_group:"比赛分组"
- """
- qdata = request.json
- need_params = ["name","content","category_id","category_name"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- need_params.extend(["editor","intro","img"])
- vals = ccf.get_need_params(*need_params,**qdata)
- vals["cid"] = 0
- vals["cname"] = u"系统管理员"
- if qdata.get("action") == "publish":
- vals["status"] = 1
- rst = ctl.add_model(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- def put(self,request):
- """#修改词条(平台管理后台)
- @id:"1"
- @fund:"资金"
- @match_id:"比赛id"
- @match_group:"比赛分组"
- """
- qdata = request.json
- need_params = ["id","name","content","category_id","category_name"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- need_params.extend(["editor","intro","img"])
- vals = ccf.get_need_params(*need_params,**qdata)
- if qdata.get("action") == "publish":
- vals["status"] = 1
- rst = ctl.update_model(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- def delete(self,request):
- """#删除词条(平台管理后台)
- @id:"1",多个逗号分隔
- """
- qdata = request.json
- need_params = ["id"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.delete_model(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class BaikeDetailListView(cv.AdminView):
- def get(self, request):
- """#百科词条列表(平台管理后台)
- @name:""
- @page:1
- @page_size:20
- """
- qdata = request.json
- try:
- total,rst = ctl.get_list_info(self,**qdata)
- return cv.to_suc({"total":total,"list":rst})
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class BaikeCategoryView(cv.AdminView):
- def get(self, request):
- """#词条分类详情(平台管理后台)
- @id:1
- """
- qdata = request.json
- need_params = ["id"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.get_detail_info(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- def post(self,request):
- """#新增词条分类(平台管理后台)
- @user_id:"用户id"
- @fund:"资金"
- @match_id:"比赛id"
- @match_group:"比赛分组"
- """
- qdata = request.json
- need_params = ["name"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- need_params.extend(["parent_id","parent_name"])
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.add_model(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- def put(self,request):
- """#修改词条分类(平台管理后台)
- @id:"1"
- @fund:"资金"
- @match_id:"比赛id"
- @match_group:"比赛分组"
- """
- qdata = request.json
- need_params = ["id","name"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- need_params.extend(["parent_id","parent_name"])
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.update_model(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- def delete(self,request):
- """#删除词条分类(平台管理后台)
- @id:"1",多个逗号分隔
- """
- qdata = request.json
- need_params = ["id"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.delete_model(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class PushArticleView(cv.AdminView):
- def post(self,request):
- """#新增词条分类(平台管理后台)
- @id:"文章id"
- """
- qdata = request.json
- need_params = ["id"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.push_article(**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class ImportArticleView(cv.BaseView):
- def post(self,request):
- """#新增赛事(平台管理后台)
- @name:"赛事名称"
- @content:"详情"
- @status:"详情"
- """
- qdata = request.json
- need_params = ["name","content","status"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- need_params.extend(["type","img","category","isbanner"])
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.import_article(**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class APPVersionView(cv.AdminView):
- def get(self, request):
- """#赛事详情(平台管理后台)
- @id:1
- """
- qdata = request.json
- need_params = ["id"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.get_detail_info(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- def post(self,request):
- """#新增赛事(平台管理后台)
- @name:"赛事名称"
- @content:"详情"
- """
- qdata = request.json
- need_params = ["version","android_version","android_url"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- need_params.extend(["name","ios_url","force"])
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.add_model(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- def put(self,request):
- """#修改赛事(平台管理后台)
- @id:"1"
- @name:"名称"
- @content:"详情"
- """
- qdata = request.json
- need_params = ["id","version","android_version","android_url"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- need_params.extend(["name","ios_url","force"])
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.update_model(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- def delete(self,request):
- """#删除赛事(平台管理后台)
- @id:"1",多个逗号分隔
- """
- qdata = request.json
- need_params = ["id"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.delete_model(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class APPVersionListView(cv.AdminView):
- def get(self, request):
- """#文章列表(平台管理后台)
- @name:""
- @page:1
- @page_size:20
- """
- qdata = request.json
- try:
- total,rst = ctl.get_list_info(self,**qdata)
- return cv.to_suc({"total":total,"list":rst})
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class WXPayRefundView(cv.AdminView):
- def post(self,request):
- """#微信退款(平台管理后台)
- @id:"订单id"
- """
- qdata = request.json
- need_params = ["id"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.refund_out_trade_order(**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class StockCommentsListView(cv.AdminView):
- def get(self, request):
- """#用户列表(平台管理后台)
- @username:"用户名"
- @usercode:"用户代码"
- @page:1
- @page_size:20
- """
- qdata = request.json
- try:
- total,rst = ctl.get_list_info(self,**qdata)
- return cv.to_suc({"total":total,"list":rst})
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class StockCommentsView(cv.AdminView):
- def get(self, request):
- """#赛事详情(平台管理后台)
- @id:1
- """
- qdata = request.json
- need_params = ["id"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.get_detail_info(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- def post(self,request):
- """#新增赛事(平台管理后台)
- @name:"赛事名称"
- @content:"详情"
- """
- qdata = request.json
- need_params = ["stock_id","stock_name","stock_code","content","img"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.add_model(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- def put(self,request):
- """#修改赛事(平台管理后台)
- @id:"1"
- @name:"名称"
- @content:"详情"
- """
- qdata = request.json
- need_params = ["id","stock_id","stock_name","stock_code","content","img"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.update_model(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- def delete(self,request):
- """#删除赛事(平台管理后台)
- @id:"1",多个逗号分隔
- """
- qdata = request.json
- need_params = ["id"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.delete_model(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class UserArticleRelationListView(cv.AdminView):
- def get(self, request):
- """#用户列表(平台管理后台)
- @username:"用户名"
- @usercode:"用户代码"
- @page:1
- @page_size:20
- """
- qdata = request.json
- try:
- total,rst = ctl.get_list_info(self,**qdata)
- return cv.to_suc({"total":total,"list":rst})
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class UserArticleRelationView(cv.AdminView):
- def get(self, request):
- """#赛事详情(平台管理后台)
- @id:1
- """
- qdata = request.json
- need_params = ["id"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.get_detail_info(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- def post(self,request):
- """#新增赛事(平台管理后台)
- @name:"赛事名称"
- @content:"详情"
- """
- qdata = request.json
- need_params = ["user_id","user_name","user_avatar","content","article_ids"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.add_model(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- def put(self,request):
- """#修改赛事(平台管理后台)
- @id:"1"
- @name:"名称"
- @content:"详情"
- """
- qdata = request.json
- need_params = ["id","user_id","user_name","user_avatar","content","article_ids"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.update_model(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- def delete(self,request):
- """#删除赛事(平台管理后台)
- @id:"1",多个逗号分隔
- """
- qdata = request.json
- need_params = ["id"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.delete_model(self,**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class ArticleSearchView(cv.AdminView):
- def get(self, request):
- """#比赛搜索列表(管理后台)
- @name:赛事名称
- """
- try:
- qdata = request.json
- rst = ctl.get_search_list(self,**qdata)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class BaikeDetailTopView(cv.AdminView):
- def put(self,request):
- """#修改词条(平台管理后台)
- @id:"1"
- @action:"top/cancel",置顶/取消置顶
- """
- qdata = request.json
- need_params = ["id","action"]
- mse = ccf.check_params(*need_params,**qdata)
- if mse:
- raise ce.TipException(mse)
- try:
- vals = ccf.get_need_params(*need_params,**qdata)
- rst = ctl.baike_detail_top(**vals)
- return cv.to_suc(rst)
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
- class DownloadTop3ImageView(cv.BaseView):
- def get(self, request):
- """download player record as image
- """
- try:
- zipfile = ctl.download_top3_imgs(request)
- #return cv.to_suc(zipfile)
- wrapper = FileWrapper(zipfile)
- response = HttpResponse(wrapper, content_type='application/zip')
- response['Content-Disposition'] = 'attachment;filename={}'\
- .format(ccf.datetime_to_str(datetime.datetime.now(),"%Y%m%d%H%M%S")+".zip")
- return response
- except Exception as e:
- cv.tracefail()
- return cv.to_fail(e)
|