# -*- coding: utf-8 -*- """ 添加部門職責頁籤和修正檢視按鈕功能 """ import sys import codecs if sys.platform == 'win32': sys.stdout = codecs.getwriter('utf-8')(sys.stdout.buffer, 'strict') sys.stderr = codecs.getwriter('utf-8')(sys.stderr.buffer, 'strict') # 讀取 index.html with open('index.html', 'r', encoding='utf-8') as f: content = f.read() # ==================== 1. 修正檢視按鈕功能 ==================== old_view_function = ''' // 檢視崗位 function viewPosition(code) { const position = positionListData.find(p => p.positionCode === code); if (position) { showToast('檢視崗位: ' + position.positionName); } }''' new_view_function = ''' // 檢視崗位 - 切換到崗位基礎資料頁籤並載入資料 function viewPosition(code) { const position = positionListData.find(p => p.positionCode === code); if (position) { // 切換到崗位基礎資料模組 document.querySelectorAll('.module-btn').forEach(b => { b.classList.remove('active', 'job-active', 'desc-active'); }); document.querySelector('.module-btn[data-module="position"]').classList.add('active'); document.querySelectorAll('.module-content').forEach(m => m.classList.remove('active')); document.getElementById('module-position').classList.add('active'); // 填入崗位資料 document.getElementById('positionCode').value = position.positionCode || ''; document.getElementById('positionName').value = position.positionName || ''; // 根據崗位類別設定下拉選單 const categoryMap = {'技術職': '01', '管理職': '02', '業務職': '03', '行政職': '04', '專業職': '05'}; const categoryCode = categoryMap[position.positionCategory] || ''; document.getElementById('positionCategory').value = categoryCode; if (typeof updateCategoryName === 'function') updateCategoryName(); document.getElementById('headcount').value = position.headcount || ''; document.getElementById('effectiveDate').value = position.effectiveDate || ''; // 填入組織欄位 if (document.getElementById('businessUnit')) { document.getElementById('businessUnit').value = position.businessUnit || ''; } if (document.getElementById('department')) { document.getElementById('department').value = position.department || ''; } showToast('已載入崗位: ' + position.positionName); } }''' if old_view_function in content: content = content.replace(old_view_function, new_view_function) print("[OK] Fixed viewPosition function") else: print("[INFO] viewPosition function pattern not found or already updated") # ==================== 2. 添加部門職責頁籤按鈕 ==================== # 在崗位描述按鈕後面添加部門職責按鈕 old_module_buttons = '''
''' # 在崗位描述模組之前插入 jobdesc_module_start = '