PQ README.md 수정
This commit is contained in:
+29
-55
@@ -1,20 +1,22 @@
|
|||||||
프로젝트 내에 작성되어 있던 기존 관계도 문서(별도 다이어그램 파일)는 없지만,
|
# PQProject 관계도
|
||||||
|
|
||||||
PQProject
|
프로젝트 내 별도 다이어그램 파일은 없었지만, `PQProject` 하위 C# 소스 코드를 기준으로 클래스 관계와 모듈 아키텍처를 정리한 문서입니다.
|
||||||
하위 C# 소스 코드들의 클래스 관계 및 모듈 아키텍처를 분석하여 정리한 소스 모듈 관계도와 계층별 역할 설명입니다.
|
|
||||||
|
|
||||||
1. PQProject 소스 구성 및 관계도 (Mermaid)
|
## 1. 소스 구성 및 관계도
|
||||||
mermaid
|
|
||||||
|
```mermaid
|
||||||
graph TD
|
graph TD
|
||||||
classDef entry fill:#f9f,stroke:#333,stroke-width:2px;
|
classDef entry fill:#f9f,stroke:#333,stroke-width:2px;
|
||||||
classDef infra fill:#bbf,stroke:#333,stroke-width:1px;
|
classDef infra fill:#bbf,stroke:#333,stroke-width:1px;
|
||||||
classDef domain fill:#dfd,stroke:#333,stroke-width:1px;
|
classDef domain fill:#dfd,stroke:#333,stroke-width:1px;
|
||||||
classDef external fill:#fdd,stroke:#333,stroke-width:1px;
|
classDef external fill:#fdd,stroke:#333,stroke-width:1px;
|
||||||
|
|
||||||
subgraph "1. Entry & Core Shell Layer"
|
subgraph "1. Entry & Core Shell Layer"
|
||||||
Login["frmLogin.cs (로그인)"]:::entry
|
Login["frmLogin.cs (로그인)"]:::entry
|
||||||
MainMDI["frmMainMDI.cs (MDI 메인 컨테이너)"]:::entry
|
MainMDI["frmMainMDI.cs (MDI 메인 컨테이너)"]:::entry
|
||||||
SysUpdate["frmSystemUpdate.cs (업데이트)"]:::entry
|
SysUpdate["frmSystemUpdate.cs (업데이트)"]:::entry
|
||||||
end
|
end
|
||||||
|
|
||||||
subgraph "2. Core Infrastructure & Data Access Layer"
|
subgraph "2. Core Infrastructure & Data Access Layer"
|
||||||
ClassDB["ClassDataBase.cs (DB 연동 / OleDb SQL Core)"]:::infra
|
ClassDB["ClassDataBase.cs (DB 연동 / OleDb SQL Core)"]:::infra
|
||||||
CommonMod["CommonModule.cs (전역 유틸리티 / FarPoint Grid)"]:::infra
|
CommonMod["CommonModule.cs (전역 유틸리티 / FarPoint Grid)"]:::infra
|
||||||
@@ -23,30 +25,36 @@ graph TD
|
|||||||
GridCtrl["GridControlClass.cs / GridControl.cs"]:::infra
|
GridCtrl["GridControlClass.cs / GridControl.cs"]:::infra
|
||||||
FormList["OpenFormList.cs (MDI 폼 인스턴스 관리)"]:::infra
|
FormList["OpenFormList.cs (MDI 폼 인스턴스 관리)"]:::infra
|
||||||
end
|
end
|
||||||
|
|
||||||
subgraph "3. External Integration & Custom Controls"
|
subgraph "3. External Integration & Custom Controls"
|
||||||
WebQuery["WebQueryLib.cs (웹 쿼리 / HTTP 연동)"]:::external
|
WebQuery["WebQueryLib.cs (웹 쿼리 / HTTP 연동)"]:::external
|
||||||
FTP["FtpDownload.cs / FtpUpload.cs (FTP 전송)"]:::external
|
FTP["FtpDownload.cs / FtpUpload.cs (FTP 전송)"]:::external
|
||||||
AttachFile["AttachFileControl.cs (첨부파일 컨트롤)"]:::external
|
AttachFile["AttachFileControl.cs (첨부파일 컨트롤)"]:::external
|
||||||
HWP["HwpItem.cs / frmHwpCtrlView.cs (한글 HWP 컨트롤)"]:::external
|
HWP["HwpItem.cs / frmHwpCtrlView.cs (한글 HWP 컨트롤)"]:::external
|
||||||
end
|
end
|
||||||
|
|
||||||
subgraph "4. Business Domain UI Forms"
|
subgraph "4. Business Domain UI Forms"
|
||||||
subgraph "A. 인력 관리 (Person)"
|
subgraph "A. 인력 관리 (Person)"
|
||||||
PersonForms["frmPerson.cs / frmPersonInfo.cs<br/>frmPersonList.cs / frmPersonCareer.cs"]:::domain
|
PersonForms["frmPerson.cs / frmPersonInfo.cs<br/>frmPersonList.cs / frmPersonCareer.cs"]:::domain
|
||||||
end
|
end
|
||||||
|
|
||||||
subgraph "B. 회사 및 사업 실적 (Company & Project)"
|
subgraph "B. 회사 및 사업 실적 (Company & Project)"
|
||||||
ProjectForms["frmCompanyProjectInfo.cs / frmCompanyCareer.cs<br/>frmCompanyProjectCreate.cs / frmCreateProject.cs"]:::domain
|
ProjectForms["frmCompanyProjectInfo.cs / frmCompanyCareer.cs<br/>frmCompanyProjectCreate.cs / frmCreateProject.cs"]:::domain
|
||||||
end
|
end
|
||||||
|
|
||||||
subgraph "C. 실적/가점 관리 (R&D / Invest / Develop / Most)"
|
subgraph "C. 실적/가점 관리 (R&D / Invest / Develop / Most)"
|
||||||
SpecialForms["frmRD.cs / frmInvest.cs / frmDevelop.cs<br/>frmMost.cs / frmMostManagement.cs"]:::domain
|
SpecialForms["frmRD.cs / frmInvest.cs / frmDevelop.cs<br/>frmMost.cs / frmMostManagement.cs"]:::domain
|
||||||
end
|
end
|
||||||
|
|
||||||
subgraph "D. 공통 코드 & PQ 자격/평가 조건"
|
subgraph "D. 공통 코드 & PQ 자격/평가 조건"
|
||||||
CodeForms["frmCommonCode.cs / frmCommonJobType.cs<br/>frmCommonConLevel1~3.cs / frmCommonConList.cs"]:::domain
|
CodeForms["frmCommonCode.cs / frmCommonJobType.cs<br/>frmCommonConLevel1~3.cs / frmCommonConList.cs"]:::domain
|
||||||
end
|
end
|
||||||
|
|
||||||
subgraph "E. 보고서 & 출력 (Reports)"
|
subgraph "E. 보고서 & 출력 (Reports)"
|
||||||
ReportForms["frmReportFindCondition.cs / frmReportPersonJobList.cs<br/>frmReportPersonLevel.cs / frmPersonReportPrint.cs"]:::domain
|
ReportForms["frmReportFindCondition.cs / frmReportPersonJobList.cs<br/>frmReportPersonLevel.cs / frmPersonReportPrint.cs"]:::domain
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
%% Dependencies
|
|
||||||
Login --> MainMDI
|
Login --> MainMDI
|
||||||
MainMDI --> FormList
|
MainMDI --> FormList
|
||||||
MainMDI --> PersonForms
|
MainMDI --> PersonForms
|
||||||
@@ -54,11 +62,13 @@ graph TD
|
|||||||
MainMDI --> SpecialForms
|
MainMDI --> SpecialForms
|
||||||
MainMDI --> CodeForms
|
MainMDI --> CodeForms
|
||||||
MainMDI --> ReportForms
|
MainMDI --> ReportForms
|
||||||
|
|
||||||
PersonForms --> PersonDB
|
PersonForms --> PersonDB
|
||||||
ProjectForms --> ClassDB
|
ProjectForms --> ClassDB
|
||||||
SpecialForms --> ClassDB
|
SpecialForms --> ClassDB
|
||||||
CodeForms --> ClassDB
|
CodeForms --> ClassDB
|
||||||
ReportForms --> ClassDB
|
ReportForms --> ClassDB
|
||||||
|
|
||||||
PersonForms --> CommonMod
|
PersonForms --> CommonMod
|
||||||
ProjectForms --> CommonMod
|
ProjectForms --> CommonMod
|
||||||
SpecialForms --> CommonMod
|
SpecialForms --> CommonMod
|
||||||
@@ -70,55 +80,19 @@ graph TD
|
|||||||
ClassDB --> CommonGlob
|
ClassDB --> CommonGlob
|
||||||
CommonMod --> GridCtrl
|
CommonMod --> GridCtrl
|
||||||
WebQuery --> FTP
|
WebQuery --> FTP
|
||||||
2. 주요 계층 및 모듈 역할 요약
|
```
|
||||||
계층 (Layer) 주요 파일 / 클래스 역할 및 설명
|
|
||||||
진입 및 메인 셸 (Entry & Shell)
|
|
||||||
|
|
||||||
frmLogin.cs
|
## 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` | 평가용 검색 조건 설정, 인력/사업별 제출 문서 출력 및 인쇄 |
|
||||||
|
|
||||||
|
필요한 경우 특정 폼이나 모듈 간 호출 흐름까지 이어서 정리할 수 있습니다.
|
||||||
frmMainMDI.cs
|
|
||||||
시스템 진입, 사용자 인증, MDI 메인 메뉴 처리 및 전체 자식 폼(Form) 수명주기 관리
|
|
||||||
데이터 및 인프라 (Core Infrastructure)
|
|
||||||
|
|
||||||
ClassDataBase.cs
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
PersonDatabase.cs
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
CommonModule.cs
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
GridControlClass.cs
|
|
||||||
- ClassDataBase: OleDb 기반 데이터베이스 연결, SQL 쿼리 및 트랜잭션 처리 핵심 클래스
|
|
||||||
- CommonModule: 전역 헬퍼 함수, FarPoint Spread 그리드 세팅 및 포맷팅
|
|
||||||
- GridControlClass: 데이터 그리드 공통 연동 및 셀 컨트롤 바인딩
|
|
||||||
외부 통합 및 컨트롤 (External & Controls)
|
|
||||||
|
|
||||||
WebQueryLib.cs
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
AttachFileControl.cs
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
frmHwpCtrlView.cs
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
FtpDownload.cs
|
|
||||||
- WebQueryLib: 웹 서버 및 외부 HTTP API 데이터 연동
|
|
||||||
- AttachFileControl: 증빙/첨부 파일 업로드 및 다운로드 UI 컨트롤
|
|
||||||
- frmHwpCtrlView / HwpItem: 한글(HWP) 오토메이션 컨트롤 문서 로딩 및 템플릿 처리
|
|
||||||
인력 관리 (Person) frmPerson, frmPersonInfo, frmPersonCareer, frmPersonList 기술인력 기본 정보, 자격증, 회사 경력, 기술 등급 관리 UI
|
|
||||||
사업 및 실적 (Project) frmCompanyProjectInfo, frmCompanyCareer, frmCreateProject 참여 회사 및 사업 수행 실적, 사업 참여 인원(Member) 매핑 및 실적 이력 관리
|
|
||||||
실적/가점 (Special) frmRD, frmInvest, frmDevelop, frmMost 연구개발(R&D), 투자실적, 개발실적, 가점/우수실적 관리 및 보고서 연동
|
|
||||||
자격/조건 설정 (Condition) frmCommonConLevel1~3, frmCommonConList, frmCommonCode PQ(사업수행능력평가)에 적용할 등급별 평가 조건/기준 레이어 및 공통 코드 관리
|
|
||||||
보고서 및 출력 (Reports) frmReportFindCondition, frmReportPersonJobList, frmPersonReportPrint 평가용 보고서 검색 조건 설정 및 인력/사업별 PQ 제출용 문서 출력/인쇄
|
|
||||||
필요하신 경우 특정 폼이나 모듈(예: 특정 도메인 폼과 DB 연동 방식) 간의 상세 호출 구조를 추가로 분석해 드릴 수 있습니다.
|
|
||||||
|
|||||||
Reference in New Issue
Block a user