diff --git a/Laravel/app/Http/Controllers/API/Admin/YeWu/EntrustController.php b/Laravel/app/Http/Controllers/API/Admin/YeWu/EntrustController.php index e725865..4526565 100644 --- a/Laravel/app/Http/Controllers/API/Admin/YeWu/EntrustController.php +++ b/Laravel/app/Http/Controllers/API/Admin/YeWu/EntrustController.php @@ -89,6 +89,8 @@ class EntrustController extends Controller ->get(); if (count($info)===0) return \Yz::echoError1('登记号'.$entrustInfo['reg_num'].'没有找到对应医嘱信息'); + + $mainInfo=$info[0]; $itemInfo=[]; foreach ($info as $value){ @@ -96,6 +98,33 @@ class EntrustController extends Controller ->leftJoin('s_check_item_device as b','a.id','=','b.item_id') ->where(['a.item_code' => $value->entrust_code,'a.status'=>1,"a.is_del"=>0])->first(); + + $source=null; + if(!empty($value->reservation_sources)){ + $source=DB::table('s_department_resources')->where(['id'=>$value->reservation_sources])->first(); + } + $value->department_resources=$source; + $value->user_sex_label=''; + if($value->user_sex==1){ + $value->user_sex_label='男'; + } + if($value->user_sex==2){ + $value->user_sex_label='女'; + } + $value->age=\Tools::getAgeFromBirthday($value->user_brithday); + //患者类型 + $p_type=config('app.globals.患者类型'); + $value->patient_type_label=$p_type[$value->patient_type] ?? ''; + //星期 + $value->weekday_label=\Tools::GetWeekName($value->reservation_date); + + + $generator = new \Picqer\Barcode\BarcodeGeneratorHTML(); + $tiaoma= $generator->getBarcode($value->app_num, $generator::TYPE_CODE_128, 2, 40); + $updatedHtml = preg_replace('/background-color:\s*black\s*;/i', 'background-color: black !important;', $tiaoma); + $value->barcode=$updatedHtml; + + $msg=''; if(!$ii){ $msg="检查项目不可用"; diff --git a/Laravel/app/Http/Controllers/API/Admin/YeWu/WorkMainController.php b/Laravel/app/Http/Controllers/API/Admin/YeWu/WorkMainController.php index 64821e3..d2ef088 100644 --- a/Laravel/app/Http/Controllers/API/Admin/YeWu/WorkMainController.php +++ b/Laravel/app/Http/Controllers/API/Admin/YeWu/WorkMainController.php @@ -54,6 +54,7 @@ class WorkMainController extends Controller $value->weekday_label=\Tools::GetWeekName($value->reservation_date); $msg=''; + if(count($ii)==0){ $msg="检查项目不可用"; } @@ -260,7 +261,7 @@ class WorkMainController extends Controller $entrustTime=[$value->reservation_date.' '.$value->period_begin_time,$value->reservation_date.' '.$value->period_end_time]; $planTime=[$plan->date.' '.$plan->begin_time,$plan->date.' '.$plan->end_time]; if ($entrustTime[0] <= $planTime[1] && $planTime[0] <= $entrustTime[1]) { - return \Yz::echoError1('当前时段存在待检项目:'.$value->entrust.'时间:'.$value->reservation_date.' '.substr($value->period_begin_time, 0, 5).'-'.substr($value->period_end_time, 0, 5).' 请确认是否继续预约'); + return \Yz::echoError1('当前时段存在待检项目:'.$value->entrust.',时间:'.$value->reservation_date.' '.substr($value->period_begin_time, 0, 5).'-'.substr($value->period_end_time, 0, 5).' 请确认是否继续预约'); } } } diff --git a/Laravel/app/Http/Controllers/API/His/CheckItemController.php b/Laravel/app/Http/Controllers/API/His/CheckItemController.php index b50a067..fdd9cbb 100644 --- a/Laravel/app/Http/Controllers/API/His/CheckItemController.php +++ b/Laravel/app/Http/Controllers/API/His/CheckItemController.php @@ -8,27 +8,63 @@ use Illuminate\Support\Facades\DB; class CheckItemController extends Controller { + public function UpdateItemClass() + { + $data = [ + 'consTypeId' => 'EXAMSHEETTYPE' + ]; + $His = new HisController(); + $res = $His::Get("查询所有检查项目分类", $data); + $success_count=0; + if ($res['code'] == 200) { + $res_data = $res['data']; + foreach ($res_data as $data_k => $data_v) { + $type= DB::table('s_check_item_class')->where(['consInfoCode' => $data_v['consInfoCode']])->first(); + $data=[ + 'item_class_name'=> $data_v['consInfoName'], + 'pid'=> 1, + 'CTC_Code'=> $data_v['consInfoName'], + 'CTC_Desc'=> $data_v['consInfoName'], + 'CTC_Status'=> 1, + 'consInfoCode'=> $data_v['consInfoCode'], + ]; + if(!!$type){ + $u= DB::table('s_check_item_class')->where(['id'=>$type->id])->update([ + 'item_class_name'=> $data_v['consInfoName'], + 'CTC_Code'=> $data_v['consInfoName'], + 'CTC_Desc'=> $data_v['consInfoName'], + ]); + }else{ + $u= DB::table('s_check_item_class')->insert($data); + } + if($u) $success_count++; + } + } + return \Yz::JsonReturn(true,"更新完成",['success_count'=>$success_count]); + } public function UpdateCheckItem(){ - $url='http://192.168.80.39:7801/roc/order-service/api/v1/order/order-term/undrug/query'; + $termClassId = request('termClassId'); if(!isset($termClassId)){ return \Yz::echoError1('类别id不能为空'); } + $data=[]; $where=[]; - if($termClassId<>'all'){ + if($termClassId<>'all'){ //155为检查项目 不要使用all $data=[ 'termClassId' => $termClassId, ]; - $where=['termClassId'=>$termClassId]; + } - $res=\Tools::Get($url,$data,'更新检查项目'); + $His = new HisController(); + $res = $His::Get("查询非药品列表", $data); if($res['code']==200){ $res_data=$res['data']; if(isset($res_data['list']) and !empty($res_data['list'])){ - $db_data=DB::table('s_check_item')->where($where)->get();//库里的数据 + $db_data=DB::table('s_check_item')->get();//库里的数据 //根据 接收数据的undrugId,和库里的item_code进行比对,如果库里存在则更新,如果库里没有则添加,如果库里有但是接收数据里没有则在库里标记is_del=0 $db_map = []; foreach ($db_data as $db_item) { @@ -45,27 +81,53 @@ class CheckItemController extends Controller // 添加到接收 ID 列表 $received_ids[] = $item_code; + $item_class_id=null; + $class_type= DB::table('s_check_item_class')->where(['consInfoCode'=>$item['sheetType']])->first(); + if($class_type and !empty($item['sheetType'])){ + $item_class_id=$class_type->id; + } + $department_arr=[]; + //优先取默认科室,如果存在默认则忽略范围科室。2025-06-24 与叶工微信群沟通 + if(isset($item['defaultExecDepts']) and !empty($item['defaultExecDepts'])){ + $department_arr=[$item['defaultExecDepts']]; + }else{ + if(isset($item['execDepts']) and !empty($item['execDepts'])){ + foreach ($item['execDepts'] as $dept) { + $department_arr[]=$dept['code']; + } + } + } // 快速查找是否已存在该 item_code if (isset($db_map[$item_code])) { // 存在则更新 DB::table('s_check_item') ->where('item_code', $item_code) ->update([ - 'termClassId'=>$item['termClassId'], + 'item_class_id'=>$item_class_id, + 'sheetType'=>$item['sheetType'], 'item_name' => $item_name, 'item_desc' => $item_name, 'is_del' => 0, // 取消删除标记 + 'hisExecDepts'=>json_encode($department_arr, JSON_UNESCAPED_UNICODE), ]); } else { // 不存在则插入新记录 DB::table('s_check_item')->insert([ - 'termClassId'=>$item['termClassId'], + 'item_class_id'=>$item_class_id, + 'sheetType'=>$item['sheetType'], 'item_code' => $item_code, 'item_name' => $item_name, 'item_desc' => $item_name, + 'reservation_method' =>'0,1,2,3,4', + 'limosis' =>0, + 'check_time' =>0, + 'hisExecDepts'=>json_encode($department_arr, JSON_UNESCAPED_UNICODE), ]); + + $this->updateBindDrivers($item_code,$department_arr); } + } // 处理数据库中存在但远程没有返回的数据,标记为删除 @@ -87,4 +149,33 @@ class CheckItemController extends Controller return \Yz::echoError1('更新失败'); } } + //绑定设备 + public function updateBindDrivers($item_code,$department_arr) + { + $iteminfo=DB::table('s_check_item')->where('item_code',$item_code)->first(); + $departments = DB::table('s_department')->whereIn('department_number',$department_arr)->get(); + $department_ids=[]; + foreach ($departments as $department) { + $department_ids[]=$department->id; + } + if(count($department_ids)>0 and !!$iteminfo){ + $devices=DB::table('s_department_resources_device')->whereIn('department_id',$department_ids)->pluck('device_id')->toArray(); + //删除库里项目和设备绑定关系 + DB::table('s_check_item_device')->where(['item_id'=>$iteminfo->id])->whereIn('device_id',$devices)->delete(); + $data=[]; + foreach ($devices as $device) { + $data[]=[ + 'item_id' => $iteminfo->id, + 'device_id' => $device, + ]; + } + if(count($devices)>0 and !!$iteminfo){ + //插入表 + DB::table('s_check_item_device')->insert($data); + } + + } + + + } } diff --git a/Laravel/app/Http/Controllers/API/His/HisController.php b/Laravel/app/Http/Controllers/API/His/HisController.php index a467099..d02b982 100644 --- a/Laravel/app/Http/Controllers/API/His/HisController.php +++ b/Laravel/app/Http/Controllers/API/His/HisController.php @@ -15,13 +15,13 @@ class HisController extends Controller { public static $request; public static $baseUrl = 'http://192.168.80.39:7801'; - public static function Api($url_code) { $api['查询检查申请单'] = "/roc/order-service/api/v1/apply/pacs/apply/create/query"; $api['查询科室列表'] = "/roc/curr-web/api/v1/common/dept/query"; $api['查询人员列表'] = "/roc/curr-web/api/v1/common/employee/query"; - $api['查询非药品物价项目列表'] = "/roc/curr-web/api/v1/curr/unpharmaceutical/undrug/eisaiOrDiagnose/query"; + $api['查询非药品列表'] = "/roc/order-service/api/v1/order/order-term/undrug/query"; + $api['查询所有检查项目分类'] = "/roc/order-service/api/v1/order/order-term/dawn-code/query?consTypeId=EXAMSHEETTYPE"; return $api["{$url_code}"] ?? $url_code; } @@ -32,7 +32,10 @@ class HisController extends Controller self::RequestLog(self::$baseUrl . $url_address, $data, $url_code, 'Roc接口'); - $response = Http::withHeaders([])->get(self::$baseUrl . $url_address, $data); + $response = Http::withHeaders([ + 'Domain' => 'QhdLK_YYGL', + 'Key' => 'f7ed8036-b7a1-41ec-80f6-0e180efba1f4' + ])->get(self::$baseUrl . $url_address, $data); // dd(self::BuildAuthorization($nonce, $timestamp, $base64Signature)); if ($response->successful()) { diff --git a/Laravel/app/Services/Admin/YeWu/PlanListService.php b/Laravel/app/Services/Admin/YeWu/PlanListService.php index e042209..001fd46 100644 --- a/Laravel/app/Services/Admin/YeWu/PlanListService.php +++ b/Laravel/app/Services/Admin/YeWu/PlanListService.php @@ -73,7 +73,18 @@ class PlanListService $placeholders = implode(',', array_fill(0, count($commonDevice), '?')); $appointment_types_placeholders = implode(',', array_fill(0, count($appointment_types), '?')); - $canshu = array_merge($commonDevice, [$department_id->id, $appointment_date], $appointment_types); + //如果日期为字符串 则转为数组 + $appointment_date_arr=[]; + if(is_array($appointment_date)){ + $appointment_date_arr=$appointment_date; + $appointment_date=implode(',', $appointment_date); + }else{ + $appointment_date_arr=[$appointment_date]; + } + $appointment_dates_placeholders = implode(',', array_fill(0, count($appointment_date_arr), '?')); + + + $canshu = array_merge($commonDevice, [$department_id->id], $appointment_date_arr, $appointment_types); $plan = DB::select("SELECT a.*, dd.devices, @@ -99,7 +110,7 @@ FROM ) AS dd ON a.id = dd.roster_detail_id WHERE a.department_id = ? - AND a.date = ? + AND a.date IN ($appointment_dates_placeholders) AND a.STATUS = 1 AND a.is_del = 0 AND b.is_del = 0 diff --git a/Laravel/routes/api.php b/Laravel/routes/api.php index 5f6b098..4fcd450 100644 --- a/Laravel/routes/api.php +++ b/Laravel/routes/api.php @@ -123,6 +123,7 @@ Route::group(['middleware'=>['log']],function () { Route::post('admin/AutoYuYue','App\Http\Controllers\API\Admin\YeWu\PlanListController@AutoYuYue');//自动预约 Route::post('admin/updateCheckItem','App\Http\Controllers\API\His\CheckItemController@UpdateCheckItem');//调用his更新检查项目 + Route::post('admin/UpdateItemClass','App\Http\Controllers\API\His\CheckItemController@UpdateItemClass');//调用his更新检查项目分类 Route::post('admin/HisGetDepartmentList','App\Http\Controllers\API\His\DepartmentController@GetDepartmentList');//获取his科室列表 Route::post('admin/HisGetUserList','App\Http\Controllers\API\His\UserController@GetUserList');//获取his用户列表 }); diff --git a/Laravel/routes/web.php b/Laravel/routes/web.php index 4b66ca8..f652759 100644 --- a/Laravel/routes/web.php +++ b/Laravel/routes/web.php @@ -31,7 +31,8 @@ Route::get('/test','App\Http\Controllers\TestController@DBtest' ); //his跳到此路由,再跳转到对应的系统页面 Route::get('/yiji', function (Request $request) { $queryString = $request->server('QUERY_STRING'); // 获取原始查询字符串 - return redirect("http://192.168.80.76/jq_page/appointment.html?".$queryString); + //return redirect("http://192.168.80.76/jq_page/appointment.html?".$queryString); + return redirect("http://192.168.80.76/admin/#/doctorappointment?".$queryString); }); //cas 登录 diff --git a/YiJi-admin/package-lock.json b/YiJi-admin/package-lock.json index fb38b6e..61ab060 100644 --- a/YiJi-admin/package-lock.json +++ b/YiJi-admin/package-lock.json @@ -16,6 +16,7 @@ "pinia": "^2.1.6", "qrcode": "^1.5.3", "s": "^1.0.0", + "scss": "^0.2.4", "vue": "^3.3.4", "vue-router": "^4.2.4", "vue3-print-nb": "^0.1.4" @@ -27,6 +28,7 @@ "eslint": "^8.49.0", "eslint-plugin-vue": "^9.17.0", "prettier": "^3.0.3", + "sass": "^1.89.2", "vite": "^4.4.9" } }, @@ -569,6 +571,302 @@ "node": ">= 8" } }, + "node_modules/@parcel/watcher": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.5.1.tgz", + "integrity": "sha512-dfUnCxiN9H4ap84DvD2ubjw+3vUNpstxa0TneY/Paat8a3R4uQZDLSvWjmznAY/DoahqTHl9V46HF/Zs3F29pg==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "dependencies": { + "detect-libc": "^1.0.3", + "is-glob": "^4.0.3", + "micromatch": "^4.0.5", + "node-addon-api": "^7.0.0" + }, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + }, + "optionalDependencies": { + "@parcel/watcher-android-arm64": "2.5.1", + "@parcel/watcher-darwin-arm64": "2.5.1", + "@parcel/watcher-darwin-x64": "2.5.1", + "@parcel/watcher-freebsd-x64": "2.5.1", + "@parcel/watcher-linux-arm-glibc": "2.5.1", + "@parcel/watcher-linux-arm-musl": "2.5.1", + "@parcel/watcher-linux-arm64-glibc": "2.5.1", + "@parcel/watcher-linux-arm64-musl": "2.5.1", + "@parcel/watcher-linux-x64-glibc": "2.5.1", + "@parcel/watcher-linux-x64-musl": "2.5.1", + "@parcel/watcher-win32-arm64": "2.5.1", + "@parcel/watcher-win32-ia32": "2.5.1", + "@parcel/watcher-win32-x64": "2.5.1" + } + }, + "node_modules/@parcel/watcher-android-arm64": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-android-arm64/-/watcher-android-arm64-2.5.1.tgz", + "integrity": "sha512-KF8+j9nNbUN8vzOFDpRMsaKBHZ/mcjEjMToVMJOhTozkDonQFFrRcfdLWn6yWKCmJKmdVxSgHiYvTCef4/qcBA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-darwin-arm64": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-arm64/-/watcher-darwin-arm64-2.5.1.tgz", + "integrity": "sha512-eAzPv5osDmZyBhou8PoF4i6RQXAfeKL9tjb3QzYuccXFMQU0ruIc/POh30ePnaOyD1UXdlKguHBmsTs53tVoPw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-darwin-x64": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-x64/-/watcher-darwin-x64-2.5.1.tgz", + "integrity": "sha512-1ZXDthrnNmwv10A0/3AJNZ9JGlzrF82i3gNQcWOzd7nJ8aj+ILyW1MTxVk35Db0u91oD5Nlk9MBiujMlwmeXZg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-freebsd-x64": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-freebsd-x64/-/watcher-freebsd-x64-2.5.1.tgz", + "integrity": "sha512-SI4eljM7Flp9yPuKi8W0ird8TI/JK6CSxju3NojVI6BjHsTyK7zxA9urjVjEKJ5MBYC+bLmMcbAWlZ+rFkLpJQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm-glibc": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.5.1.tgz", + "integrity": "sha512-RCdZlEyTs8geyBkkcnPWvtXLY44BCeZKmGYRtSgtwwnHR4dxfHRG3gR99XdMEdQ7KeiDdasJwwvNSF5jKtDwdA==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm-musl": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-musl/-/watcher-linux-arm-musl-2.5.1.tgz", + "integrity": "sha512-6E+m/Mm1t1yhB8X412stiKFG3XykmgdIOqhjWj+VL8oHkKABfu/gjFj8DvLrYVHSBNC+/u5PeNrujiSQ1zwd1Q==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm64-glibc": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-glibc/-/watcher-linux-arm64-glibc-2.5.1.tgz", + "integrity": "sha512-LrGp+f02yU3BN9A+DGuY3v3bmnFUggAITBGriZHUREfNEzZh/GO06FF5u2kx8x+GBEUYfyTGamol4j3m9ANe8w==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm64-musl": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-musl/-/watcher-linux-arm64-musl-2.5.1.tgz", + "integrity": "sha512-cFOjABi92pMYRXS7AcQv9/M1YuKRw8SZniCDw0ssQb/noPkRzA+HBDkwmyOJYp5wXcsTrhxO0zq1U11cK9jsFg==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-x64-glibc": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-glibc/-/watcher-linux-x64-glibc-2.5.1.tgz", + "integrity": "sha512-GcESn8NZySmfwlTsIur+49yDqSny2IhPeZfXunQi48DMugKeZ7uy1FX83pO0X22sHntJ4Ub+9k34XQCX+oHt2A==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-x64-musl": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-musl/-/watcher-linux-x64-musl-2.5.1.tgz", + "integrity": "sha512-n0E2EQbatQ3bXhcH2D1XIAANAcTZkQICBPVaxMeaCVBtOpBZpWJuf7LwyWPSBDITb7In8mqQgJ7gH8CILCURXg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-arm64": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-arm64/-/watcher-win32-arm64-2.5.1.tgz", + "integrity": "sha512-RFzklRvmc3PkjKjry3hLF9wD7ppR4AKcWNzH7kXR7GUe0Igb3Nz8fyPwtZCSquGrhU5HhUNDr/mKBqj7tqA2Vw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-ia32": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-ia32/-/watcher-win32-ia32-2.5.1.tgz", + "integrity": "sha512-c2KkcVN+NJmuA7CGlaGD1qJh1cLfDnQsHjE89E60vUEMlqduHGCdCLJCID5geFVM0dOtA3ZiIO8BoEQmzQVfpQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-x64": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-x64/-/watcher-win32-x64-2.5.1.tgz", + "integrity": "sha512-9lHBdJITeNR++EvSQVUcaZoWupyHfXe1jZvGZ06O/5MflPcuPLtEphScIBL+AiCWBO46tDSHzWyD0uDmmZqsgA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, "node_modules/@pkgr/utils": { "version": "2.4.2", "resolved": "https://registry.npmjs.org/@pkgr/utils/-/utils-2.4.2.tgz", @@ -1028,6 +1326,21 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, + "node_modules/chokidar": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.3.tgz", + "integrity": "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==", + "dev": true, + "dependencies": { + "readdirp": "^4.0.1" + }, + "engines": { + "node": ">= 14.16.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, "node_modules/cliui": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", @@ -1192,6 +1505,19 @@ "node": ">=0.4.0" } }, + "node_modules/detect-libc": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", + "integrity": "sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==", + "dev": true, + "optional": true, + "bin": { + "detect-libc": "bin/detect-libc.js" + }, + "engines": { + "node": ">=0.10" + } + }, "node_modules/dijkstrajs": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/dijkstrajs/-/dijkstrajs-1.0.3.tgz", @@ -1904,6 +2230,12 @@ "node": ">= 4" } }, + "node_modules/immutable": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-5.1.3.tgz", + "integrity": "sha512-+chQdDfvscSF1SJqv2gn4SRO2ZyS3xL3r7IW/wWEEzrzLisnOlKiQu5ytC/BVNcS15C39WT2Hg/bjKjDMcu+zg==", + "dev": true + }, "node_modules/import-fresh": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", @@ -2291,6 +2623,13 @@ "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", "dev": true }, + "node_modules/node-addon-api": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.1.tgz", + "integrity": "sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==", + "dev": true, + "optional": true + }, "node_modules/normalize-wheel-es": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/normalize-wheel-es/-/normalize-wheel-es-1.2.0.tgz", @@ -2335,6 +2674,14 @@ "url": "https://github.com/fb55/nth-check?sponsor=1" } }, + "node_modules/ometa": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/ometa/-/ometa-0.2.2.tgz", + "integrity": "sha512-LZuoK/yjU3FvrxPjUXUlZ1bavCfBPqauA7fsNdwi+AVhRdyk2IzgP3JRnevvjzQ6fKHdUw8YISshf53FmpHrng==", + "engines": { + "node": ">= 0.2.0" + } + }, "node_modules/once": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", @@ -2672,6 +3019,19 @@ } ] }, + "node_modules/readdirp": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.1.2.tgz", + "integrity": "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==", + "dev": true, + "engines": { + "node": ">= 14.18.0" + }, + "funding": { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + }, "node_modules/require-directory": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", @@ -2870,6 +3230,37 @@ "node": ">=0.8" } }, + "node_modules/sass": { + "version": "1.89.2", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.89.2.tgz", + "integrity": "sha512-xCmtksBKd/jdJ9Bt9p7nPKiuqrlBMBuuGkQlkhZjjQk3Ty48lv93k5Dq6OPkKt4XwxDJ7tvlfrTa1MPA9bf+QA==", + "dev": true, + "dependencies": { + "chokidar": "^4.0.0", + "immutable": "^5.0.2", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=14.0.0" + }, + "optionalDependencies": { + "@parcel/watcher": "^2.4.1" + } + }, + "node_modules/scss": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/scss/-/scss-0.2.4.tgz", + "integrity": "sha512-4u8V87F+Q/upVhUmhPnB4C1R11xojkRkWjExL2v0CX2EXTg18VrKd+9JWoeyCp2VEMdSpJsyAvVU+rVjogh51A==", + "dependencies": { + "ometa": "0.2.2" + }, + "engines": { + "node": ">= 0.2.0" + } + }, "node_modules/semver": { "version": "7.5.4", "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", diff --git a/YiJi-admin/package.json b/YiJi-admin/package.json index 3ffd750..275a095 100644 --- a/YiJi-admin/package.json +++ b/YiJi-admin/package.json @@ -18,6 +18,7 @@ "pinia": "^2.1.6", "qrcode": "^1.5.3", "s": "^1.0.0", + "scss": "^0.2.4", "vue": "^3.3.4", "vue-router": "^4.2.4", "vue3-print-nb": "^0.1.4" @@ -29,6 +30,7 @@ "eslint": "^8.49.0", "eslint-plugin-vue": "^9.17.0", "prettier": "^3.0.3", + "sass": "^1.89.2", "vite": "^4.4.9" } } diff --git a/YiJi-admin/src/api/api.js b/YiJi-admin/src/api/api.js index 43504ac..b34de22 100644 --- a/YiJi-admin/src/api/api.js +++ b/YiJi-admin/src/api/api.js @@ -297,7 +297,9 @@ export const GetLoglist = (data = {}) => { export const CheckEntrstItemGroup = (data = {}) => { return axios({ url: import.meta.env.VITE_APP_API + 'v1/admin/CheckEntrstItemGroup', data: data }) } - +export const CheckEntrstItemGroup2 = (data = {}) => { + return axios({ url: import.meta.env.VITE_APP_API + 'admin/CheckEntrstItemGroup', data: data }) +} //查询医嘱详情 export const getMainDetail = (data = {}) => { return axios({ url: import.meta.env.VITE_APP_API + 'admin/getMainDetail', data: data }) diff --git a/YiJi-admin/src/components/Yewu/PrintShenQingDan.vue b/YiJi-admin/src/components/Yewu/PrintShenQingDan.vue new file mode 100644 index 0000000..7ca75eb --- /dev/null +++ b/YiJi-admin/src/components/Yewu/PrintShenQingDan.vue @@ -0,0 +1,87 @@ + + + + + \ No newline at end of file diff --git a/YiJi-admin/src/components/Yewu/YuYue.vue b/YiJi-admin/src/components/Yewu/YuYue.vue index 8e54337..0a253fe 100644 --- a/YiJi-admin/src/components/Yewu/YuYue.vue +++ b/YiJi-admin/src/components/Yewu/YuYue.vue @@ -170,11 +170,58 @@
-
演示医院
-
检查申请单
-
-
检查项目:{{item.entrust.entrust}}
+ +
@@ -202,6 +249,7 @@ DoctorCancelYuYue, GetPlanUsedList } from '@/api/api.js' + import ShenQingDan from '@/components/Yewu/PrintShenQingDan.vue' const props = defineProps({ YuYueInfo: { type: Object diff --git a/YiJi-admin/src/components/Yewu/YuYue202506.vue b/YiJi-admin/src/components/Yewu/YuYue202506.vue new file mode 100644 index 0000000..1263481 --- /dev/null +++ b/YiJi-admin/src/components/Yewu/YuYue202506.vue @@ -0,0 +1,787 @@ + + + + + \ No newline at end of file diff --git a/YiJi-admin/src/router/index.js b/YiJi-admin/src/router/index.js index 2acd2a2..fcfcf19 100644 --- a/YiJi-admin/src/router/index.js +++ b/YiJi-admin/src/router/index.js @@ -48,7 +48,16 @@ const router = createRouter({ meta: { requiresAuth: false } - },{ + }, + { + path: '/doctorappointment', + name: 'DoctorAppointment', + component: () => import('../views/YeWu/DoctorYuYue.vue'), + meta: { + requiresAuth: false + } + }, + { path: '/index', name: 'Index', component: Index, diff --git a/YiJi-admin/src/views/YeWu/DoctorYuYue.vue b/YiJi-admin/src/views/YeWu/DoctorYuYue.vue new file mode 100644 index 0000000..2060a71 --- /dev/null +++ b/YiJi-admin/src/views/YeWu/DoctorYuYue.vue @@ -0,0 +1,49 @@ + + + + + \ No newline at end of file diff --git a/YiJi-admin/src/views/YeWu/MainList.vue b/YiJi-admin/src/views/YeWu/MainList.vue index 44ee747..41f3f20 100644 --- a/YiJi-admin/src/views/YeWu/MainList.vue +++ b/YiJi-admin/src/views/YeWu/MainList.vue @@ -76,6 +76,7 @@ 打印申请单隐藏按钮 打印申请单 打印表格 +
-
+ +
@@ -292,6 +294,7 @@ ElMessage, ElMessageBox } from 'element-plus' + import ShenQingDan from '@/components/Yewu/PrintShenQingDan.vue' let AutoGroup=ref(true);//自动分组是否开启 let shenqingdan_show=ref(false); let do_type = ref(0) //按钮操作类型1预约2改约 diff --git a/YiJi-admin/src/views/YeWu/MainList_ZhuYuan.vue b/YiJi-admin/src/views/YeWu/MainList_ZhuYuan.vue index 4a710fe..e2ef85f 100644 --- a/YiJi-admin/src/views/YeWu/MainList_ZhuYuan.vue +++ b/YiJi-admin/src/views/YeWu/MainList_ZhuYuan.vue @@ -1,5 +1,5 @@ @@ -173,6 +219,7 @@ ElMessageBox } from 'element-plus' import YuYue from '@/components/Yewu/YuYue.vue' + import ShenQingDan from '@/components/Yewu/PrintShenQingDan.vue' import { GetMainList, CancelYuYue,