@extends('layouts.app') @section('title', '個人設定') @push('styles') @endpush @section('content')
@if(session('success')) @endif
{{-- ── Sidebar ── --}} {{-- ── Main content ── --}}
{{-- ══════════════════════════════════════════════════ --}} {{-- 基本資料 panel --}} {{-- ══════════════════════════════════════════════════ --}}
@csrf

大頭貼

顯示在訊息功能的對話列表與訊息裡

目前大頭貼
@if ($user->avatarUrl()) 大頭貼 @else
{{ mb_substr($user->name, 0, 1) }}
@endif
@error('avatar')
{{ $message }}
@enderror
@csrf @method('PATCH') {{-- keep proxy so it isn't wiped when saving basic info --}}

基本資料

姓名、職稱等個人資訊

帳號
{{ $user->email }}
部門
{{ $user->department ?? '—' }}
由管理員設定
@error('name')
{{ $message }}
@enderror
@error('nickname')
{{ $message }}
@enderror
選填,3D 座位表打招呼時會說「大家都叫我 +這個名字」
@error('duty')
{{ $message }}
@enderror
選填,3D 座位表自我介紹會說「我在+部門+負責+這個」
@error('phone')
{{ $message }}
@enderror
@php $bm = (int) old('birthday_month', $user->birthday?->month); $bd = (int) old('birthday_day', $user->birthday?->day); @endphp
@error('birthday')
{{ $message }}
@enderror
選填,只需要月和日
@php $g = old('gender', $user->gender); @endphp
@error('gender')
{{ $message }}
@enderror
選填,用在 3D 座位表的 Q 版人物造型
@if($seatOptions->isNotEmpty()) {{-- 管理者已建立座位表:從空位中挑選,代碼才會跟座位表一致 --}} @error('seat_id')
{{ $message }}
@enderror
選填,只列出空位;可到座位表看位置
@else @error('seat')
{{ $message }}
@enderror @endif

密碼變更

留空表示不更改目前密碼

{{-- ══════════════════════════════════════════════════ --}} {{-- 裝置認證 panel --}} {{-- ══════════════════════════════════════════════════ --}}

已連結裝置

管理可以存取你端對端加密訊息的瀏覽器/裝置

訊息功能的加密金鑰只存在瀏覽器裡,換瀏覽器/裝置會被當成新裝置, 要在這裡由現有裝置核准後,新裝置才能讀取歷史加密訊息。

  • 載入中…
{{-- ══════════════════════════════════════════════════ --}} {{-- 職務代理人 panel --}} {{-- ══════════════════════════════════════════════════ --}}
@csrf @method('PATCH')

預設職務代理人

請假申請時系統將自動帶入此代理人設定

@if($user->defaultProxy)
{{ mb_substr($user->defaultProxy->name, 0, 1) }}
{{ $user->defaultProxy->name }}
目前預設代理人{{ $user->defaultProxy->department ? '・'.$user->defaultProxy->department : '' }}
@endif
@error('default_proxy_user_id')
{{ $message }}
@enderror
可選擇上級、同組或跨組同事
{{-- ══════════════════════════════════════════════════ --}} {{-- 介面樣式 panel --}} {{-- ══════════════════════════════════════════════════ --}}

主題色調

選擇介面的明暗模式

專案管理介面

切換後下次進入專案管理時生效

@csrf
{{-- ══════════════════════════════════════════════════ --}} {{-- API Token panel --}} {{-- ══════════════════════════════════════════════════ --}}

工時填報 API Token

用於外部工具自動填寫工時

@if(session('new_timelog_token'))
新產生的 Token — 請立即複製儲存
{{ session('new_timelog_token') }}
••••••••••••••••••••••••••••••••••••••••••••••••
@endif @if($timelogTokens->isNotEmpty())
@foreach($timelogTokens as $tok) @endforeach
說明TokenIP 白名單最後使用建立時間
{{ $tok->description ?: '—' }}
{{ substr($tok->token,0,8) }}••••••••
@if($tok->allowed_ips) {{ $tok->allowed_ips }} @else 未設定(無法使用) @endif {{ $tok->last_used_at?->format('Y-m-d H:i') ?? '未使用' }} {{ $tok->created_at->format('Y-m-d') }}
@csrf @method('DELETE')
@endif

產生新 Token

@csrf
必填,支援單一 IP 或 CIDR 網段,多個以逗號分隔
@error('allowed_ips')
{{ $message }}
@enderror

API 使用方式

查詢可填報合約:

GET {{ url('/api/timelog/contracts') }}?token=YOUR_TOKEN

填寫工時:

POST {{ url('/api/timelog') }}
Content-Type: application/json

{
  "token": "YOUR_TOKEN",
  "contract_id": 110,
  "hours": 2.5,
  "date": "{{ today()->toDateString() }}",
  "comments": "備註(選填)"
}
{{-- /settings-layout --}}
{{-- /settings-page --}} @endsection @push('scripts') @endpush