コード例 #1
0
ファイル: allornothing.py プロジェクト: Srbpunyani/yoolotto
    @classmethod
    def get_all_components(cls):
        day_component = LotteryGameComponent.objects.get(identifier="AllOrNothingDay")
        morning_component = LotteryGameComponent.objects.get(identifier="AllOrNothingMorning")
        evening_component = LotteryGameComponent.objects.get(identifier="DailyFourEvening")
        night_component = LotteryGameComponent.objects.get(identifier="AllOrNothingNight")

        draws_list = [morning_component,day_component,evening_component,night_component]
        return draws_list
    
    @classmethod
    def preprocess_ticket(cls, record):
        processed = []
        
        for i, play in enumerate(record["lines"]):
            _play = {}
            
            for field in ["numbers"]:
                if field in play:
                    _play[field] = play[field]

            processed.append(_play)
            
        record["lines"] = processed
        
        return record
    
from yoolotto.lottery.game.manager import GameManager
GameManager.register(AllOrNothingGame)
コード例 #2
0
ファイル: lottotexas.py プロジェクト: Srbpunyani/yoolotto
        
        if data["multiplier"] not in (True, False):
            raise LotteryPlayInvalidException("Invalid Multiplier %s" % data)
        
        try:
            cls.validate_numbers(data["numbers"])
        except LotteryResultsInvalidException as e:
            raise LotteryPlayInvalidException(str(e))
        
        return True
    
    @classmethod
    def preprocess_ticket(cls, record):
        processed = []
        
        for i, play in enumerate(record["lines"]):
            _play = {}
            
            for field in ["numbers", "multiplier"]:
                if field in play:
                    _play[field] = play[field]

            processed.append(_play)
            
        record["lines"] = processed
        
        return record
    
from yoolotto.lottery.game.manager import GameManager
GameManager.register(LottoTexasGame)
コード例 #3
0
ファイル: cashfive.py プロジェクト: Srbpunyani/yoolotto
    def validate_play(cls, data):
        if "numbers" not in data:
            raise LotteryPlayInvalidException("Invalid Format %s" % data)
        
        try:
            cls.validate_numbers(data["numbers"])
        except LotteryResultsInvalidException as e:
            raise LotteryPlayInvalidException(str(e))
        
        return True
    
    @classmethod
    def preprocess_ticket(cls, record):
        processed = []
        
        for i, play in enumerate(record["lines"]):
            _play = {}
            
            for field in ["numbers"]:
                if field in play:
                    _play[field] = play[field]

            processed.append(_play)
            
        record["lines"] = processed
        
        return record
    
from yoolotto.lottery.game.manager import GameManager
GameManager.register(CashFiveGame)
コード例 #4
0
ファイル: pickthree.py プロジェクト: Srbpunyani/yoolotto
                last = _play
                processed.append(_play)
            else:
                _play["sum"] = play["numbers"][0]
                _play["sumWager"] = currency.format(play["amount"])
                
                last = None
        record["lines"] = processed        
        return record
    
    @classmethod
    def postprocess_play(cls, record):
        enum = None
        try:
            for k, v in cls.ENUM.iteritems():
                 if v == record["lineType"]:
                     record["lineType"] = k
                     break
        except:
            import ast
            t = ast.literal_eval(record)
            for k, v in cls.ENUM.iteritems():
                 if v == t["lineType"]:
                     t["lineType"] = k
                     break
        
        return record
    
from yoolotto.lottery.game.manager import GameManager
GameManager.register(PickThreeGame)
コード例 #5
0
ファイル: powerball_bak.py プロジェクト: Srbpunyani/yoolotto
        
        if data["multiplier"] not in (True, False):
            raise LotteryPlayInvalidException("Invalid Multiplier %s" % data)
        
        try:
            cls.validate_numbers(data["numbers"])
        except LotteryResultsInvalidException as e:
            raise LotteryPlayInvalidException(str(e))
        
        return True
    
    @classmethod
    def preprocess_ticket(cls, record):
        processed = []
        
        for i, play in enumerate(record["lines"]):
            _play = {}
            
            for field in ["numbers", "multiplier"]:
                if field in play:
                    _play[field] = play[field]

            processed.append(_play)
            
        record["lines"] = processed
        
        return record
    
from yoolotto.lottery.game.manager import GameManager
GameManager.register(PowerBallGame)
コード例 #6
0
ファイル: twostep.py プロジェクト: Srbpunyani/yoolotto
            return cls.ZERO_OF_BONUS
        
        if len(white) == 1 and bonus:
            return cls.ONE_OF_FOUR_BONUS
        
        if len(white) == 2 and bonus:
            return cls.TWO_OF_FOUR_BONUS
        
        if len(white) == 3:
            return cls.THREE_OF_FOUR_BONUS if bonus else cls.THREE_OF_FOUR
        
        if len(white) == 4:
            return cls.JACKPOT if bonus else cls.FOUR_OF_FOUR
        
        return 0
                
    @classmethod
    def validate_play(cls, data):
        if "numbers" not in data:
            raise LotteryPlayInvalidException("Invalid Format %s" % data)
        
        try:
            cls.validate_numbers(data["numbers"])
        except LotteryResultsInvalidException as e:
            raise LotteryPlayInvalidException(str(e))
        
        return True
    
from yoolotto.lottery.game.manager import GameManager
GameManager.register(TwoStepGame)
コード例 #7
0
ファイル: dailyfour.py プロジェクト: Srbpunyani/yoolotto
        order = [morning_component,day_component,evening_component,night_component]
        index = order.index(component)
        draws_list = [order[item] for item in range(len(order)) if item >= index]
        return draws_list

    @classmethod
    def get_previous_components(cls,component):
        day_component = LotteryGameComponent.objects.get(identifier="DailyFourDay")
        morning_component = LotteryGameComponent.objects.get(identifier="DailyFourMorning")
        evening_component = LotteryGameComponent.objects.get(identifier="DailyFourEvening")
        night_component = LotteryGameComponent.objects.get(identifier="DailyFourNight")

        order = [morning_component,day_component,evening_component,night_component]
        index = order.index(component)
        draws_list = [order[item] for item in range(len(order)) if item <= index]
        return draws_list

    @classmethod
    def get_all_components(cls):
        day_component = LotteryGameComponent.objects.get(identifier="DailyFourDay")
        morning_component = LotteryGameComponent.objects.get(identifier="DailyFourMorning")
        evening_component = LotteryGameComponent.objects.get(identifier="DailyFourEvening")
        night_component = LotteryGameComponent.objects.get(identifier="DailyFourNight")

        draws_list = [morning_component,day_component,evening_component,night_component]
        return draws_list
    
from yoolotto.lottery.game.manager import GameManager
GameManager.register(DailyFourGame)
コード例 #8
0
ファイル: dailyderby.py プロジェクト: Srbpunyani/yoolotto
        
        if record["drawTime"] == 6:
            return LotteryGameComponent.objects.get(identifier="Daily Derby")
        
    @classmethod
    def get_game_meta(cls, component):
        if component.identifier == "DailyDerby":
            return {"drawTime": 6}
        
        return {"drawTime": 6}

    @classmethod
    def preprocess_ticket(cls, record):
        processed = []

        for i, play in enumerate(record["lines"]):
            _play = {}
            
            for field in ["numbers", "raceTime"]:
                if field in play:
                    _play[field] = play[field]

            processed.append(_play)
            
        record["lines"] = processed
        
        return record
     
from yoolotto.lottery.game.manager import GameManager
GameManager.register(DailyDerbyGame)
コード例 #9
0
ファイル: fantasyfive.py プロジェクト: Srbpunyani/yoolotto
    def validate_play(cls, data):
        if "numbers" not in data:
            raise LotteryPlayInvalidException("Invalid Format %s" % data)
        
        try:
            cls.validate_numbers(data["numbers"])
        except LotteryResultsInvalidException as e:
            raise LotteryPlayInvalidException(str(e))
        
        return True
    
    @classmethod
    def preprocess_ticket(cls, record):
        processed = []
        
        for i, play in enumerate(record["lines"]):
            _play = {}
            
            for field in ["numbers"]:
                if field in play:
                    _play[field] = play[field]

            processed.append(_play)
            
        record["lines"] = processed
        
        return record
    
from yoolotto.lottery.game.manager import GameManager
GameManager.register(FantasyFiveGame)
コード例 #10
0
ファイル: superlottoplus.py プロジェクト: Srbpunyani/yoolotto
        
        if data["multiplier"] not in (True, False):
            raise LotteryPlayInvalidException("Invalid Multiplier %s" % data)
        
        try:
            cls.validate_numbers(data["numbers"])
        except LotteryResultsInvalidException as e:
            raise LotteryPlayInvalidException(str(e))
        
        return True
    
    @classmethod
    def preprocess_ticket(cls, record):
        processed = []
        
        for i, play in enumerate(record["lines"]):
            _play = {}
            
            for field in ["numbers", "multiplier"]:
                if field in play:
                    _play[field] = play[field]

            processed.append(_play)
            
        record["lines"] = processed
        
        return record
    
from yoolotto.lottery.game.manager import GameManager
GameManager.register(SuperLottoPlusGame)
コード例 #11
0
ファイル: megamillionsca.py プロジェクト: Srbpunyani/yoolotto
        # except LotteryResultsInvalidException as e:
        #     raise LotteryPlayInvalidException(str(e))
        
        return True
    
    @classmethod
    def preprocess_ticket(cls, record):
        
        processed = []
        #validate_ball_number_from_dates(record['drawingDate'], record[''])
        try:
            drawingDate = record['drawingDate']
        except:
            drawingDate = record['drawdate']
        for i, play in enumerate(record["lines"]):
            _play = {}
            
            for field in ["numbers", "multiplier"]:
                if field in play:
                    cls.validate_ball_number_from_dates(play['numbers'], drawingDate)
                    _play[field] = play[field]

            processed.append(_play)
            
        record["lines"] = processed
        
        return record
    
from yoolotto.lottery.game.manager import GameManager
GameManager.register(CAMegaMillionsGame)
コード例 #12
0
ファイル: dailythree.py プロジェクト: Srbpunyani/yoolotto
                if _play["lineType"] == "COMBO":
                    _play["baseWager"] = currency.format(float(play["amount"]) / len(set(itertools.permutations(play["numbers"]))))
                elif _play["lineType"] in ["STRBOX", "EXTANY"]:
                    _play["baseWager"] = currency.format(float(play["amount"]) / 2)
                else:
                    _play["baseWager"] = currency.format(play["amount"])
                
                last = _play
                processed.append(_play)
            else:
                _play["sum"] = play["numbers"][0]
                _play["sumWager"] = currency.format(play["amount"])
                
                last = None
                        
        record["lines"] = processed        
        return record
    
    @classmethod
    def postprocess_play(cls, record):
        enum = None
        for k, v in cls.ENUM.iteritems():
             if v == record["lineType"]:
                 record["lineType"] = k
                 break
        
        return record
    
from yoolotto.lottery.game.manager import GameManager
GameManager.register(DailyThreeGame)
コード例 #13
0
ファイル: powerballs.py プロジェクト: Srbpunyani/yoolotto
        
        if data["multiplier"] not in (True, False):
            raise LotteryPlayInvalidException("Invalid Multiplier %s" % data)
        
        try:
            cls.validate_numbers(data["numbers"])
        except LotteryResultsInvalidException as e:
            raise LotteryPlayInvalidException(str(e))
        
        return True
    
    @classmethod
    def preprocess_ticket(cls, record):
        processed = []
        
        for i, play in enumerate(record["lines"]):
            _play = {}
            
            for field in ["numbers", "multiplier"]:
                if field in play:
                    _play[field] = play[field]

            processed.append(_play)
            
        record["lines"] = processed
        
        return record
    
from yoolotto.lottery.game.manager import GameManager
GameManager.register(LottoCaliforniaGame)
コード例 #14
0
                
        raise RuntimeError("Unknown Win State?")
            
    @classmethod
    def preprocess_ticket(cls, record):
        
        processed = []
        #validate_ball_number_from_dates(record['drawingDate'], record[''])
        try:
            drawingDate = record['drawingDate']
        except:
            drawingDate = record['drawdate']

        
        for i, play in enumerate(record["lines"]):
            _play = {}
            
            for field in ["numbers"]:
                if field in play:
                    cls.validate_ball_number_from_dates(play['numbers'], drawingDate)
                    _play[field] = play[field]

            processed.append(_play)
            
        record["lines"] = processed
        
        return record
    
from yoolotto.lottery.game.manager import GameManager
GameManager.register(FantasyMegaMillionsGame)
コード例 #15
0
ファイル: powerballca.py プロジェクト: Srbpunyani/yoolotto
            
        if data["multiplier"] not in (True, False):
            raise LotteryPlayInvalidException("Invalid Multiplier %s" % data)
        
        try:
            cls.validate_numbers(data["numbers"])
        except LotteryResultsInvalidException as e:
            raise LotteryPlayInvalidException(str(e))
        
        return True
    
    @classmethod
    def preprocess_ticket(cls, record):
        processed = []
        
        for i, play in enumerate(record["lines"]):
            _play = {}
            
            for field in ["numbers", "multiplier"]:
                if field in play:
                    _play[field] = play[field]

            processed.append(_play)
            
        record["lines"] = processed
        
        return record
    
from yoolotto.lottery.game.manager import GameManager
GameManager.register(CAPowerballGame)
コード例 #16
0
    @classmethod
    def validate_play(cls, data):
        try:
            cls.validate_numbers(data["numbers"])
        except LotteryResultsInvalidException as e:
            raise LotteryPlayInvalidException(str(e))

        return True

    @classmethod
    def preprocess_ticket(cls, record):
        processed = []

        for i, play in enumerate(record["lines"]):
            _play = {}

            for field in ["numbers"]:
                if field in play:
                    _play[field] = play[field]

            processed.append(_play)

        record["lines"] = processed

        return record


from yoolotto.lottery.game.manager import GameManager

GameManager.register(FantasyPowerBallGame)