|
|
|
|
@ -5,6 +5,7 @@ namespace App\Http\Controllers\API\Internal;
|
|
|
|
|
use App\Http\Controllers\Controller;
|
|
|
|
|
use Illuminate\Http\Request;
|
|
|
|
|
use Illuminate\Support\Facades\DB;
|
|
|
|
|
use Illuminate\Support\Facades\Schema;
|
|
|
|
|
use Illuminate\Support\Facades\Storage;
|
|
|
|
|
use Illuminate\Support\Facades\Validator;
|
|
|
|
|
use Illuminate\Support\Str;
|
|
|
|
|
@ -57,7 +58,7 @@ class HealthCertificateController extends Controller
|
|
|
|
|
'viralHepatitisPractitionerName' => 'required|string|max:70',
|
|
|
|
|
'viralHepatitisDate' => 'required|date',
|
|
|
|
|
'hasActiveTB' => 'required|string|max:1',
|
|
|
|
|
'activeTBPractitionerCode' => 'required|string|max:70',
|
|
|
|
|
'activeTBPractitionerName' => 'required|string|max:70',
|
|
|
|
|
'activeTBDate' => 'required|date',
|
|
|
|
|
'hasSkinDiseases' => 'required|string|max:1',
|
|
|
|
|
'skinDiseasesPractitionerName' => 'required|string|max:70',
|
|
|
|
|
@ -174,6 +175,14 @@ class HealthCertificateController extends Controller
|
|
|
|
|
// 替换 photo 字段为路径
|
|
|
|
|
$data['photo'] = $photoPath;
|
|
|
|
|
unset($data['key']);
|
|
|
|
|
|
|
|
|
|
// 获取数据库字段白名单
|
|
|
|
|
$schema = Schema::getColumnListing('health_certificate_push');
|
|
|
|
|
// 过滤掉数据库中不存在的字段
|
|
|
|
|
$data = array_filter($data, function ($key) use ($schema) {
|
|
|
|
|
return in_array($key, $schema);
|
|
|
|
|
}, ARRAY_FILTER_USE_KEY);
|
|
|
|
|
|
|
|
|
|
// 插入数据库
|
|
|
|
|
try {
|
|
|
|
|
$id = DB::table('health_certificate_push')->insertGetId($data);
|
|
|
|
|
@ -278,16 +287,15 @@ class HealthCertificateController extends Controller
|
|
|
|
|
$filename = uniqid() . '_' . mt_rand(0, 999999) . '.' . $file_extension;
|
|
|
|
|
|
|
|
|
|
$path = $file->store($path, 'public');
|
|
|
|
|
$url = '/storage/' . $path . '/' . $filename;
|
|
|
|
|
$record=DB::table('health_certificate_push')->where(['hospitalCode'=>$hospitalCode,'healthExaminationId'=>$healthExaminationId])->get();
|
|
|
|
|
if(count($record)==0){
|
|
|
|
|
|
|
|
|
|
return response()->json([
|
|
|
|
|
'status' => 400,
|
|
|
|
|
'msg' => '未找到对应体检记录,请先提交对应体检记录'
|
|
|
|
|
], 400);
|
|
|
|
|
}
|
|
|
|
|
$record=DB::table('health_certificate_push')->where(['hospitalCode'=>$hospitalCode,'healthExaminationId'=>$healthExaminationId])->update(['pdf'=>$url]);
|
|
|
|
|
$url = '/storage/' . $path ;
|
|
|
|
|
$data=[
|
|
|
|
|
'hospitalCode' => $hospitalCode,
|
|
|
|
|
'hospitalName' => $hospitalName,
|
|
|
|
|
'healthExaminationId' => $healthExaminationId,
|
|
|
|
|
'reportId' => $reportId,
|
|
|
|
|
'pdf_url' => $url,
|
|
|
|
|
];
|
|
|
|
|
$record=DB::table('health_certificate_push_pdf')->insertGetId($data);
|
|
|
|
|
if($record){
|
|
|
|
|
return response()->json([
|
|
|
|
|
'status' => 0,
|
|
|
|
|
|