# pip install xlwings
# xlwings - slow, save > droplist

import os
import shutil
import xlwings as xw

# Create directory
def CreateDirectory() :
    print("Create Directory")
    print("------------------------------------------------------------")
    for teacher in teachers :
        dir_name = teacher.split()[0]
        
        if not os.path.exists(dir_name) :
            os.mkdir(dir_name)
            print(f"Directory {dir_name} created")
        else:
            print(f"Directory {dir_name} already exists")
    print("------------------------------------------------------------")

# Remove directory
def RemoveDirectory() :
    print("Remove Directory")
    print("------------------------------------------------------------")
    for teacher in teachers :
        dir_name = teacher.split()[0]
        
        if os.path.exists(dir_name) :
            shutil.rmtree(dir_name, ignore_errors=True)
            print(f"Directory {dir_name} removed")
        else:
            print(f"Directory {dir_name} does not exists")
    print("------------------------------------------------------------")
    
# Score-Advisor
def Advisor() :
    for teacher in teachers :
        book_name  = "Score-Advisor.xlsx"
        sheet_name = "project"        
        
        dir_name   = teacher.split()[0]
        path_name  = f"{dir_name}\{book_name}"

        print(f"{path_name}")
        print("------------------------------------------------------------")
        
        # Select Project
        results = []
        count = 0
        for project in projects :
            
            advisor = project.split(",")[1]
            if teacher in advisor :        
                count = count + 1                
                results.append((count, project))
                print(f"{count:<3} {project}")
        
        # Write Excel
        with xw.App() as app:
            wb = xw.Book(book_name)
            ws = wb.sheets[sheet_name]
            ws.clear()
        
            row = 1
            for data in results :
                cell = f"A{row}"
                ws.range(cell).value = data
                row = row + 1
                
            wb.save(path_name)
            wb.close()

        print("------------------------------------------------------------")

# Score-Project
def Project() :
    for teacher in teachers :
        book_name  = "Score-Project.xlsx"
        sheet_name = "project"   

        dir_name   = teacher.split()[0]
        path_name  = f"{dir_name}\{book_name}"

        print(f"{path_name}")
        print("------------------------------------------------------------")
        
        # Select Project
        results = []
        count = 0
        for project in projects :
            
            if teacher in project :
                count = count + 1                
                results.append((count, project))
                print(f"{count:<3} {project}")

        # Write Excel
        with xw.App() as app:
            wb = xw.Book(book_name)
            ws = wb.sheets[sheet_name]
            ws.clear()
        
            row = 1
            for data in results :
                cell = f"A{row}"
                ws.range(cell).value = data
                row = row + 1
                
            wb.save(path_name)
            wb.close()
        
        print("------------------------------------------------------------")

#
# Main program
#
teachers = [
"จรรยา สายนุ้ย",
"จารุณี ดวงสุวรรณ",
"ชินพงศ์ อังสุโชติเมธี",
"เชาวนี ศรีวิศาล",
"นิธิ ทะนนท์",
"พรรณนิภา แซ่อึ้ง",
"เพ็ญณี หวังเมธีกุล",
"ภัทร อัยรักษ์",
"วรารัตน์ จักรหวัด",
"วิภาดา เวทย์ประสิทธิ์",
"ศิริรัตน์ วณิชโยบล",
"สมภพ ลิ้มสุนทรากูล",
"สมศรี จารุผดุง",
"สาธิต อินทจักร์",
"สุนิดา รัตโนทยานนท์",
"สุภาภรณ์ กานต์สมเกียรติ"
]

projects = [
"CA-64-353,ผศ.ดร.ชินพงศ์ อังสุโชติเมธี,ระบบสร้างแชทบอท API โดยอาศัยเทคนิค Retrieval Augmentation Generation และ Large Language Model,6410210353 นาย อนาวิล ไชยกูล,ดร.สมภพ ลิ้มสุนทรากูล,ผศ.ดร.สุภาภรณ์ กานต์สมเกียรติ",
"CA-64-379,ผศ.ดร.ชินพงศ์ อังสุโชติเมธี,CFMe : โปรแกรมประเมินคาร์บอนฟูตปรินท์ส่วนบุคคลด้วยตนเอง,6410210379 นาย อารีฟ มะเม๊าะ,ดร.สมภพ ลิ้มสุนทรากูล,ผศ.ดร.สุภาภรณ์ กานต์สมเกียรติ",
"CS-64-056,อ.เชาวนี ศรีวิศาล,การพัฒนาเกม Escape Room ให้เล่นบน Browser,6410210056 นาย จิรเมธ วรรณทอง,ผศ.ดร.ภัทร อัยรักษ์,ผศ.นิธิ ทะนนท์",
"CS-64-420,อ.เชาวนี ศรีวิศาล,การพัฒนาแอปพลิเคชันแลกขวดน้ำเป็นแต้มสะสม,6410210420 นาย จตุพร อาวัชนาการ,ผศ.ดร.ภัทร อัยรักษ์,ผศ.นิธิ ทะนนท์",
"JD-64-387,ผศ.ดร.จารุณี ดวงสุวรรณ, ระบบตรวจจับและแยกประเภททุเรียนด้วย YOLO,6410210387 นาย ฮากิม ขวัญฤกษ์,ผศ.ดร.วิภาดา เวทย์ประสิทธิ์,รศ.ดร.ศิริรัตน์ วณิชโยบล",
"JD-64-441,ผศ.ดร.จารุณี ดวงสุวรรณ,ระบบการคาดการณ์แนวโน้มก๊าซคาร์บอนไดออกไซต์,6410210441 นาย ชยธร เที่ยงธรรม,ผศ.ดร.วิภาดา เวทย์ประสิทธิ์,รศ.ดร.ศิริรัตน์ วณิชโยบล",
"JS-64-129,ผศ.จรรยา สายนุ้ย,ระบบขายอาหารสัตว์เลี้ยง,6410210129 นาย ธนพล สัมฤทธิ์,ดร.วรารัตน์ จักรหวัด,อ.เชาวนี ศรีวิศาล",
"NT-64-075,ผศ.นิธิ ทะนนท์,ระบบขายน้ำกะทิสด,6410210075 นาย ชัยวรงค์ สมานชาติ,อ.สมศรี จารุผดุง,ดร.วรารัตน์ จักรหวัด",
"NT-64-780,ผศ.นิธิ ทะนนท์,ระบบประเมินผลการเรียน,6410210780 น.ส. นันธิดา รัตนวิมล,อ.สุนิดา รัตโนทยานนท์,ผศ.ดร.เพ็ญณี หวังเมธีกุล",
"PA-64-102,ผศ.ดร.ภัทร อัยรักษ์,ระบบตรวจวัดมลภาวะสำหรับการเฝ้าระวังคุณภาพอากาศด้วยตัวตรวจวัดชนิด IOT ผ่าน Web Application,6410210102 นาย ณัฐภาส ขำเกิด,ดร.พรรณนิภา แซ่อึ้ง,ผศ.จรรยา สายนุ้ย",
"PA-64-191,ผศ.ดร.ภัทร อัยรักษ์,Web Application สำหรับระบบนิทานอิสปแบบมัลติมิเดียสำหรับนักเรียนระดับประถมศึกษา,6410210191 นาย ปวิตร สุวรรณรัตน์,ดร.พรรณนิภา แซ่อึ้ง,ผศ.จรรยา สายนุ้ย",
"PS-64-036,ดร.พรรณนิภา แซ่อึ้ง,ระบบคิดค่าน้ำค่าไฟของร้านค้า (โรงช้าง),6410210036 น.ส. เกศแก้ว ยั่งยืน,อ.เชาวนี ศรีวิศาล,ผศ.ดร.สุภาภรณ์ กานต์สมเกียรติ",
"PS-64-501,ดร.พรรณนิภา แซ่อึ้ง,พัฒนาแชทบอท LINE OA เพื่อเพิ่มยอดขายสำหร้บร้านขนม,6410210501 นาย ธนัท โชคธนัทธีราทร,รศ.ดร.สาธิต อินทจักร์,ผศ.ดร.สุภาภรณ์ กานต์สมเกียรติ",
"PW-64-702,ผศ.ดร.เพ็ญณี หวังเมธีกุล,ระบบลางาน,6410210702 น.ส. อารีนา เกะรา,ผศ.จรรยา สายนุ้ย,อ.สุนิดา รัตโนทยานนท์",
"PW-64-776,ผศ.ดร.เพ็ญณี หวังเมธีกุล,ระบบควบคุมพฤติกรรมการใช้จ่าย,6410210776 น.ส. ฮัซมา อุเซ็ง,ผศ.จรรยา สายนุ้ย,อ.สุนิดา รัตโนทยานนท์",
"SJ-64-104,อ.สมศรี จารุผดุง,ระบบให้คำปรึกษาด้านสุขภาพ,6410210104 นาย ณัฐสิทธิ์ หมานละงู,ดร.วรารัตน์ จักรหวัด,ผศ.นิธิ ทะนนท์",
"SK-64-143,ผศ.ดร.สุภาภรณ์ กานต์สมเกียรติ,ระบบบริหารและติดตามการทดสอบซอฟแวร์,6410210143 นาย ธีรเทพ แก้วพิทักษ์,ดร.พรรณนิภา แซ่อึ้ง,รศ.ดร.สาธิต อินทจักร์",
"SK-64-733,ผศ.ดร.สุภาภรณ์ กานต์สมเกียรติ,ระบบขายเสื้อผ้าออนไลน์,6410210733 น.ส. ซีตีพาตีเม๊าะ แสแตแล,ดร.พรรณนิภา แซ่อึ้ง,รศ.ดร.สาธิต อินทจักร์",
"SL-64-543,ดร.สมภพ ลิ้มสุนทรากูล,ระบบช่วยนำทางในอาคารสำหรับอุปกรณ์พกพาโดยใช้โครงข่ายประสาทเทียมแบบ CNN ,6410210543 น.ส. บัณฑิตา ยิ้มยิ่ง,ผศ.ดร.ชินพงศ์ อังสุโชติเมธี,รศ.ดร.สาธิต อินทจักร์",
"SL-64-631,ดร.สมภพ ลิ้มสุนทรากูล,ระบบแนะนำเมนูอาหารจากวัตถุดิบ,6410210631 นาย วราวุฒิ เลาหะกุล,ผศ.ดร.ชินพงศ์ อังสุโชติเมธี,ดร.วรารัตน์ จักรหวัด",
"SR-64-027,อ.สุนิดา รัตโนทยานนท์,ระบบเชื่อมโยงการจัดการฟาร์มกุ้ง,6410210027 นาย กิตติ แก้วประดิษฐ์,ผศ.นิธิ ทะนนท์,ผศ.ดร.เพ็ญณี หวังเมธีกุล",
"SR-64-297,อ.สุนิดา รัตโนทยานนท์,ระบบจัดการรายการสั่งอาหารออนไลน์,6410210297 น.ส. ศศิธร ทองปลาง,ดร.พรรณนิภา แซ่อึ้ง,ผศ.ดร.เพ็ญณี หวังเมธีกุล",
"SV-64-161,รศ.ดร.ศิริรัตน์ วณิชโยบล,การวิเคราะห์และคาดการณ์การบาดเจ็บของผู้เล่นบาสเกตบอล,6410210161 น.ส. นันทิตา พัชรนนท์,ผศ.ดร.วิภาดา เวทย์ประสิทธิ์,ผศ.ดร.จารุณี ดวงสุวรรณ",
"SV-64-457,รศ.ดร.ศิริรัตน์ วณิชโยบล,การวิเคราะห์์และพยากรณ์ราคาหุ้น,6410210457 นาย ซัลมาน สาเล็ง,ผศ.ดร.วิภาดา เวทย์ประสิทธิ์,ผศ.ดร.จารุณี ดวงสุวรรณ",
"SV-64-598,รศ.ดร.ศิริรัตน์ วณิชโยบล,การวิเคราะห์และพยากรณ์ฝุ่น PM2.5 กรณีศึกษากรุงเทพมหานคร,6410210598 นาย มูฮัยมีน เจะนะ,ผศ.ดร.วิภาดา เวทย์ประสิทธิ์,ผศ.ดร.จารุณี ดวงสุวรรณ",
"WJ-64-235,ดร.วรารัตน์ จักรหวัด,ระบบจัดการแผนการสอน กรณีศึกษาโรงเรียนพิมานพิทยาสรรค์,6410210235 นาย ฟาร์ดี เกปัน,อ.เชาวนี ศรีวิศาล,อ.สมศรี จารุผดุง",
"WJ-64-425,ดร.วรารัตน์ จักรหวัด,ระบบแนะนำหอพักภายนอกมหาวิทยาลัยสำหรับนักศึกษา,6410210425 น.ส. จิราภรณ์ แสนหูม,อ.เชาวนี ศรีวิศาล,อ.สมศรี จารุผดุง",
"WW-64-371,ผศ.ดร.วิภาดา เวทย์ประสิทธิ์,ระบบวิเคราะห์ธุรกิจธนาคารในประเทศไทย,6410210371 นาย อัฐพงศ์ อินวัง,รศ.ดร.ศิริรัตน์ วณิชโยบล,ผศ.ดร.จารุณี ดวงสุวรรณ",
]

RemoveDirectory()

CreateDirectory()

Advisor()

Project()
