Files
usher-manage-stack/resources/views/admin/members/import.blade.php

72 lines
5.1 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<x-app-layout>
<x-slot name="header">
<h2 class="text-xl font-semibold leading-tight text-gray-800 dark:text-gray-200">
從CSV匯入會員
</h2>
</x-slot>
<div class="py-12">
<div class="mx-auto max-w-3xl sm:px-6 lg:px-8">
<div class="bg-white dark:bg-gray-800 shadow sm:rounded-lg">
<div class="px-4 py-5 sm:p-6">
<p class="text-sm text-gray-700 dark:text-gray-300 mb-4">
上傳具有以下標題列的CSV檔案現有會員將依電子郵件比對並更新
</p>
<ul class="list-disc list-inside text-sm text-gray-700 dark:text-gray-300 mb-4 space-y-1">
<li><code class="text-gray-800 dark:text-gray-200">full_name</code></li>
<li><code class="text-gray-800 dark:text-gray-200">member_number</code> (optional)</li>
<li><code class="text-gray-800 dark:text-gray-200">email</code></li>
<li><code class="text-gray-800 dark:text-gray-200">phone</code></li>
<li><code class="text-gray-800 dark:text-gray-200">phone_home</code> (optional)</li>
<li><code class="text-gray-800 dark:text-gray-200">phone_fax</code> (optional)</li>
<li><code class="text-gray-800 dark:text-gray-200">birth_date</code> (YYYY-MM-DD, optional)</li>
<li><code class="text-gray-800 dark:text-gray-200">gender</code> (male/female/other, optional)</li>
<li><code class="text-gray-800 dark:text-gray-200">identity_type</code> (patient/parent/social/other, optional)</li>
<li><code class="text-gray-800 dark:text-gray-200">identity_other_text</code> (optional)</li>
<li><code class="text-gray-800 dark:text-gray-200">occupation</code> (optional)</li>
<li><code class="text-gray-800 dark:text-gray-200">employer</code> (optional)</li>
<li><code class="text-gray-800 dark:text-gray-200">job_title</code> (optional)</li>
<li><code class="text-gray-800 dark:text-gray-200">applied_at</code> (YYYY-MM-DD, optional)</li>
<li><code class="text-gray-800 dark:text-gray-200">national_id</code> (optional)</li>
<li><code class="text-gray-800 dark:text-gray-200">address_line_1</code> (optional)</li>
<li><code class="text-gray-800 dark:text-gray-200">address_line_2</code> (optional)</li>
<li><code class="text-gray-800 dark:text-gray-200">city</code> (optional)</li>
<li><code class="text-gray-800 dark:text-gray-200">postal_code</code> (optional)</li>
<li><code class="text-gray-800 dark:text-gray-200">emergency_contact_name</code> (optional)</li>
<li><code class="text-gray-800 dark:text-gray-200">emergency_contact_phone</code> (optional)</li>
<li><code class="text-gray-800 dark:text-gray-200">membership_started_at</code> (YYYY-MM-DD)</li>
<li><code class="text-gray-800 dark:text-gray-200">membership_expires_at</code> (YYYY-MM-DD)</li>
</ul>
<form method="POST" action="{{ route('admin.members.import') }}" enctype="multipart/form-data" class="space-y-6">
@csrf
<div>
<label for="file" class="block text-sm font-medium text-gray-700 dark:text-gray-300">
CSV檔案
</label>
<input
type="file"
name="file"
id="file"
accept=".csv,text/csv"
class="mt-1 block w-full text-sm text-gray-900 dark:text-gray-100 file:mr-4 file:rounded-md file:border-0 file:bg-indigo-50 dark:file:bg-indigo-900/50 file:px-4 file:py-2 file:text-sm file:font-semibold file:text-indigo-700 dark:file:text-indigo-300 hover:file:bg-indigo-100 dark:hover:file:bg-indigo-900"
required
>
@error('file')
<p class="mt-2 text-sm text-red-600 dark:text-red-400">{{ $message }}</p>
@enderror
</div>
<div class="flex justify-end">
<button type="submit" class="inline-flex items-center rounded-md border border-transparent bg-indigo-600 dark:bg-indigo-500 px-4 py-2 text-sm font-medium text-white hover:bg-indigo-700 dark:hover:bg-indigo-600 focus:outline-none focus:ring-2 focus:ring-indigo-500 dark:focus:ring-indigo-600 focus:ring-offset-2 dark:focus:ring-offset-gray-800">
開始匯入
</button>
</div>
</form>
</div>
</div>
</div>
</div>
</x-app-layout>