Files
fast_response/digital_doctor/application/api/controller/Tymedicalreport.php
2025-03-17 10:56:09 +08:00

414 lines
14 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?php
namespace app\api\controller;
use think\Db;
use app\common\model\TabConf;
use wanghua\general_utility_tools_php\file\upload\FileUpload;
use wanghua\general_utility_tools_php\tool\Tools;
use wanghua\general_utility_tools_php\Validate;
use think\Controller;
class Tymedicalreport extends BaseHttpApi
{
protected $controller_comments = '听译-病历报告(听译问诊)(一个基本信息对应一个报告)';
/**
* desc获取听译-病历报告(听译问诊)(一个基本信息对应一个报告)
*
* api/Tymedicalreport/getTymedicalreportDetail
*
* 参数:
* hdruserbaseinfo_id 统一基本信息 统一基本信息 必须
*
* 所有字段说明<span style="color: gray">(可能有部分额外字段未在此体现)</span>
* id ID
* userbaseid 听译病历ID
* doctor 所属医生
* username 病人
* report_content 报告内容
* name 病人姓名
* gender 病人性别
* from 来源:num_per=数智人,ty=听译助手,h5=h5网页问诊
* ticket 对话票据(数据隔离)
* diagnostic_result 诊断结果
* create_time 生成时间
* hdruserbaseinfo_id 统一基本信息
* authorwh
*/
function getTymedicalreportDetail(){
Tools::log_to_write_txt(['获取听译-病历报告(听译问诊)(一个基本信息对应一个报告) 入参:'=>input()]);
$api_desc = '获取听译-病历报告(听译问诊)(一个基本信息对应一个报告)';
try {
$hdruserbaseinfo_id = input('hdruserbaseinfo_id');
if(empty($hdruserbaseinfo_id)){
return json(Tools::set_fail('hdruserbaseinfo_id参数错误'));
}
$model_obj = Db::table(TabConf::$fa_ty_medical_report);
if(input('hdruserbaseinfo_id')){
$model_obj->where('hdruserbaseinfo_id',input('hdruserbaseinfo_id'));
}
$item = $model_obj->find();
$data = $item;
return json(Tools::set_ok('ok',$data));
}catch(\Exception $e){
Tools::log_to_write_txt([
'error'=>'获取听译-病历报告(听译问诊)(一个基本信息对应一个报告).异常.'.$e->getMessage(),
'参数'=>input(),
'error_info'=>$e->getTraceAsString()
]);
return json(Tools::set_res(500,'操作异常',[]));
}
}
function updateTingyiReportById(){
Tools::log_to_write_txt(['根据报告ID修改听译报告最终报告'=>input()]);
$api_desc = '根据报告ID修改听译报告最终报告';
Db::startTrans();
try {
$username = input('username');
$report_content = input('report_content');
$name = input('name');
$gender = input('gender');
$from = input('from');
$diagnostic_result = input('diagnostic_result');
if(empty(input('id'))){
return json(Tools::set_fail('参数错误。0',['error_msg'=>'错误信息id错误']));
}
//存在则修改
$data = [];
if($username){
$data['username'] = $username;
}
if($report_content){
$data['report_content'] = $report_content;
}
if($name){
$data['name'] = $name;
}
if($gender){
$data['gender'] = $gender;
}
if($from){
$data['from'] = $from;
}
if($diagnostic_result){
$data['diagnostic_result'] = $diagnostic_result;
}
$dataid = Db::table(TabConf::$fa_ty_medical_report)
->data($data)
->where('id',input('id'))
->update();
Db::commit();
return json(Tools::set_ok('ok',$dataid));
}catch (\Exception $e){
Db::rollback();
Tools::log_to_write_txt([
'error'=>'根据报告ID修改听译报告最终报告.异常.'.$e->getMessage(),
'input'=>input(),
'error_info'=>$e->getTraceAsString()
]);
return json(Tools::set_fail());
}
}
/**
* 修改听译-病历报告(听译问诊)(一个基本信息对应一个报告)
* 参数:
* id ID 【必须】
* userbaseid 听译病历ID
* doctor 所属医生
* username 病人
* report_content 报告内容
* name 病人姓名
* gender 病人性别
* from 来源:num_per=数智人,ty=听译助手,h5=h5网页问诊
* ticket 对话票据(数据隔离)
* diagnostic_result 诊断结果
* hdruserbaseinfo_id 统一基本信息
* create_time 生成时间
* age 病人年龄
* main_complaint 主诉
* medical_history 病史
* past_history 既往史
* allergy_history 过敏史
* family_history 家族史
* personal_history 个人史
* menstrual_marital_history 月经婚育史
* diagnosis 诊断
* treatment 医嘱
* phone 联系方式
* status 问诊状态
* user_phone 登录手机号
* date 日期
* hdrdepartment 科室名称
* hdrdepartment_id 科室
* edu 教育程度
* career_year 职业及年限
* power 体力要求
* satisfaction 经济满意度
* old_career_year 过往职业及年限
* old_career_power 过往职业体力要求
* support 社会支持度
* marriage 婚姻状况
* live 居住情况
* home 家庭关系
* address 地址
* wechat_no 微信号
* api/Tymedicalreport/updateTymedicalreportById
*/
function updateTymedicalreportById(){
Tools::log_to_write_txt(['修改听译-病历报告(听译问诊)(一个基本信息对应一个报告)'=>input()]);
$api_desc = '修改听译-病历报告(听译问诊)(一个基本信息对应一个报告)';
Db::startTrans();
try {
$userbaseid = input('userbaseid');
$doctor = input('doctor');
$username = input('username');
$report_content = input('report_content');
$name = input('name');
$gender = input('gender');
$from = input('from');
$ticket = input('ticket');
$diagnostic_result = input('diagnostic_result');
$hdruserbaseinfo_id = input('hdruserbaseinfo_id');
$create_time = input('create_time');
$age = input('age');
$main_complaint = input('main_complaint');
$medical_history = input('medical_history');
$past_history = input('past_history');
$allergy_history = input('allergy_history');
$family_history = input('family_history');
$personal_history = input('personal_history');
$menstrual_marital_history = input('menstrual_marital_history');
$diagnosis = input('diagnosis');
$treatment = input('treatment');
$phone = input('phone');
$status = input('status');
$user_phone = input('user_phone');
$date = input('date');
$hdrdepartment = input('hdrdepartment');
$hdrdepartment_id = input('hdrdepartment_id');
$edu = input('edu');
$career_year = input('career_year');
$power = input('power');
$satisfaction = input('satisfaction');
$old_career_year = input('old_career_year');
$old_career_power = input('old_career_power');
$support = input('support');
$marriage = input('marriage');
$live = input('live');
$home = input('home');
$address = input('address');
$wechat_no = input('wechat_no');
if(empty(input('id'))){
return json(Tools::set_fail('参数错误。0',['error_msg'=>'错误信息id错误']));
}
//存在则修改
$data = [];
if($userbaseid){
$data['userbaseid'] = $userbaseid;
}
if($doctor){
$data['doctor'] = $doctor;
}
if($username){
$data['username'] = $username;
}
if($report_content){
$data['report_content'] = $report_content;
}
if($name){
$data['name'] = $name;
}
if($gender){
$data['gender'] = $gender;
}
if($from){
$data['from'] = $from;
}
if($ticket){
$data['ticket'] = $ticket;
}
if($diagnostic_result){
$data['diagnostic_result'] = $diagnostic_result;
}
if($hdruserbaseinfo_id){
$data['hdruserbaseinfo_id'] = $hdruserbaseinfo_id;
}
if($create_time){
$data['create_time'] = $create_time;
}
if($age){
$data['age'] = $age;
}
if($main_complaint){
$data['main_complaint'] = $main_complaint;
}
if($medical_history){
$data['medical_history'] = $medical_history;
}
if($past_history){
$data['past_history'] = $past_history;
}
if($allergy_history){
$data['allergy_history'] = $allergy_history;
}
if($family_history){
$data['family_history'] = $family_history;
}
if($personal_history){
$data['personal_history'] = $personal_history;
}
if($menstrual_marital_history){
$data['menstrual_marital_history'] = $menstrual_marital_history;
}
if($diagnosis){
$data['diagnosis'] = $diagnosis;
}
if($treatment){
$data['treatment'] = $treatment;
}
if($phone){
$data['phone'] = $phone;
}
if($status){
$data['status'] = $status;
}
if($user_phone){
$data['user_phone'] = $user_phone;
}
if($date){
$data['date'] = $date;
}
if($hdrdepartment){
$data['hdrdepartment'] = $hdrdepartment;
}
if($hdrdepartment_id){
$data['hdrdepartment_id'] = $hdrdepartment_id;
}
if($edu){
$data['edu'] = $edu;
}
if($career_year){
$data['career_year'] = $career_year;
}
if($power){
$data['power'] = $power;
}
if($satisfaction){
$data['satisfaction'] = $satisfaction;
}
if($old_career_year){
$data['old_career_year'] = $old_career_year;
}
if($old_career_power){
$data['old_career_power'] = $old_career_power;
}
if($support){
$data['support'] = $support;
}
if($marriage){
$data['marriage'] = $marriage;
}
if($live){
$data['live'] = $live;
}
if($home){
$data['home'] = $home;
}
if($address){
$data['address'] = $address;
}
if($wechat_no){
$data['wechat_no'] = $wechat_no;
}
$dataid = Db::table(TabConf::$fa_ty_medical_report)
->data($data)
->where('id',input('id'))
->update();
Db::commit();
return json(Tools::set_ok('ok',$dataid));
}catch (\Exception $e){
Db::rollback();
Tools::log_to_write_txt([
'error'=>'修改听译-病历报告(听译问诊)(一个基本信息对应一个报告).异常.'.$e->getMessage(),
'input'=>input(),
'error_info'=>$e->getTraceAsString()
]);
return json(Tools::set_fail());
}
}
}