class CannotSaveOrderWithNotFilledMandatoryOption(Exception):

    def __init__(
        self,       # type: CannotSaveOrderWithNotFilledMandatoryOption
        part_code,  # type: int
        part_name,  # type: str
    ):
        # type: (...) -> None
        super(CannotSaveOrderWithNotFilledMandatoryOption, self).__init__()

        self.part_code = part_code
        self.part_name = part_name

    @staticmethod
    def get_error_code():
        # type: (...) -> str

        return "CannotSaveOrderWithNotFilledMandatoryOption"

    def __str__(
        self,   # type: CannotSaveOrderWithNotFilledMandatoryOption
    ):
        # type: (...) -> str

        return "{}|{}|{}".format(self.get_error_code(), self.part_code, self.part_name)
