def krs_to_transkrip(data):
    try:
        data = data.split('|')
        tahun_id = find_tahun_id_from_message(message.normalize(data[3]))
        if tahun_id:
            tahun_id = tahun_id[0]
            data_npm_begin_and_npm_end = split_and_get_npm(
                message.normalize(data[3]))
            if data_npm_begin_and_npm_end:
                npm_begin, npm_end = data_npm_begin_and_npm_end
                data_mhsw_id_distinct = get_npm_distinct(
                    npm_range_begin=npm_begin,
                    npm_range_end=npm_end,
                    tahunid=tahun_id)

                data_check = [
                    data_check_krs_to_transkrip(data_mahasiswa_krs)
                    for mshw in data_mhsw_id_distinct
                    for data_mahasiswa_krs in data_student_krs(
                        mshw["MhswID"], tahun_id)
                ]

                msg_data_insert = f'Data perpindahan dari KRS to TRANSKRIP:{config.whatsapp_api_lineBreak}{config.whatsapp_api_lineBreak}'
                for data_check_loop in data_check:
                    if data_check_loop['status']:
                        msg_data_insert += f'{data_check_loop["mhswid"]} | {data_check_loop["mkkode"]}{config.whatsapp_api_lineBreak}'

                return wa.setOutbox(numbers.normalize(data[0]),
                                    msg_data_insert)
            return wa.setOutbox(numbers.normalize(data[0]),
                                'kata sampai tidak ada')
        return wa.setOutbox(numbers.normalize(data[0]), 'tidak ada tahun id')
    except Exception as e:
        return wa.setOutbox(numbers.normalize(data[0]), f'ERROR: {e}')
def replymsg(driver, data):
    wmsg = reply.getWaitingMessage(os.path.basename(__file__).split('.')[0])
    wmsg = wmsg.replace('#BOTNAME#', config.bot_name)
    wa.typeAndSendMessage(driver, wmsg)
    num = numbers.normalize(data[0])
    msg = message.normalize(data[3])
    npm = msg.split(' ')[-1]
    kodedosen = kelas.getKodeDosen(num)
    if npm == "all":
        msgreply = 'ok sudah di approve semua berkas KAMBING-nya sama #BOTNAME# yyyyaaa'
        sudah, siap, belum = bimbinganCekApprovalBimbingan(kodedosen)
        if siap == []:
            msgreply = 'yah datanya belum ada lagi nih yang siap untuk di approve, coba deh cek dengan cara ketik #BOTNAME# cek approval kambing'
        else:
            for j in siap:
                pembimbing_ke = pembimbingPositionAs(
                    getDataPembimbing(j, kodedosen), kodedosen)
                setSingleApprovalBimbingan(j, kodedosen, pembimbing_ke, 'true')
                nama_mahasiswa = kelas.getStudentNameOnly(j)
                msgreply += f'\n\nNPM: {j}\nNama: {nama_mahasiswa}'
    else:
        data = getDataPembimbing(npm, kodedosen)
        if data == None:
            msgreply = f'npm {npm} tidak ditemukan didata bimbingan Bapak/Ibu dosen'
        else:
            pembimbing_ke = pembimbingPositionAs(data, kodedosen)
            setSingleApprovalBimbingan(npm, kodedosen, pembimbing_ke, 'true')
            nama_mahasiswa = kelas.getStudentNameOnly(npm)
            msgreply = 'oke sudah #BOTNAME# approve untuk KAMBING'
            msgreply += f'\n\nNPM: {npm}\nNama: {nama_mahasiswa}'
    return msgreply
Example #3
0
def replymsg(driver, data):
    wmsg = reply.getWaitingMessage(os.path.basename(__file__).split('.')[0])
    wa.typeAndSendMessage(driver, wmsg)
    msg = data[3].lower()
    num = numbers.normalize(data[0])
    # tahun_id = '20192'
    tahun_id = kelas.getTahunID()
    if kelas.getNpmandNameMahasiswa(num):
        npm, nama=kelas.getNpmandNameMahasiswa(num)
        try:
            if checkMhs(npm):
                if checkRevisi(npm, tahun_id):
                    msgreply = checkRevisi(npm, tahun_id)
                    msgreply += f'\n{checkSidang(npm, tahun_id)}'
                else:
                    msgreply = "Revisi dulu gih sana...."
                
            else:
                msgreply = "Kamu emg ikutan sidang? jgn ngadi-ngadi deh..."
        except Exception as e: 
            msgreply = f"Error {str(e)}"
    else:
        msgreply = f"Hayoo siapa kamu"
    
    
    
    return msgreply
def replymsg(driver, data):
    wmsg = reply.getWaitingMessage(os.path.basename(__file__).split('.')[0])
    wa.typeAndSendMessage(driver, wmsg)
    num = numbers.normalize(data[0])
    kodeDosen = kelas.getKodeDosen(num)

    msgreply = ""
    try:
        nipyKaBaak = getKaBaak()
        kodeKaBaak = getKodeDosen(nipyKaBaak)

        if (kodeDosen == kodeKaBaak):
            datas = dataSumbitSKMK()
            msgreply = "*Data yang minta SKMK:*\n\n"
            if datas:
                for i, data in enumerate(datas):
                    msgreply += f"{int(i)+1}. {data[0]}\n"
            else:
                msgreply += "Tidak ada yg minta.."
        else:
            msgreply = "Haha.. lucu ya, ternyata anda bukan siapa-siapa..."
    except Exception as e:
        msgreply = f"Error {str(e)}"

    return msgreply
def kelasSelesai(driver, data):
    if kelas.cekSiap():
        grp = data[1]
        num = data[0]
        if kelas_mulai.isJadwalID(kelas.getKodeDosen(num), grp.split('-')[0]):
            msg = data[3]
            msg = message.normalize(msg)
            if 'luring' in msg:
                tipe = 'luring'
            else:
                tipe = 'daring'
            try:
                kehadiran = kelas.getKehadiran(grp.split('-')[0])
                rencana_kehadiran = kelas.rencana_kehadiran(grp.split('-')[0])
                if (kehadiran != rencana_kehadiran and
                        kehadiran < rencana_kehadiran) or (kelas.isSudahKelas(
                            jadwalid=grp.split('-')[0],
                            lecturercode=kelas.getKodeDosen(num=num))):
                    wmsg = reply.getWaitingMessage(
                        os.path.basename(__file__).split('.')[0])
                    wa.typeAndSendMessage(driver, wmsg)
                    materi = msg.lower()
                    try:
                        materi = materi.split(' materi ')[1]
                    except:
                        return f'yahhh materinya ngga ada nih tambahin dong materinyaaa.....,\ncontoh: iteung kelas daring selesai materi chapter 1'
                    msgreply = kelas.siapabsensiwithsql(
                        grp=grp,
                        num=numbers.normalize(num),
                        materi=materi,
                        tipe=tipe)
                    if msgreply != '':
                        if msgreply != []:
                            try:
                                msgreply = kelas.beritaAcara(driver=driver,
                                                             num=num,
                                                             groupname=grp,
                                                             data=msgreply,
                                                             msg=msg)
                            except:
                                msgreply = 'aduh materinya ga ada nich, \ncontoh format yang bener gini ya: \niteung kelas daring selesai materi chapter 04'
                        else:
                            msgreply = 'aduh mahasiswanya belum ada yang update nomer hp SIAP nich, \nKalo mau ke absen cocokin dulu dong nomer hp yang ada di SIAP dengan yang kamu pakai di WhatsApp \nIngat ya gunakan format international, contoh: 6282217401448 '
                    else:
                        msgreply = "adohhhh wadohdoh peserta absensinya kosong nih, coba ganti ke jadwal id yang satunya lagi eheeeee.... :-3"
                elif kehadiran == '':
                    msgreply = 'yahhhhh kehadirannya ngga #BOTNAME# temuin coba di cek lagi jadwal idnya yaaa....'
                else:
                    msgreply = 'Mohon maaf Untuk kuliah daring ini sudah memenuhi kuota pertemuan pada jadwal kali ini...'
            except:
                listMK = kelas.getListMK(kelas.getKodeDosen(data[0]))
                guide = 'yahh....nama groupnya jangan diubah dong. hihihi ganti lagi ya.jadi JADWALID-KELAS-NAMAMK,contoh : 17312-A-KECERDASAN BUATAN : \n'
                msgreply = guide + listMK
        else:
            listMK = kelas.getListMK(kelas.getKodeDosen(data[0]))
            guide = 'aduwww waduwduwwww ini bukan Jadwal ID Bapak/Ibu dosen nihhhh, yang bener yang dibawah ini yaaa.... : \n'
            msgreply = guide + listMK
    else:
        msgreply = 'Mohon maaf server Akademik SIAP sedang dalam kondisi DOWN, mohon untuk menginformasikan ke ADMIN dan tunggu hingga beberapa menit kemudian, lalu ulangi kembali, terima kasih....'
    return msgreply
def replymsg(driver, data):
    wmsg = reply.getWaitingMessage(os.path.basename(__file__).split('.')[0])
    wa.typeAndSendMessage(driver, wmsg)
    num = numbers.normalize(data[0])
    kodeDosen = kelas.getKodeDosen(num)
    # tahun_id = '20192'
    tahun_id = kelas.getTahunID()
    try:
        npm = [
            npm for npm in data[3].split(' ')
            if npm.isdigit() and len(npm) == 7
        ][0]
        msg = data[3].split(" id ", 1)[1]
        id = [id for id in msg.split(' ') if npm.isdigit()][0]
        revisi = msg.lstrip(id).strip()
        print(npm, revisi, id)
        if checkRevisi(npm, kodeDosen, id, tahun_id):
            revisiSidang(npm, kodeDosen, revisi, tahun_id, id)
            msgreply = "Sudah update...\n\n" + listRevisi(
                npm, kodeDosen, tahun_id)
        else:
            msgreply = "Salah id ato gak ada akses"
    except Exception as e:
        msgreply = f"Error {str(e)}"

    return msgreply
def replymsg(driver, data):
    msg = message.normalize(data[3])
    num = numbers.normalize(data[0])
    try:
        nama_lengkap = msg.split(' nama lengkap ')[1].split(' email ')[0]
        email = data[3].lower().replace(':', '').replace(',', '').replace(
            '\n', '').split(' email ')[1].split(' alamat lengkap ')[0]
        alamat_lengkap = data[3].lower().replace(':', '').replace(
            ',', '').replace('\n', '').split(' alamat lengkap ')[1]
    except:
        return 'salah keywordnya nihhh, formatnya seperti ini yaaa.' \
               '\n*iteung daftar seminar nama lengkap: tri angga dio Simamora, email: [email protected], alamat lengkap: JL. SariAsih No. 54, Kota Bandung*'
    if isTerdaftar(num):
        updateDataSeminar(nama_lengkap, email, num, alamat_lengkap)
        return f'Nomor anda ({num}) sudah terdaftar sebagai peserta dan sudah {config.bot_name} update untuk datanya sebagai berikut.\n\n' \
               f'Nama Lengkap: {nama_lengkap}\n' \
               f'No. Handphone: {num}\n' \
               f'E-Mail: {email}\n' \
               f'Alamat Lengkap: {alamat_lengkap}\n\n' \
               f'Mohon kehadirannya tepat waktu, {config.bot_name} ucapkan Terima Kasih.'
    daftarSeminar(nama_lengkap, email, num, alamat_lengkap)
    return f'oke sudah {config.bot_name} daftarin ya berikut datanya.\n\n' \
           f'Nama Lengkap: {nama_lengkap}\n' \
           f'No. Handphone: {num}\n' \
           f'E-Mail: {email}\n' \
           f'Alamat Lengkap: {alamat_lengkap}\n\n' \
           f'Mohon kehadirannya tepat waktu yaaa, {config.bot_name} ucapkan Terima Kasih'
def replymsg(driver, data):
    wmsg = reply.getWaitingMessage(os.path.basename(__file__).split('.')[0])
    wa.typeAndSendMessage(driver, wmsg)
    num = numbers.normalize(data[0])
    kodeDosen = kelas.getKodeDosen(num)    
    msgreply = ""
    try:
        nipyKaBaak = getKaBaak()
        kodeKaBaak = getKodeDosen(nipyKaBaak)
        
        if(kodeDosen == kodeKaBaak):
            datas = dataSumbitSKMK()
            if datas:
                for npm in datas:
                    approveSKMK(npm[0], kodeDosen)
                    
                msgreply = "Sudah di approve semua yg ada di list.."
            else:
                msgreply = "Gak ada yg di approve.., karena gak ada datanya.."
        else:
            msgreply = "Haha.. lucu ya, ternyata anda bukan siapa-siapa untuknya ya..."
    except Exception as e: 
        msgreply = f"Error {str(e)}"
    
    return msgreply
def studentattendance(grp, jadwalid, tipe):
    jadwalserial = getJadwalSerial(jadwalid=jadwalid)
    if jadwalserial == '0':
        jadwalid = jadwalid
    else:
        jadwalid = jadwalserial
    studentabsent = pesertaAbsensi(jadwalid=jadwalid)
    if studentabsent != ():
        datastudentabsenfromsiap = []
        for data in studentabsent:
            datastudentabsenfromsiap.append(data[-1])
        npmdata = []
        studentnumberphone = getnumonly(groupname=grp, tipe=tipe)
        for phonenumber in studentnumberphone:
            npm = getNpmandNameMahasiswa(numbers.normalize(phonenumber[0]))
            if npm is not None:
                npmdata.append(npm[0])
        attend = []
        for npm in npmdata:
            if npm in datastudentabsenfromsiap:
                index = datastudentabsenfromsiap.index(npm)
                attend.append(npm)
                datastudentabsenfromsiap.pop(index)
        notattend = []
        for notattendstudentid in datastudentabsenfromsiap:
            notattend.append(notattendstudentid)
        resultattend = []
        resultattend.append(attend)
        resultattend.append(notattend)
    else:
        resultattend = ''
    return resultattend
def replymsg(driver, data):
    wmsg = reply.getWaitingMessage(os.path.basename(__file__).split('.')[0])
    wa.typeAndSendMessage(driver, wmsg)
    num = numbers.normalize(data[0])
    kodeDosen = kelas.getKodeDosen(num)
    # tahun_id = '20192'
    tahun_id = kelas.getTahunID()
    try:
        npm = [
            npm for npm in data[3].split(' ')
            if npm.isdigit() and len(npm) == 7
        ][0]
        if checkMhs(npm, kodeDosen):
            approveRevisiSidang(npm, kodeDosen, tahun_id)
            msgreply = f"Dah diapprove ya {npm} oleh {kodeDosen}"
            if checkRevisiStatus(npm, tahun_id):
                kategori = getKategoriSidang(npm, tahun_id)
                makeBeritaAcara(npm, tahun_id, kategori)
            else:
                pass
                print("Belum boleh boy")
        else:
            msgreply = f"Anda bukan penguji {npm}"

    except Exception as e:
        msgreply = f"Error {str(e)}"

    return msgreply
Example #11
0
def replymsg(driver, data):
    num = numbers.normalize(data[0])
    msgreply = f'okeeeeeee tunggu yaaa sekitaran 15-20 menit, dan akan {config.bot_name} kirim ke linknya nanti ke nomor {num} yaaa....'
    subprocess.Popen(
        ["python", "run.py",
         os.path.basename(__file__).split('.')[0], num],
        cwd=config.cwd)
    return msgreply
Example #12
0
def getHomebase(num):
    num=numbers.normalize(num)
    db=kelas.dbConnectSiap()
    sql="select `Nama` from simak_mst_prodi WHERE ProdiID=(select Homebase from simak_mst_dosen WHERE Handphone='{phonenumber}')".format(phonenumber=num)
    with db:
        cur=db.cursor()
        cur.execute(sql)
        row=cur.fetchone()
        return row[0]
def replymsg(driver, data):
    wmsg = reply.getWaitingMessage(os.path.basename(__file__).split('.')[0])
    wa.typeAndSendMessage(driver, wmsg)
    msg = data[3].lower()
    num = numbers.normalize(data[0])
    # tahun_id = '20192'
    tahun_id = kelas.getTahunID()
    if kelas.getKodeDosen(num):
        kodeDosen = kelas.getKodeDosen(num)
        try:
            npm = [
                npm for npm in msg.split(' ')
                if npm.isdigit() and len(npm) == 7
            ][0]
        except:
            npm = None

        if npm:
            try:
                if checkMhs(npm):
                    if checkRevisi(npm, tahun_id):
                        msgreply = "Ini revisian dari Anda cuy..." + checkRevisi(
                            npm, tahun_id)
                    else:
                        msgreply = "Emg udh masukin revisi???"
                else:
                    msgreply = "Salah mahasiswa ato npm mungkin..."
            except Exception as e:
                msgreply = f"Error {str(e)}"
        else:
            try:
                if checkRevisiPenguji(tahun_id, kodeDosen):
                    msgreply = "Ini revisian dari anda cuy..." + checkRevisiPenguji(
                        tahun_id, kodeDosen)
                else:
                    msgreply = "Emg udh masukin revisi???"
            except Exception as e:
                msgreply = f"Error {str(e)}"

    elif kelas.getNpmandNameMahasiswa(num):
        npm, nama = kelas.getNpmandNameMahasiswa(num)
        try:
            if checkMhs(npm):
                if checkRevisi(npm, tahun_id):
                    msgreply = "Selamat revisian cuy..., semangat <3<3" + checkRevisi(
                        npm, tahun_id)
                else:
                    msgreply = "Kamu emg udh sidang? jgn ngadi-ngadi deh..., mungkin aja blm dibikin revisinya sama penguji bersangkutan..., semangat <3<3"
            else:
                msgreply = "Kamu emg ikutan sidang? jgn ngadi-ngadi deh..."
        except Exception as e:
            msgreply = f"Error {str(e)}"
    else:
        msgreply = f"Hayoo siapa kamu"

    return msgreply
Example #14
0
def replymsg(driver, data):
    if kelas.cekSiap():
        wmsg = reply.getWaitingMessage(
            os.path.basename(__file__).split('.')[0])
        wa.typeAndSendMessage(driver, wmsg)
        num = data[0]
        num = numbers.normalize(num)
        msg = data[3]
        data = msg.split(' ')
        # error ketika uas
        try:
            if 'matkul' in data and 'jadwal' not in data:
                matkul = data[data.index('matkul') + 1] if any(
                    char.isdigit()
                    for char in data[data.index('matkul') + 1]) else False
                kelass = data[data.index('kelas') +
                              1].upper() if len(data[data.index('kelas') +
                                                     1]) < 2 else False

                if matkul and kelass:
                    datas = {
                        'tahun': kelas.getTahunID(),
                        'kode_matkul': matkul,
                        'kelas': convertKelas(kelass),
                        'jadwal': 0
                    }

                    msgreply = mainCekNilai(num, datas)

                    msgreply = "Ini nilai ujian yang Bapak/Ibu minta\n\n" + msgreply
                else:
                    msgreply = 'Salah keyword beb...................'
            elif 'jadwal' in data and 'matkul' not in data:
                jadwal = data[data.index('jadwal') + 1] if all(
                    char.isdigit()
                    for char in data[data.index('jadwal') + 1]) else False
                if jadwal:
                    datas = {
                        'tahun': kelas.getTahunID(),
                        'kode_matkul': 0,
                        'kelas': 0,
                        'jadwal': jadwal
                    }

                    msgreply = mainCekNilai(num, datas)

                    msgreply = "Ini nilai ujian yang Bapak/Ibu minta\n\n" + msgreply
                else:
                    msgreply = 'Salah keyword beb...............................'
            else:
                msgreply = 'Salah keyword beb......'
        except:
            msgreply = 'Salah keyword beb....., atau salah masukin jadwal uas atau uts'
    else:
        msgreply = 'Mohon maaf server Akademik SIAP sedang dalam kondisi DOWN, mohon untuk menginformasikan ke ADMIN dan tunggu hingga beberapa menit kemudian, lalu ulangi kembali, terima kasih....'
    return msgreply
Example #15
0
def getNpmandNameMahasiswa(num):
    num = numbers.normalize(num)
    db = dbConnectSiap()
    sql = "select MhswID, Nama from simak_mst_mahasiswa where Handphone = '{0}'".format(
        num)
    with db:
        cur = db.cursor()
        cur.execute(sql)
        rows = cur.fetchone()
        if rows is not None:
            return rows
Example #16
0
def replymsg(driver, data):
    num = numbers.normalize(data[0])
    main(num)
    bkd.mail(
        kelas.getEmailDosen(kelas.getKodeDosen(num)),
        f'yooo watsapppp mennnnn {config.bot_name} kirim file BERITA ACARA PITAK nihhhh',
        f'cek cek dulu ya filenya.....',
        bkd.getFilePath(kelas.getEmailDosen(kelas.getKodeDosen(num)),
                        'beritaacarapitak'))
    msgreply = f"Sampun yo.. coba cek emailnyaa yaaa yang {kelas.getEmailDosen(kelas.getKodeDosen(num))}"
    return msgreply
Example #17
0
def replymsg(driver, data):
    num = numbers.normalize(data[0])
    msg = message.normalize(data[3])
    data = f'{num};{msg}'
    wmsg = reply.getWaitingMessage(os.path.basename(__file__).split('.')[0])
    wmsg = wmsg.replace('#BOTNAME#', config.bot_name)
    subprocess.Popen(
        ["python", "run.py",
         os.path.basename(__file__).split('.')[0], data],
        cwd=config.cwd)
    return wmsg
Example #18
0
def replymsg(driver, data):
    kodedosen = kelas.getKodeDosen(data[0])
    num = numbers.normalize(data[0])
    wmsg = reply.getWaitingMessage(os.path.basename(__file__).split('.')[0])
    wmsg = wmsg.replace('#EMAIL#', siap_jadwal.getEmailDosen(kodedosen))
    wmsg = wmsg.replace('#BOTNAME#', config.bot_name)
    subprocess.Popen(
        ["python", "run.py",
         os.path.basename(__file__).split('.')[0], num],
        cwd=config.cwd)
    return wmsg
Example #19
0
def getMahasiswa(num):
    num = numbers.normalize(num)
    db = kelas.dbConnectSiap()
    sql = "select MhswID, ProdiID, Email from simak_mst_mahasiswa where Handphone = '{0}'".format(num)
    with db:
        cur = db.cursor()
        cur.execute(sql)
        row = cur.fetchone()
        if row is not None:
            return [row[0], row[1], row[2]]
        else:
            return False
Example #20
0
def getDosen(num):
    num = numbers.normalize(num)
    db = kelas.dbConnectSiap()
    sql = "select Login, Email from simak_mst_dosen where Handphone = '{0}'".format(num)
    with db:
        cur = db.cursor()
        cur.execute(sql)
        row = cur.fetchone()
        if row is not None:
            return [row[0], row[1]]
        else:
            return False
Example #21
0
def getDosenHomebase(phonenumber):
    num = numbers.normalize(phonenumber)
    db = kelas.dbConnectSiap()
    sql = f'select Homebase from simak_mst_dosen WHERE Handphone="{num}"'
    with db:
        cur = db.cursor()
        cur.execute(sql)
        row = cur.fetchone()
        if row is not None:
            return row[0]
        else:
            return None
Example #22
0
def getDataVaforMahasiswa(phonenumber):
    phonenumber = numbers.normalize(phonenumber)
    db = va_parent.dbConnectVA()
    sql = f"select virtual_account, customer_name, customer_email, customer_phone, trx_amount from upload where customer_phone='{phonenumber}' ORDER BY upload_id DESC LIMIT 1"
    with db:
        cur = db.cursor()
        cur.execute(sql)
        row = cur.fetchone()
        if row is not None:
            return row
        else:
            return None
def getDataDosen(num):
    db=kelas.dbConnectSiap()
    num=numbers.normalize(num)
    sql="select Login, Nama, Handphone, Email from simak_mst_dosen where Handphone='{num}'".format(num=num)
    with db:
        cur=db.cursor()
        cur.execute(sql)
        row=cur.fetchone()
        if row is not None:
            return row
        else:
            return None
Example #24
0
def getNIPYfromHandphone(num):
    num = numbers.normalize(num)
    db = kelas.dbConnectSiap()
    sql = f'select NIPY from simak_mst_dosen where Handphone="{num}"'
    with db:
        cur = db.cursor()
        cur.execute(sql)
        row = cur.fetchone()
        if row is not None:
            return row[0]
        else:
            return None
def getDataMahasiswa(phonenumber):
    phonenumber=numbers.normalize(phonenumber)
    db=kelas.dbConnectSiap()
    sql=f'select MhswID, Nama, ProdiID, Handphone, Email, PenasehatAkademik from simak_mst_mahasiswa where Handphone="{phonenumber}"'
    with db:
        cur=db.cursor()
        cur.execute(sql)
        row=cur.fetchone()
        if row is not None:
            return row
        else:
            return None
def getStartDate(num, tipe_bimbingan):
    num = numbers.normalize(num)
    db = kelas.dbConnectSiap()
    sql = f"select `Start_{tipe_bimbingan}` from simak_mst_prodi WHERE ProdiID=(select Homebase from simak_mst_dosen WHERE Handphone='{num}')"
    with db:
        cur = db.cursor()
        cur.execute(sql)
        row = cur.fetchone()
        if row is not None:
            ret = row[0]
        else:
            ret = None
    return ret
Example #27
0
def getKodeDosen(num):
    num = numbers.normalize(num)
    kodedosen = ''
    db = dbConnectSiap()
    sql = "select Login from simak_mst_dosen where Handphone = '{0}'".format(
        num)
    with db:
        cur = db.cursor()
        cur.execute(sql)
        rows = cur.fetchone()
        if rows is not None:
            kodedosen = rows[0]
    return kodedosen
Example #28
0
def run(data):
    num = data.split(';')[0]
    msg = data.split(';')[1]
    if isKaprodi(getNIPYfromHandphone(num)):
        status = 'kaprodi'
    else:
        status = 'deputi'
    if status == 'kaprodi':
        msgreply = infoBAPKaprodi(
            f'.{kelas.getAllDataDosens(kelas.getKodeDosen(num))[20]}.')
    else:
        msgreply = infoBAPDeputi(msg)
    wa.setOutbox(numbers.normalize(num), msgreply[0])
Example #29
0
def replymsg(driver, data):
    ssl._create_default_https_context = ssl._create_unverified_context
    num = numbers.normalize(data[0])
    tipe_bimbingan = cek_bimbingan_dosen.cekTipeBimbingan(data[3])
    main(num, tipe_bimbingan)
    bkd.mail(
        kelas.getEmailDosen(kelas.getKodeDosen(num)),
        f'yooo watsapppp mennnnn {config.bot_name} kirim file BERITA ACARA PITAK nihhhh',
        f'cek cek dulu ya filenya.....',
        bkd.getFilePath(kelas.getEmailDosen(kelas.getKodeDosen(num)),
                        'beritaacarapitak', kelas.getTahunID()))
    msgreply = f"Sampun yo.. coba cek emailnyaa yaaa yang {kelas.getEmailDosen(kelas.getKodeDosen(num))}"
    return msgreply
def getDataForKaprodi(num):
    num = numbers.normalize(num)
    db = kelas.dbConnectSiap()
    sql = "select NIPY, Homebase from simak_mst_dosen where Handphone='{phonenumber}'".format(
        phonenumber=num)
    with db:
        cur = db.cursor()
        cur.execute(sql)
        row = cur.fetchone()
        if row is not None:
            ret = row
        else:
            ret = None
    return ret