Files
saman/문서/PQ
2026-07-27 13:31:33 +09:00
..
2026-07-27 13:31:33 +09:00
2026-07-24 15:57:31 +09:00

PQProject 관계도

프로젝트 내 별도 다이어그램 파일은 없었지만, PQProject 하위 C# 소스 코드를 기준으로 클래스 관계와 모듈 아키텍처를 정리한 문서입니다.

1. 소스 구성 및 관계도

graph TD
    classDef entry fill:#f9f,stroke:#333,stroke-width:2px;
    classDef infra fill:#bbf,stroke:#333,stroke-width:1px;
    classDef domain fill:#dfd,stroke:#333,stroke-width:1px;
    classDef external fill:#fdd,stroke:#333,stroke-width:1px;

    subgraph "1. Entry & Core Shell Layer"
        Login["frmLogin.cs (로그인)"]:::entry
        MainMDI["frmMainMDI.cs (MDI 메인 컨테이너)"]:::entry
        SysUpdate["frmSystemUpdate.cs (업데이트)"]:::entry
    end

    subgraph "2. Core Infrastructure & Data Access Layer"
        ClassDB["ClassDataBase.cs (DB 연동 / OleDb SQL Core)"]:::infra
        CommonMod["CommonModule.cs (전역 유틸리티 / FarPoint Grid)"]:::infra
        CommonGlob["CommonGlobal.cs / CommonCodeClass.cs"]:::infra
        PersonDB["PersonDatabase.cs (인력 전용 DB 조율)"]:::infra
        GridCtrl["GridControlClass.cs / GridControl.cs"]:::infra
        FormList["OpenFormList.cs (MDI 폼 인스턴스 관리)"]:::infra
    end

    subgraph "3. External Integration & Custom Controls"
        WebQuery["WebQueryLib.cs (웹 쿼리 / HTTP 연동)"]:::external
        FTP["FtpDownload.cs / FtpUpload.cs (FTP 전송)"]:::external
        AttachFile["AttachFileControl.cs (첨부파일 컨트롤)"]:::external
        HWP["HwpItem.cs / frmHwpCtrlView.cs (한글 HWP 컨트롤)"]:::external
    end

    subgraph "4. Business Domain UI Forms"
        subgraph "A. 인력 관리 (Person)"
            PersonForms["frmPerson.cs / frmPersonInfo.cs<br/>frmPersonList.cs / frmPersonCareer.cs"]:::domain
        end

        subgraph "B. 회사 및 사업 실적 (Company & Project)"
            ProjectForms["frmCompanyProjectInfo.cs / frmCompanyCareer.cs<br/>frmCompanyProjectCreate.cs / frmCreateProject.cs"]:::domain
        end

        subgraph "C. 실적/가점 관리 (R&D / Invest / Develop / Most)"
            SpecialForms["frmRD.cs / frmInvest.cs / frmDevelop.cs<br/>frmMost.cs / frmMostManagement.cs"]:::domain
        end

        subgraph "D. 공통 코드 & PQ 자격/평가 조건"
            CodeForms["frmCommonCode.cs / frmCommonJobType.cs<br/>frmCommonConLevel1~3.cs / frmCommonConList.cs"]:::domain
        end

        subgraph "E. 보고서 & 출력 (Reports)"
            ReportForms["frmReportFindCondition.cs / frmReportPersonJobList.cs<br/>frmReportPersonLevel.cs / frmPersonReportPrint.cs"]:::domain
        end
    end

    Login --> MainMDI
    MainMDI --> FormList
    MainMDI --> PersonForms
    MainMDI --> ProjectForms
    MainMDI --> SpecialForms
    MainMDI --> CodeForms
    MainMDI --> ReportForms

    PersonForms --> PersonDB
    ProjectForms --> ClassDB
    SpecialForms --> ClassDB
    CodeForms --> ClassDB
    ReportForms --> ClassDB

    PersonForms --> CommonMod
    ProjectForms --> CommonMod
    SpecialForms --> CommonMod

    PersonForms --> AttachFile
    ProjectForms --> AttachFile
    ReportForms --> HWP

    ClassDB --> CommonGlob
    CommonMod --> GridCtrl
    WebQuery --> FTP

2. 주요 계층 및 모듈 역할

계층 주요 파일 / 클래스 역할
진입 및 메인 셸 (Entry & Shell) frmLogin.cs, frmMainMDI.cs, frmSystemUpdate.cs 시스템 진입, 사용자 인증, MDI 메인 메뉴 처리, 자식 폼 수명주기 관리
데이터 및 인프라 (Core Infrastructure) ClassDataBase.cs, PersonDatabase.cs, CommonModule.cs, GridControlClass.cs OleDb 기반 DB 연결, SQL 처리, 전역 유틸리티, FarPoint Spread 그리드 연동
외부 통합 및 컨트롤 (External & Controls) WebQueryLib.cs, AttachFileControl.cs, frmHwpCtrlView.cs, FtpDownload.cs 웹 서버/HTTP API 연동, 첨부파일 업로드/다운로드, HWP 문서 처리, FTP 전송
인력 관리 (Person) frmPerson, frmPersonInfo, frmPersonCareer, frmPersonList 기술인력 기본 정보, 자격증, 회사 경력, 기술 등급 관리
사업 및 실적 (Project) frmCompanyProjectInfo, frmCompanyCareer, frmCreateProject 참여 회사 및 사업 수행 실적, 참여 인원 매핑, 실적 이력 관리
실적/가점 (Special) frmRD, frmInvest, frmDevelop, frmMost 연구개발, 투자실적, 개발실적, 가점/우수실적 관리 및 보고서 연동
자격/조건 설정 (Condition) frmCommonConLevel1~3, frmCommonConList, frmCommonCode PQ 평가 조건, 등급별 기준, 공통 코드 관리
보고서 및 출력 (Reports) frmReportFindCondition, frmReportPersonJobList, frmPersonReportPrint 평가용 검색 조건 설정, 인력/사업별 제출 문서 출력 및 인쇄

필요한 경우 특정 폼이나 모듈 간 호출 흐름까지 이어서 정리할 수 있습니다.