|
|
<?php
|
|
|
|
|
|
namespace App\Http\Controllers\API\H5;
|
|
|
|
|
|
use App\Http\Controllers\API\PEISApiController;
|
|
|
use App\Http\Controllers\Controller;
|
|
|
use Illuminate\Http\Request;
|
|
|
use Illuminate\Support\Facades\DB;
|
|
|
use Illuminate\Support\Facades\Log;
|
|
|
|
|
|
class PersonController extends Controller
|
|
|
{
|
|
|
public function group_info($hospital, $data)
|
|
|
{
|
|
|
$peis = new PEISApiController();
|
|
|
$info = $peis::Post('团检登记查询', $hospital, $data);
|
|
|
$group_list=[];
|
|
|
foreach ($info['data'] as $it) {
|
|
|
$items = [];
|
|
|
$duoxuan_yi=[];
|
|
|
$group_info = $it;
|
|
|
if (isset($group_info['项目列表'])) {
|
|
|
foreach ($group_info['项目列表'] as $datum) {
|
|
|
$items[] = [
|
|
|
'id' => $datum['Id'],
|
|
|
'name' => $datum['名称'],
|
|
|
'pay_type'=>$datum['收费方式'],
|
|
|
];
|
|
|
}
|
|
|
}
|
|
|
|
|
|
|
|
|
if(isset($group_info['单位Id']) and !empty($group_info['单位Id']) and isset($group_info['分组Id']) and !empty($group_info['分组Id'])){
|
|
|
$items=[];
|
|
|
$peis = new PEISApiController();
|
|
|
$data=[
|
|
|
"单位Id"=>$group_info['单位Id']
|
|
|
];
|
|
|
$fenzu = $peis::Post('单位分组批次查询', 1, $data);
|
|
|
// Log::info(json_encode($fenzu,JSON_UNESCAPED_UNICODE));
|
|
|
if(empty($fenzu['data'])) break;
|
|
|
foreach ($fenzu['data'][0]['分组'] as $key => $value) {
|
|
|
if($value['Id']==$group_info['分组Id']){
|
|
|
$group_info['总计金额']=$value['价格'];
|
|
|
if (isset($value['包含项目信息'])) {
|
|
|
foreach ($value['包含项目信息'] as $datum) {
|
|
|
$items[] = [
|
|
|
'id' => $datum['Id'],
|
|
|
'name' => $datum['名称'],
|
|
|
'pay_type'=>$datum['收费方式'],
|
|
|
];
|
|
|
}
|
|
|
}
|
|
|
if(isset($value['包含多选一组'])){
|
|
|
//多选一
|
|
|
$duo_xuan_yi=[];
|
|
|
|
|
|
$N1=$value['包含多选一组'];
|
|
|
foreach ($N1 as $k=>$v){
|
|
|
$duo_xuan_yi[$k][]=[
|
|
|
'zu_name'=>$v['组名称'],
|
|
|
'item_list'=>[]
|
|
|
];
|
|
|
foreach ($v['包含项目'] as $k2=>$v2){
|
|
|
$duo_xuan_yi[$k]['item_list'][]=
|
|
|
[
|
|
|
'item_id' =>$v2['Id'],
|
|
|
'item_name' => $v2['名称'],
|
|
|
'price'=>$v2['价格']
|
|
|
];
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
$duoxuan_yi= $duo_xuan_yi;
|
|
|
}
|
|
|
break;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
$checkup_type=DB::table('checkup_type')->where(['status'=>1,'is_del'=>0])->get();
|
|
|
$checkup_type_id=0;
|
|
|
foreach ($checkup_type as $ct) {
|
|
|
if($group_info['体检类型']==$ct->name){
|
|
|
$checkup_type_id=$ct->id;
|
|
|
}
|
|
|
}
|
|
|
$data=[
|
|
|
'name' => $group_info['姓名'],
|
|
|
'id_number' => $group_info['证件号码'],
|
|
|
'combo_name' => $group_info['套餐名称'],
|
|
|
'combo_id' => $group_info['套餐Id'],
|
|
|
'start_time' => $group_info['预约开始日期'],
|
|
|
'end_time' => $group_info['预约结束日期'],
|
|
|
'danwei_name' => $group_info['单位名称'],
|
|
|
'group_name' => $group_info['单位名称'] ,
|
|
|
'bumen_name' => $group_info['部门名称'],
|
|
|
'group_id' => $group_info['预约Id'],
|
|
|
'tongshou_xiane'=>$group_info['统收限额']==0?0.00:$group_info['统收限额'],
|
|
|
'sixi_zong_ji_jin_e'=>$group_info['总计金额'],
|
|
|
'danwei_id'=>$group_info['单位Id'],
|
|
|
'fenzu_id'=>$group_info['分组Id'],
|
|
|
'checkup_type_id'=>$checkup_type_id,
|
|
|
'items' => $items,
|
|
|
'duo_xuan_yi'=>$duoxuan_yi,
|
|
|
];
|
|
|
$group_list[]=$data;
|
|
|
}
|
|
|
|
|
|
return $group_list;
|
|
|
}
|
|
|
|
|
|
//团检登记查询,根据身份证和电话查分组id
|
|
|
public function GetGroupUnit()
|
|
|
{
|
|
|
$phone = request('phone');
|
|
|
$id_number = request('id_number');
|
|
|
$hospital_id = request('hospital_id');
|
|
|
if (!isset($phone)) return \Yz::echoError1('电话不能为空');
|
|
|
if (!isset($id_number)) return \Yz::echoError1('身份证不能为空');
|
|
|
if (!isset($hospital_id)) return \Yz::echoError1('医院id不能为空');
|
|
|
$data = [
|
|
|
'电话号码' => null,
|
|
|
'证件号码' => $id_number
|
|
|
];
|
|
|
$res = self::group_info($hospital_id, $data);
|
|
|
$dbinfo=DB::table('web_user_person')->where(['phone'=>$phone,'id_number'=>$id_number])->first();
|
|
|
$list=[];
|
|
|
if(!!$dbinfo){
|
|
|
foreach ($res as $key => $value) {
|
|
|
//dd($res[$key]);
|
|
|
$res[$key]['sex']=$dbinfo->sex;
|
|
|
$res[$key]['phone']=$dbinfo->phone;
|
|
|
$res[$key]['married']=$dbinfo->married ;
|
|
|
if($value['end_time']>=date('Y-m-d')){
|
|
|
$list[]= $res[$key];
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
return \Yz::Return(true,"查询完成",['unit'=>$list]);
|
|
|
}
|
|
|
//获取团检套餐
|
|
|
public function GetGroupCombo()
|
|
|
{
|
|
|
|
|
|
$hospital_id = request('hospital_id');
|
|
|
$group_id = request('group_id');
|
|
|
|
|
|
if (!isset($group_id)) return \Yz::echoError1('group_id不能为空');
|
|
|
|
|
|
$data = [
|
|
|
'电话号码' => null,
|
|
|
'证件号码' => null,
|
|
|
'预约Id'=>$group_id
|
|
|
];
|
|
|
$res = self::group_info($hospital_id, $data);
|
|
|
if($res[0]['fenzu_id']=="") return \Yz::echoError1("用户分组不能为空");
|
|
|
return \Yz::Return(true,"查询完成",['unit'=>$res]);
|
|
|
}
|
|
|
}
|