def __init__(self, sdate=None, edate=None, sids=[]): if sdate == edate: now = datetime.datetime.now() edate = edate or now the_5min_ago = edate - datetime.timedelta(seconds=_INTERVAL_SEC) sdate = the_5min_ago self.INSERT_LOCK = threading.Lock() self.sdate = datetime_to_str(sdate) self.edate = datetime_to_str(edate) self.servers = Server.objects.all( ) if not sids else Server.objects.filter(id__in=sids) print '[%s] - [%s]' % (self.sdate, self.edate) self.center_conn = Server.get_conn(0)
def get_exam_record(user_id: str, template_id: str) -> list: if not template_id: # 全部历史成绩 history_scores_origin = HistoryTestModel.objects( user_id=user_id).order_by("test_start_time") current_scores_origin = CurrentTestModel.objects( user_id=user_id).order_by("test_start_time") else: # 查看指定模板的历史成绩 history_scores_origin = HistoryTestModel.objects( user_id=user_id, paper_tpl_id=template_id).order_by("test_start_time") current_scores_origin = CurrentTestModel.objects( user_id=user_id, paper_tpl_id=template_id).order_by("test_start_time") exam_list = [] for history in history_scores_origin: try: exam_list.append( ExamRecord(examStartTime=util.datetime_to_str( history["test_start_time"]), templateId=history["paper_tpl_id"], examId=history["current_id"], scoreInfo=exam_manager.get_exam_score(history))) except InProcessing: pass for current in current_scores_origin: try: exam_list.append( ExamRecord(examStartTime=util.datetime_to_str( current["test_start_time"]), templateId=current["paper_tpl_id"], examId=str(current["id"]), scoreInfo=exam_manager.get_exam_score(current))) except InProcessing: pass return exam_list
def server_list(request, builtin=False): '''游爱自动备份接口 [ { ‘unit_agent_name’: [统一平台名称], // 中央后台统一的服所属运营平台名称,如未设置统一平台名称,该服信息更新时,中央后台的服信息将不更新 ‘agent_name’: [平台名称], // 服所属运营平台名称 ‘server_name’: [单服标识], // 单服标识(如:S1 S2) ‘chinese_server_name’: [单服中文标识], // 单服中文标识(如:人剑合一),没有可以设置与单服标识一样 ‘api_url’: [单服网址], // 单服网址 ‘open_time’: [开服时间] // 具体到分钟,格式:2011-10-10 02:30 ‘close_time’: [关服时间] // 具体到分钟,格式:2012-05-10 02:30 }, … // 更多服 ] ''' sign_key = 'L9cnKuDxGJRPVeUIZQHNA40eozVAZqX7' keys = ['sign', 'unixtime', 'method'] _p = lambda x, y='': request.POST.get(x, request.GET.get(x, y)) sign, unixtime, method = [_p(k, '') for k in keys] server_list = [] if sign and unixtime and method: if sign.encode('utf-8') == md5('%s%s%s' % (sign_key, unixtime, method)): for s in Server.objects.all(): if filter_server(s): continue server = {} try: s_j_data = json.loads(s.log_db_config) server[ 'unit_agent_name'] = 'mixed' #s_j_data.get('unit_agent_name','') server[ 'agent_name'] = 'mixed' #s_j_data.get('agent_name','') server['server_name'] = '%s%s' % ( PREFIX, s.id) #s_j_data.get('server_name','') server['chinese_server_name'] = s.name server['api_url'] = s_j_data.get('api_url', '') server['open_time'] = datetime_to_str(s.create_time) server['close_time'] = '' #s_j_data.get('close_time','') server_list.append(server) except Exception, e: traceback.print_exc() else: _r = 'Signature Invalid'
def shows(): # displays list of shows at /shows # TODO: replace with real venues data. # num_shows should be aggregated based on number of upcoming shows per venue. shows_list = Show.query.order_by('start_time').all() data = [] for show in shows_list: artist = Artist.query.get(show.artist_id) venue = Venue.query.get(show.venue_id) data.append({ "venue_id": venue.id, "venue_name": venue.name, "artist_id": artist.id, "artist_name": artist.name, "artist_image_link": artist.image_link, "start_time": util.datetime_to_str(show.start_time) }) return render_template('pages/shows.html', shows=data)
def handle(self, *args, **options): try: self.edate = options.get('edate', '') or datetime_to_str( datetime.datetime.now()) self.sdate = options.get('sdate', '') or self.edate self.server_ids = [ s for s in options.get('server_ids', '').split(',') if s ] if options.get('cron'): self.cron_run() return if self.edate: sdate = convert_to_datetime(self.sdate) edate = convert_to_datetime(self.edate) im = InsertOnlineDateManager(sdate, edate, self.server_ids) im.run() close_connections() else: print '没有提供参数!' except: traceback.print_exc()
def __init__(self, sdate, edate, platform_model, pm): self.sdate_str = datetime_to_str(sdate) self.edate_str = datetime_to_str(edate) self.pm = pm self.platform_model = platform_model
def last_exec_time_str(self): return datetime_to_str(self.last_exec_time)
def result_time_str(self): return datetime_to_str(self.result_time)
def create_time_str(self): return datetime_to_str(self.create_time) if self.create_time else ''
def last_time_str(self): return datetime_to_str(self.last_time) if self.last_time else ''
def log_time_str(self): return datetime_to_str(self.log_time)
def inside_player_register(request): '''内部号注册 ''' _r = {"code": -1, "msg": "", "content": []} player_ids = request.REQUEST.get('player_id') remark = request.REQUEST.get('remark', '') player_ids = player_ids.split(',') error_player_id = [] right_player_id = [] print player_ids try: if player_ids: for player_id in player_ids: ############### if player_id: server_id = int(player_id) >> 20 InsidePlayer = Player.get_inside_player_model_class() try: players = get_player_info(server_id, [str(player_id)]) except Exception as e: error_player_id.append(player_id) if players: for p in players: p_model, created = InsidePlayer.objects.get_or_create( log_user=p['player_id']) if created: p_model.player_id = int(p['player_id']) p_model.log_name = p['player_name'] p_model.log_server = server_id p_model.log_time = p['create_time'] p_model.log_channel = int( p['channel_id']) if p['channel_id'] else 0 p_model.log_type = p['user_type'] p_model.log_relate = p['link_key'] p_model.mobile_key = p['mobile_key'] p_model.log_tag = request.admin.id p_model.log_previous = p['create_time'] p_model.f1 = remark p_model.f3 = p['other'] p_model.f5 = request.admin.alias p_model.f6 = datetime_to_str( datetime.datetime.now()) p_model.save() right_player_id.append(player_id) _r['code'] = 0 _r['msg'] = '%s\n内部号标记成功!' % str( ','.join(right_player_id)) else: error_player_id.append(player_id) _r['msg'] = '%s\n内部号请确认是否正确!' % str( ','.join(error_player_id)) if error_player_id and right_player_id: _r['msg'] = '%s\n内部号标记成功!' % str(','.join( right_player_id)) + '\n%s内部号请确认是否正确!' % str( ','.join(error_player_id)) except: err_msg = trace_msg() _r['msg'] = err_msg return _r