32 lines
875 B
Python
32 lines
875 B
Python
import arrow
|
|
|
|
from .handler import Handler
|
|
|
|
|
|
class HandlerEvent(Handler):
|
|
@classmethod
|
|
def get_coll(cls, *args, **kwargs):
|
|
event_date = kwargs.get('event_date')
|
|
appid = kwargs.get('appid')
|
|
coll_name = f'event_{event_date}'
|
|
return cls.g_mdb[appid][coll_name]
|
|
|
|
def handler_event(self):
|
|
update_data = self._data.get('props', {})
|
|
if not update_data:
|
|
return
|
|
event_time = update_data.get('_event_time', None)
|
|
if not event_time:
|
|
return
|
|
event_date = arrow.get(event_time) \
|
|
.to(Handler.game_config.get('timezone', 'local')) \
|
|
.strftime('%Y-%m-%d')
|
|
|
|
update_data.update({
|
|
'_ut': self._nt,
|
|
'_ct': self._nt,
|
|
})
|
|
coll = self.get_coll(appid=self.appid, event_date=event_date)
|
|
|
|
coll.insert(update_data)
|