541 lines
28 KiB
Python
541 lines
28 KiB
Python
from docx import Document
|
||
from docx.shared import Pt, Inches, Cm, RGBColor
|
||
from docx.enum.text import WD_ALIGN_PARAGRAPH
|
||
from docx.enum.table import WD_TABLE_ALIGNMENT
|
||
from docx.oxml.ns import qn, nsdecls
|
||
from docx.oxml import parse_xml
|
||
import os
|
||
|
||
doc = Document()
|
||
|
||
style = doc.styles['Normal']
|
||
font = style.font
|
||
font.name = '맑은 고딕'
|
||
font.size = Pt(10)
|
||
style.element.rPr.rFonts.set(qn('w:eastAsia'), '맑은 고딕')
|
||
|
||
sections = doc.sections
|
||
for section in sections:
|
||
section.top_margin = Cm(2)
|
||
section.bottom_margin = Cm(2)
|
||
section.left_margin = Cm(2)
|
||
section.right_margin = Cm(2)
|
||
|
||
# ── Title ──
|
||
title = doc.add_heading('AX 과제 선정 기준 체크리스트 평가 보고서', level=0)
|
||
title.alignment = WD_ALIGN_PARAGRAPH.CENTER
|
||
|
||
p = doc.add_paragraph()
|
||
p.alignment = WD_ALIGN_PARAGRAPH.RIGHT
|
||
run = p.add_run('평가일: 2026년 2월 23일')
|
||
run.font.size = Pt(9)
|
||
run.font.color.rgb = RGBColor(0x66, 0x66, 0x66)
|
||
|
||
doc.add_paragraph()
|
||
|
||
|
||
def set_cell_shading(cell, color):
|
||
shading = parse_xml(f'<w:shd {nsdecls("w")} w:fill="{color}"/>')
|
||
cell._tc.get_or_add_tcPr().append(shading)
|
||
|
||
|
||
def add_eval_section(doc, num, title_text, dept, applicant, empno, summary, evaluations):
|
||
"""evaluations: list of (criteria_title, status_icon, detail_text)"""
|
||
heading = doc.add_heading(f'과제 {num}. {title_text}', level=1)
|
||
|
||
info_table = doc.add_table(rows=1, cols=4)
|
||
info_table.alignment = WD_TABLE_ALIGNMENT.LEFT
|
||
info_table.style = 'Light Grid Accent 1'
|
||
|
||
headers = ['소속', '신청자', '사번', '참여 가능 시간']
|
||
values = [dept, applicant, empno, summary]
|
||
for i, (h, v) in enumerate(zip(headers, values)):
|
||
cell = info_table.rows[0].cells[i]
|
||
cell.text = ''
|
||
p = cell.paragraphs[0]
|
||
run_h = p.add_run(f'{h}: ')
|
||
run_h.bold = True
|
||
run_h.font.size = Pt(9)
|
||
run_v = p.add_run(v)
|
||
run_v.font.size = Pt(9)
|
||
|
||
doc.add_paragraph()
|
||
|
||
eval_table = doc.add_table(rows=len(evaluations) + 1, cols=3)
|
||
eval_table.style = 'Light Grid Accent 1'
|
||
eval_table.alignment = WD_TABLE_ALIGNMENT.LEFT
|
||
|
||
hdr_cells = eval_table.rows[0].cells
|
||
hdr_texts = ['선정 기준', '판정', '평가 내용']
|
||
col_widths = [Cm(5), Cm(2), Cm(10)]
|
||
for i, (txt, w) in enumerate(zip(hdr_texts, col_widths)):
|
||
hdr_cells[i].text = ''
|
||
hdr_cells[i].width = w
|
||
p = hdr_cells[i].paragraphs[0]
|
||
p.alignment = WD_ALIGN_PARAGRAPH.CENTER
|
||
run = p.add_run(txt)
|
||
run.bold = True
|
||
run.font.size = Pt(9)
|
||
set_cell_shading(hdr_cells[i], '2E75B6')
|
||
run.font.color.rgb = RGBColor(0xFF, 0xFF, 0xFF)
|
||
|
||
for row_idx, (criteria, status, detail) in enumerate(evaluations, 1):
|
||
cells = eval_table.rows[row_idx].cells
|
||
cells[0].width = col_widths[0]
|
||
cells[1].width = col_widths[1]
|
||
cells[2].width = col_widths[2]
|
||
|
||
p0 = cells[0].paragraphs[0]
|
||
r0 = p0.add_run(criteria)
|
||
r0.font.size = Pt(9)
|
||
r0.bold = True
|
||
|
||
p1 = cells[1].paragraphs[0]
|
||
p1.alignment = WD_ALIGN_PARAGRAPH.CENTER
|
||
r1 = p1.add_run(status)
|
||
r1.font.size = Pt(10)
|
||
r1.bold = True
|
||
if '✓' in status:
|
||
set_cell_shading(cells[1], 'E2EFDA')
|
||
elif '△' in status:
|
||
set_cell_shading(cells[1], 'FFF2CC')
|
||
elif '✗' in status:
|
||
set_cell_shading(cells[1], 'FCE4EC')
|
||
|
||
p2 = cells[2].paragraphs[0]
|
||
r2 = p2.add_run(detail)
|
||
r2.font.size = Pt(9)
|
||
|
||
doc.add_paragraph()
|
||
|
||
|
||
# ─────────────────────────────────────────────
|
||
# 과제 1: 박미경
|
||
# ─────────────────────────────────────────────
|
||
add_eval_section(
|
||
doc, 1,
|
||
'ETC마케팅본부 목표 달성 DashBoard',
|
||
'대웅제약_ETC마케팅본부_마케팅기획팀', '박미경', '2190270',
|
||
'하루 4시간 이상 (적극 참여)',
|
||
[
|
||
('① 업무 규칙·요구사항 명확성',
|
||
'✓ 명확',
|
||
'사업기 목표달성, MBO시스템, 성공모델 확산/파생사례, 검증4단계 등 4가지 항목의 데이터를 주 1회 업데이트하고 '
|
||
'사업팀/품목/PM별 필터링하여 대시보드로 공유하는 명확한 프로세스가 존재함.'),
|
||
('② 현업 참여 의지',
|
||
'✓ 적극',
|
||
'하루 4시간 이상 적극 참여 가능으로 선택. 선정 기준(1주일 매일 6시간)에는 다소 부족하나, 적극적 의지 확인됨.'),
|
||
('③ 데이터 디지털화 여부',
|
||
'✓ 즉시 가능',
|
||
'Excel/CSV 형태로 데이터 보유. 과제 선발 후 샘플 데이터 즉시 제공 가능. '
|
||
'다만 SF CRM 데이터 자동 연계 시 SF CRM팀과의 협업 필요.'),
|
||
('④ 예상 AI Tool·인프라',
|
||
'—',
|
||
'☑ BI 대시보드 (시각화 대시보드 구현)\n'
|
||
'☑ LLM (결산 보고서 자동 작성)\n'
|
||
'☑ 노코드 워크플로우 n8n (데이터 자동 업데이트)\n'
|
||
'☐ SF CRM 연동 시 사내 서버/클라우드 필요 가능'),
|
||
('⑤ 목표 달성 기준',
|
||
'✓ 명확',
|
||
'- 주 3~5시간 수기 업데이트·검수 시간 → 자동화로 대폭 단축\n'
|
||
'- 대시보드 로딩시간 3~5초 → 개선\n'
|
||
'- AI 기반 결산 자동 작성으로 보고 편의성 증대'),
|
||
('⑥ 예상 효과',
|
||
'—',
|
||
'[정량적] 주 3~5시간 수작업 절감, 데이터 검수 시간 단축\n'
|
||
'[정성적] 데이터 정확성 향상, 사업부장/사업팀장/PM 보고 편의성 대폭 개선, 의사결정 속도 향상'),
|
||
('⑦ 리스크·제약사항',
|
||
'△ 일부',
|
||
'☑ 외부 시스템 연동 제한: SF CRM 데이터 자동 연계 시 SF CRM팀과의 협업 및 권한 조율 필요\n'
|
||
'☐ 방대한 누적 데이터 용량으로 인한 성능 이슈 가능'),
|
||
]
|
||
)
|
||
|
||
# ─────────────────────────────────────────────
|
||
# 과제 2: 김희영
|
||
# ─────────────────────────────────────────────
|
||
add_eval_section(
|
||
doc, 2,
|
||
'MR 거래처 채권현황 실시간 조회 웹앱',
|
||
'한올_마케팅기획본부_영업관리팀', '김희영', '200056',
|
||
'본부내 자체적으로 진행 (AX특공대 불필요)',
|
||
[
|
||
('① 업무 규칙·요구사항 명확성',
|
||
'✓ 명확',
|
||
'SAP 데이터 기반 채권현황(회전일 150일 이상) 조회 → 웹앱으로 MR에게 제공하는 명확한 요구사항.'),
|
||
('② 현업 참여 의지',
|
||
'✗ 불확실',
|
||
'"본부내 자체적으로 진행(AX특공대 불필요)"로 선택. '
|
||
'AX팀과의 적극적 소통·검증 참여 의지가 불확실함. 선정 기준(1주일 매일 6시간) 충족 어려움.'),
|
||
('③ 데이터 디지털화 여부',
|
||
'✓ 즉시 가능',
|
||
'웹앱 형태 요청. 과제 선발 후 샘플 데이터 즉시 제공 가능. '
|
||
'다만 SAP 시스템 접근 및 데이터 연동이 핵심 전제조건임.'),
|
||
('④ 예상 AI Tool·인프라',
|
||
'—',
|
||
'☑ 웹앱 개발 (모바일 대응)\n'
|
||
'☑ 상용 API / 사내 서버 필요 (SAP 데이터 연동)\n'
|
||
'☐ AI 요소보다 시스템 개발·연동 성격이 강함'),
|
||
('⑤ 목표 달성 기준',
|
||
'✓ 명확',
|
||
'- 건당 10분 유관부서 문의 → 모바일 즉시 조회로 전환\n'
|
||
'- 매일 평균 5건 × 10분 = 50분/일, 주 250분 절감\n'
|
||
'- MR 및 내근직 본질업무 집중 환경 구축'),
|
||
('⑥ 예상 효과',
|
||
'—',
|
||
'[정량적] 주 250분(약 4.2시간) 업무시간 절감, 유관부서 문의 건수 제로화\n'
|
||
'[정성적] MR 영업현장 편의성 대폭 향상, 내근/외근 본질업무 집중도 개선'),
|
||
('⑦ 리스크·제약사항',
|
||
'✗ 높음',
|
||
'☑ 외부 시스템 연동 제한: SAP 시스템 연동이 필수이나, 영업부 SAP 사용 불가 환경\n'
|
||
'☑ AX 과제보다 IT 시스템 개발 과제에 가까움 (AI 활용 요소 미약)\n'
|
||
'☐ 참여 의지 불확실로 과제 진행 리스크'),
|
||
]
|
||
)
|
||
|
||
# ─────────────────────────────────────────────
|
||
# 과제 3: 김지숙
|
||
# ─────────────────────────────────────────────
|
||
add_eval_section(
|
||
doc, 3,
|
||
'CPS 지출보고 증빙 검토·승인 자동화',
|
||
'대웅제약_영업기획실_영업지원팀', '김지숙', '2190153',
|
||
'하루 4시간 이상 (적극 참여)',
|
||
[
|
||
('① 업무 규칙·요구사항 명확성',
|
||
'✓ 명확',
|
||
'CPS 시스템 내 상신문서 조회 → JPG 증빙파일 다운로드 → 증빙 적정성·CP 규정 준수 확인 → 승인/반려의 '
|
||
'명확한 검토 프로세스. 오류 판단 기준(촬영일자, 참석인원 대비 수량, 간이영수증 등)도 구체적.'),
|
||
('② 현업 참여 의지',
|
||
'✓ 적극',
|
||
'하루 4시간 이상 적극 참여 가능. 매일 7시간 해당 업무에 투입 중이므로 높은 참여 동기 확인됨.'),
|
||
('③ 데이터 디지털화 여부',
|
||
'✓ 즉시 가능',
|
||
'Excel/CSV 및 이미지/스캔 파일 형태. 과제 선발 후 샘플 데이터 즉시 제공 가능.'),
|
||
('④ 예상 AI Tool·인프라',
|
||
'—',
|
||
'☑ OCR (증빙 이미지 인식·판독)\n'
|
||
'☑ LLM (이상 문서 자동 선별·규정 준수 검증)\n'
|
||
'☑ 노코드 워크플로우 n8n (일괄 처리 자동화)\n'
|
||
'☐ CPS 시스템 연동 필요 시 사내 서버 필요'),
|
||
('⑤ 목표 달성 기준',
|
||
'✓ 명확',
|
||
'- 일 1,500건 × 건당 3분 수작업 → 자동 인식·선별로 대폭 단축\n'
|
||
'- 매일 7시간 → 이상 문서만 집중 검토로 업무시간 80%+ 절감 기대\n'
|
||
'- 오류 탐지율 향상 (사람 육안 → AI 자동 탐지)'),
|
||
('⑥ 예상 효과',
|
||
'—',
|
||
'[정량적] 일 7시간 → 1~2시간으로 단축 (약 70~85% 절감), 월 30,000건 처리 속도 대폭 향상\n'
|
||
'[정성적] 오류 탐지 정확도 향상, 승인 지연 리스크 감소, 영업현장 지급 일정 안정화'),
|
||
('⑦ 리스크·제약사항',
|
||
'△ 일부',
|
||
'☑ 개인정보 규제: 민감한 개인정보 포함 데이터 (주의 필요)\n'
|
||
'☑ 외부 시스템 연동 제한: CPS 시스템과의 연동이 필요할 수 있음\n'
|
||
'☐ 증빙 이미지 품질에 따른 OCR 정확도 변동 가능'),
|
||
]
|
||
)
|
||
|
||
# ─────────────────────────────────────────────
|
||
# 과제 4: 박지현
|
||
# ─────────────────────────────────────────────
|
||
add_eval_section(
|
||
doc, 4,
|
||
'ETC 로컬 스타 산출 자동화',
|
||
'대웅제약_영업기획실_영업지원팀', '박지현', '2230551',
|
||
'하루 2~3시간 (다른 업무 병행, 제한적 참여)',
|
||
[
|
||
('① 업무 규칙·요구사항 명확성',
|
||
'✓ 매우 명확',
|
||
'4단계 프로세스(실적 데이터 기초 작업 → 스타 파일 반영·검증 → 예외·소급 금액 반영 → 대상자 확정·리스트업)가 '
|
||
'매우 구체적. VLOOKUP/SUMIFS 등 엑셀 함수 기반 로직이 명확하게 정의되어 있음.'),
|
||
('② 현업 참여 의지',
|
||
'△ 제한적',
|
||
'"하루 2~3시간, 다른 업무 병행, 제한적 참여" 선택. '
|
||
'선정 기준(1주일 매일 6시간)에 크게 미달. 과제 진행 시 소통 시간 확보 협의 필요.'),
|
||
('③ 데이터 디지털화 여부',
|
||
'✓ 즉시 가능',
|
||
'Excel/CSV 형태. 과제 선발 후 샘플 데이터 즉시 제공 가능. '
|
||
'다만 인사팀(영업부 담당자별 배치일자)과의 협업 필요.'),
|
||
('④ 예상 AI Tool·인프라',
|
||
'—',
|
||
'☑ 노코드 워크플로우 n8n (엑셀 자동 가공·매핑)\n'
|
||
'☐ AI 요소보다 RPA/자동화 성격이 강함\n'
|
||
'☐ 복잡한 엑셀 로직의 프로그래밍 전환 필요'),
|
||
('⑤ 목표 달성 기준',
|
||
'✓ 명확',
|
||
'- 1일 8시간 수작업 → 원클릭 자동화로 획기적 단축\n'
|
||
'- 직전 3개월 파일 반복 작업 제거\n'
|
||
'- 10개 엑셀 파일 연동 자동화'),
|
||
('⑥ 예상 효과',
|
||
'—',
|
||
'[정량적] 월 8시간+ 수작업 시간 절감, 파일 간 반복 작업 제거\n'
|
||
'[정성적] 수기 작업 오류 감소, 담당자 변경 시 업무 연속성 확보'),
|
||
('⑦ 리스크·제약사항',
|
||
'△ 일부',
|
||
'☑ 타부서 협업: 인사팀 데이터(영업부 담당자별 배치일자) 확인 필요\n'
|
||
'☐ 참여 시간 제한적(2~3시간)으로 과제 일정 지연 리스크\n'
|
||
'☐ 복잡한 엑셀 로직 자동화 시 예외 케이스 처리 필요'),
|
||
]
|
||
)
|
||
|
||
# ─────────────────────────────────────────────
|
||
# 과제 5: 김진우(정신영) - Emma 메일링
|
||
# ─────────────────────────────────────────────
|
||
add_eval_section(
|
||
doc, 5,
|
||
'Emma 메일링 업그레이드 (해외 매체 기사 솔팅·발송)',
|
||
'엠서클_하이닥사업부_하이닥팀', '김진우(정신영)', '01534',
|
||
'진행 상황에 따라 팀장님과 논의 후 시간 조정 예정',
|
||
[
|
||
('① 업무 규칙·요구사항 명확성',
|
||
'△ 일부 애매',
|
||
'해외 매체 약 20여개 기사 솔팅 후 이메일 발송이라는 큰 틀은 있으나, '
|
||
'"선정 기준에 따른 기사 선별" 기준이 구체적이지 않음. 기사 선별 기준, UI 개편 범위 등 추가 정의 필요.'),
|
||
('② 현업 참여 의지',
|
||
'△ 불확실',
|
||
'"진행 상황에 따라 팀장님과 논의 후 시간 조정 예정"으로 기재. '
|
||
'선정 기준(1주일 매일 6시간) 충족 가능성 불확실. 사전에 AI팀 팀장님께 공유한 점은 긍정적.'),
|
||
('③ 데이터 디지털화 여부',
|
||
'✓ 즉시 가능',
|
||
'Excel/CSV, 텍스트, 정형 DB 형태. 과제 선발 후 샘플 데이터 즉시 제공 가능.'),
|
||
('④ 예상 AI Tool·인프라',
|
||
'—',
|
||
'☑ LLM (기사 선별·요약·번역)\n'
|
||
'☑ 노코드 워크플로우 n8n (크롤링·메일링 자동화)\n'
|
||
'☑ 상용 API (크롤링, 이메일 발송)\n'
|
||
'☐ IT 추진팀(기존 emma 개발팀) 협업 필요'),
|
||
('⑤ 목표 달성 기준',
|
||
'✓ 명확',
|
||
'- 기자당 약 30분 → 메일링 발송 시 5분 이내 (약 83% 단축)\n'
|
||
'- 기사 스크롤링 약 1,000여개 자동 처리'),
|
||
('⑥ 예상 효과',
|
||
'—',
|
||
'[정량적] 기자당 25분 절감, 기사 1,000여개 자동 스크리닝·솔팅\n'
|
||
'[정성적] 기사 선별 품질 향상, UI 개편으로 사용자 경험 개선'),
|
||
('⑦ 리스크·제약사항',
|
||
'△ 일부',
|
||
'☑ 외부 시스템 연동 제한: 기존 emma 시스템(IT 추진팀 개발)과의 연동·개편 필요\n'
|
||
'☐ 기사 선별 기준의 명확한 정의 필요 (담당자 "감"에 의존 가능성)\n'
|
||
'☐ 닥터빌 홈페이지 내 페이지 제작 옵션 → 범위 확대 리스크'),
|
||
]
|
||
)
|
||
|
||
# ─────────────────────────────────────────────
|
||
# 과제 6: 김진우(정신영) - 논문 기사 자동화
|
||
# ─────────────────────────────────────────────
|
||
add_eval_section(
|
||
doc, 6,
|
||
'최신연구 논문 기사 제작 자동화',
|
||
'엠서클_하이닥사업부_하이닥팀', '김진우(정신영)', '01534',
|
||
'진행사항 확인 후 팀장님과 논의하여 시간 조정 예정',
|
||
[
|
||
('① 업무 규칙·요구사항 명확성',
|
||
'△ 일부 애매',
|
||
'과거 1차 제작 경험이 있으나, 담당자 퇴사로 홀딩 상태. '
|
||
'업그레이드 요건이 구체적이지 않으며, 기존 시스템 상태 파악이 선행되어야 함.'),
|
||
('② 현업 참여 의지',
|
||
'△ 불확실',
|
||
'"진행사항 확인 후 팀장님과 논의하여 시간 조정 예정"으로 기재. '
|
||
'선정 기준(1주일 매일 6시간) 충족 가능성 불확실.'),
|
||
('③ 데이터 디지털화 여부',
|
||
'✓ 즉시 가능',
|
||
'텍스트, 정형 DB 형태. 과제 선발 후 샘플 데이터 즉시 제공 가능. 논문 크롤링 데이터 100여개 이상.'),
|
||
('④ 예상 AI Tool·인프라',
|
||
'—',
|
||
'☑ LLM (논문 요약·기사 작성)\n'
|
||
'☑ 상용 API (논문 크롤링)\n'
|
||
'☐ 하이닥 CMS 연동 필요'),
|
||
('⑤ 목표 달성 기준',
|
||
'✓ 명확',
|
||
'- 기사 1건당 4시간 → 1시간 이내 (75% 단축)\n'
|
||
'- 최신연구 논문 최근 1주일 내 100여개 이상 자동 크롤링·선별'),
|
||
('⑥ 예상 효과',
|
||
'—',
|
||
'[정량적] 건당 3시간 절감, 기사 발행 속도 및 발행량 대폭 증가\n'
|
||
'[정성적] 최신 연구 트렌드 신속 반영, 기사 품질 일관성 확보'),
|
||
('⑦ 리스크·제약사항',
|
||
'△ 일부',
|
||
'☑ 기존 담당자 퇴사로 기술 인수인계 이슈 (기존 시스템 상태 파악 필요)\n'
|
||
'☑ 외부 시스템 연동: 하이닥 CMS 내 기사 발행 연동 필요\n'
|
||
'☐ AI 생성 기사의 의료 정보 정확성 검증 체계 필요'),
|
||
]
|
||
)
|
||
|
||
# ─────────────────────────────────────────────
|
||
# 과제 7: 이승민
|
||
# ─────────────────────────────────────────────
|
||
add_eval_section(
|
||
doc, 7,
|
||
'처방마감자료 생성 및 메일 발송 자동화',
|
||
'대웅제약_영업기획실_영업지원팀', '이승민', '2240556',
|
||
'하루 2~3시간 (다른 업무 병행, 제한적 참여)',
|
||
[
|
||
('① 업무 규칙·요구사항 명확성',
|
||
'✓ 매우 명확',
|
||
'6단계 프로세스가 상세하게 기술됨: DCM 데이터 다운로드·검증 → 약가목록집 VLOOKUP(3차) → '
|
||
'회전관리장 조직 VLOOKUP → N/A 건 정리·메일 발송 → 재매핑 → 자동 메일 발송. '
|
||
'BIO 중복제외리스트 생성도 명확.'),
|
||
('② 현업 참여 의지',
|
||
'△ 제한적',
|
||
'"하루 2~3시간, 다른 업무 병행, 제한적 참여" 선택. '
|
||
'선정 기준(1주일 매일 6시간)에 크게 미달. 월 1회 업무이므로 집중 참여 기간 조율 가능성은 있음.'),
|
||
('③ 데이터 디지털화 여부',
|
||
'✓ 즉시 가능',
|
||
'Excel/CSV, 사내 시스템 데이터. 과제 선발 후 샘플 데이터 즉시 제공 가능. '
|
||
'처방마감자료 25만행+, 회전관리장 20만행 이하의 대용량 데이터.'),
|
||
('④ 예상 AI Tool·인프라',
|
||
'—',
|
||
'☑ 노코드 워크플로우 n8n (데이터 매핑·메일 발송 자동화)\n'
|
||
'☐ AI 요소보다 RPA/자동화 성격이 강함 (VLOOKUP 자동화, 메일 발송)\n'
|
||
'☐ 대용량 데이터 처리를 위한 서버 필요 가능'),
|
||
('⑤ 목표 달성 기준',
|
||
'✓ 명확',
|
||
'- 월 4시간+ 수작업 → 자동 매핑·메일 발송으로 대폭 단축\n'
|
||
'- VLOOKUP 1시간+ → 자동 매핑으로 수분 이내 처리\n'
|
||
'- 신규처 요청 메일 자동화, BIO 중복제외리스트 자동 생성'),
|
||
('⑥ 예상 효과',
|
||
'—',
|
||
'[정량적] 월 4시간+ 절감, VLOOKUP 매핑 시간 90%+ 단축, PC 자원 점유 해소\n'
|
||
'[정성적] 처방마감자료 정확성 확보, 처방·DCM 마감 동시 진행 시 병목 해소, 재작업 최소화'),
|
||
('⑦ 리스크·제약사항',
|
||
'△ 일부',
|
||
'☑ 개인정보 규제: MR 사번 등 개인정보 포함\n'
|
||
'☑ 사내 시스템 연동: 영업 DCM, 약가목록집, 회전관리장 등 사내 시스템 데이터 접근 필요\n'
|
||
'☐ 참여 시간 제한적(2~3시간)으로 과제 일정 지연 가능'),
|
||
]
|
||
)
|
||
|
||
# ─────────────────────────────────────────────
|
||
# 과제 8: 백송이
|
||
# ─────────────────────────────────────────────
|
||
add_eval_section(
|
||
doc, 8,
|
||
'매출 대시보드 제작 (통합 데이터 시각화)',
|
||
'디엔컴퍼니_재무기획실_전략기획팀', '백송이', '2500685',
|
||
'하루 4시간 이상 (적극 참여)',
|
||
[
|
||
('① 업무 규칙·요구사항 명확성',
|
||
'△ 일부 애매',
|
||
'"아직 정형화된 틀이 없는 상태로 신규 구축을 계획"이라고 명시. '
|
||
'각 팀(전략기획팀, RPM, ME)의 데이터 취합·시각화라는 방향은 있으나, '
|
||
'지표 정의·대시보드 구조 등 구체적 요구사항 정의가 선행되어야 함.'),
|
||
('② 현업 참여 의지',
|
||
'✓ 적극',
|
||
'하루 4시간 이상 적극 참여 가능. 주 12시간을 해당 업무에 투입 중이므로 높은 참여 동기 확인됨.'),
|
||
('③ 데이터 디지털화 여부',
|
||
'✓ 즉시 가능',
|
||
'Excel/CSV 형태. 과제 선발 후 관리 파일 및 예상 결과 폼 공유 예정. '
|
||
'다만 조직별 포맷·기준이 상이하여 데이터 표준화 작업이 선행 필요.'),
|
||
('④ 예상 AI Tool·인프라',
|
||
'—',
|
||
'☑ BI 대시보드 (매출 데이터 시각화)\n'
|
||
'☑ LLM (데이터 정합성 검증·지표 자동 산출)\n'
|
||
'☑ 노코드 워크플로우 n8n (데이터 자동 취합·가공)'),
|
||
('⑤ 목표 달성 기준',
|
||
'△ 구체화 필요',
|
||
'- 주 12시간 수작업 취합·가공 → 자동화로 단축 (구체적 목표 수치 미기재)\n'
|
||
'- 지표 정의 일관성 확보\n'
|
||
'- 신규 구축이므로 단계적 목표 설정 필요'),
|
||
('⑥ 예상 효과',
|
||
'—',
|
||
'[정량적] 주 12시간 데이터 취합·가공 시간 절감, 보고 속도 단축\n'
|
||
'[정성적] 지표 일관성 확보, 담당자 의존도 감소, 실행 전환 속도 향상, 통합 데이터 기반 의사결정 체계 구축'),
|
||
('⑦ 리스크·제약사항',
|
||
'△ 일부',
|
||
'☐ 다부서 데이터 통합 필요 (영업부, ME팀, 전략기획팀 등 조직별 포맷 상이)\n'
|
||
'☐ 요구사항 미확정 상태에서 범위 확대 리스크 (scope creep)\n'
|
||
'☐ 신규 구축이므로 기대 수준 조율 필요'),
|
||
]
|
||
)
|
||
|
||
# ── 종합 요약 테이블 ──
|
||
doc.add_page_break()
|
||
doc.add_heading('종합 평가 요약', level=1)
|
||
|
||
summary_table = doc.add_table(rows=9, cols=9)
|
||
summary_table.style = 'Light Grid Accent 1'
|
||
summary_table.alignment = WD_TABLE_ALIGNMENT.CENTER
|
||
|
||
headers = ['과제', '① 규칙 명확성', '② 참여 의지', '③ 데이터 준비', '④ AI Tool', '⑤ 목표 기준', '⑥ 예상 효과', '⑦ 리스크']
|
||
for i, h in enumerate(headers):
|
||
cell = summary_table.rows[0].cells[i]
|
||
cell.text = ''
|
||
p = cell.paragraphs[0]
|
||
p.alignment = WD_ALIGN_PARAGRAPH.CENTER
|
||
run = p.add_run(h)
|
||
run.bold = True
|
||
run.font.size = Pt(8)
|
||
set_cell_shading(cell, '2E75B6')
|
||
run.font.color.rgb = RGBColor(0xFF, 0xFF, 0xFF)
|
||
|
||
summary_data = [
|
||
['1. 박미경\nDashBoard', '✓', '✓', '✓', 'BI/LLM/n8n', '✓', '높음', '△'],
|
||
['2. 김희영\n채권조회', '✓', '✗', '✓', '웹앱/API', '✓', '중간', '✗'],
|
||
['3. 김지숙\n증빙검토', '✓', '✓', '✓', 'OCR/LLM/n8n', '✓', '매우 높음', '△'],
|
||
['4. 박지현\n스타산출', '✓', '△', '✓', 'n8n/RPA', '✓', '높음', '△'],
|
||
['5. 김진우\n메일링', '△', '△', '✓', 'LLM/n8n/API', '✓', '중간', '△'],
|
||
['6. 김진우\n논문기사', '△', '△', '✓', 'LLM/API', '✓', '중간', '△'],
|
||
['7. 이승민\n처방마감', '✓', '△', '✓', 'n8n/RPA', '✓', '높음', '△'],
|
||
['8. 백송이\n매출대시보드', '△', '✓', '✓', 'BI/LLM/n8n', '△', '높음', '△'],
|
||
]
|
||
|
||
for row_idx, row_data in enumerate(summary_data, 1):
|
||
for col_idx, val in enumerate(row_data):
|
||
cell = summary_table.rows[row_idx].cells[col_idx]
|
||
cell.text = ''
|
||
p = cell.paragraphs[0]
|
||
p.alignment = WD_ALIGN_PARAGRAPH.CENTER
|
||
run = p.add_run(val)
|
||
run.font.size = Pt(8)
|
||
if col_idx > 0:
|
||
if val == '✓' or val == '매우 높음':
|
||
set_cell_shading(cell, 'E2EFDA')
|
||
elif val in ('△', '중간'):
|
||
set_cell_shading(cell, 'FFF2CC')
|
||
elif val == '✗':
|
||
set_cell_shading(cell, 'FCE4EC')
|
||
elif val == '높음':
|
||
set_cell_shading(cell, 'E2EFDA')
|
||
|
||
# ── 종합 의견 ──
|
||
doc.add_paragraph()
|
||
doc.add_heading('종합 의견', level=2)
|
||
|
||
opinions = [
|
||
('과제 3 (김지숙 - 증빙 검토 자동화)',
|
||
'가장 높은 선정 적합도. 업무 규칙 명확, 적극적 참여 의지, OCR·LLM 등 AI 활용도 높음, '
|
||
'일 1,500건 대량 처리로 효과가 극대화됨. 개인정보 포함에 대한 보안 대책 수립 필요.'),
|
||
('과제 1 (박미경 - 목표 달성 DashBoard)',
|
||
'높은 선정 적합도. 명확한 프로세스와 적극적 참여 의지. BI 대시보드 + LLM 결산 자동 작성 조합으로 AI 활용 가치 높음. '
|
||
'SF CRM 연동 범위 사전 확정 필요.'),
|
||
('과제 4 (박지현 - 로컬 스타 산출)',
|
||
'업무 로직이 매우 명확하여 자동화 적합. 다만 참여 시간(2~3시간) 제한적이며, AI보다 RPA 성격이 강함. '
|
||
'참여 시간 확대 협의 후 선정 권장.'),
|
||
('과제 7 (이승민 - 처방마감자료)',
|
||
'업무 로직 매우 명확, 대용량 데이터 처리 자동화 효과 큼. 참여 시간 제한적(2~3시간)이나 월 1회 업무이므로 '
|
||
'집중 기간 조율 가능. 개인정보 보안 대책 수립 필요.'),
|
||
('과제 8 (백송이 - 매출 대시보드)',
|
||
'적극적 참여 의지와 높은 효과 기대. 다만 요구사항이 아직 미확정 상태이므로 '
|
||
'요건 정의 워크숍 후 착수 권장. 신규 구축 특성상 범위 관리 중요.'),
|
||
('과제 5, 6 (김진우 - 메일링/논문기사)',
|
||
'두 과제 모두 LLM 활용 가치는 있으나, 참여 의지가 불확실하고 요구사항 구체화 필요. '
|
||
'과제 6은 기존 시스템 상태 파악이 선행되어야 함. 참여 시간·요건 확정 후 재검토 권장.'),
|
||
('과제 2 (김희영 - 채권현황 조회)',
|
||
'참여 의지 불확실(AX특공대 불필요 기재), AI 활용 요소 미약(IT 시스템 개발 성격), '
|
||
'SAP 연동 제약 등으로 AX 과제 선정 부적합. IT 개발 과제로 별도 검토 권장.'),
|
||
]
|
||
|
||
for title, opinion in opinions:
|
||
p = doc.add_paragraph()
|
||
run_t = p.add_run(f'■ {title}: ')
|
||
run_t.bold = True
|
||
run_t.font.size = Pt(10)
|
||
run_o = p.add_run(opinion)
|
||
run_o.font.size = Pt(10)
|
||
|
||
base_dir = os.path.dirname(os.path.abspath(__file__))
|
||
output_path = os.path.join(base_dir, 'outputs', '20260223.doc')
|
||
os.makedirs(os.path.dirname(output_path), exist_ok=True)
|
||
doc.save(output_path)
|
||
print(f'Report saved: {output_path}')
|