from __future__ import annotations

from app.services.agent_asset_travel_spreadsheets import build_styled_workbook


def build_communication_expense_workbook() -> bytes:
    return build_styled_workbook(
        "通信费报销标准",
        [
            "序号",
            "适用对象",
            "岗位/职级范围",
            "月度报销上限",
            "票据要求",
            "申请阶段预算口径",
            "审批/例外说明",
            "备注",
        ],
        [
            [
                1,
                "一线销售/客户成功",
                "销售经理、客户成功经理、项目驻场岗位",
                200,
                "运营商通信费发票或电子账单",
                "按月度上限占用预算",
                "超出上限需直属领导审批并说明客户项目",
                "仅覆盖因公通信支出",
            ],
            [
                2,
                "项目交付/实施",
                "实施顾问、项目经理、现场支持岗位",
                150,
                "运营商通信费发票或电子账单",
                "按月度上限占用预算",
                "长期驻场可按项目专项审批调整",
                "需关联项目或客户",
            ],
            [
                3,
                "管理岗位",
                "部门负责人及以上",
                120,
                "运营商通信费发票或电子账单",
                "按月度上限占用预算",
                "超出上限需补充业务说明",
                "按自然月核算",
            ],
            [
                4,
                "普通员工",
                "未单列岗位",
                80,
                "运营商通信费发票或电子账单",
                "按月度上限占用预算",
                "原则上不支持超额报销",
                "特殊岗位需先维护适用对象",
            ],
        ],
        column_widths=[8, 22, 30, 16, 30, 24, 38, 28],
    )
