from IAktiviteler.IMfgOperasyonlar.IModlar import CokluHatveModu, HatveModu


def hatve(akt):
    __mode = CokluHatveModu(
        akt.parametreler["Mode of input for Multi-Pass"].degeriStr)
    if __mode == CokluHatveModu.tekrarliHatve:
        return (
            akt.parametreler["Number of levels for Multi-Pass"], akt.parametreler["Depth of cut by level for Multi-Pass"])
    elif __mode == CokluHatveModu.tekrarliDerinlik:
        return (akt.parametreler["Number of levels for Multi-Pass"], akt.parametreler["Total height for Multi-Pass"])
    elif __mode == HatveModu.takrarliDalmaMiktarli:
        return (
            akt.parametreler["Depth of cut by level for Multi-Pass"], akt.parametreler["Total height for Multi-Pass"])


def yuzeyOffset(akt):
    return akt.parametreler["Offset on part"]


def yanalAdim(akt):
    return None
    return akt.parametreler["Pass overlap (length)"]


def hatveGL(akt):
    __mode = CokluHatveModu(
        akt.parametreler["Mode of input for Multi-Pass"].degeriStr)
    if __mode == CokluHatveModu.tekrarliHatve:
        return (__mode.name,
                akt.parametreler["Number of levels for Multi-Pass"].degeriStr, akt.parametreler["Depth of cut by level for Multi-Pass"].degeriStr)
    elif __mode == CokluHatveModu.tekrarliDerinlik:
        return (__mode.name, akt.parametreler["Number of levels for Multi-Pass"].degeriStr, akt.parametreler["Total height for Multi-Pass"].degeriStr)
    elif __mode == HatveModu.takrarliDalmaMiktarli:
        return (__mode.name,
                akt.parametreler["Depth of cut by level for Multi-Pass"].degeriStr, akt.parametreler["Total height for Multi-Pass"].degeriStr)


def fikoGlParametreler(akt):
    return {
        "takimYonu": akt.takimYonu.to_array(),
        "yuzeyOffset": yuzeyOffset(akt).degeriStr,
        "dikeyHatve": hatveGL(akt),
        # "acilar":{"AC":[akt.acilar.tav20Er32.ustAci,akt.acilar.tav20Er32.altAci]}
    }
