Add personal application fields to members

This commit is contained in:
2026-01-25 05:52:40 +08:00
parent 65de7d9019
commit c2f0047ed9
10 changed files with 729 additions and 27 deletions

View File

@@ -38,6 +38,22 @@
@enderror
</div>
<div>
<label for="member_number" class="block text-sm font-medium text-gray-700 dark:text-gray-300">
會員編號
</label>
<input
type="text"
name="member_number"
id="member_number"
value="{{ old('member_number', $member->member_number) }}"
class="mt-1 block w-full rounded-md border-gray-300 dark:border-gray-700 shadow-sm focus:border-indigo-500 dark:focus:border-indigo-600 focus:ring-indigo-500 dark:focus:ring-indigo-600 sm:text-sm dark:bg-gray-900 dark:text-gray-300"
>
@error('member_number')
<p class="mt-2 text-sm text-red-600 dark:text-red-400">{{ $message }}</p>
@enderror
</div>
<div>
<label for="email" class="block text-sm font-medium text-gray-700 dark:text-gray-300">
電子郵件
@@ -55,6 +71,82 @@
@enderror
</div>
<div class="grid gap-6 sm:grid-cols-2">
<div>
<label for="birth_date" class="block text-sm font-medium text-gray-700 dark:text-gray-300">
出生年月日
</label>
<input
type="date"
name="birth_date"
id="birth_date"
value="{{ old('birth_date', optional($member->birth_date)->toDateString()) }}"
class="mt-1 block w-full rounded-md border-gray-300 dark:border-gray-700 shadow-sm focus:border-indigo-500 dark:focus:border-indigo-600 focus:ring-indigo-500 dark:focus:ring-indigo-600 sm:text-sm dark:bg-gray-900 dark:text-gray-300"
>
@error('birth_date')
<p class="mt-2 text-sm text-red-600 dark:text-red-400">{{ $message }}</p>
@enderror
</div>
<div>
<label for="gender" class="block text-sm font-medium text-gray-700 dark:text-gray-300">
性別
</label>
<select
name="gender"
id="gender"
class="mt-1 block w-full rounded-md border-gray-300 dark:border-gray-700 shadow-sm focus:border-indigo-500 dark:focus:border-indigo-600 focus:ring-indigo-500 dark:focus:ring-indigo-600 sm:text-sm dark:bg-gray-900 dark:text-gray-300"
>
<option value="">未設定</option>
<option value="male" @selected(old('gender', $member->gender) === 'male')></option>
<option value="female" @selected(old('gender', $member->gender) === 'female')></option>
<option value="other" @selected(old('gender', $member->gender) === 'other')>其他</option>
</select>
@error('gender')
<p class="mt-2 text-sm text-red-600 dark:text-red-400">{{ $message }}</p>
@enderror
</div>
</div>
<div class="grid gap-6 sm:grid-cols-2">
<div>
<label for="identity_type" class="block text-sm font-medium text-gray-700 dark:text-gray-300">
身份別
</label>
<select
name="identity_type"
id="identity_type"
class="mt-1 block w-full rounded-md border-gray-300 dark:border-gray-700 shadow-sm focus:border-indigo-500 dark:focus:border-indigo-600 focus:ring-indigo-500 dark:focus:ring-indigo-600 sm:text-sm dark:bg-gray-900 dark:text-gray-300"
>
<option value="">未設定</option>
<option value="patient" @selected(old('identity_type', $member->identity_type) === 'patient')>病友</option>
<option value="parent" @selected(old('identity_type', $member->identity_type) === 'parent')>父母</option>
<option value="social" @selected(old('identity_type', $member->identity_type) === 'social')>社會人士</option>
<option value="other" @selected(old('identity_type', $member->identity_type) === 'other')>其他</option>
</select>
@error('identity_type')
<p class="mt-2 text-sm text-red-600 dark:text-red-400">{{ $message }}</p>
@enderror
</div>
<div>
<label for="identity_other_text" class="block text-sm font-medium text-gray-700 dark:text-gray-300">
身份別其他說明
</label>
<input
type="text"
name="identity_other_text"
id="identity_other_text"
value="{{ old('identity_other_text', $member->identity_other_text) }}"
class="mt-1 block w-full rounded-md border-gray-300 dark:border-gray-700 shadow-sm focus:border-indigo-500 dark:focus:border-indigo-600 focus:ring-indigo-500 dark:focus:ring-indigo-600 sm:text-sm dark:bg-gray-900 dark:text-gray-300"
placeholder="若選其他請填寫"
>
@error('identity_other_text')
<p class="mt-2 text-sm text-red-600 dark:text-red-400">{{ $message }}</p>
@enderror
</div>
</div>
<div>
<label for="national_id" class="block text-sm font-medium text-gray-700 dark:text-gray-300">
身分證號
@@ -75,18 +167,118 @@
</p>
</div>
<div class="grid gap-6 sm:grid-cols-2">
<div>
<label for="phone" class="block text-sm font-medium text-gray-700 dark:text-gray-300">
行動電話
</label>
<input
type="text"
name="phone"
id="phone"
value="{{ old('phone', $member->phone) }}"
class="mt-1 block w-full rounded-md border-gray-300 dark:border-gray-700 shadow-sm focus:border-indigo-500 dark:focus:border-indigo-600 focus:ring-indigo-500 dark:focus:ring-indigo-600 sm:text-sm dark:bg-gray-900 dark:text-gray-300"
>
@error('phone')
<p class="mt-2 text-sm text-red-600 dark:text-red-400">{{ $message }}</p>
@enderror
</div>
<div>
<label for="phone_home" class="block text-sm font-medium text-gray-700 dark:text-gray-300">
室內電話
</label>
<input
type="text"
name="phone_home"
id="phone_home"
value="{{ old('phone_home', $member->phone_home) }}"
class="mt-1 block w-full rounded-md border-gray-300 dark:border-gray-700 shadow-sm focus:border-indigo-500 dark:focus:border-indigo-600 focus:ring-indigo-500 dark:focus:ring-indigo-600 sm:text-sm dark:bg-gray-900 dark:text-gray-300"
>
@error('phone_home')
<p class="mt-2 text-sm text-red-600 dark:text-red-400">{{ $message }}</p>
@enderror
</div>
</div>
<div>
<label for="phone" class="block text-sm font-medium text-gray-700 dark:text-gray-300">
電話
<label for="phone_fax" class="block text-sm font-medium text-gray-700 dark:text-gray-300">
傳真
</label>
<input
type="text"
name="phone"
id="phone"
value="{{ old('phone', $member->phone) }}"
name="phone_fax"
id="phone_fax"
value="{{ old('phone_fax', $member->phone_fax) }}"
class="mt-1 block w-full rounded-md border-gray-300 dark:border-gray-700 shadow-sm focus:border-indigo-500 dark:focus:border-indigo-600 focus:ring-indigo-500 dark:focus:ring-indigo-600 sm:text-sm dark:bg-gray-900 dark:text-gray-300"
>
@error('phone')
@error('phone_fax')
<p class="mt-2 text-sm text-red-600 dark:text-red-400">{{ $message }}</p>
@enderror
</div>
<div class="grid gap-6 sm:grid-cols-2">
<div>
<label for="occupation" class="block text-sm font-medium text-gray-700 dark:text-gray-300">
現職
</label>
<input
type="text"
name="occupation"
id="occupation"
value="{{ old('occupation', $member->occupation) }}"
class="mt-1 block w-full rounded-md border-gray-300 dark:border-gray-700 shadow-sm focus:border-indigo-500 dark:focus:border-indigo-600 focus:ring-indigo-500 dark:focus:ring-indigo-600 sm:text-sm dark:bg-gray-900 dark:text-gray-300"
>
@error('occupation')
<p class="mt-2 text-sm text-red-600 dark:text-red-400">{{ $message }}</p>
@enderror
</div>
<div>
<label for="job_title" class="block text-sm font-medium text-gray-700 dark:text-gray-300">
職稱
</label>
<input
type="text"
name="job_title"
id="job_title"
value="{{ old('job_title', $member->job_title) }}"
class="mt-1 block w-full rounded-md border-gray-300 dark:border-gray-700 shadow-sm focus:border-indigo-500 dark:focus:border-indigo-600 focus:ring-indigo-500 dark:focus:ring-indigo-600 sm:text-sm dark:bg-gray-900 dark:text-gray-300"
>
@error('job_title')
<p class="mt-2 text-sm text-red-600 dark:text-red-400">{{ $message }}</p>
@enderror
</div>
</div>
<div>
<label for="employer" class="block text-sm font-medium text-gray-700 dark:text-gray-300">
服務單位
</label>
<input
type="text"
name="employer"
id="employer"
value="{{ old('employer', $member->employer) }}"
class="mt-1 block w-full rounded-md border-gray-300 dark:border-gray-700 shadow-sm focus:border-indigo-500 dark:focus:border-indigo-600 focus:ring-indigo-500 dark:focus:ring-indigo-600 sm:text-sm dark:bg-gray-900 dark:text-gray-300"
>
@error('employer')
<p class="mt-2 text-sm text-red-600 dark:text-red-400">{{ $message }}</p>
@enderror
</div>
<div>
<label for="applied_at" class="block text-sm font-medium text-gray-700 dark:text-gray-300">
申請日期
</label>
<input
type="date"
name="applied_at"
id="applied_at"
value="{{ old('applied_at', optional($member->applied_at)->toDateString()) }}"
class="mt-1 block w-full rounded-md border-gray-300 dark:border-gray-700 shadow-sm focus:border-indigo-500 dark:focus:border-indigo-600 focus:ring-indigo-500 dark:focus:ring-indigo-600 sm:text-sm dark:bg-gray-900 dark:text-gray-300"
>
@error('applied_at')
<p class="mt-2 text-sm text-red-600 dark:text-red-400">{{ $message }}</p>
@enderror
</div>