feat: 新增多項功能 v2.1
- 新增 CSV 匯入匯出功能(所有頁籤) - 新增崗位清單頁籤(含欄位排序) - 新增管理者頁面(使用者 CRUD) - 新增事業體選項(SBU/MBU/HQBU/ITBU/HRBU/ACCBU) - 新增組織單位欄位(處級/部級/課級) - 崗位描述/備注改為條列式說明 - 新增 README.md 文件 - 新增開發指令記錄檔 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
84
add_org_fields.py
Normal file
84
add_org_fields.py
Normal file
@@ -0,0 +1,84 @@
|
||||
"""
|
||||
新增事業體和組織單位欄位到崗位資料表單
|
||||
"""
|
||||
import sys
|
||||
import codecs
|
||||
|
||||
# Windows 編碼修正
|
||||
if sys.platform == 'win32':
|
||||
sys.stdout = codecs.getwriter('utf-8')(sys.stdout.buffer, 'strict')
|
||||
sys.stderr = codecs.getwriter('utf-8')(sys.stderr.buffer, 'strict')
|
||||
|
||||
with open('index.html', 'r', encoding='utf-8') as f:
|
||||
content = f.read()
|
||||
|
||||
# 備份
|
||||
with open('index.html.backup_org', 'w', encoding='utf-8') as f:
|
||||
f.write(content)
|
||||
|
||||
# 找到基礎資料頁籤中的表單欄位區域,在 positionRemark 欄位前加入新欄位
|
||||
# 先找到 positionRemark 的 form-group
|
||||
org_fields_html = ''' <!-- 事業體 -->
|
||||
<div class="form-group">
|
||||
<label>事業體 (Business Unit)</label>
|
||||
<select id="businessUnit" name="businessUnit">
|
||||
<option value="">請選擇</option>
|
||||
<option value="SBU">SBU - 銷售事業體</option>
|
||||
<option value="MBU">MBU - 製造事業體</option>
|
||||
<option value="HQBU">HQBU - 總部事業體</option>
|
||||
<option value="ITBU">ITBU - IT事業體</option>
|
||||
<option value="HRBU">HRBU - HR事業體</option>
|
||||
<option value="ACCBU">ACCBU - 會計事業體</option>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<!-- 處級單位 -->
|
||||
<div class="form-group">
|
||||
<label>處級單位 (Division)</label>
|
||||
<input type="text" id="division" name="division" placeholder="選填">
|
||||
</div>
|
||||
|
||||
<!-- 部級單位 -->
|
||||
<div class="form-group">
|
||||
<label>部級單位 (Department)</label>
|
||||
<input type="text" id="department" name="department" placeholder="選填">
|
||||
</div>
|
||||
|
||||
<!-- 課級單位 -->
|
||||
<div class="form-group">
|
||||
<label>課級單位 (Section)</label>
|
||||
<input type="text" id="section" name="section" placeholder="選填">
|
||||
</div>
|
||||
|
||||
'''
|
||||
|
||||
# 在 positionRemark 前插入
|
||||
old_pattern = ''' <div class="form-group full-width">
|
||||
<label>崗位備注</label>
|
||||
<textarea id="positionRemark" name="positionRemark" placeholder="請輸入備注說明..." rows="5"></textarea>
|
||||
</div>'''
|
||||
|
||||
new_pattern = org_fields_html + ''' <div class="form-group full-width">
|
||||
<label>崗位備注</label>
|
||||
<textarea id="positionRemark" name="positionRemark" placeholder="請輸入備注說明..." rows="5"></textarea>
|
||||
</div>'''
|
||||
|
||||
if old_pattern in content and org_fields_html not in content:
|
||||
content = content.replace(old_pattern, new_pattern)
|
||||
print("[OK] Added organization fields to Position form")
|
||||
else:
|
||||
print("[INFO] Organization fields may already exist or pattern not found")
|
||||
|
||||
# 寫回
|
||||
with open('index.html', 'w', encoding='utf-8') as f:
|
||||
f.write(content)
|
||||
|
||||
print("\n" + "="*60)
|
||||
print("[OK] Organization Fields Added!")
|
||||
print("="*60)
|
||||
print("\nAdded fields:")
|
||||
print("1. Business Unit (SBU/MBU/HQBU/ITBU/HRBU/ACCBU)")
|
||||
print("2. Division (Division level, optional)")
|
||||
print("3. Department (Department level, optional)")
|
||||
print("4. Section (Section level, optional)")
|
||||
print("\nPlease reload the page (Ctrl+F5) to see the new fields!")
|
||||
Reference in New Issue
Block a user