diff --git a/Laravel/app/Http/Controllers/API/H5/HomeController.php b/Laravel/app/Http/Controllers/API/H5/HomeController.php index 835beee..322f247 100644 --- a/Laravel/app/Http/Controllers/API/H5/HomeController.php +++ b/Laravel/app/Http/Controllers/API/H5/HomeController.php @@ -5,6 +5,7 @@ namespace App\Http\Controllers\API\H5; use App\Http\Controllers\Controller; use App\Services\ConfigService; use Illuminate\Http\Request; +use Illuminate\Support\Facades\DB; class HomeController extends Controller { @@ -20,16 +21,23 @@ class HomeController extends Controller // 获取配置更新时间 public function config() { + $hospitals=DB::table('hospitals') + ->select("id","name","latitude","longitude","logo") + ->where(['status'=>1,'is_del'=>0])->get(); + if(count($hospitals)<1) return \Yz::echoError1('暂无可用医院信息'); + $db_config=DB::table('configs')->whereIn('label',['首页欢迎词','首页banner'])->get(); $config = [ - 'hospital' => [[ - 'id' => 1, - 'name' => '秀英院区', - 'latitude' => '39.867671', - 'longitude' => '119.514223', - ]], - 'tip' => '海南现代妇女儿童医院体检中心欢迎您', - 'logo' => '/assets/h5/logo.png', - 'banner' => '/assets/h5/banner.png', + 'hospital' => $hospitals +// [[ +// 'id' => 1, +// 'name' => '秀英院区', +// 'latitude' => '39.867671', +// 'longitude' => '119.514223', +// ]] + , + 'tip' => $this->getValueByLabel($db_config,'首页欢迎词'), + 'logo' => $hospitals[0]->logo, + 'banner' => $this->getValueByLabel($db_config,'首页banner'), 'order' => [[ 'message' => '', 'name' => '个人体检预约', @@ -81,4 +89,13 @@ class HomeController extends Controller 'config' => $config ]); } + + function getValueByLabel($items, $label) { + foreach ($items as $item) { + if ($item->label === $label) { + return $item->value; + } + } + return null; // 如果没有找到匹配的 label,则返回 null + } } diff --git a/Laravel/app/Http/Controllers/API/H5/OrderController.php b/Laravel/app/Http/Controllers/API/H5/OrderController.php index ed5ba3e..3f35be0 100644 --- a/Laravel/app/Http/Controllers/API/H5/OrderController.php +++ b/Laravel/app/Http/Controllers/API/H5/OrderController.php @@ -4,7 +4,9 @@ namespace App\Http\Controllers\API\H5; use App\Http\Controllers\Controller; use App\Services\ConfigService; +use DateTime; use Illuminate\Http\Request; +use Illuminate\Support\Facades\DB; class OrderController extends Controller { @@ -12,6 +14,21 @@ class OrderController extends Controller { // status 1-待支付 2-已预约 3-交易关闭 4-已完成 5-已退款 $openid = $request->post('openid'); + $user=DB::table('web_users')->where(['openid'=>$openid,'is_del'=>0])->first(); + if(!$user) return \Yz::echoError1("openid对应用户不存在"); + $OrderList=DB::table('orders') + ->select('id','title','status','name','appointment_time as time','order_number as order', + DB::raw("CASE WHEN type = 1 THEN '个检' WHEN type = 2 THEN '团检' ELSE 'unknown' END as type"), + 'price','true_price','pay_time','refund_time','created_at') + ->where(['web_user_id'=>$user->id])->get(); + $WaitingPaymentTime=config('app.globals.WaitingPaymentTime');//支付等待時間 + foreach ($OrderList as $key=>$list){ + if($list->status==1){ + $datetime = new DateTime($list->created_at); + $timestamp = $datetime->getTimestamp(); + $list->end_time=$timestamp + (60 * $WaitingPaymentTime); + } + } $list = [[ 'id' => 1, 'title' => '测试套餐1', @@ -67,8 +84,9 @@ class OrderController extends Controller 'true_price' => '0.01', 'refund_time' => '2024-08-06 08:00:00' ]]; + return \Yz::Return(true, '获取成功', [ - 'list' => $list + 'list' => $OrderList ]); } } diff --git a/Laravel/config/app.php b/Laravel/config/app.php index a16165c..bfb255a 100644 --- a/Laravel/config/app.php +++ b/Laravel/config/app.php @@ -4,15 +4,7 @@ return [ 'globals' => [ 'WxAppid' => 'wx526430047d34c85c', //岚科公众号 'WxAppSecret' => '975b8a8b627b1bde71bbe49149134549', //岚科公众号 - -// 'WxAppid' => 'wx8f83ab76a99ba560',//测试 -// 'WxAppSecret' => 'eebc53a9e94f676bd680d3a09eb20303',//测试 - 'BaseServerUrl' =>'http://localhostcommon', - 'WxRedirectUrl'=>'https://www.yanzai.vip/common/laravel/public/wxGetCode', //微信授权登录,重定向地址 - - 'WxReturnCodeUrl_local'=>'http://192.168.31.106:5173/#/getWxCode/', //获取code后引导返回到前端的地址 开发 - 'WxReturnCodeUrl_server'=>'https://www.yanzai.vip/common/mH5/#/getWxCode/', //获取code后引导返回到前端的地址 生产 - + 'WaitingPaymentTime'=>20, //等待支付时间,单位分钟 ], diff --git a/h5/api/index.js b/h5/api/index.js index 7653241..540ebed 100644 --- a/h5/api/index.js +++ b/h5/api/index.js @@ -63,7 +63,7 @@ export const $response = (response, then, opt = {}, error = () => {}) => { ...opt, } if (response.status != opt_data.success_code) { - uni.$lu.toast(response.message); + uni.$lu.toast(response.msg); error() return }