From ae658a332ba8c7ae408314f5700e5dcbc5117101 Mon Sep 17 00:00:00 2001 From: b17301 Date: Thu, 9 Apr 2026 08:50:17 +0900 Subject: [PATCH] Fix contract linkage and persist related project groups --- data.db | Bin 31784960 -> 32878592 bytes main.py | 1052 ++++++++++++++++++++++++++++++++- templates/annual_summary.html | 158 +++-- templates/base.html | 3 +- templates/dashboard.html | 10 + templates/index.html | 29 + templates/projects.html | 742 ++++++++++++++++++++--- 7 files changed, 1838 insertions(+), 156 deletions(-) diff --git a/data.db b/data.db index 847541714c6c10720520ef7c9b15fc084dd908dd..f464890735eaf30b8ed5866a30075c5570ee252e 100644 GIT binary patch delta 751606 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%0D#Yut5gEEMd-j0lhETB11F0*payCz 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

E3;wbS)3|Gjc& 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 iX%B-X)GB139YE68Y%> delta 2415 zcmXZeWmJ?|0Eh8;VSoW+uv-y3&|xS+MQpLV11uB^5nFLAuob(zyRirC7VK7(-F4Fq z-QIPdzwC$KbKi6BIrrTA;l1ZNUO%)t980Z>isw&{G?_}b&0#W3CR3S|>UNj($U{*Z ztcKfRZ?m_>#hPWZezaye{WFq{F&1Y8Lm!XnSv8ZhY8r5XE6i|%J3L^4C%ljgxseBX zVTCvHAwLSBAPS){il8Wpp*TvQBub$)%D@L@;fr!8j|!-WN~nw~sETT+4nNd@_HKhe z>F1Q!eGQ=2!>)9hGPWcFcR??g#?Vo7>va@ zjK>5_#3W2cBBsEBshEc8n1Pu{LNaDyHs)Y1=3zb-U?CPE1&gr+OR)^gu>vcx3ahaO zYq1XNu>l*g37fG6Td@t>u>(7?3%jugd$AAuaR3K#2#0Y5M{x|tk%|*IiBmX@GdPQL za3T%qIFAdsh)cMPE4YelxQ-jRiCeghJIFvL?&2Qq;{hJx5gy|Sp5hsv;{{&g6<#9? zZ}1k`_yS+zE4;(k_y*tNJA98H@E$+nC;W_G@Btt3D}KZ8_yd39FZ_*v@Gm~i<=ABorJzzsDXbJxiYmpF;z|jnq*6*L zt&~xGl(LGiQcfwaR8T4^m6Xa#6{V_DO{uQMISDhDsx)vC>3osx(s~mF7wdrKQqJX|1$T+A8go_DTn(qtZ#~ ztaMSjD&3UsN)M%{(o5;B^iiUeXr-^xPwB4=PzEY7${=O15~~bRhAP99;mQalP8q4h zE2ESIWwbIz8LNy_#w!z)iOM8pvXZDwQ5?!tWtuWwnW4;7l9Xg+mNHwJqs&$2Df5*D z%0gw4lAaznYP+){2Uca#hzQ@N|$Q|>Ddl!wYA<+1Wad8#~9o+~eum&z;UwUVX0 zQQjI(t~jH-!)#46Syx1-b%_4_5{b!qki2(~2sb=R70crp8W0yhB6dK(gi+n>fws`# ziM~0bZ&umn}4WpugP|sJ=o6{=x3|tV+#%ovWEqQoJ-3#%-*hU9%iRUMz%55 z_`H6S+X3^VY{N5`*%D^*n&4H(;;^KqL>&#unf~DJ-2X1yh;VTxW@Z~nZmI3t#a76f K`hRB$?*9RX)jpsA diff --git a/main.py b/main.py index 82f50db..0a58bd1 100644 --- a/main.py +++ b/main.py @@ -229,6 +229,94 @@ def init_db() -> None: """ ) ) + conn.execute( + text( + """ + CREATE TABLE IF NOT EXISTS project_related_links ( + base_support_dept_code TEXT NOT NULL, + related_support_dept_code TEXT NOT NULL, + link_source TEXT DEFAULT 'manual', + updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, + PRIMARY KEY (base_support_dept_code, related_support_dept_code) + ) + """ + ) + ) + conn.execute( + text( + """ + CREATE INDEX IF NOT EXISTS idx_project_related_links_base + ON project_related_links (base_support_dept_code) + """ + ) + ) + conn.execute( + text( + """ + CREATE TABLE IF NOT EXISTS project_contract_info ( + support_dept_code TEXT PRIMARY KEY, + raw_contract_code TEXT DEFAULT '', + business_division TEXT DEFAULT '', + order_method TEXT DEFAULT '', + owner_department TEXT DEFAULT '', + client_name TEXT DEFAULT '', + support_dept_name TEXT DEFAULT '', + work_category TEXT DEFAULT '', + order_date TEXT DEFAULT '', + contract_date TEXT DEFAULT '', + project_start_date TEXT DEFAULT '', + project_end_date TEXT DEFAULT '', + contract_status TEXT DEFAULT '', + joint_contract TEXT DEFAULT '', + pm_name TEXT DEFAULT '', + progress_status TEXT DEFAULT '', + total_contract_amount REAL DEFAULT 0, + hanmac_contract_amount REAL DEFAULT 0, + review_tag TEXT DEFAULT '', + review_note TEXT DEFAULT '', + source_file TEXT DEFAULT '', + updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP + ) + """ + ) + ) + conn.execute( + text( + """ + CREATE TABLE IF NOT EXISTS project_billing_entries ( + id INTEGER PRIMARY KEY AUTOINCREMENT, + support_dept_code TEXT, + raw_project_code TEXT DEFAULT '', + round_code TEXT DEFAULT '', + support_department TEXT DEFAULT '', + business_division TEXT DEFAULT '', + support_dept_name TEXT DEFAULT '', + contract_amount REAL DEFAULT 0, + client_name TEXT DEFAULT '', + billing_type TEXT DEFAULT '', + progress_round TEXT DEFAULT '', + billing_date TEXT DEFAULT '', + tax_invoice_date TEXT DEFAULT '', + expected_collection_date TEXT DEFAULT '', + billed_amount REAL DEFAULT 0, + collected_amount REAL DEFAULT 0, + balance_amount REAL DEFAULT 0, + collection_rate REAL DEFAULT 0, + note TEXT DEFAULT '', + source_file TEXT DEFAULT '', + updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP + ) + """ + ) + ) + conn.execute( + text( + """ + CREATE INDEX IF NOT EXISTS idx_project_billing_entries_code + ON project_billing_entries (support_dept_code, billing_date) + """ + ) + ) existing_columns = { row[1] for row in conn.execute(text("PRAGMA table_info(project_status)")).fetchall() @@ -274,6 +362,12 @@ def init_db() -> None: for column_name, column_type in required_page_state_columns.items(): if column_name not in page_state_columns: conn.execute(text(f"ALTER TABLE project_page_state ADD COLUMN {column_name} {column_type}")) + related_link_columns = { + row[1] + for row in conn.execute(text("PRAGMA table_info(project_related_links)")).fetchall() + } + if "link_source" not in related_link_columns: + conn.execute(text("ALTER TABLE project_related_links ADD COLUMN link_source TEXT DEFAULT 'manual'")) def count_transactions() -> int: @@ -289,10 +383,349 @@ def existing_source_files() -> set[str]: return {normalize_text(row[0]) for row in rows if normalize_text(row[0])} +def existing_contract_source_files() -> set[str]: + with engine.begin() as conn: + rows = conn.execute( + text("SELECT DISTINCT source_file FROM project_contract_info WHERE COALESCE(source_file, '') <> ''") + ).fetchall() + return {normalize_text(row[0]) for row in rows if normalize_text(row[0])} + + +def existing_billing_source_files() -> set[str]: + with engine.begin() as conn: + rows = conn.execute( + text("SELECT DISTINCT source_file FROM project_billing_entries WHERE COALESCE(source_file, '') <> ''") + ).fetchall() + return {normalize_text(row[0]) for row in rows if normalize_text(row[0])} + + +def workbook_row_values(sheet: Any, row_number: int) -> list[str]: + return [normalize_text(sheet.cell(row_number, column).value) for column in range(1, sheet.max_column + 1)] + + +def detect_excel_import_kind(workbook: Any, filename: str = "") -> str: + sheet = workbook.active + row1 = workbook_row_values(sheet, 1) + row5 = workbook_row_values(sheet, 5) if sheet.max_row >= 5 else [] + filename = normalize_text(filename) + if {"총괄코드", "총 계약금액", "한맥계약금액"}.issubset(set(row1)): + return "contract_status" + if {"차수코드", "차수사업명", "청구금액", "수금금액"}.issubset(set(row5)): + return "billing_status" + if "계약현황" in filename: + return "contract_status" + if "기성청구현황" in filename: + return "billing_status" + return "transactions" + + +def import_contract_status_workbook(workbook: Any, source_file: str) -> int: + sheet = workbook.active + with engine.begin() as conn: + conn.execute( + text("DELETE FROM project_contract_info WHERE source_file = :source_file"), + {"source_file": source_file}, + ) + inserted = 0 + for row in sheet.iter_rows(min_row=2, values_only=True): + support_dept_code = normalize_project_code(row[1] if len(row) > 1 else "") + if not support_dept_code: + continue + payload = { + "support_dept_code": support_dept_code, + "raw_contract_code": normalize_text(row[1] if len(row) > 1 else ""), + "business_division": normalize_text(row[0] if len(row) > 0 else ""), + "order_method": normalize_text(row[2] if len(row) > 2 else ""), + "owner_department": normalize_text(row[3] if len(row) > 3 else ""), + "client_name": normalize_text(row[4] if len(row) > 4 else ""), + "support_dept_name": normalize_text(row[5] if len(row) > 5 else ""), + "work_category": normalize_text(row[6] if len(row) > 6 else ""), + "order_date": normalize_date_text(row[7] if len(row) > 7 else ""), + "contract_date": normalize_date_text(row[8] if len(row) > 8 else ""), + "project_start_date": normalize_date_text(row[9] if len(row) > 9 else ""), + "project_end_date": normalize_date_text(row[10] if len(row) > 10 else ""), + "contract_status": normalize_text(row[11] if len(row) > 11 else ""), + "joint_contract": normalize_text(row[12] if len(row) > 12 else ""), + "pm_name": normalize_text(row[13] if len(row) > 13 else ""), + "progress_status": normalize_text(row[14] if len(row) > 14 else ""), + "total_contract_amount": normalize_amount(row[15] if len(row) > 15 else 0), + "hanmac_contract_amount": normalize_amount(row[16] if len(row) > 16 else 0), + "review_tag": "", + "review_note": "", + "source_file": source_file, + } + conn.execute( + text( + """ + INSERT INTO project_contract_info ( + support_dept_code, raw_contract_code, business_division, order_method, + owner_department, client_name, support_dept_name, work_category, + order_date, contract_date, project_start_date, project_end_date, + contract_status, joint_contract, pm_name, progress_status, + total_contract_amount, hanmac_contract_amount, review_tag, review_note, + source_file, updated_at + ) VALUES ( + :support_dept_code, :raw_contract_code, :business_division, :order_method, + :owner_department, :client_name, :support_dept_name, :work_category, + :order_date, :contract_date, :project_start_date, :project_end_date, + :contract_status, :joint_contract, :pm_name, :progress_status, + :total_contract_amount, :hanmac_contract_amount, :review_tag, :review_note, + :source_file, CURRENT_TIMESTAMP + ) + ON CONFLICT(support_dept_code) DO UPDATE SET + raw_contract_code = excluded.raw_contract_code, + business_division = excluded.business_division, + order_method = excluded.order_method, + owner_department = excluded.owner_department, + client_name = excluded.client_name, + support_dept_name = excluded.support_dept_name, + work_category = excluded.work_category, + order_date = excluded.order_date, + contract_date = excluded.contract_date, + project_start_date = excluded.project_start_date, + project_end_date = excluded.project_end_date, + contract_status = excluded.contract_status, + joint_contract = excluded.joint_contract, + pm_name = excluded.pm_name, + progress_status = excluded.progress_status, + total_contract_amount = excluded.total_contract_amount, + hanmac_contract_amount = excluded.hanmac_contract_amount, + source_file = excluded.source_file, + updated_at = CURRENT_TIMESTAMP + """ + ), + payload, + ) + inserted += 1 + refresh_contract_review_tags() + sync_auto_project_related_links() + return inserted + + +def import_billing_status_workbook(workbook: Any, source_file: str) -> int: + sheet = workbook.active + with engine.begin() as conn: + conn.execute( + text("DELETE FROM project_billing_entries WHERE source_file = :source_file"), + {"source_file": source_file}, + ) + inserted = 0 + current: dict[str, Any] = {} + for row in sheet.iter_rows(min_row=6, values_only=True): + values = list(row) + if values and all(value in (None, "") for value in values): + continue + if values[0] is not None: + current["support_department"] = normalize_text(values[0]) + if len(values) > 1 and values[1] is not None: + current["business_division"] = normalize_text(values[1]) + if len(values) > 2 and values[2] is not None: + current["raw_project_code"] = normalize_text(values[2]) + if len(values) > 3 and values[3] is not None: + current["round_code"] = normalize_text(values[3]) + if len(values) > 4 and values[4] is not None: + current["support_dept_name"] = normalize_text(values[4]) + if len(values) > 5 and values[5] is not None: + current["contract_amount"] = normalize_amount(values[5]) + if len(values) > 6 and values[6] is not None: + current["client_name"] = normalize_text(values[6]) + + round_code_text = normalize_text(current.get("round_code")) + round_prefix = next((character.upper() for character in round_code_text if character.isalpha()), "Y") + support_dept_code = normalize_project_code( + current.get("raw_project_code") or current.get("round_code"), + default_prefix=round_prefix, + ) + if not support_dept_code: + continue + + summary_row = normalize_text(values[11] if len(values) > 11 else "") == "합계" or normalize_text(values[10] if len(values) > 10 else "").startswith("수금 :") + department_summary = "합계" in normalize_text(values[4] if len(values) > 4 else "") + if summary_row or department_summary: + continue + + payload = { + "support_dept_code": support_dept_code, + "raw_project_code": normalize_text(current.get("raw_project_code")), + "round_code": normalize_text(current.get("round_code")), + "support_department": normalize_text(current.get("support_department")), + "business_division": normalize_text(current.get("business_division")), + "support_dept_name": normalize_text(current.get("support_dept_name")), + "contract_amount": normalize_amount(current.get("contract_amount")), + "client_name": normalize_text(current.get("client_name")), + "billing_type": normalize_text(values[7] if len(values) > 7 else ""), + "progress_round": normalize_round_value(values[8] if len(values) > 8 else ""), + "billing_date": normalize_date_text(values[9] if len(values) > 9 else ""), + "tax_invoice_date": normalize_date_text(values[10] if len(values) > 10 else ""), + "expected_collection_date": normalize_date_text(values[11] if len(values) > 11 else ""), + "billed_amount": normalize_amount(values[12] if len(values) > 12 else 0), + "collected_amount": normalize_amount(values[13] if len(values) > 13 else 0), + "balance_amount": normalize_amount(values[14] if len(values) > 14 else 0), + "collection_rate": normalize_amount(values[15] if len(values) > 15 else 0), + "note": normalize_text(values[16] if len(values) > 16 else ""), + "source_file": source_file, + } + conn.execute( + text( + """ + INSERT INTO project_billing_entries ( + support_dept_code, raw_project_code, round_code, support_department, + business_division, support_dept_name, contract_amount, client_name, + billing_type, progress_round, billing_date, tax_invoice_date, + expected_collection_date, billed_amount, collected_amount, + balance_amount, collection_rate, note, source_file, updated_at + ) VALUES ( + :support_dept_code, :raw_project_code, :round_code, :support_department, + :business_division, :support_dept_name, :contract_amount, :client_name, + :billing_type, :progress_round, :billing_date, :tax_invoice_date, + :expected_collection_date, :billed_amount, :collected_amount, + :balance_amount, :collection_rate, :note, :source_file, CURRENT_TIMESTAMP + ) + """ + ), + payload, + ) + inserted += 1 + refresh_contract_review_tags() + return inserted + + +def refresh_contract_review_tags() -> None: + with engine.begin() as conn: + billing_rows = conn.execute( + text( + """ + SELECT support_dept_code, MAX(contract_amount) AS billing_contract_amount + FROM project_billing_entries + GROUP BY support_dept_code + """ + ) + ).mappings().all() + billing_map = { + normalize_text(row["support_dept_code"]): normalize_amount(row["billing_contract_amount"]) + for row in billing_rows + if normalize_text(row["support_dept_code"]) + } + contract_rows = conn.execute( + text("SELECT support_dept_code, hanmac_contract_amount FROM project_contract_info") + ).mappings().all() + for row in contract_rows: + support_dept_code = normalize_text(row["support_dept_code"]) + hanmac_contract_amount = normalize_amount(row["hanmac_contract_amount"]) + billing_contract_amount = normalize_amount(billing_map.get(support_dept_code)) + review_tag = "" + review_note = "" + if billing_contract_amount and abs(hanmac_contract_amount - billing_contract_amount) > 0.5: + review_tag = "변경계약 검토 필요" + review_note = ( + f"계약현황 한맥계약금액 {hanmac_contract_amount:,.0f}원 / " + f"기성청구현황 계약금액 {billing_contract_amount:,.0f}원" + ) + conn.execute( + text( + """ + UPDATE project_contract_info + SET review_tag = :review_tag, + review_note = :review_note, + updated_at = CURRENT_TIMESTAMP + WHERE support_dept_code = :support_dept_code + """ + ), + { + "support_dept_code": support_dept_code, + "review_tag": review_tag, + "review_note": review_note, + }, + ) + + +def sync_auto_project_related_links() -> None: + with engine.begin() as conn: + billing_rows = conn.execute( + text( + """ + SELECT support_dept_code, raw_project_code, round_code + FROM project_billing_entries + WHERE COALESCE(support_dept_code, '') <> '' + """ + ) + ).mappings().all() + existing_codes = { + normalize_text(row[0]) + for row in conn.execute( + text( + """ + SELECT DISTINCT support_dept_code FROM transactions + WHERE COALESCE(support_dept_code, '') <> '' + UNION + SELECT DISTINCT support_dept_code FROM project_status + WHERE COALESCE(support_dept_code, '') <> '' + UNION + SELECT DISTINCT support_dept_code FROM project_contract_info + WHERE COALESCE(support_dept_code, '') <> '' + UNION + SELECT DISTINCT support_dept_code FROM project_billing_entries + WHERE COALESCE(support_dept_code, '') <> '' + """ + ) + ).fetchall() + if normalize_text(row[0]) + } + + cluster_map: dict[str, set[str]] = {} + for row in billing_rows: + base_code = normalize_text(row["support_dept_code"]) + raw_project_code = normalize_text(row["raw_project_code"]) + round_code = normalize_project_code(row["round_code"], default_prefix=base_code[:1] or "Y") + if not base_code: + continue + cluster_key = raw_project_code or base_code + cluster = cluster_map.setdefault(cluster_key, set()) + if base_code in existing_codes: + cluster.add(base_code) + if round_code and round_code in existing_codes: + cluster.add(round_code) + + conn.execute(text("DELETE FROM project_related_links WHERE COALESCE(link_source, 'manual') = 'auto'")) + for cluster_codes in cluster_map.values(): + normalized_cluster = sorted(cluster_codes) + if len(normalized_cluster) < 2: + continue + for base_code in normalized_cluster: + for related_code in normalized_cluster: + if base_code == related_code: + continue + conn.execute( + text( + """ + INSERT INTO project_related_links ( + base_support_dept_code, + related_support_dept_code, + link_source, + updated_at + ) VALUES ( + :base_support_dept_code, + :related_support_dept_code, + 'auto', + CURRENT_TIMESTAMP + ) + ON CONFLICT(base_support_dept_code, related_support_dept_code) DO UPDATE SET + link_source = excluded.link_source, + updated_at = CURRENT_TIMESTAMP + """ + ), + { + "base_support_dept_code": base_code, + "related_support_dept_code": related_code, + }, + ) + + @app.on_event("startup") def on_startup() -> None: init_db() auto_import_project_excels() + sync_auto_project_related_links() logger.info("DB ready at %s", DB_PATH) @@ -341,6 +774,29 @@ def normalize_date_text(value: Any) -> str: return text_value +def normalize_project_code(value: Any, default_prefix: str = "Y") -> str: + text_value = normalize_text(value).replace("\u3164", "").replace("\xa0", "") + prefix = "" + for character in text_value: + if character.isalpha(): + prefix = character.upper() + break + digits = "".join(character for character in text_value if character.isdigit()) + if not digits: + return "" + return f"{prefix or default_prefix}{int(digits)}" + + +def normalize_round_value(value: Any) -> str: + text_value = normalize_text(value) + if not text_value: + return "" + digits = "".join(character for character in text_value if character.isdigit()) + if digits: + return str(int(digits)) + return text_value + + def decode_json_rows(value: Any) -> list[dict[str, Any]]: text_value = normalize_text(value) if not text_value: @@ -381,7 +837,16 @@ def get_support_department_options() -> list[dict[str, str]]: text( """ SELECT DISTINCT support_dept_code, support_dept_name - FROM transactions + FROM ( + SELECT support_dept_code, support_dept_name + FROM transactions + UNION ALL + SELECT support_dept_code, support_dept_name + FROM project_contract_info + UNION ALL + SELECT support_dept_code, support_dept_name + FROM project_billing_entries + ) AS merged WHERE COALESCE(support_dept_code, '') <> '' AND COALESCE(support_dept_name, '') <> '' AND support_dept_code NOT IN ('ZZZZZZ') @@ -447,6 +912,151 @@ def get_cost_account_options() -> list[dict[str, str]]: return sorted(deduped.values(), key=lambda item: (item["account_code"], item["account_name"])) +def get_import_sync_summary() -> dict[str, Any]: + with engine.begin() as conn: + row = conn.execute( + text( + """ + SELECT + (SELECT COUNT(*) FROM project_contract_info) AS contract_project_count, + (SELECT COUNT(*) FROM project_billing_entries) AS billing_entry_count, + (SELECT COUNT(DISTINCT support_dept_code) FROM project_billing_entries) AS billing_project_count, + (SELECT COUNT(*) FROM project_contract_info WHERE COALESCE(review_tag, '') <> '') AS review_needed_count, + (SELECT SUM(hanmac_contract_amount) FROM project_contract_info) AS total_hanmac_contract_amount, + (SELECT SUM(collected_amount) FROM project_billing_entries) AS total_collected_amount, + (SELECT MAX(updated_at) FROM project_contract_info) AS latest_contract_sync, + (SELECT MAX(updated_at) FROM project_billing_entries) AS latest_billing_sync + """ + ) + ).mappings().first() + return dict(row) if row else {} + + +def get_project_contract_info_map() -> dict[str, dict[str, Any]]: + with engine.begin() as conn: + rows = conn.execute( + text("SELECT * FROM project_contract_info ORDER BY support_dept_code") + ).mappings().all() + return {normalize_text(row["support_dept_code"]): dict(row) for row in rows} + + +def get_project_billing_summary_map() -> dict[str, dict[str, Any]]: + with engine.begin() as conn: + rows = conn.execute( + text( + """ + SELECT support_dept_code, + MAX(support_dept_name) AS support_dept_name, + MAX(contract_amount) AS contract_amount, + MAX(client_name) AS client_name, + MAX(support_department) AS support_department, + MAX(business_division) AS business_division, + SUM(billed_amount) AS billed_amount, + SUM(collected_amount) AS collected_amount, + SUM(balance_amount) AS balance_amount, + MAX(billing_date) AS latest_billing_date + FROM project_billing_entries + GROUP BY support_dept_code + ORDER BY support_dept_code + """ + ) + ).mappings().all() + entry_rows = conn.execute( + text( + """ + SELECT support_dept_code, + billing_type, + progress_round, + billing_date, + tax_invoice_date, + expected_collection_date, + billed_amount, + collected_amount, + balance_amount, + collection_rate, + note + FROM project_billing_entries + ORDER BY support_dept_code, billing_date, progress_round, id + """ + ) + ).mappings().all() + result = {normalize_text(row["support_dept_code"]): dict(row) for row in rows} + for item in result.values(): + item["entries"] = [] + for row in entry_rows: + support_dept_code = normalize_text(row["support_dept_code"]) + if support_dept_code not in result: + continue + result[support_dept_code]["entries"].append( + { + "progress_type": "", + "billing_round": normalize_round_value(row["progress_round"]), + "billing_type": normalize_text(row["billing_type"]), + "billing_date": normalize_date_text(row["billing_date"]), + "billed_amount": normalize_amount(row["billed_amount"]), + "round": normalize_round_value(row["progress_round"]), + "date": normalize_date_text(row["tax_invoice_date"]) or normalize_date_text(row["expected_collection_date"]), + "amount": normalize_amount(row["collected_amount"]), + "balance_amount": normalize_amount(row["balance_amount"]), + "collection_rate": normalize_amount(row["collection_rate"]), + "note": normalize_text(row["note"]), + } + ) + return result + + +def merge_project_external_fields( + item: dict[str, Any], + contract_info: dict[str, Any] | None, + billing_summary: dict[str, Any] | None, +) -> dict[str, Any]: + contract_info = contract_info or {} + billing_summary = billing_summary or {} + support_dept_name = normalize_text(item.get("support_dept_name")) or normalize_text(contract_info.get("support_dept_name")) or normalize_text(billing_summary.get("support_dept_name")) + contract_amount = normalize_amount(item.get("contract_amount")) + if not contract_amount: + contract_amount = normalize_amount(contract_info.get("hanmac_contract_amount")) or normalize_amount(billing_summary.get("contract_amount")) + collection_amount = normalize_amount(item.get("collection_amount")) + if not collection_amount: + collection_amount = normalize_amount(billing_summary.get("collected_amount")) + collection_entries = item.get("collection_entries") + if not collection_entries: + collection_entries = billing_summary.get("entries", []) + project_start_date = normalize_text(item.get("project_start_date")) or normalize_text(contract_info.get("project_start_date")) + project_end_date = normalize_text(item.get("project_end_date")) or normalize_text(contract_info.get("project_end_date")) + completion_status = normalize_text(item.get("completion_status")) or normalize_text(contract_info.get("progress_status")) + project_type = normalize_text(item.get("project_type")) or normalize_text(contract_info.get("business_division")) or normalize_text(billing_summary.get("business_division")) + progress_rate = normalize_amount(item.get("progress_rate")) + if not progress_rate and contract_amount: + progress_rate = (collection_amount / contract_amount * 100) if contract_amount else 0.0 + + item["support_dept_name"] = support_dept_name + item["contract_amount"] = contract_amount + item["collection_amount"] = collection_amount + item["collection_entries"] = collection_entries or [] + item["project_start_date"] = project_start_date + item["project_end_date"] = project_end_date + item["completion_status"] = completion_status + item["project_type"] = project_type + item["progress_rate"] = progress_rate + item["client_name"] = normalize_text(contract_info.get("client_name")) or normalize_text(billing_summary.get("client_name")) + item["order_method"] = normalize_text(contract_info.get("order_method")) + item["joint_contract"] = normalize_text(contract_info.get("joint_contract")) + item["pm_name"] = normalize_text(contract_info.get("pm_name")) + item["contract_status"] = normalize_text(contract_info.get("contract_status")) + item["progress_status"] = normalize_text(contract_info.get("progress_status")) + item["work_category"] = normalize_text(contract_info.get("work_category")) + item["review_tag"] = normalize_text(contract_info.get("review_tag")) + item["review_note"] = normalize_text(contract_info.get("review_note")) + item["total_contract_amount"] = normalize_amount(contract_info.get("total_contract_amount")) + item["hanmac_contract_amount"] = normalize_amount(contract_info.get("hanmac_contract_amount")) + item["billing_contract_amount"] = normalize_amount(billing_summary.get("contract_amount")) + item["billed_amount"] = normalize_amount(billing_summary.get("billed_amount")) + item["collection_balance_amount"] = normalize_amount(billing_summary.get("balance_amount")) + item["latest_billing_date"] = normalize_text(billing_summary.get("latest_billing_date")) + return item + + def normalize_account_display(account_code: Any, account_name: Any) -> tuple[str, str, str]: normalized_code = normalize_text(account_code)[:6] normalized_name = re.sub(r"\s*\(.*$", "", normalize_text(account_name)).strip() @@ -461,7 +1071,14 @@ def get_data_version() -> str: with engine.begin() as conn: transaction_updated = conn.execute(text("SELECT MAX(updated_at) FROM transactions")).scalar() project_updated = conn.execute(text("SELECT MAX(updated_at) FROM project_status")).scalar() - versions = [normalize_text(transaction_updated), normalize_text(project_updated)] + contract_updated = conn.execute(text("SELECT MAX(updated_at) FROM project_contract_info")).scalar() + billing_updated = conn.execute(text("SELECT MAX(updated_at) FROM project_billing_entries")).scalar() + versions = [ + normalize_text(transaction_updated), + normalize_text(project_updated), + normalize_text(contract_updated), + normalize_text(billing_updated), + ] return max((version for version in versions if version), default="") @@ -834,6 +1451,8 @@ def get_business_monthly_summary() -> list[dict[str, Any]]: def get_project_status_rows() -> list[dict[str, Any]]: + contract_info_map = get_project_contract_info_map() + billing_summary_map = get_project_billing_summary_map() with engine.begin() as conn: rows = conn.execute( text( @@ -902,17 +1521,68 @@ def get_project_status_rows() -> list[dict[str, Any]]: ) ).mappings().all() result = [] + seen_codes: set[str] = set() for row in rows: item = dict(row) item["collection_entries"] = decode_json_rows(item.pop("collection_entries_json", "[]")) item["task_plan_entries"] = decode_json_rows(item.pop("task_plan_entries_json", "[]")) item["exec_budget_entries"] = decode_json_rows(item.pop("exec_budget_entries_json", "[]")) item["actual_input_entries"] = decode_json_rows(item.pop("actual_input_entries_json", "[]")) + item = merge_project_external_fields( + item, + contract_info_map.get(normalize_text(item.get("support_dept_code"))), + billing_summary_map.get(normalize_text(item.get("support_dept_code"))), + ) + seen_codes.add(normalize_text(item.get("support_dept_code"))) result.append(item) + for support_dept_code in sorted((set(contract_info_map) | set(billing_summary_map)) - seen_codes): + result.append( + merge_project_external_fields( + { + "support_dept_code": support_dept_code, + "support_dept_name": "", + "row_count": 0, + "progress_rate": 0, + "contract_amount": 0, + "collection_amount": 0, + "collection_entries": [], + "change_round": "", + "item_investment": 0, + "task_plan_department_budget": 0, + "task_plan_outsource_budget": 0, + "task_plan_outsource_detail": "", + "task_plan_joint_operating_cost": 0, + "task_plan_entries": [], + "exec_budget_labor_by_grade": 0, + "exec_budget_outsource": 0, + "exec_budget_cost_plan": 0, + "exec_budget_entries": [], + "actual_input_entries": [], + "expected_as_cost": 0, + "expected_sga_budget": 0, + "project_start_date": "", + "project_end_date": "", + "completion_status": "", + "notes": "", + "total_cost": 0, + "total_sga": 0, + "total_revenue": 0, + "actual_labor": 0, + "actual_outsource": 0, + "latest_year": 0, + "latest_month": 0, + "project_type": "", + }, + contract_info_map.get(support_dept_code), + billing_summary_map.get(support_dept_code), + ) + ) return result def get_project_status_for_edit(support_dept_code: str | None) -> dict[str, Any]: + contract_info_map = get_project_contract_info_map() + billing_summary_map = get_project_billing_summary_map() if not support_dept_code: return { "support_dept_code": "", @@ -943,6 +1613,21 @@ def get_project_status_for_edit(support_dept_code: str | None) -> dict[str, Any] "project_end_date": "", "completion_status": "", "notes": "", + "client_name": "", + "order_method": "", + "joint_contract": "", + "pm_name": "", + "contract_status": "", + "progress_status": "", + "work_category": "", + "review_tag": "", + "review_note": "", + "total_contract_amount": 0, + "hanmac_contract_amount": 0, + "billing_contract_amount": 0, + "billed_amount": 0, + "collection_balance_amount": 0, + "latest_billing_date": "", "updated_at": "", } @@ -1022,6 +1707,21 @@ def get_project_status_for_edit(support_dept_code: str | None) -> dict[str, Any] "project_end_date": "", "completion_status": "", "notes": "", + "client_name": "", + "order_method": "", + "joint_contract": "", + "pm_name": "", + "contract_status": "", + "progress_status": "", + "work_category": "", + "review_tag": "", + "review_note": "", + "total_contract_amount": 0, + "hanmac_contract_amount": 0, + "billing_contract_amount": 0, + "billed_amount": 0, + "collection_balance_amount": 0, + "latest_billing_date": "", "updated_at": "", } result = dict(row) @@ -1112,7 +1812,11 @@ def get_project_status_for_edit(support_dept_code: str | None) -> dict[str, Any] "note": "기존 항목별투입액", } ] - return result + return merge_project_external_fields( + result, + contract_info_map.get(normalize_text(result.get("support_dept_code"))), + billing_summary_map.get(normalize_text(result.get("support_dept_code"))), + ) def get_project_page_state() -> dict[str, Any]: @@ -1209,6 +1913,78 @@ def save_project_page_state(payload: dict[str, Any]) -> None: "related_project_selections_json": json.dumps(related_project_selections, ensure_ascii=False), }, ) + for base_code, related_codes in related_project_selections.items(): + save_project_related_links(base_code, related_codes) + + +def get_project_related_links_map() -> dict[str, list[str]]: + with engine.begin() as conn: + rows = conn.execute( + text( + """ + SELECT base_support_dept_code, related_support_dept_code + FROM project_related_links + ORDER BY base_support_dept_code, related_support_dept_code + """ + ) + ).mappings().all() + related_map: dict[str, list[str]] = {} + for row in rows: + base_code = normalize_text(row["base_support_dept_code"]) + related_code = normalize_text(row["related_support_dept_code"]) + if not base_code or not related_code: + continue + related_map.setdefault(base_code, []).append(related_code) + return related_map + + +def save_project_related_links(base_support_dept_code: str, related_codes: list[Any]) -> None: + base_code = normalize_text(base_support_dept_code) + if not base_code: + return + normalized_codes = sorted( + { + normalize_text(code) + for code in related_codes + if normalize_text(code) and normalize_text(code) != base_code + } + ) + with engine.begin() as conn: + conn.execute( + text( + """ + DELETE FROM project_related_links + WHERE base_support_dept_code = :base_support_dept_code + AND COALESCE(link_source, 'manual') = 'manual' + """ + ), + {"base_support_dept_code": base_code}, + ) + for related_code in normalized_codes: + conn.execute( + text( + """ + INSERT INTO project_related_links ( + base_support_dept_code, + related_support_dept_code, + link_source, + updated_at + ) VALUES ( + :base_support_dept_code, + :related_support_dept_code, + 'manual', + CURRENT_TIMESTAMP + ) + ON CONFLICT(base_support_dept_code, related_support_dept_code) DO UPDATE SET + link_source = excluded.link_source, + updated_at = CURRENT_TIMESTAMP + """ + ), + { + "base_support_dept_code": base_code, + "related_support_dept_code": related_code, + }, + ) def get_project_year_options() -> list[int]: @@ -1312,6 +2088,197 @@ def get_project_dashboard_summary(selected_year: int | None) -> dict[str, Any]: } +def get_uncontracted_project_dashboard(selected_year: int | None) -> dict[str, Any]: + selected_year = resolve_selected_year(selected_year) + transaction_year_clause = "" + params: dict[str, Any] = {} + if selected_year: + transaction_year_clause = "AND t.year = :selected_year" + params["selected_year"] = selected_year + else: + recent_10_start_year = get_recent_10_start_year() + if recent_10_start_year is not None: + transaction_year_clause = "AND t.year >= :recent_10_start_year" + params["recent_10_start_year"] = recent_10_start_year + + with engine.begin() as conn: + summary = conn.execute( + text( + f""" + WITH project_universe AS ( + SELECT DISTINCT support_dept_code, support_dept_name + FROM transactions + WHERE COALESCE(support_dept_code, '') <> '' + AND support_dept_code NOT IN ('ZZZZZZ') + AND COALESCE(support_dept_name, '') <> '' + AND support_dept_name NOT IN ('공통', '경영지원부', '기술개발센터', '임원실', '기술개발부', '총괄기획실') + UNION + SELECT support_dept_code, support_dept_name + FROM project_contract_info + WHERE COALESCE(support_dept_code, '') <> '' + UNION + SELECT support_dept_code, support_dept_name + FROM project_billing_entries + WHERE COALESCE(support_dept_code, '') <> '' + ), + contract_flags AS ( + SELECT support_dept_code, + COALESCE(hanmac_contract_amount, 0) AS hanmac_contract_amount, + COALESCE(review_tag, '') AS review_tag + FROM project_contract_info + ), + project_amounts AS ( + SELECT t.support_dept_code, + SUM(CASE WHEN t.account_code LIKE '5%' OR t.account_code LIKE '6%' THEN t.amount ELSE 0 END) AS expense_amount, + SUM(CASE WHEN {REVENUE_SQL.replace('account_code', 't.account_code')} THEN t.amount ELSE 0 END) AS revenue_amount + FROM transactions AS t + WHERE COALESCE(t.support_dept_code, '') <> '' + AND t.support_dept_code NOT IN ('ZZZZZZ') + {transaction_year_clause} + GROUP BY t.support_dept_code + ) + SELECT + SUM(CASE WHEN COALESCE(contract_flags.hanmac_contract_amount, 0) <= 0 THEN 1 ELSE 0 END) AS uncontracted_projects, + SUM(CASE WHEN COALESCE(contract_flags.hanmac_contract_amount, 0) <= 0 AND COALESCE(project_amounts.expense_amount, 0) > 0 THEN 1 ELSE 0 END) AS cost_incurred_projects, + SUM(CASE WHEN COALESCE(contract_flags.hanmac_contract_amount, 0) <= 0 THEN COALESCE(project_amounts.expense_amount, 0) ELSE 0 END) AS expense_amount, + SUM(CASE WHEN COALESCE(contract_flags.hanmac_contract_amount, 0) <= 0 THEN COALESCE(project_amounts.revenue_amount, 0) ELSE 0 END) AS revenue_amount, + SUM(CASE WHEN COALESCE(contract_flags.review_tag, '') <> '' THEN 1 ELSE 0 END) AS review_needed_projects + FROM project_universe + LEFT JOIN contract_flags + ON contract_flags.support_dept_code = project_universe.support_dept_code + LEFT JOIN project_amounts + ON project_amounts.support_dept_code = project_universe.support_dept_code + """ + ), + params, + ).mappings().first() + + yearly_rows = conn.execute( + text( + f""" + WITH yearly_costs AS ( + SELECT t.year, + t.support_dept_code, + SUM(CASE WHEN t.account_code LIKE '5%' OR t.account_code LIKE '6%' THEN t.amount ELSE 0 END) AS expense_amount, + SUM(CASE WHEN {REVENUE_SQL.replace('account_code', 't.account_code')} THEN t.amount ELSE 0 END) AS revenue_amount + FROM transactions AS t + WHERE COALESCE(t.support_dept_code, '') <> '' + AND t.support_dept_code NOT IN ('ZZZZZZ') + AND t.year IS NOT NULL + {transaction_year_clause} + GROUP BY t.year, t.support_dept_code + ) + SELECT yearly_costs.year, + COUNT(DISTINCT CASE WHEN COALESCE(c.hanmac_contract_amount, 0) <= 0 THEN yearly_costs.support_dept_code END) AS uncontracted_projects, + COUNT(DISTINCT CASE WHEN COALESCE(c.hanmac_contract_amount, 0) <= 0 AND COALESCE(yearly_costs.expense_amount, 0) > 0 THEN yearly_costs.support_dept_code END) AS cost_incurred_projects, + SUM(CASE WHEN COALESCE(c.hanmac_contract_amount, 0) <= 0 THEN COALESCE(yearly_costs.expense_amount, 0) ELSE 0 END) AS expense_amount, + SUM(CASE WHEN COALESCE(c.hanmac_contract_amount, 0) <= 0 THEN COALESCE(yearly_costs.revenue_amount, 0) ELSE 0 END) AS revenue_amount + FROM yearly_costs + LEFT JOIN project_contract_info AS c + ON c.support_dept_code = yearly_costs.support_dept_code + GROUP BY yearly_costs.year + ORDER BY yearly_costs.year + """ + ), + params, + ).mappings().all() + + monthly_focus_year = selected_year + if monthly_focus_year is None: + monthly_focus_year = conn.execute( + text( + """ + WITH monthly_candidates AS ( + SELECT MAX(t.year) AS latest_year + FROM transactions AS t + LEFT JOIN project_contract_info AS c + ON c.support_dept_code = t.support_dept_code + WHERE COALESCE(t.support_dept_code, '') <> '' + AND t.support_dept_code NOT IN ('ZZZZZZ') + AND COALESCE(c.hanmac_contract_amount, 0) <= 0 + AND (t.account_code LIKE '5%' OR t.account_code LIKE '6%') + ) + SELECT latest_year FROM monthly_candidates + """ + ) + ).scalar() + + monthly_rows: list[dict[str, Any]] = [] + if monthly_focus_year: + monthly_rows = conn.execute( + text( + f""" + WITH monthly_costs AS ( + SELECT t.month, + t.support_dept_code, + SUM(CASE WHEN t.account_code LIKE '5%' OR t.account_code LIKE '6%' THEN t.amount ELSE 0 END) AS expense_amount, + SUM(CASE WHEN {REVENUE_SQL.replace('account_code', 't.account_code')} THEN t.amount ELSE 0 END) AS revenue_amount + FROM transactions AS t + WHERE COALESCE(t.support_dept_code, '') <> '' + AND t.support_dept_code NOT IN ('ZZZZZZ') + AND t.year = :monthly_focus_year + AND t.month IS NOT NULL + GROUP BY t.month, t.support_dept_code + ) + SELECT monthly_costs.month, + COUNT(DISTINCT CASE WHEN COALESCE(c.hanmac_contract_amount, 0) <= 0 THEN monthly_costs.support_dept_code END) AS uncontracted_projects, + COUNT(DISTINCT CASE WHEN COALESCE(c.hanmac_contract_amount, 0) <= 0 AND COALESCE(monthly_costs.expense_amount, 0) > 0 THEN monthly_costs.support_dept_code END) AS cost_incurred_projects, + SUM(CASE WHEN COALESCE(c.hanmac_contract_amount, 0) <= 0 THEN COALESCE(monthly_costs.expense_amount, 0) ELSE 0 END) AS expense_amount, + SUM(CASE WHEN COALESCE(c.hanmac_contract_amount, 0) <= 0 THEN COALESCE(monthly_costs.revenue_amount, 0) ELSE 0 END) AS revenue_amount + FROM monthly_costs + LEFT JOIN project_contract_info AS c + ON c.support_dept_code = monthly_costs.support_dept_code + GROUP BY monthly_costs.month + ORDER BY monthly_costs.month + """ + ), + {"monthly_focus_year": monthly_focus_year}, + ).mappings().all() + + top_rows = conn.execute( + text( + f""" + WITH project_costs AS ( + SELECT t.support_dept_code, + MAX(t.support_dept_name) AS support_dept_name, + SUM(CASE WHEN t.account_code LIKE '5%' OR t.account_code LIKE '6%' THEN t.amount ELSE 0 END) AS expense_amount, + SUM(CASE WHEN {REVENUE_SQL.replace('account_code', 't.account_code')} THEN t.amount ELSE 0 END) AS revenue_amount, + MAX(t.year) AS latest_year, + MAX(t.month) AS latest_month + FROM transactions AS t + WHERE COALESCE(t.support_dept_code, '') <> '' + AND t.support_dept_code NOT IN ('ZZZZZZ') + {transaction_year_clause} + GROUP BY t.support_dept_code + ) + SELECT project_costs.support_dept_code, + project_costs.support_dept_name, + project_costs.expense_amount, + project_costs.revenue_amount, + project_costs.latest_year, + project_costs.latest_month, + COALESCE(c.review_tag, '') AS review_tag + FROM project_costs + LEFT JOIN project_contract_info AS c + ON c.support_dept_code = project_costs.support_dept_code + WHERE COALESCE(c.hanmac_contract_amount, 0) <= 0 + AND COALESCE(project_costs.expense_amount, 0) > 0 + ORDER BY project_costs.expense_amount DESC, project_costs.support_dept_code + LIMIT 12 + """ + ), + params, + ).mappings().all() + + return { + "summary": dict(summary) if summary else {}, + "yearly_rows": [dict(row) for row in yearly_rows], + "monthly_rows": [dict(row) for row in monthly_rows], + "monthly_focus_year": int(monthly_focus_year) if monthly_focus_year else None, + "top_rows": [dict(row) for row in top_rows], + } + + def get_project_revenue_mix(selected_year: int | None = None) -> list[dict[str, Any]]: params: dict[str, Any] = {} if selected_year: @@ -1409,6 +2376,8 @@ def get_project_cost_by_year(selected_year: int | None) -> list[dict[str, Any]]: year_clause = "AND year >= :recent_10_start_year" params["recent_10_start_year"] = recent_10_start_year + contract_info_map = get_project_contract_info_map() + billing_summary_map = get_project_billing_summary_map() with engine.begin() as conn: rows = conn.execute( text( @@ -1430,7 +2399,36 @@ def get_project_cost_by_year(selected_year: int | None) -> list[dict[str, Any]]: ), params, ).mappings().all() - return [dict(row) for row in rows] + result = [dict(row) for row in rows] + existing_codes = {normalize_text(row["support_dept_code"]) for row in result} + candidate_codes = sorted((set(contract_info_map) | set(billing_summary_map)) - existing_codes) + recent_10_start_year = get_recent_10_start_year() + for support_dept_code in candidate_codes: + contract_info = contract_info_map.get(support_dept_code, {}) + billing_summary = billing_summary_map.get(support_dept_code, {}) + fallback_date = ( + normalize_text(contract_info.get("project_start_date")) + or normalize_text(contract_info.get("contract_date")) + or normalize_text(billing_summary.get("latest_billing_date")) + ) + fallback_year = 0 + if re.match(r"^\d{4}-\d{2}-\d{2}$", fallback_date): + fallback_year = int(fallback_date[:4]) + if selected_year and fallback_year and fallback_year != selected_year: + continue + if not selected_year and recent_10_start_year is not None and fallback_year and fallback_year < recent_10_start_year: + continue + result.append( + { + "year": fallback_year, + "support_dept_code": support_dept_code, + "support_dept_name": normalize_text(contract_info.get("support_dept_name")) or normalize_text(billing_summary.get("support_dept_name")), + "expense_amount": 0, + "revenue_amount": normalize_amount(billing_summary.get("collected_amount")), + } + ) + result.sort(key=lambda item: (-(int(item.get("year") or 0)), -normalize_amount(item.get("expense_amount")), normalize_text(item.get("support_dept_code")))) + return result def get_project_account_breakdowns(selected_year: int | None) -> dict[str, dict[str, list[dict[str, Any]]]]: @@ -1659,8 +2657,13 @@ def get_source_files_summary() -> list[dict[str, Any]]: def parse_excel_upload(upload_file: UploadFile) -> int: init_db() workbook = load_workbook(upload_file.file, data_only=True) - sheet = workbook.active + import_kind = detect_excel_import_kind(workbook, upload_file.filename or "") + if import_kind == "contract_status": + return import_contract_status_workbook(workbook, upload_file.filename or "") + if import_kind == "billing_status": + return import_billing_status_workbook(workbook, upload_file.filename or "") + sheet = workbook.active headers = [canonical_header_name(cell.value) for cell in next(sheet.iter_rows(min_row=1, max_row=1))] inserted = 0 @@ -1699,13 +2702,24 @@ def auto_import_project_excels() -> None: return known_files = existing_source_files() + known_contract_files = existing_contract_source_files() + known_billing_files = existing_billing_source_files() if count_transactions() > 0 and all(file.name in known_files for file in excel_files): - return + if all(file.name in known_contract_files or file.name in known_billing_files for file in excel_files): + return for excel_path in excel_files: - if excel_path.name in known_files: + workbook = load_workbook(excel_path, data_only=True) + import_kind = detect_excel_import_kind(workbook, excel_path.name) + if import_kind == "contract_status" and excel_path.name in known_contract_files: continue - inserted = import_excel_path(excel_path) + if import_kind == "billing_status" and excel_path.name in known_billing_files: + continue + if import_kind == "transactions" and excel_path.name in known_files: + continue + with excel_path.open("rb") as excel_file: + upload = UploadFile(filename=excel_path.name, file=excel_file) + inserted = parse_excel_upload(upload) logger.info("Auto-imported %s rows from %s", inserted, excel_path.name) @@ -1810,6 +2824,8 @@ def build_collection_rows(payload: dict[str, Any]) -> list[dict[str, Any]]: normalized_row["billed_amount"] = billed_amount filtered_rows.append(normalized_row) for row in filtered_rows: + row["billing_round"] = normalize_round_value(row.get("billing_round")) + row["round"] = normalize_round_value(row.get("round")) row["billing_date"] = normalize_date_text(row.get("billing_date")) row["date"] = normalize_date_text(row.get("date")) row["billed_amount"] = normalize_amount(row.get("billed_amount")) @@ -2187,6 +3203,7 @@ def base_context(request: Request, message: str = "") -> dict[str, Any]: "message": message, "data_version": health_payload["data_version"], "server_time": health_payload["server_time"], + "import_sync_summary": get_import_sync_summary(), } @@ -2227,10 +3244,12 @@ def render_projects_page( "project_dashboard": get_project_dashboard_summary(selected_year), "project_revenue_mix": get_project_revenue_mix(selected_year), "project_cost_by_year": get_project_cost_by_year(selected_year), + "project_monthly_cost_rows": get_business_monthly_summary(), "project_account_breakdowns": get_project_account_breakdowns(selected_year), "project_status_rows": get_project_status_rows(), "project_edit": get_project_status_for_edit(edit_code), "project_page_state": get_project_page_state(), + "project_related_links": get_project_related_links_map(), "support_department_options": get_support_department_options(), "cost_department_options": get_cost_department_options(), "cost_account_options": get_cost_account_options(), @@ -2294,6 +3313,23 @@ async def project_page_state_save(request: Request): return JSONResponse(content={"error": str(exc)}, status_code=500) +@app.post("/projects/related-links") +async def project_related_links_save(request: Request): + try: + payload = await request.json() + if not isinstance(payload, dict): + raise ValueError("잘못된 연관 프로젝트 형식입니다.") + base_code = normalize_text(payload.get("base_code")) + related_codes = payload.get("related_codes") or [] + if not isinstance(related_codes, list): + raise ValueError("연관 프로젝트 목록 형식이 올바르지 않습니다.") + save_project_related_links(base_code, related_codes) + return JSONResponse(content={"status": "ok"}) + except Exception as exc: + logger.exception("연관 프로젝트 저장 에러: %s", exc) + return JSONResponse(content={"error": str(exc)}, status_code=500) + + @app.get("/annual-summary") async def annual_summary(request: Request): try: diff --git a/templates/annual_summary.html b/templates/annual_summary.html index 35b7915..713e331 100644 --- a/templates/annual_summary.html +++ b/templates/annual_summary.html @@ -1,13 +1,25 @@ {% extends "base.html" %} -{% block title %}연도별 수익 비용 정리{% endblock %} +{% block title %}연도별 수익/비용{% endblock %} {% block head_extra %} {% endblock %} @@ -1618,12 +1767,20 @@ {% endfor %} +
+ +
+
+