from fpdf import FPDF
import directory
from directory import REPORT_FILELIST, EBSI_FILELIST, MDD_FILELIST
import os
import shutil
import time

REPORT_DIR = None
BASE_DIR_com = directory.BASE_DIR_com
BASE_DIR_HOS = directory.BASE_DIR_HOS
hos_msn = directory.hos_msn
link_infos = directory.link_infos
link_infos_en = directory.link_infos_en
brain_ebsi_link_infos = directory.brain_ebsi_link_infos
mind_ebsi_link_infos = directory.mind_ebsi_link_infos
def make_pdf(RESULT_DIR, name, password='N', birth='', eeg_only=False, ppg_only=False, msn=1, eeg_subtype = None ,ppg_subtype = None, reportLanguage = "kr"):

    global REPORT_DIR
    REPORT_DIR = os.path.join(RESULT_DIR, "../")
    eeg_ebsi = directory.brain_ebsi_index[eeg_subtype]
    ppg_ebsi = directory.mind_ebsi_index[ppg_subtype]

    if password == "Y": name = "temp_" + name
    
    if (eeg_only == False) & (ppg_only == False):
        report_make_pdf(RESULT_DIR, name, msn=msn, eeg_ebsi = eeg_ebsi, ppg_ebsi= ppg_ebsi, reportLanguage=reportLanguage)
    elif eeg_only == True:
        report_make_eeg_only_pdf(RESULT_DIR, name, msn=msn, eeg_ebsi = eeg_ebsi, reportLanguage=reportLanguage)
    elif ppg_only == True:
        report_make_ppg_only_pdf(RESULT_DIR, name, msn=msn, ppg_ebsi= ppg_ebsi, reportLanguage=reportLanguage)

    if password == 'Y':
        directory.encrypt_pdf(REPORT_DIR, name+'.pdf', birth)
        os.remove(os.path.join(REPORT_DIR, name +'.pdf'))



def report_make_pdf(RESULT_DIR, name, msn=1, eeg_ebsi = 0, ppg_ebsi = 0,reportLanguage = "kr"):
    eeg_ebsi = eeg_ebsi
    ppg_ebsi= ppg_ebsi
    '''
    PDF Setting
    '''
    # Global Variables
    WIDTH = 210
    HEIGHT = 297
    
    # Create PDF
    pdf = FPDF()  # A4 (210 by 297 mm)
    pdf.set_y(-15)
    pdf.set_font('Arial', 'I', 8)
    pdf.set_text_color(128)
    '''
    First Page of PDF / 표지
    '''
    if msn != "147": ##CECLAB 계정일 경우 표지는 생성하지 않음.
        pdf.add_page()  # Add Page

        pdf.image(os.path.join(RESULT_DIR, 'first_1.jpg'), 0, 0, WIDTH)  # Add Table

        if msn in hos_msn:
            pdf.add_page()
            pdf.image(os.path.join(RESULT_DIR,'first_2_1.jpg'),0,0,WIDTH)   # 건강검진 요약 페이지 

    '''
    Second Page of PDF / 요약
    '''
    pdf.add_page()

    pdf.image(os.path.join(RESULT_DIR, "first_2.jpg"), 0, 0, WIDTH)
    pdf.image(os.path.join(RESULT_DIR, "second_2.jpg"), 0, 124, WIDTH)
    pdf.image(os.path.join(RESULT_DIR, "third_2.jpg"), 0, 203, WIDTH)
    '''
    Third Page of PDF / 두뇌1
    '''
    pdf.add_page()

    pdf.image(os.path.join(RESULT_DIR, "first_3.jpg"), 0, 0, WIDTH)
    pdf.image(os.path.join(RESULT_DIR, "second_3.jpg"), 0, 136.7, WIDTH)
    '''
    Fourth Page of PDF / 두뇌2
    '''
    pdf.add_page()
    pdf.image(os.path.join(RESULT_DIR, "first_4.jpg"), 0, 0, WIDTH)
    pdf.image(os.path.join(RESULT_DIR, "second_4.jpg"), 0, 98, WIDTH)
    pdf.image(os.path.join(RESULT_DIR, "third_4.jpg"), 0, 98 + 89, WIDTH)
    '''
    Fifth Page of PDF / 마음1
    '''
    pdf.add_page()
    pdf.image(os.path.join(RESULT_DIR, "first_5.jpg"), 0, 0, WIDTH)
    pdf.image(os.path.join(RESULT_DIR, "second_5.jpg"), 0, 122, WIDTH)
    pdf.image(os.path.join(RESULT_DIR, "third_5.jpg"), 0, 122 + 92, WIDTH)
    '''
    Sixth Page of PDF / 마음2
    '''
    pdf.add_page()
    pdf.image(os.path.join(RESULT_DIR, "first_6.jpg"), 0, 0, WIDTH)
    pdf.image(os.path.join(RESULT_DIR, "second_6.jpg"), 0, 131, WIDTH)

    '''
    Seventh Page of PDF / 통계
    '''
    pdf.add_page()
    pdf.image(os.path.join(RESULT_DIR, "first_7.jpg"), 0, 0, WIDTH)

    '''
    MDD(우울증) AI 진단 페이지 - mddUse==1 일 때만 생성됨. hos_msn/ai_use 여부와
    무관하게 EBSI 리포트 바로 앞에 삽입한다.
    '''
    if os.path.exists(os.path.join(RESULT_DIR, 'mdd_report.jpg')):
        pdf.add_page()
        pdf.image(os.path.join(RESULT_DIR, 'mdd_report.jpg'), 0, 0, WIDTH)

   # EBSI

    if msn in hos_msn:
        '''
        First Page of PDF / 표지
        '''
        pdf.add_page()  # Add Page

        pdf.image(os.path.join(RESULT_DIR, 'first_1_ebsi.jpg'), 0, 0, WIDTH)  # Add Table
        
        '''
        Third Page of PDF / 두뇌 SUBTYPE
        '''
        pdf.add_page()

        pdf.image(os.path.join(RESULT_DIR, "first_3_ebsi.jpg"), 0, 0, WIDTH)
        '''
        Fourth Page of PDF / 마음 SUBTYPE
        '''
        pdf.add_page()
        pdf.image(os.path.join(RESULT_DIR, "first_4_ebsi.jpg"), 0, 0, WIDTH)
        '''
        Second Page of PDF / 요약
        '''
        pdf.add_page()

        pdf.image(os.path.join(RESULT_DIR, "first_2_ebsi.jpg"), 0, 5, WIDTH)
                
        '''
        Sixth Page of PDF / 계약 기관 리스트 페이지 
        '''
        if os.path.exists(os.path.join(RESULT_DIR, 'first_list.jpg')):
            pdf.add_page()
            pdf.image(os.path.join(RESULT_DIR, 'first_list.jpg'),10.75,10,188.5,277)

        # 파란 테두리와 링크 삽입
            #pdf.set_draw_color(0, 0, 255)
            #pdf.set_line_width(0.5)
            
            #두뇌건강 치유옵션 링크삽입 2025.06.30 치유옵션 링크추가
            pdf.link(x=brain_ebsi_link_infos["x"], y=brain_ebsi_link_infos["y"], w=brain_ebsi_link_infos["w"], h=brain_ebsi_link_infos["h"], link=brain_ebsi_link_infos[eeg_ebsi])
            #pdf.rect(x=brain_ebsi_link_infos["x"], y=brain_ebsi_link_infos["y"], w=brain_ebsi_link_infos["w"], h=brain_ebsi_link_infos["h"])
            #마음건강 치유옵션 링크삽입
            pdf.link(x=mind_ebsi_link_infos["x"], y=mind_ebsi_link_infos["y"], w=mind_ebsi_link_infos["w"], h=mind_ebsi_link_infos["h"], link=mind_ebsi_link_infos[ppg_ebsi])
            #pdf.rect(x=mind_ebsi_link_infos["x"], y=mind_ebsi_link_infos["y"], w=mind_ebsi_link_infos["w"], h=mind_ebsi_link_infos["h"])
            if reportLanguage == "kr":
                for link in link_infos:
                    # 파트너, 미니, 홈페이지, 유튜브, 인스타, 블로그 링크 삽입
                    pdf.link(x=link["x"], y=link["y"], w=link["w"], h=link["h"], link=link["url"])
                    # 테두리 사각형 표시
                    #pdf.rect(x=link["x"], y=link["y"], w=link["w"], h=link["h"])
            else:
                for link in link_infos_en: #25.07.28 영문 치유옵션 래포트 업데이트
                    # 파트너, 미니, 홈페이지, 유튜브, 인스타, 블로그 링크 삽입
                    pdf.link(x=link["x"], y=link["y"], w=link["w"], h=link["h"], link=link["url"])
                    # 테두리 사각형 표시
                    pdf.rect(x=link["x"], y=link["y"], w=link["w"], h=link["h"])

    else:
        '''
        Sixth Page of PDF / 4class분류 페이지 
        '''

        if os.path.exists(os.path.join(RESULT_DIR, '4class.jpg')):
            pdf.add_page()
            pdf.image(os.path.join(RESULT_DIR, '4class.jpg'), 0, 0, WIDTH)
                    
        '''
        First Page of PDF / 표지
        '''
        pdf.add_page()  # Add Page

        pdf.image(os.path.join(RESULT_DIR, 'first_1_ebsi.jpg'), 0, 0, WIDTH)  # Add Table
        '''
        Second Page of PDF / 요약
        '''
        pdf.add_page()

        pdf.image(os.path.join(RESULT_DIR, "first_2_ebsi.jpg"), 0, 5, WIDTH)
        '''
        Third Page of PDF / 두뇌 SUBTYPE
        '''
        pdf.add_page()

        pdf.image(os.path.join(RESULT_DIR, "first_3_ebsi.jpg"), 0, 0, WIDTH)
        '''
        Fourth Page of PDF / 마음 SUBTYPE
        '''
        pdf.add_page()
        pdf.image(os.path.join(RESULT_DIR, "first_4_ebsi.jpg"), 0, 0, WIDTH)

        '''
        Fifth Page of PDF / 기관홍보 페이지
        '''
        if os.path.exists(os.path.join(RESULT_DIR, 'first_8.jpg')):
            pdf.add_page()
            pdf.image(os.path.join(RESULT_DIR, 'first_8.jpg'),0,0,WIDTH)
        

        
        '''
        Seventh Page of PDF / 계약 기관 리스트 페이지 
        '''
        if os.path.exists(os.path.join(RESULT_DIR, 'first_list.jpg')):
            pdf.add_page()
            pdf.image(os.path.join(RESULT_DIR, 'first_list.jpg'),10.75,10,188.5,277)

            # 파란 테두리와 링크 삽입
            #pdf.set_draw_color(0, 0, 255)
            #pdf.set_line_width(0.5)
            
            #두뇌건강 치유옵션 링크삽입
            pdf.link(x=brain_ebsi_link_infos["x"], y=brain_ebsi_link_infos["y"], w=brain_ebsi_link_infos["w"], h=brain_ebsi_link_infos["h"], link=brain_ebsi_link_infos[eeg_ebsi])
            #pdf.rect(x=brain_ebsi_link_infos["x"], y=brain_ebsi_link_infos["y"], w=brain_ebsi_link_infos["w"], h=brain_ebsi_link_infos["h"])
            #마음건강 치유옵션 링크삽입
            pdf.link(x=mind_ebsi_link_infos["x"], y=mind_ebsi_link_infos["y"], w=mind_ebsi_link_infos["w"], h=mind_ebsi_link_infos["h"], link=mind_ebsi_link_infos[ppg_ebsi])
            #pdf.rect(x=mind_ebsi_link_infos["x"], y=mind_ebsi_link_infos["y"], w=mind_ebsi_link_infos["w"], h=mind_ebsi_link_infos["h"])

            if reportLanguage == "kr":
                for link in link_infos:
                    # 파트너, 미니, 홈페이지, 유튜브, 인스타, 블로그 링크 삽입
                    pdf.link(x=link["x"], y=link["y"], w=link["w"], h=link["h"], link=link["url"])
                    # 테두리 사각형 표시
                    #pdf.rect(x=link["x"], y=link["y"], w=link["w"], h=link["h"])
            else:
                for link in link_infos_en: #25.07.28 영문 치유옵션 래포트 업데이트
                    # 파트너, 미니, 홈페이지, 유튜브, 인스타, 블로그 링크 삽입
                    pdf.link(x=link["x"], y=link["y"], w=link["w"], h=link["h"], link=link["url"])
                    # 테두리 사각형 표시
                    #pdf.rect(x=link["x"], y=link["y"], w=link["w"], h=link["h"])

    pdf.output(os.path.join(REPORT_DIR, name +  ".pdf"), 'F')

    for f in EBSI_FILELIST:
        try:
            os.remove(os.path.join(RESULT_DIR, f))
        except Exception as e:
            pass

    for f in REPORT_FILELIST:
        try:
            os.remove(os.path.join(RESULT_DIR, f))
        except Exception as e:
            pass

    for f in MDD_FILELIST:
        try:
            os.remove(os.path.join(RESULT_DIR, f))
        except Exception as e:
            pass

def report_make_eeg_only_pdf(RESULT_DIR, name, msn=1, eeg_ebsi = 0,reportLanguage = "kr"):
    '''
    PDF Setting
    '''
    # Global Variables
    WIDTH = 210
    HEIGHT = 297

    # Create PDF
    pdf = FPDF()  # A4 (210 by 297 mm)
    pdf.set_y(-15)
    pdf.set_font('Arial', 'I', 8)
    pdf.set_text_color(128)
    '''
    First Page of PDF / 표지
    '''

    if msn != "147": ##CECLAB 계정일 경우 표지는 생성하지 않음.
        pdf.add_page()  # Add Page

        pdf.image(os.path.join(RESULT_DIR, 'first_1.jpg'), 0, 0, WIDTH)  # Add Table
    
        if msn in hos_msn:
            pdf.add_page()
            pdf.image(os.path.join(RESULT_DIR,'first_2_1.jpg'),0,0,WIDTH)

    '''
    Second Page of PDF / 요약
    '''
    pdf.add_page()

    pdf.image(os.path.join(RESULT_DIR, "first_2.jpg"), 0, 0, WIDTH)
    pdf.image(os.path.join(RESULT_DIR, "second_2.jpg"), 0, 124, WIDTH)
    '''
    Third Page of PDF / 두뇌1
    '''
    pdf.add_page()

    pdf.image(os.path.join(RESULT_DIR, "first_3.jpg"), 0, 0, WIDTH)
    pdf.image(os.path.join(RESULT_DIR, "second_3.jpg"), 0, 136.7, WIDTH)
    '''
    Fourth Page of PDF / 두뇌2
    '''
    pdf.add_page()
    pdf.image(os.path.join(RESULT_DIR, "first_4.jpg"), 0, 0, WIDTH)
    pdf.image(os.path.join(RESULT_DIR, "second_4.jpg"), 0, 98, WIDTH)
    pdf.image(os.path.join(RESULT_DIR, "third_4.jpg"), 0, 98 + 89, WIDTH)

    if msn in hos_msn: 
        '''
        EBSI
        '''
        '''
        First Page of PDF / 표지
        '''
        pdf.add_page()  # Add Page

        pdf.image(os.path.join(RESULT_DIR, 'first_1_ebsi.jpg'), 0, 0, WIDTH)  # Add Table
        
        '''
        Third Page of PDF / 두뇌 SUBTYPE
        '''
        pdf.add_page()

        pdf.image(os.path.join(RESULT_DIR, "first_3_ebsi.jpg"), 0, 0, WIDTH)
        '''
        Second Page of PDF / 요약
        '''
        pdf.add_page()

        pdf.image(os.path.join(RESULT_DIR, "first_2_ebsi.jpg"), 0, 5, WIDTH)
                
        '''
        Fourth Page of PDF / 계약 기관 리스트 페이지 
        '''
        if os.path.exists(os.path.join(RESULT_DIR, 'first_list.jpg')):
            pdf.add_page()
            pdf.image(os.path.join(RESULT_DIR, 'first_list.jpg'),10.75,10,188.5,277)

            # 파란 테두리와 링크 삽입
            #pdf.set_draw_color(0, 0, 255)
            #pdf.set_line_width(0.5)
            
            #두뇌건강 치유옵션 링크삽입
            pdf.link(x=brain_ebsi_link_infos["x"], y=brain_ebsi_link_infos["y"], w=brain_ebsi_link_infos["w"], h=brain_ebsi_link_infos["h"], link=brain_ebsi_link_infos[eeg_ebsi])
            #pdf.rect(x=brain_ebsi_link_infos["x"], y=brain_ebsi_link_infos["y"], w=brain_ebsi_link_infos["w"], h=brain_ebsi_link_infos["h"])

            if reportLanguage == "kr":
                for link in link_infos:
                    # 파트너, 미니, 홈페이지, 유튜브, 인스타, 블로그 링크 삽입
                    pdf.link(x=link["x"], y=link["y"], w=link["w"], h=link["h"], link=link["url"])
                    # 테두리 사각형 표시
                    #pdf.rect(x=link["x"], y=link["y"], w=link["w"], h=link["h"])
            else:
                for link in link_infos_en: #25.07.28 영문 치유옵션 래포트 업데이트
                    # 파트너, 미니, 홈페이지, 유튜브, 인스타, 블로그 링크 삽입
                    pdf.link(x=link["x"], y=link["y"], w=link["w"], h=link["h"], link=link["url"])
                    # 테두리 사각형 표시
                    #pdf.rect(x=link["x"], y=link["y"], w=link["w"], h=link["h"])

    else:
        '''
        EBSI
        '''
        '''
        First Page of PDF / 표지
        '''
        pdf.add_page()  # Add Page

        pdf.image(os.path.join(RESULT_DIR, 'first_1_ebsi.jpg'), 0, 0, WIDTH)  # Add Table
        '''
        Second Page of PDF / 요약
        '''
        pdf.add_page()

        pdf.image(os.path.join(RESULT_DIR, "first_2_ebsi.jpg"), 0, 5, WIDTH)
        '''
        Third Page of PDF / 두뇌 SUBTYPE
        '''
        pdf.add_page()

        pdf.image(os.path.join(RESULT_DIR, "first_3_ebsi.jpg"), 0, 0, WIDTH)
        '''
        Fourth Page of PDF / 기관홍보 페이지
        '''
        if os.path.exists(os.path.join(RESULT_DIR, 'first_8.jpg')):
            pdf.add_page()
            pdf.image(os.path.join(RESULT_DIR, 'first_8.jpg'),0,0,WIDTH)
                
        
        

        
        '''
        Fifth Page of PDF / 계약 기관 리스트 페이지 
        '''
        if os.path.exists(os.path.join(RESULT_DIR, 'first_list.jpg')):
            pdf.add_page()
            pdf.image(os.path.join(RESULT_DIR, 'first_list.jpg'),10.75,10,188.5,277)

            # 파란 테두리와 링크 삽입
            #pdf.set_draw_color(0, 0, 255)
            #pdf.set_line_width(0.5)
            
            #두뇌건강 치유옵션 링크삽입
            pdf.link(x=brain_ebsi_link_infos["x"], y=brain_ebsi_link_infos["y"], w=brain_ebsi_link_infos["w"], h=brain_ebsi_link_infos["h"], link=brain_ebsi_link_infos[eeg_ebsi])
            #pdf.rect(x=brain_ebsi_link_infos["x"], y=brain_ebsi_link_infos["y"], w=brain_ebsi_link_infos["w"], h=brain_ebsi_link_infos["h"])

            if reportLanguage == "kr":
                for link in link_infos:
                    # 파트너, 미니, 홈페이지, 유튜브, 인스타, 블로그 링크 삽입
                    pdf.link(x=link["x"], y=link["y"], w=link["w"], h=link["h"], link=link["url"])
                    # 테두리 사각형 표시
                    #pdf.rect(x=link["x"], y=link["y"], w=link["w"], h=link["h"])
            else:
                for link in link_infos_en: #25.07.28 영문 치유옵션 래포트 업데이트
                    # 파트너, 미니, 홈페이지, 유튜브, 인스타, 블로그 링크 삽입
                    pdf.link(x=link["x"], y=link["y"], w=link["w"], h=link["h"], link=link["url"])
                    # 테두리 사각형 표시
                    #pdf.rect(x=link["x"], y=link["y"], w=link["w"], h=link["h"])


    pdf.output(os.path.join(REPORT_DIR, name + ".pdf"), 'F')

    for f in EBSI_FILELIST:
        try:
            os.remove(os.path.join(RESULT_DIR, f))
        except Exception as e:
            pass

    for f in REPORT_FILELIST:
        try:
            os.remove(os.path.join(RESULT_DIR, f))
        except Exception as e:
            pass


def report_make_ppg_only_pdf(RESULT_DIR, name, msn=1, ppg_ebsi = 0,reportLanguage = "kr"):
    '''
    PDF Setting
    '''
    # Global Variables
    WIDTH = 210
    HEIGHT = 297

    # Create PDF
    pdf = FPDF()  # A4 (210 by 297 mm)
    pdf.set_y(-15)
    pdf.set_font('Arial', 'I', 8)
    pdf.set_text_color(128)
    '''
    First Page of PDF / 표지
    '''
    if msn!= '147':
        pdf.add_page()  # Add Page

        pdf.image(os.path.join(RESULT_DIR, 'first_1.jpg'), 0, 0, WIDTH)  # Add Table

        if msn in hos_msn:
            pdf.add_page()
            pdf.image(os.path.join(RESULT_DIR,'first_2_1.jpg'),0,0,WIDTH)


    '''
    Second Page of PDF / 요약
    '''
    pdf.add_page()

    pdf.image(os.path.join(RESULT_DIR, "first_2.jpg"), 0, 0, WIDTH)
    pdf.image(os.path.join(RESULT_DIR, "second_2.jpg"), 0, 124, WIDTH)
    '''
    Fifth Page of PDF / 마음1
    '''
    pdf.add_page()
    pdf.image(os.path.join(RESULT_DIR, "first_5.jpg"), 0, 0, WIDTH)
    pdf.image(os.path.join(RESULT_DIR, "second_5.jpg"), 0, 122, WIDTH)
    pdf.image(os.path.join(RESULT_DIR, "third_5.jpg"), 0, 122 + 92, WIDTH)
    '''
    Sixth Page of PDF / 마음2
    '''
    pdf.add_page()
    pdf.image(os.path.join(RESULT_DIR, "first_6.jpg"), 0, 0, WIDTH)
    pdf.image(os.path.join(RESULT_DIR, "second_6.jpg"), 0, 131, WIDTH)

    if msn in hos_msn:
        '''
        EBSI
        '''
        '''
        First Page of PDF / 표지
        '''
        pdf.add_page()  # Add Page

        pdf.image(os.path.join(RESULT_DIR, 'first_1_ebsi.jpg'), 0, 0, WIDTH)  # Add Table
        
        '''
        Fourth Page of PDF / 마음 SUBTYPE
        '''
        pdf.add_page()
        pdf.image(os.path.join(RESULT_DIR, "first_4_ebsi.jpg"), 0, 0, WIDTH)
        '''
        Second Page of PDF / 요약
        '''
        pdf.add_page()

        pdf.image(os.path.join(RESULT_DIR, "first_2_ebsi.jpg"), 0, 5, WIDTH)
                
        '''
        Fifth Page of PDF / 계약 기관 리스트 페이지 
        '''
        if os.path.exists(os.path.join(RESULT_DIR, 'first_list.jpg')):
            pdf.add_page()
            pdf.image(os.path.join(RESULT_DIR, 'first_list.jpg'),10.75,10,188.5,277)

            # 파란 테두리와 링크 삽입
            #pdf.set_draw_color(0, 0, 255)
            #pdf.set_line_width(0.5)
            
            #마음건강 치유옵션 링크삽입
            pdf.link(x=mind_ebsi_link_infos["x"], y=mind_ebsi_link_infos["y"], w=mind_ebsi_link_infos["w"], h=mind_ebsi_link_infos["h"], link=mind_ebsi_link_infos[ppg_ebsi])
            #pdf.rect(x=mind_ebsi_link_infos["x"], y=mind_ebsi_link_infos["y"], w=mind_ebsi_link_infos["w"], h=mind_ebsi_link_infos["h"])

            if reportLanguage == "kr":
                for link in link_infos:
                    # 파트너, 미니, 홈페이지, 유튜브, 인스타, 블로그 링크 삽입
                    pdf.link(x=link["x"], y=link["y"], w=link["w"], h=link["h"], link=link["url"])
                    # 테두리 사각형 표시
                    #pdf.rect(x=link["x"], y=link["y"], w=link["w"], h=link["h"])
            else:
                for link in link_infos_en: #25.07.28 영문 치유옵션 래포트 업데이트
                    # 파트너, 미니, 홈페이지, 유튜브, 인스타, 블로그 링크 삽입
                    pdf.link(x=link["x"], y=link["y"], w=link["w"], h=link["h"], link=link["url"])
                    # 테두리 사각형 표시
                    #pdf.rect(x=link["x"], y=link["y"], w=link["w"], h=link["h"])
        
    else:
        '''
        EBSI
        '''
        '''
        First Page of PDF / 표지
        '''
        pdf.add_page()  # Add Page

        pdf.image(os.path.join(RESULT_DIR, 'first_1_ebsi.jpg'), 0, 0, WIDTH)  # Add Table
        '''
        Second Page of PDF / 요약
        '''
        pdf.add_page()

        pdf.image(os.path.join(RESULT_DIR, "first_2_ebsi.jpg"), 0, 5, WIDTH)
        '''
        Fourth Page of PDF / 마음 SUBTYPE
        '''
        pdf.add_page()
        pdf.image(os.path.join(RESULT_DIR, "first_4_ebsi.jpg"), 0, 0, WIDTH)
        '''
        Fifth Page of PDF / 기관홍보 페이지
        '''
        if os.path.exists(os.path.join(RESULT_DIR, 'first_8.jpg')):
            pdf.add_page()
            pdf.image(os.path.join(RESULT_DIR, 'first_8.jpg'),0,0,WIDTH)
                
        '''
        Sixth Page of PDF / 계약 기관 리스트 페이지 
        '''
        if os.path.exists(os.path.join(RESULT_DIR, 'first_list.jpg')):
            pdf.add_page()
            pdf.image(os.path.join(RESULT_DIR, 'first_list.jpg'),10.75,10,188.5,277)

            # 파란 테두리와 링크 삽입
            #pdf.set_draw_color(0, 0, 255)
            #pdf.set_line_width(0.5)
            
            #마음건강 치유옵션 링크삽입
            pdf.link(x=mind_ebsi_link_infos["x"], y=mind_ebsi_link_infos["y"], w=mind_ebsi_link_infos["w"], h=mind_ebsi_link_infos["h"], link=mind_ebsi_link_infos[ppg_ebsi])
            #pdf.rect(x=mind_ebsi_link_infos["x"], y=mind_ebsi_link_infos["y"], w=mind_ebsi_link_infos["w"], h=mind_ebsi_link_infos["h"])

            if reportLanguage == "kr":
                for link in link_infos:
                    # 파트너, 미니, 홈페이지, 유튜브, 인스타, 블로그 링크 삽입
                    pdf.link(x=link["x"], y=link["y"], w=link["w"], h=link["h"], link=link["url"])
                    # 테두리 사각형 표시
                    #pdf.rect(x=link["x"], y=link["y"], w=link["w"], h=link["h"])
            else: #25.07.28 영문 치유옵션 래포트 업데이트
                for link in link_infos_en:
                    # 파트너, 미니, 홈페이지, 유튜브, 인스타, 블로그 링크 삽입
                    pdf.link(x=link["x"], y=link["y"], w=link["w"], h=link["h"], link=link["url"])
                    # 테두리 사각형 표시
                    #pdf.rect(x=link["x"], y=link["y"], w=link["w"], h=link["h"])


    pdf.output(os.path.join(REPORT_DIR, name + ".pdf"), 'F')

    for f in REPORT_FILELIST:
        try:
            os.remove(os.path.join(RESULT_DIR, f))
        except Exception as e:
            pass

    for f in EBSI_FILELIST:
        try:
            os.remove(os.path.join(RESULT_DIR, f))
        except Exception as e:
            pass