NovaBryan/EVE_Dump
Log | Files | 📦 下载最新源码 (.zip) | Refs | README

category_reached_milestone.py (1658B)


      1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\packages\achievement_system\client\model\state\category_reached_milestone.py
      2 import datetime
      3 from achievement_system.client.model.definition.category.milestone.identifier import CategoryMilestoneDefinitionIdentifier
      4 from eveProto.generated.eve_public.achievement.category.api.requests_pb2 import GetResponse as ProtoGetResponse
      5 from google.protobuf.timestamp_pb2 import Timestamp
      6 
      7 class CategoryReachedMilestone(object):
      8 
      9     def __init__(self, identifier, reached_date):
     10         self._identifier = identifier
     11         self._reached_date = reached_date
     12 
     13     @property
     14     def identifier(self):
     15         return self._identifier
     16 
     17     @property
     18     def reached_date(self):
     19         return self._reached_date
     20 
     21     def __str__(self):
     22         return 'Reached Milestone ({0})\n{1}'.format(self._identifier, self._reached_date)
     23 
     24     @classmethod
     25     def from_proto(cls, payload):
     26         return CategoryReachedMilestone(identifier=CategoryMilestoneDefinitionIdentifier.from_proto(payload=payload.milestone), reached_date=datetime.datetime.fromtimestamp(payload.reached_date.seconds))
     27 
     28     @classmethod
     29     def to_proto(cls, instance):
     30         proto_reached_date = Timestamp()
     31         proto_reached_date.FromDatetime(instance.reached_date)
     32         return ProtoGetResponse.ReachedMilestone(milestone=CategoryMilestoneDefinitionIdentifier.to_proto(instance.identifier), reached_date=proto_reached_date)
     33 
     34     def __eq__(self, other):
     35         return self.identifier == other.identifier and self.reached_date == other.reached_date
     36 
     37     def __ne__(self, other):
     38         return not self.__eq__(other)