#!/bin/sh
# ============================================================
#  勞工系統更新腳本 — 履歷查看 + 身分證號碼改選填
#  適用：154.94.239.207 (BT Panel / CentOS 7)
#  前置條件：更新檔已在 /home/wing/wkr_tmp/extract
#  請以 root 執行（寶塔面板「終端機」內貼上即可）
# ============================================================
set -e

PROJ=/www/wwwroot/faithfulness
SRC=/home/wing/wkr_tmp/extract

echo "=== [1/6] 備份被覆蓋的檔案到 /home/wing/wkr_tmp/backup ==="
mkdir -p /home/wing/wkr_tmp/backup
for f in app/Providers/AppServiceProvider.php app/Http/Requests/WorkerRequest.php routes/web.php resources/views/layouts/admin.blade.php resources/views/workers_create.blade.php resources/views/workers_edit.blade.php; do
  mkdir -p /home/wing/wkr_tmp/backup/$(dirname $f)
  cp -a $PROJ/$f /home/wing/wkr_tmp/backup/$f 2>/dev/null
done
echo "備份完成"

echo "=== [2/6] 複製新檔案 ==="
# 新增檔案
mkdir -p $PROJ/resources/views/resumes
cp -a $SRC/app/Http/Controllers/ResumeController.php $PROJ/app/Http/Controllers/
cp -a $SRC/app/Http/Controllers/JobTypeController.php $PROJ/app/Http/Controllers/
cp -a $SRC/app/Models/Resume.php        $PROJ/app/Models/
cp -a $SRC/app/Models/JobType.php       $PROJ/app/Models/
cp -a $SRC/app/Policies/ResumePolicy.php $PROJ/app/Policies/
cp -a $SRC/resources/views/resumes/index.blade.php $PROJ/resources/views/resumes/
cp -a $SRC/database/migrations/2026_08_31_000001_create_job_types_and_resumes_tables.php $PROJ/database/migrations/
cp -a $SRC/database/migrations/2026_09_01_000001_remove_unique_from_resumes_stored_path.php $PROJ/database/migrations/
cp -a $SRC/tests/Feature/ResumeTest.php $PROJ/tests/Feature/ 2>/dev/null
# 覆蓋修改檔
cp -a $SRC/app/Providers/AppServiceProvider.php $PROJ/app/Providers/
cp -a $SRC/app/Http/Requests/WorkerRequest.php  $PROJ/app/Http/Requests/
cp -a $SRC/routes/web.php                       $PROJ/routes/
cp -a $SRC/resources/views/layouts/admin.blade.php $PROJ/resources/views/layouts/
cp -a $SRC/resources/views/workers_create.blade.php $PROJ/resources/views/
cp -a $SRC/resources/views/workers_edit.blade.php   $PROJ/resources/views/

echo "=== [3/6] 修正權限 (www:www) ==="
chown -R www:www $PROJ/app $PROJ/routes $PROJ/resources $PROJ/database $PROJ/tests
chmod -R u+rw $PROJ/app $PROJ/routes $PROJ/resources $PROJ/database $PROJ/tests

echo "=== [4/6] 跑 migration ==="
cd $PROJ
sudo -u www /usr/bin/php artisan migrate --force

echo "=== [5/6] 清快取 ==="
sudo -u www /usr/bin/php artisan optimize:clear

echo "=== [6/6] 驗證 ==="
sudo -u www /usr/bin/php artisan migrate:status 2>/dev/null | tail -4
sudo -u www /usr/bin/php artisan tinker --execute="echo 'resumes: '.\DB::table('resumes')->count().PHP_EOL; echo 'job_types: '.\DB::table('job_types')->count().PHP_EOL; echo 'workers: '.\App\Models\Worker::count().PHP_EOL;" 2>/dev/null | tail -3
ls $PROJ/app/Http/Controllers/ResumeController.php && echo "RESUME_CTRL_OK"
echo "=== 全部完成 ==="
